{"version":3,"file":"static/js/application.async.landing~caaf11b1.b1495c35.chunk.js","mappings":"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","sources":["../../../../component-react-fluent/packages/ad-common/src/ads-config.js","../../../../component-react-fluent/packages/ad-common/src/rsa-helper.js","../../../../component-react-fluent/packages/bid-strategy-dropdown/src/index.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/max-conversions.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/max-conversions-value.js","../../../../component-react-fluent/packages/bid-strategy-component/src/styles/get-additional-details-styles.js","../../../../component-react-fluent/packages/bid-strategy-component/src/styles/get-text-field-with-suffix-styles.js","../../../../component-react-fluent/packages/bid-strategy-component/src/additional-details.js","../../../../component-react-fluent/packages/bid-strategy-component/src/text-field-with-suffix.js","../../../../component-react-fluent/packages/bid-strategy-component/src/bid-message-bar.js","../../../../component-react-fluent/packages/bid-strategy-component/src/bid-strategy-shimmer.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/manual-cpa.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/manual-cpc.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/bid-strategy-options-map.js","../../../../component-react-fluent/packages/bid-strategy-component/src/bid-strategy-component.js","../../../../component-react-fluent/packages/bid-strategy-component/src/options/use-bid-strategy-schema.js","../../../../component-react-fluent/packages/budget-component/src/styles/get-estimated-monthly-budget-styles.js","../../../../component-react-fluent/packages/budget-component/src/styles/get-budget-input-styles.js","../../../../component-react-fluent/packages/budget-component/src/currency-dropdown.js","../../../../component-react-fluent/packages/budget-component/src/budget-input.js","../../../../component-react-fluent/packages/budget-component/src/consts.js","../../../../component-react-fluent/packages/budget-component/src/styles/get-slider-styles.js","../../../../component-react-fluent/packages/budget-component/src/slider.js","../../../../component-react-fluent/packages/budget-component/src/serialize-currencies.js","../../../../component-react-fluent/packages/budget-component/src/styles/get-shimmer-styles.js","../../../../component-react-fluent/packages/budget-component/src/budget-shimmer.js","../../../../component-react-fluent/packages/budget-component/src/budget-component.js","../../../../component-react-fluent/packages/budget-component/src/helpers.js","../../../../component-react-fluent/packages/multi-language-selector/src/multi-language-selector.js","../../../../component-react-fluent/packages/language-target/src/constants.js","../../../../component-react-fluent/packages/language-target/styles/get-intent-language-style.js","../../../../component-react-fluent/packages/language-target/src/language-target.js","../../../../component-react-fluent/packages/language-target/src/single-language-target.js","../../../../component-react-fluent/packages/performance-tile/src/styles/get-estimation-item-styles.js","../../../../component-react-fluent/packages/performance-tile/src/estimation-item.js","../../../../component-react-fluent/packages/performance-tile/src/styles/get-performance-shimmer-styles.js","../../../../component-react-fluent/packages/performance-tile/src/performance-shimmer.js","../../../../component-react-fluent/packages/performance-tile/src/styles/get-performance-tile-styles.js","../../../../component-react-fluent/packages/performance-tile/src/performance-tile.js","../../../../component-react-fluent/packages/recommendation-prefill/src/utils/api-error-mapping.js","../../../../component-react-fluent/packages/recommendation-prefill/src/utils/expected-error-codes.js","../../../../component-react-fluent/packages/shared-app-capi/src/urls.js","../../../../component-react-fluent/packages/shared-app-capi/src/shared-wizard-context.js","../../../../component-react-fluent/packages/shared-app-capi/src/wizard-scope-context.js","../../../../component-react-fluent/packages/shared-app-capi/src/wizard-server-context.js","../../../../component-react-fluent/packages/shared-app-capi/src/ab-testing-event-log.js","../../../../component-react-fluent/packages/shared-app-capi/src/customer-journey-provider.js","../../../../component-react-fluent/packages/shared-app-capi/src/signup-flow-provider.js","../../../../component-react-fluent/packages/shared-app-capi/src/signup-flow-logger.js","../../../../component-react-fluent/packages/signup-user-info-form/src/signup-user-info-form.js","../../../../component-react-fluent/packages/signup-user-info-form/src/signup-user-info-dialog.js","../../../../component-react-fluent/packages/signup-user-info-form/src/use-user-info.js","../../../../component-react-fluent/packages/step-wizard-layout/src/styles/step-base-layout-footer-styles.js","../../../../component-react-fluent/packages/step-wizard-layout/src/step-base-layout-footer.js","../../../../component-react-fluent/packages/step-wizard-layout/src/styles/step-base-layout-styles.js","../../../../component-react-fluent/packages/step-wizard-layout/src/step-base-layout.js","../../../../component-react-fluent/packages/step-wizard-layout/src/styles/step-base-modal-footer-styles.js","../../../../component-react-fluent/packages/step-wizard-layout/src/step-base-modal-footer.js","../../../../component-react-fluent/packages/step-wizard-layout/src/styles/step-base-modal-layout-styles.js","../../../../component-react-fluent/packages/step-wizard-layout/src/step-base-modal-layout.js","../../../../component-react-fluent/packages/store-select/styles/get-store-style.js","../../../../component-react-fluent/packages/store-select/src/store-select-view.js","../../../../component-react-fluent/packages/store-select/src/store-select-creation.js","../../../../component-react-fluent/packages/store-select/src/utils.js","../../../../component-react-fluent/packages/store-select/src/store-select-loading.js","../../../../component-react-fluent/packages/store-select/src/store-select-container.js","../../../../component-react-fluent/packages/url-input-fluent/src/validation.js","../../../../component-react-fluent/packages/url-input-fluent/src/url-path-fluent.js","../../../../component-react-fluent/packages/url-input-fluent/src/utils.js","../../../../component-react-fluent/packages/url-input-fluent/src/url-input-fluent.js","../../../../component-react-fluent/packages/url-input-fluent/src/with-no-protocol.js","../../../../component-react-fluent/packages/url-options/src/styles.js","../../../../component-react-fluent/packages/url-options/src/validators.js","../../../../component-react-fluent/packages/url-options/src/error.js","../../../../component-react-fluent/packages/url-options/src/legacy-i18n.js","../../../../component-react-fluent/packages/url-options/src/url-options-parameters.js","../../../../component-react-fluent/packages/url-options/src/url-options.js","../../../../component-react-fluent/packages/url-options/src/validated-url-options-parameters.js","../../../../component-react-fluent/packages/url-options/src/get-url-options-details.js","../../../../component-react-fluent/packages/loading/src/loading.tsx","../../../../component-react-fluent/packages/loading/src/inline-loading.js","../../../../component-react-fluent/packages/loading/src/loading-overlay.js"],"sourcesContent":["export const DUPLICATE_ITEM_TITLE = _TL_('{{originalTitle}} - Copy');\r\n","import _ from 'underscore';\r\nimport { parseSync } from '@bingads-webui/safe-json';\r\n\r\nexport const defaultHeadlines = [\r\n 'Freshly Delivered Flowers',\r\n 'Save 10%',\r\n 'Free Delivery',\r\n];\r\n\r\nexport const defaultDescriptions = [\r\n 'Sustainably Grown Flowers On Sale and Ready To Ship',\r\n 'Order Now',\r\n];\r\n\r\nconst headlinePositionKey = ['Headline1', 'Headline2', 'Headline3', 'None'];\r\nconst descriptionPositionKey = ['Description1', 'Description2', 'None'];\r\n\r\nfunction endWithPeriod(text) {\r\n if ('.?!'.indexOf(text.slice(-1)) === -1) {\r\n return `${text}.`;\r\n }\r\n\r\n return text;\r\n}\r\n\r\nexport function combineDescriptions(textPart1, textPart2) {\r\n if (_.isEmpty(textPart1) && _.isEmpty(textPart2)) {\r\n return '';\r\n }\r\n\r\n if (_.isEmpty(textPart1)) {\r\n return endWithPeriod(textPart2);\r\n }\r\n\r\n if (_.isEmpty(textPart2)) {\r\n return endWithPeriod(textPart1);\r\n }\r\n\r\n let combinedText;\r\n\r\n if ('.?!'.indexOf(textPart1.slice(-1)) > -1) {\r\n combinedText = `${textPart1} ${textPart2}`;\r\n } else {\r\n combinedText = `${textPart1}. ${textPart2}`;\r\n }\r\n\r\n return endWithPeriod(combinedText);\r\n}\r\n\r\nexport function combineDescriptionArray(desArray) {\r\n if (!_.isArray(desArray)) {\r\n return '';\r\n }\r\n\r\n if (desArray.length < 2) {\r\n return desArray[0];\r\n }\r\n\r\n return combineDescriptions(desArray[0], desArray[1]);\r\n}\r\n\r\nexport function getPreviewList(data, positionKey) {\r\n if (!_.isArray(data)) {\r\n return [];\r\n }\r\n\r\n const list = _.mapObject(_.invert(positionKey), () => []);\r\n _.each(data, (item) => {\r\n if (!_.isEmpty(_.result(item.Asset, 'Text')) && _.has(list, item.PinnedField)) {\r\n list[item.PinnedField].push(item.Asset.Text);\r\n }\r\n });\r\n\r\n const dist = _.map(\r\n _.reject(positionKey, i => i === 'None'),\r\n (key) => {\r\n if (_.size(list[key]) > 0) {\r\n return _.first(list[key]);\r\n }\r\n return list.None.shift();\r\n }\r\n );\r\n\r\n return _.compact(dist);\r\n}\r\n\r\nexport function getTitlePreview(headlines) {\r\n const titlePreview = getPreviewList(headlines, headlinePositionKey).join(' | ');\r\n return _.isEmpty(titlePreview) ? defaultHeadlines.join(' | ') : titlePreview;\r\n}\r\n\r\nexport function getDescPreview(descriptions, disclaimerLineText) {\r\n let previewList = getPreviewList(descriptions, descriptionPositionKey);\r\n if (previewList.length === 0) {\r\n previewList = defaultDescriptions;\r\n }\r\n if (!_.isEmpty(disclaimerLineText)) {\r\n previewList = [previewList[0], disclaimerLineText];\r\n }\r\n const descPreview = combineDescriptionArray(previewList);\r\n return descPreview;\r\n}\r\n\r\nfunction getMoreHint(assets, property, i18n) {\r\n const list = getPreviewList(assets, property === 'Headlines' ? headlinePositionKey : descriptionPositionKey);\r\n return assets.length > list.length ?\r\n i18n.getString('RSA_Count_More').replace('{{count}}', assets.length - list.length) : '';\r\n}\r\n\r\nexport function getMoreTitleHint(headlines, i18n) {\r\n return getMoreHint(headlines, 'Headlines', i18n);\r\n}\r\n\r\nexport function getMoreDescHint(descriptions, i18n) {\r\n return getMoreHint(descriptions, 'Descriptions', i18n);\r\n}\r\n\r\nfunction getMoreHintFromJson(jsonString, property, i18n) {\r\n let values = parseSync(jsonString);\r\n if (!_.isEmpty(values)) {\r\n values = _.map(values, value => parseSync(value));\r\n return getMoreHint(values, property, i18n);\r\n }\r\n return '';\r\n}\r\n\r\nexport function getMoreTitleHintFromJson(jsonString, i18n) {\r\n return getMoreHintFromJson(jsonString, 'Headlines', i18n);\r\n}\r\n\r\nexport function getMoreDescHintFromJson(jsonString, i18n) {\r\n return getMoreHintFromJson(jsonString, 'Descriptions', i18n);\r\n}\r\n\r\nfunction getPreviewFromJson(jsonString, property) {\r\n let values = parseSync(jsonString);\r\n let preview;\r\n\r\n if (!_.isEmpty(values)) {\r\n values = _.map(values, value => parseSync(value));\r\n preview = (property === 'Headlines') ? getTitlePreview(values) : getDescPreview(values);\r\n } else {\r\n preview = jsonString;\r\n }\r\n\r\n return preview;\r\n}\r\n\r\nexport function getTitlePreviewFromJson(headlineValue) {\r\n return getPreviewFromJson(headlineValue, 'Headlines');\r\n}\r\n\r\nexport function getDescPreviewFromJson(descriptionValue) {\r\n return getPreviewFromJson(descriptionValue, 'Descriptions');\r\n}\r\n","import React, { useContext } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { getId } from '@fluentui/react';\r\nimport { Label } from '@bingads-webui-react/fabric-control';\r\nimport { Dropdown } from '@bingads-webui-react/fabric-with-signal';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nconst localizeText = (i18n, option) => ({\r\n ...option,\r\n text: i18n.getString(option.text),\r\n});\r\n\r\nexport const BidStrategyDropdown = ({\r\n bidStrategyOptions,\r\n onBidStrategyChange,\r\n bidStrategyValue,\r\n onRenderInlineHelp,\r\n defaultSelectedKey,\r\n bidStrategyLabel,\r\n}) => {\r\n const i18n = useContext(I18nContext);\r\n\r\n const dropdownId = getId('bid-strategy-dropdown');\r\n const dropdownLabelId = getId('label-dropdown');\r\n\r\n const onRenderLabel = () => (\r\n <>\r\n
\r\n \r\n {onRenderInlineHelp && onRenderInlineHelp()}\r\n
\r\n \r\n );\r\n\r\n const bidOptions = bidStrategyOptions.map(option => localizeText(i18n, option));\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nBidStrategyDropdown.propTypes = {\r\n bidStrategyOptions: PropTypes.arrayOf(PropTypes.shape({\r\n key: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n })).isRequired,\r\n onBidStrategyChange: PropTypes.func.isRequired,\r\n bidStrategyValue: PropTypes.string.isRequired,\r\n onRenderInlineHelp: PropTypes.func,\r\n defaultSelectedKey: PropTypes.string,\r\n bidStrategyLabel: PropTypes.string,\r\n};\r\n\r\nBidStrategyDropdown.defaultProps = {\r\n onRenderInlineHelp: null,\r\n defaultSelectedKey: null,\r\n bidStrategyLabel: _TL_('Bid Strategy'),\r\n};\r\n","export const MAX_CONVERSIONS = {\r\n key: 'maximizeConversions',\r\n text: _TL_('Maximize conversions'),\r\n marketingMetric: 'cpa',\r\n checkboxLabel: _TL_('Set a target cost per acquisition (CPA) (Optional)'),\r\n inputLabel: _TL_('Target cost per acquisition'),\r\n inputUnit: 'USD', // should overwrite this property with users currency\r\n minValue: 0.01,\r\n maxValue: 4000,\r\n type: 'MaxConversions',\r\n};\r\n\r\nexport const MAX_CONVERSIONS_SCHEMA = {\r\n name: 'Product Schema',\r\n type: 'object',\r\n properties: {\r\n [MAX_CONVERSIONS.marketingMetric]: {\r\n type: 'number',\r\n required: false,\r\n minimum: MAX_CONVERSIONS.minValue,\r\n maximum: MAX_CONVERSIONS.maxValue,\r\n },\r\n },\r\n};\r\n","export const MAX_CONVERSIONS_VALUE = {\r\n key: 'maximizeConversionsValue',\r\n text: _TL_('Maximize conversion value'),\r\n marketingMetric: 'roas',\r\n checkboxLabel: _TL_('Set a target return on ad spend (ROAS) (Optional)'),\r\n inputLabel: _TL_('Target return on ad spend'),\r\n inputUnit: '%',\r\n minValue: 1,\r\n maxValue: 100000,\r\n type: 'MaxConversionValue',\r\n};\r\n\r\nexport const MAX_CONVERSIONS_VALUE_SCHEMA = {\r\n name: 'Product Schema',\r\n type: 'object',\r\n properties: {\r\n [MAX_CONVERSIONS_VALUE.marketingMetric]: {\r\n type: 'number',\r\n required: false,\r\n minimum: MAX_CONVERSIONS_VALUE.minValue,\r\n maximum: MAX_CONVERSIONS_VALUE.maxValue,\r\n },\r\n },\r\n};\r\n","export const inputStyles = {\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n margin: 5,\r\n '& .ms-TextField-fieldGroup': {\r\n maxWidth: 94,\r\n },\r\n },\r\n};\r\n\r\nexport const labelStyles = {\r\n root: {\r\n display: 'inline-flex',\r\n },\r\n};\r\n\r\n","export const getTextFieldWithSuffixStyles = () => {\r\n const textFieldWithSuffix = {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n };\r\n\r\n return {\r\n textFieldWithSuffix,\r\n };\r\n};\r\n\r\nexport const unitStyles = {\r\n root: {\r\n alignSelf: 'center',\r\n },\r\n};\r\n","import React, { useState, useContext, useCallback, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Checkbox, Label, getId } from '@fluentui/react';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { withValidation, withError } from '@bingads-webui-react/validation';\r\nimport { ValidationGroup } from '@bingads-webui-react/primitive-validation';\r\nimport { LegacyI18nContext } from '@bingads-webui-react/legacy-i18n-context';\r\nimport { MAX_CONVERSIONS } from './options/max-conversions';\r\nimport { MAX_CONVERSIONS_VALUE } from './options/max-conversions-value';\r\nimport { inputStyles, labelStyles } from './styles/get-additional-details-styles';\r\nimport { TextFieldWithSuffix } from './text-field-with-suffix';\r\n\r\nconst ValidatedInput = withError(withValidation(TextFieldWithSuffix));\r\n\r\nexport const AdditionalDetails = (props) => {\r\n const {\r\n // Checkbox\r\n defaultChecked,\r\n checkboxLabel,\r\n // Input\r\n inputLabel,\r\n inputUnit,\r\n bidStrategy,\r\n marketingMetricsValue,\r\n onMarketingMetricChange,\r\n // Validation\r\n schema,\r\n } = props;\r\n\r\n const i18n = useContext(I18nContext);\r\n // ValidationGroup has dependency on legacyI18n\r\n const legacyI18n = useContext(LegacyI18nContext);\r\n\r\n const [checked, setChecked] = useState(defaultChecked);\r\n\r\n const onCheckboxChange = useCallback((e, val) => {\r\n setChecked(val);\r\n if (!val) {\r\n onMarketingMetricChange({ data: { cpa: null, roas: null } });\r\n }\r\n }, [onMarketingMetricChange]);\r\n\r\n const marketingMetricId = getId('marketing-metric-value');\r\n\r\n const onValidate = useCallback((result) => {\r\n onMarketingMetricChange(result);\r\n }, [onMarketingMetricChange]);\r\n\r\n const validationProps = useMemo(() => ({\r\n schema,\r\n onValidate,\r\n i18n: legacyI18n,\r\n data: marketingMetricsValue,\r\n }), [legacyI18n, marketingMetricsValue, onValidate, schema]);\r\n\r\n return (\r\n
\r\n \r\n {\r\n checked ? (\r\n \r\n \r\n {i18n.getString(inputLabel)}\r\n \r\n {/* TODO: Don't know why this won't work */}\r\n {/* */}\r\n {\r\n bidStrategy === MAX_CONVERSIONS.type && (\r\n \r\n )\r\n }\r\n {\r\n bidStrategy === MAX_CONVERSIONS_VALUE.type && (\r\n \r\n )\r\n }\r\n ) : null\r\n }\r\n
\r\n );\r\n};\r\n\r\n\r\nAdditionalDetails.propTypes = {\r\n defaultChecked: PropTypes.bool,\r\n checkboxLabel: PropTypes.string,\r\n inputLabel: PropTypes.string,\r\n inputUnit: PropTypes.string.isRequired,\r\n marketingMetricsValue: PropTypes.shape({\r\n cpa: PropTypes.number,\r\n roas: PropTypes.number,\r\n }).isRequired,\r\n bidStrategy: PropTypes.string.isRequired,\r\n data: PropTypes.shape({\r\n marketingMetric: PropTypes.number,\r\n }).isRequired,\r\n onMarketingMetricChange: PropTypes.func.isRequired,\r\n schema: PropTypes.shape({}).isRequired,\r\n};\r\n\r\nAdditionalDetails.defaultProps = {\r\n defaultChecked: false,\r\n checkboxLabel: _TL_(''),\r\n inputLabel: _TL_(''),\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { TextField, Text } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getTextFieldWithSuffixStyles, unitStyles } from './styles/get-text-field-with-suffix-styles';\r\n\r\nexport const TextFieldWithSuffix = (props) => {\r\n const { unit } = props;\r\n const classes = useDefaultStyles(getTextFieldWithSuffixStyles);\r\n\r\n return (\r\n
\r\n \r\n {unit}\r\n
\r\n );\r\n};\r\n\r\nTextFieldWithSuffix.propTypes = {\r\n unit: PropTypes.string.isRequired,\r\n};\r\n\r\n","import React, { useContext } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { DefaultButton } from '@fluentui/react';\r\nimport { MessageBar, MessageBarBody } from '@fluentui/react-message-bar';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nexport const BidMessageBar = (props) => {\r\n const {\r\n buttonText,\r\n messageType,\r\n messageContent,\r\n onButtonClick,\r\n } = props;\r\n\r\n const i18n = useContext(I18nContext);\r\n return (\r\n \r\n \r\n {messageContent}\r\n {_.isFunction(onButtonClick) && }\r\n \r\n \r\n );\r\n};\r\n\r\nBidMessageBar.propTypes = {\r\n messageType: PropTypes.oneOf(['info', 'warning', 'success', 'error']),\r\n messageContent: PropTypes.string.isRequired,\r\n onButtonClick: PropTypes.func,\r\n buttonText: PropTypes.string,\r\n};\r\n\r\nBidMessageBar.defaultProps = {\r\n messageType: 'info',\r\n onButtonClick: undefined,\r\n buttonText: _TL_('Set a conversion goal'),\r\n};\r\n","import React from 'react';\r\nimport { Stack, Shimmer } from '@fluentui/react';\r\n\r\nexport const BidStrategyShimmer = () => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const MANUAL_CPA = {\r\n key: 'manualCpa',\r\n text: _TL_('Manual CPI'),\r\n type: 'ManualCpa',\r\n};\r\n\r\nexport const MANUAL_CPA_SCHEMA = {\r\n name: 'Product Schema',\r\n type: 'object',\r\n properties: {},\r\n};\r\n","export const MANUAL_CPC = {\r\n key: 'manualCpc',\r\n text: _TL_('Manual CPC'),\r\n type: 'ManualCpc',\r\n};\r\n\r\nexport const MANUAL_CPC_SCHEMA = {\r\n name: 'Product Schema',\r\n type: 'object',\r\n properties: {},\r\n};\r\n","import {\r\n MAX_CONVERSIONS_VALUE,\r\n MAX_CONVERSIONS_VALUE_SCHEMA,\r\n} from './max-conversions-value';\r\nimport {\r\n MAX_CONVERSIONS,\r\n MAX_CONVERSIONS_SCHEMA,\r\n} from './max-conversions';\r\nimport {\r\n MANUAL_CPA,\r\n MANUAL_CPA_SCHEMA,\r\n} from './manual-cpa';\r\nimport {\r\n MANUAL_CPC,\r\n MANUAL_CPC_SCHEMA,\r\n} from './manual-cpc';\r\n\r\nexport const BID_STRATEGY_SCHEMA_MAP = {\r\n [MAX_CONVERSIONS.type]: MAX_CONVERSIONS_SCHEMA,\r\n [MAX_CONVERSIONS_VALUE.type]: MAX_CONVERSIONS_VALUE_SCHEMA,\r\n [MANUAL_CPA.type]: MANUAL_CPA_SCHEMA,\r\n [MANUAL_CPC.type]: MANUAL_CPC_SCHEMA,\r\n};\r\n\r\nexport const BID_STRATEGY_OPTIONS_MAP = {\r\n [MAX_CONVERSIONS.type]: MAX_CONVERSIONS,\r\n [MAX_CONVERSIONS_VALUE.type]: MAX_CONVERSIONS_VALUE,\r\n [MANUAL_CPA.type]: MANUAL_CPA,\r\n [MANUAL_CPC.type]: MANUAL_CPC,\r\n};\r\n","\r\nimport React, { useMemo, useContext } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { BidStrategyDropdown } from '@bingads-webui-campaign-react/bid-strategy-dropdown';\r\nimport { TargetCpaWarningBanner } from '@bingads-webui-campaign-react/target-cpa-warning-banner';\r\nimport { InstrumentationContext } from '@bingads-webui-react/hoc-with-instrumentation';\r\n\r\nimport { AdditionalDetails } from './additional-details';\r\nimport { BidMessageBar } from './bid-message-bar';\r\nimport { BidStrategyShimmer } from './bid-strategy-shimmer';\r\nimport { getBidStrategySchema } from './options/use-bid-strategy-schema';\r\n\r\nexport const BidStrategyComponent = ({\r\n // Dropdown\r\n options,\r\n selectedBidStrategy,\r\n onBidStrategyChange,\r\n onRenderInlineDropdownHelp,\r\n // AdditionalDetails\r\n hideAdditionalDetails,\r\n defaultChecked,\r\n marketingMetricsValue,\r\n inputUnit,\r\n bidRange,\r\n onMarketingMetricChange,\r\n // MessageBar\r\n messageBarType,\r\n messageContent,\r\n onButtonClick,\r\n buttonText,\r\n isLoading,\r\n hideMessage,\r\n // TargetCPAWarningBanner\r\n withTargetCpaWarning,\r\n budgetAmount,\r\n scenario,\r\n}) => {\r\n const instrumentation = useContext(InstrumentationContext);\r\n const activity = useMemo(() => {\r\n const { activity: scenarioActivity } = instrumentation.createScenarioAndActivity({\r\n scenarioName: scenario,\r\n activityName: 'BidStrategyComponent',\r\n });\r\n return scenarioActivity;\r\n }, [scenario, instrumentation]);\r\n const schema = useMemo(() => getBidStrategySchema(options, bidRange), [options, bidRange]);\r\n\r\n const bidStrategyConfig = options.find(({ type }) => type === selectedBidStrategy);\r\n const {\r\n key: selectedKey,\r\n inputLabel,\r\n inputUnit: defaultUnit,\r\n checkboxLabel,\r\n } = bidStrategyConfig || {};\r\n\r\n return (\r\n isLoading\r\n ? \r\n : (\r\n
\r\n \r\n {!hideAdditionalDetails && }\r\n {withTargetCpaWarning && }\r\n {!hideMessage && }\r\n
\r\n )\r\n );\r\n};\r\n\r\nBidStrategyComponent.propTypes = {\r\n options: PropTypes.arrayOf(PropTypes.shape({\r\n key: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n inputLabel: PropTypes.string.isRequired,\r\n inputUnit: PropTypes.string.isRequired,\r\n checkboxLabel: PropTypes.string.isRequired,\r\n })).isRequired,\r\n onBidStrategyChange: PropTypes.func.isRequired,\r\n messageBarType: PropTypes.string,\r\n messageContent: PropTypes.string.isRequired,\r\n onButtonClick: PropTypes.func,\r\n buttonText: PropTypes.string,\r\n onRenderInlineDropdownHelp: PropTypes.func,\r\n onMarketingMetricChange: PropTypes.func.isRequired,\r\n isLoading: PropTypes.bool,\r\n hideAdditionalDetails: PropTypes.bool,\r\n defaultChecked: PropTypes.bool,\r\n marketingMetricsValue: PropTypes.shape({\r\n cpa: PropTypes.number,\r\n roas: PropTypes.number,\r\n }).isRequired,\r\n bidRange: PropTypes.shape({\r\n FloorValue: PropTypes.number,\r\n CeilingValue: PropTypes.number,\r\n }),\r\n selectedBidStrategy: PropTypes.string.isRequired,\r\n inputUnit: PropTypes.string,\r\n hideMessage: PropTypes.bool,\r\n budgetAmount: PropTypes.number,\r\n withTargetCpaWarning: PropTypes.bool,\r\n scenario: PropTypes.string,\r\n};\r\n\r\nBidStrategyComponent.defaultProps = {\r\n messageBarType: undefined,\r\n onButtonClick: undefined,\r\n buttonText: undefined,\r\n onRenderInlineDropdownHelp: _.noop,\r\n isLoading: false,\r\n hideAdditionalDetails: false,\r\n defaultChecked: false,\r\n inputUnit: 'USD',\r\n hideMessage: false,\r\n budgetAmount: undefined,\r\n withTargetCpaWarning: false,\r\n scenario: '',\r\n bidRange: null,\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport {\r\n MAX_CONVERSIONS,\r\n} from './max-conversions';\r\nimport { BID_STRATEGY_SCHEMA_MAP } from './bid-strategy-options-map';\r\n\r\nexport const getBidStrategySchema = (options, bidRange) => {\r\n const properties = _.reduce(options, (acc, option) => {\r\n const schemaProperty = BID_STRATEGY_SCHEMA_MAP[option.type];\r\n\r\n // Update bid range (if any) for target CPA instead of using default range.\r\n // We are re-using the same logic for target CPA and max conversions from legacy bid strategy.\r\n // https://msasg.visualstudio.com/Bing_Ads/_git/AdsAppsCampaignUI?path=/private/campaign-legacy/packages/bidding-strategy/viewmodel/setting.js&version=GBmaster&line=68&lineEnd=72&lineStartColumn=1&lineEndColumn=1&lineStyle=plain&_a=contents\r\n if (schemaProperty && option.type === MAX_CONVERSIONS.type && bidRange) {\r\n schemaProperty.properties[MAX_CONVERSIONS.marketingMetric].minimum = bidRange.FloorValue;\r\n schemaProperty.properties[MAX_CONVERSIONS.marketingMetric].maximum = bidRange.CeilingValue * 4;\r\n }\r\n\r\n return !schemaProperty ? acc : {\r\n ...acc,\r\n ...schemaProperty.properties,\r\n };\r\n }, {});\r\n\r\n return {\r\n name: 'Product Schema',\r\n type: 'object',\r\n properties,\r\n };\r\n};\r\n","import PropTypes from 'prop-types';\r\n\r\nexport const getEstimatedMonthlyBudgetStyles = () => {\r\n const budgetMonthly = {\r\n marginTop: '16px',\r\n overflowWrap: 'break-word',\r\n wordBreak: 'break-word',\r\n fontWeight: '600',\r\n fontSize: '14px',\r\n lineHeight: '20px',\r\n };\r\n\r\n return {\r\n budgetMonthly,\r\n };\r\n};\r\n\r\nexport const classesProps = PropTypes.shape({\r\n budgetMonthly: PropTypes.string,\r\n});\r\n","import PropTypes from 'prop-types';\r\n\r\nexport const getBudgetInputStyles = () => {\r\n const budgetDetailsContainer = {\r\n display: 'flex',\r\n };\r\n\r\n const dropdownContainer = {\r\n marginLeft: '12px',\r\n };\r\n\r\n const budgetInputContainer = {\r\n display: 'inline-block',\r\n flex: 1,\r\n maxWidth: '280px',\r\n '& input': {\r\n height: '32px',\r\n },\r\n '& [role=alert]': {\r\n display: 'none', // we use custom ErrorMessages component\r\n },\r\n };\r\n\r\n const isInvalid = {\r\n border: '1px solid #a4262c',\r\n };\r\n\r\n const inline = {\r\n display: 'inline-block',\r\n '& button': {\r\n display: 'flex',\r\n fontWeight: 200,\r\n width: '86px',\r\n height: '32px',\r\n lineHeight: '32px',\r\n textAlign: 'left',\r\n },\r\n };\r\n\r\n const budgetTitle = {\r\n fontSize: '14px',\r\n lineHeight: '19px',\r\n marginBottom: '7px',\r\n fontWeight: '600',\r\n '& label': {\r\n marginRight: '3px',\r\n padding: 'inherit',\r\n },\r\n };\r\n\r\n const inputText = {\r\n '-moz-appearance': 'textfield',\r\n\r\n '&::-webkit-outer-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0,\r\n },\r\n '&::-webkit-inner-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0,\r\n },\r\n };\r\n\r\n const currencyText = {\r\n fontWeight: 200,\r\n padding: '5px 0 0 10px',\r\n };\r\n\r\n const budgetInputError = {\r\n fontSize: 12,\r\n color: '#A80000',\r\n };\r\n\r\n return {\r\n budgetDetailsContainer,\r\n budgetInputContainer,\r\n budgetTitle,\r\n currencyText,\r\n dropdownContainer,\r\n inline,\r\n inputText,\r\n isInvalid,\r\n budgetInputError,\r\n };\r\n};\r\n\r\nexport const classesProps = PropTypes.shape({\r\n budgetDetailsContainer: PropTypes.string,\r\n budgetInputContainer: PropTypes.string,\r\n budgetTitle: PropTypes.string,\r\n currencyText: PropTypes.string,\r\n dropdownContainer: PropTypes.string,\r\n inline: PropTypes.string,\r\n inputText: PropTypes.string,\r\n isInvalid: PropTypes.string,\r\n});\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { Dropdown } from '@bingads-webui-react/fabric-with-signal';\r\n\r\nconst dropdownStyles = {\r\n dropdown: { width: 160, marginLeft: '12px' },\r\n callout: { minWidth: 200 },\r\n};\r\n\r\nexport const CurrencyDropdown = ({\r\n ariaLabel, currencies, selectedCurrency, onSelectCurrency,\r\n}) => {\r\n const currencyOptions = _.map(currencies, currency => ({\r\n title: currency.text,\r\n selected: currency.Code === selectedCurrency,\r\n ...currency,\r\n }));\r\n\r\n const currentCurrencyTitle = _.find(currencyOptions, currency => currency.selected).title;\r\n\r\n return (\r\n onSelectCurrency(_.get(val, 'key'))}\r\n aria-label={ariaLabel}\r\n title={currentCurrencyTitle}\r\n />\r\n );\r\n};\r\n\r\nCurrencyDropdown.propTypes = {\r\n currencies: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\r\n selectedCurrency: PropTypes.string.isRequired,\r\n onSelectCurrency: PropTypes.func.isRequired,\r\n ariaLabel: PropTypes.string,\r\n};\r\n\r\nCurrencyDropdown.defaultProps = {\r\n ariaLabel: '',\r\n};\r\n","import React, { useContext, useCallback, useState } from 'react';\r\nimport _ from 'underscore';\r\nimport classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { LegacyI18nContext } from '@bingads-webui-react/legacy-i18n-context';\r\nimport { BudgetInput as ValidatedBudgetInput } from '@bingads-webui-react/budget-control';\r\nimport { ErrorMessages } from '@bingads-webui-react/validation';\r\nimport { getBudgetInputStyles } from './styles/get-budget-input-styles';\r\nimport { CurrencyDropdown } from './currency-dropdown';\r\n\r\nconst RANGE_STEP = 0.01;\r\n\r\nexport const BudgetInput = ({\r\n budgetValue,\r\n currencies,\r\n selectedCurrency,\r\n showDropdown,\r\n isCurrencyDisabled,\r\n onBudgetInputChange,\r\n onBudgetValidate,\r\n onRenderInlineHelp,\r\n onSelectCurrency,\r\n schema,\r\n}) => {\r\n const i18n = useContext(I18nContext);\r\n const legacyI18n = useContext(LegacyI18nContext);\r\n const classes = useDefaultStyles(getBudgetInputStyles);\r\n const maxBudget = _.get(schema, ['properties', 'budget', 'maximum']);\r\n const minBudget = _.get(schema, ['properties', 'budget', 'minimum']);\r\n const schemaName = _.get(schema, 'name');\r\n\r\n const onRenderCurrencyDropDown =\r\n useCallback(() => (\r\n ), [currencies, selectedCurrency, onSelectCurrency, i18n]);\r\n\r\n const [budgetError, setBudgetError] = useState([]);\r\n const [isBudgetValid, setIsBudgetValid] = useState(false);\r\n\r\n const customErrorProcessor = useCallback(errors => _.map(\r\n errors,\r\n (oldError, key) => {\r\n const customErrors = {\r\n decimalLength: i18n.getString(_TL_('Budget needs to be set to 2 decimal lengths')),\r\n range: i18n.getString(_TL_('Your budget should be greater than {{accountCurrencyCode}} {{dailyRangeFloorValue}} and less than your daily maximum. The daily max. is your monthly budget averaged out over the number of days left in the month.'), {\r\n accountCurrencyCode: selectedCurrency,\r\n dailyRangeFloorValue: minBudget,\r\n }),\r\n required: i18n.getString(_TL_('This field is required')),\r\n type: i18n.getString(_TL_('Field requires numeric value')),\r\n };\r\n return customErrors[key] || oldError;\r\n }\r\n ), [i18n, minBudget, selectedCurrency]);\r\n\r\n const onBudgetInputValidate = useCallback(({ data, isValid, messages }) => {\r\n setIsBudgetValid(isValid);\r\n setBudgetError(messages);\r\n onBudgetValidate({ data, isValid, messages });\r\n }, [onBudgetValidate]);\r\n\r\n return (\r\n \r\n \r\n {!_.isEmpty(budgetError) ?\r\n : null}\r\n \r\n );\r\n};\r\n\r\nBudgetInput.propTypes = {\r\n budgetValue: PropTypes.string.isRequired,\r\n currencies: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\r\n selectedCurrency: PropTypes.string.isRequired,\r\n showDropdown: PropTypes.bool.isRequired,\r\n isCurrencyDisabled: PropTypes.bool.isRequired,\r\n onBudgetInputChange: PropTypes.func.isRequired,\r\n onBudgetValidate: PropTypes.func.isRequired,\r\n onRenderInlineHelp: PropTypes.func,\r\n onSelectCurrency: PropTypes.func.isRequired,\r\n budgetSuggestion: PropTypes.shape({\r\n GlobalMaximumBudget: PropTypes.shape({\r\n DailyBudget: PropTypes.number.isRequired,\r\n }),\r\n GlobalMinimumBudget: PropTypes.shape({\r\n DailyBudget: PropTypes.number.isRequired,\r\n }),\r\n }).isRequired,\r\n schema: PropTypes.shape({\r\n name: PropTypes.string,\r\n type: PropTypes.string,\r\n properties: PropTypes.shape(),\r\n }),\r\n};\r\n\r\nBudgetInput.defaultProps = {\r\n schema: undefined,\r\n onRenderInlineHelp: _.noop,\r\n};\r\n","export const DAYS_OF_MONTH = 30.4; // 30.4 days on average\r\n\r\nexport const FALLBACK_ESTIMATES = {\r\n IsLimitedEstimates: true,\r\n GlobalMinimumBudget: {\r\n DailyBudget: 2, MonthlyBudget: 40,\r\n },\r\n MinimumBudget: {\r\n DailyBudget: 2, MonthlyBudget: 40,\r\n },\r\n CompetitorBudgetLowerBound: {\r\n DailyBudget: 20,\r\n },\r\n SuggestedBudget: {\r\n DailyBudget: 10, MonthlyBudget: 200,\r\n },\r\n CompetitorBudgetUpperBound: {\r\n DailyBudget: 40,\r\n },\r\n MaximumBudget: {\r\n DailyBudget: 200, MonthlyBudget: 4000,\r\n },\r\n GlobalMaximumBudget: {\r\n DailyBudget: 500, MonthlyBudget: 10000,\r\n },\r\n Currency: 'USD',\r\n};\r\n\r\n\r\nexport const currencyStrings = {\r\n ALL: _TL_('Albanian Lek (ALL)'),\r\n AED: _TL_('United Arab Emirates Dirham (AED)'),\r\n ARS: _TL_('Argentine Peso (ARS)'),\r\n AMD: _TL_('Armenian Dram (AMD)'),\r\n AUD: _TL_('Australian Dollar (AUD)'),\r\n AZN: _TL_('Azerbaijani Manat (AZN)'),\r\n BHD: _TL_('Bahraini Dinar (BHD)'),\r\n BDT: _TL_('Bangladeshi Taka (BDT)'),\r\n BZD: _TL_('Belize Dollar (BZD)'),\r\n BOB: _TL_('Bolivian Boliviano (BOB)'),\r\n BWP: _TL_('Botswanan Pula (BWP)'),\r\n BRL: _TL_('Brazilian Real (BRL)'),\r\n GBP: _TL_('UK Pound (GBP)'),\r\n BND: _TL_('Brunei Dollar (BND)'),\r\n BGN: _TL_('Bulgarian Lev (BGN)'),\r\n CAD: _TL_('Canadian Dollar (CAD)'),\r\n CHF: _TL_('Swiss Franc (CHF)'),\r\n CLP: _TL_('Chilean Peso (CLP)'),\r\n CNY: _TL_('Yuan Renminbi (CNY)'),\r\n COP: _TL_('Colombian Peso (COP)'),\r\n CRC: _TL_('Costa Rican Colón (CRC)'),\r\n CZK: _TL_('Czech Republic Koruna (CZK)'),\r\n DKK: _TL_('Danish Krone (DKK)'),\r\n DOP: _TL_('Dominican Peso (DOP)'),\r\n DZD: _TL_('Algerian Dinar (DZD)'),\r\n XCD: _TL_('East Caribbean Dollar (XCD)'),\r\n EGP: _TL_('Egyptian Pound (EGP)'),\r\n ETB: _TL_('Ethiopian Birr (ETB)'),\r\n EUR: _TL_('Euro (EUR)'),\r\n FJD: _TL_('Fijian Dollar (FJD)'),\r\n GEL: _TL_('Georgian Lari (GEL)'),\r\n GHS: _TL_('Ghanian Cedi (GHS)'),\r\n GTQ: _TL_('Guatemalan Quetzal (GTQ)'),\r\n HNL: _TL_('Honduran Lempira (HNL)'),\r\n HKD: _TL_('Hong Kong Dollar (HKD)'),\r\n HRK: _TL_('Croatian Kuna (HRK)'),\r\n HUF: _TL_('Hungarian Forint (HUF)'),\r\n ISK: _TL_('Icelandic Króna (ISK)'),\r\n INR: _TL_('Indian Rupee (INR)'),\r\n IDR: _TL_('Indonesian Rupiah (IDR)'),\r\n IQD: _TL_('Iraqi Dinar (IQD)'),\r\n ILS: _TL_('Israeli New Shekel (ILS)'),\r\n JMD: _TL_('Jamaican Dollar (JMD)'),\r\n JPY: _TL_('Japanese Yen (JPY)'),\r\n JOD: _TL_('Jordanian Dinar (JOD)'),\r\n KZT: _TL_('Kazakhstani Tenge (KZT)'),\r\n KES: _TL_('Kenyan Shilling (KES)'),\r\n KWD: _TL_('Kuwaiti Dinar (KWD)'),\r\n KGS: _TL_('Kyrgyzstani Som (KGS)'),\r\n KRW: _TL_('South Korea Won (KRW)'),\r\n LBP: _TL_('Lebanese Pound (LBP)'),\r\n LKR: _TL_('Sri Lankan Rupee (LKR)'),\r\n LYD: _TL_('Libyan Dinar (LYD)'),\r\n MOP: _TL_('Macanese Pataca (MOP)'),\r\n MKD: _TL_('Macedonian Denar (MKD)'),\r\n MWK: _TL_('Malawi Kwacha (MWK)'),\r\n MYR: _TL_('Malaysian Ringgit (MYR)'),\r\n MVR: _TL_('Maldivian Rufiyaa (MVR)'),\r\n MUR: _TL_('Mauritian Rupee (MUR)'),\r\n MXN: _TL_('Mexican Peso (MXN)'),\r\n MNT: _TL_('Mongolian Tugrik (MNT)'),\r\n MAD: _TL_('Moroccan Dirham (MAD)'),\r\n NZD: _TL_('New Zealand Dollar (NZD)'),\r\n NIO: _TL_('Nicaraguan Córdoba (NIO)'),\r\n NGN: _TL_('Nigerian Naira (NGN)'),\r\n NOK: _TL_('Norwegian Krone (NOK)'),\r\n OMR: _TL_('Omani Rial (OMR)'),\r\n PKR: _TL_('Pakistani Rupee (PKR)'),\r\n PAB: _TL_('Panamian Balboa (PAB)'),\r\n PYG: _TL_('Paraguayan Guarani (PYG)'),\r\n PEN: _TL_('Peruvian Nuevo Sol (PEN)'),\r\n PHP: _TL_('Philippine Peso (PHP)'),\r\n PLN: _TL_('Polish Zloty (PLN)'),\r\n QAR: _TL_('Qatari Riyal (QAR)'),\r\n RON: _TL_('Romanian Leu (RON)'),\r\n RSD: _TL_('Serbian Dinar (RSD)'),\r\n RUB: _TL_('Russian Ruble (RUB)'),\r\n RWF: _TL_('Rwandan Franc (RWF)'),\r\n SAR: _TL_('Saudi Riyal (SAR)'),\r\n SEK: _TL_('Swedish Krona (SEK)'),\r\n SGD: _TL_('Singapore Dollar (SGD)'),\r\n TZS: _TL_('Tanzanian Shilling (TZS)'),\r\n THB: _TL_('Thai Baht (THB)'),\r\n TOP: _TL_('Tongan Pa\\'anga (TOP)'),\r\n TTD: _TL_('Trinidad and Tobago Dollar (TTD)'),\r\n TND: _TL_('Tunisian Dinar (TND)'),\r\n TRY: _TL_('Turkish Lira (TRY)'),\r\n TWD: _TL_('New Taiwan Dollar (TWD)'),\r\n UGX: _TL_('Ugandan Shilling (UGX)'),\r\n UAH: _TL_('Ukrainian Hryvnia (UAH)'),\r\n UYU: _TL_('Uruguayan Peso (UYU)'),\r\n USD: _TL_('US Dollar (USD)'),\r\n UZS: _TL_('Uzbekistani Som (UZS)'),\r\n VEF: _TL_('Venezuelan Bolivar (VEF)'),\r\n VES: _TL_('Sovereign Bolivar (VES)'),\r\n VND: _TL_('Dong (VND)'),\r\n XAF: _TL_('Central African CFA Franc (XAF)'),\r\n XOF: _TL_('West African CFA Franc (XOF)'),\r\n YER: _TL_('Yemeni Rial (YER)'),\r\n ZAR: _TL_('South African Rand (ZAR)'),\r\n ZMW: _TL_('Zambian Kwacha (ZMW)'),\r\n};\r\n","import PropTypes from 'prop-types';\r\n\r\nexport const getSliderStyles = () => {\r\n const sliderContainer = {\r\n position: 'relative',\r\n maxWidth: '400px',\r\n marginTop: '27px',\r\n marginBottom: '16px',\r\n };\r\n\r\n const sliderOverlay = {\r\n position: 'absolute',\r\n width: '100%',\r\n backgroundColor: '#CFE4FA',\r\n border: '1px solid #0F6CBD',\r\n top: '6px',\r\n height: '15px',\r\n '@media screen and (-ms-high-contrast: active) , (forced-colors: active) ': {\r\n border: '8px solid #BB4D38',\r\n top: '5px',\r\n 'forced-color-adjust': 'none',\r\n },\r\n zIndex: '-1',\r\n borderRadius: '2px',\r\n };\r\n\r\n const paragraph = {\r\n fontSize: '12px',\r\n };\r\n\r\n const competitorHelpText = {\r\n ...paragraph,\r\n flexDirection: 'row',\r\n display: 'inline-flex',\r\n verticalAlign: 'top',\r\n };\r\n\r\n const competitorHelpIndicator = {\r\n backgroundColor: '#CFE4FA',\r\n border: '1px solid #0F6CBD',\r\n width: '12px !important',\r\n height: '12px',\r\n flexDirection: 'row',\r\n display: 'inline-flex',\r\n borderRadius: '2px',\r\n marginRight: '8px',\r\n };\r\n\r\n\r\n return {\r\n sliderContainer,\r\n sliderOverlay,\r\n competitorHelpIndicator,\r\n competitorHelpText,\r\n };\r\n};\r\n\r\nexport const classesProps = PropTypes.shape({\r\n sliderContainer: PropTypes.shape({}),\r\n sliderOverlay: PropTypes.shape({}),\r\n slider: PropTypes.shape({}),\r\n competitorHelpIndicator: PropTypes.shape({}),\r\n competitorHelpText: PropTypes.shape({}),\r\n paragraph: PropTypes.shape({}),\r\n});\r\n\r\nexport const sliderStyles = {\r\n activeSection: {\r\n backgroundColor: '#0F6CBD',\r\n },\r\n inactiveSection: {\r\n backgroundColor: '#616161 !important',\r\n },\r\n thumb: {\r\n border: '2px solid white !important',\r\n outline: '1px solid #c8c6c4',\r\n height: '16px',\r\n width: '16px',\r\n background: '#0F6CBD',\r\n cursor: 'pointer',\r\n },\r\n};\r\n","import React, { useMemo, useCallback } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Slider as FluentSlider } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { CompetitorSliderView } from '@bingads-webui-react/budget-control';\r\nimport { FALLBACK_ESTIMATES } from './consts';\r\nimport { getSliderStyles, sliderStyles } from './styles/get-slider-styles';\r\n\r\nconst RANGE_STEP = 0.01;\r\n\r\nexport const Slider = ({\r\n ariaLabel,\r\n budgetValue,\r\n onBudgetSliderChange,\r\n budgetSuggestion,\r\n showCompetitorSlider,\r\n}) => {\r\n const classes = useDefaultStyles(getSliderStyles);\r\n\r\n const budgetSuggestionWithFallback = useMemo(() => (\r\n _.isEmpty(budgetSuggestion) ? FALLBACK_ESTIMATES :\r\n budgetSuggestion\r\n ), [budgetSuggestion]);\r\n\r\n const onChange = useCallback((val) => {\r\n const stringifiedValue = val && val.toString();\r\n if (stringifiedValue) {\r\n return onBudgetSliderChange(stringifiedValue);\r\n }\r\n return _.noop;\r\n }, [onBudgetSliderChange]);\r\n\r\n return (\r\n
\r\n \r\n\r\n {\r\n showCompetitorSlider && budgetSuggestion &&\r\n { /* TODO */ }}\r\n />\r\n }\r\n
\r\n );\r\n};\r\n\r\nSlider.propTypes = {\r\n ariaLabel: PropTypes.string,\r\n onBudgetSliderChange: PropTypes.func.isRequired,\r\n budgetValue: PropTypes.string.isRequired,\r\n showCompetitorSlider: PropTypes.bool,\r\n budgetSuggestion: PropTypes.shape({}),\r\n};\r\n\r\nSlider.defaultProps = {\r\n ariaLabel: '',\r\n showCompetitorSlider: true,\r\n budgetSuggestion: undefined,\r\n};\r\n\r\n","import _ from 'underscore';\r\nimport { currencyStrings } from './consts';\r\n\r\nexport const serializeCurrencies = (supportedCurrencies, i18n) =>\r\n _.map(supportedCurrencies, (currency) => {\r\n const Code = _.get(currency, ['value', 'Code']);\r\n const Id = _.get(currency, ['value', 'Id']);\r\n\r\n return {\r\n Code,\r\n Id,\r\n currency: Code,\r\n currencyLocalizationKey: currencyStrings && i18n.getString(currencyStrings[Code]),\r\n key: Code,\r\n text: currencyStrings && i18n.getString(currencyStrings[Code]),\r\n };\r\n });\r\n\r\n","import PropTypes from 'prop-types';\r\n\r\nexport const getShimmerStyles = () => {\r\n const shimmerContainer = {\r\n padding: '15px 0',\r\n root: { margin: '5px' },\r\n '& .height-15 .ms-Shimmer-shimmerWrapper': {\r\n height: '15px',\r\n },\r\n '& .height-22 .ms-Shimmer-shimmerWrapper': {\r\n height: '22px',\r\n },\r\n '& .height-33 .ms-Shimmer-shimmerWrapper': {\r\n height: '33px',\r\n },\r\n '& .height-40 .ms-Shimmer-shimmerWrapper': {\r\n height: '40px',\r\n },\r\n };\r\n\r\n return {\r\n shimmerContainer,\r\n };\r\n};\r\n\r\nexport const classesProps = PropTypes.shape({\r\n shimmerContainer: PropTypes.string,\r\n});\r\n","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport { Stack, Shimmer } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getShimmerStyles } from './styles/get-shimmer-styles';\r\n\r\nexport const BudgetShimmer = () => {\r\n const classes = useDefaultStyles(getShimmerStyles);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
);\r\n};\r\n","import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { EstimatedMonthlyBudget } from '@bingads-webui-react/budget-control';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getEstimatedMonthlyBudgetStyles } from './styles/get-estimated-monthly-budget-styles';\r\nimport { BudgetInput } from './budget-input';\r\nimport { Slider } from './slider';\r\nimport { serializeCurrencies } from './serialize-currencies';\r\nimport { getMonthlyBudget } from './helpers';\r\nimport { BudgetShimmer } from './budget-shimmer';\r\n\r\nexport const BudgetComponent = ({\r\n showDropdown,\r\n currencies,\r\n currency,\r\n onCurrencyChange,\r\n budget,\r\n onBudgetChange,\r\n // TODO: Better make this props straightforward and split it\r\n budgetSuggestion,\r\n isLoading,\r\n logger,\r\n onNotifyValidation,\r\n onRenderInlineHelp,\r\n withSlider,\r\n}) => {\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getEstimatedMonthlyBudgetStyles);\r\n\r\n const budgetSchema = useMemo(() => ({\r\n name: `Product Schema ${_.get(budgetSuggestion, ['Currency'])}`,\r\n type: 'object',\r\n properties: {\r\n budget: {\r\n type: 'number',\r\n required: true,\r\n maximum: _.get(budgetSuggestion, ['GlobalMaximumBudget', 'DailyBudget']),\r\n minimum: _.get(budgetSuggestion, ['GlobalMinimumBudget', 'DailyBudget']),\r\n },\r\n },\r\n }), [budgetSuggestion]);\r\n\r\n const serializedCurrencies = useMemo(() => serializeCurrencies(currencies, i18n), [currencies, i18n]);\r\n const [monthlyBudget, setMonthlyBudget] = useState();\r\n\r\n const onBudgetInputChange = useCallback((e) => {\r\n const value = _.get(e, ['target', 'value']);\r\n onBudgetChange(value);\r\n logger.trace(`[Budget] Budget amount updated: ${value}`);\r\n }, [logger, onBudgetChange]);\r\n\r\n const onBudgetSliderChange = useCallback((val) => {\r\n const shouldLocalize = true;\r\n onBudgetChange(val, shouldLocalize);\r\n // budget value change by slider should always be valid\r\n onNotifyValidation({ isValid: true });\r\n }, [onBudgetChange, onNotifyValidation]);\r\n\r\n const onBudgetInputValidate = useCallback(({ data, isValid, messages }) => {\r\n onNotifyValidation({ data, isValid, messages });\r\n }, [onNotifyValidation]);\r\n\r\n const onSelectCurrency = useCallback((val) => {\r\n onCurrencyChange(val);\r\n logger.trace(`[Budget] Currency updated: ${val}`);\r\n }, [logger, onCurrencyChange]);\r\n\r\n useEffect(() => {\r\n const monthlyBudgetValue = budget && getMonthlyBudget(i18n.parseDecimal(budget));\r\n const formattedMonthyBudget = monthlyBudgetValue && i18n.formatDecimal(monthlyBudgetValue, {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n });\r\n\r\n if (!_.isNaN(formattedMonthyBudget)) {\r\n setMonthlyBudget(formattedMonthyBudget);\r\n } else {\r\n setMonthlyBudget('-');\r\n }\r\n }, [budget, i18n]);\r\n\r\n return (\r\n isLoading ?\r\n :\r\n
\r\n \r\n {withSlider &&\r\n \r\n }\r\n \r\n
\r\n );\r\n};\r\n\r\nBudgetComponent.propTypes = {\r\n showDropdown: PropTypes.bool,\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func.isRequired,\r\n error: PropTypes.func.isRequired,\r\n }),\r\n currencies: PropTypes.arrayOf(PropTypes.shape({})),\r\n currency: PropTypes.string.isRequired,\r\n onCurrencyChange: PropTypes.func,\r\n budget: PropTypes.number.isRequired,\r\n onBudgetChange: PropTypes.func.isRequired,\r\n onNotifyValidation: PropTypes.func.isRequired,\r\n budgetSuggestion: PropTypes.shape({}),\r\n isLoading: PropTypes.bool,\r\n onRenderInlineHelp: PropTypes.func,\r\n withSlider: PropTypes.bool,\r\n};\r\n\r\nBudgetComponent.defaultProps = {\r\n currencies: [],\r\n onCurrencyChange: _.noop,\r\n showDropdown: false,\r\n budgetSuggestion: {},\r\n isLoading: true,\r\n logger: {\r\n trace: _.noop,\r\n error: _.noop,\r\n },\r\n onRenderInlineHelp: _.noop,\r\n withSlider: true,\r\n};\r\n","import { DAYS_OF_MONTH } from './consts';\r\n\r\nexport const getMonthlyBudget = dailyBudget => Math.floor(DAYS_OF_MONTH * dailyBudget);\r\n","import _ from 'underscore';\r\nimport React, { useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Dropdown } from '@bingads-webui-react/fabric-with-signal';\r\n\r\nconst languageAll = 'All';\r\n\r\nexport function MultiLanguageSelector(props) {\r\n const {\r\n languages,\r\n selectedLanguages,\r\n onSelectedLanguagesChanged,\r\n ariaLabel,\r\n } = props;\r\n\r\n const isSelectAll = useMemo(() => selectedLanguages.length === 1\r\n && selectedLanguages[0] === languageAll, [selectedLanguages]);\r\n\r\n const options = _.map(languages, language => (\r\n {\r\n key: language.key,\r\n text: language.text,\r\n disabled: isSelectAll && language.key !== languageAll,\r\n }\r\n ));\r\n\r\n const dropdownStyles = { dropdown: { width: 320 } };\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nMultiLanguageSelector.propTypes = {\r\n languages: PropTypes.arrayOf(PropTypes.string),\r\n selectedLanguages: PropTypes.arrayOf(PropTypes.string),\r\n onSelectedLanguagesChanged: PropTypes.func.isRequired,\r\n ariaLabel: PropTypes.string,\r\n};\r\n\r\nMultiLanguageSelector.defaultProps = {\r\n languages: [],\r\n selectedLanguages: [],\r\n ariaLabel: undefined,\r\n};\r\n","export const campaignLanguageStrings = {\r\n None: _TL_('Use my campaign settings'),\r\n All: _TL_('All'),\r\n Albanian: _TL_('Albanian'),\r\n Arabic: _TL_('Arabic'),\r\n Bosnian: _TL_('Bosnian'),\r\n Bulgarian: _TL_('Bulgarian'),\r\n Croatian: _TL_('Croatian'),\r\n Czech: _TL_('Czech'),\r\n Danish: _TL_('Danish'),\r\n Dutch: _TL_('Dutch'),\r\n English: _TL_('English'),\r\n Estonian: _TL_('Estonian'),\r\n Finnish: _TL_('Finnish'),\r\n French: _TL_('French'),\r\n German: _TL_('German'),\r\n Greek: _TL_('Greek'),\r\n Hungarian: _TL_('Hungarian'),\r\n Icelandic: _TL_('Icelandic'),\r\n Italian: _TL_('Italian'),\r\n Korean: _TL_('Korean'),\r\n Japanese: _TL_('Japanese'),\r\n Latvian: _TL_('Latvian'),\r\n Lithuanian: _TL_('Lithuanian'),\r\n Macedonian: _TL_('Macedonian'),\r\n Maltese: _TL_('Maltese'),\r\n Norwegian: _TL_('Norwegian'),\r\n Polish: _TL_('Polish'),\r\n Portuguese: _TL_('Portuguese'),\r\n Romanian: _TL_('Romanian'),\r\n Russian: _TL_('Russian'),\r\n Serbian: _TL_('Serbian'),\r\n SimplifiedChinese: _TL_('Simplified Chinese'),\r\n Slovak: _TL_('Slovak'),\r\n Slovenian: _TL_('Slovenian'),\r\n Spanish: _TL_('Spanish'),\r\n Swedish: _TL_('Swedish'),\r\n TraditionalChinese: _TL_('Traditional Chinese'),\r\n Turkish: _TL_('Turkish'),\r\n Hebrew: _TL_('Hebrew'),\r\n Hindi: _TL_('Hindi'),\r\n Malay: _TL_('Malay'),\r\n Thai: _TL_('Thai'),\r\n Indonesian: _TL_('Indonesian'),\r\n Tagalog: _TL_('Tagalog'),\r\n Vietnamese: _TL_('Vietnamese'),\r\n};\r\n","export const getIntentLanguageStyles = () => ({\r\n intentTarget: {\r\n marginTop: 20,\r\n '& .select-language-label-container': {\r\n marginBottom: '18px',\r\n },\r\n '& .multi-language-selector-container': {\r\n marginTop: '18px',\r\n },\r\n },\r\n intentTargetOptions: {\r\n marginTop: 6,\r\n },\r\n});\r\n","import _ from 'underscore';\r\nimport React, { useContext, useCallback, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Text, Stack } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { AdGroup } from '@bingads-webui/campaign-odata-schemas';\r\nimport { MultiLanguageSelector } from '@bingads-webui-campaign-react/multi-language-selector';\r\nimport { SelectedItem } from '@bingads-webui-campaign-react/pill-item-components';\r\nimport { globalizationModelSetup } from '@bingads-webui-campaign/ads-globalization';\r\nimport { campaignLanguageStrings } from './constants';\r\nimport { getIntentLanguageStyles } from '../styles/get-intent-language-style';\r\n\r\nexport function LanguageTarget(props) {\r\n const {\r\n selectedLanguages,\r\n setSelectedLanguages,\r\n permissions,\r\n locale,\r\n showLabel,\r\n } = props;\r\n\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getIntentLanguageStyles);\r\n const { IsDomesticSimplifiedChineseEnabled } = permissions;\r\n const { LANGUAGES: supportedLanguages } = globalizationModelSetup({ permissions, culture: locale });\r\n // TO DO Add back when ads globalization is GA-ed\r\n const languages = useMemo(() => {\r\n let languageList = _.chain(AdGroup.properties.Language.enum)\r\n .filter(language => _.contains(supportedLanguages, language))\r\n .sortBy()\r\n .value();\r\n\r\n if (!IsDomesticSimplifiedChineseEnabled) {\r\n languageList = ['All', ...languageList]; // make 'All' the first language\r\n }\r\n\r\n return languageList.map(language => ({\r\n key: language,\r\n text: i18n.getString(campaignLanguageStrings[language]),\r\n }));\r\n }, [i18n, supportedLanguages, IsDomesticSimplifiedChineseEnabled]);\r\n\r\n const onDeleteLanguage = useCallback((index) => {\r\n const newSelectedLanguages = _(selectedLanguages).clone();\r\n newSelectedLanguages.splice(index, 1);\r\n setSelectedLanguages(newSelectedLanguages);\r\n }, [selectedLanguages, setSelectedLanguages]);\r\n\r\n const languageAll = 'All';\r\n const onSelectedLanguagesChanged = useCallback((event, item) => {\r\n if (item) {\r\n if (item.selected && item.key === languageAll) {\r\n setSelectedLanguages([languageAll]);\r\n } else {\r\n setSelectedLanguages(item.selected ? [...selectedLanguages, item.key] :\r\n selectedLanguages.filter(key => key !== item.key));\r\n }\r\n }\r\n }, [selectedLanguages, setSelectedLanguages]);\r\n\r\n const label = i18n.getString(_TL_('Select the language of the websites where you want your ads to appear.'));\r\n const stackContainerToken = {\r\n childrenGap: 8,\r\n };\r\n return (\r\n
\r\n
\r\n {showLabel && {label}}\r\n
\r\n
\r\n \r\n {selectedLanguages.map((item, index) => (\r\n \r\n ))}\r\n \r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nLanguageTarget.propTypes = {\r\n selectedLanguages: PropTypes.arrayOf(PropTypes.string),\r\n setSelectedLanguages: PropTypes.func.isRequired,\r\n locale: PropTypes.string.isRequired,\r\n permissions: PropTypes.shape({\r\n IsDomesticSimplifiedChineseEnabled: PropTypes.bool,\r\n }).isRequired,\r\n showLabel: PropTypes.bool,\r\n};\r\n\r\nLanguageTarget.defaultProps = {\r\n selectedLanguages: [],\r\n showLabel: true,\r\n};\r\n","import _ from 'underscore';\r\nimport React, { useContext, useCallback, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Text } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { AdGroup } from '@bingads-webui/campaign-odata-schemas';\r\nimport { LanguageSelector } from '@bingads-webui-campaign-react/language-selector';\r\nimport { globalizationModelSetup } from '@bingads-webui-campaign/ads-globalization';\r\nimport { campaignLanguageStrings } from './constants';\r\nimport { getIntentLanguageStyles } from '../styles/get-intent-language-style';\r\n\r\nexport function SingleLanguageTarget(props) {\r\n const {\r\n selectedLanguage,\r\n setSelectedLanguage,\r\n permissions,\r\n locale,\r\n showLabel,\r\n additionalOptions,\r\n } = props;\r\n\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getIntentLanguageStyles);\r\n const { LANGUAGES: supportedLanguages } = globalizationModelSetup({ permissions, culture: locale });\r\n\r\n const languages = useMemo(() =>\r\n _.chain(AdGroup.properties.Language.enum)\r\n .filter(language => _.contains(supportedLanguages, language))\r\n .sortBy()\r\n .unshift(...additionalOptions)\r\n .map(language => ({\r\n key: language,\r\n text: i18n.getString(campaignLanguageStrings[language]),\r\n }))\r\n .value(), [additionalOptions, i18n, supportedLanguages]);\r\n\r\n const allSupportedOptions = useMemo(() => ([...additionalOptions, ...supportedLanguages]), [additionalOptions, supportedLanguages]);\r\n const selectedLanguages = useMemo(() => _.filter([selectedLanguage], language => _.contains(allSupportedOptions, language)), [selectedLanguage, allSupportedOptions]);\r\n\r\n const onSelectedLanguagesChanged = useCallback((event, data) => {\r\n setSelectedLanguage(data.optionValue);\r\n }, [setSelectedLanguage]);\r\n\r\n const label = i18n.getString(_TL_('Select the language of the websites where you want your ads to appear.'));\r\n return (\r\n
\r\n
\r\n {showLabel && {label}}\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nSingleLanguageTarget.propTypes = {\r\n selectedLanguage: PropTypes.string,\r\n setSelectedLanguage: PropTypes.func.isRequired,\r\n locale: PropTypes.string.isRequired,\r\n permissions: PropTypes.shape({}).isRequired,\r\n showLabel: PropTypes.bool,\r\n additionalOptions: PropTypes.arrayOf(PropTypes.string),\r\n};\r\n\r\nSingleLanguageTarget.defaultProps = {\r\n selectedLanguage: null,\r\n showLabel: true,\r\n additionalOptions: ['All'],\r\n};\r\n","export const getEstimationItemStyle = () => ({\r\n itemContainer: {\r\n margin: '20px 0 0',\r\n textAlign: 'right',\r\n fontWeight: 'bold',\r\n\r\n '& .item-title': {\r\n lineHeight: '14px',\r\n },\r\n\r\n '& .item-dash': {\r\n width: '210px',\r\n border: '2px solid',\r\n margin: '8px 0 8px auto',\r\n },\r\n\r\n '& .item-estimation': {\r\n fontSize: '24px',\r\n lineHeight: '36px',\r\n },\r\n },\r\n});\r\n\r\nexport const getDisplayPlusCampaignEstimationItemStyle = () => ({\r\n itemContainer: {\r\n margin: '20px 0 0',\r\n textAlign: 'left',\r\n fontWeight: 'bold',\r\n\r\n '& .item-title': {\r\n lineHeight: '14px',\r\n },\r\n\r\n '& .item-dash': {\r\n width: '302px',\r\n border: '2px solid',\r\n margin: '8px auto 8px 0',\r\n },\r\n\r\n '& .item-estimation': {\r\n fontSize: '24px',\r\n lineHeight: '36px',\r\n },\r\n },\r\n});\r\n","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getEstimationItemStyle, getDisplayPlusCampaignEstimationItemStyle } from './styles/get-estimation-item-styles';\r\n\r\nexport const EstimationItem = (props) => {\r\n const {\r\n className,\r\n title,\r\n dashColor,\r\n estimation,\r\n isDisplayPlusCampaign,\r\n } = props;\r\n\r\n const classes = useDefaultStyles(isDisplayPlusCampaign ? getDisplayPlusCampaignEstimationItemStyle : getEstimationItemStyle);\r\n const estimationText = _.isArray(estimation) ? `${estimation[0]} - ${estimation[1]}` : estimation;\r\n\r\n return (\r\n
\r\n
\r\n {title}\r\n
\r\n \r\n
\r\n {estimationText}\r\n
\r\n
\r\n );\r\n};\r\n\r\nEstimationItem.propTypes = {\r\n className: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n dashColor: PropTypes.string.isRequired,\r\n estimation: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.arrayOf(PropTypes.number),\r\n PropTypes.string,\r\n PropTypes.arrayOf(PropTypes.string),\r\n ]).isRequired,\r\n};\r\n","export const getPerformanceShimmerStyle = (_, { palette = {} }) => ({\r\n shimmerContainer: {\r\n margin: '16px 0',\r\n },\r\n shimmerStyle: {\r\n background: palette.white,\r\n borderRadius: '2px',\r\n marginTop: '14px',\r\n height: '15px',\r\n },\r\n});\r\n","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport { Shimmer } from '@fluentui/react';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getPerformanceShimmerStyle } from './styles/get-performance-shimmer-styles';\r\n\r\nexport function PerformanceShimmer() {\r\n const classes = useDefaultStyles(getPerformanceShimmerStyle);\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","// TODO: import from @bingads-webui-theme-2018/theme-fluent after PR 3840273 is merged\r\nconst mobileDevice = '@media (max-width:600px)';\r\n\r\nexport const getPerformanceTileStyle = (_, { palette = {} }) => ({\r\n performanceTileContainer: {\r\n width: '350px',\r\n [mobileDevice]: {\r\n width: 'auto',\r\n },\r\n\r\n '& .performance-tile': {\r\n background: palette.white,\r\n boxShadow: '0 1.6px 3.6px 0 rgba(0,0,0,15%)',\r\n padding: '16px',\r\n\r\n '& .performance-heading': {\r\n fontSize: '18px',\r\n fontWeight: 'bold',\r\n color: palette.black,\r\n margin: '0px',\r\n },\r\n\r\n '& .performance-description': {\r\n margin: '16px 0 0',\r\n fontSize: '12px',\r\n },\r\n '& .no-performance-view': {\r\n margin: '16px 0 0',\r\n },\r\n },\r\n\r\n '& .performance-note': {\r\n fontSize: '12px',\r\n lineHeight: '14px',\r\n marginTop: '16px',\r\n },\r\n },\r\n});\r\n","import React, { useContext, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { EstimationItem } from './estimation-item';\r\nimport { PerformanceShimmer } from './performance-shimmer';\r\nimport { getPerformanceTileStyle } from './styles/get-performance-tile-styles';\r\n\r\nexport function PerformanceTile(props) {\r\n const {\r\n className,\r\n heading,\r\n description,\r\n note,\r\n noEstimatesDescription,\r\n estimations,\r\n showShimmer,\r\n isDisplayPlusCampaign,\r\n } = props;\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getPerformanceTileStyle);\r\n\r\n const hasEstimations = estimations && estimations.length > 0;\r\n\r\n const performanceItemList = useMemo(() => {\r\n if (!hasEstimations) {\r\n return (\r\n
\r\n {noEstimatesDescription || i18n.getString(_TL_('No estimates available right now.'))}\r\n
\r\n );\r\n }\r\n\r\n return estimations.map(config => (\r\n \r\n ));\r\n }, [estimations, hasEstimations, i18n, isDisplayPlusCampaign, noEstimatesDescription]);\r\n\r\n return (\r\n
\r\n
\r\n

\r\n {heading}\r\n

\r\n {description && (showShimmer || hasEstimations) &&\r\n
\r\n {description}\r\n
\r\n }\r\n
\r\n {showShimmer ? : performanceItemList}\r\n
\r\n
\r\n {note && (showShimmer || hasEstimations) &&\r\n
\r\n {note}\r\n
\r\n }\r\n
\r\n );\r\n}\r\n\r\nPerformanceTile.propTypes = {\r\n className: PropTypes.string,\r\n heading: PropTypes.string.isRequired,\r\n description: PropTypes.string,\r\n note: PropTypes.string,\r\n noEstimatesDescription: PropTypes.string,\r\n estimations: PropTypes.arrayOf(PropTypes.shape({\r\n className: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n dashColor: PropTypes.string.isRequired,\r\n estimation: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.arrayOf(PropTypes.number),\r\n PropTypes.string,\r\n PropTypes.arrayOf(PropTypes.string),\r\n ]).isRequired,\r\n })),\r\n showShimmer: PropTypes.bool.isRequired,\r\n};\r\n\r\nPerformanceTile.defaultProps = {\r\n className: '',\r\n description: '',\r\n note: '',\r\n noEstimatesDescription: '',\r\n estimations: [],\r\n};\r\n\r\n","export const ApiErrorMapping = {\r\n EntityAlreadyExists: _TL_('This profile is already connected to your account.'),\r\n ExceedTheLimit: _TL_(\"You've reached the maximum number of social profiles you can connect to your account.\"),\r\n InternalError: _TL_('An unidentified error has occurred. Please try again later.'),\r\n GeneralError: _TL_(\"We've encountered an error and could not finish this task. Please try again or contact support.\"),\r\n};\r\n\r\nexport const generalError = ApiErrorMapping.GeneralError;\r\n","import _ from 'underscore';\r\n\r\n// please in uppercase characters\r\n// please sort alphabetically\r\nconst errorCodes = [\r\n 'AUTHORIZATIONEXPIRE',\r\n 'BINGPREVIEWAPIERROR',\r\n 'CAMPAIGNINLINEEDITORIALERROR',\r\n 'CCMTERRORNUMBER_POSTPAYACCOUNTCANTASSOCIATEWITHPREPAIDCARD',\r\n 'DUPLICATEENTITY',\r\n 'ENTITYDOESNOTEXIST',\r\n 'EXCEEDACCOUNTGOALLIMIT',\r\n 'EXCEEDTHELIMIT',\r\n 'ExpandedTextAdInlineEditorialError',\r\n 'FACEBOOKAPIUSERERROR',\r\n 'GOALHAVEDUPLICATENAME',\r\n 'GOALHAVEDUPLICATEURLANDOPERATOR',\r\n 'INSUFFICIENTPERMISSIONORNEEDENABLE2FA',\r\n 'INVALIDACTION',\r\n 'INVALIDACTIONONSMARTPAGEASSOCIATEDMCACAMPAIGN',\r\n 'INVALIDBUSINESSNAME',\r\n 'INVALIDDESTINATIONGOALOPERATOR',\r\n 'INVALIDKEYWORDTEXT',\r\n 'INVALIDPARAMETER',\r\n 'INVALIDVALUE',\r\n 'INVALIDZIPCODE',\r\n 'KEYWORDINLINEEDITORIALERROR',\r\n 'LINKEDINAPIERROR',\r\n 'LOCATIONNOTEXIST',\r\n 'LOCATIONNOTSUPPORTED',\r\n 'MEDIASIZEEXCEEDLIMIT',\r\n 'NEEDADMINPERMISSION',\r\n 'NEEDBUSINESSADMINPERMISSION',\r\n 'PAYMENTNOTSET',\r\n 'PROFILEALREADYLINKED',\r\n 'SMARTPAGEINVALIDSUBDOMAIN',\r\n 'SMARTPAGESUBDOMAINISNOTAVAILABLE',\r\n 'TIMEZONENOTMATCH',\r\n 'TOKENEXPIRED',\r\n 'TOKENNOTMATCHTOPROFILE',\r\n 'TWITTERAPIERROR',\r\n 'TWITTERAPIUSERERROR',\r\n 'UNSUPPORTEDWEBSITEDOMAIN',\r\n 'URLNOTACCESSIBLE',\r\n];\r\n\r\nexport const expectedErrorCodes = _.chain(errorCodes)\r\n .map(errorCode => errorCode.trim().toUpperCase())\r\n .value();\r\n\r\nexport function isExpectedErrorCodes(errorResponseJson) {\r\n if (_.isEmpty(errorResponseJson)) {\r\n return false;\r\n }\r\n const errorCodesInResponse = _.chain(errorResponseJson)\r\n .pluck('Code')\r\n .compact()\r\n .map(code => code.trim().toUpperCase())\r\n .uniq()\r\n .value();\r\n\r\n if (_.isEmpty(errorCodesInResponse)) {\r\n return false;\r\n }\r\n\r\n for (let index = 0; index < errorCodesInResponse.length; index += 1) {\r\n if (!_.contains(expectedErrorCodes, errorCodesInResponse[index])) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\n","import queryString from 'query-string';\r\n\r\nconst getHost = (serverContext) => {\r\n const {\r\n Urls: { CampaignAzureDomain },\r\n } = serverContext;\r\n\r\n return CampaignAzureDomain || window.location.origin;\r\n};\r\n\r\nexport const getUrlForPath = (serverContext, path, optionalSearch = {}) => {\r\n const {\r\n CurrentCustomer,\r\n CurrentAccount,\r\n CurrentUser,\r\n } = serverContext;\r\n const host = getHost(serverContext);\r\n const search = {\r\n cid: CurrentCustomer.Id,\r\n aid: CurrentAccount.Id,\r\n uid: CurrentUser.Id,\r\n ...optionalSearch,\r\n };\r\n const searchString = queryString.stringify(search);\r\n\r\n return `${host}/${path}?${searchString}`;\r\n};\r\n\r\nexport const getCampaignUrl = serverContext => getUrlForPath(serverContext, 'campaign/vnext');\r\n\r\nexport const getCampaignPageUrl = (serverContext, page, optionalSearch) => getUrlForPath(serverContext, `campaign/vnext/${page}`, optionalSearch);\r\n\r\nexport const getSingleCampaignUrl =\r\n (serverContext, campaignId) => `${getUrlForPath(serverContext, 'campaign/smart')}#/campaign/${campaignId}`;\r\n\r\nexport const URL_VALIDATION_PATTERN = /^(^[^ ,\"']+)\\.([^ ,\"']+)$/i;\r\n\r\nexport const getExpertSignupUrl =\r\n (serverContext, fromGoogleImport, isExpertStandaloneApp) => {\r\n const {\r\n Urls: { ExpertSignupUrl },\r\n } = serverContext;\r\n let redirectSource = null;\r\n\r\n if (isExpertStandaloneApp) {\r\n redirectSource = fromGoogleImport ? 'nesgi' : 'nes';\r\n } else {\r\n redirectSource = fromGoogleImport ? 'scgi' : 'sc';\r\n }\r\n return `${ExpertSignupUrl}&redirectSource=${redirectSource}`;\r\n };\r\n","import _ from 'underscore';\r\nimport React, { useCallback, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport const WIZARD_MODE = {\r\n SMART: 'SMART',\r\n UNIFIED_SMART: 'UNIFIED_SMART',\r\n EXPERT: 'EXPERT',\r\n SMART_GOOGLE_IMPORT: 'SMART_GOOGLE_IMPORT',\r\n FACEBOOK_IMPORT: 'FACEBOOK_IMPORT',\r\n NONE: null,\r\n};\r\n\r\nexport const SharedWizardContext = React.createContext([\r\n {\r\n website: undefined,\r\n isSwitchFromSmartMidSignup: false,\r\n wizardMode: WIZARD_MODE.SMART,\r\n },\r\n _.noop,\r\n]);\r\n\r\nexport function SharedWizardContextProvider(props) {\r\n const { children } = props;\r\n const [sharedWizardContext, setSharedWizardContext] = useState({\r\n wizardMode: WIZARD_MODE.NONE,\r\n });\r\n const updateSharedWizardContext = useCallback((delta) => {\r\n setSharedWizardContext({\r\n ...sharedWizardContext,\r\n ...delta,\r\n });\r\n }, [sharedWizardContext]);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nSharedWizardContextProvider.propTypes = {\r\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired,\r\n};\r\n","import React, { useState, useCallback } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\n/**\r\n * add a shim to scope context\r\n * as this wizard would be used in different work flows, it many have different Scopecontext\r\n */\r\nexport const ScopeContext = React.createContext([{}, _.noop]);\r\n\r\nexport const ScopeContextProvider = (props) => {\r\n const { serverContext, wizardContext } = props;\r\n const getScopeContext = useCallback(() => ({\r\n cid: _.result(serverContext.CurrentCustomer, 'Id', null),\r\n aid: _.result(serverContext.CurrentAccount, 'Id', null),\r\n uid: _.result(serverContext.CurrentUser, 'Id', null),\r\n campaignId: wizardContext.campaignId,\r\n adgroupId: wizardContext.adgroupId,\r\n }), [serverContext, wizardContext]);\r\n const [scopeContext, setScopeContext] = useState(getScopeContext);\r\n\r\n const updateScopeContext = useCallback(newContext => setScopeContext(prevState => ({\r\n ...prevState,\r\n ...newContext,\r\n })), []);\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nScopeContextProvider.propTypes = {\r\n serverContext: PropTypes.shape({}).isRequired,\r\n wizardContext: PropTypes.shape({}).isRequired,\r\n children: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.node),\r\n PropTypes.node,\r\n ]).isRequired,\r\n};\r\n","/* eslint-disable no-param-reassign */\r\nimport React, { useState, useCallback } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\n/**\r\n * add a shim to server context\r\n * as this wizard would be used in different work flows, it many have different servercontext\r\n * i.e. smart-server-context, mca-server-context\r\n */\r\nexport const ServerContext = React.createContext([{}, _.noop]);\r\n\r\nexport const ServerContextProvider = (props) => {\r\n const [serverContext, setServerContext] = useState(props.serverContext);\r\n const updateServerContext = useCallback((newContext) => {\r\n setServerContext(prevState => ({\r\n ...prevState,\r\n ...newContext,\r\n }));\r\n newContext.CurrentAccount.Id = newContext.CurrentAccount.AccountId;\r\n newContext.CurrentCustomer.Id = newContext.CurrentCustomer.CustomerId;\r\n newContext.CurrentUser.Id = newContext.CurrentUser.UserId;\r\n newContext.CurrentUser.Name = newContext.CurrentUser.UserName;\r\n props.updateServerContext(newContext);\r\n }, [props]);\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nServerContextProvider.propTypes = {\r\n serverContext: PropTypes.shape({}).isRequired,\r\n updateServerContext: PropTypes.func.isRequired,\r\n children: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.node),\r\n PropTypes.node,\r\n ]).isRequired,\r\n};\r\n","\r\nimport _ from 'underscore';\r\nimport CryptoJS from 'crypto-js';\r\nimport { useMemo, useCallback, useState, useEffect } from 'react';\r\nimport { usePostABTestingEventLog as useOverreactPostABTestingEventLog } from '@bingads-webui/overreact-odata-campaign';\r\n\r\n// Please refer to wiki here: https://msasg.visualstudio.com/DefaultCollection/Bing_Ads/_wiki/wikis/Bing_Ads.wiki/80390/Flight-Event-APIs-for-AB-Testing-Logging\r\n\r\nexport function useOnceEffect(callFn) {\r\n const [called, setCalled] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!called && callFn()) {\r\n setCalled(true);\r\n }\r\n }, [callFn, called]);\r\n}\r\n\r\nexport function nullableValue(obj, key) {\r\n const value = (obj && obj[key]);\r\n if (_.isNull(value) || _.isUndefined(value)) {\r\n return null;\r\n }\r\n return value;\r\n}\r\n\r\nexport function getSharedValues(serverContext) {\r\n const {\r\n CurrentAccount,\r\n CurrentCustomer,\r\n Omniture,\r\n PageTrackingId,\r\n Identity,\r\n UserRegion,\r\n } = serverContext || {};\r\n\r\n const { SessionId } = Omniture || {};\r\n const { UserName } = Identity || {};\r\n const HashedUserName = CryptoJS.MD5(UserName).toString();\r\n\r\n return {\r\n AID: nullableValue(CurrentAccount, 'Id'),\r\n CID: nullableValue(CurrentCustomer, 'Id'),\r\n Mode: nullableValue(CurrentAccount, 'AccountMode'),\r\n SessionId,\r\n PageTrackingId,\r\n UserName,\r\n HashedUserName,\r\n UserRegion,\r\n };\r\n}\r\n\r\nexport function getDescriptorIds(serverContext) {\r\n const {\r\n CurrentAccount,\r\n CurrentCustomer,\r\n CurrentUser,\r\n } = serverContext || {};\r\n\r\n // Fallback to \"0\" if user wasn't created yet\r\n const aid = (CurrentAccount && CurrentAccount.Id) || 0;\r\n const cid = (CurrentCustomer && CurrentCustomer.Id) || 0;\r\n const uid = (CurrentUser && CurrentUser.Id) || 0;\r\n\r\n return {\r\n uid,\r\n cid,\r\n aid,\r\n customer_id: cid,\r\n account_id: aid,\r\n };\r\n}\r\n\r\nexport const postponeRead = {\r\n fetch: {\r\n postponeRead: true,\r\n },\r\n};\r\n\r\nexport function usePostABTestingEventLog(serverContext, logTrace) {\r\n const accountLevelVariables = useMemo(() => {\r\n const descriptor = getDescriptorIds(serverContext);\r\n\r\n return {\r\n locator: {\r\n descriptor,\r\n },\r\n };\r\n }, [serverContext]);\r\n\r\n const [, { callFn: postABTestingEventLog }] =\r\n useOverreactPostABTestingEventLog(accountLevelVariables, postponeRead);\r\n\r\n return useCallback((args) => {\r\n const {\r\n UniqueId,\r\n EventName,\r\n } = args;\r\n const EventValue = _.isObject(args.EventValue) ? JSON.stringify(args.EventValue) : `${args.EventValue}`;\r\n\r\n logTrace(`[PostABTestingEventLog]: UniqueId: ${UniqueId}, EventName: ${EventName}, EventValue: ${EventValue}`);\r\n\r\n const data = {\r\n UniqueId,\r\n EventName,\r\n EventValue,\r\n };\r\n postABTestingEventLog({\r\n payload: { data },\r\n });\r\n }, [logTrace, postABTestingEventLog]);\r\n}\r\n","import _ from 'underscore';\r\nimport { useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useOnceEffect, getSharedValues } from './ab-testing-event-log';\r\n\r\nexport const CUSTOMER_JOURNEY_PRODUCT = {\r\n None: null,\r\n SC: 'SC',\r\n ESC: 'ESC',\r\n Expert: 'Expert',\r\n StreamlinedSignup: 'StreamlinedSignup',\r\n PMaxLite: 'PMaxLite',\r\n};\r\n\r\nexport const CUSTOMER_JOURNEY_SUB_PRODUCT = {\r\n None: null,\r\n SubscriptionAds: 'SubscriptionAds',\r\n M365: 'M365',\r\n};\r\n\r\nexport const CUSTOMER_JOURNEY_INTERFACE = {\r\n Web: 'Web',\r\n Mobile: 'Mobile',\r\n Editor: 'Editor',\r\n API: 'API',\r\n};\r\n\r\nexport const userAgent = _.get(navigator, 'userAgent') || _.get(navigator, 'vendor') || _.get(window, 'opera');\r\n\r\nexport function CustomerJourneyProvider(props) {\r\n const {\r\n children,\r\n serverContext,\r\n postEventLog,\r\n logWarning,\r\n flights,\r\n postFlightLog,\r\n product,\r\n subProduct,\r\n customerInterface,\r\n } = props;\r\n\r\n // logging is asynchronously created on app launch\r\n // therefore logWarning and postEventLog are optional, however will disable shouldPost\r\n const shouldPost = props.shouldPost && _.isFunction(logWarning) && _.isFunction(postEventLog);\r\n const shouldPostFlights = props.shouldPost && _.isFunction(postFlightLog);\r\n\r\n // We don't want to re-log events if \"eventValues\" or \"postEventLog\" changes\r\n // therefore store both values as ref\r\n const eventValues = useRef({});\r\n const postEventLogRef = useRef({});\r\n const sharedValues = getSharedValues(serverContext);\r\n const UniqueId = sharedValues.SessionId;\r\n eventValues.current = {\r\n Mode: sharedValues.Mode,\r\n CID: sharedValues.CID,\r\n AID: sharedValues.AID,\r\n };\r\n\r\n postEventLogRef.current = {\r\n postEvent: (EventName, EventValue) => postEventLog({\r\n UniqueId,\r\n EventName: `CustomerJourney:${EventName}`,\r\n EventValue,\r\n }),\r\n logValidationError: (error) => {\r\n const message = `CustomerJourneyProvider validation error: ${error}`;\r\n logWarning(message);\r\n },\r\n postFlight: postFlightLog,\r\n };\r\n\r\n useOnceEffect(() => {\r\n if (shouldPost) {\r\n postEventLogRef.current.postEvent('AppLoad', {\r\n ...eventValues.current,\r\n Product: product,\r\n SubProduct: subProduct,\r\n Interface: customerInterface,\r\n OS: userAgent,\r\n ResolutionWidth: _.get(window, 'innerWidth'),\r\n ResolutionHeight: _.get(window, 'innerHeight'),\r\n PixelRatio: _.get(window, 'devicePixelRatio'),\r\n });\r\n return true;\r\n }\r\n return false;\r\n });\r\n\r\n useOnceEffect(() => {\r\n if (shouldPostFlights) {\r\n postEventLogRef.current.postFlight(flights);\r\n return true;\r\n }\r\n return false;\r\n });\r\n\r\n return children;\r\n}\r\n\r\nCustomerJourneyProvider.propTypes = {\r\n shouldPost: PropTypes.bool,\r\n logWarning: PropTypes.func,\r\n postEventLog: PropTypes.func,\r\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired,\r\n serverContext: PropTypes.shape({}),\r\n flights: PropTypes.arrayOf(PropTypes.shape({})),\r\n postFlightLog: PropTypes.func,\r\n product: PropTypes.string,\r\n subProduct: PropTypes.string,\r\n customerInterface: PropTypes.string,\r\n};\r\n\r\nCustomerJourneyProvider.defaultProps = {\r\n shouldPost: false,\r\n serverContext: undefined,\r\n logWarning: null,\r\n postEventLog: null,\r\n flights: [],\r\n postFlightLog: null,\r\n product: CUSTOMER_JOURNEY_PRODUCT.None,\r\n subProduct: CUSTOMER_JOURNEY_SUB_PRODUCT.None,\r\n customerInterface: CUSTOMER_JOURNEY_INTERFACE.Web,\r\n};\r\n","import _ from 'underscore';\r\nimport React, { useCallback, useEffect, useState, useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useOnceEffect, getSharedValues } from './ab-testing-event-log';\r\nimport {\r\n CUSTOMER_JOURNEY_INTERFACE,\r\n CUSTOMER_JOURNEY_PRODUCT,\r\n CUSTOMER_JOURNEY_SUB_PRODUCT,\r\n userAgent,\r\n} from './customer-journey-provider';\r\n\r\nexport const SIGNUP_FLOW = {\r\n NONE: null,\r\n Smart: 'Smart',\r\n UP: 'UP',\r\n SubscriptionAds: 'SubscriptionAds',\r\n NewExpert: 'NewExpert',\r\n GoogleImport: 'GoogleImport',\r\n FacebookImport: 'FacebookImport',\r\n SubscriptionAds2: 'SubscriptionAds2',\r\n StreamlinedSignup: 'StreamlinedSignup',\r\n PmaxLiteSignup: 'PmaxLiteSignup',\r\n M365: 'M365',\r\n MSAdsSDK: 'MSAdsSDK',\r\n};\r\n\r\nexport const SIGNUP_SUB_FLOW = {\r\n NONE: null,\r\n GoogleImport: 'GoogleImport',\r\n FacebookImport: 'FacebookImport',\r\n SkipCampaign: 'SkipCampaign',\r\n CampaignCreation: 'CampaignCreation',\r\n SmartPage: 'SmartPage',\r\n};\r\n\r\nexport const SIGNUP_PAGE_NONE = null;\r\n\r\nconst NoOpContext = {\r\n signupComplete: _.noop,\r\n changedChannel: _.noop,\r\n enteredPage: _.noop,\r\n};\r\n\r\nexport const SignupFlowContext = React.createContext(NoOpContext);\r\n\r\nfunction usePrevious(value) {\r\n const cache = useRef(value);\r\n\r\n useEffect(() => {\r\n cache.current = value;\r\n }, [value]);\r\n\r\n return cache.current;\r\n}\r\n\r\nfunction useStateWithPrevious(initialValue) {\r\n const [state, setState] = useState(initialValue);\r\n const cache = useRef({});\r\n\r\n const updateState = useCallback((newValue) => {\r\n const value = {\r\n Flow: newValue.Flow || SIGNUP_FLOW.NONE,\r\n SubFlow: newValue.SubFlow || SIGNUP_SUB_FLOW.NONE,\r\n Page: newValue.Page || SIGNUP_PAGE_NONE,\r\n };\r\n setState((prev) => {\r\n if (!_.isEqual(prev, value)) {\r\n cache.current = prev;\r\n return value;\r\n }\r\n return prev;\r\n });\r\n }, []);\r\n\r\n return [state, updateState, cache.current];\r\n}\r\n\r\nexport function SignupFlowProvider(props) {\r\n const {\r\n children,\r\n serverContext,\r\n postEventLog,\r\n logWarning,\r\n deviceInfo,\r\n preCIDFlights,\r\n flights,\r\n postFlightLog,\r\n product,\r\n subProduct,\r\n customerInterface,\r\n } = props;\r\n\r\n // logging is asynchronously created on app launch\r\n // therefore logWarning and postEventLog are optional, however will disable shouldPost\r\n const shouldPost = props.shouldPost && _.isFunction(logWarning) && _.isFunction(postEventLog);\r\n const shouldPostFlights = props.shouldPost && _.isFunction(postFlightLog);\r\n const { CurrentAccount } = serverContext || {};\r\n\r\n const {\r\n CurrentAccount: prevAccount,\r\n } = usePrevious(serverContext) || {};\r\n\r\n const [{\r\n Flow,\r\n SubFlow,\r\n Page,\r\n }, setContext, prevContext] = useStateWithPrevious({\r\n Flow: SIGNUP_FLOW.NONE,\r\n SubFlow: SIGNUP_SUB_FLOW.NONE,\r\n Page: SIGNUP_PAGE_NONE,\r\n });\r\n\r\n // We don't want to re-log events if \"eventValues\" or \"postEventLog\" changes\r\n // therefore store both values as ref\r\n const eventValues = useRef({});\r\n const postEventLogRef = useRef({});\r\n const sharedValues = getSharedValues(serverContext);\r\n const UniqueId = sharedValues.SessionId;\r\n eventValues.current = {\r\n Mode: sharedValues.Mode,\r\n CID: sharedValues.CID,\r\n AID: sharedValues.AID,\r\n PageId: sharedValues.PageTrackingId,\r\n };\r\n const isPreCIDCreation = !sharedValues.CID;\r\n\r\n postEventLogRef.current = {\r\n postEvent: (EventName, EventValue) => postEventLog({\r\n UniqueId,\r\n EventName: `SignupFlow:${EventName}`,\r\n EventValue,\r\n }),\r\n logValidationError: (error) => {\r\n const message = `SignupFlowProvider validation error: ${error}`;\r\n logWarning(message);\r\n },\r\n postFlight: postFlightLog,\r\n };\r\n\r\n\r\n useOnceEffect(() => {\r\n if (shouldPost) {\r\n postEventLogRef.current.postEvent('AppLoad', {\r\n ...eventValues.current,\r\n deviceInfo,\r\n UserRegion: sharedValues.UserRegion,\r\n HashedUserName: sharedValues.HashedUserName,\r\n });\r\n return true;\r\n }\r\n return false;\r\n });\r\n\r\n useOnceEffect(() => {\r\n if (shouldPost && Flow !== SIGNUP_FLOW.NONE) {\r\n postEventLogRef.current.postEvent('StartedFlow', {\r\n ...eventValues.current,\r\n Flow,\r\n });\r\n return true;\r\n }\r\n return false;\r\n });\r\n\r\n useOnceEffect(() => {\r\n if (shouldPostFlights) {\r\n let allflights = flights;\r\n if (isPreCIDCreation) {\r\n allflights = [\r\n ...allflights,\r\n ...preCIDFlights,\r\n ];\r\n }\r\n postEventLogRef.current.postFlight(allflights);\r\n\r\n return true;\r\n }\r\n return false;\r\n });\r\n\r\n const signupComplete = useCallback((HasPayment) => {\r\n /*\r\n Needs to be added anywhere in signup where:\r\n 1. Account is patched with: PreferredBillToPaymentInstrumentId: paymentId\r\n 2. Account is patched with: LifecycleStatus: 29,\r\n aka LifecycleStatus: AccountLifeCycleStatus.Pending,\r\n */\r\n postEventLogRef.current.postEvent('SignupComplete', {\r\n ...eventValues.current,\r\n Flow,\r\n SubFlow,\r\n Page,\r\n HasPayment: !!HasPayment,\r\n });\r\n }, [Flow, SubFlow, Page]);\r\n\r\n const changedChannel = useCallback(({ Before, After }) => {\r\n postEventLogRef.current.postEvent('ChangedChannel', {\r\n ...eventValues.current,\r\n Flow,\r\n Page,\r\n Before,\r\n After,\r\n });\r\n }, [Flow, Page]);\r\n\r\n\r\n useEffect(() => {\r\n if (!shouldPost || Flow === SIGNUP_FLOW.NONE) {\r\n return;\r\n }\r\n\r\n if (\r\n (prevContext.Flow !== Flow || prevContext.SubFlow !== SubFlow || prevContext.Page !== Page) &&\r\n Page !== SIGNUP_PAGE_NONE\r\n ) {\r\n postEventLogRef.current.postEvent('EnteredPage', {\r\n ...eventValues.current,\r\n Flow,\r\n SubFlow,\r\n Page,\r\n });\r\n }\r\n\r\n if (prevContext.Flow !== Flow && prevContext.Flow !== SIGNUP_FLOW.NONE) {\r\n if (prevContext.Page === Page) {\r\n postEventLogRef.current.logValidationError('page should have been modified when flow changed');\r\n }\r\n\r\n postEventLogRef.current.postEvent('SwitchedFlow', {\r\n CID: eventValues.current.CID,\r\n AID: eventValues.current.AID,\r\n FromFlow: prevContext.Flow,\r\n ToFlow: Flow,\r\n FromPage: prevContext.Page || null,\r\n ToPage: Page || null,\r\n });\r\n }\r\n }, [Flow, Page, SubFlow, prevContext.Flow, prevContext.Page, prevContext.SubFlow, shouldPost]);\r\n\r\n useEffect(() => {\r\n if (!shouldPost) {\r\n return;\r\n }\r\n\r\n const prevHasAID = !!(prevAccount && prevAccount.Id);\r\n const nowHasAID = !!(CurrentAccount && CurrentAccount.Id);\r\n\r\n if (prevHasAID && prevAccount.AccountMode !== CurrentAccount.AccountMode) {\r\n postEventLogRef.current.postEvent('UpdatedMode', {\r\n CID: eventValues.current.CID,\r\n AID: eventValues.current.AID,\r\n Flow,\r\n Page,\r\n FromMode: prevAccount.AccountMode,\r\n ToMode: CurrentAccount.AccountMode,\r\n }, {});\r\n }\r\n\r\n if (!prevHasAID && nowHasAID) {\r\n postEventLogRef.current.postEvent('CreatedCID', {\r\n ...eventValues.current,\r\n Flow,\r\n Page,\r\n Product: product,\r\n SubProduct: subProduct,\r\n Interface: customerInterface,\r\n OS: userAgent,\r\n ResolutionWidth: _.get(window, 'innerWidth'),\r\n ResolutionHeight: _.get(window, 'innerHeight'),\r\n PixelRatio: _.get(window, 'devicePixelRatio'),\r\n }, {});\r\n }\r\n }, [CurrentAccount, Flow, Page, customerInterface, prevAccount, product, shouldPost, subProduct]);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nSignupFlowProvider.propTypes = {\r\n shouldPost: PropTypes.bool,\r\n logWarning: PropTypes.func,\r\n postEventLog: PropTypes.func,\r\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired,\r\n serverContext: PropTypes.shape({}),\r\n deviceInfo: PropTypes.string,\r\n flights: PropTypes.arrayOf(PropTypes.shape({})),\r\n preCIDFlights: PropTypes.arrayOf(PropTypes.shape({})),\r\n postFlightLog: PropTypes.func,\r\n product: PropTypes.string,\r\n subProduct: PropTypes.string,\r\n customerInterface: PropTypes.string,\r\n};\r\n\r\nSignupFlowProvider.defaultProps = {\r\n shouldPost: false,\r\n serverContext: undefined,\r\n logWarning: null,\r\n postEventLog: null,\r\n deviceInfo: null,\r\n flights: [],\r\n preCIDFlights: [],\r\n postFlightLog: null,\r\n product: CUSTOMER_JOURNEY_PRODUCT.None,\r\n subProduct: CUSTOMER_JOURNEY_SUB_PRODUCT.None,\r\n customerInterface: CUSTOMER_JOURNEY_INTERFACE.Web,\r\n};\r\n","\r\nimport React, { useEffect, useContext } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { SignupFlowContext, SIGNUP_SUB_FLOW } from './signup-flow-provider';\r\n\r\nexport function useLogEnteredPage({\r\n Flow,\r\n SubFlow = SIGNUP_SUB_FLOW.NONE,\r\n Page,\r\n}) {\r\n const { enteredPage } = useContext(SignupFlowContext);\r\n useEffect(() => {\r\n if (Page) {\r\n enteredPage({ Flow, SubFlow, Page });\r\n }\r\n }, [Flow, Page, SubFlow, enteredPage]);\r\n}\r\nexport function LogEnteredPageOnRender({\r\n Flow,\r\n SubFlow,\r\n Page,\r\n}) {\r\n useLogEnteredPage({ Flow, SubFlow, Page });\r\n return (<>);\r\n}\r\n\r\nLogEnteredPageOnRender.propTypes = {\r\n Flow: PropTypes.string.isRequired,\r\n Page: PropTypes.string,\r\n SubFlow: PropTypes.string,\r\n};\r\n\r\nLogEnteredPageOnRender.defaultProps = {\r\n Page: null,\r\n SubFlow: null,\r\n};\r\n\r\nexport function LogEnteredPageOnStep({\r\n StepsContext,\r\n Flow,\r\n SubFlow,\r\n PathToPage,\r\n}) {\r\n const { currentPath } = useContext(StepsContext);\r\n const Page = currentPath && PathToPage ?\r\n PathToPage[currentPath] :\r\n currentPath;\r\n\r\n useLogEnteredPage({ Flow, SubFlow, Page });\r\n return <>;\r\n}\r\n\r\nLogEnteredPageOnStep.propTypes = {\r\n StepsContext: PropTypes.shape({}).isRequired,\r\n PathToPage: PropTypes.shape({}),\r\n SubFlow: PropTypes.string,\r\n Flow: PropTypes.string.isRequired,\r\n};\r\n\r\nLogEnteredPageOnStep.defaultProps = {\r\n PathToPage: null,\r\n SubFlow: null,\r\n};\r\n","import React, { useContext } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { FormGroup, Label, Row, Col } from '@bingads-webui-react/primitive';\r\nimport { Input } from '@bingads-webui-react/primitive-with-validation-and-signal';\r\nimport { ValidationGroup } from '@bingads-webui-react/primitive-validation';\r\nimport { HelpPopup } from '@bingads-webui-react/help-popup';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nconst userSchema = {\r\n name: 'User schema',\r\n type: 'object',\r\n properties: {\r\n firstName: {\r\n type: 'string',\r\n required: true,\r\n maxLength: 40,\r\n pattern: '^(?:(?![\\x00-\\x1f]|[\\x21-\\x26]|[\\x28-\\x2c]|\\x2f|[\\x3a-\\x40]|[\\x5b-\\x5e]|\\x60|[\\x7b-\\x7f]|\\x81|\\xa0|\\xad).)*$',\r\n },\r\n lastName: {\r\n type: 'string',\r\n required: true,\r\n maxLength: 40,\r\n pattern: '^(?:(?![\\x00-\\x1f]|[\\x21-\\x26]|[\\x28-\\x2c]|\\x2f|[\\x3a-\\x40]|[\\x5b-\\x5e]|\\x60|[\\x7b-\\x7f]|\\x81|\\xa0|\\xad).)*$',\r\n },\r\n email: {\r\n type: 'string',\r\n required: true,\r\n pattern: '^([a-zA-Z0-9_\\\\-\\\\.]+)@([a-zA-Z0-9_\\\\-\\\\.]+)\\\\.([a-zA-Z]{2,5})$',\r\n },\r\n },\r\n};\r\n\r\nexport const SignupUserInfoForm = (props) => {\r\n const {\r\n onValidate,\r\n defaultValue,\r\n } = props;\r\n const i18n = useContext(I18nContext);\r\n\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nSignupUserInfoForm.propTypes = {\r\n onValidate: PropTypes.func.isRequired,\r\n defaultValue: PropTypes.shape({\r\n firstName: PropTypes.string,\r\n lastName: PropTypes.string,\r\n email: PropTypes.string,\r\n }),\r\n};\r\n\r\nSignupUserInfoForm.defaultProps = {\r\n defaultValue: undefined,\r\n};\r\n\r\n","import React, { useContext, useCallback, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport {\r\n Dialog,\r\n DialogFooter,\r\n DialogType,\r\n PrimaryButton,\r\n} from '@fluentui/react';\r\n\r\nimport { SignupUserInfoForm } from './signup-user-info-form';\r\n\r\nexport const getStyles = () => ({\r\n contentList: {\r\n marginTop: 10.5,\r\n },\r\n});\r\n\r\nexport function SignupUserInfoDialog(props) {\r\n const {\r\n onConfirm,\r\n defaultValue,\r\n } = props;\r\n const i18n = useContext(I18nContext);\r\n const [formData, setFormData] = useState(defaultValue);\r\n const [isValid, setIsValid] = useState(false);\r\n const [hideDialog, setHideDialog] = useState(false);\r\n const dialogContentProps = {\r\n type: DialogType.normal,\r\n title: i18n.getString(_TL_(\"Before we can create your account, we'll need a little more information first.\")),\r\n showCloseButton: false,\r\n };\r\n\r\n const onValidate = useCallback((result) => {\r\n setFormData(result.data);\r\n setIsValid(result.isValid);\r\n }, []);\r\n\r\n const onDismissDialog = useCallback(() => setHideDialog(true), []);\r\n\r\n return (\r\n