{"version":3,"file":"chunks/WacSignUpLayoutContainer.3224.js","mappings":"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","sources":["webpack:///./resources/js/buyer-experience/common/environment.ts","webpack:///./resources/js/common/analytics.ts","webpack:///./resources/js/common/logger.ts","webpack:///./resources/js/common/optimizelyHelpers.ts","webpack:///./resources/js/common/consentHubV2/ConsentClient.ts","webpack:///./resources/js/react/sign-up-layout/WacSignUpLayoutContainer.tsx","webpack:///./node_modules/core-js/internals/function-bind.js","webpack:///./node_modules/core-js/modules/es.reflect.construct.js"],"sourcesContent":["const ENV_DEV = 'dev';\nconst ENV_STAGING = 'staging';\nconst ENV_PRODUCTION = 'production';\n\nexport default class Environment {\n\n static getEnvironment() {\n let env = ENV_PRODUCTION;\n const hostname = window.location.hostname.split('.')[0];\n\n switch (hostname) {\n case 'wac':\n case 'qa-wac':\n case 'author':\n case 'proof':\n env = ENV_STAGING;\n break;\n case 'localhost':\n case 'local':\n env = ENV_DEV;\n break;\n case \"truth\":\n case \"www\":\n case \"atlassian\":\n case \"bitbucket\":\n case \"sourcetreeapp\":\n case \"agile\": \n case \"git\":\n case \"software\":\n return ENV_PRODUCTION;\n default:\n /* for omlet instances */\n env = ENV_STAGING;\n }\n return env;\n }\n\n static production() {\n return ENV_PRODUCTION;\n }\n\n static staging() {\n return ENV_STAGING;\n }\n\n static dev() {\n return ENV_DEV;\n }\n}\n","import * as Logger from './logger';\nimport axios from 'axios';\nimport * as OptimizelyHelpers from './optimizelyHelpers';\n\n\nlet capturedEventsPromise: Array = [];\nlet onAnalyticsLoad = () => {\n Promise.all(capturedEventsPromise.map(fn => fn()));\n};\n\nexport const trackEvent = function (event: string, data: Record) {\n // First try to use the atl-global wrapper\n if (typeof ace !== \"undefined\") {\n ace.analytics.Tracking.trackEvent(event, data);\n } else {\n capturedEventsPromise.push(\n () => new Promise((resolve) => {\n trackEvent(event, data);\n resolve(null);\n })\n );\n\n window.segmentPageReady = onAnalyticsLoad;\n\n Logger.log({\n event,\n data,\n }, 'Analytics wrapper track event');\n }\n};\n\nexport const trackOptimizely = function (name: string) {\n if (typeof window.optimizely !== 'undefined') {\n window.optimizely.push({\n type: 'event',\n eventName: name\n });\n }\n};\n/**\n* Iterates through event keys, ensures that values are lowercase,\n* and replaces whitespace with `-` character\n**/\nexport const sanitizeEventProperties = function (propertiesObj) {\n let result = {};\n Object.keys(propertiesObj).map(key => {\n // do a quick check just in case values are null\n result[key] = propertiesObj[key] && propertiesObj[key].replace(/\\s+/g, '-').toLowerCase();\n });\n return result;\n}\n\nexport const trackGas = function (postBody) {\n const analyticsApiUrl = 'https://mgas.prod.public.atl-paas.net/v1/event';\n const options = {\n headers: {\n 'content-type': 'application/json'\n },\n withCredentials: true\n };\n\n postBody['properties']['optimizelyCohorts'] = OptimizelyHelpers.getOptimizelyCohorts();\n postBody['properties']['optimizelySegments'] = OptimizelyHelpers.getOptimizelySegments();\n postBody['properties']['optimizelyEndUserId'] = OptimizelyHelpers.getOptimizelyEndUserId();\n return axios.post(analyticsApiUrl, postBody, options)\n .then(() => Promise.resolve());\n};\n","import Environment from './environment';\n\nconst debug = Environment.isDev();\n\nexport const log = function (msg, title = '') {\n if (debug) {\n console.log(msg, title);\n }\n};\n\nexport const todo = function (msg) {\n if (debug) {\n console.log(`%c todo: ${msg}`, 'background: #2684FF; color: #fff; padding-right: 10px;');\n }\n};\n\nexport const warn = function (msg) {\n if (debug) {\n console.warn(msg);\n }\n};\n\nexport const error = function (msg, title = '') {\n if (debug) {\n console.error(msg, title);\n } else {\n // @todo: track error somewhere\n }\n};\n\n","export const getOptimizelyEndUserId = function () {\n if (typeof window.optimizely !== 'undefined' && typeof window.optimizely.get === 'function') {\n return window.optimizely.get('visitor_id').randomId;\n }\n return '';\n};\n\nexport const getOptimizelyCohorts = function () {\n if (typeof window.optimizely !== 'undefined' && typeof window.optimizely.get === 'function') {\n const variations = optimizely.get('state').getVariationMap();\n let buckets = {};\n\n for (let key in variations) {\n buckets[key] = variations[key].id;\n }\n\n buckets = JSON.stringify(buckets);\n return buckets;\n }\n return '';\n};\n\nexport const getOptimizelySegments = function () {\n if (typeof window.optimizely !== 'undefined' && typeof window.optimizely.get === 'function') {\n const custom = optimizely.get('visitor').custom;\n let segments = {};\n\n for (var key in custom) {\n // Sometimes it's encoded and has extra quotes\n var val = decodeURIComponent(custom[key].value);\n val = val.replace(/^\"(.*)\"$/, '$1');\n segments[custom[key].id] = val;\n }\n\n segments = JSON.stringify(segments);\n return segments;\n }\n return '';\n};\n\n// Get experiments+cohort that the user is enrolled in formatted for consumption by MEP Provisioning Provider\n// Returns (possibly empty) array of objects with experimentId and cohortId properties\nexport const getAllOptimizelyCohortsAsObjects = function () {\n if (typeof window.optimizely !== 'undefined' && typeof window.optimizely.get === 'function') {\n const variations = optimizely.get('state').getVariationMap();\n\n return Object.keys(variations).map( key => ({ experimentId: key, cohortId: variations[key].id}));\n }\n return [];\n};\n\n// Extend getAllOptimizelyCohortsAsObjects function to return null if array is empty\nexport const getMappedOptimizelyCohorts = function () {\n const cohorts = getAllOptimizelyCohortsAsObjects();\n return cohorts.length ? cohorts : null;\n};\n","import stgConfig from \"../../../../config\";\nimport axios from \"axios\";\n\nimport Environment from \"../../buyer-experience/common/environment\";\n\nconst DEV_ENV = Environment.dev();\nconst STAGING_ENV = Environment.staging();\nconst PRODUCTION_ENV = Environment.production();\n\nconst BXP_EXPRESS_ENDPOINT: { [key: string]: string } = {};\nBXP_EXPRESS_ENDPOINT[PRODUCTION_ENV] = \"https://www.atlassian.com/endpoint\";\nBXP_EXPRESS_ENDPOINT[STAGING_ENV] = `${window.location.hostname.indexOf(\"qa-wac\") > -1\n ? \"https://qa-wac.internal.atlassian.com\"\n : stgConfig.stgWacInternalUrl\n }/endpoint`;\nBXP_EXPRESS_ENDPOINT[DEV_ENV] = BXP_EXPRESS_ENDPOINT[STAGING_ENV];\n\nexport type Consent = {\n key: string;\n displayedText: string;\n granted: boolean;\n};\n\nexport type SubscriptionKey = string;\n\nexport type Subscription = {\n key: SubscriptionKey;\n subscribed: boolean;\n};\n\ntype SubsciberDetails = { [key: string]: string };\n\n// Should match `UpdatePreferencesPayload` in `bxp-express`\ntype UpdatePreferencesPayload = {\n formId: string;\n site?: string;\n source?: string;\n email: string;\n locale: string;\n formUrl: string;\n subscriberDetails?: SubsciberDetails;\n consentLabelText?: string;\n consentCheckboxValue: boolean;\n privacyPolicyText?: string;\n ndaText?: string;\n};\n\ntype UpdatePreferencesParams = {\n formId: string;\n site?: string;\n source?: string;\n email: string;\n locale?: string;\n paramsLocale?: string;\n formUrl: string;\n consentLabelText?: string;\n consentCheckboxValue: boolean;\n privacyPolicyText?: string;\n ndaText?: string;\n};\n\nconst requiredProps = [\"email\", \"site\", \"locale\", \"formUrl\"];\n\nclass ConsentHubClient {\n config: {\n locale?: string;\n localeRequiresMarketingCommunicationOptIn?: boolean;\n };\n bxpExpressEndpoint: string;\n\n constructor() {\n this.config = {};\n\n this.bxpExpressEndpoint = BXP_EXPRESS_ENDPOINT[Environment.getEnvironment()];\n }\n\n /**\n * Set a user's subscriptions & consents (for a specific mailing list).\n */\n async updatePreferences(params: UpdatePreferencesParams) {\n const paramsLocale = params.paramsLocale ? params.paramsLocale : \"UNKNOWN\";\n const postData: UpdatePreferencesPayload = { locale: (this.config.locale || paramsLocale), ...params };\n\n // eslint-disable-next-line no-prototype-builtins\n if (!requiredProps.every((prop) => postData.hasOwnProperty(prop))) {\n throw `Invalid parameters. Required: {${requiredProps.toString()}}`;\n }\n\n const endpoint = `${this.bxpExpressEndpoint}/preferencesV2/update`;\n const response = await axios.post(endpoint, postData, {\n headers: {\n \"Content-Type\": \"application/json\",\n },\n });\n return response.status;\n }\n\n /**\n * Get \"config\" data from ConsentHub\n */\n async requestConfig() {\n return this.config = (await axios.post(\n `${this.bxpExpressEndpoint}/preferencesV2/consent-config`\n )).data;\n }\n}\n\nexport default ConsentHubClient;\n","import { SignUpLayoutContainer } from \"@atlassiansox/bxpkit-wac-sign-up\";\nimport { AnalyticsListener } from \"@atlaskit/analytics-next\";\nimport React, { useEffect, useState } from \"react\";\nimport { IntlProvider } from \"react-intl\";\nimport { trackEvent, trackOptimizely } from \"../../common/analytics\";\nimport { ConsentHubClient } from \"../../common/ConsentHubV2\";\nimport { OptimizelyType, SegmentType } from \"@atlassiansox/bxpkit-core\";\n\nconst getLocale = async () => {\n const consentHub = new ConsentHubClient();\n return await consentHub.requestConfig();\n};\n\n// Combined Analytics Tracking\nconst analyticsTrack = {\n segment: trackEvent,\n newRelic: {\n action: () => {},\n attribute: () => {},\n trackAjax: () => {},\n },\n optimizely: trackOptimizely,\n};\n\nexport type AnalyticsPayload = {\n readonly schemaVersion: number;\n readonly event: string;\n readonly eventType: string;\n readonly eventComponent: string;\n readonly eventContainer: string;\n readonly eventColumn: string;\n readonly eventName: string;\n readonly label: string;\n readonly parentLabel: string;\n readonly uuid: string;\n readonly layout: string;\n readonly bundle: string;\n readonly product: string;\n readonly edition: string;\n};\n\nexport type SendOptimizelyAnalyticsOptions = {\n readonly payload: AnalyticsPayload;\n};\n\nexport type SendAnalyticsOptions = {\n readonly payload: AnalyticsPayload;\n readonly context: AnalyticsPayload[];\n};\n\nfunction sendOptimizelyAnalytics({ payload }: SendOptimizelyAnalyticsOptions) {\n trackOptimizely(payload.eventName);\n}\n\nfunction sendAnalytics({ payload, context }: SendAnalyticsOptions) {\n const analyticsDataList = [...context, payload];\n const analyticsEvent = analyticsDataList.reduce(\n (mergedAnalyticsEvent, currentAnalyicsEvent) => {\n return { ...mergedAnalyticsEvent, ...currentAnalyicsEvent };\n },\n {}\n ) as AnalyticsPayload;\n trackEvent(analyticsEvent.eventName, analyticsEvent);\n}\n\ntype LayoutType =\n | \"default\"\n | \"standalone\"\n | \"standalone-v2\"\n | \"devops\"\n | \"devops-v2\"\n | \"first-impressions\"\n | \"first-impressions-v2\";\n\nexport type FirstImpressionsAppImageUrlsType = {\n readonly heroImage: string;\n readonly socialProofImage?: string;\n};\n\nexport type FirstImpressionsImageUrlsType = {\n readonly backgroundImage: string;\n readonly jiraSoftware: FirstImpressionsAppImageUrlsType;\n readonly jiraServiceDesk: FirstImpressionsAppImageUrlsType;\n readonly confluence: FirstImpressionsAppImageUrlsType;\n readonly jiraCore: FirstImpressionsAppImageUrlsType;\n readonly teamCentral: FirstImpressionsAppImageUrlsType;\n readonly jiraProductDiscovery: FirstImpressionsAppImageUrlsType;\n readonly compass: FirstImpressionsAppImageUrlsType;\n};\n\nexport type LabelsType = { [key: string]: string };\n\nexport type Product = {\n readonly productKey: string;\n readonly productName: string;\n readonly productLogoUrl?: string;\n readonly productLogoWhiteUrl?: string;\n};\n\ntype LocaleType = {\n readonly locale: string;\n readonly localeRequiresMarketingCommunicationOptIn: boolean;\n};\n\ntype AnalyticsTrackType = {\n readonly optimizely: OptimizelyType;\n readonly segment: SegmentType;\n};\n\nexport type ProductType = {\n readonly productKey: string;\n readonly productName: string;\n readonly productLogoUrl?: string;\n readonly productLogoWhiteUrl?: string;\n readonly atlasKitLogoName?: string;\n};\n\nexport type BundleContent = {\n readonly heroImage: string;\n readonly headline: string;\n readonly socialProofImage?: string;\n readonly featureList: string;\n};\n\nexport type ProductDataType = {\n readonly products: ProductType[];\n readonly bundleProductKeys: string;\n readonly iconSrc?: string;\n readonly iconAlt?: string;\n readonly calloutRichText?: string;\n readonly bundleContent?: {\n readonly default: BundleContent;\n };\n};\n\nexport type DevopsImageUrlsType = {\n readonly sidebarImage: string;\n readonly backgroundImage: string;\n readonly envelopeN2N: string;\n readonly successN2E: string;\n};\n\nexport type FeatureFlags = {\n readonly enableTintinMvp?: boolean;\n readonly enableAisAvailableProducts?: boolean;\n readonly enableDevopsGoogleSignup?: boolean;\n readonly provisionSecondPartyApps?: boolean;\n}\n\nexport type GlobalConfiguration = {\n readonly confirmationPageUrl: string;\n readonly checkEmailPageUrl: string;\n readonly socialContinueUrl: string;\n readonly siteRenamePageUrl?: string;\n};\n\nexport type SignUpLayoutContainerProps = {\n readonly allowEnableAutogenSiteName: boolean;\n readonly allowSignupWithGoogle: boolean;\n readonly enableFreeBreachTest: boolean;\n readonly showSocialSignupForm: boolean;\n readonly socialContinueUrl: string;\n readonly loadingImageSrc: string;\n readonly errorImageSrc: string;\n readonly productData: { [key: string]: ProductDataType };\n readonly locale: LocaleType;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly labels: LabelsType;\n readonly layout?: LayoutType;\n readonly productOverride?: string;\n readonly bundleOverride?: string;\n readonly editionOverride?: string;\n readonly performanceStartTime?: number;\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrlsType;\n readonly devopsImageUrls: DevopsImageUrlsType;\n readonly siteRenamePageUrl?: string;\n readonly enableSkipRecaptcha?: boolean;\n readonly featureFlags: FeatureFlags;\n readonly globalConfiguration?: GlobalConfiguration;\n};\n\n/**\n * @param props - same as the props received by this container\n */\nexport default function WacSignUpLayoutContainer(\n props: SignUpLayoutContainerProps\n) {\n const [locale, setLocale] = useState({\n locale: \"UNKNOWN\",\n localeRequiresMarketingCommunicationOptIn: true,\n });\n const [fetchingLocale, setFetchingLocale] = useState(true);\n\n useEffect(() => {\n async function getLocaleData() {\n const localeData = await getLocale();\n if (localeData) {\n setLocale(localeData);\n }\n }\n getLocaleData()\n .then(() => setFetchingLocale(false))\n .catch(() => setFetchingLocale(false));\n }, []);\n\n return fetchingLocale ? (\n
\n ) : (\n \n \n \n \n \n \n \n );\n}\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar $Function = Function;\nvar concat = uncurryThis([].concat);\nvar join = uncurryThis([].join);\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!hasOwn(factories, argsLength)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n factories[argsLength] = $Function('C,a', 'return new C(' + join(list, ',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.es/ecma262/#sec-function.prototype.bind\nmodule.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {\n var F = aCallable(this);\n var Prototype = F.prototype;\n var partArgs = arraySlice(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = concat(partArgs, arraySlice(arguments));\n return this instanceof boundFunction ? construct(F, args.length, args) : F.apply(that, args);\n };\n if (isObject(Prototype)) boundFunction.prototype = Prototype;\n return boundFunction;\n};\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind');\nvar aConstructor = require('../internals/a-constructor');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\nvar ObjectPrototype = Object.prototype;\nvar push = [].push;\n\n// `Reflect.construct` method\n// https://tc39.es/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\n\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\n\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aConstructor(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aConstructor(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n apply(push, $args, args);\n return new (apply(bind, Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : ObjectPrototype);\n var result = apply(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n"],"names":["ENV_STAGING","ENV_PRODUCTION","Environment","env","window","location","hostname","split","capturedEventsPromise","onAnalyticsLoad","Promise","all","map","fn","trackEvent","event","data","ace","analytics","Tracking","push","resolve","segmentPageReady","Logger","trackOptimizely","name","optimizely","type","eventName","sanitizeEventProperties","propertiesObj","result","Object","keys","key","replace","toLowerCase","debug","log","msg","title","console","warn","getOptimizelyEndUserId","get","randomId","getOptimizelyCohorts","variations","getVariationMap","buckets","id","JSON","stringify","getOptimizelySegments","custom","segments","val","decodeURIComponent","value","i","DEV_ENV","STAGING_ENV","PRODUCTION_ENV","BXP_EXPRESS_ENDPOINT","indexOf","stgConfig","requiredProps","ConsentHubClient","this","config","bxpExpressEndpoint","params","paramsLocale","postData","locale","every","prop","hasOwnProperty","toString","endpoint","axios","headers","response","status","getLocale","consentHub","requestConfig","analyticsTrack","segment","newRelic","action","attribute","trackAjax","sendOptimizelyAnalytics","payload","sendAnalytics","context","analyticsEvent","reduce","mergedAnalyticsEvent","currentAnalyicsEvent","WacSignUpLayoutContainer","props","useState","localeRequiresMarketingCommunicationOptIn","setLocale","fetchingLocale","setFetchingLocale","useEffect","localeData","getLocaleData","then","catch","AnalyticsListener","channel","onEvent","document","documentElement","lang","messages","labels","performanceStartTime","performance","now","uncurryThis","aCallable","isObject","hasOwn","arraySlice","NATIVE_BIND","$Function","Function","concat","join","factories","construct","C","argsLength","args","list","module","exports","bind","that","F","Prototype","prototype","partArgs","arguments","boundFunction","length","apply","$","getBuiltIn","aConstructor","anObject","create","fails","nativeConstruct","ObjectPrototype","NEW_TARGET_BUG","ARGS_BUG","FORCED","target","stat","forced","sham","Target","newTarget","$args","proto","instance"],"sourceRoot":""}