{"version":3,"file":"static/js/application.initial~464cab2f.989bc87c.js","mappings":"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","sources":["../../merchant-center-main-menu/src/styles/menu-item-styles.js","../../merchant-center-main-menu/src/styles/common-styles.js","../../merchant-center-main-menu/src/helpers/node-helper.js","../../merchant-center-main-menu/src/components/menu-item.js","../../merchant-center-main-menu/src/styles/main-menu-styles.js","../../merchant-center-main-menu/src/components/menu-item-list.js","../../merchant-center-main-menu/src/components/store-icon.js","../../merchant-center-main-menu/src/components/store-item.js","../../merchant-center-main-menu/src/components/stores-list.js","../../merchant-center-main-menu/src/merchant-center-main-menu-view.js","../../merchant-center-main-menu/src/merchant-center-main-menu.js","../../merchant-center-main-menu/src/helpers/router-helper.js","../../merchant-center-notification/src/gmc-migration-teaching-bubble.js","../../merchant-center-notification/src/mmc-notification-top-banner.js","../../../../ms-ads-sdk/packages/sdk-utils/src/utils.ts"],"sourcesContent":["import { getButtonFocusOverrideStyle } from './common-styles';\r\n\r\nexport const getMenuItemStyles = (menuItem, { palette = {} }) => ({\r\n baseMenuItem: {\r\n height: 36,\r\n fontFamily: 'Segoe UI',\r\n fontWeight: 'normal',\r\n lineHeight: 'normal',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n padding: 0,\r\n border: 0,\r\n textDecoration: 'none',\r\n alignItems: 'center',\r\n width: '100%',\r\n textAlign: 'left',\r\n minWidth: '1px',\r\n borderRadius: 'unset',\r\n // menu item is using Button, but states' style should not act the same as Button.\r\n '&:focus': getButtonFocusOverrideStyle(palette.neutralSecondary),\r\n '&:active': {\r\n '&:focus': {\r\n '&:after': {\r\n border: 0,\r\n },\r\n },\r\n },\r\n '& .spinner_label': {\r\n color: palette.white,\r\n },\r\n '& a': {\r\n color: palette.white,\r\n },\r\n },\r\n normalMenuItem: {\r\n backgroundColor: `${palette.neutralPrimaryAlt} !important`,\r\n '&:focus': {\r\n backgroundColor: palette.mainMenuHoverBackground,\r\n },\r\n '&:hover': {\r\n backgroundColor: `${palette.mainMenuHoverBackground} !important`,\r\n },\r\n },\r\n selectedMenuItem: {\r\n fontWeight: 600,\r\n backgroundColor: '#323031 !important',\r\n },\r\n beforeIcon: {\r\n borderLeft: `4px solid ${palette.themePrimary}`,\r\n padding: 0,\r\n marginRight: -4,\r\n alignSelf: 'stretch',\r\n },\r\n iconContainer: {\r\n display: 'inline-block',\r\n marginLeft: 16,\r\n marginTop: 10,\r\n marginBottom: 10,\r\n marginRight: 12,\r\n width: 16,\r\n height: 16,\r\n fontSize: 16,\r\n color: palette.white,\r\n },\r\n storeIconContainer: {\r\n display: 'inline-block',\r\n marginLeft: 11,\r\n marginTop: 6,\r\n marginBottom: 6,\r\n marginRight: 11,\r\n width: 24,\r\n height: 24,\r\n fontSize: 16,\r\n color: palette.neutralSecondary,\r\n },\r\n statusIconContainer: {\r\n width: 12,\r\n height: 12,\r\n marginLeft: 16,\r\n marginTop: 12,\r\n marginBottom: 12,\r\n marginRight: 16,\r\n },\r\n activeStatusIcon: {\r\n fontSize: '12px !important',\r\n color: '#22CD6E',\r\n display: 'block',\r\n top: '0 !important',\r\n margin: '0px !important',\r\n },\r\n pendingStatusIcon: {\r\n fontSize: '12px !important',\r\n color: '#BEBBB8',\r\n display: 'block',\r\n top: '0 !important',\r\n margin: '0px !important',\r\n },\r\n rejectedStatusIcon: {\r\n fontSize: '12px !important',\r\n color: '#A80000',\r\n display: 'block',\r\n top: '0 !important',\r\n margin: '0px !important',\r\n },\r\n collapsedStoreIcon: {\r\n height: '24px',\r\n lineHeight: '24px',\r\n fontFamily: 'Segoe UI',\r\n fontSize: '10px',\r\n textAlign: 'center',\r\n color: '#FFFFFF',\r\n borderRadius: '2px',\r\n background: '#605E5C',\r\n },\r\n selectedCollapsedStoreIcon: {\r\n height: '24px',\r\n lineHeight: '24px',\r\n fontFamily: 'Segoe UI',\r\n fontSize: '10px',\r\n textAlign: 'center',\r\n color: '#FFFFFF',\r\n borderRadius: '2px',\r\n background: '#0078D4',\r\n },\r\n textContainer: {\r\n display: 'inline-block',\r\n overflow: 'hidden',\r\n marginTop: 8,\r\n marginBottom: 9,\r\n textOverflow: 'ellipsis',\r\n flex: '1 1 1px',\r\n whiteSpace: 'nowrap',\r\n fontSize: 14,\r\n color: palette.white,\r\n },\r\n typeSelectionIcon: {\r\n fontSize: 16,\r\n display: 'block',\r\n margin: '0px !important',\r\n top: '0px !important',\r\n },\r\n placeholderTextContainer: {\r\n marginLeft: 22,\r\n },\r\n});\r\n\r\n","export const getButtonFocusOverrideStyle = outlineColor => ({\r\n outline: `1px solid ${outlineColor}`,\r\n outlineOffset: -1,\r\n '&:after': {\r\n border: 0,\r\n },\r\n});\r\n","import classNames from 'classnames';\r\n\r\nexport const GetNodeClassNames = (node, classes) => classNames([\r\n classes.baseMenuItem,\r\n node.isSelected ? [classes.selectedMenuItem, 'selected'] : classes.normalMenuItem,\r\n `menu-item-${node.Id}`,\r\n]);\r\n\r\nexport const abbreviateStoreName = (storeName) => {\r\n if (storeName === null || storeName.length <= 2) {\r\n return storeName;\r\n }\r\n\r\n const splitStoreName = storeName.split(' ');\r\n if (splitStoreName.length < 2) {\r\n return storeName.slice(0, 2);\r\n }\r\n return splitStoreName.reduce((response, word) => response + word.slice(0, 1), '').slice(0, 2);\r\n};\r\n","import classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport _ from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Glyphicon, Button, OverlayTrigger, Tooltip } from '@bingads-webui-react/primitive';\r\nimport { getMenuItemStyles } from '../styles/menu-item-styles';\r\nimport { GetNodeClassNames } from '../helpers/node-helper';\r\n\r\nconst MenuItem = ({\r\n classes,\r\n node,\r\n renderText,\r\n onItemClick,\r\n}) => {\r\n const cnames = classNames([GetNodeClassNames(node, classes)]);\r\n\r\n return (\r\n \r\n {node.Name}\r\n \r\n }\r\n >\r\n onItemClick(node)}\r\n aria-label={node.Name}\r\n >\r\n {node.isSelected &&
}\r\n
\r\n \r\n
\r\n {renderText && {renderText}}\r\n \r\n \r\n );\r\n};\r\n\r\nMenuItem.defaultProps = {\r\n renderText: null,\r\n};\r\n\r\nMenuItem.propTypes = {\r\n classes: PropTypes.shape(_.mapObject(\r\n getMenuItemStyles({}, {}),\r\n _.constant(PropTypes.string.isRequired)\r\n )).isRequired,\r\n node: PropTypes.shape({\r\n Id: PropTypes.string,\r\n Name: PropTypes.string,\r\n glyphIconName: PropTypes.string,\r\n isSelected: PropTypes.bool,\r\n }).isRequired,\r\n renderText: PropTypes.string,\r\n onItemClick: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default withDefaultStyles(MenuItem, getMenuItemStyles);\r\n","export const getMainMenuStyles = (mainMenu, { palette = {} }) =>\r\n ({\r\n mainMenuContainer: {\r\n transition: 'width 0.2s',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n width: '100%',\r\n flex: '1 1 1px',\r\n },\r\n hidden: {\r\n display: 'none',\r\n },\r\n menuList: {\r\n listStyle: 'none',\r\n marginTop: 8,\r\n },\r\n divider: {\r\n borderTop: `solid 1px ${palette.mainMenuHoverBackground}`,\r\n },\r\n });\r\n\r\nexport const getSideBarStyles = (mainMenu, { palette = {} }) => ({\r\n sideBarContainer: {\r\n width: '100%',\r\n backgroundColor: palette.neutralPrimaryAlt,\r\n position: 'absolute',\r\n top: 0,\r\n bottom: 0,\r\n },\r\n majorComponentsContainer: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n width: '100%',\r\n borderTop: `solid 1px ${palette.mainMenuHoverBackground}`,\r\n borderRight: `solid 1px ${palette.mainMenuHoverBackground}`,\r\n position: 'absolute',\r\n top: 44,\r\n bottom: 0,\r\n },\r\n hidden: {\r\n display: 'none',\r\n },\r\n});\r\n\r\nexport const getMenuItemListStyles = () => ({\r\n menuList: {\r\n listStyle: 'none',\r\n marginTop: 8,\r\n },\r\n});\r\n","import _ from 'underscore';\r\nimport classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport MenuItem from './menu-item';\r\nimport { getMenuItemListStyles } from '../styles/main-menu-styles';\r\n\r\nclass MenuItemList extends React.PureComponent {\r\n render() {\r\n const {\r\n classes,\r\n items,\r\n isExpanded,\r\n onMenuItemClick,\r\n classList,\r\n } = this.props;\r\n\r\n const cnames = classNames(['main-menu-link-list', classes.menuList, ...classList]);\r\n\r\n return (\r\n isExpanded &&\r\n
\r\n {items.map(item =>\r\n (\r\n \r\n ))}\r\n
\r\n );\r\n }\r\n}\r\n\r\nMenuItemList.propTypes = {\r\n classes: PropTypes.shape(_.mapObject(\r\n getMenuItemListStyles(),\r\n _.constant(PropTypes.string.isRequired)\r\n )).isRequired,\r\n classList: PropTypes.arrayOf(PropTypes.string),\r\n isExpanded: PropTypes.bool.isRequired,\r\n items: PropTypes.arrayOf(PropTypes.shape({\r\n Id: PropTypes.string,\r\n Name: PropTypes.string.isRequired,\r\n })),\r\n onMenuItemClick: PropTypes.func.isRequired,\r\n};\r\n\r\nMenuItemList.defaultProps = {\r\n items: [],\r\n classList: [],\r\n};\r\n\r\nexport const StyledMenuItemList = withDefaultStyles(MenuItemList, getMenuItemListStyles);\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { getMenuItemStyles } from '../styles/menu-item-styles';\r\nimport { abbreviateStoreName } from '../helpers/node-helper';\r\n\r\nexport const StoreIcon = ({\r\n classes,\r\n icon,\r\n iconStatusClassName,\r\n node,\r\n isExpanded,\r\n}) => {\r\n if (isExpanded) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n {abbreviateStoreName(node.Name)}\r\n
\r\n
\r\n );\r\n};\r\n\r\nStoreIcon.propTypes = {\r\n classes: PropTypes.shape(_.mapObject(\r\n getMenuItemStyles({}, {}),\r\n _.constant(PropTypes.string.isRequired)\r\n )).isRequired,\r\n icon: PropTypes.string,\r\n iconStatusClassName: PropTypes.string,\r\n isExpanded: PropTypes.bool.isRequired,\r\n node: PropTypes.shape({\r\n Name: PropTypes.string,\r\n isSelected: PropTypes.bool,\r\n }).isRequired,\r\n};\r\n\r\nStoreIcon.defaultProps = {\r\n icon: 'collapsed',\r\n iconStatusClassName: 'StoreIcon',\r\n};\r\n","import classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport _ from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Button, OverlayTrigger, Tooltip } from '@bingads-webui-react/primitive';\r\nimport { getMenuItemStyles } from '../styles/menu-item-styles';\r\nimport { GetNodeClassNames } from '../helpers/node-helper';\r\nimport { StoreIcon } from './store-icon';\r\n\r\nconst MenuItem = ({\r\n classes,\r\n node,\r\n renderText,\r\n onItemClick,\r\n isExpanded,\r\n}) => {\r\n const cnames = classNames([GetNodeClassNames(node, classes)]);\r\n\r\n let icon = '';\r\n let iconStatusClassName = '';\r\n\r\n if (node.Status === 'Approved') {\r\n icon = 'ba-RadioBullet2';\r\n iconStatusClassName = classes.activeStatusIcon;\r\n } else if (node.Status === 'Pending') {\r\n icon = 'ba-HourGlass';\r\n iconStatusClassName = classes.pendingStatusIcon;\r\n } else if (node.Status === 'Rejected') {\r\n icon = 'ba-Error';\r\n iconStatusClassName = classes.rejectedStatusIcon;\r\n }\r\n\r\n return (\r\n \r\n {node.Name}\r\n \r\n }\r\n >\r\n onItemClick(node)}\r\n aria-label={node.Name}\r\n >\r\n {node.isSelected &&
}\r\n \r\n {renderText && {renderText}}\r\n \r\n \r\n );\r\n};\r\n\r\nMenuItem.defaultProps = {\r\n renderText: null,\r\n};\r\n\r\nMenuItem.propTypes = {\r\n classes: PropTypes.shape(_.mapObject(\r\n getMenuItemStyles({}, {}),\r\n _.constant(PropTypes.string.isRequired)\r\n )).isRequired,\r\n isExpanded: PropTypes.bool.isRequired,\r\n node: PropTypes.shape({\r\n Id: PropTypes.number,\r\n Name: PropTypes.string,\r\n isSelected: PropTypes.bool,\r\n Status: PropTypes.string,\r\n }).isRequired,\r\n renderText: PropTypes.string,\r\n onItemClick: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default withDefaultStyles(MenuItem, getMenuItemStyles);\r\n","import _ from 'underscore';\r\nimport classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport MenuItem from './store-item';\r\nimport { getMenuItemListStyles } from '../styles/main-menu-styles';\r\n\r\nclass StoresList extends React.PureComponent {\r\n render() {\r\n const {\r\n classes,\r\n items,\r\n onStoreChange,\r\n isExpanded,\r\n } = this.props;\r\n\r\n const cnames = classNames(['main-menu-link-list', classes.menuList, 'stores-list']);\r\n\r\n return (\r\n isExpanded &&\r\n
\r\n {items.map(store =>\r\n (\r\n \r\n ))}\r\n
\r\n );\r\n }\r\n}\r\n\r\nStoresList.propTypes = {\r\n classes: PropTypes.shape(_.mapObject(\r\n getMenuItemListStyles(),\r\n _.constant(PropTypes.string.isRequired)\r\n )).isRequired,\r\n isExpanded: PropTypes.bool.isRequired,\r\n items: PropTypes.arrayOf(PropTypes.shape({\r\n Id: PropTypes.number.isRequired,\r\n Name: PropTypes.string.isRequired,\r\n Status: PropTypes.string.isRequired,\r\n })),\r\n onStoreChange: PropTypes.func.isRequired,\r\n};\r\n\r\nStoresList.defaultProps = {\r\n items: [],\r\n};\r\n\r\nexport const StyledStoresList = withDefaultStyles(StoresList, getMenuItemListStyles);\r\n","import _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport { Mode } from '@bingads-webui-react/app-layout-container';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { QueryParam } from '@bingads-webui-react/scope-service';\r\nimport { StyledCollapsibleSideBar, withResponsiveMainMenu } from '@bingads-webui-campaign-react/main-menu';\r\nimport { withPreference } from '@bingads-webui-react/preference-context';\r\n\r\nimport { MenuItemList, StoresList } from './components';\r\nimport MenuItem from './components/menu-item';\r\nimport { getMainMenuStyles } from './styles/main-menu-styles';\r\n\r\nconst topMenuItems = [{\r\n Id: 'manage-stores-button',\r\n Name: _TL_('Manage stores'),\r\n glyphIconName: 'ba-ShoppingCart',\r\n}];\r\n\r\nconst bottomMenuItem = {\r\n Id: 'view-stores-button',\r\n Name: _TL_('View all stores'),\r\n glyphIconName: 'ba-More',\r\n isSelected: false,\r\n};\r\n\r\nclass MerchantCenterMainMenuView extends React.PureComponent {\r\n manageStoresSelectedProperty = (items) => {\r\n const { scope, i18n } = this.props;\r\n const storeId = scope.values.storeId ? scope.values.storeId : null;\r\n\r\n return _.map(items, item => ({\r\n ...item,\r\n Name: i18n.getString(item.Name),\r\n isSelected: storeId === null && item.Id === 'manage-stores-button',\r\n }));\r\n }\r\n\r\n addSelectedStoreProperty = (items) => {\r\n const { scope } = this.props;\r\n const storeId = scope.values.storeId ? scope.values.storeId : null;\r\n\r\n return _.map(items, item => ({\r\n ...item,\r\n isSelected: storeId === item.Id,\r\n }));\r\n }\r\n\r\n render() {\r\n const {\r\n mode,\r\n i18n,\r\n onMenuItemClick,\r\n onStoreChange,\r\n stores,\r\n onToggle,\r\n isPanelMode,\r\n } = this.props;\r\n const isExpanded = isPanelMode || mode === Mode.Expanded;\r\n\r\n return (\r\n \r\n \r\n \r\n {stores.length >= 10 ?\r\n \r\n \r\n :\r\n null\r\n }\r\n \r\n );\r\n }\r\n}\r\n\r\nMerchantCenterMainMenuView.propTypes = {\r\n mode: PropTypes.string.isRequired,\r\n onToggle: PropTypes.func.isRequired,\r\n onMenuItemClick: PropTypes.func.isRequired,\r\n onStoreChange: PropTypes.func.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n preferenceService: PropTypes.shape({\r\n setAtUserLevel: PropTypes.func,\r\n findByNameAtUserLevel: PropTypes.func,\r\n }).isRequired,\r\n scope: PropTypes.instanceOf(QueryParam).isRequired,\r\n stores: PropTypes.arrayOf(PropTypes.shape({\r\n Id: PropTypes.number,\r\n Name: PropTypes.string,\r\n Status: PropTypes.string,\r\n })),\r\n isPanelMode: PropTypes.bool.isRequired,\r\n};\r\n\r\nMerchantCenterMainMenuView.defaultProps = {\r\n stores: [],\r\n};\r\n\r\nexport const StyledMerchantCenterMainMenuView = withPreference(withResponsiveMainMenu(withDefaultStyles(MerchantCenterMainMenuView, getMainMenuStyles)));\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { compose } from 'underscore';\r\nimport { QueryParam, withScope } from '@bingads-webui-react/scope-service';\r\nimport { withPermissions } from '@bingads-webui-react/hoc-with-permissions';\r\nimport { withI18nConsumer } from '@bingads-webui-react/i18n-context';\r\nimport { storeQueries as defaultStoreQueries, MmcDataSourceInitializer } from '@bingads-webui-campaign-react/merchant-shared';\r\nimport { withInstrumentation } from '@bingads-webui-react/hoc-with-instrumentation';\r\nimport { MERCHANT_MAIN_MENU_MODE } from '@bingads-webui-campaign-react/shell-ui-common';\r\nimport { StyledMerchantCenterMainMenuView } from './merchant-center-main-menu-view';\r\nimport { updateUrlOnManageStores, updateUrlOnStoreChange } from './helpers/router-helper';\r\n\r\nclass MerchantCenterMainMenuAdapter extends React.PureComponent {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n stores: [],\r\n isLoadingData: true,\r\n };\r\n this.mainMenuScenario = props.instrumentation.createScenarioAndActivity({\r\n scenarioName: 'merchantCenterMainMenuScenario',\r\n activityName: 'toggleMainMenuActivity',\r\n }).scenario;\r\n }\r\n\r\n componentDidMount = () => {\r\n this.queryStores();\r\n }\r\n\r\n onManageStoresClick = (node) => {\r\n const { scope } = this.props;\r\n updateUrlOnManageStores(node, scope);\r\n }\r\n\r\n onStoreChange = (node) => {\r\n const {\r\n scope,\r\n } = this.props;\r\n updateUrlOnStoreChange(node, scope);\r\n }\r\n\r\n queryStores = () => {\r\n const { storeQueries } = this.props;\r\n storeQueries.getStoresForMainMenu().then((stores) => {\r\n this.setState({ stores, isLoadingData: false });\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nMerchantCenterMainMenuAdapter.propTypes = {\r\n scope: PropTypes.instanceOf(QueryParam).isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n storeQueries: PropTypes.shape({\r\n getStores: PropTypes.func,\r\n }),\r\n instrumentation: PropTypes.shape({\r\n createScenarioAndActivity: PropTypes.func,\r\n }).isRequired,\r\n};\r\n\r\nMerchantCenterMainMenuAdapter.defaultProps = {\r\n storeQueries: defaultStoreQueries,\r\n};\r\n\r\nexport const MerchantCenterMainMenu = compose(\r\n withI18nConsumer,\r\n withPermissions,\r\n withScope,\r\n withInstrumentation\r\n)(MerchantCenterMainMenuAdapter);\r\n","import { $current } from '@bingads-webui-react/scope-service';\r\n\r\nexport const updateUrlOnManageStores = (node, scope) => {\r\n const storeId = scope.values.storeId ? scope.values.storeId : null;\r\n if (storeId) {\r\n scope.remove('storeId');\r\n }\r\n scope.save('/campaign/vnext/merchantcenter/stores');\r\n};\r\n\r\nexport const updateUrlOnStoreChange = (node, scope) => {\r\n const storeId = scope.values.storeId ? scope.values.storeId : null;\r\n if (node.Id === null || node.Id === 'menu-item-manage-stores-button') {\r\n scope.remove('storeId');\r\n } else if (storeId !== node.Id) {\r\n scope.set({\r\n cid: $current,\r\n aid: $current,\r\n uid: $current,\r\n storeId: node.Id,\r\n });\r\n } else {\r\n return;\r\n }\r\n\r\n scope.save();\r\n};\r\n","import PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport React, { useState, useCallback, useContext } from 'react';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Callout, DirectionalHint, PrimaryButton, IconButton } from '@fluentui/react';\r\nimport { ScopeContext } from '@bingads-webui-react/scope-service';\r\nimport { getResponseErrors } from '@bingads-webui-campaign-react/merchant-shared';\r\nimport { notificationApi } from '@bingads-webui-campaign/notification-center';\r\nimport { ActivityContext } from '@bingads-webui-react/hoc-with-signal';\r\n\r\nconst FEED_IMPORT_DESCRIPTIONS = [\r\n _TL_('The upcoming changes will enhance your workflow and simplify the overall process.'),\r\n _TL_('Product will be imported with their corresponding Feed label from Google.'),\r\n _TL_('All imported products will be consolidated into a single GMC Import feed.'),\r\n _TL_('Your products\\' country of sale will be backfilled if the feed label is a 2-letter country code.'),\r\n _TL_('If the feed label is not a 2-letter country code, we’ll make a best effort to backfill the country of sale using the shipping settings.'),\r\n _TL_('The feed details for the new consolidated Google import feed will be accessible from the Import page.'),\r\n];\r\n\r\nconst getStyles = (_, { palette = {} }) => ({\r\n GmcMigrationTeachingBubble: {\r\n '& .ms-Callout-main': {\r\n padding: '20px',\r\n },\r\n '& .gmc-migration-teaching-bubble__header': {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n\r\n '& .title': {\r\n fontSize: '24px',\r\n fontWeight: 'bold',\r\n },\r\n\r\n '& .close-button': {\r\n color: palette.neutralPrimary,\r\n },\r\n },\r\n '& .gmc-migration-teaching-bubble__content': {\r\n margin: '8px 0',\r\n },\r\n '& .gmc-migration-teaching-bubble__footer': {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n },\r\n },\r\n});\r\n\r\nexport const GmcMigrationTeachingBubble = ({\r\n targetId,\r\n onDismiss,\r\n importQueries,\r\n}) => {\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getStyles);\r\n const logger = useContext(ActivityContext);\r\n const [stepId, setStepId] = useState(0);\r\n const {\r\n scope: {\r\n values: {\r\n storeId,\r\n },\r\n },\r\n } = useContext(ScopeContext);\r\n\r\n const triggerMigration = useCallback(() => {\r\n logger.trace('Upgrade button clicked');\r\n\r\n importQueries.triggerMigration(storeId)\r\n .then(() => {\r\n // refresh the page to show the new feed and import\r\n notificationApi.showInfo(i18n.getString(_TL_('Upgrade triggered successful. It will take around 3 days to complete. Refreshing the page to load the latest data...')));\r\n window.location.reload();\r\n })\r\n .catch((error) => {\r\n const errors = getResponseErrors(error, i18n);\r\n notificationApi.showWarning(errors[0].LocalizedMessage);\r\n });\r\n }, [logger, importQueries, storeId, i18n]);\r\n\r\n return (\r\n \r\n
\r\n
{i18n.getString(_TL_('Feed import updates'))}
\r\n \r\n
\r\n
\r\n {i18n.getString(FEED_IMPORT_DESCRIPTIONS[stepId])}\r\n
\r\n
\r\n
\r\n {i18n.getString(_TL_('{{currentPageId}} of {{totalPageCount}}'), {\r\n currentPageId: stepId + 1,\r\n totalPageCount: FEED_IMPORT_DESCRIPTIONS.length,\r\n })}\r\n
\r\n {stepId < FEED_IMPORT_DESCRIPTIONS.length - 1 ? (\r\n setStepId(stepId + 1)}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n\r\nGmcMigrationTeachingBubble.propTypes = {\r\n targetId: PropTypes.string.isRequired,\r\n onDismiss: PropTypes.func.isRequired,\r\n importQueries: PropTypes.shape({\r\n triggerMigration: PropTypes.func.isRequired,\r\n }).isRequired,\r\n};\r\n","import classNames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport React, { useCallback, useContext, useEffect, useState } from 'react';\r\nimport { TopBanner } from '@bingads-webui-react/notification-center';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { ScopeContext } from '@bingads-webui-react/scope-service';\r\nimport { importQueries as defaultImportQueries, getResponseErrors } from '@bingads-webui-campaign-react/merchant-shared';\r\nimport { notificationApi } from '@bingads-webui-campaign/notification-center';\r\nimport { Activity, Scenario, ActivityContext } from '@bingads-webui-react/hoc-with-signal';\r\nimport { GmcMigrationTeachingBubble } from './gmc-migration-teaching-bubble';\r\n\r\nconst MIGRATION_STATUS = {\r\n NO_MIGRATION: 'NoMigration',\r\n NEED_MIGRATION: 'NeedMigration',\r\n DURING_MIGRATION: 'DuringMigration',\r\n MIGRATED: 'Migrated',\r\n};\r\n\r\nconst getStyles = (_, { palette = {} }) => ({\r\n MmcNotificationTopBanner: {\r\n '& .notification-center-top-banner': {\r\n background: palette.themeLighterAlt,\r\n\r\n '& .iconba-CriticalErrorSolid': {\r\n color: palette.black,\r\n '&::before': {\r\n content: '\"\\\\E946\"',\r\n },\r\n },\r\n\r\n '& a.HelpTopic': {\r\n margin: '0 5px',\r\n },\r\n },\r\n },\r\n});\r\n\r\nconst getGmcMigrationNotification = ({\r\n migrationStatus,\r\n i18n,\r\n triggerTeachingBubble,\r\n confirmMigration,\r\n}) => {\r\n if (migrationStatus === MIGRATION_STATUS.NEED_MIGRATION) {\r\n return {\r\n notificationId: 'gmc-migration-need-migration',\r\n message: (\r\n (\r\n {text}\r\n ),\r\n }}\r\n template={i18n.getString(_TL_('Feed import is changing. Click {{link}}here to learn more{{/link}} about the upcoming changes. Click the Upgrade button to try the new experience today.'))}\r\n />\r\n ),\r\n actionList: [\r\n {\r\n text: i18n.getString(_TL_('Upgrade')),\r\n action: triggerTeachingBubble,\r\n },\r\n ],\r\n };\r\n } else if (migrationStatus === MIGRATION_STATUS.DURING_MIGRATION) {\r\n return {\r\n notificationId: 'gmc-migration-during-migration',\r\n message: i18n.getString(_TL_('We\\'re upgrading you to the new feed import experience. Click the button to learn more.')),\r\n actionList: [\r\n {\r\n text: i18n.getString(_TL_('Learn more')),\r\n extraClassNames: ['HelpTopic'],\r\n extraAttrs: {\r\n query: 'help:56870',\r\n },\r\n },\r\n ],\r\n };\r\n } else if (migrationStatus === MIGRATION_STATUS.MIGRATED) {\r\n return {\r\n notificationId: 'gmc-migration-migrated',\r\n message: i18n.getString(_TL_('You\\'ve been upgraded to the new feed import experience. Click the button to learn more.')),\r\n actionList: [\r\n {\r\n text: i18n.getString(_TL_('Learn more')),\r\n extraClassNames: ['HelpTopic'],\r\n extraAttrs: {\r\n query: 'help:56870',\r\n },\r\n },\r\n ],\r\n // confirm migration on dismiss, which will send a confirmation to the backend and refresh the notification\r\n onDismiss: confirmMigration,\r\n };\r\n }\r\n return null;\r\n};\r\n\r\nconst MmcNotificationTopBanner = ({\r\n importQueries,\r\n}) => {\r\n const i18n = useContext(I18nContext);\r\n const classes = useDefaultStyles(getStyles);\r\n const logger = useContext(ActivityContext);\r\n const {\r\n scope: {\r\n values: {\r\n storeId,\r\n },\r\n },\r\n } = useContext(ScopeContext);\r\n const [migrationStatus, setMigrationStatus] = useState(MIGRATION_STATUS.NO_MIGRATION);\r\n const [notifications, setNotifications] = useState([]);\r\n const [isTeachingBubbleVisible, setIsTeachingBubbleVisible] = useState(false);\r\n\r\n const getMigrationStatus = useCallback(() => {\r\n importQueries.getMigrationStatus(storeId)\r\n .then(({ MigrationStatus: status }) => {\r\n setMigrationStatus(status);\r\n })\r\n .catch(() => {\r\n setMigrationStatus(MIGRATION_STATUS.NO_MIGRATION);\r\n });\r\n }, [importQueries, storeId]);\r\n\r\n const confirmMigration = useCallback(() => {\r\n logger.trace('Dismissed notification, confirming migration');\r\n\r\n importQueries.confirmMigration(storeId)\r\n .then(() => {\r\n getMigrationStatus();\r\n })\r\n .catch((error) => {\r\n const errors = getResponseErrors(error, i18n);\r\n notificationApi.showWarning(errors[0].LocalizedMessage);\r\n });\r\n }, [logger, importQueries, storeId, getMigrationStatus, i18n]);\r\n\r\n // Initial fetch\r\n useEffect(() => {\r\n if (!storeId) {\r\n setMigrationStatus(MIGRATION_STATUS.NO_MIGRATION);\r\n return;\r\n }\r\n getMigrationStatus();\r\n }, [getMigrationStatus, i18n, importQueries, storeId]);\r\n\r\n const triggerTeachingBubble = useCallback(() => {\r\n logger.trace('Triggered teaching bubble');\r\n\r\n setIsTeachingBubbleVisible(true);\r\n }, [logger]);\r\n\r\n // When migration status changes, update notification\r\n useEffect(() => {\r\n const notification = getGmcMigrationNotification({\r\n migrationStatus,\r\n i18n,\r\n triggerTeachingBubble,\r\n confirmMigration,\r\n });\r\n setNotifications(notification ? [notification] : []);\r\n\r\n if (notification) {\r\n logger.trace(`Notification displayed: ${migrationStatus}`);\r\n }\r\n }, [confirmMigration, i18n, logger, migrationStatus, triggerTeachingBubble]);\r\n\r\n return (\r\n
\r\n message} />\r\n {isTeachingBubbleVisible && setIsTeachingBubbleVisible(false)}\r\n importQueries={importQueries}\r\n />}\r\n
\r\n );\r\n};\r\n\r\nMmcNotificationTopBanner.propTypes = {\r\n importQueries: PropTypes.shape({\r\n getMigrationStatus: PropTypes.func.isRequired,\r\n triggerMigration: PropTypes.func.isRequired,\r\n confirmMigration: PropTypes.func.isRequired,\r\n }),\r\n};\r\n\r\nMmcNotificationTopBanner.defaultProps = {\r\n importQueries: defaultImportQueries,\r\n};\r\n\r\nconst MmcNotificationTopBannerWithActivity = props => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport { MmcNotificationTopBannerWithActivity as MmcNotificationTopBanner };\r\n","import URI from 'urijs';\r\n\r\nexport function isSDK(href = window.location.href) {\r\n const uri = new URI(href);\r\n return uri.search(true).isSDK === 'true';\r\n}\r\n\r\nexport function isSDKPhase2Enabled(href = window.location.href) {\r\n const uri = new URI(href);\r\n return isSDK(href) && uri.search(true).isSDKPhase2Enabled === 'true';\r\n}\r\n\r\nexport function getSDKParams(href = window.location.href) {\r\n const uri = new URI(href);\r\n const search = uri.search(true);\r\n return {\r\n finalUrl: search.finalUrl || '',\r\n mkt: search.mkt || 'en-us',\r\n country: search.country || 'US',\r\n campaignNamePrefix: decodeURIComponent(search.campaignNamePrefix || 'SDK'),\r\n };\r\n}\r\n\r\nexport function getSDKCampaignName(href = window.location.href) {\r\n const prefix = getSDKParams(href).campaignNamePrefix;\r\n\r\n return `${prefix}-Performance-Max-${Date.now()}`;\r\n}\r\n\r\nexport function getLanguageFromMkt(mkt: string) {\r\n const languageMap = {\r\n 'en-us': 'English',\r\n 'de-de': 'German',\r\n 'fr-fr': 'French',\r\n 'it-it': 'Italian',\r\n 'ja-jp': 'Japanese',\r\n 'es-es': 'Spainish',\r\n 'pt-br': 'Portuguese',\r\n 'zh-tw': 'TraditionalChinese',\r\n };\r\n\r\n return languageMap[mkt] || 'English';\r\n}\r\n\r\nexport function getFinalURL(href = window.location.href) {\r\n return getSDKParams(href).finalUrl;\r\n}\r\n\r\nexport function isSdkLoginCompleted(href = window.location.href) {\r\n const uri = new URI(href);\r\n return uri.search(true).sdkLoginCompleted === 'true';\r\n}\r\n\r\nexport const isSDKUrlParam = 'isSDK';\r\n\r\nexport const isSDKCouponEnabledParam = 'isSDKCouponEnabled';\r\n\r\nexport const isSDKSignupNewCustomerParam = 'isSdkSignupNewCustomer';\r\n\r\nexport function isFirefoxSDKSignupScenario() {\r\n /* istanbul ignore next */\r\n return isSDK() && navigator.userAgent.toLowerCase().indexOf('firefox') !== -1 && window.location.href.toLowerCase().indexOf('pmaxlite/signup') !== -1;\r\n}\r\n\r\nexport function getSignoutUrl() {\r\n const isSignupFlow = window.location.pathname.toLowerCase().indexOf('signup') !== -1;\r\n const sdkLoginPagePath = `campaign/sdk?RURL=${encodeURIComponent(window.location.href)}&sdksignup=${isSignupFlow}`;\r\n return `${window.location.protocol}//${window.location.host}/${sdkLoginPagePath}`;\r\n}\r\n"],"names":["getMenuItemStyles","menuItem","_ref","outlineColor","_ref$palette","palette","baseMenuItem","height","fontFamily","fontWeight","lineHeight","display","flexDirection","padding","border","textDecoration","alignItems","width","textAlign","minWidth","borderRadius","neutralSecondary","outline","concat","outlineOffset","color","white","normalMenuItem","backgroundColor","neutralPrimaryAlt","mainMenuHoverBackground","selectedMenuItem","beforeIcon","borderLeft","themePrimary","marginRight","alignSelf","iconContainer","marginLeft","marginTop","marginBottom","fontSize","storeIconContainer","statusIconContainer","activeStatusIcon","top","margin","pendingStatusIcon","rejectedStatusIcon","collapsedStoreIcon","background","selectedCollapsedStoreIcon","textContainer","overflow","textOverflow","flex","whiteSpace","typeSelectionIcon","placeholderTextContainer","GetNodeClassNames","node","classes","classNames","isSelected","Id","abbreviateStoreName","storeName","length","splitStoreName","split","slice","reduce","response","word","MenuItem","renderText","onItemClick","cnames","_jsx","OverlayTrigger","placement","overlay","Tooltip","id","children","Name","_jsxs","Button","className","btnStyle","onClick","Glyphicon","glyphIconName","glyph","defaultProps","withDefaultStyles","getMenuItemListStyles","menuList","listStyle","MenuItemList","_React$PureComponent","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","value","_this$props","this","props","items","isExpanded","onMenuItemClick","classList","_toConsumableArray","map","item","React","StyledMenuItemList","StoreIcon","icon","iconStatusClassName","Status","StoresList","onStoreChange","style","store","StyledStoresList","topMenuItems","_TL_","bottomMenuItem","MerchantCenterMainMenuView","_this","_len","args","Array","_key","manageStoresSelectedProperty","scope","i18n","storeId","values","_","_objectSpread","getString","addSelectedStoreProperty","_this$props2","mode","stores","onToggle","isPanelMode","Mode","Expanded","StyledCollapsibleSideBar","position","bottom","StyledMerchantCenterMainMenuView","withPreference","withResponsiveMainMenu","mainMenu","mainMenuContainer","transition","hidden","divider","borderTop","MerchantCenterMainMenuAdapter","componentDidMount","queryStores","onManageStoresClick","remove","save","updateUrlOnManageStores","set","cid","$current","aid","uid","updateUrlOnStoreChange","storeQueries","getStoresForMainMenu","then","setState","isLoadingData","state","mainMenuScenario","instrumentation","createScenarioAndActivity","scenarioName","activityName","scenario","MmcDataSourceInitializer","modePreferenceName","MERCHANT_MAIN_MENU_MODE","defaultStoreQueries","MerchantCenterMainMenu","compose","withI18nConsumer","withPermissions","withScope","withInstrumentation","FEED_IMPORT_DESCRIPTIONS","getStyles","GmcMigrationTeachingBubble","justifyContent","neutralPrimary","_ref2","targetId","onDismiss","importQueries","useContext","I18nContext","useDefaultStyles","logger","ActivityContext","_useState","useState","_useState2","_slicedToArray","stepId","setStepId","ScopeContext","triggerMigration","useCallback","trace","notificationApi","showInfo","window","location","reload","catch","error","errors","getResponseErrors","showWarning","LocalizedMessage","Callout","target","calloutProps","directionalHint","DirectionalHint","bottomCenter","calloutWidth","IconButton","iconProps","iconName","currentPageId","totalPageCount","PrimaryButton","text","MIGRATION_STATUS","MmcNotificationTopBanner","themeLighterAlt","black","content","_ref3","migrationStatus","setMigrationStatus","_useState3","_useState4","notifications","setNotifications","_useState5","_useState6","isTeachingBubbleVisible","setIsTeachingBubbleVisible","getMigrationStatus","_ref4","status","MigrationStatus","confirmMigration","useEffect","triggerTeachingBubble","notification","notificationId","message","ReactTemplate","model","link","HelpLink","query","template","actionList","action","extraClassNames","extraAttrs","getGmcMigrationNotification","TopBanner","Wrapper","_ref5","defaultImportQueries","MmcNotificationTopBannerWithActivity","Scenario","name","Activity","isSDK","href","search","getSDKParams","finalUrl","mkt","country","campaignNamePrefix","decodeURIComponent","getSDKCampaignName","Date","now","getLanguageFromMkt","getFinalURL","isSdkLoginCompleted","sdkLoginCompleted","isFirefoxSDKSignupScenario","navigator","userAgent","toLowerCase","indexOf","getSignoutUrl","isSignupFlow","pathname","sdkLoginPagePath","encodeURIComponent","protocol","host"],"sourceRoot":""}