{"version":3,"file":"myanalog/index.mjs","mappings":"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","sources":["webpack://app-assets/./src/common/environment/js/index.mjs","webpack://app-assets/./src/common/locale/js/index.mjs","webpack://app-assets/./src/common/ready/js/index.mjs","webpack://app-assets/./src/common/apple-warning/js/index.mjs","webpack://app-assets/./src/apps/myanalog/js/index.mjs"],"sourcesContent":["/**\r\n * @module common/environment\r\n */\r\n\r\n/**\r\n * RegExp for quickly extracting the environment from the URL\r\n * @type {RegExp}\r\n */\r\nexport const QUICK_ENV = /.*?-(.*?)\\.(cldnet|corpnt)\\.analog\\.com/gi;\r\n\r\n/**\r\n * Gives a name for the current environment\r\n * @param {boolean} removeSuffix Removes suffix numbers from the environment string\r\n * @returns {string} Name of the environment\r\n */\r\nexport const getEnv = ( removeSuffix ) => {\r\n\tconst { host } = window.location,\r\n\t\tmatches = host.matchAll( QUICK_ENV ).next();\r\n\tlet env = matches.value ? matches.value[ 1 ] : 'prod';\r\n\tif ( removeSuffix ) env = env.replace( /[0-9]/, '' );\r\n\tif ( host.includes( 'localhost' ) ) env = 'dev';\r\n\treturn env;\r\n};\r\n\r\n/**\r\n * Creates a URL based on the current environment\r\n * @param {string} subDomain page subdomain\r\n * @param {string} [network] page network\r\n * @param {boolean} [includeProtocol] Determines if the current environment's hypertext\r\n * protocol should be included\r\n * @param {boolean} [includeEnvironmentSuffix] Determines if the current environment's\r\n * suffix (e.g. the `2` in `dev2` ) should be included\r\n * @param {number|string} envSuffix optional env suffix number, eg. 2 in qa2.\r\n * @param {boolean} includeSuffixInProd whether to include the env suffix (2) in prod or not.\r\n * @returns {string} generated env url\r\n */\r\nexport const createEnvironmentURL = (\r\n\tsubDomain,\r\n\tnetwork = 'cldnet',\r\n\tincludeProtocol = true,\r\n\tincludeEnvironmentSuffix = false,\r\n\tenvSuffix = '',\r\n\tincludeSuffixInProd = false,\r\n) => {\r\n\tconst tld = 'analog.com',\r\n\t\tprotocol = 'https:',\r\n\t\tenvironment = getEnv( !includeEnvironmentSuffix );\r\n\tif ( environment === 'prod' ) {\r\n\t\treturn `${includeProtocol ? `${protocol}//` : ''}${subDomain}${includeSuffixInProd ? envSuffix : ''}.${tld}`;\r\n\t}\r\n\treturn `${includeProtocol ? `${protocol}//` : ''}${subDomain}-${environment}${envSuffix}.${network}.${tld}`;\r\n};\r\n","/**\r\n * @module common/locale\r\n */\r\n\r\nconst { host, search } = window.location,\r\n\t[ subdomain ] = host.split( '.' ),\r\n\tisMyAnalog = subdomain.startsWith( 'my' ),\r\n\tlangCode = document.documentElement.lang,\r\n\tparams = new URLSearchParams( search ),\r\n\tuseQs = [ 'form', 'quality' ].includes( subdomain.split( '-' )[ 0 ] );\r\n\r\n/**\r\n * Get the ADI specific language code\r\n * @function\r\n * @param {string} lang Language code to format as ADI\r\n * @returns {string} ADI's language code\r\n */\r\nexport const adiLocale = ( lang = langCode ) => {\r\n\tswitch ( lang ) {\r\n\t\tcase 'zh':\r\n\t\t\treturn 'cn';\r\n\t\tcase 'ja':\r\n\t\t\treturn 'jp';\r\n\t\tdefault:\r\n\t\t\treturn lang;\r\n\t}\r\n};\r\n\r\n/**\r\n * Get the myAnalog specific language code\r\n * @function\r\n * @param {string} lang Language code to format as ADI\r\n * @returns {string} myAnalog's language code\r\n */\r\nexport const myLocale = ( lang = langCode ) => {\r\n\tswitch ( lang ) {\r\n\t\tcase 'ja':\r\n\t\t\treturn 'jp';\r\n\t\tdefault:\r\n\t\t\treturn lang;\r\n\t}\r\n};\r\n\r\n/**\r\n * Returns the current page locale present in the url\r\n * @type {string}\r\n */\r\nexport const LOCALE = ( useQs ? params.get( 'locale' ) : ( isMyAnalog ? myLocale() : adiLocale() ) );\r\n","/**\r\n * @module common/ready\r\n */\r\n\r\n/**\r\n * Function to execute when DOM is ready to be manipulated. This is a\r\n * replacement for jQuery's `$(document).ready()`\r\n * @param {Function} cb Function to execute when DOM is ready\r\n */\r\nexport const DOMReady = ( cb ) => {\r\n\tif ( document.readyState === 'complete' || document.readyState === 'interactive' ) {\r\n\t\tcb();\r\n\t} else {\r\n\t\tdocument.addEventListener( 'DOMContentLoaded', cb );\r\n\t}\r\n};\r\n\r\n/**\r\n * To determine whether the document readyState is 'complete' or not\r\n * @returns {boolean} whether the doc has fully loaded or not\r\n */\r\nexport const isReadyStateComplete = () => document.readyState === 'complete';\r\n\r\n/**\r\n * Function to execute when the page has completely loaded.\r\n * @param {Function} cb Function to execute after readyState complete\r\n */\r\nexport const onReadyStateComplete = ( cb ) => {\r\n\tif ( isReadyStateComplete() ) {\r\n\t\tcb();\r\n\t} else {\r\n\t\tdocument.addEventListener( 'readystatechange', () => {\r\n\t\t\tif ( isReadyStateComplete() ) {\r\n\t\t\t\tcb();\r\n\t\t\t}\r\n\t\t} );\r\n\t}\r\n};\r\n","import '#common/base-styles/js/index.mjs';\r\nimport { createEnvironmentURL } from '#common/environment/js/index.mjs';\r\nimport { adiLocale } from '#common/locale/js/index.mjs';\r\nimport { onReadyStateComplete } from '#common/ready/js/index.mjs';\r\nimport '../css/index.css';\r\n\r\n/**\r\n * Navigator user agent property containing device and browser info\r\n * @type {string}\r\n */\r\nconst { userAgent } = window.navigator,\r\n\r\n\t/**\r\n\t * Whether it's an apple device or not\r\n\t * @type {boolean}\r\n\t */\r\n\tisAppleDevice = /(iPhone|iPad|iPod|Macintosh)/.test( userAgent ),\r\n\r\n\t/**\r\n\t * Minimum Apple os version that supports css nesting\r\n\t * @type {number}\r\n\t */\r\n\tminSupportedAppleVersion = 16.5,\r\n\r\n\t/**\r\n\t * Selector for 'adi-footer' custom element\r\n\t * @type {string}\r\n\t */\r\n\tfooterSelector = 'adi-footer',\r\n\r\n\t/**\r\n\t * Selector for 'adi-header' custom element\r\n\t * @type {string}\r\n\t */\r\n\theaderSelector = 'adi-header',\r\n\r\n\t/**\r\n\t * Selector for 'adi-menu' custom element\r\n\t * @type {string}\r\n\t */\r\n\tmenuSelector = 'adi-menu',\r\n\r\n\t/**\r\n\t * Gets the current apple os version\r\n\t * @returns {number} current apple os version\r\n\t */\r\n\tgetCurrentAppleVersion = () => {\r\n\t\tconst match = userAgent.match( /Version\\/[0-9.]+|OS [0-9_]+/gi )?.[ 0 ];\r\n\t\tlet version;\r\n\r\n\t\tif ( !match ) {\r\n\t\t\tversion = minSupportedAppleVersion;\r\n\t\t} else if ( match.includes( '_' ) ) {\r\n\t\t\t// `OS 17_3_1` => `17.3`\r\n\t\t\tversion = match.slice( 3 ).split( '_' ).slice( 0, 2 ).join( '.' );\r\n\t\t} else {\r\n\t\t\t// `Version/17.3.1` => `17.3`\r\n\t\t\tversion = match.slice( 8, 12 );\r\n\t\t}\r\n\t\treturn Number( version );\r\n\t},\r\n\r\n\t/**\r\n\t * Hides an html element\r\n\t * @param {HTMLElement} element Element to be hidden\r\n\t */\r\n\thideElement = ( element ) => {\r\n\t\telement.setAttribute( 'hidden', '' );\r\n\t},\r\n\r\n\t/**\r\n\t * Whether header and footer is broken\r\n\t * @returns {boolean} if header and footer is broken\r\n\t */\r\n\tisHeaderFooterBroken = () => {\r\n\t\tconst footer = document.querySelector( footerSelector ); // Footer is present in all pages\r\n\t\tlet isBroken = false;\r\n\r\n\t\tif ( footer ) {\r\n\t\t\tisBroken = [ ...footer.querySelectorAll( 'li[slot]' ) ].length === 0;\r\n\t\t}\r\n\t\treturn isBroken;\r\n\t},\r\n\r\n\t/**\r\n\t * Hide broken header, footer and mega-menu to fix unpleasant UI\r\n\t */\r\n\thideBrokenHeaderFooter = () => {\r\n\t\tconst header = document.querySelector( headerSelector ),\r\n\t\t\tfooter = document.querySelector( footerSelector ),\r\n\t\t\tmenu = document.querySelector( menuSelector );\r\n\r\n\t\tif ( header ) hideElement( header );\r\n\t\tif ( footer ) hideElement( footer );\r\n\t\tif ( menu ) hideElement( menu );\r\n\t},\r\n\r\n\t/**\r\n\t * Whether to display the apple version warning or not\r\n\t * @returns {boolean} if the apple version warning should be displayed\r\n\t */\r\n\tshouldShowAppleVersionWarning = () => {\r\n\t\tconst isUnsupportedAppleVersion = getCurrentAppleVersion() < minSupportedAppleVersion;\r\n\t\treturn isHeaderFooterBroken() && isAppleDevice && isUnsupportedAppleVersion;\r\n\t},\r\n\r\n\t/**\r\n\t * Fetches header data\r\n\t * @returns {Promise} promise containing header data\r\n\t */\r\n\tgetHeaderData = async () => {\r\n\t\tconst baseUrl = createEnvironmentURL( 'assets', 'cldnet', true, true, 2, true ),\r\n\t\t\tres = await fetch( `${baseUrl}/cdp/adicommon2/${adiLocale()}/header.json` ),\r\n\t\t\tdata = await res.json();\r\n\t\treturn data;\r\n\t},\r\n\r\n\t/**\r\n\t * Creates the apple warning element and attaches it to DOM\r\n\t */\r\n\tshowAppleWarning = async () => {\r\n\t\tconst { appleWarningTitle, appleWarningDescription } = await getHeaderData(),\r\n\r\n\t\t\twarning = document.createElement( 'article' ),\r\n\t\t\twarningClassName = 'appleVersionWarning';\r\n\t\twarning.className = warningClassName;\r\n\r\n\t\twarning.innerHTML = ( `\r\n \r\n
\r\n
${appleWarningTitle}
\r\n

${appleWarningDescription}

\r\n
\r\n ` );\r\n\r\n\t\tdocument.body.appendChild( warning );\r\n\t},\r\n\r\n\t/**\r\n\t * Check if current apple device doesn't support nested css.\r\n\t * If yes, then display the apple os warning\r\n\t */\r\n\tinit = () => {\r\n\t\t// readyState 'complete' is not enough in iPhones\r\n\t\tsetTimeout( () => {\r\n\t\t\tif ( shouldShowAppleVersionWarning() ) {\r\n\t\t\t\thideBrokenHeaderFooter();\r\n\t\t\t\tshowAppleWarning();\r\n\t\t\t}\r\n\t\t}, 2000 );\r\n\t};\r\n\r\nonReadyStateComplete( init );\r\n","import 'bootstrap/dist/css/bootstrap.css';\r\nimport 'bootstrap/dist/css/bootstrap-grid.css';\r\nimport '#common/base-styles/js/index.mjs';\r\nimport '#common/global-css/js/index.mjs';\r\nimport '#common/apple-warning/js/index.mjs';\r\nimport '../css/index.css';\r\nimport { onReadyStateComplete } from '#common/ready/js/index.mjs';\r\n\r\n/**\r\n * @module app/myAnalog\r\n */\r\n\r\nlet adiLogo,\r\n\tloginPage;\r\n\r\n// simple login when email provided\r\nconst { host, search } = window.location,\r\n\t{ body } = document,\r\n\tATTRIBUTE_STYLE = 'style',\r\n\tQS = new URLSearchParams( search ),\r\n\temailAddr = QS.get( 'email' ),\r\n\r\n\t/**\r\n\t * Explicitly removing other sign-in options, if present\r\n\t */\r\n\tremoveUnusedElements = () => {\r\n\t\tdocument.querySelector( 'div#rowAzureDiv div#api div.social' )?.remove();\r\n\t\tdocument.querySelector( 'div#rowAzureDiv .login .facebook-help' )?.remove();\r\n\t\tdocument.querySelector( 'div#rowAzureDiv section.registration.benefits' )?.remove();\r\n\t},\r\n\r\n\t/**\r\n\t * Creates a mutation observer instance for the passed action\r\n\t * @param {Element} target Target to observe the mutations of\r\n\t * @param {Function} action Action to be performed for every mutation\r\n\t * @param {object} options Observer options\r\n\t */\r\n\tobserveMutationsFor = ( target, action = () => {}, options = {} ) => {\r\n\t\tconst actionObserver = new MutationObserver( action );\r\n\t\tactionObserver.observe( target, { childList: true, subtree: true, ...options } );\r\n\t},\r\n\r\n\t/**\r\n\t * Creates a resize observer instance for the passed action\r\n\t * @param {Element} target Target to observe the resize of\r\n\t * @param {Function} action Action to be performed for every resize event\r\n\t * @param {object} options Observer options\r\n\t */\r\n\tobserveResizeFor = ( target, action = () => {}, options = {} ) => {\r\n\t\tconst actionObserver = new ResizeObserver( action );\r\n\t\tactionObserver.observe( target, { ...options } );\r\n\t},\r\n\r\n\t/**\r\n\t * Populates the email input (once present) with the user's email used during sign-up\r\n\t * @param {MutationRecord[]} _ Unused mutation list\r\n\t * @param {MutationObserver} observer Observer instance\r\n\t * @returns {boolean} Whether the action is completed or not\r\n\t */\r\n\thandleEmailAutoPopulate = ( _, observer ) => {\r\n\t\tconst azureInjectionElem = document.getElementById( 'api' ),\r\n\t\t\tinput = document.querySelector( 'input#signInName' ),\r\n\t\t\tthankYouMsg = document.querySelector( '.thankyou-msg' );\r\n\r\n\t\tlet isCompleted = false;\r\n\r\n\t\tif ( azureInjectionElem && input ) {\r\n\t\t\tremoveUnusedElements();\r\n\t\t\tthankYouMsg?.removeAttribute( ATTRIBUTE_STYLE ); // Reveal thank-you message\r\n\t\t\tinput.value = emailAddr;\r\n\t\t\tif ( observer ) observer.disconnect();\r\n\t\t\tisCompleted = true;\r\n\t\t}\r\n\t\treturn isCompleted;\r\n\t},\r\n\r\n\t/**\r\n\t * Places 'forgot password' link (once present) at its correct DOM position\r\n\t * @param {MutationRecord[]} _ Unused mutation list\r\n\t * @param {MutationObserver} observer Observer instance\r\n\t * @returns {boolean} Whether the action is completed or not\r\n\t */\r\n\tpositionForgotPassword = ( _, observer ) => {\r\n\t\tconst forgotPasswordLink = document.querySelector( 'a#forgotPassword' ),\r\n\t\t\trememberMe = document.querySelector( 'div.rememberMe' );\r\n\r\n\t\tlet isCompleted = false;\r\n\r\n\t\tif ( rememberMe && forgotPasswordLink ) {\r\n\t\t\tconst container = document.createElement( 'div' );\r\n\t\t\tcontainer.classList.add( 'loginSettings' );\r\n\r\n\t\t\trememberMe.insertAdjacentElement( 'beforebegin', container );\r\n\t\t\tcontainer.appendChild( rememberMe );\r\n\t\t\tcontainer.appendChild( forgotPasswordLink );\r\n\r\n\t\t\tif ( observer ) observer.disconnect();\r\n\t\t\tisCompleted = true;\r\n\t\t}\r\n\t\treturn isCompleted;\r\n\t},\r\n\r\n\t/**\r\n\t * Reveals/un-hides the login page once it has been rendered and painted by css\r\n\t * @param {ResizeObserverEntry[]} _ Unused observer entry list\r\n\t * @param {ResizeObserver} observer Observer instance\r\n\t * @returns {boolean} Whether the action is completed or not\r\n\t */\r\n\trevealPageOnPaintComplete = ( _, observer ) => {\r\n\t\tconst isPagePainted = adiLogo?.getBoundingClientRect()?.width > 100;\r\n\r\n\t\tlet isCompleted = false;\r\n\r\n\t\tif ( isPagePainted && loginPage ) {\r\n\t\t\tloginPage.removeAttribute( ATTRIBUTE_STYLE ); // Remove the only 'visibility:hidden' style\r\n\t\t\tif ( observer ) observer.disconnect();\r\n\t\t\tisCompleted = true;\r\n\t\t}\r\n\t\treturn isCompleted;\r\n\t},\r\n\r\n\t/**\r\n\t * Checks for the presence of 'myAnalog-app' div (loginPage container), and reveal it\r\n\t * @param {MutationRecord[]} _ Unused mutation list\r\n\t * @param {MutationObserver} observer Observer instance\r\n\t * @returns {boolean} Whether the action is completed or not\r\n\t */\r\n\tcheckForLoginPageAndRevealIt = ( _, observer ) => {\r\n\t\tloginPage = document.getElementById( 'myAnalog-app' );\r\n\t\tadiLogo = document.querySelector( '.brand' );\r\n\r\n\t\tlet isCompleted = false;\r\n\r\n\t\tif ( loginPage ) {\r\n\t\t\t// For b2c-social view\r\n\t\t\tif ( adiLogo ) {\r\n\t\t\t\tconst isPageRevealed = revealPageOnPaintComplete();\r\n\r\n\t\t\t\tif ( !isPageRevealed ) {\r\n\t\t\t\t\tobserveResizeFor( adiLogo, revealPageOnPaintComplete );\r\n\t\t\t\t}\r\n\r\n\t\t\t// For b2c view\r\n\t\t\t} else {\r\n\t\t\t\tloginPage.removeAttribute( ATTRIBUTE_STYLE );\r\n\t\t\t}\r\n\r\n\t\t\tif ( observer ) observer.disconnect();\r\n\t\t\tisCompleted = true;\r\n\t\t}\r\n\t\treturn isCompleted;\r\n\t},\r\n\r\n\tinit = () => {\r\n\t\tif ( host.startsWith( 'id' ) ) {\r\n\t\t\tconst isForgotPasswordPositioned = positionForgotPassword(),\r\n\t\t\t\tisLoginPageFound = checkForLoginPageAndRevealIt();\r\n\r\n\t\t\tif ( !isForgotPasswordPositioned ) {\r\n\t\t\t\tobserveMutationsFor( body, positionForgotPassword );\r\n\t\t\t}\r\n\t\t\tif ( !isLoginPageFound ) {\r\n\t\t\t\tobserveMutationsFor( body, checkForLoginPageAndRevealIt );\r\n\t\t\t}\r\n\t\t\tif ( emailAddr ) {\r\n\t\t\t\tbody.classList.add( 'postreg-login' );\r\n\r\n\t\t\t\tconst isEmailAutoPopulated = handleEmailAutoPopulate();\r\n\t\t\t\tif ( !isEmailAutoPopulated ) {\r\n\t\t\t\t\tobserveMutationsFor( body, handleEmailAutoPopulate );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\twindow.scrollTo( 0, 0 );\r\n\t\t}\r\n\t};\r\n\r\nonReadyStateComplete( init );\r\n"],"names":["QUICK_ENV","host","search","window","location","subdomain","split","isMyAnalog","startsWith","langCode","document","documentElement","lang","params","URLSearchParams","useQs","includes","adiLocale","isReadyStateComplete","get","readyState","onReadyStateComplete","cb","addEventListener","userAgent","navigator","isAppleDevice","test","footerSelector","hideElement","element","setAttribute","showAppleWarning","async","appleWarningTitle","appleWarningDescription","baseUrl","subDomain","network","includeProtocol","includeEnvironmentSuffix","envSuffix","includeSuffixInProd","tld","protocol","environment","removeSuffix","matches","matchAll","next","env","value","replace","getEnv","createEnvironmentURL","res","fetch","json","getHeaderData","warning","createElement","warningClassName","className","innerHTML","body","appendChild","adiLogo","loginPage","setTimeout","isUnsupportedAppleVersion","match","version","slice","join","Number","getCurrentAppleVersion","footer","querySelector","isBroken","querySelectorAll","length","isHeaderFooterBroken","shouldShowAppleVersionWarning","header","menu","hideBrokenHeaderFooter","ATTRIBUTE_STYLE","emailAddr","observeMutationsFor","target","action","options","MutationObserver","observe","childList","subtree","handleEmailAutoPopulate","_","observer","azureInjectionElem","getElementById","input","thankYouMsg","isCompleted","remove","removeAttribute","disconnect","positionForgotPassword","forgotPasswordLink","rememberMe","container","classList","add","insertAdjacentElement","revealPageOnPaintComplete","getBoundingClientRect","width","checkForLoginPageAndRevealIt","ResizeObserver","observeResizeFor","isForgotPasswordPositioned","isLoginPageFound","scrollTo"],"sourceRoot":""}