{"version":3,"sources":["../webpack/bootstrap","../../../../../../../../external/prop-types","../../../../../../../../external/@bingads-webui/keycode","../../../../../../../../external/react","../webpack-src:/focus-lock/index.js","../webpack-src:/focus-lock/src/focus-lock.js","../webpack-src:/focus-lock/src/focus-utils.js","../../../../../../../../external/underscore","../../../../../../../../external/@bingads-webui-react/i18n-context","../webpack-src:/ad-placement-layouts/index.js","../webpack-src:/ad-placement-layouts/src/index.js","../webpack-src:/ad-placement-layouts/src/single-placement/index.js","../../../../../../../../external/classnames","../../../../../../../../external/@bingads-webui-react/with-default-styles","../webpack-src:/ad-placement-layouts/src/single-placement/styles.js","../webpack-src:/ad-placement-layouts/src/carousel/index.js","../webpack-src:/ad-placement-layouts/src/carousel/preview-carousel.js","../../../../../../../../external/@bingads-webui-react/primitive-unthemed","../webpack-src:/ad-placement-layouts/src/carousel/styles.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/header.js","../../../../../../../../external/@bingads-webui-react/fabric-control","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/styles/header.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/validation-message.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/styles/validation-message.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/disclaimer-message.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/styles/disclaimer-message.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/footer-button.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/styles/footer-button.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/all-placements.js","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/all-placements-panel/index.js","../../../../../../../../external/@bingads-webui-campaign-react/ad-placements-grid-preview","../webpack-src:/ad-placement-layouts/src/carousel/carousel-decorators/all-placements-panel/styles.js","../webpack-src:/ad-placement-layouts/src/groups/index.js","../webpack-src:/ad-placement-layouts/src/groups/controls.js","../webpack-src:/ad-placement-layouts/src/groups/styles.js","../../../../../../../../external/tc39-proposal-temporal","../../../../../../../../external/@bingads-webui-universal/temporal-utitlities","../../../../../../../../external/@fluentui/react","../webpack-src:/quick-date-left-right-picker/index.ts","../webpack-src:/quick-date-left-right-picker/src/quick-date-left-right-picker.tsx","../webpack-src:/quick-date-left-right-picker/src/utils.tsx","../webpack-src:/quick-date-left-right-picker/src/style.tsx","../../../node_modules/@bingads-webui-adlibrary/common-components/assets/restricted.svg","../../../node_modules/@bingads-webui-adlibrary/ad-preview/src/ad-preview.js","../webpack-src:/keycode/index.js","../webpack-src:/keycode/src/keyCode.js","../webpack-src:/keycode/src/keyName.js","../webpack-src:/image-experience-model/index.js","../webpack-src:/image-experience-model/src/index.js","../webpack-src:/image-experience-model/src/constants.js","../webpack-src:/image-experience-model/src/image-experience-image.js","../../../../../../../../external/@bingads-webui-universal/primitive-utilities","../../../../../../../../external/bluebird","../../../../../../../../external/@bingads-webui-campaign/media-metadata-model","../webpack-src:/ad-placements-grid-preview/index.js","../webpack-src:/ad-placements-grid-preview/src/index.js","../webpack-src:/ad-placements-grid-preview/src/ad-placements-grid-preview.js","../webpack-src:/ad-placements-grid-preview/src/ad-placements-grid-preview-panel.js","../../../../../../../../external/@bingads-webui-campaign-react/ad-placement-consts","../../../../../../../../external/@bingads-webui-campaign-react/ad-placement-templates","../webpack-src:/ad-placement-connector/index.js","../webpack-src:/ad-placement-connector/src/index.js","../webpack-src:/ad-placement-connector/src/image-extension/index.js","../webpack-src:/ad-placement-connector/src/common/index.js","../../../../../../../../external/@bingads-webui/url-util","../webpack-src:/ad-placement-connector/src/msan-image-ad/index.js","../webpack-src:/ad-placement-connector/src/perf-max/index.js","../webpack-src:/ad-placement-connector/src/search-image-ad/index.js","../webpack-src:/ad-placement-connector/src/streamlined-signup/index.js","../webpack-src:/ad-placement-connector/src/ad-library/index.js","../../../../../../../../external/@bingads-webui-campaign-react/image-experience-model","../webpack-src:/image-experience-utils/index.js","../webpack-src:/image-experience-utils/src/index.js","../webpack-src:/image-experience-utils/src/get-cropped-image.js","../webpack-src:/image-experience-utils/src/get-smart-cropped-image.js","../../../../../../../../external/@bingads-webui-campaign/media-common-utils","../webpack-src:/image-experience-utils/src/validate-crop-settings.js","../webpack-src:/image-experience-utils/src/get-generic-image-object.js","../webpack-src:/image-experience-utils/src/update-placement-with-bulk-crop-settings.js","../../../../../../../../external/@bingads-webui-campaign-react/asset-library-model","../webpack-src:/image-experience-utils/src/image-size-validation.js","../webpack-src:/single-month-calendar/index.js","../webpack-src:/single-month-calendar/src/single-month-calendar.js","../webpack-src:/single-month-calendar/src/day-item.js","../webpack-src:/single-month-calendar/src/calendar-month.js","../webpack-src:/single-month-calendar/src/constants.js","../webpack-src:/single-month-calendar/src/month-item.js","../../../../../../../../packages/single-month-calendar/src/month-calender.less?e924","../webpack-src:/single-month-calendar/src/month-calender.less","../webpack-src:/single-month-calendar/src/calendar-year.js","../webpack-src:/single-month-calendar/src/year-item.js","../../../../../../../../external/@bingads-webui-universal/accessibility-helper","../webpack-others:/node_modules/css-loader/lib/css-base.js","../webpack-others:/node_modules/style-loader/addStyles.js","../../../../../../../../external/@bingads-webui-react/hoc-with-managed-focuser","../../../../../../../../external/@bingads-webui-react/hoc-with-arrow-keys","../../../../../../../../external/hoist-non-react-statics","../../../../../../../../external/@bingads-webui-react/hoc-utils","../webpack-src:/hoc-with-managed-focuser/index.js","../webpack-src:/hoc-with-managed-focuser/src/hoc.js","../webpack/universalModuleDefinition","../webpack-src:/safe-json/index.ts","../webpack-src:/safe-json/src/index.ts","../webpack-src:/ad-placement-factory/index.js","../webpack-src:/ad-placement-factory/src/index.js","../../../../../../../../external/@bingads-webui-campaign-react/ad-placement-connector","../../../../../../../../external/@bingads-webui-campaign-react/ad-placement-layouts","../../../../../../../../external/@bingads-webui-campaign-react/ad-placement-view","../../../../../../../../external/@bingads-webui-campaign/image-experience-utils","../webpack-src:/ad-placement-factory/media/191to1.jpg","../webpack-src:/cropped-image-view/index.js","../webpack-src:/cropped-image-view/src/index.js","../webpack-src:/cropped-image-view/src/cropped-image-view.js","../../../../../../../../external/@bingads-webui-theme-2018/theme-fluent","../webpack-src:/help/index.js","../webpack-src:/help/src/disclaimer-banner.js","../webpack-src:/help/src/learn-more-link.js","../webpack-src:/help/src/i18n-mapper.js","../webpack-src:/help/src/disclaimer-banner-style.js","../webpack-src:/help/src/help-icon.js","../../../../../../../../external/@bingads-webui-universal/observable","../webpack-src:/hoc-with-arrow-keys/index.js","../webpack-src:/hoc-with-arrow-keys/src/hoc.js","../webpack-src:/backbone-instance-wrapper/index.js","../webpack-src:/backbone-instance-wrapper/src/index.js","../../../../../../../../external/pug-runtime","../webpack-src:/file-picker/index.js","../webpack-src:/file-picker/src/view/index.es","../webpack-src:/file-picker/src/viewmodel/index.es","../../../../../../../../external/path-browserify","../webpack-src:/file-picker/src/template/index.pug","../../../../../../../../external/knockout","../../../../../../../../external/backbone","../webpack-src:/common-styles/index.js","../webpack-src:/common-styles/src/shared-styles-from-theme-fluent.js","../webpack-src:/common-styles/src/ad-customizers-style.js","../webpack-src:/common-styles/src/audience-selector-style.js","../webpack-src:/common-styles/src/double-list-box-style.js","../webpack-src:/common-styles/src/utils/convert-style.js","../webpack-src:/common-styles/src/glyph-icon-style.js","../webpack-src:/common-styles/src/ad-column-preview-style.js","../webpack-src:/common-styles/src/ad-suggestion-style.js","../webpack-src:/common-styles/src/react-modal-style.js","../webpack-src:/common-styles/src/table-style.js","../webpack-src:/common-styles/src/react-ui-blocker-style.js","../webpack-src:/common-styles/src/message-bar-style.js","../webpack-src:/common-styles/src/link-style.js","../webpack-src:/common-styles/src/learn-more-style.js","../webpack-src:/common-styles/src/local-blocker.js","../webpack-src:/common-styles/src/advanced-settings-section-style.js","../webpack-src:/common-styles/src/uurl-test-tool-style.js","../webpack-src:/common-styles/src/container-budget-style.js","../webpack-src:/common-styles/src/location-bid-grid-style.js","../webpack-src:/common-styles/src/location-cell-status-style.js","../webpack-src:/common-styles/src/keyword-planner-style.js","../webpack-src:/common-styles/src/location-map-style.js","../webpack-src:/common-styles/src/map-style.js","../webpack-src:/common-styles/src/target-location-recommendation-style.js","../webpack-src:/common-styles/src/crud-ad-style.js","../webpack-src:/common-styles/src/phone-frame-style.js","../webpack-src:/common-styles/src/truncated-style.js","../webpack-src:/common-styles/src/modal-container-style.js","../webpack-src:/common-styles/media/BingSearch.png","../webpack-src:/common-styles/src/shared-budget-grid-wrapper.js","../webpack-src:/common-styles/src/estimation-result-style.js","../webpack-src:/common-styles/src/audience-association-section-style.js","../webpack-src:/common-styles/src/audience-bulk-association-style.js","../webpack-src:/common-styles/src/extension-editor-style.js","../webpack-src:/common-styles/src/select-element-style.js","../webpack-src:/common-styles/src/image-experience-content-style.js","../webpack-src:/common-styles/src/edit-image-common-style.js","../webpack-src:/common-styles/src/audience-reach-estimate-container-style.js","../webpack-src:/common-styles/src/audience-modal-styles.js","../webpack-src:/common-styles/src/uet-tag-selector-style.js","../webpack-src:/common-styles/src/kendo-multi-select-style.js","../webpack-src:/common-styles/src/audience-combined-list-style.js","../webpack-src:/common-styles/src/audience-expression-styles.js","../webpack-src:/common-styles/src/uet-tag-manage-dialog-style.js","../webpack-src:/common-styles/src/date-filter-style.js","../webpack-src:/common-styles/src/utils/merge-style.js","../webpack-src:/common-styles/src/keyword-toolbar-style.js","../webpack-src:/common-styles/src/crud-keyword-style.js","../webpack-src:/common-styles/src/ads-extentions-doublelist-style.js","../webpack-src:/common-styles/src/input-field-style.js","../webpack-src:/common-styles/src/summary-page-style.js","../webpack-src:/common-styles/src/competition-card-style.js","../webpack-src:/common-styles/media/CircleSolidSmall.svg","../webpack-src:/common-styles/media/DiamondSolidSmall.svg","../webpack-src:/common-styles/media/TriangleDownSolidSmall.svg","../webpack-src:/common-styles/media/TriangleUpSolidSmall.svg","../webpack-src:/common-styles/media/SquareSolidSmall.svg","../webpack-src:/common-styles/src/google-import-style.js","../webpack-src:/common-styles/src/experiment-settings-style.js","../webpack-src:/common-styles/src/product-groups-style.js","../webpack-src:/common-styles/src/grid-popup-editor.js","../webpack-src:/common-styles/src/predicate-value-editor-style.js","../webpack-src:/common-styles/src/uet-tag-viewer-style.js","../webpack-src:/common-styles/src/dialog-style.js","../webpack-src:/common-styles/src/progress-bar-style.js","../webpack-src:/common-styles/src/panel-callout-style.js","../webpack-src:/common-styles/src/color-picker-style.js","../webpack-src:/common-styles/src/grid-column-style.js","../webpack-src:/common-styles/src/campaign-multi-selector-without-dropdown-style.js","../webpack-src:/common-styles/src/label-popup-style.js","../webpack-src:/common-styles/src/delivery-column-style.js","../webpack-src:/common-styles/src/label-column-header-style.js","../webpack-src:/common-styles/src/labels-cell-item-style.js","../webpack-src:/common-styles/src/quality-score-popup-style.js","../webpack-src:/common-styles/src/delete-column-modal-style.js","../webpack-src:/common-styles/src/ad-extentions-item-template-styles.js","../webpack-src:/common-styles/src/fluctuation-insights-style.js","../webpack-src:/common-styles/media/CircleSolid.svg","../webpack-src:/common-styles/media/CircleDotted.svg","../webpack-src:/common-styles/media/DiamondSolid.svg","../webpack-src:/common-styles/media/DiamondDotted.svg","../webpack-src:/temporal-utitlities/index.js","../webpack-src:/temporal-utitlities/src/index.js","../webpack-src:/temporal-utitlities/src/date-options/default-specific-ranges.js","../webpack-src:/temporal-utitlities/src/date-options/compared-options.js","../webpack-src:/temporal-utitlities/src/date-util.js","../../../../../../../../external/@bingads-webui-universal/time-zone-converter","../webpack-src:/asset-library-model/index.js","../webpack-src:/asset-library-model/src/constants.js","../webpack-src:/asset-library-model/src/utils.js","../webpack-src:/asset-library-model/src/edit-image-utils.js","../webpack-src:/asset-library-model/src/get-date-added-options.js","../webpack-src:/asset-library-model/src/get-image-sorting-options.js","../webpack-src:/asset-library-model/src/get-import-source-options.js","../webpack-src:/asset-library-model/src/get-time-description.js","../webpack-src:/asset-library-model/src/get-asset-type-options.js","../webpack-src:/asset-library-model/src/use-clarity-hook.js","../../../../../../../../external/@bingads-webui-universal/clarity","../webpack-src:/asset-library-model/src/convert-time-duration.js","../webpack-src:/asset-library-model/src/get-search-location-options.js","../../../../../../../../external/@bingads-webui-campaign-react/upload-file-picker","../webpack-src:/primitive/index.js","../webpack-src:/primitive/src/controls.js","../webpack-src:/primitive/src/with-style-override.js","../../../../../../../../external/react-jss","../webpack-src:/primitive/src/with-custom-class-name.js","../../../../../../../../external/@bingads-webui-react/layout","../webpack-src:/primitive/src/checkbox-group.js","../webpack-src:/primitive/src/radio-group.js","../webpack-src:/progress/index.js","../webpack-src:/progress/src/progress.js","../webpack-src:/progress/src/radial-progress.js","../webpack-src:/progress/src/getStyles.js","../webpack-src:/clarity/index.js","../webpack-src:/clarity/src/index.es","../webpack-src:/shared-image-experience-styles/index.js","../webpack-src:/shared-image-experience-styles/src/imageCommonStyle.js","../webpack-src:/shared-image-experience-styles/src/palette.js","../../../../../../../../external/@bingads-webui-campaign-react/shared-image-preview-styles","../../../../../../../../external/@bingads-webui-campaign-react/common-styles","../webpack-src:/multiline-ellipsis/index.js","../webpack-src:/multiline-ellipsis/src/multi-line-ellipsis-text.js","../webpack-src:/toggle/index.js","../webpack-src:/toggle/src/toggle.js","../../../../node_modules/@bingads-webui-tool/react-app-scripts/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../../../../../../../external/@bingads-webui-react/primitive","../../../../../../../../external/@bingads-webui-react/focus-lock","../webpack-src:/compared-date-range-picker/index.js","../webpack-src:/compared-date-range-picker/src/compared-date-range-picker.js","../../../../../../../../external/uuid/v4","../../../../../../../../external/react-media","../../../../../../../../external/@bingads-webui-react/hoc-with-apply-close-button","../../../../../../../../external/@bingads-webui-react/quick-date-left-right-picker","../webpack-src:/compared-date-range-picker/src/compared-date-range-calendar.js","../webpack-src:/compared-date-range-picker/src/component/double-month-calendar.js","../../../../../../../../external/@bingads-webui-react/single-month-calendar","../webpack-src:/compared-date-range-picker/src/component/specific-select-range.js","../webpack-src:/compared-date-range-picker/src/component/specific-compare-type.js","../webpack-src:/compared-date-range-picker/src/common/compared-options.js","../webpack-src:/compared-date-range-picker/src/common/date-util.js","../webpack-src:/compared-date-range-picker/src/component/compare-toggle.js","../../../../../../../../external/@bingads-webui-react/toggle","../webpack-src:/compared-date-range-picker/src/component/date-range-container.js","../webpack-src:/compared-date-range-picker/src/component/date-range.js","../webpack-src:/compared-date-range-picker/src/common/ranges.js","../webpack-src:/compared-date-range-picker/src/common/default-specific-ranges.js","../webpack-src:/compared-date-range-picker/src/prop-types/index.js","../webpack-src:/time-zone-converter/index.js","../webpack-src:/time-zone-converter/src/time-zone-converter.es","../webpack-src:/time-zone-converter/metadata.js","../webpack-src:/fabric-control/index.js","../webpack-src:/fabric-control/src/controls.js","../webpack-src:/upload-file-picker/index.js","../webpack-src:/upload-file-picker/src/index.js","../webpack-src:/upload-file-picker/src/file-picker-view/index.js","../webpack-src:/upload-file-picker/src/file-picker-view/file-picker.js","../../../../../../../../external/@bingads-webui-campaign-react/file-dragger","../webpack-src:/upload-file-picker/src/utils/parse-file.js","../webpack-src:/upload-file-picker/src/file-picker-view/image-file-picker.js","../webpack-src:/upload-file-picker/src/utils/read-file.js","../webpack-src:/upload-file-picker/src/utils/constants.js","../webpack-src:/upload-file-picker/src/file-picker-view/video-file-picker.js","../webpack-src:/upload-file-picker/src/upload-progress-view/index.js","../webpack-src:/upload-file-picker/src/upload-progress-view/upload-assets-preview.js","../webpack-src:/upload-file-picker/src/upload-progress-view/styles/upload-assets-preview-style.js","../webpack-src:/upload-file-picker/src/upload-progress-view/upload-progress-control.js","../webpack-src:/upload-file-picker/src/upload-progress-view/progress-helpers.js","../webpack-src:/upload-file-picker/src/utils/index.js","../webpack-src:/upload-file-picker/src/utils/validate-file.js","../../../../../../../../external/@bingads-webui-campaign-react/help","../../../../../../../../external/@bingads-webui/file-picker","../../../../../../../../external/@bingads-webui-react/backbone-instance-wrapper","../../../../../../../../external/@bingads-webui-campaign/shared-image-experience-styles","../../../../../../../../external/@bingads-webui-react/progress","../../../node_modules/@bingads-webui-adlibrary/common-components/src/ad-result-card.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/utils/constants.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/advertiser-result-card.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/back-button.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/pagination.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/search-filter/config.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/search-filter/country-filter.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/date-range-picker/date-range-config.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/date-range-picker/date-range-utils.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/date-range-picker/date-range-picker.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/search-filter/date-range-filter.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/search-filter/extra-input-filter.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/shimmer-loading/spinner.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/shimmer-loading/ad-result-shimmer.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/shimmer-loading/advertiser-result-shimmer.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/error-messages/500.js","../../../node_modules/@bingads-webui-adlibrary/common-components/src/utils/helpers.js","../webpack-src:/ad-placement-templates/index.js","../webpack-src:/ad-placement-templates/src/index.js","../webpack-src:/ad-placement-templates/src/image-extension/index.js","../webpack-src:/ad-placement-templates/src/image-extension/image-191-100-audience-wide.js","../webpack-src:/ad-placement-templates/src/image-extension/image-178-100-edge-single.js","../webpack-src:/ad-placement-templates/src/image-extension/image-178-100-bing-desktop.js","../webpack-src:/ad-placement-templates/src/image-extension/image-172-100-edge-medium.js","../webpack-src:/ad-placement-templates/src/image-extension/image-169-100-msn-single.js","../webpack-src:/ad-placement-templates/src/image-extension/image-155-100-msn-medium.js","../webpack-src:/ad-placement-templates/src/image-extension/image-150-100-msn-in-article.js","../webpack-src:/ad-placement-templates/src/image-extension/image-133-100-msn-small.js","../webpack-src:/ad-placement-templates/src/image-extension/image-1-1-audience-square.js","../webpack-src:/ad-placement-templates/src/image-extension/image-093-100-msn-double.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/index.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/image-191-100-audience-wide.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/image-178-100-edge-single.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/image-150-100-msn-in-article.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/image-133-100-msn-small.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/image-1-1-audience-square.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/text-outlook-web.js","../webpack-src:/ad-placement-templates/src/msan-image-ad/text-outlook-mobile.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/index.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-178-100-edge-single.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-191-100-audience-wide.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-1-1-audience-square.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-1-1-mma-square.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-1-2-mma-vertical.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-4-1-mma-wide.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-133-100-msn-small.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-150-100-msn-in-article.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/image-191-100-mma-landscape.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/text-bing.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/text-bing-desktop.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/media/bing-desktop-header.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/text-bing-mobile.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/text-outlook-web.js","../webpack-src:/ad-placement-templates/src/perf-max-ad/text-outlook-mobile.js","../webpack-src:/ad-placement-templates/src/search-image-ad/index.js","../webpack-src:/ad-placement-templates/src/search-image-ad/image-191-100-mma-landscape.js","../webpack-src:/ad-placement-templates/src/search-image-ad/image-1-1-mma-square.js","../webpack-src:/ad-placement-templates/src/search-image-ad/image-4-1-mma-wide.js","../webpack-src:/ad-placement-templates/src/search-image-ad/image-1-2-mma-vertical.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/index.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/text-bing.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/image-191-100-audience-wide.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/image-178-100-edge-single.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/image-150-100-msn-in-article.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/image-133-100-msn-small.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/image-1-1-audience-square.js","../webpack-src:/ad-placement-templates/src/streamlined-signup/social-1-1-facebook.js","../webpack-src:/ad-placement-templates/src/ad-library/index.js","../webpack-src:/ad-placement-templates/src/ad-library/image-191-100-ad-library.js","../webpack-src:/ad-placement-templates/src/ad-library/text-bing.js","../webpack-src:/ad-placement-templates/src/utils/utils.js","../../../../../../../..","../webpack-src:/observable/index.js","../webpack-src:/observable/src/observable.js","../webpack-src:/observable/src/promisify-observable.js","../webpack-src:/image-experience-proptypes/index.js","../webpack-src:/image-experience-proptypes/src/index.js","../webpack-src:/image-experience-proptypes/src/image-model-proptypes.js","../webpack-src:/file-dragger/index.js","../webpack-src:/file-dragger/src/file-dragger.js","../webpack-src:/file-dragger/src/file-dragger-style.js","../webpack-src:/file-dragger/src/i18n/legacy-keys.js","../../../../../../../../external/react-bootstrap","../webpack-src:/primitive-unthemed/index.js","../webpack-src:/primitive-unthemed/src/controls.js","../webpack-src:/media-common-utils/index.js","../webpack-src:/media-common-utils/src/index.js","../webpack-src:/media-common-utils/src/aspect-ratio-config.js","../webpack-src:/media-common-utils/src/effect-options-config.js","../webpack-src:/media-common-utils/src/editor-title.js","../webpack-src:/media-metadata-model/index.js","../webpack-src:/media-metadata-model/src/index.js","../webpack-src:/media-metadata-model/src/image-metadata.js","../webpack-src:/media-metadata-model/src/validate-schema.js","../webpack-src:/media-metadata-model/src/property-validators/index.js","../webpack-src:/media-metadata-model/src/property-validators/type-validator.js","../webpack-src:/media-metadata-model/src/property-validators/base-validator.js","../webpack-src:/media-metadata-model/src/property-validators/enum-validator.js","../webpack-src:/media-metadata-model/src/property-validators/custom-validator.js","../webpack-src:/media-metadata-model/src/property-validators/custom/validate-color.js","../webpack-src:/media-metadata-model/src/property-validators/effect-key-validator.js","../webpack-src:/media-metadata-model/src/image-metadata-schema.js","../../../../../../../../external/@bingads-webui/safe-json","../webpack-src:/hoc-with-apply-close-button/index.js","../webpack-src:/hoc-with-apply-close-button/src/with-apply-and-close-button-hoc.js","../webpack-src:/accessibility-helper/index.js","../webpack-src:/accessibility-helper/src/event-wrappers.js","../webpack-src:/ad-placement-consts/index.js","../webpack-src:/ad-placement-consts/src/index.js","../webpack-src:/ad-placement-view/index.js","../webpack-src:/ad-placement-view/src/index.js","../webpack-src:/ad-placement-view/src/ad-placement-preview.js","../webpack-src:/ad-placement-view/src/ad-placement-card-preview.js","../../../../../../../../external/@bingads-webui-campaign/image-experience-proptypes","../webpack-src:/ad-placement-view/src/decorators/index.js","../webpack-src:/ad-placement-view/src/decorators/ads-label.js","../webpack-src:/ad-placement-view/src/decorators/styles/ads-label.js","../webpack-src:/ad-placement-view/src/decorators/boost.js","../webpack-src:/ad-placement-view/src/decorators/styles/boost.js","../webpack-src:/ad-placement-view/src/decorators/business-name-with-ads.js","../webpack-src:/ad-placement-view/src/decorators/styles/business-name-with-ads.js","../webpack-src:/ad-placement-view/src/decorators/call-to-action.js","../webpack-src:/ad-placement-view/src/decorators/styles/call-to-action.js","../webpack-src:/ad-placement-view/src/decorators/persona.js","../webpack-src:/ad-placement-view/src/decorators/styles/persona.js","../webpack-src:/ad-placement-view/src/decorators/contact.js","../webpack-src:/ad-placement-view/src/decorators/styles/contact.js","../webpack-src:/ad-placement-view/src/decorators/assets/contact-address-icon.svg","../webpack-src:/ad-placement-view/src/decorators/assets/contact-phone-icon.svg","../webpack-src:/ad-placement-view/src/decorators/text-container.js","../../../../../../../../external/@bingads-webui-react/multiline-ellipsis","../webpack-src:/ad-placement-view/src/decorators/styles/description.js","../webpack-src:/ad-placement-view/src/decorators/styles/final-url.js","../webpack-src:/ad-placement-view/src/decorators/styles/long-headline.js","../webpack-src:/ad-placement-view/src/decorators/styles/short-headline.js","../../../../../../../../external/@bingads-webui-campaign-react/cropped-image-view","../webpack-src:/ad-placement-view/src/styles/ad-placement-card-preview.js","../webpack-src:/ad-placement-view/src/styles/ad-placement-preview.js","../webpack-src:/shared-image-preview-styles/index.js","../webpack-src:/shared-image-preview-styles/src/index.js","../webpack-src:/shared-image-preview-styles/src/common-preview-container-styles.js","../webpack-src:/shared-image-preview-styles/src/crud-ad-image-preview-styles.js","../webpack-src:/shared-image-preview-styles/src/msan-preview-styles.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","__WEBPACK_EXTERNAL_MODULE__10__","__WEBPACK_EXTERNAL_MODULE__114__","__WEBPACK_EXTERNAL_MODULE__3__","_focusLock","_focusUtils","_react","_interopRequireDefault","_propTypes","_keycode","_underscore","FocusLock","React","PureComponent","constructor","props","super","_defineProperty","this","event","preventDefault","stopPropagation","setFirstFocusNode","firstFocusNode","focus","setLastFocusNode","lastFocusNode","isFocusLockStart","tabbaleNodes","getTabbableNodes","rootRef","current","length","first","last","_this$props","skipFocusOnMount","focusFirstItemOnMount","focusAsync","addDataFocus","focusFrontGuard","frontGuard","getFrontGuards","focusId","getAnchor","anchor","which","KEY_CODES","Escape","onExit","createRef","uniqueId","componentDidMount","isControlledFocusLock","document","activeElement","focusOneItemOnMount","componentDidUpdate","prevProps","_this$props2","isFocusLock","removeDataFocus","returnFocus","componentWillUnmount","render","_this$props3","className","children","lockRegionAriaLabel","default","createElement","ref","onKeyDown","exitHandler","id","data-focus-guard","tabIndex","aria-label","onFocus","onFocusBack","onFocusFront","propTypes","PropTypes","string","node","isRequired","func","bool","defaultProps","noop","QUERY_TABBABLES","join","toArray","a","ret","Array","parent","querySelector","querySelectorAll","hasAttribute","setAttribute","targetToFocusOnNext","callbackOfFocusOnNext","removeAttribute","element","callback","isReturnFocus","win","rootElement","ownerDocument","defaultView","window","getWindow","requestAnimationFrame","isFunction","preventScroll","undefined","__WEBPACK_EXTERNAL_MODULE__9__","__WEBPACK_EXTERNAL_MODULE__4__","__WEBPACK_EXTERNAL_MODULE__23__","__WEBPACK_EXTERNAL_MODULE__25__","_index","keys","forEach","_index2","_index3","_classnames","_withDefaultStyles","_styles","SinglePlacement","onRenderPlacement","classes","useDefaultStyles","getSinglePlacementStyles","singlePlacement","__WEBPACK_EXTERNAL_MODULE__34__","__WEBPACK_EXTERNAL_MODULE__35__","_interopRequireWildcard","_i18nContext","_previewCarousel","_header","_validationMessage","_disclaimerMessage","_footerButton","_allPlacements","PreviewCarouselLayout","previewElements","getImageInfoByIndex","validateImageSizeByIndex","enableAutoPlay","styleOverrides","hideHeaderButtons","hideNavigationControlsIfSingle","doesTemplateShowImageByIndex","i18n","useContext","I18nContext","getPreviewCarouselLayoutStyles","_useState2","_slicedToArray","useState","index","setIndex","isImageShown","useMemo","getSelectedImage","useCallback","imageIndex","isIncluded","isRecommended","selectedImage","isImageValid","root","Header","_extends","ValidationMessage","PreviewCarousel","DisclaimerMessage","FooterButton","AllPlacements","arrayOf","getCarouselTitleByIndex","getMinSizeByIndex","headerButtonProps","shape","disclaimerMessage","footerButtonProps","_primitiveUnthemed","PreviewCarouselRaw","e2eTestEnvironment","clearAutoRotateListener","indicators","previewCount","childElementCount","nextIndex","autoRotateListener","setTimeout","setState","direction","setAutoRotate","clearTimeout","selectedIndex","e","state","moveNavigationControlsToBottom","carouselClasses","hideNavigation","bottomCarouselNavigation","carouselNavigation","carouselRoot","Carousel","activeIndex","onSelect","handleSelect","controls","nextLabel","getString","_TL_","prevLabel","map","previewElement","Item","parseDecimal","number","StyledPreviewCarousel","withDefaultStyles","getPreviewCarouselStyles","previewCarousel","numberOfElements","__WEBPACK_EXTERNAL_MODULE__39__","_","palette","iconFontFamily","overrides","pick","extend","& .carousel-inner","paddingBottom","& > .item.active","paddingLeft","paddingRight","& ol.carousel-indicators","position","bottom","width","& li","background","border","borderRadius","margin","height","& li.active","themePrimary","& .carousel-controls","display","& .carousel-control","color","left","top","right","textShadow","&:focus","outline","neutralSecondary","&.left","marginRight","& .glyphicon-chevron-left, & .glyphicon-chevron-right","fontFamily","fontSize","lineHeight","verticalAlign","& .carousel-control.left","marginLeft","marginTop","& .carousel-control.right","& .carousel-indicators","& .carousel-inner > .item.active","minWidth","_fabricControl","SimplePreviewCarouselHeader","title","getSimplePreviewCarouselHeaderStyles","IncludeExcludeEditButtons","isIncludedImage","isRecommendedImage","getIsRequiredByIndex","getTemplateTypeByIndex","onAddAspectRatio","onRemoveAspectRatio","onEdit","getIncludeExcludeEditButtonStyles","excludeButton","exclude","onClick","disabled","data-index","actionButtons","Fragment","TooltipHost","content","calloutProps","gapSpace","ReCropReplaceButtons","onCrop","onReplace","getReCropReplaceButtonsStyles","recrop","replace","PreviewCarouselHeaderWithButtons","getPreviewCarouselHeaderWithButtonsStyles","headerRoot","buttons","shouldHideHeaderButtonsByIndex","headerStyles","header","__WEBPACK_EXTERNAL_MODULE__42__","fontWeight","&.with-additional-tag","flexDirection","alignItems","flexGrow","textAlign","getValidationMessageStyles","validationMessage","result","_getMinSizeByIndex","minHeight","messageTemplate","validationError","getDisclaimerMessageStyles","disclaimerInfo","disclaimerInfoInline","padding","getFooterButtonStyles","footerButton","onRenderIcon","buttonText","buttonClassName","ActionButton","float","& .iconba","_allPlacementsPanel","AllPlacementsCore","_useAllPlacementsPane","useAllPlacementsPanel","panelElement","enableAllPlacementsPanel","_adPlacementsGridPreview","AllPlacementsPanel","isOpen","onDismiss","cellsNumberPerRow","totalCount","onRenderCell","cellHeight","getGridPreviewCarouselStyle","AdPlacementsGridPreviewPanel","gridPreviewContainer","setIsOpen","getAdPlacementStyle","cellRoot","_objectSpread","& .edit-image-button","placementRoot","__WEBPACK_EXTERNAL_MODULE__52__","& .ms-Panel-main","@media screen and (min-width: 1377px)","& .placements-grid-preview-cell","& .preview-header","& .ad-preview-title.with-additional-tag","& .flex-grow","& .ad-preview-actions.inline-title","& > button","maxHeight","& .ad-placement-preview","& .new-responsive-ad-preview-container","& .card-parent","& .ad-placement-card-preview","& a.responsive-ad-preview-content","boxSizing","overflow","boxShadow","& .additional-disclaimer-message","& .preview-string","& .action-label","_controls","GroupsPreviewer","groups","previewers","adData","decoratorsData","images","getGroupsLayoutStyles","getCarouselOverrideStyles","activeGroupKey","setActiveGroupKey","GroupsLayoutControls","onChangeActiveGroupKey","groupContainer","Previewer","carouselContainer","inactiveGroup","imagesToDisplay","label","predicate","Pivot","selectedKey","onLinkClick","item","itemKey","group","PivotItem","headerText","channelControl","& .multi-line-processed-text","wordBreak","& .new-preview-carousel-container-adprelib ","& .ad-preview-title","& .exclude-aspect-ratio-button","& .carousel-wrapper","transform","gap","__WEBPACK_EXTERNAL_MODULE__11__","__WEBPACK_EXTERNAL_MODULE__16__","__WEBPACK_EXTERNAL_MODULE__215__","__WEBPACK_EXTERNAL_MODULE__217__","__WEBPACK_EXTERNAL_MODULE__29__","_quickDateLeftRightPicker","_utils","_style","_react2","_temporalUtitlities","QuickDateLeftRightPicker","onPickDateRanges","rangeIndex","rangeType","selectedRange","shouldShowComparedInInput","minDate","maxDate","rangeDays","dateRangeLogger","selectedComparedRange","comparedOption","comparedRangeDays","pickerStyles","_a","getNextPreviousDate","nextDate","next","previousDate","previous","_b","getNextPreviousRangeTypeIndex","isPreviousDisabled","compareCivilDate","isNextDisabled","nextComparedDate","getComparedDate","range","comparedRange","rangeId","comparedOn","previousComparedDate","useEffect","method","high","low","picker","IconButton","iconProps","iconName","ariaLabel","operation","__assign","type","getRangeString","styles","icon","disabledColor","activeColor","findKey","RANGES","v","isDateInvalid","start","getCivilDateToday","end","cRangeIndex","Today","Yesterday","maxRangeIndex","getDaysOfARange","plus","days","ThisWeek","LastWeek","maxSunday","getThisSunday","maxRange","getMaxDate","minSaturday","getNextSaturday","minRange","getMinDate","totalWeekCount","maxSaturday","minSunday","getNextSunday","daysToMaxSaturday","targetRange","ThisWeekMon","LastWeekMon","maxMonday","getThisMonday","minMonday","getNextMonday","daysToMaxSunday","ThisMonth","LastMonth","totalMonthCount","getMonthsOfARange","maxIndex","maxDateWithDay1","_tc39ProposalTemporal","CivilDate","year","month","getCivilDateMonthStart","getCivilDateMonthEnd","targetMonthDate","months","Last7Days","getNthPeriodOfFixedNDays","Last14Days","Last30Days","EntireTime","Custom","date","getTextWithRangeIndex","defaultValue","text","daysAgo","defaultRange","customRangeDays","isRangeValid","fixedNextPreviousDay","startWithDay1","nextMonthDate","lastMonthDate","getNextPreviousDateHelper","plusRangeDate","getNextNextSaturday","getLastSunday","getThisSaturday","getNextNextSunday","getLastMonday","getFixedNextPreviousDay","defaultComparedRange","targetOption","find","ComparedOptions","option","ComparedType","nextPrevious","newComparedRange_1","isDateAvailable","newComparedRange","isEmpty","distance","newDate","daysCount","includeToday","endDate","daysInRange","partialDays","Math","ceil","theme","getTheme","& .compared-date-range-picker .compared-date-range-picker-input .range-display","& .compared-date-range-picker .compared-date-range-picker-input .iconba-Calendar","& .icon-buttons","& button","& .next-button","backgroundColor","&:active","neutralPrimary","&:hover","neutralLighter","getStyles","adPreviewContainer","opacity","& .cropped-image-view","& > img","createCenterCroppedImage","url","cropHeight","cropWidth","Src","FinalSrc","Width","Height","CropSettings","SourceX","SourceY","SourceWidth","SourceHeight","associationType","UnStyledAdPreview","image","adId","imageList","placementImageFilterPredicate","template","placementTextFilterPredicate","_useSinglePlacementLa","useSinglePlacementLayouts","groupType","AdPlacementsGroupType","adLibrary","placementFilterPredicate","SinglePlacementLayout","slicedToArray","react_default","AdPreview","compose","WrappedComponent","_keyCode","_keyName","Digit1","Digit2","Digit3","Digit4","Digit5","Digit6","Digit7","Digit8","Digit9","Digit0","KeyA","KeyB","KeyC","KeyD","KeyE","KeyF","KeyG","KeyH","KeyI","KeyJ","KeyK","KeyL","KeyM","KeyN","KeyO","KeyP","KeyQ","KeyR","KeyS","KeyT","KeyU","KeyV","KeyW","KeyX","KeyY","KeyZ","Comma","Period","Semicolon","Quote","BracketLeft","BracketRight","Backquote","Backslash","Minus","Equal","IntlRo","IntlYen","AltLeft","AltRight","CapsLock","ControlLeft","ControlRight","OSLeft","OSRight","ShiftLeft","ShiftRight","ContextMenu","Enter","Space","Tab","Delete","End","Home","Insert","PageDown","PageUp","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","PrintScreen","ScrollLock","Pause","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","F13","F14","F15","F16","F17","F18","F19","F20","F21","F22","F23","F24","NumLock","Numpad0","Numpad1","Numpad2","Numpad3","Numpad4","Numpad5","Numpad6","Numpad7","Numpad8","Numpad9","NumpadAdd","NumpadComma","NumpadDecimal","NumpadDivide","NumpadEnter","NumpadEqual","NumpadMultiply","NumpadSubtract","Numpad0-Insert","Numpad1-End","Numpad2-ArrowDown","Numpad3-PageDown","Numpad4-ArrowLeft","Numpad5-Clear","Numpad6-ArrowRight","Numpad7-Home","Numpad8-ArrowUp","Numpad9-PageUp","NumpadDecimal-Delete","keyName","mapObject","invert","keyCode","unique","pairs","val","writable","__WEBPACK_EXTERNAL_MODULE__8__","_src","_constants","_imageExperienceImage","constants","aspectRatios","Image191x100","aspectRatio","stringKey","previewTypeStringKey","previewTypeString","imagePreviewHeight","previewWidth","previewHeight","simplifiedType","minimumRequirements","minSize","maxSize","previewSettings","previewContentClassName","showShortHeadline","showDescription","showAdditionalDisclaimer","isLogo","Image178x100","showGradient","Image172x100","showLongHeadline","Image169x100","Image155x100","Image150x100","Image133x100","Image1x1","Image93x100","aspectRatiosForMMAV2","OriginalImage","Image201x100","Image200x100","showAdsIcon","Image153x100","Image124x100","Image120x100","videoAspectRatios","VideoMedia16X9","ratio","cropSetting","thumbnailCropSetting","VideoMedia5X4","VideoMedia1X1","VideoMedia4X5","VideoMedia9X16","minCropSize","videoPreviewsSettings","videoType","previewContainerHeight","previewContainerWidth","hideTextWhenPlay","showProgressText","videoPreviewDefaultWidth","videoPreviewDefaultHeight","resizeImageHeightInList","sortBySelections","recentUpload","enum","query","imageText","videoSortBySelections","edmDefinition","UploadedTime","description","Text","imageTypesWithOrder","videoTypesWithOrder","videoTypeToThumbnailType","subTypeToType","ImageMedia4X1","LandscapeImageMedia","ImageMedia178X100","ImageMedia172X100","ImageMedia169X100","ImageMedia155X100","ImageMedia15X10","ImageMedia133X100","SquareImageMedia","ImageMedia93X100","ImageMedia1X2","LandscapeLogoMedia","SquareLogoMedia","ImageMedia201X100","ImageMedia200X100","ImageMedia153X100","ImageMedia124X100","ImageMedia120X100","pageSize","imageAdExtSettings","MobileMultiImage","BingDesktopImage","BingSingleImage","showBusinessName","showUrl","isMultimediaAd","imageOption","defaultImageOption","isCombinedMsanAndMmaAspectRatios","isMMAV2Enabled","getAspectRatios","GenericImage","reduce","memo","getMmaAspectRatios","requiredRatios","filter","minSizeForMMA","getMinSizeForRequiredRatios","minSizeForOther","max","chain","sortBy","abs","logoAspectRatios","Image4x1","showAction","showAdsLabel","imageOptionKeys","Logo","Image1x2","isMultimediaAdinMSANEnabled","multimediaAdinMSANRatios","audienceMMAV2AspectRatios","SupportedCaptionLocales","Lcid","FullName","Tag","LcidToFullName","locale","loc","toString","TagToLcid","tag","toLowerCase","DEFAULT_MAX_IMAGE","DEFAULT_MAX_LOGO","audienceMMAV2WithDiffAspectRatio","audienceMMAV2AspectRatiosWithoutOriginalImage","imageSources","Website","WebsiteCarousel","Upload","Existing","Stock","AdRecommendation","Social","sourceTypes","TwitterImported","WebsiteImported","UserUploaded","getSourceTypeFromImageSource","imageSource","preferenceFlags","MMATeachingBubble","MMAWebsiteImageOptIn","MMAInMSANTeachingBubble","MMAInMSANWebsiteImageOptIn","MMACarouselTeachingBubble","MSANCarouselTeachingBubble","Image","getImageOptions","disableImage","disableLogo","getAspectRatioOptions","logoSubtypes","labelId","defaultAspectRatioOption","getBoostAspectRatios","windowsSpotlight","multipleLineLongHeadline","multipleDescription","hideLabel","showHotspots","discoverCard","startMeno","logoHeight","showLogo","showImage","showDismiss","actionCenter","banner","coachmark","_bluebird","_primitiveUtilities","_mediaMetadataModel","ImageExperienceImage","imageObj","createBaseImageInfo","idString","src","cropSettings","effectSettings","baseId","metadata","disableEdit","originCropSetting","isAutoCropping","source","originalUrl","cropSettingOnOriginal","placementSettings","originalHeight","originalWidth","baseImage","defaults","BaseId","BaseImage","setBaseImage","Id","IdString","setSrc","Metadata","Type","setType","EffectSettings","setEffectSettings","isMaunalCropped","isEqual","isEffectEdited","serializeImageAssetMetadata","isManualEdited","isAdCreatorV1Enabled","setIncluded","setAutoCropping","effectKey","effectSrc","IsIncluded","ThumbnailForAdList","ThumbnailUrl","srcWithQuery","indexOf","cropQuery","copyThumbnailLookToNewImage","cloneDeep","copyEffectsFromOther","another","Source","OriginalUrl","PlacementSettings","OriginalHeight","OriginalWidth","CropSettingOnOriginal","IsBulkCropped","setCropSettings","setNewId","String","clone","base","getBasicData","formatToSave","isVideoThumbnail","overrideInfo","subType","C","cropX","cropY","nativeImage","imageLoadResolve","imageLoadPromise","Promise","resolve","onload","naturalWidth","naturalHeight","imageObjectMT","Url","__WEBPACK_EXTERNAL_MODULE__116__","__WEBPACK_EXTERNAL_MODULE__15__","__WEBPACK_EXTERNAL_MODULE__37__","__WEBPACK_EXTERNAL_MODULE__985__","_adPlacementsGridPreviewPanel","AdPlacementsGridPreview","PanelWidth","_ref","onRenderFooterContent","DefaultButton","Panel","PanelType","custom","customWidth","closeButtonAriaLabel","isFooterAtBottom","__WEBPACK_EXTERNAL_MODULE__74__","__WEBPACK_EXTERNAL_MODULE__75__","__WEBPACK_EXTERNAL_MODULE__5__","__WEBPACK_EXTERNAL_MODULE__6__","_adPlacementConsts","_index4","_index5","_index6","GroupTypeTransformerMapping","[object Object]","imageExtension","imageExtensionTransformer","msanImageAd","msanImageAdTransformer","perfMax","perfMaxTransformer","searchImageAd","searchImageAdTransformer","streamlinedSignup","streamlinedSignupTransformer","adLibraryTransformer","_adPlacementTemplates","defaultPreviewTextKeys","shortHeadline","longHeadline","businessName","localizedText","getLocalizedText","carryOverProperties","staticTemplateProperties","defaultPreviewTexts","skipUrlValidation","showUrlMultiline","previewTexts","getPreviewTexts","_urlUtil","defaultLocalizedText","placementContainer","displayUrl","processedUrl","previewTextKeys","isValidUrl","URL","origin","previewTextWithDefaults","__WEBPACK_EXTERNAL_MODULE__12__","callToAction","__WEBPACK_EXTERNAL_MODULE__84__","_getCroppedImage","_getSmartCroppedImage","_validateCropSettings","_getGenericImageObject","_updatePlacementWithBulkCropSettings","_imageSizeValidation","_imageExperienceModel","getCenterCroppedSettings","originalBoxToCrop","originalRatio","scaledSourceWidth","round","centerX","scaledSourceHeight","middleY","getAutoCroppedImagesForRatios","originalImageToCrop","maxCropBox","_ref$imageOption","_ref$aspectRatioOptio","aspectRatioOption","_ref$isRecommendedIma","defaultRatioToInclude","_ref$disableEdit","boxToCrop","defaultRatio","getDefaultRatio","cropInfo","croppedImageData","processCroppedImages","_ref2","croppedImages","findWhere","_ref3","_ref3$isMultimediaAd","_ref3$imageOption","_ref3$aspectRatioOpti","_ref3$isRecommendedIm","_ref3$disableEdit","_ref3$isMMAV2Enabled","autoCroppingImages","_mediaCommonUtils","mediaRepository","smartCropActivity","isImageAdExtensionMode","getAutoCroppedImages","imagesToReturn","aspectRatiosWithSmartCrop","generateSmartCrop","imageUrl","then","assets","compact","asset","X","Y","ratioDecimalStr","convertAspectRatioToDecimal","AspectRatio","placementSetting","propertyOf","validateSmartCropSettings","originalImage","catch","missingAspectRatios","autoCropSettings","concat","__WEBPACK_EXTERNAL_MODULE__943__","trace","genericImageSource","nativeImageObject","resolver","getImagePromise","placement","mtImgObject","_mtImgObject$CropSett","updatePlacementSettings","currentType","_assetLibraryModel","getMediaPlacementType","_ref4","MediaPlacementType","CropSetting","__WEBPACK_EXTERNAL_MODULE__947__","isMultiple","arguments","ImageSizeValidationError","stringTemplateKey","isDueToResizing","error","_this","imageWidth","imageHeight","_classCallCheck","_possibleConstructorReturn","_getPrototypeOf","imageWidthInternal","imageHeightInternal","minWidthInternal","minHeightInternal","Error","ImageLoadError","imageType","minimumSizeForImage","getMinimumSizeForImage","validateImageSyncAsyncWithDimensionParams","minimumHeight","minimumWidth","img","imageLoadedResolve","imageLoadedReject","imageLoadedPromise","reject","onerror","err","minimumSize","validations","each","push","all","_singleMonthCalendar","_accessibilityHelper","_hocWithArrowKeys","_dayItem","_calendarMonth","DAYS_IN_WEEK","formatMonthDayYear","formatCivilDate","skeleton","formatMonthYear","formatDay","weekDays","convertCivilTimeToDate","Date","day","SingleMonthCalendarInternal","selectedDate","onSelectDate","isMonthRangePicker","navigatedDate","compareResult","onNavigateToPrevMonth","onNavigateToNextMonth","focusedDate","weeks","getWeeks","selectedMonth","selectedYear","newNavigatedDate","showMonthPicker","updateNavigateDate","newNavigateDate","today","getTime","setDate","getDate","getMonth","onNavigateDate","isLeftNavigateVisible","isRightNavigateVisible","CalendarMonth","onSelectMonth","selectedRanges","defaultSelectedRanges","isMonthPickerEnabled","prevMonthInBounds","monthYear","nextMonthYear","prevMonthYear","nextMonthInBounds","isAriaLabelTranslated","curWeekDays","aria-live","role","submitEvent","handleMonthPickerClick","scope","getDayOfWeek","style","week","dayIndex","weekIdx","dayIdx","DayItem","formattedDate","isFocused","dayClass","getDayClass","focusItemCallback","isInSelectedRange","defaultNavigatedDate","getToday","defaultSelectedDate","prevPropsNavigatedDate","observable","targetDate","observer","data","addDay","subscribe","nextProps","prevState","todayDate","firstDayOfMonthIndex","getFirstDayOfWeek","getCivilDateDayOfWeek","isAllDaysOfWeekOutOfMonth","shouldGetWeeks","foundFirstDayOfMonth","weekIndex","isInMonth","isFirstDayOfMonth","originalDate","dayInfo","isToday","isSelected","onSelected","isInBounds","isSelectedRangeStart","isSelectedRangeEnd","notInMonth","notInBounds","isInComparedRange","isCivilDateInRange","isSelectedRangeStartOrEnd","isCivilDateRangeStartOrEnd","isComparedRangeStartOrEnd","_this$state","prevMonth","nextMonth","slice","renderMonthLevelCalendarMonth","renderDateLevelCalendar","instanceOf","SingleMonthCalendar","WithArrowKeys","_hocWithManagedFocuser","DayItemInternal","args","focusableRef","focusThis","data-value","onFocusHandler","aria-selected","data-is-focusable","aria-hidden","WithManagedFocuser","_monthItem","_calendarYear","formatMonth","monthIndex","generateKey","row","column","MonthsRowCount","CalendarMonthInternal","showYearPicker","navigateYear","MonthsGroup","monthRows","compareCivilMonth","isCivilMonthInRange","some","boundary","navigatedYear","focusedMonth","nextYear","canNavigateToNextYear","getNavigateYear","canNavigateToPrevYear","monthIdx","addMonth","getMonths","CalendarYear","onSelectYear","calendar-month-range-picker","navigateToPrevYear","handleYearPickClick","navigateToNextYear","monthItem","idx","MonthItem","monthClass","getMonthItemClasses","Months","groupBy","floor","values","MonthItemInternal","handleMonthSelect","locals","_yearItem","CalendarYearInternal","yearStart","yearEnd","years","tempArr","focusedYear","canNavigateToPrevYearRange","canNavigateToNextYearRange","addYear","_this$state2","getRange","navigateToPrevYearRange","navigateToNextYearRange","yearRange","yearIndex","YearItem","yearIdx","isYearInRange","YearItemInternal","handleYearSelect","__WEBPACK_EXTERNAL_MODULE__156__","useSourceMap","list","cssMapping","btoa","sourceMapping","sourceMap","unescape","encodeURIComponent","JSON","stringify","sourceURLs","sources","sourceRoot","cssWithMappingToString","mediaQuery","alreadyImportedModules","stylesInDom","memoize","fn","apply","isOldIE","test","navigator","userAgent","getHeadElement","head","getElementsByTagName","singletonElement","singletonCounter","styleElementsInsertedAtTop","addStylesToDom","options","domStyle","refs","j","parts","addStyle","listToStyles","newStyles","part","css","media","insertStyleElement","styleElement","lastStyleElementInsertedAtTop","insertAt","nextSibling","insertBefore","appendChild","firstChild","removeStyleElement","parentNode","removeChild","splice","createStyleElement","obj","update","remove","singleton","styleIndex","applyToSingletonTag","createObjectURL","revokeObjectURL","Blob","linkElement","rel","createLinkElement","blob","oldSrc","href","styleSheet","cssText","createTextNode","newObj","DEBUG","newList","mayRemove","replaceText","textStore","replacement","Boolean","cssNode","childNodes","__WEBPACK_EXTERNAL_MODULE__299__","__WEBPACK_EXTERNAL_MODULE__738__","__WEBPACK_EXTERNAL_MODULE__119__","__WEBPACK_EXTERNAL_MODULE__120__","_package","_hoc","_hoistNonReactStatics","_hocUtils","ComponentToWrap","HoC","instanceRef","getDisplayName","factory","self","__WEBPACK_EXTERNAL_MODULE__7__","json","cb","parse","stackObj","stackKey","step","innerObj","stackIndex","inner","tail","outer","str","isObject","pop","_adPlacementConnector","_adPlacementLayouts","_adPlacementView","_imageExperienceUtils","_to","getImageTypeForTemplate","templateParserUtils","getCarouselTitleForTemplate","getMinSizeForTemplate","validateImageSizeForTemplate","getCropSettingsInfoFromTemplates","getIsRequiredFromTemplate","getTemplateTypeForTemplate","doesTemplateShowImage","doesTemplateHideHeaderButtons","getFilteredTemplates","groupTypeTemplates","GroupTypeTemplatesMapping","getSinglePlacementLayouts","templatesToUse","templateTransformerFunc","AdPlacementElement","getAdPlacementElement","getPreviewCarouselLayout","customDefaultImage","PreviewCarouselLayoutComponent","displayImages","setDisplayImages","placeholderImagesRef","useRef","isDisplayingPlaceholderImages","isImageListEmpty","anyImageTemplates","templates","doAnyTemplatesHaveImages","defaultImageToUse","defaultImage","getGenericImageObjectAsync","imageObject","getGenericImagesForTemplateAsync","placeholderImages","placementComponents","getCarouselTitleByIndexImpl","imageInfo","getIsRequiredByIndexImpl","headerButtonIncludeMethodWrapper","originalFunc","newValue","findIndex","prevImages","updatedHeaderButtonProps","updatedProps","doesTemplateHideHeaderButtonsByIndex","getGroupsPreviewerLayout","groupsDefinitions","GroupsPreviewerComponent","__WEBPACK_EXTERNAL_MODULE__24__","__WEBPACK_EXTERNAL_MODULE__26__","__WEBPACK_EXTERNAL_MODULE__27__","__WEBPACK_EXTERNAL_MODULE__28__","__publicpath__","_croppedImageView","CroppedImageView","resizeImageHeight","resizeImageWidth","imageToContainerRatio","cropSectionToImageRatio","resizeContainerStyle","resizeImageStyle","onContextMenu","alt","__WEBPACK_EXTERNAL_MODULE__153__","_disclaimerBanner","_helpIcon","_learnMoreLink","_i18nMapper","_disclaimerBannerStyle","commonPropTypes","disclaimer","DisclaimerBannerUnStyledWrapper","instore","instoreText","LearnMoreLink","linkText","topic","DisclaimerBannerUnStyled","timezone","timeZoneStr","getTimezoneI18nString","mrcAccreditedText","oneOfType","DisclaimerBanner","withI18nConsumer","getDisclaimerBannerStyle","DisclaimerBannerWithInstoreUnStyled","DisclaimerBannerWithInstore","DisclaimerBannerWithoutTimezoneUnStyled","DisclaimerBannerWithoutTimezone","DisclaimerBannerWithInstoreWithoutTimezoneUnStyled","_ref5","DisclaimerBannerWithInstoreWithoutTimezone","_themeFluent","UnStyledLearnMoreLink","linkType","helpTopic","aria","learnMoreLink","helpPopup","fwdLink","target","delegate","link","isUnderlineLink","isGreyBackground","_objectWithoutProperties","_excluded","internalLinkStyle","ComponentSettings","underlineLinkStyle","StyledLearnMoreLink","_ref2$palette","elementLocator","_ref3$palette","timezoneId","isNumber","Number","i18nTimezoneMap","TimezoneId_1","TimezoneId_2","TimezoneId_3","TimezoneId_4","TimezoneId_5","TimezoneId_6","TimezoneId_7","TimezoneId_8","TimezoneId_9","TimezoneId_10","TimezoneId_11","TimezoneId_12","TimezoneId_13","TimezoneId_14","TimezoneId_15","TimezoneId_16","TimezoneId_17","TimezoneId_18","TimezoneId_19","TimezoneId_20","TimezoneId_21","TimezoneId_22","TimezoneId_23","TimezoneId_24","TimezoneId_25","TimezoneId_26","TimezoneId_27","TimezoneId_28","TimezoneId_29","TimezoneId_30","TimezoneId_31","TimezoneId_32","TimezoneId_33","TimezoneId_34","TimezoneId_35","TimezoneId_36","TimezoneId_37","TimezoneId_38","TimezoneId_39","TimezoneId_40","TimezoneId_41","TimezoneId_42","TimezoneId_43","TimezoneId_44","TimezoneId_45","TimezoneId_46","TimezoneId_47","TimezoneId_48","TimezoneId_49","TimezoneId_50","TimezoneId_51","TimezoneId_52","TimezoneId_53","TimezoneId_54","TimezoneId_55","TimezoneId_56","TimezoneId_57","TimezoneId_58","TimezoneId_59","TimezoneId_60","TimezoneId_61","TimezoneId_62","TimezoneId_63","TimezoneId_64","TimezoneId_65","TimezoneId_66","TimezoneId_67","TimezoneId_68","TimezoneId_69","TimezoneId_70","TimezoneId_71","TimezoneId_72","TimezoneId_73","TimezoneId_74","TimezoneId_75","_ref$palette","marginBottom","& span","& a.HelpTopic","textDecoration","themeDarker","HelpIcon","_super","_assertThisInitialized","PopupController","PopupJsClick","trim","__WEBPACK_EXTERNAL_MODULE__76__","__WEBPACK_EXTERNAL_MODULE__187__","_observable","staticOptions","_ref$interceptTabKey","interceptTabKey","interceptTabKeyFromStaticOptions","Observable","setData","BackboneInstanceWrapper","Component","mount","shouldComponentUpdate","instance","detach","managed","$el","undelegateEvents","off","eventHandlers","once","handler","on","appendTo","container","objectOf","__WEBPACK_EXTERNAL_MODULE__13__","__WEBPACK_EXTERNAL_MODULE__17__","_knockout","_backbone","FilePicker","Backbone","View","_ref$isNative","isNative","_ref$allowedFileExten","allowedFileExtensions","validateFileExtensionsFailedMessage","_ref$validator","validator","_ref$i18n","_ref$displayFilePath","displayFilePath","_ref$enableMultiple","enableMultiple","identity","isArray","viewModel","ViewModel","getFileObject","fileObject","getFileObjects","fileObjects","trigger","fileInputCssId","html","acceptString","ko","applyBindings","el","filePath","msg","errors","hasErrors","click .remove-file","$","files","_pathBrowserify","validatorDecorator","reasonText","file","context","returnedError","isString","ext","toUpperCase","observableArray","computed","fullPath","full","filename","onInputChange","handleInputChange","newFilePath","_this2","resetStatus","validatingPromiseArr","validateExtension","validateFile","reason","validationDidFail","extensionValidator","message","_this3","extension","path","extname","__WEBPACK_EXTERNAL_MODULE__316__","pug","require","pug_interp","pug_html","locals_for_with","attr","escape","__WEBPACK_EXTERNAL_MODULE__57__","__WEBPACK_EXTERNAL_MODULE__105__","__WEBPACK_EXTERNAL_MODULE__467__","_sharedStylesFromThemeFluent","_exportNames","_adCustomizersStyle","_adColumnPreviewStyle","_adSuggestionStyle","_audienceSelectorStyle","_reactUiBlockerStyle","_messageBarStyle","_tableStyle","_linkStyle","_learnMoreStyle","_localBlocker","_advancedSettingsSectionStyle","_containerBudgetStyle","_locationBidGridStyle","_keywordPlannerStyle","_locationMapStyle","_locationCellStatusStyle","_mapStyle","_targetLocationRecommendationStyle","_glyphIconStyle","_crudAdStyle","_uurlTestToolStyle","_sharedBudgetGridWrapper","_estimationResultStyle","_audienceAssociationSectionStyle","_audienceBulkAssociationStyle","_extensionEditorStyle","_selectElementStyle","_audienceReachEstimateContainerStyle","_audienceModalStyles","_kendoMultiSelectStyle","_audienceCombinedListStyle","_audienceExpressionStyles","_uetTagManageDialogStyle","_dateFilterStyle","_mergeStyle","_keywordToolbarStyle","_crudKeywordStyle","_convertStyle","_adsExtentionsDoublelistStyle","_doubleListBoxStyle","_inputFieldStyle","_summaryPageStyle","_competitionCardStyle","_googleImportStyle","_experimentSettingsStyle","_productGroupsStyle","_reactModalStyle","_gridPopupEditor","_predicateValueEditorStyle","_uetTagViewerStyle","_dialogStyle","_progressBarStyle","_panelCalloutStyle","_colorPickerStyle","_gridColumnStyle","_campaignMultiSelectorWithoutDropdownStyle","_uetTagSelectorStyle","_labelPopupStyle","_deliveryColumnStyle","_truncatedStyle","_labelColumnHeaderStyle","_labelsCellItemStyle","_qualityScorePopupStyle","_deleteColumnModalStyle","_phoneFrameStyle","_imageExperienceContentStyle","_editImageCommonStyle","_modalContainerStyle","_adExtentionsItemTemplateStyles","_fluctuationInsightsStyle","alertStyle","buttonInputStyle","btnStyle","btnInteractStyle","closeImageStyle","controlStyle","datePickerStyle","dropDownEditorStyle","entitySelectorStyle","floatButtonStyle","getBlockerStyle","gridInlineErrorStyle","helpbuttonStyle","InlineEditorStyle","inlineErrorStyle","legacyUIBlockerStyle","paginationStyle","scrollbarStyle","searchboxStyle","spinnerKeyframe","statusStyle","toggleButtonStyle","uiblockerStyle","_ref$iconFontFamily","& .ac-container","& .ad-customizer-container > .dropdown-menu.picker-list","overflowY","& > li ~ li, & > .adcustomizerpicker-syntax-container ~ li","borderTop","& > li > a","& .type-bold","& .ac-helper-area.adCustomizersEditor","zIndex","& .ad-customizer-container > .dropdown-menu > .adcustomizerpicker-syntax-container","& ~ li > a","& .panel-heading","& a","& .ad-customizer-container > .dropdown-menu.adCustomizersEditor","& .picker-content","& .form-grid","& > .control-label","& ~ .control-label","& label","& > span","alignSelf","& .checkbox label, .radio label","& .form-buttons","& button.cancel","& .countdownEditor .form-grid","fallbacks","gridTemplateColumns","-ms-grid-columns","& .form-label","gridColumnStart","gridColumnEnd","-ms-grid-column","-ms-grid-column-span","&.flexible-grid-row-1","-ms-grid-row","&.flexible-grid-row-4","&.flexible-grid-row-6","&.flexible-grid-row-7","& .form-date","& .form-time","& .form-time-format","& .form-days","& .form-days-description","& .form-time-zone","& .form-language","& select","& .form-validation","&.flexible-grid-row-2","&.flexible-grid-row-3","&.flexible-grid-row-5","&.flexible-grid-row-8","& .keyword-editor .form-grid","& .form-default-text input","& .k-select","& .radio","& .error","listStyle","paddingTop","& .default-value-input","& > .display-inline-block ~ .display-inline-block","& .col-sm-4, & .col-sm-8","& input","& input.btn-default","& .iff-editor","& .panel-body","& .iff-editor__label","& ~ .iff-editor__label","& .iff-editor__field","& + span","& .iff-editor__buttons-group","& button ~ button","& .iff-editor__field--audience-selector","audienceSelectorStyle","&","& .row","& .col-sm-12","& .form-control","& .DMP_doublelistbox_section","& .doubleListBox","& .dlb-filter-alignPlaceholder","& .searchbox-input","& .form-control-feedback","& .layout-columns-element:nth-child(1)","& .panel-form","& .layout-columns-element","& ~ .layout-columns-element","white","& .dlb-source-container, & .dlb-selected-container","& .dlb-source-summary","& .audience-association-selector-header","& .audience-association-selector-header-table","& .audience-association-selector-header-col","& .audience-association-selector-header-listsize-col","& .appListItem-text","& .dlb-selectAll, .dlb-deselectAll","& .arrow-button","& .dlb-selectAll","& .dlb-deselectAll","& .dlb-source-list, & .dlb-selected-list","overflowX","& .dlbItem","& .glyphicon-triangle-right, & .glyphicon-triangle-bottom","& .dlbItem-actions, & .remove","& .dlbItem-customAction, .arrow-button","outlineOffset","& .dlbItem-content","& table","& .tree-indent","& table > tbody > tr > td:nth-child(1)","& table > tbody > tr > td:nth-child(2)","& .disabled","& .arrow-button:before","& .dlb-source-list ul.list-container","& .dlb-selected-list","& ::-webkit-scrollbar","& ::-webkit-scrollbar-track","& ::-webkit-scrollbar-thumb","& ::-webkit-scrollbar:horizontal","& ::-webkit-scrollbar-track:horizontal","& ::-webkit-scrollbar-thumb:horizontal","& .dlb-emptyMessage, & .dlb-emptySelectedMessage","& p","& .dlb-emptyMessage[style=\"display: none;\"] + .dlb-source-list","& .dlb-pager-container","& .pager","commonDoubleListBoxStyle","convertToLocalStyle","glyphIconStyle","& .doubleListBox.layout-columns","& .layout-columns-container.row","& .layout-columns-element.col-sm-6","&>.row","&>.col-sm-12","& .dlb-source.dlb-source-list, & .dlb-selected.dlb-selected-list","&:empty:focus","&.k-state-focused","&.k-state-selected, &.selected","neutralLight","& .dlb-source-container .dlb-source.dlb-source-list .selectable-treeview .dlbItem","& .audience-association-selector-item-table","& .tree-item","&.active","&.focus","mergeStyle","merge","_toConsumableArray","div",".arrow-button.enabled","cursor",".arrow-button.enabled:before",".arrow-button.remove",".arrow-button.remove:before",".infomark",".infomark:before",".expanderImage, .expandedImage",".expanderImage:before",".expandedImage:before",".glyphicon-remove",".glyphicon-remove:before",".glyphicon-triangle-right",".glyphicon-triangle-right:before",".glyphicon-triangle-bottom",".glyphicon-triangle-bottom:before",".glyphicon-plus",".glyphicon-plus:before","input[type=\"checkbox\"]","appearance","-webkit-appearance","input[type=\"checkbox\"]::after","input[type=\"radio\"]",".glyphicon-arrow-down, .glyphicon-arrow-up",".glyphicon-arrow-down:before",".glyphicon-arrow-up:before",".map-icon__pin--included",".map-icon__pin--included:before",".map-icon__pin--excluded",".map-icon__pin--excluded:before",".status_icon",".status_icon:before",".insight_icon",".insight_icon:before",".glyph-caret-right::before",".glyph-caret-left::before",".closeimage",".closeimage:before",".glyphicon-pencil, .edit_icon","fontStyle",".glyphicon-pencil::before, .edit_icon::before",".grid-asc::before",".grid-des::before",".glyphicon-chevron-down:before",".glyphicon-chevron-up:before",".recommendation-light-bulb:before",".status_error:before","redDark",".status_warning:before",".status_success:before","green",".statusPending_icon:before","orange",".statusProcessing_icon:before",".icon-arrowdown-normal:before",".icon-arrowdown-hover:before",".glyphicon-arrow-left",".glyphicon-arrow-left:before","& .previewAd","wordWrap","overflowWrap","& .previewTitleAd, & .previewTitleAdNoLink, & .productAd","& .previewUrlAd","& .previewTextAd, & .dynamic-search-ad-preview-text","& .moreHint","& .linkToAssets","& .responsive-ad-preview-shared-template","& div, & p","textOverflow","whiteSpace","& img","& .ad-suggestion-container","borderBottom","& .table-container","& table > thead > tr > th, table > tbody > tr > td","& table > colgroup + thead > tr:first-child > th","& table > thead > tr > th.text-center","& table > tfoot > tr > td","& col.col-selection","& col.col-RecommendedAd","& col.col-Campaign","& col.col-AdGroup","& col.col-ApplyDate","& col.col-Dismiss","& tbody > tr .grid-edit-icon","visibility","& tbody > tr:hover","& .grid-edit-icon","& .grid-editable-cell-container","justifyContent","& a.previewTitleAd","& .dismiss-recommendation","& a.select-all-cross-page, a.deselect-all-cross-page","& input[type=\"checkbox\"]:focus","& .btn-primary","& .alert.alert-recommendation","themeLighterAlt","& .alert-info-inline","& .glyphicon, .recommendation-light-bulb","& .recommendation-light-bulb","& .recommendation-detail-info","themeDark","& .ad-suggestion-panel","& #ad-suggestion-dropdown","& .value-proposition","pointer-events","adColumnPreviewStyle","tableStyle","_ref2$iconFontFamily",".adsbybing-optin-modal","maxWidth","& .adsbybing-optin-modal-info","& br","& .adsbybing-optin-modal-title","& .adsbybing-optin-dismiss-feedback","& .adsbybing-optin-action-container, .actions","& .btn","& .closeimage","&:before","getReactModalStyle",".ReactModalPortal","& .react-modal-overlay, .ReactModal__Overlay","& .react-modal, .ReactModal__Content","reactModalButton","& .table","& > thead > tr > th","&:first-child","borderLeft","&:last-child","borderRight","&.column-header-sortable","& .glyphicon-arrow-up:before","& .glyphicon-arrow-down:before","&.column-name-isIncludedOrExcluded > span","& > tbody > tr > td","& > tfoot > tr > td","& .table__row--indent td:first-child","& .bidBoost-percentValue","& .react-block-ui","& > div:last-child","& .blocker-text","& .blocker-image",".alert",".alert-success .alert-image:before",".alert-danger .alert-image:before",".alert-info .alert-image:before",".alert-warning .alert-image:before",".form-group > #KoErrors","#KoErrors","& a:hover, a:active","& a:focus","& .HelpTopic","assign",".blocker-local","& > .blocker-indicator","& > .blocker-image","_ref2$advancedSection","advancedSectionMarginLeft","& .advanced-settings-section, .adschedule-targets-container, .bid-adjustments-container, .audience-advanced-settings-section, .settings-top-grid-panel-container","& .col-sm-10>div","& .table>thead>tr>th","& .table>tbody>tr>td","& .table>thead>tr>th span","& #setAdvancedSettings .form-group","& #setAdvancedSettings .form-group:nth-child(2)>label","& #setAdvancedSettings","& div[data-bind=\"visible: showNativeAds()\"], & div[data-bind=\"visible: showMultimediaAds()\"], & div[data-bind=\"visible: showAdDistribution()\"], & div[data-bind=\"visible: showAdRotation()\"], & div[data-bind=\"visible: showLocationTargets()\"], & div[data-bind=\"visible: showAdSchedule()\"], & div[data-bind=\"visible: showDeviceTargets()\"]","&>.form-control-static","&>a:not(.helpbutton)","&, &[aria-expanded=\"false\"], &.collapsed","&[aria-expanded=\"true\"]:before","& .expanderImage, .expandedImage","& .form-control-static","uurlTestToolStyle","& .ad-schedule, .adschedule-targets, .advanced-scheduling-grid","&.show-cashback-percent","& .ad-scheduling-grid","& .date-settings__container","& .date-settings-intro","& .date-container","& table ","& td","& .schedule-item-label","& tr:nth-child(1)","& td:nth-child(2)","& tr:nth-child(2)","& .col-sm-3","& .col-sm-9","& .radio.row","&:focus-within","& .date-start, & .date-end","& td>.col-sm-9","& td>.radio","& .scheduling-grid","& .new-advance-target-grid-container","& thead>tr","& th.cashback-percent-head","& tbody>tr","& td:nth-child(2), td:nth-child(5),td:nth-child(8)","& td.cashback-percent-cell","& input.form-control","& td:nth-child(3), td:nth-child(6), td:nth-child(9)","& td:nth-child(4), td:nth-child(7), td:nth-child(10)","& td.cashback-percent-options-cell","& .ad-scheduling-panel","& tr","& tr:nth-child(3)","& .radio-inline:nth-child(2)","& .radio-inline:nth-child(3)","& tr:nth-child(4)","& .schedule-timezone-setting-text","& .table>tbody tr:nth-child(3) span","& .device-targets, table[target-type=\"Device\"], table[target-type=\"OriginalDevice\"]","&.showCashbackPercent","& thead th","&.col-sm-3, &.col-sm-4","& tbody tr td:nth-child(3)","& .cashback-option-select-col","& tbody td.cashback-option-select-col","& tbody td.cashback-value-col","& .inherit-cashback-value","& table>tbody, tbody","& tr>td[colspan=\"3\"]","& ul","& tr>td:nth-child(2)","& select:focus","& tr>td:nth-child(3)","& tr>td:nth-child(4)","& .bidBoost-percentValue, .bidBoost-percent","& .advance-targeting-grid, demographic-gender-targets","& #setAdDistributionSettings ","& .infomark","& .radio > div","& #setNativeAdsSettings, #setMultimediaAdsSettings","& .advance-targeting-grid","& th:nth-child(1)","& th:nth-child(2)","& td:nth-child(1)","& td:nth-child(3)","& td:nth-child(4)","& .cashback-percent-value","& td[colspan=\"3\"]","& .form-control[disabled]","& .advanced-settings-section>div>.form-horizontal>.form-group>a","& .advanced-settings-section a[data-target=\"#setAdvancedSettings\"], .audience-advanced-settings-header","backgroundClip","&:focus, &:hover","& table[target-type=\"OriginalDevice\"]","&.deviceSettings.target","& .checkbox input.targetDevice","& td>div:last-child .link","& .bidBoost-options","& .uurl-test-tool__container","& .glyph-status-ok, & .status_warning, & .glyph-info","& .glyph-status-ok:before","& .status_warning:before","& .glyph-info:before","& .uurl-test-info__container .uurl-test-info","& .loading-image","flexShrink","& .resultString","& .detail-icon","& .container-budget, & .search-bid__container","& .input-group-addon","& .margin-rt-five","& .toggle-campaign-settings-switch","& .change-mode-link","& .location-bid-grid-container","& .col-location","& .col-bid","& .cashback-percent-input, & .inherit-value-span","& .cashback-input-container, & .inherit-cashback-value","& .cashback-option-select","& .location-bid-grid, .excluded-location-grid, .advance-targeting-grid, & .location-bid-grid-container","& th, td","& th:nth-child(3)","& .col-icon","& .map-icon__pin--included, .map-icon__pin--excluded","& .location-target-bid-grid-cell","locationCellStatusStyle","& .excluded-location-grid","& .location-bid-pager-view, .excluded-location-pager-view","warningIconStyle","_ref$fontSize","& .col-icon .alert-icon.warning","& .col-location, & .location-map-item","& .alert-icon.warning","& .location-cell-status","& .location-cell-status-inline","& .status-icon","& .status-icon .status_warning","& .popup.popup-location-status","& .popup__contents","& .location-status-container","& .popup__close","& h3","& .popover","& .arrow","&.right, &.left","&.top, &.bottom","& .create-keyword-container, & .keyword-planner-root, & .add-keywords-root .panel-body .row:nth-child(2) .col-sm-7","transition","& .keyword-planner-container","& .keyword-planner-container, & .keyword-planner-inline","no-suggestion-note","& .title","& .keywords","& .keywords + .col-sm-1","& .keyword-planner-content","& .keyword-planner+div[data-bind=\"visible: isKeywordPlannerVisible\"]","& .pagination_host","& .unselectable .pagination","& .suggested-keyword-select-all-on-page","& .keyword-planner-search-button","-webkit-transform","pointerEvents","& .table-header__cell","& .table__row--header > .sortable.clickable:first-child .table-header__cell","& .grid-asc, .grid-des","& .grid-asc:before","& .grid-des:before","& .arrow-back-double","& .arrow-back-double:before","& .table__row--see-more td:first-child","& .glyphicon-triangle-left, .glyphicon-triangle-right","& .glyphicon-triangle-left:before","& .glyphicon-triangle-right:before","& .pagination>li>a, .pagination>li>span","& .keyword-textarea","resize","& .create-keywords-errors","& .displayNone","& .off-screen","& .location-manage-box","& .left-panel","& .recommend-location-grid .location-recommend-grid-container .table>thead>tr>th.recommendation-target-grid__removeall-header","& .location-search","& .searchbox","& .glyphicon","& .searchbox-searchbutton","& .searchbox-searchbutton:before","& .new-location-targeting-prompt","& .new-location-targeting-result","& .new-location-targeting-container","& .new-location-targeting-grid","& .new-search-result-row","& .new-location-targeting-grid-include, .new-location-targeting-grid-exclude","& .new-location-targeting-separator","& .new-search-result-row>td","& .new-empty-result-message","& .location-target-grid, .excluded-location-target-grid","& .no-data-message-container","& .target-grid-remove-all-locations","& .target-grid-remove-all-locations:after","clear","& .location-popup-editor","& .radius-selector-table","& .radius-within","lineHieght","& .radius-input","& .radius-unit","& #radiusErrorValidationError","& .location-edit-btn-done","& .react-focus-lock","& .ba-backbone-instance-wrapper, .ba-backbone-instance-wrapper > div","& .header","& .column-header","& >thead>tr>th .location-target-grid__removeall-header","& .location-target-grid__remove-body","& .location-target-grid__area-row","& .text-left","& .map-icon__pin--included:before","& .map-icon__pin--excluded","& .map-icon__pin--excluded:before","& .location-target-grid__title-column","& .text-right","& .location-target-grid__remove-col","& .location-target-grid__remove-col:before","& .right-panel","& .map-container-wrapper","& .map-container","getMapStyle","& .map-message-panel","& .location-targets .control-label","& a.disabled","& .location-manage .location-map-item","& .MicrosoftMap","& .Infobox2","& .infobox-body","& .infobox-actions","& .infobox-actions-list","& a.icon","& .iconUnderline","& li:last-child a","& .disabled a","& .infobox-title","& .infobox-titleActionLink","& .infobox-body .infobox-info","& a:vistited","black","targetLocationRecommendationSharedStyle",".location-recommendation-container","& .table>.header>tr>th","& .table > colgroup + thead > tr:first-child > th","& .location-recommendation-grid-container","& .grid-pager","& .location-recommendation-body","&.panel.collapse.in","& > .row > .col-sm-6","& .location-grid-container",".inline-location-recommendation-container",".location-targets","& .alert-recommendation",".location-manage-box","& .recommend-location-grid","& .location-recommend-grid-container","& .column-header:last-child","& tbody > tr > td","& .custormerInsightsLocation","& .alert .alert-info-inline","& input.target.btn.btn-primary","& .row-selected>td","& .table>tbody>tr","_BingSearch","experienceContent","_ref3$iconFontFamily","& .image-experience-content","& .image-list-view-content .image-list","& .image-list-content","&:after","flexBasis","& .image-list-item .image-list-item-image, & .image-list-item .image-list-item-video","& .glyphicon.glyphicon-remove.image-delete","floatButton","& .glyphicon.glyphicon-pencil.image-edit","themeDarkAlt","& .image-edit + .glyphicon.glyphicon-remove.image-delete","& .remove-all-button","& .image-list-choice-group-ad-creator","& .ms-ChoiceFieldGroup-flexContainer","& .ms-ChoiceField","& .ms-ChoiceField-field","borderWidth","&:before, &:after","& .ms-ChoiceField-innerField","& .image-list-choice-group","& .ms-Label, & .ms-ChoiceField-labelWrapper","flexFlow","& ~ .ms-ChoiceField","_ref4$palette","_ref4$iconFontFamily","& .form-group","& .form-group:not([style=\"display: none;\"]) ~ .form-group","& .ad-editor-form__container","& > div:not([style=\"display: none;\"]) ~ div","& .alert.alert-info.form-group","& .form-group > #KoErrors","& .panel-title","& .panel-body-ad","& textarea","& ul.ui-tabs-nav","& > li","& > a","&.btn.focus:after, &.btn:focus:after","&.ui-tabs-selected > a","themeLight","& .preview-container","& .preview-nav-pills","& .ad-preview-bing-searchbox-icon","BingSearchImage","& .previews","& .previewTitleAd","& .preview-ad__description","& .preview-ad-slug","& .preview-top .bing-preview-answer","& .preview-sidebar .bing-preview-container","& .preview-mobile","getPhoneFrameStyle","outerFrame","& .preview-device-Pref","innerFrame","& .previewAd.mainline","& .previewUrlAd, & .preview-ad__description","& a:hover","truncatedStyle","& .col-sm-1, & .col-sm-2, & .col-sm-3, & .col-sm-4, & .col-sm-5, & .col-sm-6, & .col-sm-7, & .col-sm-8, & .col-sm-9, & .col-sm-10, & .col-sm-11, & .col-sm-12","& .col-sm-8","& .col-sm-offset-4","& > .p","& .form-group .control-label","& .form-group label","& .form-hint, & .remaining-hint, & .charactersRemaining, & .remaining-chars-hint","& .checkbox, & .radio","& > label","& input[type=\"checkbox\"], & input[type=\"radio\"]","& input[type=\"checkbox\"]","& .ext-ad-url-options, & .advanced-url-options","& .col-sm-offset-4 .row","& div[data-bind=\"visible: isExpanded\"]","& ul#TrackingTemplateErrors li","& .accordion","& .upgraded-url-options-preview__label","& .upgraded-url-options-preview__value","& .form-inline","& .control-label","& .custom-params-template .row .form-inline span:last-of-type","& .tracking-template","& .expand-url-options .expanderImage, & .link.expander .expanderImage, & .call-to-action .expanderImage","& .expand-url-options .expandedImage, & .link.expanded .expandedImage, & .call-to-action .expandedImage","& .tracking-template__container > div","& > *","& > input.tracking-template__value-field","& > .charactersRemaining","& > .font-error","& > #trackingTemplateErrors","& > span.control-label","& > :last-child","& .final-url-suffix__container > div","& > #FinalUrlSuffixErrors","& .error, & .font-error","& div.error","& input.error, & input.validation-error","& .container-fluid","& ol, & ul","& .url, & .final-url, & .mobile-url","& .flex-row-fixed","& .flex-row-dynamic","& + .error","& .display-url","flexWrap","& .ext__displayUrl__domain","& .ext__displayUrl__domain--placeholder","& .ext__displayUrl__path","flex","& .ext__displayUrl__separator","& .clearfix","& .upgraded-url","& .upgraded-url__container > div > .fieldRowAd","& > .form-group[data-bind=\"visible: mobileUrlVisible\"]","& .custom-parameters, & .custom-paramters__container","& .custom-params-template .custom-param-entry","& .custom-param__key-container, & .flex-row-dynamic, & td","& .custom-param__close-button","& .advanced-options","& .title-container + .form-control-static","& .expandable","& .title-container","& + .form-control-static","& .tracking-template, & .final-url-suffix > div","& .custom-params-template .form-inline","& .custom-params-template > div > span.control-label","& div[data-type=\"DynamicSearch\"]","& .col-sm-4.adgroup-selector","& .dropdown-toggle","& .selected-item","& .app-lookup-control","& .applookup-dropdown","& .form-control.changeapp","& .dropDownSelect","& .icon.change-app-edit","& .appinfo-table","& .app-icon","& .app-details","& .appstoreselector, & span","&[data-bind=\"text: DeveloperName\"]","& .app-actions","& .icon.changeapp","& > .popover","& .popover-content","& .applookup","& > .form-group","& table.action-radio","& tr > *","& td ~ td","& .scrollable-appresult","& .applookup-results-row","& .app-result-details","& span[data-bind=\"text: DeveloperName\"]","& .blocker-local","getLocalBlockerStyle","& .app-upgraded-url","& .fieldRowAd > .form-group","& #landingPageLabel > div","& .app-install__mobile-frame, & .app-install__tablet-frame","& .app-install__mobile-frame","& .app-install__tablet-frame","& .app-install__preview-ad","& .app-install__preview","& .preview-app-icon, & .preview-app-image, & .preview-app-placeholder","& .preview-app-description","& .preview-app-title","& .preview-app-details","& .app-install__actions","& .preview-app-url","& .btn-default","crudAppInstallAdStyle","& .headlines-container, & .descriptions-container","& .form-group ~ .form-group","& .form-group + .col-sm-4.control-label","& a.ad-rsa-add-headline, & a.ad-rsa-add-description","&.disabled","neutralTertiary","& .ad-rsa-filed-group","& .iconba-Lightbulb","& > input.text","& > .clearfix","& > ul","& > .ad-rsa-pin-group","& .ad-field-position","& .ad-pinned","& .glyphicon-pushpin, & .glyphicon-plus","& .glyphicon-pushpin:before","& .glyphicon-plus:before","& .ad-strength-container","& .responsive-search-ad-strength-view","& .ad-strength-content","& .ad-strength-score","& .ad-strength-suggestions","& .ad-strength-suggestion-view","& .ad-strength-suggestions-detail","& .ad-strength-suggestions-detail-close-button","& .ad-strength-suggestion-detail-title","& .ad-strength-suggestion-detail-sub-title","& .ad-strength-suggestion-detail-tips-container","& .ad-strength-suggestion-detail-tips-title","& .ad-strength-suggestion-detail-tips-subtitle","& .ad-strength-suggestion-detail-tips-item-container","& .ad-strength-suggestion-detail-tips-header","& .ad-strength-suggestion-detail-tips-header-desc","& .ad-strength-suggestion-detail-tips-category-title","& .ad-strength-suggestion-detail-tips-item","& .ad-strength-suggestion-detail-suggestions-container","& .ad-strength-suggestion-detail-suggestion","borderColor","&:disabled","borderStyle","& .ad-strength-suggestion-detail-suggestion-disabled","& .ad-strength-suggestion-detail-suggestion-add-symbol","& .ad-strength-suggestion-detail-suggestion-id","& .ad-strength-suggestion-detail-suggestion-content","& .ad-strength-suggestion-detail-no-new-asset-container","& .ad-strength-suggestion-detail-warning","& ul.ad-strength-actions","& .ad-strength-action-met, & .ad-strength-action-half-met, & .ad-strength-action-not-met","& .ad-strength-action-met","& .ad-strength-action-half-met","& .ad-strength-action-not-met","& .ad-strength-suggestion-picker-title","crudRSAStyle","_ref5$palette","_ref5$iconFontFamily","& .form-group, & .image-section-label, & .custom-param__key-container","& a.helpbutton","& .input-group","& .btn-hero","neutralSecondaryAlt","& .react-image-experience","& .crud-audience-ad-react .ad-edit-and-preview-container","& > .col-sm-7","& .ad-edit-with-image-container","& .ad-creation-content","& .ad-properties-section","& .new-preview-carousel-container","& .ad-preview-actions","& span.action-label","& .responsive-ad-preview-content","& .ad-logo","& .business-name","& .preview-type-string","& .video-ad-preview-type-name","& .new-responsive-ad-preview-container.preview-16-9-homepage, & .new-responsive-ad-preview-container.preview-16-9-infopane","& .responsive-video-ad-preview-content","& > div > div:nth-child(3)","& i","& i:first-child","& i:last-child","& .ms-Slider-container","& .video-ad-preview-shadow","& video::-webkit-media-controls-panel","& video::-webkit-media-controls-fullscreen-button","& .text-container","& .long-headline .multi-line-processed-text","& .business-name-with-ads","& .adslabel","& .new-responsive-ad-preview-container.preview-16-9-inarticlead","& video::-webkit-media-controls-current-time-display, & video::-webkit-media-controls-time-remaining-display, & video::-webkit-media-controls-fullscreen-button","& .long-headline ","& .disclaimer-info, & .additional-disclaimer","& .disclaimer-info","& .additional-disclaimer","& .audience-ads-policy-container","& .image-experience-content .upload-progress-container","& .bar-upload-progress-text","& .image-experience-content .image-list-view-content","& .image-list","& .image-list-label","& .image-list-item","& .image-list-item-video","& ~ .image-list-item","& .dropdown.btn-group","&.image-edit-dropdown .dropdown-toggle","& .caret","& .image-item-ratio-label","& .created-ad-list-container","& .ad-list-item","& .create-another-ad","& .existing-ad-options","& .unavailable-hint","& .ad-list-video-item","& .react-image-experience .crud-audience-ad-react.crud-multimedia-ad-react","& .call-to-action-section","& .action-text, .action-language","& .dropdown-search-selector__dropdown","& button.dropdown-toggle","& .glyphicon.glyphicon-chevron-down","& .dropdown-menu","& .dropdown-search-selector__search","& .dropdown-search-selector__options","& li>a","& .ad-iamge-container","& .ad-edit-and-preview-container","& .col-sm-5","& .ad-edit-with-image-container .ad-creation-content .ad-properties-section","& .short-headline, .long-headline, .description","& .image-manager-container, .image-required-error","& .new-preview-carousel-container .new-responsive-ad-preview-container","& .ads-label","& .multimedia-ad-wide-image","& .short-headline","& .final-url","& .description","& .action-button","& .gradient","backgroundImage","& .multimedia-ad-landscape-image","& .multimedia-ad-square-image","& .multimedia-ad-vertical-image","reactUIBlockerStyle","modalContainerStyle","truncatedDeclaration","& .truncated","& .modal-container","-webkit-box-shadow","&.image-edit-modal","& .modal-content","& .add-image-content, & .image-edit-content","& .add-image-label, & .edit-image-title","& .add-image-description","& .image-preview-crop-description","& .image-cropper-ratio-label","& .close-dialog-button","& .search-box-container","& .search-box__input-group","& input.search-box__input","order","& .search-box__icon","& .sort-by-label","& .dropdown-selector-container","backgroundSize","-moz-appearance","& .glyphicon-triangle-bottom","& .image-picker","& .existing-images","& .existing-image-container","& .image-section-wrapper","& .image-section","& .image-dimensions","& button.existing-image","&:active button.existing-image","&:focus button.existing-image","&:hover button.existing-image","& button.glyphicon-remove","& .image-name-section","& .image-name","& .glyphicon-pencil","& .image-name-container","& .image-name-input","& + button","& #image-name-field","& ~ button","& .image-delete.glyphicon.glyphicon-remove","& .ba-pagination","& .choose-file-description","& .file-picker-react-wrapper","& .file-picker-btn","& ~ .file-text","& .add-image-button-bar, & .image-edit-actions","& .image-cropper-in-edit","& .edit-preview-section","& .edit-section","& .preview-section","& .preview-section-title","& .shared-budget-switch-editor-grid-wrapper","& .shared-budget-switch-editor-grid-innner-wrapper","& .shared-budget-switch-editor-grid","& table>thead>tr>th, & table>tbody>tr>td","& table>tbody>tr>td:nth-child(1), & table>tbody>tr>td:nth-child(2)","& table>tbody>tr>td:nth-child(3)","& table>tbody>tr>td:nth-child(4), & table>tbody>tr>td:nth-child(5)","& .sort-indicator","& .grid-cell-text","& .select-row","&:focus:before","& .cell-budget-amount .grid-cell-text","& .shared-budgets-grid-status-icon","& .shared-budget-switch-editor-selected-budget","& > a:focus","& .shared-budget-switch-editor-selected-budget-edit","& .shared-budget-no-budget-warning","& .shared-budget-no-selected-budget-warning, .shared-budget-is-not-allowed-warning","& .container-budget","& .budget-amount","& .alert-info.form-group","& .alert-image","& .estimation-result, .kpiestimation-result","& .helpbutton","& .estimated-clicks, .estimated-impressions, .estimated-spend, .estimated-position, .estimated-CTR, .estimated-avgCPC","_ref2$singleListBoxWi","singleListBoxWidth","& .association-section, & .audience__exclusion, & .audience__association","& .bid-adjustment-section","& .form-group:nth-child(3)","& .inline-control","& #bidAdjustInput","& .cashback-settings-section","& .cashback-percent-cell","& .dmp_select_section","& .form-group:nth-child(1)","& .audience-association-selector-item-table.ineligible-ima","& .layout-columns-element:nth-child(3)","& .dlb-selected-header, .dlb-source-header","& .dlb-source-header, & .dlb-selected-header, & .k-loading-mask","& .audience-association-selector-item-name-text, & .tree-item, & .audience-association-selector-item-col","& .audience-association-selector-item-col","& .audience-association-selector-item-listitem-col, .audience-association-selector-item-listitem-col-bulk","& .audience-association-selector-item-col.audience-association-selector-item-listitem-col","& .audience-association-selector-item-col.audience-association-selector-item-listitem-col-bulk","& .audience-association-selector-item-listsize-text","& .tree-listsize","& .audience-association-internalization","& .dlb-source-list.dlb-source .selectable-treeview .dlbItem","& .dlbItem-actions","&>a.tree-action","&>td","& .tree-text","& .dlb-emptyMessage","& .empty-message-action","& .dlb-internalzation-popover.representation","& .popover-title-content__title-text","& .dlb-internalzation-popover","& .popover-view","& .popover-view__dismiss","& .popover-titled-content__title","& .popover-view__content","& .market-lists","& .table-bordered","& thead>tr>td","border-bottom-width","& thead>tr>td:nth-child(1)","& thead>tr>td:nth-child(2)","& thead>tr>th:nth-child(2)","& .pager-container","&.disabled,&[disabled]","& .audience-association-internalization-info","& #InMarket.associationDoubleListBoxControl, & #InMarket.exclusionDoubleListBoxControl","& .audience-association-selector-item-name-text","& .glyphicon-triangle-bottom:before","& .glyphicon-triangle-right","& #Product .empty-message-action a","& hr","& .layout-columns-container","& .has-feedback","& .searchbox-searchbutton:focus","& .dlb-source-container, .dlb-selected-container","& .dlb-source-header, .dlb-selected-header","& .audience-association-selector-header-col.audience-association-selector-header-listsize-col","& .audience-association-selector-header-col.audience-association-selector-header-listsize-col-bulk","& .audience-association-selector-header-col.audience-association-selector-header-name-col","& .audience-association-selector-header-listsize-col, .audience-association-selector-header-listsize-col-bulk","& .dlb-source-list, .dlb-selected-list","& .dmp:nth-child(3)","& .dlb-source-list","& .audience__association .association__body .association-section .radio > div > span","& .audience-modal.modal.in","audienceAssociationSectionStyle","& .association__body, .exclusion__body","& .DMP_doublelistbox_section .doubleListBox.layout-columns .layout-columns-container .layout-columns-element","& .dlb-source-container .dlb-source.dlb-source-list, .dlb-selected-container .dlb-selected.dlb-selected-list","& .dlbItem .dlbItem-content .audience-association-selector-item-table .audience-association-selector-item-col.audience-association-selector-item-name-col",".extension-editor__container, .image-ad-extension-v2-edit","& .form-horizontal .form-group","& .form-horizontal","& .control-value","& .form-input-container[data-property=\"IsCallTrackingEnabled\"]","& .radio label","& .selectorControl","& .form-label-container","& .k-picker-wrap.k-state-default .k-select .k-icon.k-i-calendar","& .url-protocol","& .url-field","& .input-group .form-control","& .input-group .input-group-addon","& .form-groups-with-sidebar","&  .sidebar","& .sidebar__right-bracket","& .sidebar__content","& .sidebar__content_aggregate-length","& .alert","& .url","& .mobile-url","& .dayTimeRange","& select.form-control","& select.form-control.hour-select","& select.form-control.minute-select","& .filtercloseimage","& .filtercloseimage:before","& .tracking-template__container","& .font-error","& #LandingPageUrlErrors","& .expandedImage, & .expanderImage","& .expanderImage","& .expandedImage:before","& .string-list-input .side-close-image","& .closeimage:before","& .custom-params-template","& .custom-param-entry","& .custom-param__key-container","& .custom-param__key-field","& .custom-param__value-field",".extension-editor__extra","& .fieldItemAd","& .fieldRowAd .col-sm-offset-4","& .advanced-options .col-sm-offset-4.col-sm-8","& .url-options .col-sm-offset-4.col-sm-8","& .advanced-options .col-sm-8.form-control-static","& .url-options .col-sm-8.form-control-static","& .advanced-options .col-sm-8.uurl-test-tool__container","[data-type=\"AppAdExtension\"]","& [data-property=\"DestinationUrl\"]","[data-type=\"ReviewAdExtension\"]","& [data-property=\"Url\"]","& .form-input-container","[data-type=\"CallAdExtension\"]","& input[type=radio]","[data-type=\"StructuredSnippetAdExtension\"]","& button.btn-link.add-row",".actionextension-search-dropdown-container","selectElementStyle","includeSelector","& .glyphicon-chevron-down","& .open > .dropdown-toggle:focus, & .open > .dropdown-toggle:hover","& #srch-term","& .dropdown-search-selector__search--submit","& .dropdown-search-selector__option","& > a:focus:after","&.dropdown-search-selector__option--selected > a","& .empty-result-message",".cx-select .structured-snippet-category-layer-1",".cx-select .structured-snippet-category-layer-2",".price-extension-table-rows","& .table-row-header label","& input[title=\"Price\"]",".PriceTableRow-property-Header-container","& .text-form-hint-inline",".PriceTableRow-property-Description-container",".PriceTableRow-property-PriceQualifier-container",".PriceTableRow-property-CurrencyCode-container",".PriceTableRow-property-Price-container",".PriceTableRow-property-PriceUnit-container",".PriceTableRow-property-FinalUrls-container","[data-type=\"PriceAdExtension\"]","& .table-row-header","& .extension-editor__form-container","& .object-list-item","& .control-value.col-sm-10","& .object-action","& .form-group.scheduling-form","& .control-label.col-sm-2","[data-type=\"FilterLinkExtension\"]","[data-type=\"PromotionExtension\"]","[data-type=\"FlyerExtension\"]","[data-type=\"VideoExtension\"]",".PriceTableRow-property-Description-group",".PriceTableRow-property-PriceQualifier-group",".PriceTableRow-property-CurrencyCode-group",".PriceTableRow-property-Price-group",".PriceTableRow-property-PriceUnit-group",".PriceTableRow-property-FinalUrls-group",".PriceTableRow-property-FinalMobileUrls-group","[data-type=\"ActionAdExtension\"]","& .control-label.col-sm-4","& button.row.btn.btn-default.dropdown-toggle","& button.btn.btn-default.dropdown-search-selector__search--submit.filter_search_icon_small",".automated-extensions__options-container","& input[type=checkbox]","& .label__text","& .justification__input","& .opt-out__checkboxes label","& .form-horizontal .form-label-container","& .control-label span","& .radio .label__text","& li.opt-out__checkbox input","& .automated-extensions__options panel","& .label__sub-text",".img-editor-list-group",".img-editor-selected-list","& .selected-img-description",".img-editor","& .imgEditor-form .col-sm-4","& ul[role=radiogroup]","& .ui-tabs-selected .btn","& .img-editor-selected-img","& .image-selected & img","&.image-selected &:hover","& .selected-img-delete-icon",".image-selected .img-editor-selected-img:hover &","& .img-editor-ratio-list","& .img-editor-ratio-list.ratio12x10","& .img-editor-selected-listitem","& .image-preview","& .imgEditor-listitem",".img-editor-ratio-list &",".img-editor-ratio-list & img",".ratio12x10 &",".ratio4x3 &",".ratio3x2 &",".ratio16x9 &",".img-preview","& .imgEditor-listitem img","& .imgEditor-listitem-delete","& .crop-item","& .radio input[type=\"radio\"]","& .btn-group li","& .col-sm-offset-2","& .col-sm-4","& .form-group .col-sm-10",".imgEditor-container-edit-ps4n","& .media-object",".imgEditor-crop",".img-editor-crop",".crop-item",".img-editor-menu",".imgeditor-save-container",".image-cropper","& .crop-area","& .imgEditor-crop","& .image-extension-preview","& .mediaBody","& .note-creation-review","& .note-crop-preview","& .brand-logo-placeholder",".jcrop-handle","&.ord-ne","&.ord-se","&.ord-nw ","&.ord-sw",".image-picker","& .drop-picker-area","& div","& .drop-area","& .add-image-text",".jcrop-holder",".jcrop-tracker",".jcrop-keymgr","#selector-control-container",".save-bar","& .btn.btn-primary",".k-overlay",".k-widget.k-window",".image-ad-extension-v2-edit","& .add-image-button","& .col-sm-4.control-label","& .extension-editor__extra","& input[type=checkbox].single-eligible-checkbox","& input[type=checkbox].multi-eligible-checkbox","& .scheduling-form","& .extension-images-control","& .image-section-label","& .image-experience-content .image-list-view-content .remove-all-button","& .image-experience-content .image-list-view-content .image-list","& .image-experience-content .image-list-view-content .image-list .image-list-label","& .image-experience-content .image-list-view-content .image-list .image-list-item","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-item-ratio-label","& .image-experience-content .image-list-view-content .image-list .image-list-item:hover .image-list-item-image .dropdown.btn-group","& .image-experience-content .image-list-view-content .image-list .image-list-item:focus","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group.image-edit-dropdown .dropdown-toggle","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu li","& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu li a","& .image-experience-content .image-list-view-content .image-list .image-list-item.empty-image-list-item button","& .image-experience-content .image-list-view-content .image-list .image-list-item.empty-image-list-item button:focus","& .mobile-multi-img .image-combo-contanier","& .new-responsive-ad-preview-container .responsive-ad-preview-content","& .new-responsive-ad-preview-container .preview-type-string","& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu li","imageExperienceContentStyle","editImageCommonStyle",".new-responsive-ad-preview-container","& .bing-desktop-img","& .long-headline","& .image-combo-contanier","& .image-container","& .extension-headline","& .mobile-multi-img","& .bing-single-image",".add-image-content-container .add-image-content","& .image-picker-container","& .nav-pills.pill-control","& .pill-item-label-container","& .react-block-ui > div:last-child > div > div",".action-language","& .actionextension-search-dropdown-container",".action-text","_ref$includeSelector","& .image-experience-content .add-image-content","& .image-experience-content .add-image-content .add-image-label","& .image-experience-content .add-image-content .add-image-description","& .image-experience-content .add-image-content .search-box-container","& .image-experience-content .add-image-content .search-box-container .search-box__input-group .search-box__input.form-control","& .image-experience-content .add-image-content .search-box-container .search-box__input-group .search-box__icon","& .image-experience-content .add-image-content .add-image-button-bar","& .image-experience-content .add-image-content .dropdown-selector-container","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle .icon-right.glyphicon-triangle-bottom","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-content","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .empty-message","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item:hover","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item.selected","& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item .item-actions","& .image-experience-content .add-image-content .sort-by-label","& .image-experience-content .add-image-content .image-picker","& .image-experience-content .add-image-content .image-picker .existing-images","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-dimensions, .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-edit.glyphicon.glyphicon-pencil, .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-delete.glyphicon.glyphicon-remove","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .existing-image","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .existing-image img","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-dimensions","textIndent","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-edit.glyphicon.glyphicon-pencil","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-delete.glyphicon.glyphicon-remove","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container input","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container button","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container [role=alert]","& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name","& .image-experience-content .add-image-content .file-picker-react-wrapper","& .image-experience-content .add-image-content .pagination-control-container","& .image-experience-content .add-image-content .pagination-control-container .ba-pagination>*","& .image-experience-content .add-image-content .pagination-control-container .pager-input","& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default","& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default:disabled","& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default:disabled .glyphicon","& .image-experience-content .add-image-content .pagination-control-container span","& .react-image-cropper","& .react-image-cropper .jcrop-handle","& .react-image-cropper .jcrop-handle.ord-ne","& .react-image-cropper .jcrop-handle.ord-ne:before","& .react-image-cropper .jcrop-handle.ord-se","& .react-image-cropper .jcrop-handle.ord-se:before","& .react-image-cropper .jcrop-handle.ord-nw","& .react-image-cropper .jcrop-handle.ord-nw:before","& .react-image-cropper .jcrop-handle.ord-sw","& .react-image-cropper .jcrop-handle.ord-sw:before","& .react-image-cropper .jcrop-holder","& .react-image-cropper .jcrop-holder .jcrop-tracker","& .react-image-cropper .jcrop-holder .jcrop-keymgr","& .image-experience-content .image-edit-content .edit-image-title","& .image-experience-content .image-edit-content .close-dialog-button","& .image-experience-content .image-edit-content .image-preview-crop-description","& .image-experience-content .image-edit-content .image-cropper-in-edit","& .image-experience-content .image-edit-content .image-cropper-in-edit .image-cropper-ratio-label","& .image-experience-content .image-edit-content .image-replace-description","& .image-experience-content .image-edit-content .preview-section","& .image-experience-content .image-edit-content .preview-section .preview-section-title","& .image-experience-content .image-edit-content .image-edit-actions","& .image-experience-content .modal-container.image-edit-modal .modal-content","& .image-experience-content .logo-item .logo-image-container","& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group","& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group #logo-edit-dropdown","& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu","& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu li a","& .image-experience-content .add-image-button","& .image-experience-content .on-add-logo-button","& .image-experience-content .logo-label","& .image-experience-content .image-section-label","& .image-experience-content .close-dialog-button","& .image-experience-content .button-as-link","& .created-ad-list-container.row","& .created-ad-list-container.row .ad-list-item","& .created-ad-list-container.row .ad-list-item:first-child","& .created-ad-list-container.row .ad-list-item .create-another-ad","& .created-ad-list-container.row .ad-list-item .create-another-ad:hover, .created-ad-list-container.row .ad-list-item .create-another-ad:active, .created-ad-list-container.row .ad-list-item .create-another-ad:focus","& .created-ad-list-container.row .create-another-ad-container","& .created-ad-list-container.row .existing-ad","& .created-ad-list-container.row .existing-ad p","& .created-ad-list-container.row .existing-ad .existing-ad-image","& .created-ad-list-container.row .existing-ad .existing-ad-options","& .created-ad-list-container.row .existing-ad .existing-ad-options button","& .created-ad-list-container.row .existing-ad .existing-ad-options button:hover, .created-ad-list-container.row .existing-ad .existing-ad-options button:active, .created-ad-list-container.row .existing-ad .existing-ad-options button:focus","& .created-ad-list-container.row .existing-ad:hover .existing-ad-options","& .react-image-experience .blocker","& .react-image-experience .blocker .blocker-indicator","& .react-image-experience .blocker-text","& .react-image-experience .blocker-image","& .new-responsive-ad-preview-container .additional-disclaimer","& .new-responsive-ad-preview-container .text-container","& .new-responsive-ad-preview-container .text-container .long-headline","& .new-responsive-ad-preview-container .text-container .short-headline","& .new-responsive-ad-preview-container .text-container .business-name-with-ads","& .new-responsive-ad-preview-container .text-container .business-name-with-ads .adslabel","& .new-responsive-ad-preview-container .text-container .business-name-with-ads .business-name","& .new-responsive-ad-preview-container .msn-single-carousel .text-container, .new-responsive-ad-preview-container .edge-single-carousel .text-container, .new-responsive-ad-preview-container .msn-double-carousel .text-container","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .long-headline","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline","& .new-responsive-ad-preview-container .msn-single-carousel .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel .gradient::after","& .new-responsive-ad-preview-container .msn-single-carousel:hover, .new-responsive-ad-preview-container .edge-single-carousel:hover, .new-responsive-ad-preview-container .msn-double-carousel:hover","& .new-responsive-ad-preview-container .msn-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .short-headline","& .new-responsive-ad-preview-container .msn-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel:hover .gradient::after","& .new-responsive-ad-preview-container .audience-network-wide, .new-responsive-ad-preview-container .edge-medium-headline, .new-responsive-ad-preview-container .msn-medium-headline, .new-responsive-ad-preview-container .msn-in-article, .new-responsive-ad-preview-container .msn-small-headline, .new-responsive-ad-preview-container .audience-network-square-image, .new-responsive-ad-preview-container .mobile-web-outlook","& .new-responsive-ad-preview-container .audience-network-wide .text-container, .new-responsive-ad-preview-container .edge-medium-headline .text-container, .new-responsive-ad-preview-container .msn-medium-headline .text-container, .new-responsive-ad-preview-container .msn-in-article .text-container, .new-responsive-ad-preview-container .msn-small-headline .text-container, .new-responsive-ad-preview-container .audience-network-square-image .text-container, .new-responsive-ad-preview-container .mobile-web-outlook .text-container","& .new-responsive-ad-preview-container .audience-network-wide .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .edge-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-in-article .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-small-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .audience-network-square-image .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .mobile-web-outlook .text-container .business-name-with-ads .business-name","& .new-responsive-ad-preview-container .msn-single-carousel","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline .multi-line-processed-text","& .new-responsive-ad-preview-container .edge-single-carousel","& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline","& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline .multi-line-processed-text","& .new-responsive-ad-preview-container .msn-double-carousel","& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline","& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline .multi-line-processed-text","& .new-responsive-ad-preview-container .audience-network-wide","& .new-responsive-ad-preview-container .audience-network-wide .text-container","& .new-responsive-ad-preview-container .audience-network-wide .text-container .long-headline","& .new-responsive-ad-preview-container .audience-network-wide .text-container .description","& .new-responsive-ad-preview-container .msn-in-article","& .new-responsive-ad-preview-container .msn-in-article .text-container","& .new-responsive-ad-preview-container .msn-in-article .text-container .long-headline","& .new-responsive-ad-preview-container .msn-in-article .text-container .description","& .new-responsive-ad-preview-container .msn-medium-headline","& .new-responsive-ad-preview-container .msn-medium-headline .text-container","& .new-responsive-ad-preview-container .msn-medium-headline .text-container .long-headline","& .new-responsive-ad-preview-container .edge-medium-headline","& .new-responsive-ad-preview-container .edge-medium-headline .text-container","& .new-responsive-ad-preview-container .edge-medium-headline .text-container .long-headline","& .new-responsive-ad-preview-container .audience-network-square-image","& .new-responsive-ad-preview-container .audience-network-square-image .image-container","& .new-responsive-ad-preview-container .audience-network-square-image .short-headline","& .new-responsive-ad-preview-container .msn-small-headline","& .new-responsive-ad-preview-container .msn-small-headline .image-container","& .new-responsive-ad-preview-container .msn-small-headline .long-headline","& .new-responsive-ad-preview-container .web-desktop-outlook","& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo, .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow, .new-responsive-ad-preview-container .web-desktop-outlook .short-headline, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator, .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .business-name","& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo","& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo p","& .new-responsive-ad-preview-container .web-desktop-outlook .business-name","& .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow","W","& .new-responsive-ad-preview-container .web-desktop-outlook .short-headline","& .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator","& .new-responsive-ad-preview-container .mobile-web-outlook","& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo, .new-responsive-ad-preview-container .mobile-web-outlook .business-name","& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo","& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo p","& .new-responsive-ad-preview-container .mobile-web-outlook .business-name","& .new-responsive-ad-preview-container .mobile-web-outlook .short-headline","& .new-responsive-ad-preview-container .mobile-web-outlook .description","& .new-responsive-ad-preview-container .mobile-web-outlook .description, .new-responsive-ad-preview-container .mobile-web-outlook .short-headline","_ref2$leftMargin","leftMargin","_ref2$rightMargin","rightMargin","_ref2$topMargin","topMargin","& .audience-reach-estimate-container, & .reach-estimate-control-container","& >div","& .reach-estimate-control","& .panel","& .audience-meter-container","& .audience-meter>div","& .meter-container","& div[style *= \"border-top-color: green\"]","& div[style *= \"border-top-color: red\"]","& .meter","& .specific-meter, & .broad-meter","& .broad-meter","& .audience-specific-label","& .audience-broad-label","& .estimate-note","& .reach-warning","_ref2$modalWidth","modalWidth",".audience-modal","& input.error","& .modal-dialog","& .modal-header","& .modal-body","& .col-sm-7, .col-sm-12","& .inline-sm-input","& .membershipDuration","& .step2","& .row:nth-child(3)","& .product-audience-popup","& .text-highlighted","& .modal-footer",".annotation-text",".audienceConditionControl","& .simpleMode","& .audiencePickerContainer","& h5","& .exampleText","& .audiencePickerControl","& .audiencePicker","& option","& .create","& .panel-footer","uetTagSelectorStyles",".uet-tag-help-panel","& .product-audience-code-sample","& .pull-right","& .btn-uet-download-tag, & .btn-uet-email-tag",".manageRemarketingListContainer","& > div:nth-child(6) > form > div:nth-child(4)","& > .col-sm-2","& > .col-sm-10","& .inactive","& .panel-title hr","& .audience-type-selector-panel .audience-type-selector label .type-normal","& >div[data-bind=\"visible: isAudienceTitleStep() || editMode()\"]","& .col-sm-10","& #ManageLblName + .col-sm-6","& >div[data-bind=\"visible: isAudienceDetailStep() || (!isCustomerListAudience() && editMode())\"], & >div:nth-child(6)","& #ManageLblSelectTag + .col-sm-10, & #ManageLblListOption + .col-sm-10","& input[data-bind=\"checked: isInfiniteDuration\"] + .col-sm-1","& > div.panel-group","& > form.formContainer.form-horizontal","& label.control-label.col-sm-2","& #ManageLblListOption","& #tagsDropDown","& #conjunctionDropDown_EventCategory, #conjunctionDropDown_EventAction, #conjunctionDropDown_EventLabel, #conjunctionDropDown_EventValue","& #remarketingDescription","& #remarketingDescription + .annotation-text","& .remarketing-list-panel #whoToAddDropDown","& .indented-section","& .title-area","& .h5","& .policyContainer","& input.membershipDuration","& .membership-duration>div.col-sm-1","& .radio label div","& .customer-list-detail-panel","& >label.control-label","& >div.col-sm-8","& .customer-list-upload-selector","& input[type=\"radio\"]","& input[type=\"radio\"] + div","& .customer-list-file-picker","& .file-path-indicator","& .upload-selector-error","& .consent-line","& .checkbox-inline","& .consent-line-error","& >input[data-bind=\"checked: isInfiniteDuration\"]","& .col-sm-1","& .col-sm-1.form-control-static","& .col-sm-1 > label","& .shared-library-audience-scope-editor","& .sharing-scope-dblist","& .alert.alert-info","& > .form-horizontal.row","& .form-group.row","& .col-lg-6","& .col-lg-12","& .sharing-scope-tree-view","& .sharing-scope-tree-view__search-box","& .search-box__input","& .search-box__icon:before","& .sharing-scope-tree-view__add-all, .sharing-scope-tree-view__remove-all","& .arrow-button.enabled","& .arrow-button.remove","& .sharing-scope-tree-view__hierarchy-tree","& .hierarchy-tree","& .ReactVirtualized__Grid","& .ReactVirtualized__Grid__innerScrollContainer","& .tree-node","& .col-lg-6:first-child","& .col-lg-6:last-child","& .sharing-scope-dblist .col-lg-6:nth-child(2)","& .upload-panel","& .panel-title + .form-group","& .result-panel-content","& .result-table","& thead, & tbody","& td:first-child","& td:last-child","& .result-panel-progress","& .progress-status","& .progress-container","& .progress-bar","& .result-panel-success-statement","& .buttonsContainer .btn",".conditionsPanel",".product-audience-creation","& .row-gap","& input[type=\"number\"]","& input[type=\"number\"]::-webkit-outer-spin-button, input[type=\"number\"]::-webkit-inner-spin-button",".uet-modal","& .footerDoneCancel","& .save-btn-cb","& .condition-dialog",".k-list-container","& .k-list","& .k-item","& .k-item:hover, .k-state-focused","& .k-extra",".audience-creation-panel","& .audience-modal","& .cnf-or-dnf-panel","& >.form-group","& .condition-title",".manage-tag-alert-panel","& .panel-content","& .panel-close-container","& .panel-cancel-icon","& .panel-header","& .audience-modal.manage-tag-alert.in .modal-dialog","& .modal-content .modal-footer",".modal-backdrop.in","_ref$width",".uet-tag-selector","& .link-manage-tag","& .create-tag-form",".k-multiselect","& .k-multiselect-wrap","zoom","& .k-reset","& .k-button","& span:first-child","& .k-edit","& .k-edit:before","& .k-input","& .k-multiselect-wrap:after",".combined-list-detail-panel","& > div:first-child > div:first-child","& #audience-set-relationship-selection","& .double-list-box","& .category-action","& .col-sm-5 > .row:first-child","& label.control-label","& .c113,.c118,.c1112","& .button-add-remove","& .button-add-remove:hover","& .button-back","& .button-back:hover","& .glyphicon-chevron-left:before","& .glyphicon-chevron-right:before","& .glyphicon-chevron-up:before","& .glyphicon-chevron-down:before","& .source","& .search-box","& .inputGroup","& .iconba-Search","& input.input","& .iconba-Forward","& .source-categories","& .btn-group-vertical","& button.source-category","& .col-sm-11","& .category-title","& .category-description","& .source-list-box.container-fluid","& .glyphicon-chevron-right","& .item.container-fluid","& .col-sm-2","& .button-action.btn.btn-default","& .button-action.btn.btn-default:hover","& .selected","& .selected-list-box-group.container-fluid","& .selected-list-box.container-fluid","& .glyphicon-chevron-left","& .category-name-button","& .category-name-button:hover","& .category-name-button:focus","& .add-new-audience-set-button","blue","& .existing-audience-set-container","& .audience-set-panel-list-container","& ol","& .operator-selector","& .audience-set-edit-panel-buttons",".cnf-or-dnf-panel","& .dnf-panel-body, & .cnf-panel-body","& #ExpressionGroupDropDown","& .conditionsPanel","& .remove-button, & .remove-button-readonly","& .remove-text","& input[disabled],.disabled","& .predicateDropDown, .conjunctionDropDown,.conditionText","& .rule-group-operator-button","& .operatorButton",".manage-tag-alert.in","& .close","& .dialog-close-button","& .dialog-close-button:before","& .date-filter","& .customDateRangePanel ","& .datePicker","& .customTimeRangePanel","& .datePicker, .timePicker","& .errors","red","& .dropdown-menu .dividerPanel","& .date-range a","background-color","& .glyphicon-offset-left5","& .type-bold.primary-range","& .dropdown-toggle > div","& .dropdown-toggle .glyphicon-triangle-bottom","& .dropdown-toggle .glyphicon-triangle-bottom:before","& .toggle-button","_len","_key","resolvedStyles",".advanced-keyword-planner-toolbar","& .grid-submenu-flyout","& .caret-right","& .caret-right:before","& .adgroups-list","& a.grid-submenu-item","& input.margin-right-little","& .normal-font","& .grid-submenu-flyout:hover",".advanced-keyword-planner.bingadsgrid","& .grid-header-text","& .sort-indicator.glyphicon-arrow-up:before","& .sort-indicator.glyphicon-arrow-down:before","& th[data-name=\"name\"]","& th[data-name=\"searchCount\"]","& th[data-name=\"averageCPC\"]","& th[data-name=\"competition\"]","& .helpbutton:before","& tbody","& .table__row--keyword-planner","& .add-keywords-root","& .create-keywords-errors .error","& .ba-campaign-adgroup-selector","& .list-selector-content","& #Keyword_EnterKeywords_Label, & .helpbutton","& .bid-section__container .form-group","& .bidlandscape_icon","& .row.buttons-row","& #KoErrors","& .create-keywords-panel__errors","& .associations__container","& .extension-editor-dblist-container, .alert-danger","& #editorErrors","& .layout-columns-container ","& .layout-columns-element[data-bind=\"visible: features.filtering || showMaximumSelectionAlert\"]","& .form-group[data-bind=\"visible: features.filtering\"]","& >div[data-bind=\"visible: showMaximumSelectionAlert\"]","& .layout-columns-element:nth-child(2)","& .row.form-group","& .dlbItem, & .dlb-source-header, & .dlb-selected-header, & .k-loading-mask","& .dlbItem:hover","& .wordwrap, .itemTemplate-text, .appListItem-text","& .arrow-button.enabled:before","& .arrow-button.remove:before","& .arrow-button.remove+a","& .itemTemplate-text","& .pager-page","& .create-link-Container","& a.btn-create","& .save-bar","& .create-extension","& .glyphicon-plus","& .campaign-adextension-list","& .adExtension-previewbox div","& div[data-type=\"StructuredSnippet\"]","input[type=\"checkbox\"], input[type=\"radio\"]",".checkbox-inline, .checkbox>label, .radio-inline, .radio>label, label.checkbox, label.radio","input[type=\"text\"]","& .recommendation-summary-view","& >.toolbar","& .upper-toolbar","& .empty-buttons","& .empty-filter-view","& .empty-icon","& .empty-details","gridRow","gridColumn","& .empty-title","& .empty-sub-title","& .recommendation-summary-cards","transformStyle","& .recommendation-summary-card","gridTemplateRows","& .summary-header","& .recommendation-summary-header","& .summary-header-icon","justifySelf","& .summary-header-title","& .summary-header-label","& .summary-header-menu","& .toggle-context-menu","& .summary-context-menu","& .bingads-popover","& >ul","&[disabled]","& .summary-summary","& .summary-banner","& .summary-banner-title","& .summary-summary-content","& .summary-info","& .summary-description","& .summary-pitching","& .summary-estimates","& .summary-sample","& .recommendation-sample","& .sample-insight-title","& .sample-insight","& .sample-visual, & .sample-action-table","& .sample-horizontal-separator","& .sample-action-title","& .sample-more-recommendations","& .sample-visual .MicrosoftMap","& .InfoboxCustom","backgroundBlendMode","backdropFilter","crudAdStyle","& .ad-preview-header","& .recommendation-suggested-ads-column","& .recommendation-summary-ad-preview","& .summary-footer","& .primary-button","& .secondary-button","& buuton","& .action-table","& thead","& th","& tr td:last-child","& tr td:not(:last-child)","word-break","& .progress-bar-with-right-label","& .progress","& .right-label","& .navbar-nav","& .recommendation-download","& #button-download","& .nav-pills","&.active, &.active a","&:nth-child(1)","& .filter-editor","& .selector-container","& .selector-v2","_CircleSolidSmall","_DiamondSolidSmall","_TriangleDownSolidSmall","_TriangleUpSolidSmall","_SquareSolidSmall","competitionCardStyle",".competition-card","& .vnext-legend-labels-container","& .legend-label","backgroundRepeat","backgroundPosition","& .legend-label.disabled","& li:nth-child(1) .legend-label","CircleSolidSmall","& li:nth-child(2) .legend-label","DiamondSolidSmall","& li:nth-child(3) .legend-label","TriangleDownSolidSmall","& li:nth-child(4) .legend-label","TriangleUpSolidSmall","& li:nth-child(5) .legend-label","SquareSolidSmall","& .highcharts-container","& .chart-tooltip","@supports (backdrop-filter: blur(60px))","& .segment-wrapper","& .tooltip-name",".competition-card .selector-container",".competition-card .competition_action .competition_clickLink",".competition-card .competition-graph",".competition-card .tile-content .error-msg",".competition-card .competition-empty",".competition-card .competition-empty .competition-empty-text","M",".competition-card-in-toolbar",".competition-card .selector-container, .competition-card-in-toolbar .selector-container",".competition-card .selector-container .btn, .competition-card-in-toolbar .selector-container .btn",".competition-card .selector-container .truncated, .competition-card-in-toolbar .selector-container .truncated",".competition-card .domain-selector-header, .competition-card-in-toolbar .domain-selector-header",".selector-v2",".selector-v2 .selector__filter",".selector-v2 .selector__main",".selector-v2 .selector__filter .search-box__input[type=\"text\"]",".selector-v2 .selector__data-host",".selector-v2 .selector__data-progress-backdrop",".selector-v2 .selector__data-progress-overlay",".selector-v2 .selector__data-progress-overlay span",".selector-v2 .selector__data",".selector-v2 .selector__data-progress-overlay .progress__icon",".selector-v2 .selector__grid-host .table.grid",".selector-v2 .selector__grid-host .table.grid > tbody > tr > td.table__cell--icon",".selector-v2 .selector__grid-host .table.grid > tbody > tr:hover",".selector-v2 .selector__grid-host .table.grid > thead > tr:hover",".selector-v2 .selector__grid-host td",".selector-v2 .selector__list-checkbox, .selector-v2 .column-tri-state-checkbox","& > span:after","& > span.glyphicon-ok:before","& > span.glyphicon-ok:after",".selector-v2 .selector__no-data-message, .selector-v2 .selector__progress",".selector-v2 .selector__no-data-message span, .selector-v2 .selector__progress span",".selector-v2 .selector__no-data-message .progress__icon, .selector-v2 .selector__progress .progress__icon",".selector-v2 .selector__filter-pill",".selector-v2 .selector__filter-pill .pill-control",".selector-v2 .selector__filter-pill .pill-control__list--links",".selector-v2 .selector__filter-pill .pill-control__list-item--links",".selector-v2 .selector__filter-pill .pill-control__list-item--links a",".selector-v2 .selector__filter-pill-label",".selector-v2 .search-box-v2 .search-box__input-group",".selector-v2 .search-box-v2 .search-box__input",".selector-v2 .search-box-v2 .search-box__icon","speak","fontVariant","textTransform","WebkitFontSmoothing","MozOsxFontSmoothing",".selector-v2 .search-box-v2 .filter_search_icon_small","#bulkEditContainer","& .steps-wizard__content.clearfix","& .select-account-grid","& .table-bordered>thead>tr.grid-toolbar th","& input[type=radio]:before","& input[type=radio]:after","& .viewport","& table.table.table-bordered","& .filter_search_icon_small","& .filter_search_icon_small:before","& .filter-query-seperator","& .filter-query-remove","& .filter-query-or","& .filter-query-attribute",".grey-out","&::before",".experiment-budget-alert","#button-chart-toggle","&.hidden","#product-groups-toolbar-divider",".table-container table.table tbody","overflow-wrap","& tr td",".popover-edit-bid","&>span",".grid-popupeditor .grid-error-list",".grid-bid-warning","& .iconba-Warning","& .warning-count",".product-group-popover-warning.popover-view","& .iconba.iconba-Cancel","& .status_warning.iconba.iconba-Warning","& .popover-titled-content__body","& .seperator","span.clickable.toggle-row.grid-expandable:before","span.clickable.toggle-row.grid-expanded:before","span.productgroup-row-icon.clickable.show-product-selector","font-family","span.productgroup-row-icon.clickable.show-product-selector.add_icon:before","span.productgroup-row-icon.clickable.show-product-selector.grid-edit-icon:before","nav li.toggle-button-disabled #button-chart-toggle",".table-page-container","& .grid-column-DestinationUrl .grid-cell-text","& .grid-column-DestinationUrl .grid-editable-cell-container","& .scope-navigator","& .flatten-path","& .view-switch-button","& .view-switch-button.active","& .view-switch-button.not-allowed","& .toolbar-container","& .add-filter-button",".product-groups-page-list",".product-groups-page-list-hide",".product-groups-page-hierarchy",".product-groups-page-hierarchy-hide",".table-container table.table","& tbody tr td:nth-child(2)","& thead.header tr th:nth-child(2)","& span.clickable.toggle-row","&.grid-expanded, &.grid-expandable","& tbody tr td > div.grid-editable-cell-container",".product-condition-cell .productgroup-icon-container",".popover-view__content","& .productgroup-detail","& .partition-trail","& .current-attribute","& .product-sample-description","& .view-full-product","& .product-sample-id","& .product-sample-title",".blocker-container","& .blocker","#productgroups-subdivider","& .cancel-button","& .selector-column-header","& .selector-column-header-last","& .selector-column-value","& .selector-column-value-last","& .custom-values","& .add-custom-button","& .dlb-source, & .dlb-selected","& .arrow-button.disabled:before",".gotoCampaignSettings","[role=\"dialog\"].popup-editor","& .form-validation-container[data-property=\"Name\"]","[role=\"dialog\"].popup-editor .form-inline .form-group",".form-group ~ .form-group",".popup-editor .btn ~ .btn",".grid-popupeditor",".grid-popupeditor.inline-budget-editor-popup",".grid-popupeditor .btn ~ .btn",".grid-popupeditor label",".popup-editor, .grid-popupeditor","& ul.help-block.error, ul[role=\"alert\"], .grid-error-list","& > li:empty","body",".popup-editor .error, .grid-popupeditor .error, .grid-popupeditor .font-error, .k-widget .error, .popup-editor .is-error","predicateValueEditorStyle","selector","& .table.table--fixed-layout","tableLayout","& .selector__data-progress-backdrop","& .selector__data-progress-overlay","& .progress__icon","& .selector-v2 .selector__data","& .search-box-v2","&:active, &:focus, &:hover","& .search-box__icon.iconba.iconba-Search","& .search-box__input.form-control","& .column-tri-state-checkbox","& .glyphicon.glyphicon-ok","& .glyphicon.glyphicon-ok:before","& .glyphicon.glyphicon-minus","neutralDark","& .glyphicon.glyphicon-minus:before","& .table__cell--menu-item-style.table__cell--icon","& .table__cell--menu-item-style.table__cell--ellipsis-overflow","& li.action","& .divider","neutralTertiaryAlt",".tag-viewer","max-width","margin-top","margin-bottom","min-height","& .tab-content .form-control.active.tab-pane","border-color","font-size","& h6.type-bold","font-weight","& h6.colon:after","& h6","padding-right","& h6.tag-name","text-overflow","white-space","& ul.btn-group","list-style","padding-left","& .active>a","min-width","margin-left","margin-right","line-height","dialog","& .ms-Dialog-actionsRight","& .progress-text","& .spinner-header",".bingads-webui-react-callout-popover .popover-content","& .panel-heading, & .panel-header","& .ms-ColorPicker","& .ms-ColorPicker-panel","startIndex","endIndex","cellStyle","_extend","&:not(:last-child)","& .table-container table.table","& .ba-campaign-selector .ba-entity-selector","& .ba-campaign-selector .list-selector-content .add-arrow-button","& .ba-campaign-selector .list-selector-content .remove-arrow-button","& .list-selector-content .remove-arrow-button","& .list-selector-content .add-arrow-button","& .ba-entity-selector","& .ba-search-box ","& .multi-selector","& .pager-input","& .ba-list-selector","& .list-selector-header","& .list-selector-action-bar","& [class*=\"-all-content\"]","textDecorationLine","& .select-all-content .enabled.arrow-button","& .remove-all-content .remove.arrow-button","& .list-selector-item","& .item-content","& .statusIcon","& .text","& .statusEnabled_icon::before","& .statusPaused_icon::before","& .statusDeleted_icon::before","& .list-selector-item:hover","& .list-selector-item:focus","& .list-selector-empty","& .pagination-container","& .list-selector-content .arrow-button.remove","& .multi-selector-result-container","& .list-selector-container .ba-list-selector","campaignMultiSelector",".popup--labels","& .delivery-info.trigger-popup","& .status-error, & .iconba-ErrorBadge","& .status-warning, & .iconba-Warning","& .status-column.delivery_status_with_reject_reasons",".label-header-divider",".manage-labels-button",".manage-labels-button:focus","outlineColor","labelsCellScopeStyle","translateYValue","& .labels-cell-scope","& .labels-cell-mcc","& .labels-cell-account","& .labels-cell-item",".quality-score-popup","& .qs-Poor","& .qs-Good","& .qs-Values",".modal-dialog .modal-content .modal-body p.delete-column","itemContainer","itemImage","itemText","& .flyerTemplateItemContainer","& .flyerTemplateItemImage","& .flyerTemplateItemText","& .videoTemplateItemContainer","& .videoTemplateItemTextContainer","& .videoTemplateItemText","& .videoTemplateItemImage","& .videoTemplateItemImagePlaceholder","& .videoTemplateItemImagePlaceholder__background","& span.iconba.iconba-Video","& .videoTemplateItemImagePlaceholder__text","_CircleSolid","_CircleDotted","_DiamondSolid","_DiamondDotted","& .performance-metrics-value","& .performance-metrics-fluctuation, & .performance-metrics-insight","& .iconba-Insights","#fluctuation-tooltip-id .popover-content","getFluctuationContentStyle","& .fluc-lightbulb","& .fluctuation-upper-content","& .fluctuation-upper-content .fluctuation-close","& .fluctuation-lower-content","& .checkbox-container","& .checkbox","& .ms-Checkbox-text","& .confirm-container .button-container","& .fluctuation-button-container","& .cause-container-wrapper","& .cause-container-wrapper .fluc-description","& .cause-container-wrapper .action-container","& .inline-block","& .metric-entry","& .metric-counter-container","& .metric-entry .metric-color-line","backgroundPositionX","backgroundPositionY","& .metric-entry .metric-counter-text-wrapper","& .metric-text","& .metric-value","& .metric-entry .iconba.iconba-Insights","& .metric-entry .primary","CircleSolid","& .metric-entry .secondary","DiamondSolid","& .metric-entry .primaryComparison","CircleDotted","& .metric-entry .secondaryComparison","DiamondDotted","& .fluctuation-action-container","& .fluctuation-action-container .confirm-container .confirm-message","& .fluctuation-action-container .show","& .fluctuation-action-container .hide","& .fluctuation-action-container .feedback-complete","& .fluctuation-action-container .action-container","& .fluctuation-action-container .action-container button","& .fluctuation-action-container .action-container .fluc-image","& .fluctuation-action-container .action-container .HelpTopic, .fluctuation-action-container .action-container .link-text","& .fluctuation-action-container .form-container","& .fluctuation-action-container .form-container label","& .fluctuation-action-container .form-container .comment-container .comment-textarea","& .action-container-wrapper","& .action-container-wrapper .action-header","& .action-container-wrapper .action-list-item","&.nested-item","listStyleType","& .action-container-wrapper .entity-item-wrapper","& .action-container-wrapper .cause-item-segment","& .action-container-wrapper .entity-item","& .detail-container-wrapper","& .detail-container-wrapper .entity-header","& .detail-container-wrapper .entity-entry","& .viewall-container-wrapper","& .pagination-container .fluctuation-pagination","& .pagination-container .active","& div:first-child","& .card-holder__wrapper","& .card-holder__wrapper .carousel-control","&[role=\"button\"]","&:focus:after","&[role=\"button\"][disabled]:hover","& .card-holder__wrapper .carousel-control[disabled] .carousel-control","&:focus:after, &:focus","& .carousel-control .carousel-control__arrow-left:before","& .carousel-control .carousel-control__arrow-right:before",".bingads-fluctuation-callout .fluctuation-loading","& .loading-dialog",".bingads-fluctuation-callout","& a:focus, & button:not(.btn):focus","& button:not(.btn):hover","& .bingads-fluctuation-wrapper","__WEBPACK_EXTERNAL_MODULE__91__","__WEBPACK_EXTERNAL_MODULE__95__","_defaultSpecificRanges","_comparedOptions","_dateUtil","date1","date2","getCivilDateFromDate","dateRange","withDateChecker","dayOfWeek","t2","t1","range1","range2","start1","start2","end1","end2","isNaN","isUndefined","isNull","isValidDate","isDate","getFullYear","maxCivilDate","minCivilDate","civilDate","getDay","Last3Months","Last6Months","ThisYear","LastYear","EntireTimeLast18Months","EntireTimeLast5Years","timeZone","todayObj","yesterday","thisSunday","thisMonday","last7day","last14day","last30day","lastMonday","lastSunday","lastSaturday","thisMonthFirstDay","lastMonthlastDay","lastMonthFirstDay","minSupportDay","LastPeriod","textToExport","keyToExport","specificRangeId","getLastMonth","difference","parseInt","_timeZoneConverter","dateFormat","raw","getDateObj","dateString","parseCivilDate","dateObj","legacyTimeZone","toIANATimeZone","fromLegacyTimeZone","dateFromDatePicker","lcid","formattedStart","formattedEnd","compared","parseDate","RangeStartDate","RangeEndDate","RangeId","Rangelcid","RangeIndex","RangeDays","dateData","__WEBPACK_EXTERNAL_MODULE__213__","__WEBPACK_EXTERNAL_MODULE__302__","_editImageUtils","_getDateAddedOptions","_getImageSortingOptions","_getImportSourceOptions","_getTimeDescription","_getAssetTypeOptions","_useClarityHook","_convertTimeDuration","_getSearchLocationOptions","_uploadFilePicker","UsedIn","NotUsedIn","CSMLAdType","MMA","Audience","ImageExtension","MostRecent","ImageName","ImageNameDesc","LastCreated","Anytime","Google","Facebook","Tiles","Details","CSMLAdTypeAbbr","_CSMLAdTypeAbbr","AfterClickClose","AfterClickCancelButton","LaunchedAssetLibrary","LaunchedAddAssetsFromAssetLibrary","LaunchedUploadAssetsFromAssetLibrary","LaunchedAddImageAssetsFromAssetLibrary","LaunchedAddVideoAssetsFromAssetLibrary","LaunchedAddAssetsFromCrudAd","LaunchedEditImage","LaunchedImageDetails","LaunchedVideoDetails","FolderAssetType","Video","RootFolderName","_RootFolderName","folderIdToTest","Folder","Asset","Current","Global","Unverified","Draft","Active","Failed","Landing","ImageDetails","ImageEditing","AddLocalAssets","AddLocalFolder","AddImage","AddImageFolder","VideoDetails","AddVideo","V2","V3","App","Picker","civilDateEqual","d1","d2","r1","r2","civilDateToDebugString","cd","dr","dateStr","ianaTimeZone","formatDate","elem","classList","contains","parentElement","getSizeLimitPerAccount","aid","localStorage","getItem","valObj","limitData","logger","assetLimit","logError","foldersLimit","itemIndex","listItems","tabTarget","enterHandler","spaceHandler","customTabHandler","code","video","status","VideoStatus","permissions","VersionForLog","getRealUsedFlagValue","preference","flagSuffix","realUsedFlagStr","realUsedFlagHandlerStr","realUsedFlag","realUsedFlagHandler","_getRealUsedFlagValue","haveUsed","triggerFlag","usedFlagSuffix","timestamp","survey","surveyManager","aspectRatioConfig","aspectRatioAsRatio","aspectRatioString","extraExtension","adType","allAspectRatioConfig","getAspectRatioConfig","placementType","isImageExtension","sizeValidForRatio","getSizeErrorRatioList","requiredOnly","ratioList","config","errorListForMMA","errorListForAudience","errorListForExtension","uniq","CSMLTimeFrame","CSMLSortBy","CSMLImportSource","now","diffInSec","seconds","diffInMin","minutes","diffInHour","hours","diffInDay","MAX_DAYS","_clarity","customTags","haveSetClarityTags","setHaveSetClarityTags","tagsToSet","tagsObj","currentTag","setClarityTag","__WEBPACK_EXTERNAL_MODULE__382__","DurationInMS","CSMLSearchLocation","__WEBPACK_EXTERNAL_MODULE__50__","__WEBPACK_EXTERNAL_MODULE__56__","_checkboxGroup","_radioGroup","unthemed","_withStyleOverride","_withCustomClassName","_layout","Alert","withStyleOverride","Label","Button","Radio","Checkbox","Input","Select","TextArea","Glyphicon","Dropdown","DropdownToggle","withCustomClassName","Toggle","DropdownMenu","Menu","DropdownButton","MenuItem","Modal","Tooltip","OverlayTrigger","Overlay","Popover","Navbar","Nav","NavDropdown","NavItem","Tabs","__WEBPACK_EXTERNAL_MODULE__43__","fieldNames","StyledComponent","forwardRef","themeClasses","partial","getClassName","nameProp","any","_reactJss","withTheme","ThemedComponent","ThemeProvider","emptyTheme","jss","createStyleSheet","attach","fieldName","ruleName","split","elementStyles","rule","getRule","addRule","__WEBPACK_EXTERNAL_MODULE__45__","__WEBPACK_EXTERNAL_MODULE__46__","__WEBPACK_EXTERNAL_MODULE__47__","customClassName","bsRole","WrappedComponentWithCustomClassName","forwardedRef","rest","Element","displayName","WrappedComponentWithForwardRef","__WEBPACK_EXTERNAL_MODULE__49__","CheckboxGroup","getItemValue","getItemId","items","checked","onChange","without","renderItem","RadioGroup","_progress","_radialProgress","Progress","progressPercentage","aria-valuemin","aria-valuemax","_getStyles","RadialProgressUnthemed","size","stroke","strokeWidth","radius","strokeLength","PI","sizePixels","svg","viewBox","circle","cx","cy","primary","strokeDasharray","RadialProgress","fill","strokeDashoffset","strokeLinecap","projectId","tags","userId","sessionId","pageId","q","async","y","initialize","clarity","tagValue","_imageCommonStyle","_palette","_commonStyles","_sharedImagePreviewStyles","neutralQuaternaryAlt","& .ba-pagination, .dlb-pager-container, .pagination-control","& > .text","& button:hover","& button:disabled","& .glyphicon-triangle-left, & .glyphicon-triangle-right","& .pager, .location-bid-pager-view","& .pager-input, .page-number-input, .grid-pager-input","& .pager-input[disabled], & .page-number-input[disabled], & .grid-pager-input[disabled]","& .pager-previous, & .pager-next, & .glyphicon-triangle-left, & .glyphicon-triangle-right","& .pager-previous, & .pager-next","& .pager-previous:hover, & .pager-next:hover","& .pager-previous-disabled, & .pager-next-disabled","& .pager-previous-disabled:before, & .pager-previous:before","& .pager-next-disabled:before, & .pager-next:before","& .pager-totalCount","& .pagination-control","& .page-size-selector",".btn-primary",".btn-hero",".btn-default",".form-control","addEditCommonStyle","& .ba-search-box","& .clear-search","& .replace-failed-video","& .replace-failed-video:hover","&.circular-hover","&.circular-hover:hover","& .image-info-section","& .image-id","& .edit-url-description","& .file-drag-container","& .file-picker-react-wrapper.disabled","& > .error","& .HelpTopic, & .a","editImageStyle","& .image-edit-content .edit-image-title","& .image-edit-content .close-dialog-button","& .image-edit-content .image-preview-crop-description","& .image-edit-content .image-cropper-in-edit","& .image-edit-content .image-cropper-in-edit .image-cropper-ratio-label","& .image-edit-content .image-replace-description","& .image-edit-content .preview-section","& .image-edit-content .image-edit-actions","& .edit-image-content-container","getCommonPreviewContainerStyles","_objectSpread2","addImageStyle","& .video-inactive","& .video-inactive:hover","& .add-image-content","& .suggestion-error-invalid","& .suggestion-error img","& .desc","& .middle-info.btn-link","& .btn-link","&.image-selector-for-thumbnail","& + div > div > div, .react-block-ui > div:last-child > div > div","& + div .blocker-image, .react-block-ui > div:last-child > div > div > .blocker-image","& .add-video-content-container .upload-choice-group","& .ms-Label","& .add-video-content-container .ms-ChoiceField:first-child","& .add-video-content-container .ms-ChoiceField:nth-child(2)","& .add-video-content-container .ms-ChoiceField-field","& .add-video-content-container .upload-local-file-container","& .add-video-content-container .upload-progress-container","& .bar-upload-progress","& .add-video-content-container .cancel-upload-button","& .add-video-content-container .file-picker-input","& .add-video-content-container .file-picker-container","& .add-video-content-container .image-url-container","& .image-url-input","& #image-url-field, #image-description-field","& .image-url-button","@global",".popover-content","max-height","components","themePalette","filterContainer","& > .predicate-list","& .filter-bar-button","& .btn:focus","& .selector-placeholder.labels-selector","& .radial-progress-text","__WEBPACK_EXTERNAL_MODULE__313__","__WEBPACK_EXTERNAL_MODULE__79__","_multiLineEllipsisText","MultiLineEllipsisText","debounce","hiddenTextRef","containerRef","clientWidth","wordArray","newText","innerText","scrollHeight","offsetHeight","processedText","processText","array","__WEBPACK_EXTERNAL_MODULE__38__","_toggle","isChecked","_this$props$id","htmlFor","aria-checked","asyncGeneratorStep","gen","_next","_throw","arg","info","done","_asyncToGenerator","__webpack_exports__","__WEBPACK_EXTERNAL_MODULE__111__","__WEBPACK_EXTERNAL_MODULE__138__","_comparedDateRangePicker","_ranges","_v","_reactMedia","_primitive","_hocWithApplyCloseButton","_comparedDateRangeCalendar","i18nMap","close","compare","defaultAriaLabel","getDisplaySelectedDate","midDash","getDisplaySelectedDateWithType","selectedType","getMainDatePickerDateDisplay","getXTimesAgoMainDatePickerDateDisplay","getXTimesAgoDate","globalEvent","ComparedDateRangePicker","ranges","specificRanges","onSwitchCompare","selectedRangeStart","selectedRangeEnd","selectedComparedRangeStart","selectedComparedRangeEnd","shouldShowQuickLeftRightPicker","currentRangeId","getRangeIndexWithDefaultType","selectedSpecificRange","isTheSameRange","isToggleChecked","dialogVisible","preState","preSelectedRange","inputRef","defaultSpecificRanges","needUpdateInFirstTime","_props$rangeIndex","rangeWithIndex","getNthPeriodWithRangeType","getSelectedRange","comparedTypeKey","needUpdateBecauseOfCorrection","disableCompare","displayType","isMainDatePicker","relativeDropdown","ComparedDateRangeCalendarWithApplyAndClose","sizeClass","WithApplyAndCloseButton","onApply","applyText","closeText","ComparedDateRangeCalendar","ComparedCalendar","selectedRangeId","ResponsiveComparedCalendar","matches","displaySelectedDate","campaignUICalendar","show","onHide","animation","rootClose","ariaLabelProp","ariaLabelledBy","omit","aria-labelledby","uniqueSuffix","substring","onInputClick","readOnly","aria-haspopup","aria-expanded","aria-describedby","glyph","onQuickApply","getComparedTypeFromRange","ComparedDateRangePickerPropTypes","ComparedDateRangePickerDefaultProps","__WEBPACK_EXTERNAL_MODULE__214__","__WEBPACK_EXTERNAL_MODULE__216__","__WEBPACK_EXTERNAL_MODULE__218__","__WEBPACK_EXTERNAL_MODULE__219__","_doubleMonthCalendar","_specificSelectRange","_specificCompareType","_compareToggle","_dateRangeContainer","CalendarStatus","Initial","Start","CompareStart","InputBoxIndex","selectStart","selectEnd","compareStart","compareEnd","isCompareOn","calendarStatus","getComparedRangeFromType","setStateForRangeChange","getRangeOnSelectDate","getNextStatus","typeId","selectedOption","specificRange","findIdFromSpecificRanges","isCompareEnabled","_this$state3","_this$state4","withCompareClassName","leftPartClassName","DateRangeContainer","onStartInputChange","onRangeInputChange","onEndInputChange","highlightInputIndex","onInputFocus","startDateAriaLabel","endDateAriaLabel","SpecificRange","onClickSpecificRange","onChangeSelectOption","onChangeComparedType","SpecificCompareType","RangeDisplayAndToggle","selectedDateRange","selectedComparedDateRange","DoubleMonthCalendar","onSelectDateCallback","renderApply","renderDismiss","leftNavigatedDate","nextState","onNavigateStartMonthDate","onNavigateEndMonthDate","__WEBPACK_EXTERNAL_MODULE__222__","textToShow","specificRngeId","op","ran","getStartDate","monthStart","getEndDate","monthEnd","selected","compareLabel","marker","__WEBPACK_EXTERNAL_MODULE__228__","_dateRange2","getCivelDateFromValue","parsedCivilDate","prevPropsDateRange","DateRange","onStartChangeComplete","onEndChangeComplete","onStartChangeDone","onEndChangeDone","startRef","endRef","blur","highlight","onStartInputKeyDown","onBlur","onEndInputKeyDown","getEntireTime","getAllDateRanges","last3MonthsFirstDay","last6MonthsFirstDay","last18MonthsFirstDay","thisYearFirstDay","lastYearFirstDay","lastYearLastDay","last5Years","maxSupportDay","x","rangeIds","getSpecificDateRanges","__WEBPACK_EXTERNAL_MODULE__14__","timeZoneMetadata","legacy","_metadata","allTimeZones","AbuDhabiMuscat","offset","iana","Adelaide","Alaska","Almaty_Novosibirsk","AmsterdamBerlinBernRomeStockholmVienna","Arizona","AstanaDhaka","AthensIslandanbulMinsk","AtlanticTimeCanada","AucklandWellington","Azores","Baghdad","BakuTbilisiYerevan","BangkokHanoiJakarta","BeijingChongqingHongKongUrumqi","BelgradeBratislavaBudapestLjubljanaPrague","BogotaLimaQuito","Brasilia","Brisbane","BrusselsCopenhagenMadridParis","Bucharest","BuenosAiresGeorgetown","Cairo","CanberraMelbourneSydney","CapeVerdeIsland","CaracasLaPaz","CasablancaMonrovia","CentralAmerica","CentralTimeUSCanada","ChennaiKolkataMumbaiNewDelhi","ChihuahuaLaPazMazatlan","Darwin","EasternTimeUSCanada","Ekaterinburg","FijiKamchatkaMarshallIsland","Greenland","GreenwichMeanTimeDublinEdinburghLisbonLondon","GuadalajaraMexicoCityMonterrey","GuamPortMoresby","HararePretoria","Hawaii","HelsinkiKyivRigaSofiaTallinnVilnius","Hobart","IndianaEast","InternationalDateLineWest","IrkutskUlaanBataar","IslandamabadKarachiTashkent","Jerusalem","Kabul","Kathmandu","Krasnoyarsk","KualaLumpurSingapore","KuwaitRiyadh","MagadanSolomonIslandNewCaledonia","MidAtlantic","MidwayIslandand_Samoa","MoscowStPetersburgVolgograd","MountainTime_US_Canada","Nairobi","Newfoundland","None","Nukualofa","OsakaSapporoTokyo","PacificTimeUSCanadaTijuana","Perth","Rangoon","Santiago","SarajevoSkopjeWarsawZagreb","Saskatchewan","Seoul","SriJayawardenepura","Taipei","Tehran","Vladivostok","WestCentralAfrica","Yakutsk","initializeIcons","ContextualMenu","__WEBPACK_EXTERNAL_MODULE__20__","_filePickerView","_uploadProgressView","_filePicker","_imageFilePicker","_videoFilePicker","_fileDragger","_backboneInstanceWrapper","_parseFile","onFileRead","showErrors","onFileSelected","maximumFileSizeMB","isReachFileSizeLimit","getReachFileSizeLimitErrorMessage","selectedFiles","filePicker","fileIndex","selectedFilesCount","errorArr","fileObj","fileSizeMB","toFixed","reachLimit","parseFileName","isDraging","isFileDraging","showExtensionError","filePickerOptions","BackboneFilePicker","readFile","hide","enableDrag","hideDescription","fileDraggerLabel","fileDraggerTip","fileDraggerDropDescription","useLargeStyling","fileButton","FileDragger","onReadFile","allowedFileExtension","onInvalidExtension","dropDescription","dragging","handleDraging","__WEBPACK_EXTERNAL_MODULE__1321__","nameWithExtension","nameWithoutExt","lastIndexOf","_help","_readFile","defaultAllowedImageExtensions","ImageFilePicker","readFileAsDataURLAsync","maximumFileSize","fileSize","errorLinkText","errorTopic","isAudienceAd","maxUploadNum","maxCount","onFileReadInternal","MaximumImageFileSizeMB","reader","FileReader","addEventListener","readAsDataURL","VideoFilePicker","MaximumVideoFileSizeMB","allowedVideoFileExtensions","isVideo","_uploadAssetsPreview","_uploadProgressControl","_progressHelpers","_uploadAssetsPreviewStyle","UploadPreviewWithCustomPreview","assetList","PreviewComponent","customClasses","showTitle","uploadPreviewStyle","getFileSize","fileSizeStr","uploadTitle","uploadingNum","min","previewComponentClasses","imageContent","imageContentText","uploadPreviewContainer","imagePreviewContainer","exceedMaxUploadNum","progress","imageItemBox","imageItemBoxRight","imageItemErrBox","imageName","errorInfoBox","statusIcon","errorIcon","errorMsg","normalInfoBox","progressBox","progressLine","completeIcon","ongoingIcon","imageSize","SimpleImagePreview","baseStyles","objectFit","scrollBar","&::-webkit-scrollbar","neutralLighterAlt","_sharedImageExperienceStyles","BarUploadProgress","uploadProcessText","uploadedBytes","totalBytes","CircleUploadProgress","getCircleProgressStyle","UploadProgress","constant","setProgress","uploadProgressBoundary","evt","loaded","total","previewArr","_ref3$files","fileSources","_ref3$customizedOptio","customizedOptions","_validateFile","__WEBPACK_EXTERNAL_MODULE__559__","__WEBPACK_EXTERNAL_MODULE__603__","__WEBPACK_EXTERNAL_MODULE__604__","__WEBPACK_EXTERNAL_MODULE__839__","__WEBPACK_EXTERNAL_MODULE__843__","__WEBPACK_EXTERNAL_MODULE__897__","cardContainer","& .subtitle","cardPreviewContainer","linkContainer","letterSpacing","UnStyledAdResultCard","AdId","advertiserName","AdvertiserName","Title","Description","DisplayUrl","destinationUrl","DestinationUrl","assetJson","AssetJson","searchConfig","imageData","imageAsset","AssetUrl","getFirstImageDataFromJsonAsset","adPreviewImage","ad_preview","Card","CardHeader","Avatar","CardPreview","CardFooter","dist","to","AdResultCard","DEFAULT_AD_PAGE_SIZE","ICON_FILL_COLOR","cardTitle","cardSubtitle","cardFooter","& .advertiser-link-container","tooltip","isVerified","chunk_2","primaryFill","UnStyledAdvertiserResultCard","AdvertiserId","country","AdvertiserCountry","IsVerified","updatedSearchConfig","advertiser_result_card_Header","AdvertiserResultCard","backwardButtonContainer","@media (max-width: 1250px)","backwardButton","BackButton","onBackButtonClick","classnames","chunk_0","paginationWrapper","& .unsized-icon","pageDropdown","Pagination","totalPage","currentPage","onPageChange","handleFirst","handlePrev","handleNext","handleLast","pageOptions","from","page","Option","disabledFocusable","icons_chunk_0","selectedOptions","onOptionSelect","ev","optionValue","chunk_3","countryList","countryCodeMap","Austria","Belgium","Bulgaria","Croatia","Republic of Cyprus","Czech Republic","Denmark","Estonia","Finland","France","Germany","Greece","Hungary","Ireland","Italy","Latvia","Lithuania","Luxembourg","Malta","Netherlands","Poland","Portugal","Romania","Slovakia","Slovenia","Spain","Sweden","Iceland","Liechtenstein","Norway","filterItem","filterItemLabel","filterItemDropdown","UnStyledCountryFilter","countryCodeList","searchParams","setSearchParams","_useState","allSelected","setAllSelected","onCountrySelect","newSearchParams","toConsumableArray","selectedCountryCodesString","countryName","ctrs","countryOptions","selectedCountries","countryCode","displayString","multiselect","positioning","OptionGroup","CountryFilter","i18nMock","modelI18nMock","dictionary","Any","convertISOStringToCivilDate","isoString","DateRangePicker","startDate","startCivilDate","endCivilDate","compared_date_range_picker_dist","DateRangeFilter","date_range_picker_DateRangePicker","ExtraInputFilter","adQueryInput","searchText","setSearchText","onInputKeyDown","aq","placeholder","contentBefore","chunk_10","FallbackSpinner","Spinner","resultWrapper","cardWrapper","headerRow","& .subTitle","previewRow","& .preview","footerRow","& .adButton","AdResultShimmer","Skeleton","SkeletonItem","AdResultLoadingEffect","adResultShimmers","ad_result_shimmer_AdResultShimmer","AdvertiserResultShimmer","AdvertiserResultLoadingEffect","advertiser_result_shimmer_AdvertiserResultShimmer","errorWrapperOuter","errorWrapperInner","& .first-row","& b","& .second-row","ErrorMessage500","ErrorImg","capitalizeFirstLetter","charAt","buildGetAdvertisersQueryString","_ref$top","_ref$skip","skip","_ref$searchText","URLSearchParams","convertPercentageToNumber","percentage","buildGetAdsQueryString","_ref2$top","_ref2$skip","_ref2$startDate","_ref2$endDate","_ref2$countryCodeList","_ref2$advertiserId","advertiserId","_ref2$searchText","params","append","_msanImageAd","_perfMaxAd","_searchImageAd","_streamlinedSignup","_adLibrary","imageExtensionTemplates","msanImageAdTemplates","perfMaxTemplates","searchImageAdTemplates","streamlinedSignupTemplates","adLibraryTemplates","_image191100AudienceWide","_image178100EdgeSingle","_image178100BingDesktop","_image172100EdgeMedium","_image169100MsnSingle","_image155100MsnMedium","_image150100MsnInArticle","_image133100MsnSmall","_image11AudienceSquare","_image093100MsnDouble","image191100AudienceWide","image178100EdgeSingle","image178100BingDesktop","image172100EdgeMedium","image169100MSNSingle","image155100MSNMedium","image150100MSNInArticle","image133100MSNSmall","image11AudienceSquare","image093100MSNDouble","componentType","AdPlacementsComponentTypes","AdPlacementPreview","showAdsLabelWithBusinessName","showShortHeadlineMultiline","showMultipleDescription","businessNameWithAds","textDecorationThickness","textSizeAdjust","previewContent","textContainer","gradient","showMultipleLineLongHeadline","imageContainer","finalUrl","_textOutlookWeb","_textOutlookMobile","textOutlookWeb","textOutlookMobile","showBusinessNameFirst","showPreHeadlineDivider","showPostHeadlineDivider","adsLabel","preHeadlineDivider","postHeadlineDivider","descriptionParent","_image11MmaSquare","_image12MmaVertical","_image41MmaWide","_image191100MmaLandscape","_textBing","_textBingDesktop","_textBingMobile","image41MMAWide","image191100MMALandscape","image11MMASquare","image12MMAVertical","textBing","textBingDesktop","textBingMobile","showPreviewTypeString","actionButton","showAdsLabelInlineWithDescription","_bingDesktopHeader","headerImageAlt","showHeaderImage","headerImage","bingDesktopHeaderImage","cardParent","image41MmaWide","image191100MmaLandscape","image11MmaSquare","image12MmaVertical","showImageGradient","imageGradient","_social11Facebook","social11Facebook","showPhoneAndAddressDecorator","showPersonaDecorator","_image191100AdLibrary","adLibraryImageAdPreview","adLibraryTextAdPreview","titleTemplate","_getMinSizeForTemplat","_getMinSizeForTemplat2","_getMinSizeForTemplat3","widthToCheck","heightToCheck","cropSettingsInfo","getAllAssociationTypesForAdType","__WEBPACK_EXTERNAL_MODULE__113__","_promisifyObservable","SubscriptionObserver","complete","subscription","closed","Subscription","subscriber","unsubscribeCallback","isClosed","unsubscribe","toPromise","promisifyObservable","_imageModelProptypes","ImageModelPropTypes","_legacyKeys","_fileDraggerStyle","UnStyleFileDragger","dragFiles","dataTransfer","valideExtensionFile","fileType","fileSelectedWrapper","fileSelectedIcon","fileSelectedText","fileDraggerRoot","largeFileDraggerRoot","fileDefaultWrapper","largeFileDefaultWrapper","fileUploadIcon","fileUploadText","fileUploadTip","fileUploadButton","largeFileUploadButton","fileDragWrapper","onDragOver","onDrop","onDragLeave","xmlns","fileDraggerStyle","ImageExperience_Drag_File_Description","_reactBootstrap","other","bsStyle","btnClasses","btnClass","iconStyle","bsClass","iconGlyph","iconBsClass","iconClasses","bsClasses","substr","iconClass","isStatic","staticDisplay","FormControl","Static","componentClass","navStyle","navClasses","navClass","Brand","BsNavbar","carouselRef","pause","play","showPrevNextControls","InjectedControls","carouselControls","handlePlay","handlePause","Caption","BsCarousel","_aspectRatioConfig","_effectOptionsConfig","_editorTitle","editorTitle","getRatio","getOriginalImageAspectRatio","getAllowedAspectRatio","allowedAspectRatio","aspectRatioAsDecimal","aspectRatioRatio","EffectChoiceKey","DesignerEffects","BackgroundBlur","BackgroundSolidColor","EffectChoiceOrder","_EffectChoiceOrder","MTSmartEffect","Blur","BackgroundColorSwap","SmartCrop","EffectChoiceMtSmartEffectMapping","_EffectChoiceMtSmartE","titleKey","subTitle","_imageMetadata","_safeJson","_validateSchema","buildImageAssetMetadataToSave","assetModel","metaObject","placementMeta","_ref2$effectOptions","effectOptions","extractInfoForSerialization","convertStateToMetadata","isBulkUpsert","serialized","stringifySync","metaString","decoded","RegExp","metaObj","parseSync","extractInfoForDeserialization","_imageMetadataSchema","processObjectWithSchema","schema","validatePropertyFunc","_validatePropertyFunc","propertyValue","propertySchema","ignoreInvalidProperty","alias","childkeySchema","properties","newKey","shouldFilterOut","nullable","imageAssetSerializeSchema","ConfiguredValidators","ValidatorClass","childResult","validate","validateProperty","imageAssetDeserializeSchema","_typeValidator","_enumValidator","_customValidator","_effectKeyValidator","TypeValidator","EnumValidator","CustomValidator","EffectKeyValidator","_baseValidator","TypeValidateConfig","num","minimum","maximum","BaseValidator","validateFunc","requiredField","enableCheck","internalValidate","RegistedHandlers","validateColor","beams","every","validateBeam","designerEffect","backgroundBlur","invertSchemaAlias","schemaProperties","newVal","_withApplyAndCloseButtonHoc","isKeyboardEvent","Base","_eventWrappers","wrapKeyDownEvent","availablekeys","_adPlacementPreview","AdPlacementsViewMapping","AdPlacementsViewPropsMapping","AdPlacementPreviewPropTypes","componentPropKeys","imageForTemplate","transformedTemplate","componentProps","_adPlacementCardPreview","AdPlacementCardPropTypes","getPlacementStyles","cardProps","AdPlacementCardPreview","_imageExperienceProptypes","hotspots","desc","actionText","uri","logo","dismissText","showBoostDiscover","showBoostWindows","UnstyledAdPlacementCardPreview","multiLineTextRefs","srcForCroppedImageView","PersonaDecorator","persona","sponsoredText","AdsLabel","adsLabelText","BoostDiscover","BoostWindows","welcomeText","timeText","dateText","hotspot","BusinessNameWithAds","showLabel","ShortHeadline","LongHeadline","FinalUrl","CallToAction","ContactDecorator","phoneAndAddress","additionalDisclaimer","getPlacementCardStyles","__WEBPACK_EXTERNAL_MODULE__115__","_adsLabel","_boost","_businessNameWithAds","_callToAction","_persona","_contact","_textContainer","getAdsLabelStyles","getBoostStyles","boostDiscover","boostWindows","& .welcome","& .time","onlyIcon","getBusinessNameWithAdsStyles","getCallToActionStyles","dismissButton","picture","getPersonaDecoratorStyles","nameLabel","sponsoredLabel","personaDecoratorContainer","personaDecoratorPicture","personaDecoratorNameLabel","personaDecoratorSponsoredLabel","_contactAddressIcon","_contactPhoneIcon","phone","address","getContactDecoratorStyles","section","locationIcon","addressLabel","phoneIcon","phoneLabel","phoneAndAddressDecoratorContainer","phoneAndAddressDecoratorSection","phoneAndAddressDecoratorAddressLabel","phoneAndAddressDecoratorPhoneLabel","phoneAndAddressDecoratorIcon","_multilineEllipsis","_description","_finalUrl","_longHeadline","_shortHeadline","TextContainer","showMultiline","getDescriptionStyles","getFinalUrlStyles","getLongHeadlineStyles","getShortHeadlineStyles","__WEBPACK_EXTERNAL_MODULE__132__","__WEBPACK_EXTERNAL_MODULE__137__","_commonPreviewContainerStyles","_crudAdImagePreviewStyles","_msanPreviewStyles","@media screen and (max-width: 1400px)","& .new-carousel-navigation","& button.view-placements","& button.view-placements .iconba","& .new-responsive-ad-preview-container .msn-single-carousel .text-container, .new-responsive-ad-preview-container .edge-single-carousel .text-container, .new-responsive-ad-preview-container .msn-double-carousel .text-container, .new-responsive-ad-preview-container .edge-medium-headline .text-container","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-medium-carousel .text-container .long-headline","& .new-responsive-ad-preview-container .msn-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-medium-headline .text-container .short-headline","& .new-responsive-ad-preview-container .edge-medium-headline .gradient::after","& .new-responsive-ad-preview-container .msn-single-carousel:hover, .new-responsive-ad-preview-container .edge-single-carousel:hover, .new-responsive-ad-preview-container .msn-double-carousel:hover, .new-responsive-ad-preview-container .edge-medium-headline:hover","& .new-responsive-ad-preview-container .msn-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-medium-headline:hover .gradient::after","& .new-responsive-ad-preview-container .audience-network-wide, .new-responsive-ad-preview-container .msn-medium-headline, .new-responsive-ad-preview-container .msn-in-article, .new-responsive-ad-preview-container .msn-small-headline, .new-responsive-ad-preview-container .audience-network-square-image, .new-responsive-ad-preview-container .mobile-web-outlook","& .new-responsive-ad-preview-container .audience-network-wide .text-container, .new-responsive-ad-preview-container .msn-medium-headline .text-container, .new-responsive-ad-preview-container .msn-in-article .text-container, .new-responsive-ad-preview-container .msn-small-headline .text-container, .new-responsive-ad-preview-container .audience-network-square-image .text-container, .new-responsive-ad-preview-container .mobile-web-outlook .text-container","& .new-responsive-ad-preview-container .audience-network-wide .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-in-article .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-small-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .audience-network-square-image .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .mobile-web-outlook .text-container .business-name-with-ads .business-name","& .new-responsive-ad-preview-container .edge-medium-headline .text-container .long-headline .multi-line-processed-text","& .new-responsive-ad-preview-container .edge-medium-headline .text-container .short-headline .multi-line-processed-text"],"mappings":"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AAe77C,qBACf87C,cAAe97C,sBACf+7C,cAAe/7C,gDACfg8C,cAAeh8C,6BACfi8C,cAAej8C,sBACfk8C,cAAel8C,wBACfm8C,cAAen8C,4DACfo8C,cAAep8C,+BACfq8C,cAAer8C,oBACfs8C,cAAet8C,wBACfu8C,cAAev8C,sCACfw8C,cAAex8C,kCACfy8C,cAAez8C,+CACf08C,cAAe18C,kDACf28C,cAAe38C,gEACf48C,cAAe58C,+DACf68C,cAAe78C,6BACf88C,cAAe98C,gEACf+8C,cAAe/8C,qBACfg9C,cAAeh9C,yBACfi9C,cAAej9C,2BACfk9C,cAAel9C,uBACfm9C,cAAen9C,uCACfo9C,cAAep9C,wBACfq9C,cAAer9C,2BACfs9C,cAAet9C,qCACfu9C,cAAev9C,8BACfw9C,cAAex9C,uBACfy9C,cAAez9C,kCACf09C,cAAe19C,2CACf29C,cAAe39C,6BACf49C,cAAe59C,8BACf69C,cAAe79C,2CACf89C,cAAe99C,kDACf+9C,cAAe/9C,2BACfg+C,cAAeh+C,sBACfi+C,cAAej+C,0CACfk+C,cAAel+C,4CACfm+C,cAAen+C,oDACfo+C,cAAep+C,qBACfq+C,cAAer+C,qBACfs+C,cAAet+C,mCACfu+C,cAAev+C,4LC3EuB,SAACa,GAAD,IAAA29C,GAAA9hB,UAAAnoC,OAAA,QAAAoF,IAAA+iC,UAAA,GAAAA,UAAA,GAAuB,IAAjB57B,eAAN,IAAA09C,EAAgB,GAAhBA,EAAA,MAA+B,CACrE5H,WAAY,CACVzzC,SAAU,GACVZ,MAAO,UACPiB,UAAW,GACXi7C,aAAc,GACdn9C,YAAa,GACbo9C,SAAU,CACRC,gBAAiB,CACfC,eAAgB,YAChBr8C,MAAOzB,EAAQqB,aACfS,UAAW,CACTg8C,eAAgB,YAChB/7C,QAAO,aAAA04B,OAAez6B,EAAQgC,mBAEhCqU,UAAW,CACTynC,eAAgB,YAChBr8C,MAAOzB,EAAQ+9C,+VCnBzB,IAAAhsD,EAAAC,EAAA1C,EAAA,IACA2C,EAAAD,EAAA1C,EAAA,ijCAEa0uD,qPAAiB3rD,UAAMC,gCAClC,SAAA0r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M,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,WACLN,MAAO,WACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,SACLN,MAAO,qBACPguI,KAAM,OAER,CACE1tI,IAAK,QACLN,MAAO,iBACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,SACLN,MAAO,SACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,SACLN,MAAO,SACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,MAER,CACE1tI,IAAK,QACLN,MAAO,QACPguI,KAAM,MAER,CACE1tI,IAAK,SACLN,MAAO,SACPguI,KAAM,OAER,CACE1tI,IAAK,gBACLN,MAAO,gBACPguI,KAAM,OAER,CACE1tI,IAAK,YACLN,MAAO,YACPguI,KAAM,OAER,CACE1tI,IAAK,aACLN,MAAO,aACPguI,KAAM,OAER,CACE1tI,IAAK,QACLN,MAAO,QACPguI,KAAM,OAER,CACE1tI,IAAK,cACLN,MAAO,cACPguI,KAAM,OAER,CACE1tI,IAAK,SACLN,MAAO,SACPguI,KAAM,OAER,CACE1tI,IAAK,SACLN,MAAO,SACPguI,KAAM,OAER,CACE1tI,IAAK,WACLN,MAAO,WACPguI,KAAM,OAER,CACE1tI,IAAK,UACLN,MAAO,UACPguI,KAAM,OAER,CACE1tI,IAAK,WACLN,MAAO,WACPguI,KAAM,OAER,CACE1tI,IAAK,WACLN,MAAO,WACPguI,KAAM,OAER,CACE1tI,IAAK,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","file":"static/js/1.1356b209.chunk.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 711);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__23__;","module.exports = __WEBPACK_EXTERNAL_MODULE__3__;","module.exports = __WEBPACK_EXTERNAL_MODULE__3__;","export { FocusLock } from './src/focus-lock';\r\nexport { getTabbableNodes, addDataFocus } from './src/focus-utils';\r\n","/* eslint-disable jsx-a11y/no-static-element-interactions */\r\n/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { keyCode as KEY_CODES } from '@bingads-webui/keycode';\r\nimport { uniqueId, noop, first, last } from 'underscore';\r\nimport { getTabbableNodes, getFrontGuards, addDataFocus, removeDataFocus, focusAsync } from './focus-utils';\r\n\r\nexport class FocusLock extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    this.rootRef = React.createRef();\r\n    this.anchor = null;\r\n    this.focusId = uniqueId('focus_id_');\r\n    this.firstFocusNode = null;\r\n    this.lastFocusNode = null;\r\n    this.isFocusLockStart = false;\r\n  }\r\n\r\n  componentDidMount() {\r\n    // if not customized trigger focus, will trigger it when did mount component\r\n    if (!this.props.isControlledFocusLock) {\r\n      this.anchor = document && document.activeElement;\r\n      this.focusOneItemOnMount();\r\n    }\r\n  }\r\n\r\n  componentDidUpdate(prevProps) {\r\n    const {\r\n      isControlledFocusLock,\r\n      isFocusLock,\r\n    } = this.props;\r\n\r\n    if (prevProps.isControlledFocusLock === isControlledFocusLock\r\n        && prevProps.isFocusLock === isFocusLock) {\r\n      return;\r\n    }\r\n\r\n    if (isControlledFocusLock) {\r\n      if (isFocusLock) {\r\n        this.anchor = document && document.activeElement;\r\n        this.focusOneItemOnMount();\r\n      } else {\r\n        removeDataFocus(this.rootRef.current);\r\n        this.returnFocus();\r\n        this.isFocusLockStart = false;\r\n      }\r\n    }\r\n  }\r\n\r\n  componentWillUnmount() {\r\n    if (!this.props.isControlledFocusLock) {\r\n      this.returnFocus();\r\n    }\r\n    this.anchor = null;\r\n    this.firstFocusNode = null;\r\n    this.lastFocusNode = null;\r\n    this.focusId = null;\r\n  }\r\n\r\n  onFocusFront = (event) => {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n    /* istanbul ignore else */\r\n    this.setFirstFocusNode();\r\n    if (this.firstFocusNode) {\r\n      this.firstFocusNode.focus();\r\n    }\r\n  }\r\n\r\n  // onFocus Back is only handled for front guard focusable situation\r\n  onFocusBack = (event) => {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n    // skip the first time to focus back when initial focus lock\r\n    /* istanbul ignore else */\r\n    this.setLastFocusNode();\r\n    if (this.lastFocusNode && this.isFocusLockStart) {\r\n      this.lastFocusNode.focus();\r\n    } else if (this.lastFocusNode) {\r\n      this.isFocusLockStart = true;\r\n    }\r\n  }\r\n\r\n  setFirstFocusNode = () => {\r\n    const tabbaleNodes = getTabbableNodes(this.rootRef.current);\r\n    this.firstFocusNode = (tabbaleNodes && tabbaleNodes.length > 0) ? first(tabbaleNodes) : null;\r\n  }\r\n\r\n  setLastFocusNode = () => {\r\n    const tabbaleNodes = getTabbableNodes(this.rootRef.current);\r\n    this.lastFocusNode = (tabbaleNodes && tabbaleNodes.length > 0) ? last(tabbaleNodes) : null;\r\n  }\r\n\r\n  focusOneItemOnMount = () => {\r\n    const {\r\n      skipFocusOnMount,\r\n      focusFirstItemOnMount,\r\n    } = this.props;\r\n    if (!skipFocusOnMount) {\r\n      this.setFirstFocusNode();\r\n\r\n      if (focusFirstItemOnMount && this.firstFocusNode) {\r\n        focusAsync(this.firstFocusNode, () => addDataFocus(this.rootRef.current));\r\n        this.isFocusLockStart = true;\r\n      } else {\r\n        this.focusFrontGuard();\r\n      }\r\n    } else {\r\n      this.isFocusLockStart = true;\r\n    }\r\n  }\r\n\r\n  focusFrontGuard = () => {\r\n    const frontGuard = getFrontGuards(this.rootRef.current, this.focusId);\r\n    focusAsync(frontGuard, () => addDataFocus(this.rootRef.current));\r\n  }\r\n\r\n  returnFocus = () => {\r\n    if (this.props.getAnchor && this.props.getAnchor()) {\r\n      // replace the anchor if set it outside\r\n      this.anchor = this.props.getAnchor();\r\n    }\r\n    focusAsync(this.anchor, null, true);\r\n  }\r\n\r\n  exitHandler = (event) => {\r\n    if (event.which === KEY_CODES.Escape) {\r\n      this.props.onExit(event);\r\n    }\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      className,\r\n      children,\r\n      lockRegionAriaLabel,\r\n    } = this.props;\r\n\r\n    return (\r\n      <div className={className} ref={this.rootRef} onKeyDown={this.exitHandler}>\r\n        <div id={`guard-front-${this.focusId}`} data-focus-guard tabIndex={0} aria-label={lockRegionAriaLabel} onFocus={this.onFocusBack} />\r\n        {children}\r\n        <div id={`guard-tail-${this.focusId}`} data-focus-guard tabIndex={0} onFocus={this.onFocusFront} />\r\n      </div>);\r\n  }\r\n}\r\n\r\nFocusLock.propTypes = {\r\n  className: PropTypes.string,\r\n  /**\r\n   * The children for Panel, also the content for the panel\r\n   */\r\n  children: PropTypes.node.isRequired,\r\n  /**\r\n   * function to exit focus trap\r\n   */\r\n  onExit: PropTypes.func,\r\n  /**\r\n   * flag for user to enable focus trigger outside\r\n   * This will help those show/hide situation, e.g. dropdown menu\r\n   */\r\n  isControlledFocusLock: PropTypes.bool,\r\n  /**\r\n   * this flag will only useful when isControlledFocusLock is enabled\r\n   * this flag will indicate focus lock status\r\n   */\r\n  isFocusLock: PropTypes.bool,\r\n  /**\r\n   * ready a11 text for some components, e.g. panel\r\n   */\r\n  lockRegionAriaLabel: PropTypes.string,\r\n  /**\r\n   * use this flag to enable focus on front guard when enter focus zone\r\n   */\r\n  focusFirstItemOnMount: PropTypes.bool,\r\n  /**\r\n   * use this flag to enable skip focus action on Mount or update\r\n   * example scenario for this flag: popup editor need this flag to do flag outside\r\n   * As only the popup editor know the timing to show and do focus\r\n   */\r\n  skipFocusOnMount: PropTypes.bool,\r\n  /**\r\n   * function to customize anchor outside\r\n   */\r\n  getAnchor: PropTypes.func,\r\n};\r\n\r\nFocusLock.defaultProps = {\r\n  className: 'react-focus-lock',\r\n  onExit: noop,\r\n  isControlledFocusLock: false,\r\n  isFocusLock: false,\r\n  lockRegionAriaLabel: '',\r\n  focusFirstItemOnMount: false,\r\n  skipFocusOnMount: false,\r\n  getAnchor: null,\r\n};\r\n","import { isFunction } from 'underscore';\r\n\r\nconst DATA_GUARD = 'data-focus-guard';\r\nconst TABBABLES = [\r\n  'button:not([disabled]):not([readonly])',\r\n  'select:not([disabled]):not([readonly])',\r\n  'textarea:not([disabled]):not([readonly])',\r\n  'input:not([disabled]):not([readonly])',\r\n  `[tabindex]:not([${DATA_GUARD}]):not([tabindex=\"-1\"]):not([disabled])`,\r\n  'a[href]:not([disabled])',\r\n  'area[href]:not([disabled])',\r\n];\r\n\r\nexport const QUERY_TABBABLES = TABBABLES.join(',');\r\n\r\nexport const toArray = (a) => {\r\n  const ret = Array(a.length);\r\n  for (let i = 0; i < a.length; i += 1) {\r\n    ret[i] = a[i];\r\n  }\r\n  return ret;\r\n};\r\n\r\nexport const getFrontGuards = (parent, focusId) => parent && parent.querySelector(`#guard-front-${focusId}[${DATA_GUARD}]`);\r\n\r\nexport const getTabbableNodes = parent => parent\r\n  && toArray(parent.querySelectorAll(QUERY_TABBABLES));\r\n\r\nexport const addDataFocus = parent => parent\r\n  && !parent.hasAttribute('data-focused') && parent.setAttribute('data-focused', '');\r\nexport const removeDataFocus = parent => parent\r\n  && parent.hasAttribute('data-focused') && parent.removeAttribute('data-focused');\r\n\r\nlet targetToFocusOnNext;\r\nlet callbackOfFocusOnNext;\r\n\r\nconst getWindow = rootElement => (\r\n  rootElement && rootElement.ownerDocument && rootElement.ownerDocument.defaultView\r\n    ? rootElement.ownerDocument.defaultView\r\n    : window);\r\n\r\n// use fabric focus async\r\n// https://github.com/microsoft/fluentui/blob/4c8fcc01e046eb90ef6ee26310c072d38acf137f/packages/utilities/src/focus.ts\r\nexport const focusAsync = (element, callback, isReturnFocus = false) => {\r\n  if (element) {\r\n    // An element was already queued to be focused, so replace that one with the new element\r\n    if (targetToFocusOnNext && isReturnFocus) {\r\n      // normally a return focus should happen after the targetToFocusOnNext is focused\r\n      // in this case targetToFocusOnNext should be null and won't go inside this function\r\n      // this is to resolve the situation that one element to focus is override by the return focus\r\n      // from another focus lock editor\r\n      return;\r\n    } else if (targetToFocusOnNext) {\r\n      targetToFocusOnNext = element;\r\n      // callback need to be updated on every new focusAsync\r\n      callbackOfFocusOnNext = callback;\r\n\r\n      return;\r\n    }\r\n\r\n    callbackOfFocusOnNext = callback;\r\n    targetToFocusOnNext = element;\r\n\r\n    const win = getWindow(element);\r\n\r\n    if (win) {\r\n      win.requestAnimationFrame(() => {\r\n        if (targetToFocusOnNext && isFunction(targetToFocusOnNext.focus)) {\r\n          targetToFocusOnNext.focus({\r\n            preventScroll: true,\r\n          });\r\n          if (isFunction(callbackOfFocusOnNext)) {\r\n            callbackOfFocusOnNext();\r\n          }\r\n\r\n          // We are done focusing for this frame, so reset the queued focus element\r\n          targetToFocusOnNext = undefined;\r\n        }\r\n      });\r\n    }\r\n  }\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__4__;","module.exports = __WEBPACK_EXTERNAL_MODULE__25__;","export * from './src/index';\r\n","export { SinglePlacement } from './single-placement/index';\r\nexport { PreviewCarouselLayout } from './carousel/index';\r\nexport { GroupsPreviewer } from './groups/index';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getSinglePlacementStyles } from './styles';\r\n\r\nexport const SinglePlacement = ({ onRenderPlacement }) => {\r\n  const classes = useDefaultStyles(getSinglePlacementStyles);\r\n\r\n  return (\r\n    <div className={classnames('single-placement', classes.singlePlacement)}>\r\n      {onRenderPlacement()}\r\n    </div>\r\n  );\r\n};\r\n\r\nSinglePlacement.propTypes = {\r\n  onRenderPlacement: PropTypes.func.isRequired,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__34__;","module.exports = __WEBPACK_EXTERNAL_MODULE__35__;","export const getSinglePlacementStyles = () => ({\r\n  singlePlacement: {},\r\n});\r\n","import React, {\r\n  useContext,\r\n  useState,\r\n  useMemo,\r\n  useCallback,\r\n} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport { PreviewCarousel } from './preview-carousel';\r\nimport { Header } from './carousel-decorators/header';\r\nimport { ValidationMessage } from './carousel-decorators/validation-message';\r\nimport { DisclaimerMessage } from './carousel-decorators/disclaimer-message';\r\nimport { FooterButton } from './carousel-decorators/footer-button';\r\nimport { AllPlacements } from './carousel-decorators/all-placements';\r\n\r\nimport { getPreviewCarouselLayoutStyles } from './styles';\r\n\r\nexport const PreviewCarouselLayout = (props) => {\r\n  const {\r\n    previewElements,\r\n    getImageInfoByIndex,\r\n    validateImageSizeByIndex,\r\n    enableAutoPlay,\r\n    styleOverrides,\r\n    hideHeaderButtons,\r\n    hideNavigationControlsIfSingle,\r\n    doesTemplateShowImageByIndex,\r\n  } = props;\r\n\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getPreviewCarouselLayoutStyles({ styleOverrides }));\r\n  const [index, setIndex] = useState(0);\r\n  const isImageShown = useMemo(() => doesTemplateShowImageByIndex(index), [doesTemplateShowImageByIndex, index]);\r\n\r\n  const getSelectedImage = useCallback((imageIndex) => {\r\n    const isImageBasedPlacement = doesTemplateShowImageByIndex(imageIndex);\r\n\r\n    if (isImageBasedPlacement) {\r\n      return getImageInfoByIndex(imageIndex);\r\n    }\r\n\r\n    return {\r\n      isIncluded: true,\r\n      isRecommended: false,\r\n    };\r\n  }, [doesTemplateShowImageByIndex, getImageInfoByIndex]);\r\n\r\n  const selectedImage = useMemo(() => {\r\n    if (isImageShown) {\r\n      return getImageInfoByIndex(index);\r\n    }\r\n    return {\r\n      isIncluded: true,\r\n      isRecommended: false,\r\n    };\r\n  }, [getImageInfoByIndex, index, isImageShown]);\r\n\r\n  const isImageValid = useMemo(() => {\r\n    if (!isImageShown) {\r\n      return true;\r\n    }\r\n    return validateImageSizeByIndex(index);\r\n  }, [validateImageSizeByIndex, index, isImageShown]);\r\n\r\n  return (\r\n    <div className={classnames('new-preview-carousel-container-adprelib', classes.root)}>\r\n      <Header\r\n        index={index}\r\n        selectedImage={selectedImage}\r\n        hideHeaderButtons={hideHeaderButtons}\r\n        isImageValid={isImageValid}\r\n        {...props}\r\n      />\r\n      <ValidationMessage\r\n        index={index}\r\n        selectedImage={selectedImage}\r\n        isImageValid={isImageValid}\r\n        {...props}\r\n      />\r\n      <PreviewCarousel\r\n        i18n={i18n}\r\n        previewElements={previewElements}\r\n        index={index}\r\n        setIndex={setIndex}\r\n        enableAutoPlay={enableAutoPlay}\r\n        hideNavigationControlsIfSingle={hideNavigationControlsIfSingle}\r\n        styleOverrides={styleOverrides}\r\n      />\r\n      <DisclaimerMessage\r\n        {...props}\r\n      />\r\n      <FooterButton\r\n        index={index}\r\n        selectedImage={selectedImage}\r\n        {...props}\r\n      />\r\n      <AllPlacements\r\n        index={index}\r\n        getSelectedImage={getSelectedImage}\r\n        isImageValid={isImageValid}\r\n        {...props}\r\n      />\r\n    </div>\r\n  );\r\n};\r\n\r\nPreviewCarouselLayout.propTypes = {\r\n  previewElements: PropTypes.arrayOf(PropTypes.func).isRequired,\r\n  hideNavigationControlsIfSingle: PropTypes.bool,\r\n  // helper methods\r\n  getImageInfoByIndex: PropTypes.func.isRequired,\r\n  getCarouselTitleByIndex: PropTypes.func.isRequired,\r\n  getMinSizeByIndex: PropTypes.func.isRequired,\r\n  validateImageSizeByIndex: PropTypes.func.isRequired,\r\n  doesTemplateShowImageByIndex: PropTypes.func.isRequired,\r\n  hideHeaderButtons: PropTypes.bool,\r\n\r\n  // header decorator props\r\n  headerButtonProps: PropTypes.shape({}),\r\n\r\n  // disclaimer message props\r\n  disclaimerMessage: PropTypes.string,\r\n\r\n  // footer button props\r\n  footerButtonProps: PropTypes.shape({}),\r\n\r\n  // custom style overrides\r\n  styleOverrides: PropTypes.shape({}),\r\n\r\n  // enable behavior in carousel to auto play through carousel items\r\n  enableAutoPlay: PropTypes.bool,\r\n};\r\n\r\nPreviewCarouselLayout.defaultProps = {\r\n  hideNavigationControlsIfSingle: false,\r\n  headerButtonProps: null,\r\n  disclaimerMessage: '',\r\n  footerButtonProps: null,\r\n  styleOverrides: {},\r\n  enableAutoPlay: true,\r\n  hideHeaderButtons: false,\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { Carousel } from '@bingads-webui-react/primitive-unthemed';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getPreviewCarouselStyles } from './styles';\r\n\r\nclass PreviewCarouselRaw extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    this.state = {\r\n      direction: null,\r\n    };\r\n  }\r\n\r\n  componentDidMount() {\r\n    if (this.props.enableAutoPlay) {\r\n      this.setAutoRotate();\r\n    }\r\n  }\r\n\r\n  componentDidUpdate() {\r\n    if (this.props.enableAutoPlay && !this.autoRotateListener) {\r\n      this.setAutoRotate();\r\n    }\r\n  }\r\n\r\n  componentWillUnmount() {\r\n    this.clearAutoRotateListener();\r\n  }\r\n\r\n  setAutoRotate = () => {\r\n    // disable auto-rotate in test\r\n    /* istanbul ignore if */\r\n    if (window.e2eTestEnvironment) {\r\n      return;\r\n    }\r\n\r\n    this.clearAutoRotateListener();\r\n    const { index, setIndex } = this.props;\r\n\r\n    const indicators = document.querySelector('.new-preview-carousel-container-adprelib .carousel-indicators');\r\n\r\n    // make sure we have the correct preview to rotate\r\n    const previewCount = (indicators && indicators.childElementCount);\r\n    let nextIndex = index + 1;\r\n\r\n    /* istanbul ignore next */\r\n    if (nextIndex >= previewCount) {\r\n      nextIndex = 0;\r\n    }\r\n\r\n    this.autoRotateListener = setTimeout(() => {\r\n      /* istanbul ignore next */\r\n      this.setState({\r\n        direction: 'next',\r\n      });\r\n      setIndex(nextIndex);\r\n      this.setAutoRotate();\r\n    }, 3000);\r\n  };\r\n\r\n  clearAutoRotateListener = () => {\r\n    if (this.autoRotateListener) {\r\n      clearTimeout(this.autoRotateListener);\r\n      this.autoRotateListener = null;\r\n    }\r\n  };\r\n\r\n  handleSelect = (selectedIndex, e) => {\r\n    this.setState({\r\n      direction: e.direction,\r\n    }, () => this.clearAutoRotateListener());\r\n\r\n    this.props.setIndex(selectedIndex);\r\n  };\r\n\r\n  render() {\r\n    const { direction } = this.state;\r\n    const {\r\n      previewElements,\r\n      index,\r\n      hideNavigationControlsIfSingle,\r\n      moveNavigationControlsToBottom,\r\n      classes,\r\n    } = this.props;\r\n\r\n    let carouselClasses;\r\n\r\n    if (hideNavigationControlsIfSingle && previewElements.length === 1) {\r\n      carouselClasses = classes.hideNavigation;\r\n    } else {\r\n      carouselClasses = moveNavigationControlsToBottom\r\n        ? classnames(classes.bottomCarouselNavigation, 'new-carousel-navigation-mma-adprelib')\r\n        : classes.carouselNavigation;\r\n    }\r\n\r\n    return (\r\n      <div className={classes.carouselRoot}>\r\n        <Carousel\r\n          activeIndex={index}\r\n          direction={direction}\r\n          onSelect={this.handleSelect}\r\n          controls={false}\r\n          nextLabel={this.props.i18n.getString(_TL_('Next ad preview'))}\r\n          prevLabel={this.props.i18n.getString(_TL_('Previous ad preview'))}\r\n          // styling for carousel controls is handled by a more specific static class name selector\r\n          // in some styles injected into the top of grid form for MMA editor.\r\n          // will need to GA this new ad preview library before we can remove those selectors and directly\r\n          // use the styles defined in this package\r\n          className={carouselClasses}\r\n        >\r\n          {\r\n            previewElements.map(previewElement => (\r\n              <Carousel.Item>\r\n                {previewElement}\r\n              </Carousel.Item>\r\n            ))\r\n          }\r\n        </Carousel>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nPreviewCarouselRaw.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseDecimal: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  previewElements: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\r\n  classes: PropTypes.shape({\r\n    carouselRoot: PropTypes.string.isRequired,\r\n    carouselNavigation: PropTypes.string.isRequired,\r\n    bottomCarouselNavigation: PropTypes.string.isRequired,\r\n    hideNavigation: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  index: PropTypes.number.isRequired,\r\n  setIndex: PropTypes.func.isRequired,\r\n  hideNavigationControlsIfSingle: PropTypes.bool,\r\n  moveNavigationControlsToBottom: PropTypes.bool,\r\n  enableAutoPlay: PropTypes.bool,\r\n};\r\n\r\nPreviewCarouselRaw.defaultProps = {\r\n  hideNavigationControlsIfSingle: false,\r\n  moveNavigationControlsToBottom: true,\r\n  enableAutoPlay: true,\r\n};\r\n\r\nexport const PreviewCarousel = (props) => {\r\n  const { styleOverrides, previewElements } = props;\r\n  // eslint-disable-next-line arrow-body-style\r\n  const StyledPreviewCarousel = useMemo(() => {\r\n    return withDefaultStyles(PreviewCarouselRaw, getPreviewCarouselStyles({ styleOverrides: styleOverrides.previewCarousel, numberOfElements: previewElements.length }));\r\n  }, [styleOverrides, previewElements]);\r\n\r\n  return (\r\n    <StyledPreviewCarousel\r\n      {...props}\r\n    />\r\n  );\r\n};\r\n\r\nPreviewCarousel.propTypes = {\r\n  styleOverrides: PropTypes.shape({\r\n    previewCarousel: PropTypes.shape({}),\r\n  }),\r\n  previewElements: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\r\n};\r\n\r\nPreviewCarousel.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__43__;","import { pick, extend } from 'underscore';\r\n\r\nexport const getPreviewCarouselStyles = ({ styleOverrides = {}, numberOfElements }) => (_, { palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => {\r\n  const overrides = pick(styleOverrides, [\r\n    'carouselRoot',\r\n    'bottomCarouselNavigation',\r\n    'carouselNavigation',\r\n  ]);\r\n\r\n  return {\r\n    carouselRoot: extend({\r\n      '& .carousel-inner': {\r\n        paddingBottom: 64,\r\n        '& > .item.active': {\r\n          paddingLeft: 24,\r\n          paddingRight: 24,\r\n        },\r\n      },\r\n      '& ol.carousel-indicators': {\r\n        position: 'absolute',\r\n        bottom: 0,\r\n        width: 'auto',\r\n\r\n        '& li': {\r\n          background: 'none',\r\n          border: '1px solid #605E5C',\r\n          borderRadius: 10,\r\n          margin: '0 10px 0 0',\r\n          height: 10,\r\n          width: 10,\r\n        },\r\n\r\n        '& li.active': {\r\n          background: palette.themePrimary,\r\n          border: `1px solid ${palette.themePrimary}`,\r\n        },\r\n      },\r\n\r\n      '& .carousel-controls': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .carousel-control': {\r\n        color: palette.themePrimary,\r\n        position: 'absolute',\r\n        left: 'auto',\r\n        top: 'auto',\r\n        right: 0,\r\n        bottom: 0,\r\n        height: 32,\r\n        width: 20,\r\n        margin: '20px 24px',\r\n        textShadow: 'none',\r\n\r\n        '&:focus': {\r\n          outline: `1px solid ${palette.neutralSecondary}`,\r\n        },\r\n\r\n        '&.left': {\r\n          marginRight: 76,\r\n        },\r\n\r\n        '& .glyphicon-chevron-left, & .glyphicon-chevron-right': {\r\n          fontFamily: iconFontFamily,\r\n          position: 'relative',\r\n          top: 'auto',\r\n          right: 'auto',\r\n          bottom: 'auto',\r\n          left: 'auto',\r\n          margin: 0,\r\n          fontSize: 16,\r\n          lineHeight: 1,\r\n          verticalAlign: 0,\r\n        },\r\n      },\r\n    }, overrides.carouselRoot),\r\n    bottomCarouselNavigation: extend({\r\n      '& .carousel-control.left': {\r\n        position: 'absolute',\r\n        left: 0,\r\n        marginLeft: 15,\r\n        marginRight: 76,\r\n        marginTop: 20,\r\n        bottom: -7,\r\n        background: 'transparent',\r\n      },\r\n      '& .carousel-control.right': {\r\n        position: 'absolute',\r\n        left: 0,\r\n        bottom: -7,\r\n        marginTop: 20,\r\n        marginLeft: (145 / 3) + ((65 * numberOfElements) / 3),\r\n        background: 'transparent',\r\n      },\r\n      '& .carousel-indicators': {\r\n        left: '20px !important',\r\n        margin: '20px 24px !important',\r\n      },\r\n      '& .carousel-inner > .item.active': {\r\n        paddingLeft: 0,\r\n        paddingRight: 0,\r\n      },\r\n    }, overrides.bottomCarouselNavigation),\r\n    carouselNavigation: extend({\r\n      '& .carousel-control.left': {\r\n        position: 'absolute',\r\n        left: 0,\r\n        marginLeft: 15,\r\n        bottom: -7,\r\n      },\r\n      '& .carousel-control.right': {\r\n        position: 'absolute',\r\n        left: 45,\r\n        bottom: -7,\r\n        marginLeft: 155,\r\n      },\r\n      '& .carousel-indicators': {\r\n        left: '20px',\r\n      },\r\n    }, overrides.carouselNavigation),\r\n    hideNavigation: {\r\n      '& .carousel-control': {\r\n        display: 'none !important',\r\n      },\r\n      '& .carousel-indicators': {\r\n        display: 'none !important',\r\n      },\r\n    },\r\n  };\r\n};\r\n\r\nexport const getPreviewCarouselLayoutStyles = ({ styleOverrides = {} }) => () => ({\r\n  root: extend({\r\n    border: '1px solid #C8C8C8',\r\n    margin: 0,\r\n    width: '100%',\r\n    minWidth: 669,\r\n  }, styleOverrides.root),\r\n});\r\n","import React, { useContext, useMemo } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport { TooltipHost } from '@bingads-webui-react/fabric-control';\r\n\r\nimport {\r\n  getSimplePreviewCarouselHeaderStyles,\r\n  getPreviewCarouselHeaderWithButtonsStyles,\r\n  getIncludeExcludeEditButtonStyles,\r\n  getReCropReplaceButtonsStyles,\r\n} from './styles/header';\r\n\r\nconst SimplePreviewCarouselHeader = ({\r\n  title,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getSimplePreviewCarouselHeaderStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('ad-preview-title', classes.title)}>\r\n      {title}\r\n    </div>\r\n  );\r\n};\r\n\r\nSimplePreviewCarouselHeader.propTypes = {\r\n  title: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nSimplePreviewCarouselHeader.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nconst IncludeExcludeEditButtons = ({\r\n  index,\r\n  isIncludedImage,\r\n  isRecommendedImage,\r\n  getIsRequiredByIndex,\r\n  getTemplateTypeByIndex,\r\n  onAddAspectRatio,\r\n  onRemoveAspectRatio,\r\n  onEdit,\r\n  styleOverrides,\r\n}) => {\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getIncludeExcludeEditButtonStyles({ styleOverrides }));\r\n\r\n  // eslint-disable-next-line arrow-body-style\r\n  const isRequired = useMemo(() => {\r\n    return getIsRequiredByIndex(index);\r\n  }, [getIsRequiredByIndex, index]);\r\n\r\n  // eslint-disable-next-line arrow-body-style\r\n  const excludeButton = useMemo(() => {\r\n    return (\r\n      <button\r\n        className={classnames('exclude-aspect-ratio-button btn btn-default', classes.exclude)}\r\n        onClick={() => onRemoveAspectRatio(getTemplateTypeByIndex(index))}\r\n        disabled={isRequired}\r\n        data-index={index}\r\n      >\r\n        { i18n.getString(_TL_('Exclude')) }\r\n      </button>\r\n    );\r\n  }, [index, i18n, onRemoveAspectRatio, classes, isRequired, getTemplateTypeByIndex]);\r\n\r\n  return (\r\n    <div className={classnames('ad-preview-actions', 'inline-title', classes.actionButtons)}>\r\n      {!isIncludedImage ?\r\n        (\r\n          <button\r\n            className=\"include-aspect-ratio-button btn btn-default\"\r\n            onClick={() => onAddAspectRatio(getTemplateTypeByIndex(index))}\r\n            data-index={index}\r\n          >\r\n            { i18n.getString(_TL_('Include')) }\r\n          </button>\r\n        ) :\r\n        (\r\n          <React.Fragment>\r\n            {!isRecommendedImage &&\r\n              <button\r\n                className=\"edit-image-button btn btn-default\"\r\n                onClick={() => onEdit(getTemplateTypeByIndex(index))}\r\n                data-index={index}\r\n              >\r\n                { i18n.getString(_TL_('Edit aspect ratio')) }\r\n              </button>\r\n            }\r\n            {isRequired ?\r\n            (\r\n              <TooltipHost\r\n                content={i18n.getString(_TL_('This placement is required and cannot be excluded.'))}\r\n                calloutProps={{ gapSpace: 8 }}\r\n              >\r\n                { excludeButton }\r\n              </TooltipHost>\r\n            )\r\n              : excludeButton\r\n            }\r\n          </React.Fragment>\r\n        )\r\n      }\r\n    </div>\r\n  );\r\n};\r\n\r\nIncludeExcludeEditButtons.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  isIncludedImage: PropTypes.bool.isRequired,\r\n  isRecommendedImage: PropTypes.bool.isRequired,\r\n  getIsRequiredByIndex: PropTypes.func.isRequired,\r\n  onAddAspectRatio: PropTypes.func.isRequired,\r\n  onRemoveAspectRatio: PropTypes.func.isRequired,\r\n  onEdit: PropTypes.func.isRequired,\r\n  getTemplateTypeByIndex: PropTypes.func.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nIncludeExcludeEditButtons.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nconst ReCropReplaceButtons = ({\r\n  index,\r\n  onCrop,\r\n  onReplace,\r\n  styleOverrides,\r\n}) => {\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getReCropReplaceButtonsStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div>\r\n      <button\r\n        className={classnames('crop-image-button btn btn-default', classes.recrop)}\r\n        onClick={() => onCrop(index)}\r\n        data-index={index}\r\n      >\r\n        { i18n.getString(_TL_('Re-crop')) }\r\n      </button>\r\n      <button\r\n        className={classnames('replace-image-button btn btn-default', classes.replace)}\r\n        onClick={() => onReplace(index)}\r\n        data-index={index}\r\n      >\r\n        { i18n.getString(_TL_('Replace'))}\r\n      </button>\r\n    </div>\r\n  );\r\n};\r\n\r\nReCropReplaceButtons.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  onCrop: PropTypes.func.isRequired,\r\n  onReplace: PropTypes.func.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nReCropReplaceButtons.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nconst PreviewCarouselHeaderWithButtons = ({\r\n  index,\r\n  title,\r\n  headerButtonProps,\r\n  selectedImage,\r\n  styleOverrides,\r\n  getIsRequiredByIndex,\r\n  getTemplateTypeByIndex,\r\n}) => {\r\n  const classes = useDefaultStyles(getPreviewCarouselHeaderWithButtonsStyles({ styleOverrides }));\r\n  const { onCrop } = headerButtonProps;\r\n\r\n  return (\r\n    <div className={classnames('preview-header', classes.headerRoot)}>\r\n      <div className={classnames('ad-preview-title', 'with-additional-tag', classes.title)}>\r\n        {title}\r\n      </div>\r\n      <div className={classnames('flex-grow', classes.buttons)} />\r\n      { onCrop ?\r\n        <ReCropReplaceButtons\r\n          index={index}\r\n          styleOverrides={styleOverrides}\r\n          {...headerButtonProps}\r\n        /> :\r\n        <IncludeExcludeEditButtons\r\n          index={index}\r\n          isIncludedImage={selectedImage.isIncluded}\r\n          isRecommendedImage={selectedImage.isRecommendedImage}\r\n          styleOverrides={styleOverrides}\r\n          getIsRequiredByIndex={getIsRequiredByIndex}\r\n          getTemplateTypeByIndex={getTemplateTypeByIndex}\r\n          {...headerButtonProps}\r\n        /> }\r\n    </div>\r\n  );\r\n};\r\n\r\nPreviewCarouselHeaderWithButtons.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  title: PropTypes.string.isRequired,\r\n  headerButtonProps: PropTypes.shape({\r\n    onCrop: PropTypes.func,\r\n  }).isRequired,\r\n  selectedImage: PropTypes.shape({}).isRequired,\r\n  getIsRequiredByIndex: PropTypes.func.isRequired,\r\n  getTemplateTypeByIndex: PropTypes.func.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nPreviewCarouselHeaderWithButtons.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nexport const Header = (props) => {\r\n  const {\r\n    index,\r\n    getCarouselTitleByIndex,\r\n    getIsRequiredByIndex,\r\n    selectedImage,\r\n    headerButtonProps,\r\n    hideHeaderButtons,\r\n    isImageValid,\r\n    styleOverrides,\r\n    getTemplateTypeByIndex,\r\n    shouldHideHeaderButtonsByIndex,\r\n  } = props;\r\n\r\n  const title = useMemo(() => getCarouselTitleByIndex(index), [index, getCarouselTitleByIndex]);\r\n  const { header: headerStyles } = styleOverrides;\r\n\r\n  if (!hideHeaderButtons && isImageValid && headerButtonProps && !shouldHideHeaderButtonsByIndex(index)) {\r\n    return (\r\n      <PreviewCarouselHeaderWithButtons\r\n        index={index}\r\n        title={title}\r\n        selectedImage={selectedImage}\r\n        headerButtonProps={headerButtonProps}\r\n        styleOverrides={headerStyles}\r\n        getIsRequiredByIndex={getIsRequiredByIndex}\r\n        getTemplateTypeByIndex={getTemplateTypeByIndex}\r\n      />\r\n    );\r\n  }\r\n\r\n  return (\r\n    <SimplePreviewCarouselHeader\r\n      title={title}\r\n      styleOverrides={headerStyles}\r\n    />\r\n  );\r\n};\r\n\r\nHeader.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  selectedImage: PropTypes.shape({}).isRequired,\r\n  getCarouselTitleByIndex: PropTypes.func.isRequired,\r\n  getIsRequiredByIndex: PropTypes.func.isRequired,\r\n  isImageValid: PropTypes.bool.isRequired,\r\n  getTemplateTypeByIndex: PropTypes.func.isRequired,\r\n  shouldHideHeaderButtonsByIndex: PropTypes.func.isRequired,\r\n  hideHeaderButtons: PropTypes.bool,\r\n  headerButtonProps: PropTypes.shape({}),\r\n  styleOverrides: PropTypes.shape({\r\n    header: PropTypes.shape({}),\r\n  }),\r\n};\r\n\r\nHeader.defaultProps = {\r\n  hideHeaderButtons: false,\r\n  headerButtonProps: null,\r\n  styleOverrides: {},\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__75__;","import { extend } from 'underscore';\r\n\r\nexport const getSimplePreviewCarouselHeaderStyles = ({\r\n  styleOverrides = {},\r\n}) => () => ({\r\n  title: extend({\r\n    fontSize: 18,\r\n    fontWeight: 'normal',\r\n    lineHeight: '24px',\r\n    margin: '20px 24px 16px 24px',\r\n    '&.with-additional-tag': {\r\n      marginRight: 8,\r\n      display: 'inline-block',\r\n    },\r\n  }, styleOverrides.title),\r\n});\r\n\r\nexport const getPreviewCarouselHeaderWithButtonsStyles = ({\r\n  styleOverrides = {},\r\n}) => () => ({\r\n  headerRoot: extend({\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    alignItems: 'center',\r\n  }, styleOverrides.headerRoot),\r\n  title: extend({\r\n    fontSize: 18,\r\n    fontWeight: 'normal',\r\n    lineHeight: '24px',\r\n    margin: '20px 24px 16px 24px',\r\n    '&.with-additional-tag': {\r\n      marginRight: 8,\r\n      display: 'inline-block',\r\n    },\r\n  }, styleOverrides.title),\r\n  buttons: extend({\r\n    flexGrow: 1,\r\n  }, styleOverrides.buttons),\r\n});\r\n\r\nexport const getIncludeExcludeEditButtonStyles = ({\r\n  styleOverrides = {},\r\n}) => () => ({\r\n  exclude: extend({}, styleOverrides.exclude),\r\n  actionButtons: extend({\r\n    display: 'inline-block',\r\n    flexGrow: 0,\r\n    marginRight: 16,\r\n    textAlign: 'center',\r\n  }, styleOverrides.actionButtons),\r\n});\r\n\r\nexport const getReCropReplaceButtonsStyles = ({\r\n  styleOverrides = {},\r\n}) => () => ({\r\n  recrop: extend({}, styleOverrides.recrop),\r\n  replace: extend({}, styleOverrides.replace),\r\n});\r\n","import React, { useContext } from 'react';\r\nimport classnames from 'classnames';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport { getValidationMessageStyles } from './styles/validation-message';\r\n\r\nexport const ValidationMessage = ({\r\n  index,\r\n  selectedImage,\r\n  isImageValid,\r\n  getMinSizeByIndex,\r\n  styleOverrides,\r\n}) => {\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getValidationMessageStyles({ styleOverrides: styleOverrides.validationMessage }));\r\n\r\n  if (_.result(selectedImage, 'isIncluded') !== true) {\r\n    // todo need to handle not supported state??\r\n    if (!isImageValid) {\r\n      const { minWidth, minHeight } = getMinSizeByIndex(index);\r\n\r\n      const messageTemplate = _TL_('To include this aspect ratio, add a new image that is at least {{width}} x {{height}} pixels.');\r\n\r\n      return (\r\n        <span className={classnames('action-label', classes.validationError)}>\r\n          {\r\n            i18n.getString(messageTemplate, {\r\n              width: minWidth,\r\n              height: minHeight,\r\n            })\r\n          }\r\n        </span>\r\n      );\r\n    }\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nValidationMessage.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  selectedImage: PropTypes.shape({}).isRequired,\r\n  getMinSizeByIndex: PropTypes.func.isRequired,\r\n  isImageValid: PropTypes.bool.isRequired,\r\n  styleOverrides: PropTypes.shape({\r\n    validationMessage: PropTypes.shape({}),\r\n  }),\r\n};\r\n\r\nValidationMessage.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n","import { extend } from 'underscore';\r\n\r\nexport const getValidationMessageStyles = ({\r\n  styleOverrides = {},\r\n}) => () => ({\r\n  validationError: extend({\r\n    fontSize: 14,\r\n    lineHeight: 2,\r\n    marginRight: 16,\r\n    display: 'block',\r\n    width: '100%',\r\n    textAlign: 'center',\r\n  }, styleOverrides.validationError),\r\n});\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getDisclaimerMessageStyles } from './styles/disclaimer-message';\r\n\r\nexport const DisclaimerMessage = ({\r\n  disclaimerMessage,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getDisclaimerMessageStyles({ styleOverrides: styleOverrides.disclaimerMessage }));\r\n\r\n  if (disclaimerMessage) {\r\n    return (\r\n      <div className={classnames('disclaimer-info', classes.disclaimerInfo)}>\r\n        <div className={classnames('disclaimer-info-inline', classes.disclaimerInfoInline)}>\r\n          {disclaimerMessage}\r\n        </div>\r\n      </div>\r\n    );\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nDisclaimerMessage.propTypes = {\r\n  disclaimerMessage: PropTypes.string,\r\n  styleOverrides: PropTypes.shape({\r\n    disclaimerMessage: PropTypes.shape({}),\r\n  }),\r\n};\r\n\r\nDisclaimerMessage.defaultProps = {\r\n  disclaimerMessage: '',\r\n  styleOverrides: {},\r\n};\r\n","import _ from 'underscore';\r\n\r\nexport const getDisclaimerMessageStyles = ({\r\n  styleOverrides = {},\r\n}) => () => {\r\n  const overrides = _.pick(styleOverrides, [\r\n    'disclaimerInfo',\r\n    'disclaimerInfoInline',\r\n  ]);\r\n\r\n  return {\r\n    disclaimerInfo: _.extend({\r\n      fontSize: 12,\r\n      lineHeight: '20px',\r\n      textAlign: 'left',\r\n      padding: '0 24px 20px 24px',\r\n    }, overrides.disclaimerInfo),\r\n    disclaimerInfoInline: _.extend({}, overrides.disclaimerInfoInline),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { ActionButton } from '@bingads-webui-react/fabric-control';\r\n\r\nimport { getFooterButtonStyles } from './styles/footer-button';\r\n\r\nexport const FooterButton = ({\r\n  index,\r\n  selectedImage,\r\n  footerButtonProps,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getFooterButtonStyles({ styleOverrides: styleOverrides.footerButton }));\r\n\r\n  if (footerButtonProps) {\r\n    const {\r\n      onClick,\r\n      onRenderIcon,\r\n      buttonText,\r\n      buttonClassName,\r\n    } = footerButtonProps;\r\n\r\n    return (\r\n      <ActionButton\r\n        className={classnames(buttonClassName, classes.footerButton)}\r\n        onRenderIcon={onRenderIcon}\r\n        onClick={() => onClick({ index, selectedImage })}\r\n      >\r\n        { buttonText }\r\n      </ActionButton>\r\n    );\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nFooterButton.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  selectedImage: PropTypes.shape({}).isRequired,\r\n  footerButtonProps: PropTypes.shape({\r\n    onClick: PropTypes.func,\r\n    onRenderIcon: PropTypes.func,\r\n    buttonText: PropTypes.string,\r\n    buttonClassName: PropTypes.string,\r\n  }),\r\n  styleOverrides: PropTypes.shape({\r\n    footerButton: PropTypes.shape({}),\r\n  }),\r\n};\r\n\r\nFooterButton.defaultProps = {\r\n  footerButtonProps: null,\r\n  styleOverrides: {},\r\n};\r\n","import { extend } from 'underscore';\r\n\r\nexport const getFooterButtonStyles = ({\r\n  styleOverrides = {},\r\n}) => (_, { palette = {} }) => ({\r\n  footerButton: extend({\r\n    position: 'relative',\r\n    float: 'right',\r\n    bottom: 113,\r\n    color: palette.themePrimary,\r\n    '& .iconba': {\r\n      top: 1,\r\n      fontSize: 16,\r\n    },\r\n  }, styleOverrides.footerButton),\r\n});\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useAllPlacementsPanel } from './all-placements-panel';\r\nimport { FooterButton } from './footer-button';\r\n\r\nconst AllPlacementsCore = ({\r\n  index,\r\n  getSelectedImage,\r\n  previewElements,\r\n  getImageInfoByIndex,\r\n  getCarouselTitleByIndex,\r\n  isImageValid,\r\n  getIsRequiredByIndex,\r\n  getMinSizeByIndex,\r\n  headerButtonProps,\r\n  styleOverrides,\r\n  shouldHideHeaderButtonsByIndex,\r\n  getTemplateTypeByIndex,\r\n}) => {\r\n  const { panelElement, footerButtonProps } = useAllPlacementsPanel({\r\n    previewElements,\r\n    getImageInfoByIndex,\r\n    headerButtonProps,\r\n    getCarouselTitleByIndex,\r\n    isImageValid,\r\n    getIsRequiredByIndex,\r\n    getMinSizeByIndex,\r\n    styleOverrides,\r\n    shouldHideHeaderButtonsByIndex,\r\n    getSelectedImage,\r\n    getTemplateTypeByIndex,\r\n  });\r\n\r\n  return (\r\n    <React.Fragment>\r\n      <FooterButton\r\n        index={index}\r\n        selectedImage={getSelectedImage(index)}\r\n        footerButtonProps={footerButtonProps}\r\n        styleOverrides={styleOverrides}\r\n      />\r\n      { panelElement }\r\n    </React.Fragment>\r\n  );\r\n};\r\n\r\nAllPlacementsCore.propTypes = {\r\n  index: PropTypes.number.isRequired,\r\n  getSelectedImage: PropTypes.func.isRequired,\r\n  previewElements: PropTypes.arrayOf(PropTypes.func).isRequired,\r\n  getImageInfoByIndex: PropTypes.func.isRequired,\r\n  getCarouselTitleByIndex: PropTypes.func.isRequired,\r\n  isImageValid: PropTypes.bool.isRequired,\r\n  getMinSizeByIndex: PropTypes.func.isRequired,\r\n  getIsRequiredByIndex: PropTypes.func.isRequired,\r\n  shouldHideHeaderButtonsByIndex: PropTypes.func.isRequired,\r\n  getTemplateTypeByIndex: PropTypes.func.isRequired,\r\n  headerButtonProps: PropTypes.shape({}),\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nAllPlacementsCore.defaultProps = {\r\n  headerButtonProps: null,\r\n  styleOverrides: {},\r\n};\r\n\r\nexport const AllPlacements = (props) => {\r\n  const { enableAllPlacementsPanel } = props;\r\n\r\n  if (enableAllPlacementsPanel) {\r\n    return (\r\n      <AllPlacementsCore\r\n        {...props}\r\n      />\r\n    );\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nAllPlacements.propTypes = {\r\n  enableAllPlacementsPanel: PropTypes.bool,\r\n};\r\n\r\nAllPlacements.defaultProps = {\r\n  enableAllPlacementsPanel: false,\r\n};\r\n","import React, {\r\n  useState,\r\n  useCallback,\r\n  useMemo,\r\n  useContext,\r\n} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { AdPlacementsGridPreviewPanel } from '@bingads-webui-campaign-react/ad-placements-grid-preview';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport { getGridPreviewCarouselStyle, getAdPlacementStyle } from './styles';\r\nimport { Header } from '../header';\r\nimport { ValidationMessage } from '../validation-message';\r\n\r\nconst AllPlacementsPanel = ({\r\n  isOpen,\r\n  onDismiss,\r\n  className,\r\n  cellsNumberPerRow,\r\n  totalCount,\r\n  onRenderCell,\r\n  cellHeight,\r\n}) => {\r\n  const classes = useDefaultStyles(getGridPreviewCarouselStyle);\r\n\r\n  const props = {\r\n    isOpen,\r\n    onDismiss,\r\n    cellsNumberPerRow,\r\n    totalCount,\r\n    onRenderCell,\r\n    cellHeight,\r\n  };\r\n\r\n  return (\r\n    <div >\r\n      <AdPlacementsGridPreviewPanel\r\n        {...props}\r\n        className={classnames(classes.gridPreviewContainer, className)}\r\n      />\r\n    </div>\r\n  );\r\n};\r\n\r\nAllPlacementsPanel.propTypes = {\r\n  isOpen: PropTypes.bool.isRequired,\r\n  onDismiss: PropTypes.func.isRequired,\r\n  cellsNumberPerRow: PropTypes.number.isRequired,\r\n  totalCount: PropTypes.number.isRequired,\r\n  onRenderCell: PropTypes.func.isRequired,\r\n  className: PropTypes.string,\r\n  cellHeight: PropTypes.number,\r\n};\r\n\r\nAllPlacementsPanel.defaultProps = {\r\n  className: '',\r\n  cellHeight: 482,\r\n};\r\n\r\nexport const useAllPlacementsPanel = ({\r\n  previewElements,\r\n  getSelectedImage,\r\n  headerButtonProps,\r\n  getCarouselTitleByIndex,\r\n  isImageValid,\r\n  getIsRequiredByIndex,\r\n  getMinSizeByIndex,\r\n  styleOverrides,\r\n  shouldHideHeaderButtonsByIndex,\r\n  getTemplateTypeByIndex,\r\n}) => {\r\n  const [isOpen, setIsOpen] = useState(false);\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getAdPlacementStyle);\r\n\r\n  const onDismiss = useCallback(() => {\r\n    setIsOpen(false);\r\n  }, []);\r\n\r\n  const onRenderCell = useCallback((index) => {\r\n    const previewElement = previewElements[index];\r\n    const selectedImage = getSelectedImage(index);\r\n\r\n    return (\r\n      <div className={classnames('view-all-preview-element', classes.cellRoot)}>\r\n        <Header\r\n          index={index}\r\n          selectedImage={selectedImage}\r\n          getCarouselTitleByIndex={getCarouselTitleByIndex}\r\n          headerButtonProps={headerButtonProps}\r\n          getIsRequiredByIndex={getIsRequiredByIndex}\r\n          isImageValid={isImageValid}\r\n          styleOverrides={{\r\n            header: {\r\n              actionButtons: {\r\n                '& .edit-image-button': {\r\n                  marginRight: 8,\r\n                },\r\n              },\r\n            },\r\n            ...styleOverrides,\r\n          }}\r\n          shouldHideHeaderButtonsByIndex={shouldHideHeaderButtonsByIndex}\r\n          getTemplateTypeByIndex={getTemplateTypeByIndex}\r\n        />\r\n        <ValidationMessage\r\n          index={index}\r\n          selectedImage={selectedImage}\r\n          isImageValid={isImageValid}\r\n          getMinSizeByIndex={getMinSizeByIndex}\r\n          styleOverrides={styleOverrides}\r\n        />\r\n        <div className={classnames('placement-root', classes.placementRoot)}>\r\n          {previewElement}\r\n        </div>\r\n      </div>\r\n    );\r\n  }, [\r\n    classes,\r\n    previewElements,\r\n    getSelectedImage,\r\n    headerButtonProps,\r\n    getCarouselTitleByIndex,\r\n    isImageValid,\r\n    getMinSizeByIndex,\r\n    styleOverrides,\r\n    getIsRequiredByIndex,\r\n    shouldHideHeaderButtonsByIndex,\r\n    getTemplateTypeByIndex,\r\n  ]);\r\n\r\n  // eslint-disable-next-line arrow-body-style\r\n  const panelElement = useMemo(() => {\r\n    return (\r\n      <AllPlacementsPanel\r\n        isOpen={isOpen}\r\n        onDismiss={onDismiss}\r\n        className=\"view-all-placements-panel\"\r\n        cellsNumberPerRow={2}\r\n        totalCount={previewElements.length}\r\n        onRenderCell={onRenderCell}\r\n        cellHeight={510}\r\n      />\r\n    );\r\n  }, [isOpen, onDismiss, previewElements, onRenderCell]);\r\n\r\n  // eslint-disable-next-line arrow-body-style\r\n  const footerButtonProps = useMemo(() => {\r\n    return {\r\n      onClick: () => setIsOpen(true),\r\n      onRenderIcon: () => (\r\n        <span className=\"iconba iconba-FullView\" />\r\n      ),\r\n      buttonText: i18n.getString(_TL_('View example placements')),\r\n      buttonClassName: 'view-placements',\r\n    };\r\n  }, [i18n]);\r\n\r\n  return {\r\n    panelElement,\r\n    footerButtonProps,\r\n  };\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__52__;","\r\nexport const getGridPreviewCarouselStyle = () => ({\r\n  gridPreviewContainer: {\r\n    '& .ms-Panel-main': {\r\n      width: '90%',\r\n      '@media screen and (min-width: 1377px)': {\r\n        width: 1377,\r\n      },\r\n    },\r\n    '& .placements-grid-preview-cell': {\r\n      height: '100%',\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      '& .preview-header': {\r\n        display: 'flex',\r\n        flexDirection: 'row',\r\n        alignItems: 'center',\r\n\r\n        '& .ad-preview-title.with-additional-tag': {\r\n          marginRight: 8,\r\n          display: 'inline-block',\r\n          flexGrow: 0,\r\n        },\r\n\r\n        '& .flex-grow': {\r\n          flexGrow: 1,\r\n        },\r\n\r\n        '& .ad-preview-actions.inline-title': {\r\n          display: 'inline-block',\r\n          flexGrow: 0,\r\n          '& > button': {\r\n            marginRight: 8,\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n\r\nexport const getAdPlacementStyle = () => ({\r\n  cellRoot: {\r\n    height: '100%',\r\n    maxHeight: 482,\r\n  },\r\n  placementRoot: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    height: '100%',\r\n    maxHeight: 422,\r\n    '& .ad-placement-preview': {\r\n      flexGrow: 1,\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      '& .new-responsive-ad-preview-container': {\r\n        flexGrow: 1,\r\n        display: 'flex',\r\n        flexDirection: 'column',\r\n        alignItems: 'center',\r\n        '& .card-parent': {\r\n          display: 'flex',\r\n          flexGrow: 1,\r\n          flexDirection: 'column',\r\n          '& .ad-placement-card-preview': {\r\n            display: 'flex',\r\n            flexGrow: 1,\r\n            flexDirection: 'column',\r\n          },\r\n        },\r\n        '& a.responsive-ad-preview-content': {\r\n          display: 'block',\r\n          position: 'relative',\r\n          boxSizing: 'content-box',\r\n          overflow: 'hidden',\r\n          boxShadow: '0px 0.511px 1.533px rgb(0 0 0 / 10%), 0px 2.72533px 6.132px rgb(0 0 0 / 13%)',\r\n          borderRadius: 5.11,\r\n          background: '#fff',\r\n          margin: 'auto',\r\n          top: 0,\r\n        },\r\n        '& .additional-disclaimer-message': {\r\n          position: 'static',\r\n          textAlign: 'center',\r\n        },\r\n        '& .preview-string': {\r\n          position: 'static',\r\n        },\r\n      },\r\n    },\r\n    '& .action-label': {\r\n      textAlign: 'center',\r\n      fontSize: 16,\r\n      lineHeight: 2,\r\n    },\r\n  },\r\n});\r\n","import _ from 'underscore';\r\nimport React, { useContext, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { GroupsLayoutControls } from './controls';\r\nimport { getCarouselOverrideStyles, getGroupsLayoutStyles } from './styles';\r\n\r\n\r\nexport const GroupsPreviewer = (props) => {\r\n  const {\r\n    groups, previewers, adData, decoratorsData, images, headerButtonProps,\r\n  } = props;\r\n\r\n  const i18n = useContext(I18nContext);\r\n  const classes = useDefaultStyles(getGroupsLayoutStyles);\r\n  const carouselClasses = useDefaultStyles(getCarouselOverrideStyles);\r\n\r\n  const [activeGroupKey, setActiveGroupKey] = useState(groups[0].key);\r\n\r\n  return (\r\n    <div className=\"groups-previewer\">\r\n      <GroupsLayoutControls\r\n        i18n={i18n}\r\n        groups={groups}\r\n        activeGroupKey={activeGroupKey}\r\n        onChangeActiveGroupKey={setActiveGroupKey}\r\n      />\r\n      <div className={classes.groupContainer}>\r\n        {\r\n          _.map(groups, ({ key }) => {\r\n            const Previewer = previewers[key];\r\n\r\n            return (\r\n              <div\r\n                className={classnames(\r\n                  'group-previewer',\r\n                  carouselClasses.carouselContainer,\r\n                  key !== activeGroupKey && classes.inactiveGroup\r\n                )}\r\n              >\r\n                <Previewer\r\n                  key={key}\r\n                  adData={adData}\r\n                  decoratorsData={decoratorsData}\r\n                  imagesToDisplay={images}\r\n                  headerButtonProps={headerButtonProps}\r\n                  hideNavigationControlsIfSingle\r\n                />\r\n              </div>\r\n            );\r\n          })\r\n        }\r\n      </div>\r\n    </div>\r\n  );\r\n};\r\n\r\nGroupsPreviewer.propTypes = {\r\n  groups: PropTypes.arrayOf(PropTypes.shape({\r\n    key: PropTypes.string.isRequired,\r\n    label: PropTypes.string.isRequired,\r\n    predicate: PropTypes.func.isRequired,\r\n  })).isRequired,\r\n  previewers: PropTypes.shape({}).isRequired,\r\n  adData: PropTypes.shape({}).isRequired,\r\n  decoratorsData: PropTypes.shape({}),\r\n  images: PropTypes.arrayOf(PropTypes.shape({})),\r\n  headerButtonProps: PropTypes.shape({\r\n    onEdit: PropTypes.func.isRequired,\r\n    onAddAspectRatio: PropTypes.func.isRequired,\r\n    onRemoveAspectRatio: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n};\r\n\r\nGroupsPreviewer.defaultProps = {\r\n  decoratorsData: {},\r\n  images: [],\r\n};\r\n","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { Pivot, PivotItem } from '@bingads-webui-react/fabric-control';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getGroupsLayoutStyles } from './styles';\r\n\r\nexport const GroupsLayoutControls = (props) => {\r\n  const {\r\n    i18n,\r\n    groups,\r\n    activeGroupKey,\r\n    onChangeActiveGroupKey,\r\n  } = props;\r\n  const classes = useDefaultStyles(getGroupsLayoutStyles);\r\n\r\n  if (groups.length === 1) return null;\r\n\r\n  return (\r\n    <div className={classnames('groups-controls', classes.controls)} >\r\n      <Pivot\r\n        selectedKey={activeGroupKey}\r\n        onLinkClick={item => onChangeActiveGroupKey(item.props.itemKey)}\r\n      >\r\n        {\r\n          _.map(groups, group => (\r\n            <PivotItem\r\n              key={group.key}\r\n              itemKey={group.key}\r\n              headerText={i18n.getString(group.label)}\r\n            />\r\n          ))\r\n        }\r\n      </Pivot>\r\n    </div>\r\n  );\r\n};\r\n\r\nGroupsLayoutControls.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  groups: PropTypes.arrayOf(PropTypes.shape({\r\n    key: PropTypes.string.isRequired,\r\n    label: PropTypes.string.isRequired,\r\n  })).isRequired,\r\n  activeGroupKey: PropTypes.string.isRequired,\r\n  onChangeActiveGroupKey: PropTypes.func.isRequired,\r\n};\r\n","export const getGroupsLayoutStyles = () => ({\r\n  controls: {\r\n    display: 'flex',\r\n    paddingBottom: 8,\r\n  },\r\n\r\n  channelControl: {\r\n    marginLeft: 'auto',\r\n  },\r\n\r\n  groupContainer: {\r\n    background: '#ffffff',\r\n    borderRadius: 4,\r\n    boxShadow: '0 2px 4px rgba(0,0,0,0.1)',\r\n\r\n    '& .preview-string': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& .additional-disclaimer-message': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& .multi-line-processed-text': {\r\n      wordBreak: 'break-word',\r\n    },\r\n  },\r\n\r\n  inactiveGroup: {\r\n    display: 'none',\r\n  },\r\n});\r\n\r\nexport const getCarouselOverrideStyles = () => ({\r\n  carouselContainer: {\r\n    '& .new-preview-carousel-container-adprelib ': {\r\n      border: 'none',\r\n    },\r\n\r\n    '& .ad-preview-title': {\r\n      fontSize: 14,\r\n      margin: 0,\r\n      padding: 20,\r\n    },\r\n\r\n    '& .exclude-aspect-ratio-button': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& .carousel-wrapper': {\r\n      '& .carousel-inner': {\r\n        height: 425,\r\n      },\r\n      '& .carousel-control': {\r\n        background: 'transparent',\r\n      },\r\n      '& .carousel-control.left': {\r\n        left: 'calc(50% - 65px)',\r\n        transform: 'translateX(-50%)',\r\n        margin: '15px 0',\r\n      },\r\n      '& .carousel-control.right': {\r\n        left: 'calc(50% + 60px)',\r\n        transform: 'translateX(-50%)',\r\n        margin: '15px 0',\r\n      },\r\n      '& .carousel-indicators': {\r\n        display: 'flex',\r\n        gap: '10px',\r\n        left: '50% !important',\r\n        transform: 'translateX(-50%)',\r\n        margin: '20px 0 !important',\r\n\r\n        '& li': {\r\n          margin: '0',\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__215__;","module.exports = __WEBPACK_EXTERNAL_MODULE__217__;","module.exports = __WEBPACK_EXTERNAL_MODULE__20__;","export { QuickDateLeftRightPicker } from './src/quick-date-left-right-picker';\r\nexport {\r\n  getXTimesAgoDate,\r\n  getRangeIndexWithDefaultType,\r\n  getNthPeriodWithRangeType\r\n} from './src/utils';\r\n\r\nexport {\r\n  comparedPickerSharedStyle,\r\n} from './src/style';\r\n","import React, { useContext, useEffect } from 'react';\r\nimport classNames from 'classnames';\r\n// @ts-ignore\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport {\r\n  IconButton,\r\n} from '@fluentui/react';\r\n// @ts-ignore\r\nimport { compareCivilDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { getNextPreviousDate, getNextPreviousRangeTypeIndex, getRangeString, getComparedDate } from './utils';\r\nimport { pickerStyles } from './style';\r\n\r\ninterface I18n {\r\n  getString(key: any): string;\r\n}\r\n\r\n\r\nexport function QuickDateLeftRightPicker(props: {\r\n  onPickDateRanges: (arg0: { selectedRange: any; rangeId: number; rangeIndex: number; }) => void,\r\n  rangeType: any,\r\n  selectedRange: any,\r\n  selectedComparedRange: any\r\n  rangeIndex: any,\r\n  className?: string,\r\n  shouldShowComparedInInput: boolean,\r\n  minDate: any,\r\n  maxDate: any,\r\n  dateRangeLogger?: (any: any) => void,\r\n  rangeDays?: number,\r\n  comparedRangeDays?: number,\r\n  comparedOption: {\r\n    type: number,\r\n  },\r\n}): JSX.Element {\r\n  const {\r\n    className, onPickDateRanges, rangeIndex, rangeType, selectedRange,\r\n    shouldShowComparedInInput, minDate, maxDate, rangeDays, dateRangeLogger,\r\n    selectedComparedRange, comparedOption, comparedRangeDays,\r\n  } = props;\r\n\r\n  const i18n: I18n = useContext(I18nContext);\r\n  const classes: any = useDefaultStyles(() => pickerStyles);\r\n  const { next: nextDate, previous: previousDate } = getNextPreviousDate(rangeType, selectedRange, minDate, maxDate, rangeDays);\r\n  const { next, previous } = getNextPreviousRangeTypeIndex(rangeType, rangeIndex);\r\n\r\n  const isPreviousDisabled = previousDate == null || compareCivilDate(previousDate, selectedRange) === 0;\r\n  const isNextDisabled = nextDate == null || compareCivilDate(nextDate, selectedRange) === 0;\r\n\r\n  const nextComparedDate = getComparedDate({\r\n    range: nextDate,\r\n    comparedRange: selectedComparedRange,\r\n    comparedOption,\r\n    rangeType: {\r\n      rangeId: next?.rangeId,\r\n    },\r\n    next: true,\r\n    comparedRangeDays,\r\n    comparedOn: shouldShowComparedInInput,\r\n    minDate,\r\n    maxDate,\r\n  });\r\n  const previousComparedDate = getComparedDate({\r\n    range: previousDate,\r\n    comparedRange: selectedComparedRange,\r\n    comparedOption,\r\n    rangeType: {\r\n      rangeId: previous?.rangeId,\r\n    },\r\n    next: false,\r\n    comparedRangeDays,\r\n    comparedOn: shouldShowComparedInInput,\r\n    minDate,\r\n    maxDate,\r\n  });\r\n\r\n  useEffect(() => {\r\n    // log the impression on mount\r\n    if (dateRangeLogger) {\r\n      dateRangeLogger({\r\n        method: 'quickImpression',\r\n      });\r\n    }\r\n  }, []);\r\n\r\n  return (\r\n    <div className={classNames(\r\n      'quick-date-left-right-picker',\r\n      shouldShowComparedInInput ? classes.high : classes.low,\r\n      shouldShowComparedInInput ? 'high' : 'low',\r\n      classes.picker, className\r\n    )}\r\n    >\r\n      <div className={classNames('icon-buttons')}>\r\n        <IconButton\r\n          iconProps={{ iconName: 'ChevronLeft' }}\r\n          ariaLabel={i18n.getString(_TL_('last date'))}\r\n          onClick={() => {\r\n            const operation = {\r\n              ...previous,\r\n              selectedRange: previousDate,\r\n              selectedComparedRange: previousComparedDate,\r\n            };\r\n            if (dateRangeLogger) {\r\n              dateRangeLogger({\r\n                method: 'quickPrevious',\r\n                ...previous,\r\n                type: getRangeString(previous.rangeId),\r\n              });\r\n            }\r\n            onPickDateRanges(operation);\r\n          }}\r\n          styles={{ root: { fontSize: '12px' }, icon: { fontSize: '12px' } }}\r\n          className={isPreviousDisabled ? classNames('previous-button', 'disabled', classes.disabledColor) : classNames('previous-button', 'active', classes.activeColor)}\r\n          disabled={isPreviousDisabled}\r\n        />\r\n        <IconButton\r\n          iconProps={{ iconName: 'ChevronRight' }}\r\n          ariaLabel={i18n.getString(_TL_('next date'))}\r\n          onClick={() => {\r\n            const operation = {\r\n              ...next,\r\n              selectedRange: nextDate,\r\n              selectedComparedRange: nextComparedDate,\r\n            };\r\n            onPickDateRanges(operation);\r\n            if (dateRangeLogger) {\r\n              dateRangeLogger({\r\n                method: 'quickNext',\r\n                ...next,\r\n                type: getRangeString(next.rangeId),\r\n              });\r\n            }\r\n          }}\r\n          styles={{ root: { fontSize: '12px' }, icon: { fontSize: '12px' } }}\r\n          className={isNextDisabled ? classNames('next-button', 'disabled', classes.disabledColor) : classNames('next-button', 'active', classes.activeColor)}\r\n          disabled={isNextDisabled}\r\n        />\r\n      </div>\r\n    </div>\r\n  );\r\n}\r\n\r\nQuickDateLeftRightPicker.defaultProps = {\r\n  className: undefined,\r\n  rangeDays: undefined,\r\n  dateRangeLogger: () => {},\r\n  comparedRangeDays: undefined,\r\n};\r\n","// @ts-ignore\r\nimport { find, isEmpty, findKey } from 'underscore';\r\n// @ts-ignore\r\nimport { CivilDate as CivilDateClass } from 'tc39-proposal-temporal';\r\nimport {\r\n  compareCivilDate,\r\n  getCivilDateToday,\r\n  isRangeValid,\r\n  getMinDate, getMaxDate,\r\n  getCivilDateMonthStart,\r\n  getCivilDateMonthEnd,\r\n  isDateAvailable,\r\n  isDateInvalid,\r\n  getDaysOfARange,\r\n  getThisSunday,\r\n  getLastSunday,\r\n  getNextSunday,\r\n  getNextNextSunday,\r\n  getThisSaturday,\r\n  getNextSaturday,\r\n  getNextNextSaturday,\r\n  getLastMonday,\r\n  getThisMonday,\r\n  getNextMonday,\r\n  getMonthsOfARange,\r\n  ComparedOptions,\r\n  RANGES,\r\n// @ts-ignore\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\n\r\ninterface CivilDate {\r\n  year: any;\r\n  month: any;\r\n  day: any;\r\n  plus: (arg0: {\r\n    years?: number; months?: number; days?: number;\r\n  }) => CivilDate;\r\n}\r\n\r\ninterface RangeDate {\r\n  end: CivilDate;\r\n  start: CivilDate;\r\n}\r\n\r\ninterface RangeType {\r\n  key: string;\r\n  range: RangeDate;\r\n  rangeId: number;\r\n  text: string;\r\n}\r\n\r\ninterface NextPrevDate {\r\n  next: RangeDate | null;\r\n  previous: RangeDate | null;\r\n}\r\n\r\nexport function getRangeString(rangeId: number) {\r\n  const result = findKey(RANGES, (v) => v === rangeId);\r\n  return result || rangeId;\r\n}\r\n\r\nfunction getTextWithRangeIndex(\r\n  i18n: any, rangeIndex: number,\r\n  {\r\n    text, defaultValue, daysAgo, defaultRange = () => false,\r\n  }\r\n  : { text?: string, defaultValue: string, daysAgo?: string, defaultRange?: () => boolean }\r\n): string {\r\n  if (i18n == null || i18n.getString == null) {\r\n    return '';\r\n  }\r\n  if (rangeIndex == null || rangeIndex === 0 || daysAgo == null || defaultRange()) {\r\n    if (!isEmpty(text) && text != null) {\r\n      return text;\r\n    }\r\n    return i18n.getString(defaultValue);\r\n  }\r\n  return i18n.getString(daysAgo, { index: rangeIndex });\r\n}\r\n\r\nfunction plusRangeDate(date: RangeDate, distance: {\r\n  start: {\r\n    years?: number; months?: number; days?: number;\r\n  },\r\n  end: {\r\n    years?: number; months?: number; days?: number;\r\n  }\r\n}) : RangeDate {\r\n  const start = date?.start;\r\n  const end = date?.end;\r\n  if (isDateInvalid(start) || isDateInvalid(end) || start.plus == null || end.plus == null) {\r\n    return {\r\n      start: getCivilDateToday(),\r\n      end: getCivilDateToday(),\r\n    };\r\n  }\r\n  return {\r\n    start: start.plus(distance.start),\r\n    end: end.plus(distance.end),\r\n  };\r\n}\r\n\r\nfunction getNextPreviousDateHelper(newDate: RangeDate, minDate: CivilDate, maxDate: CivilDate) {\r\n  if (!isDateAvailable(newDate.start, minDate, maxDate) && !isDateAvailable(newDate.end, minDate, maxDate)) {\r\n    return null;\r\n  } else if (!isDateAvailable(newDate.start, minDate, maxDate)) {\r\n    return {\r\n      start: minDate,\r\n      end: newDate.end,\r\n    };\r\n  } else if (!isDateAvailable(newDate.end, minDate, maxDate)) {\r\n    return {\r\n      start: newDate.start,\r\n      end: maxDate,\r\n    };\r\n  }\r\n  return newDate;\r\n}\r\n\r\nfunction getFixedNextPreviousDay(selectedRange: RangeDate, daysCount: number): { next: RangeDate, previous: RangeDate } {\r\n  return {\r\n    next: { start: selectedRange.end.plus({ days: 1 }), end: selectedRange.end.plus({ days: daysCount }) },\r\n    previous: { start: selectedRange.start.plus({ days: -daysCount }), end: selectedRange.start.plus({ days: -1 }) },\r\n  };\r\n}\r\n\r\nfunction getNthPeriodOfFixedNDays(rangeIndex: number, rangeDays: number, minDate: CivilDate, maxDate: CivilDate, includeToday = false) {\r\n  const endDate = maxDate.plus({ days: -(includeToday === false ? 1 : 0) });\r\n  const daysInRange = getDaysOfARange({ start: minDate, end: endDate });\r\n  const numberOfRanges = Math.ceil(daysInRange / rangeDays);\r\n  const partialDays = daysInRange % rangeDays === 0 ? rangeDays : daysInRange % rangeDays;\r\n  const maxIndex = numberOfRanges - 1;\r\n  if (rangeIndex >= maxIndex) {\r\n    return {\r\n      rangeIndex: maxIndex,\r\n      range: {\r\n        start: minDate,\r\n        end: minDate.plus({ days: partialDays - 1 }),\r\n      },\r\n    };\r\n  }\r\n  return {\r\n    rangeIndex,\r\n    range: {\r\n      start: endDate.plus({ days: -(rangeIndex * rangeDays) - (rangeDays - 1) }),\r\n      end: endDate.plus({ days: -rangeIndex * rangeDays }),\r\n    },\r\n  };\r\n}\r\n\r\nexport function getNthPeriodWithRangeType(rangeType: RangeType, rangeIndex: number, minDate: CivilDate, maxDate: CivilDate, rangeDays: number | undefined) {\r\n  if (rangeType == null || rangeIndex == null ||\r\n    isDateInvalid(minDate) || isDateInvalid(maxDate) || compareCivilDate(minDate, maxDate) > 0) {\r\n    // fallback to today,\r\n    return {\r\n      rangeIndex: 0,\r\n      range: {\r\n        start: getCivilDateToday(),\r\n        end: getCivilDateToday(),\r\n      },\r\n    };\r\n  }\r\n\r\n  const {\r\n    rangeId,\r\n  } = rangeType;\r\n  let cRangeIndex = rangeIndex < 0 ? 0 : rangeIndex;\r\n  if (rangeId === RANGES.Today || rangeId === RANGES.Yesterday) {\r\n    const maxRangeIndex = getDaysOfARange({ start: minDate, end: maxDate }) - 1;\r\n    if (cRangeIndex > maxRangeIndex) {\r\n      cRangeIndex = maxRangeIndex;\r\n    }\r\n    return {\r\n      rangeIndex: cRangeIndex,\r\n      range: {\r\n        start: maxDate.plus({ days: -cRangeIndex }),\r\n        end: maxDate.plus({ days: -cRangeIndex }),\r\n      },\r\n    };\r\n  } else if (rangeId === RANGES.ThisWeek || rangeId === RANGES.LastWeek) {\r\n    // from Sunday to Saturday\r\n    const maxSunday = getThisSunday(maxDate);\r\n    const maxRange = {\r\n      start: getMaxDate(minDate, maxSunday),\r\n      end: maxDate,\r\n    };\r\n    const minSaturday = getNextSaturday(minDate, true);\r\n    const minRange = {\r\n      start: minDate,\r\n      end: getMinDate(minSaturday, maxDate),\r\n    };\r\n    let totalWeekCount = 0; // Without first week\r\n    if (compareCivilDate(maxSunday, minDate) > 0) {\r\n      // we have a range\r\n      const maxSaturday = maxSunday.plus({ days: -1 });\r\n      const minSunday = getNextSunday(minDate, true);\r\n      // This code calculates the number of weeks that are between the two dates.\r\n      // The number of weeks is calculated by dividing the number of days by 7.\r\n      // The number of weeks is then added to the total week count.\r\n      if (compareCivilDate(minSunday, maxSaturday) <= 0) {\r\n        totalWeekCount += (getDaysOfARange({ start: minSunday, end: maxSaturday })) / 7;\r\n      }\r\n\r\n      // if the range is not a multiple of 7, we need to add 1\r\n      const daysToMaxSaturday = getDaysOfARange({ start: minDate, end: maxSaturday });\r\n      if (daysToMaxSaturday % 7 !== 0) {\r\n        totalWeekCount += 1;\r\n      }\r\n    }\r\n    let targetRange;\r\n    if (cRangeIndex >= totalWeekCount) {\r\n      cRangeIndex = totalWeekCount;\r\n      targetRange = minRange;\r\n    } else if (cRangeIndex === 0) {\r\n      targetRange = maxRange;\r\n    } else {\r\n      targetRange = {\r\n        start: maxSunday.plus({ days: -7 * cRangeIndex }),\r\n        end: maxSunday.plus({ days: (-7 * cRangeIndex) + 6 }),\r\n      };\r\n    }\r\n    return {\r\n      rangeIndex: cRangeIndex,\r\n      range: targetRange,\r\n    };\r\n  } else if (rangeId === RANGES.ThisWeekMon || rangeId === RANGES.LastWeekMon) {\r\n    // from Monday to Sunday\r\n    const maxMonday = getThisMonday(maxDate);\r\n    const maxRange = {\r\n      start: getMaxDate(minDate, maxMonday),\r\n      end: maxDate,\r\n    };\r\n    const minSunday = getNextSunday(minDate, true);\r\n    const minRange = {\r\n      start: minDate,\r\n      end: getMinDate(minSunday, maxDate),\r\n    };\r\n    let totalWeekCount = 0; // Without first week\r\n    if (compareCivilDate(maxMonday, minDate) > 0) {\r\n      // we have a range\r\n      const maxSunday = maxMonday.plus({ days: -1 });\r\n      const minMonday = getNextMonday(minDate, true);\r\n      if (compareCivilDate(minMonday, maxSunday) <= 0) {\r\n        totalWeekCount += (getDaysOfARange({ start: minMonday, end: maxSunday })) / 7;\r\n      }\r\n      const daysToMaxSunday = getDaysOfARange({ start: minDate, end: maxSunday });\r\n      if (daysToMaxSunday % 7 !== 0) {\r\n        totalWeekCount += 1;\r\n      }\r\n    }\r\n    let targetRange;\r\n    if (cRangeIndex >= totalWeekCount) {\r\n      cRangeIndex = totalWeekCount;\r\n      targetRange = minRange;\r\n    } else if (cRangeIndex === 0) {\r\n      targetRange = maxRange;\r\n    } else {\r\n      targetRange = {\r\n        start: maxMonday.plus({ days: -7 * cRangeIndex }),\r\n        end: maxMonday.plus({ days: (-7 * cRangeIndex) + 6 }),\r\n      };\r\n    }\r\n    return {\r\n      rangeIndex: cRangeIndex,\r\n      range: targetRange,\r\n    };\r\n  } else if (rangeId === RANGES.ThisMonth || rangeId === RANGES.LastMonth) {\r\n    const totalMonthCount = getMonthsOfARange({ start: minDate, end: maxDate });\r\n    const maxIndex = totalMonthCount - 1;\r\n    const maxDateWithDay1 = new CivilDateClass(maxDate.year, maxDate.month, 1);\r\n    let targetRange;\r\n    if (cRangeIndex === 0) {\r\n      targetRange = {\r\n        start: getCivilDateMonthStart(maxDate),\r\n        end: maxDate,\r\n      };\r\n    } else if (cRangeIndex >= maxIndex) {\r\n      cRangeIndex = maxIndex;\r\n      targetRange = {\r\n        start: minDate,\r\n        end: getCivilDateMonthEnd(minDate),\r\n      };\r\n    } else {\r\n      const targetMonthDate = maxDateWithDay1.plus({ months: -cRangeIndex });\r\n      targetRange = {\r\n        start: getCivilDateMonthStart(targetMonthDate),\r\n        end: getCivilDateMonthEnd(targetMonthDate),\r\n      };\r\n    }\r\n    return {\r\n      rangeIndex: cRangeIndex,\r\n      range: targetRange,\r\n    };\r\n  } else if (rangeId === RANGES.Last7Days) {\r\n    return getNthPeriodOfFixedNDays(cRangeIndex, 7, minDate, maxDate, false);\r\n  } else if (rangeId === RANGES.Last14Days) {\r\n    return getNthPeriodOfFixedNDays(cRangeIndex, 14, minDate, maxDate, false);\r\n  } else if (rangeId === RANGES.Last30Days) {\r\n    return getNthPeriodOfFixedNDays(cRangeIndex, 30, minDate, maxDate, false);\r\n  } else if (rangeId === RANGES.EntireTime) {\r\n    return {\r\n      rangeIndex: 0,\r\n      range: {\r\n        start: minDate,\r\n        end: maxDate,\r\n      },\r\n    };\r\n  }\r\n  // Custom\r\n  if (rangeId === RANGES.Custom && rangeDays) {\r\n    return getNthPeriodOfFixedNDays(cRangeIndex, rangeDays, minDate, maxDate, true);\r\n  }\r\n  // fall back to maxDate\r\n  return {\r\n    rangeIndex: 0,\r\n    range: {\r\n      start: maxDate,\r\n      end: maxDate,\r\n    },\r\n  };\r\n}\r\n\r\nexport function getRangeIndexWithDefaultType(rangeType: RangeType) {\r\n  if (rangeType == null || rangeType.rangeId == null) {\r\n    return 0;\r\n  }\r\n  const {\r\n    rangeId,\r\n  } = rangeType;\r\n  switch (rangeId) {\r\n    case RANGES.Today:\r\n      return 0;\r\n    case RANGES.Yesterday:\r\n      return 1;\r\n    case RANGES.ThisWeek: // Sunday to Saturday\r\n      return 0;\r\n    case RANGES.LastWeek:\r\n      return 1;\r\n    case RANGES.ThisWeekMon: // Monday to Sunday\r\n      return 0;\r\n    case RANGES.LastWeekMon:\r\n      return 1;\r\n    case RANGES.ThisMonth:\r\n      return 0;\r\n    case RANGES.LastMonth:\r\n      return 1;\r\n    case RANGES.Last7Days:\r\n    case RANGES.Last14Days:\r\n    case RANGES.Last30Days:\r\n    case RANGES.EntireTime:\r\n    case RANGES.Custom:\r\n    default:\r\n      return 0;\r\n  }\r\n}\r\n\r\nexport function getNextPreviousRangeTypeIndex(rangeType: RangeType, rangeIndex: number) {\r\n  if (rangeType == null || rangeIndex == null) {\r\n    return {\r\n      next: {\r\n        rangeId: RANGES.Today,\r\n        rangeIndex: 0,\r\n      },\r\n      previous: {\r\n        rangeId: RANGES.Yesterday,\r\n        rangeIndex: 1,\r\n      },\r\n    };\r\n  }\r\n  const {\r\n    rangeId,\r\n  } = rangeType;\r\n  const date = {\r\n    next: {\r\n      rangeId,\r\n      rangeIndex: rangeIndex - 1,\r\n    },\r\n    previous: {\r\n      rangeId,\r\n      rangeIndex: rangeIndex + 1,\r\n    },\r\n  };\r\n  switch (rangeId) {\r\n    case RANGES.Today:\r\n      date.previous.rangeId = RANGES.Yesterday;\r\n      break;\r\n    case RANGES.Yesterday:\r\n      if (rangeIndex === 1) {\r\n        date.next.rangeId = RANGES.Today;\r\n      }\r\n      break;\r\n    case RANGES.ThisWeek: // Sunday to Saturday\r\n      date.previous.rangeId = RANGES.LastWeek;\r\n      break;\r\n    case RANGES.LastWeek:\r\n      if (rangeIndex === 1) {\r\n        date.next.rangeId = RANGES.ThisWeek;\r\n      }\r\n      break;\r\n    case RANGES.ThisWeekMon: // Monday to Sunday\r\n      date.previous.rangeId = RANGES.LastWeekMon;\r\n      break;\r\n    case RANGES.LastWeekMon:\r\n      if (rangeIndex === 1) {\r\n        date.next.rangeId = RANGES.ThisWeekMon;\r\n      }\r\n      break;\r\n    case RANGES.ThisMonth:\r\n      date.previous.rangeId = RANGES.LastMonth;\r\n      break;\r\n    case RANGES.LastMonth:\r\n      if (rangeIndex === 1) {\r\n        date.next.rangeId = RANGES.ThisMonth;\r\n      }\r\n      break;\r\n    case RANGES.Last7Days:\r\n      break;\r\n    case RANGES.Last14Days:\r\n      break;\r\n    case RANGES.Last30Days:\r\n      break;\r\n    case RANGES.EntireTime:\r\n      break;\r\n    case RANGES.Custom:\r\n      break;\r\n    default:\r\n      break;\r\n  }\r\n  if (date.next.rangeIndex < 0) {\r\n    date.next.rangeIndex = 0;\r\n    date.previous.rangeIndex = 1;\r\n  }\r\n  return date;\r\n}\r\n\r\nexport function getXTimesAgoDate(i18n: any, rangeType: RangeType, rangeIndex: number) : string {\r\n  if (rangeType == null || i18n == null || i18n.getString == null) {\r\n    return getTextWithRangeIndex(\r\n      i18n, rangeIndex,\r\n      {\r\n        defaultValue: _TL_('Custom'),\r\n      }\r\n    );\r\n  }\r\n  const {\r\n    rangeId,\r\n    text,\r\n  } = rangeType;\r\n  switch (rangeId) {\r\n    case RANGES.Today:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Today'),\r\n        }\r\n      );\r\n    case RANGES.Yesterday:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text,\r\n          defaultValue: _TL_('Yesterday'),\r\n          daysAgo: _TL_('{{index}} days ago'),\r\n          defaultRange: () => rangeIndex <= 1,\r\n        }\r\n      );\r\n    case RANGES.ThisWeek:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('This week (Sun - Today)'),\r\n        }\r\n      );\r\n    case RANGES.ThisWeekMon:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('This week (Mon - Today)'),\r\n        }\r\n      );\r\n    case RANGES.LastWeek:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text,\r\n          defaultValue: _TL_('Last week (Sun - Sat)'),\r\n          daysAgo: _TL_('{{index}} weeks ago'),\r\n          defaultRange: () => rangeIndex <= 1,\r\n        }\r\n      );\r\n    case RANGES.LastWeekMon:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text,\r\n          defaultValue: _TL_('Last week (Mon - Sun)'),\r\n          daysAgo: _TL_('{{index}} weeks ago'),\r\n          defaultRange: () => rangeIndex <= 1,\r\n        }\r\n      );\r\n    case RANGES.Last7Days:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Last 7 days'), daysAgo: _TL_('Custom'),\r\n        }\r\n      );\r\n    case RANGES.Last14Days:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Last 14 days'), daysAgo: _TL_('Custom'),\r\n        }\r\n      );\r\n    case RANGES.ThisMonth:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('This Month'),\r\n        }\r\n      );\r\n    case RANGES.LastMonth:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text,\r\n          defaultValue: _TL_('Last Month'),\r\n          daysAgo: _TL_('{{index}} months ago'),\r\n          defaultRange: () => rangeIndex <= 1,\r\n        }\r\n      );\r\n    case RANGES.Last30Days:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Last 30 days'), daysAgo: _TL_('Custom'),\r\n        }\r\n      );\r\n    case RANGES.EntireTime:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Entire Time'),\r\n        }\r\n      );\r\n    case RANGES.Custom:\r\n    default:\r\n      return getTextWithRangeIndex(\r\n        i18n, rangeIndex,\r\n        {\r\n          text, defaultValue: _TL_('Custom'),\r\n        }\r\n      );\r\n  }\r\n}\r\n\r\nexport function getNextPreviousDate(\r\n  rangeType: RangeType,\r\n  selectedRange: RangeDate, minDate: CivilDate, maxDate: CivilDate, customRangeDays?: number\r\n): NextPrevDate {\r\n  const date: NextPrevDate = {\r\n    next: null,\r\n    previous: null,\r\n  };\r\n  if (rangeType == null || !isRangeValid(selectedRange)\r\n    || isDateInvalid(minDate) || isDateInvalid(maxDate)) {\r\n    return date;\r\n  }\r\n  const {\r\n    rangeId,\r\n  } = rangeType;\r\n  let fixedNextPreviousDay;\r\n  const startWithDay1 = new CivilDateClass(selectedRange.start.year, selectedRange.start.month, 1);\r\n  const nextMonthDate = startWithDay1.plus({ months: 1 });\r\n  const lastMonthDate = startWithDay1.plus({ months: -1 });\r\n  switch (rangeId) {\r\n    case RANGES.Today:\r\n    case RANGES.Yesterday:\r\n      date.next = getNextPreviousDateHelper(plusRangeDate(selectedRange, { start: { days: 1 }, end: { days: 1 } }), minDate, maxDate);\r\n      date.previous = getNextPreviousDateHelper(plusRangeDate(selectedRange, { start: { days: -1 }, end: { days: -1 } }), minDate, maxDate);\r\n      break;\r\n    case RANGES.ThisWeek: // Sunday to Saturday\r\n    case RANGES.LastWeek:\r\n      date.next = getNextPreviousDateHelper({ start: getNextSunday(selectedRange.start), end: getNextNextSaturday(selectedRange.start, true) }, minDate, maxDate);\r\n      date.previous = getNextPreviousDateHelper({ start: getLastSunday(selectedRange.start), end: getThisSaturday(selectedRange.start, false) }, minDate, maxDate);\r\n      break;\r\n    case RANGES.ThisWeekMon: // Monday to Sunday\r\n    case RANGES.LastWeekMon:\r\n      date.next = getNextPreviousDateHelper({ start: getNextMonday(selectedRange.start), end: getNextNextSunday(selectedRange.start, true) }, minDate, maxDate);\r\n      date.previous = getNextPreviousDateHelper({ start: getLastMonday(selectedRange.start), end: getThisSunday(selectedRange.start, false) }, minDate, maxDate);\r\n      break;\r\n    case RANGES.ThisMonth:\r\n    case RANGES.LastMonth:\r\n      date.next = getNextPreviousDateHelper({ start: getCivilDateMonthStart(nextMonthDate), end: getCivilDateMonthEnd(nextMonthDate) }, minDate, maxDate);\r\n      date.previous = getNextPreviousDateHelper({ start: getCivilDateMonthStart(lastMonthDate), end: getCivilDateMonthEnd(lastMonthDate) }, minDate, maxDate);\r\n      break;\r\n    case RANGES.Last7Days:\r\n      fixedNextPreviousDay = getFixedNextPreviousDay(selectedRange, 7);\r\n      // Not include the maxDate today\r\n      date.next = getNextPreviousDateHelper(fixedNextPreviousDay.next, minDate, maxDate.plus({ days: -1 }));\r\n      date.previous = getNextPreviousDateHelper(fixedNextPreviousDay.previous, minDate, maxDate.plus({ days: -1 }));\r\n      break;\r\n    case RANGES.Last14Days:\r\n      fixedNextPreviousDay = getFixedNextPreviousDay(selectedRange, 14);\r\n      // Not include the maxDate today\r\n      date.next = getNextPreviousDateHelper(fixedNextPreviousDay.next, minDate, maxDate.plus({ days: -1 }));\r\n      date.previous = getNextPreviousDateHelper(fixedNextPreviousDay.previous, minDate, maxDate.plus({ days: -1 }));\r\n      break;\r\n    case RANGES.Last30Days:\r\n      fixedNextPreviousDay = getFixedNextPreviousDay(selectedRange, 30);\r\n      // Not include the maxDate today\r\n      date.next = getNextPreviousDateHelper(fixedNextPreviousDay.next, minDate, maxDate.plus({ days: -1 }));\r\n      date.previous = getNextPreviousDateHelper(fixedNextPreviousDay.previous, minDate, maxDate.plus({ days: -1 }));\r\n      break;\r\n    case RANGES.EntireTime:\r\n      date.next = null;\r\n      date.previous = null;\r\n      break;\r\n    case RANGES.Custom:\r\n      fixedNextPreviousDay = getFixedNextPreviousDay(selectedRange, customRangeDays || (getDaysOfARange(selectedRange)));\r\n      date.next = getNextPreviousDateHelper(fixedNextPreviousDay.next, minDate, maxDate);\r\n      date.previous = getNextPreviousDateHelper(fixedNextPreviousDay.previous, minDate, maxDate);\r\n      break;\r\n    default:\r\n      break;\r\n  }\r\n  return date;\r\n}\r\n\r\nconst defaultComparedRange = {\r\n  start: undefined,\r\n  end: undefined,\r\n};\r\n\r\n// TODO: export all the ComparedType\r\nconst ComparedType = {\r\n  Custom: 3,\r\n};\r\n\r\nexport function getComparedDate({\r\n  range,\r\n  comparedRange,\r\n  rangeType,\r\n  comparedOption,\r\n  minDate, maxDate,\r\n  comparedOn,\r\n  comparedRangeDays,\r\n  next,\r\n} : {\r\n  range: RangeDate | null,\r\n  comparedRange: RangeDate | null,\r\n  rangeType: {\r\n    rangeId: number,\r\n  },\r\n  comparedOption: {\r\n    type: number,\r\n  },\r\n  minDate: CivilDate,\r\n  maxDate: CivilDate,\r\n  comparedOn: boolean,\r\n  comparedRangeDays: number | undefined,\r\n  next: boolean,\r\n}) {\r\n  if (comparedOn === false || comparedOption == null || comparedOption.type == null) {\r\n    return defaultComparedRange;\r\n  }\r\n  const targetOption = find(ComparedOptions, option => option.type === comparedOption.type);\r\n  if (rangeType == null || rangeType.rangeId == null || !isRangeValid(range) || targetOption == null) {\r\n    return defaultComparedRange;\r\n  }\r\n  if (comparedOption.type === ComparedType.Custom) {\r\n    if (isRangeValid(comparedRange) && comparedRange != null) {\r\n      const nextPrevious = getFixedNextPreviousDay(comparedRange, comparedRangeDays || getDaysOfARange(comparedRange));\r\n      const newComparedRange = next ? nextPrevious.next : nextPrevious.previous;\r\n      if (!isDateAvailable(newComparedRange.start, minDate, maxDate) || !isDateAvailable(newComparedRange.end, minDate, maxDate)) {\r\n        return defaultComparedRange;\r\n      }\r\n      return newComparedRange;\r\n    }\r\n    return defaultComparedRange;\r\n  }\r\n  const {\r\n    rangeId,\r\n  } = rangeType;\r\n\r\n  const newComparedRange = targetOption.get(range, rangeId);\r\n  if (!isDateAvailable(newComparedRange.start, minDate, maxDate) || !isDateAvailable(newComparedRange.end, minDate, maxDate)) {\r\n    return defaultComparedRange;\r\n  }\r\n  return newComparedRange;\r\n}\r\n","import { getTheme } from '@fluentui/react';\r\n\r\nexport const theme = getTheme();\r\n\r\nexport const comparedPickerSharedStyle = {\r\n  '& .compared-date-range-picker .compared-date-range-picker-input .range-display': {\r\n    verticalAlign: 'top',\r\n  },\r\n  '& .compared-date-range-picker .compared-date-range-picker-input .iconba-Calendar': {\r\n    verticalAlign: 'top',\r\n    top: '10px',\r\n  },\r\n};\r\n\r\nexport const pickerStyles = {\r\n  picker: {\r\n    display: 'inline-block',\r\n    '& .icon-buttons': {\r\n      paddingLeft: '6px',\r\n      position: 'relative',\r\n      top: '50%',\r\n      transform: 'translateY(-50%)',\r\n    },\r\n    '& button': {\r\n      fontSize: '12px',\r\n    },\r\n    '& .next-button': {\r\n    },\r\n  },\r\n  high: {\r\n    height: '56px',\r\n    '& button': {\r\n      width: '28px',\r\n      height: '56px',\r\n    },\r\n  },\r\n  low: {\r\n    height: '32px',\r\n    '& button': {\r\n      width: '28px',\r\n      height: '28px',\r\n    },\r\n  },\r\n  disabledColor: {\r\n    backgroundColor: 'unset',\r\n  },\r\n  activeColor: {\r\n    '&:active': {\r\n      backgroundColor: 'unset',\r\n      color: theme.palette.neutralPrimary,\r\n    },\r\n    color: theme.palette.neutralPrimary,\r\n    '&:hover': {\r\n      backgroundColor: theme.palette.neutralLighter,\r\n      color: theme.palette.neutralPrimary,\r\n    },\r\n  },\r\n};\r\n","module.exports = __webpack_public_path__ + \"static/media/restricted.d19a48b2.svg\";","import React, { useMemo, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { compose } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { useSinglePlacementLayouts } from '@bingads-webui-campaign-react/ad-placement-factory';\r\nimport { AdPlacementsGroupType } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst getStyles = () => ({\r\n  adPreviewContainer: {\r\n    // TODO: set opacity via placement interface rather than override styles\r\n    '& .new-responsive-ad-preview-container': {\r\n      opacity: '1 !important',\r\n    },\r\n    '& .cropped-image-view': {\r\n      height: 'auto !important',\r\n      '& > img': {\r\n        width: '286px',\r\n      },\r\n    },\r\n  },\r\n});\r\n\r\nconst createCenterCroppedImage = (url, width, height) => {\r\n  const aspectRatio = 1.91;\r\n  const aspectRatioAssociationType = 'LandscapeImageMedia';\r\n  const orgAspectRatio = width / height;\r\n\r\n  let cropHeight = height;\r\n  let cropWidth = width;\r\n\r\n  if (aspectRatio > orgAspectRatio) {\r\n    cropHeight = cropWidth / aspectRatio;\r\n  } else {\r\n    cropWidth = cropHeight * aspectRatio;\r\n  }\r\n\r\n  return {\r\n    Src: url,\r\n    FinalSrc: url,\r\n    Width: width,\r\n    Height: height,\r\n    CropSettings: {\r\n      SourceX: (width - cropWidth) / 2,\r\n      SourceY: (height - cropHeight) / 2,\r\n      SourceWidth: cropWidth,\r\n      SourceHeight: cropHeight,\r\n    },\r\n    associationType: aspectRatioAssociationType,\r\n  };\r\n};\r\n\r\nconst UnStyledAdPreview = (props) => {\r\n  const {\r\n    classes,\r\n    image,\r\n    adData,\r\n    adId,\r\n  } = props;\r\n\r\n  const imageList = useMemo(() => {\r\n    if (!image) return [];\r\n    return [createCenterCroppedImage(image.url, image.width, image.height)];\r\n  }, [image]);\r\n\r\n  const placementImageFilterPredicate = useCallback((template) => {\r\n    const { associationType } = template;\r\n    return associationType === 'LandscapeImageMedia';\r\n  }, []);\r\n\r\n  const placementTextFilterPredicate = useCallback((template) => {\r\n    const { associationType } = template;\r\n    return associationType === 'BingText';\r\n  }, []);\r\n\r\n  const [{ SinglePlacementLayout }] = useSinglePlacementLayouts({\r\n    groupType: AdPlacementsGroupType.adLibrary,\r\n    placementFilterPredicate: !image ? placementTextFilterPredicate : placementImageFilterPredicate,\r\n  });\r\n\r\n  return (\r\n    <div className={classes.adPreviewContainer}>\r\n      <SinglePlacementLayout key={adId} adData={adData} images={imageList} />\r\n    </div>\r\n  );\r\n};\r\n\r\nUnStyledAdPreview.propTypes = {\r\n  classes: PropTypes.shape({\r\n    adPreviewContainer: PropTypes.string,\r\n  }).isRequired,\r\n  image: PropTypes.shape({\r\n    url: PropTypes.string,\r\n    width: PropTypes.number,\r\n    height: PropTypes.number,\r\n  }),\r\n  adData: PropTypes.shape({}),\r\n  adId: PropTypes.string.isRequired,\r\n};\r\n\r\nUnStyledAdPreview.defaultProps = {\r\n  adData: null,\r\n  image: null,\r\n};\r\n\r\nexport const AdPreview = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledAdPreview);\r\n","import { keyCode } from './src/keyCode';\r\nimport { keyName } from './src/keyName';\r\n\r\n\r\nexport { keyCode, keyName };\r\n","// The key is capitalized to be compatible with http://www.w3.org/TR/DOM-Level-3-Events-code.\r\n\r\n// Theoretically the properties should be named as keyCode (numeric) and code (string) to be\r\n// aligned with KeyboardEvent#keyCode and KeyboardEvent#code, but that would be confusing for people\r\n// that are not familiar with this story, and when KeyboardEvent#code is supported by the browser,\r\n// this component should be deprecated altogether, so let's use easy-to-understand property names\r\n// here.\r\n\r\n/**\r\n * Look up keyCode (KeyboardEvent#keyCode, numeric) with keyName (KeyboardEvent#code, string).\r\n * @example   keyCode.Tab === 9\r\n * @return    {number}  The keyCode (KeyboardEvent#keyCode, numeric)\r\n */\r\n/* eslint-disable quote-props */\r\nexport const keyCode = {\r\n  // Alpha-numeric\r\n  'Digit1': 0x31, // 49\r\n  'Digit2': 0x32, // 50\r\n  'Digit3': 0x33, // 51\r\n  'Digit4': 0x34, // 52\r\n  'Digit5': 0x35, // 53\r\n  'Digit6': 0x36, // 54\r\n  'Digit7': 0x37, // 55\r\n  'Digit8': 0x38, // 56\r\n  'Digit9': 0x39, // 57\r\n  'Digit0': 0x30, // 48\r\n  'KeyA': 0x41, // 65\r\n  'KeyB': 0x42, // 66\r\n  'KeyC': 0x43, // 67\r\n  'KeyD': 0x44, // 68\r\n  'KeyE': 0x45, // 69\r\n  'KeyF': 0x46, // 70\r\n  'KeyG': 0x47, // 71\r\n  'KeyH': 0x48, // 72\r\n  'KeyI': 0x49, // 73\r\n  'KeyJ': 0x4A, // 74\r\n  'KeyK': 0x4B, // 75\r\n  'KeyL': 0x4C, // 76\r\n  'KeyM': 0x4D, // 77\r\n  'KeyN': 0x4E, // 78\r\n  'KeyO': 0x4F, // 79\r\n  'KeyP': 0x50, // 80\r\n  'KeyQ': 0x51, // 81\r\n  'KeyR': 0x52, // 82\r\n  'KeyS': 0x53, // 83\r\n  'KeyT': 0x54, // 84\r\n  'KeyU': 0x55, // 85\r\n  'KeyV': 0x56, // 86\r\n  'KeyW': 0x57, // 87\r\n  'KeyX': 0x58, // 88\r\n  'KeyY': 0x59, // 89\r\n  'KeyZ': 0x5A, // 90\r\n\r\n  // Punctuation\r\n  'Comma': 0xBC, // 188\r\n  'Period': 0xBE, // 190\r\n  'Semicolon': 0xBA, // 186\r\n  'Quote': 0xDE, // 222\r\n  'BracketLeft': 0xDB, // 219\r\n  'BracketRight': 0xDD, // 221\r\n  'Backquote': 0xC0, // 192\r\n  'Backslash': 0xDC, // 220\r\n  'Minus': 0xBD, // 189\r\n  'Equal': 0xBB, // 187\r\n  'IntlRo': 0xC1, // 193\r\n  'IntlYen': 0xFF, // 255\r\n\r\n  // Modifiers\r\n  'AltLeft': 0x12, // 18\r\n  'AltRight': 0x12, // 18\r\n  'CapsLock': 0x14, // 20\r\n  'ControlLeft': 0x11, // 17\r\n  'ControlRight': 0x11, // 17\r\n  'OSLeft': 0x5B, // 91\r\n  'OSRight': 0x5C, // 92\r\n  'ShiftLeft': 0x10, // 16\r\n  'ShiftRight': 0x10, // 16\r\n\r\n  // Non-printable\r\n  'ContextMenu': 0x5D, // 93\r\n  'Enter': 0x0D, // 13\r\n  'Space': 0x20, // 32\r\n  'Tab': 0x09, // 9\r\n  'Delete': 0x2E, // 46\r\n  'End': 0x23, // 35\r\n  'Home': 0x24, // 36\r\n  'Insert': 0x2D, // 45\r\n  'PageDown': 0x22, // 34\r\n  'PageUp': 0x21, // 33\r\n  'ArrowDown': 0x28, // 40\r\n  'ArrowLeft': 0x25, // 37\r\n  'ArrowRight': 0x27, // 39\r\n  'ArrowUp': 0x26, // 38\r\n  'Escape': 0x1B, // 27\r\n  'PrintScreen': 0x2C, // 44\r\n  'ScrollLock': 0x91, // 145\r\n  'Pause': 0x13, // 19\r\n\r\n  // Functional\r\n  'F1': 0x70, // 112\r\n  'F2': 0x71, // 113\r\n  'F3': 0x72, // 114\r\n  'F4': 0x73, // 115\r\n  'F5': 0x74, // 116\r\n  'F6': 0x75, // 117\r\n  'F7': 0x76, // 118\r\n  'F8': 0x77, // 119\r\n  'F9': 0x78, // 120\r\n  'F10': 0x79, // 121\r\n  'F11': 0x7A, // 122\r\n  'F12': 0x7B, // 123\r\n  'F13': 0x7C, // 124\r\n  'F14': 0x7D, // 125\r\n  'F15': 0x7E, // 126\r\n  'F16': 0x7F, // 127\r\n  'F17': 0x80, // 128\r\n  'F18': 0x81, // 129\r\n  'F19': 0x82, // 130\r\n  'F20': 0x83, // 131\r\n  'F21': 0x84, // 132\r\n  'F22': 0x85, // 133\r\n  'F23': 0x86, // 134\r\n  'F24': 0x87, // 135\r\n\r\n  // NumPad with NumLock on\r\n  'NumLock': 0x90, // 144\r\n  'Numpad0': 0x60, // 96\r\n  'Numpad1': 0x61, // 97\r\n  'Numpad2': 0x62, // 98\r\n  'Numpad3': 0x63, // 99\r\n  'Numpad4': 0x64, // 100\r\n  'Numpad5': 0x65, // 101\r\n  'Numpad6': 0x66, // 102\r\n  'Numpad7': 0x67, // 103\r\n  'Numpad8': 0x68, // 104\r\n  'Numpad9': 0x69, // 105\r\n  'NumpadAdd': 0x6B, // 107\r\n  'NumpadComma': 0xC2, // 194\r\n  'NumpadDecimal': 0x6E, // 110\r\n  'NumpadDivide': 0x6F, // 111\r\n  'NumpadEnter': 0x0D, // 13\r\n  'NumpadEqual': 0x0C, // 12\r\n  'NumpadMultiply': 0x6A, // 106\r\n  'NumpadSubtract': 0x6D, // 109\r\n\r\n  // NumPad with NumLock off\r\n  'Numpad0-Insert': 0x2D, // 45\r\n  'Numpad1-End': 0x23, // 35\r\n  'Numpad2-ArrowDown': 0x28, // 40\r\n  'Numpad3-PageDown': 0x22, // 34\r\n  'Numpad4-ArrowLeft': 0x25, // 37\r\n  'Numpad5-Clear': 0x0C, // 12\r\n  'Numpad6-ArrowRight': 0x27, // 39\r\n  'Numpad7-Home': 0x24, // 36\r\n  'Numpad8-ArrowUp': 0x26, // 38\r\n  'Numpad9-PageUp': 0x21, // 33\r\n  'NumpadDecimal-Delete': 0x2E, // 46\r\n};\r\n/* eslint-enable quote-props */\r\n","import _ from 'underscore';\r\nimport { keyCode } from './keyCode';\r\n\r\n// The key is capitalized to be compatible with http://www.w3.org/TR/DOM-Level-3-Events-code.\r\n\r\n// Generate a readonly output.\r\n// Theoretically the properties should be named as keyCode (numeric) and code (string) to be\r\n// aligned with KeyboardEvent#keyCode and KeyboardEvent#code, but that would be confusing for people\r\n// that are not familiar with this story, and when KeyboardEvent#code is supported by the browser,\r\n// this component should be deprecated altogether, so let's use easy-to-understand property names\r\n// here.\r\n\r\nconst uniqueValues = object => _.object(_.unique(_.pairs(object), o => o[1]));\r\n\r\n/**\r\n * Look up keyName (KeyboardEvent#code, string) with keyCode (KeyboardEvent#keyCode, numeric).\r\n * @example   keyName[9] === 'Tab'\r\n * @return    {string}  The name (KeyboardEvent#code, string)\r\n */\r\nexport const keyName = Object.create(\r\n  Object.prototype,\r\n  _.mapObject(_.invert(uniqueValues(keyCode)), val => ({\r\n    enumerable: true,\r\n    value: val,\r\n    writable: false,\r\n  }))\r\n);\r\n","export * from './src';\r\n","import constants from './constants';\r\nimport { ImageExperienceImage, newImageFromSourceAsync, newImageFromMTObject } from './image-experience-image';\r\n\r\nexport { constants, ImageExperienceImage, newImageFromMTObject, newImageFromSourceAsync };\r\n","import _ from 'underscore';\r\n\r\nconst constants = {\r\n  aspectRatios: {\r\n    Image191x100: {\r\n      aspectRatio: 1.91,\r\n      type: 'Image191x100',\r\n      associationType: 'LandscapeImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_191x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_191x100',\r\n      previewTypeString: _TL_('Audience Network wide image'),\r\n      imagePreviewHeight: 200,\r\n      previewWidth: '191px',\r\n      previewHeight: '100px',\r\n      simplifiedType: 'Image191x100',\r\n      isRequired: true,\r\n      minimumRequirements: 1,\r\n      minSize: [703, 368],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-wide',\r\n        showShortHeadline: true,\r\n        showDescription: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image178x100: {\r\n      aspectRatio: 1.78,\r\n      type: 'Image178x100',\r\n      associationType: 'ImageMedia178X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_178x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_178x100',\r\n      previewTypeString: _TL_('Microsoft Edge single carousel'),\r\n      imagePreviewHeight: 350,\r\n      minimumRequirements: 0,\r\n      minSize: [624, 350],\r\n      previewSettings: {\r\n        previewContentClassName: 'edge-single-carousel',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image172x100: {\r\n      aspectRatio: 1.72,\r\n      type: 'Image172x100',\r\n      associationType: 'ImageMedia172X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_172x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_172x100',\r\n      previewTypeString: _TL_('Microsoft Edge medium headline'),\r\n      imagePreviewHeight: 174,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 174],\r\n      previewSettings: {\r\n        previewContentClassName: 'edge-medium-headline',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image169x100: {\r\n      aspectRatio: 1.69,\r\n      type: 'Image169x100',\r\n      associationType: 'ImageMedia169X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_169x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_169x100',\r\n      previewTypeString: _TL_('MSN single carousel'),\r\n      imagePreviewHeight: 368,\r\n      minimumRequirements: 0,\r\n      minSize: [622, 368],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-single-carousel',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image155x100: {\r\n      aspectRatio: 1.55,\r\n      type: 'Image155x100',\r\n      associationType: 'ImageMedia155X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_155x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_155x100',\r\n      previewTypeString: _TL_('MSN medium headline'),\r\n      imagePreviewHeight: 194,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 194],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-medium-headline',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: false,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image150x100: {\r\n      aspectRatio: 1.50,\r\n      type: 'Image150x100',\r\n      associationType: 'ImageMedia15X10',\r\n      stringKey: 'ImageExperience_Image_Ratio_150x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_150x100',\r\n      previewTypeString: _TL_('MSN in-article ad'),\r\n      imagePreviewHeight: 200,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 200],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-in-article',\r\n        showShortHeadline: true,\r\n        showDescription: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image133x100: {\r\n      aspectRatio: 1.33,\r\n      type: 'Image133x100',\r\n      associationType: 'ImageMedia133X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_133x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_133x100',\r\n      previewTypeString: _TL_('MSN small headline'),\r\n      imagePreviewHeight: 75,\r\n      minimumRequirements: 0,\r\n      minSize: [100, 75],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-small-headline',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image1x1: {\r\n      aspectRatio: 1,\r\n      type: 'Image1x1',\r\n      associationType: 'SquareImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_1x1',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_1x1',\r\n      previewTypeString: _TL_('Audience Network square image'),\r\n      imagePreviewHeight: 75,\r\n      previewWidth: '200px',\r\n      previewHeight: '200px',\r\n      simplifiedType: 'Image1x1',\r\n      isRequired: true,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 300],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-square-image',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: false,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image93x100: {\r\n      aspectRatio: 0.93,\r\n      type: 'Image93x100',\r\n      associationType: 'ImageMedia93X100',\r\n      stringKey: 'ImageExperience_Image_Ratio_93x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_93x100',\r\n      previewTypeString: _TL_('MSN double carousel'),\r\n      imagePreviewHeight: 333,\r\n      minimumRequirements: 0,\r\n      minSize: [311, 333],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-double-carousel',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n  },\r\n  aspectRatiosForMMAV2: {\r\n    OriginalImage: {\r\n      aspectRatio: 1.9, // this is just a placeholder since we will not show original image in UI.\r\n      type: 'OriginalImage',\r\n      associationType: 'OriginalImage',\r\n      stringKey: 'ImageExperience_Image_Ratio_ImageOriginal',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_ImageOriginal',\r\n      previewTypeString: _TL_('Original image'),\r\n      imagePreviewHeight: 200,\r\n      previewWidth: '380px',\r\n      previewHeight: '200px',\r\n      isRequired: true,\r\n      minimumRequirements: 1,\r\n      minSize: [703, 368],\r\n      previewSettings: {\r\n        previewContentClassName: 'original-image',\r\n        showShortHeadline: true,\r\n        showDescription: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image201x100: {\r\n      aspectRatio: 2.01,\r\n      type: 'Image201x100',\r\n      associationType: 'ImageMedia201x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_201x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_201x100',\r\n      previewTypeString: _TL_('Edge Carousel'),\r\n      imagePreviewHeight: 304,\r\n      minimumRequirements: 0,\r\n      minSize: [612, 304],\r\n      previewSettings: {\r\n        previewContentClassName: 'edge-carousel ',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image200x100: {\r\n      aspectRatio: 2,\r\n      type: 'Image200x100',\r\n      associationType: 'ImageMedia200x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_200x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_200x100',\r\n      previewTypeString: _TL_('Audience Network Banner'),\r\n      imagePreviewHeight: 90,\r\n      minimumRequirements: 0,\r\n      minSize: [200, 100],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-banner ',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image191x100: {\r\n      aspectRatio: 1.91,\r\n      type: 'Image191x100',\r\n      associationType: 'LandscapeImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_191x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_191x100_V2',\r\n      previewTypeString: _TL_('Audience Network wide image'),\r\n      imagePreviewHeight: 157,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 157],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-wide-v2',\r\n        showShortHeadline: true,\r\n        showDescription: true,\r\n        showGradient: true,\r\n        showAdsIcon: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image169x100: {\r\n      aspectRatio: 1.69,\r\n      type: 'Image169x100',\r\n      associationType: 'ImageMedia169x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_169x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_169x100_V2',\r\n      previewTypeString: _TL_('MSN single carousel'),\r\n      imagePreviewHeight: 372,\r\n      minimumRequirements: 0,\r\n      minSize: [628, 372],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-single-carousel-v2',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n        showAdsIcon: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image153x100: {\r\n      aspectRatio: 1.53,\r\n      type: 'Image153x100',\r\n      associationType: 'ImageMedia153x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_153x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_153x100',\r\n      previewTypeString: _TL_('MSN Partner Stripe'),\r\n      imagePreviewHeight: 197,\r\n      minimumRequirements: 0,\r\n      minSize: [306, 200],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-partner-stripe',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: false,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image124x100: {\r\n      aspectRatio: 1.24,\r\n      type: 'Image124x100',\r\n      associationType: 'ImageMedia124x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_124x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_124x100',\r\n      previewTypeString: _TL_('MSN Restoday'),\r\n      imagePreviewHeight: 84,\r\n      minimumRequirements: 0,\r\n      minSize: [104, 84],\r\n      previewSettings: {\r\n        previewContentClassName: 'msn-restoday',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n        showAdsIcon: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image120x100: {\r\n      aspectRatio: 1.2,\r\n      type: 'Image120x100',\r\n      associationType: 'ImageMedia120x100',\r\n      stringKey: 'ImageExperience_Image_Ratio_120x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_120x100',\r\n      previewTypeString: _TL_('Audience Network Rectangle'),\r\n      imagePreviewHeight: 250,\r\n      minimumRequirements: 0,\r\n      minSize: [300, 250],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-rectangle',\r\n        showShortHeadline: true,\r\n        showDescription: false,\r\n        showGradient: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image1x1: {\r\n      aspectRatio: 1,\r\n      type: 'Image1x1',\r\n      associationType: 'SquareImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_1x1',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_1x1_V2',\r\n      previewTypeString: _TL_('Edge Mobile'),\r\n      imagePreviewHeight: 75,\r\n      previewWidth: '150',\r\n      previewHeight: '150',\r\n      simplifiedType: 'Image1x1',\r\n      isRequired: true,\r\n      minimumRequirements: 0,\r\n      minSize: [114, 114],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'audience-network-square-image-v2',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: false,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n  },\r\n  videoAspectRatios: {\r\n    VideoMedia16X9: {\r\n      ratio: 16 / 9,\r\n      text: '16 : 9',\r\n      stringKey: 'ImageExperience_Video_Ratio_16x9',\r\n      cropSetting: {\r\n        minSize: {\r\n          width: 160,\r\n          height: 90,\r\n        },\r\n      },\r\n      thumbnailCropSetting: {\r\n        minSize: [224, 126],\r\n      },\r\n    },\r\n    VideoMedia5X4: {\r\n      ratio: 1.25,\r\n      text: '5 : 4',\r\n      stringKey: 'ImageExperience_Video_Ratio_5x4',\r\n      cropSetting: {\r\n        minSize: {\r\n          width: 100,\r\n          height: 80,\r\n        },\r\n      },\r\n      thumbnailCropSetting: {\r\n        minSize: [150, 120],\r\n      },\r\n    },\r\n    VideoMedia1X1: {\r\n      ratio: 1,\r\n      text: '1 : 1',\r\n      stringKey: 'ImageExperience_Video_Ratio_1x1',\r\n      cropSetting: {\r\n        minSize: {\r\n          width: 100,\r\n          height: 100,\r\n        },\r\n      },\r\n      thumbnailCropSetting: {\r\n        minSize: [120, 120],\r\n      },\r\n    },\r\n    VideoMedia4X5: {\r\n      ratio: 0.8,\r\n      text: '4 : 5',\r\n      stringKey: 'ImageExperience_Video_Ratio_4x5',\r\n      cropSetting: {\r\n        minSize: {\r\n          width: 80,\r\n          height: 100,\r\n        },\r\n      },\r\n      thumbnailCropSetting: {\r\n        minSize: [120, 150],\r\n      },\r\n    },\r\n    VideoMedia9X16: {\r\n      ratio: 9 / 16,\r\n      text: '9 : 16',\r\n      stringKey: 'ImageExperience_Video_Ratio_9x16',\r\n      cropSetting: {\r\n        minCropSize: {\r\n          width: 90,\r\n          height: 160,\r\n        },\r\n      },\r\n      thumbnailCropSetting: {\r\n        minSize: [126, 224],\r\n      },\r\n    },\r\n  },\r\n  videoPreviewsSettings: [\r\n    {\r\n      type: '16X9-Homepage',\r\n      videoType: 'VideoMedia16X9',\r\n      text: '16 : 9',\r\n      stringKey: 'ImageExperience_Video_Ratio_16x9',\r\n      previewContainerHeight: 360,\r\n      previewContainerWidth: 640,\r\n      hideTextWhenPlay: true,\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showDescription: false,\r\n      showAdditionalDisclaimer: false,\r\n      showProgressText: true,\r\n      className: 'preview-16-9-homepage',\r\n    },\r\n    {\r\n      type: '16X9-Infopane',\r\n      videoType: 'VideoMedia16X9',\r\n      text: '16 : 9',\r\n      stringKey: 'ImageExperience_Video_Ratio_16x9',\r\n      previewContainerHeight: 360,\r\n      previewContainerWidth: 640,\r\n      hideTextWhenPlay: true,\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showDescription: false,\r\n      showAdditionalDisclaimer: false,\r\n      showProgressText: true,\r\n      className: 'preview-16-9-infopane',\r\n    },\r\n    {\r\n      type: '16X9-InArticleAd',\r\n      videoType: 'VideoMedia16X9',\r\n      text: '16 : 9',\r\n      stringKey: 'ImageExperience_Video_Ratio_16x9',\r\n      previewContainerHeight: 296,\r\n      previewContainerWidth: 318,\r\n      hideTextWhenPlay: false,\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showDescription: false,\r\n      showAdditionalDisclaimer: false,\r\n      showProgressText: false,\r\n      className: 'preview-16-9-inarticlead',\r\n    },\r\n  ],\r\n  videoPreviewDefaultWidth: 640,\r\n  videoPreviewDefaultHeight: 300,\r\n  resizeImageHeightInList: 80,\r\n  sortBySelections: {\r\n    recentUpload: {\r\n      id: 1,\r\n      enum: 'recentUpload',\r\n      stringKey: 'ImageExperience_SortBy_RecentUpload',\r\n      query: '$orderby=UploadedTime desc',\r\n    },\r\n    imageText: {\r\n      id: 2,\r\n      enum: 'imageText',\r\n      stringKey: 'ImageExperience_SortBy_ImageText',\r\n      query: '$orderby=Text asc',\r\n    },\r\n  },\r\n  videoSortBySelections: {\r\n    recentUpload: {\r\n      id: 1,\r\n      enum: 'recentUpload',\r\n      stringKey: 'ImageExperience_Sort_Recent_Upload',\r\n      query: '$orderby=UploadedTime desc',\r\n      edmDefinition: { UploadedTime: -1 },\r\n    },\r\n    description: {\r\n      id: 2,\r\n      enum: 'description',\r\n      stringKey: 'ImageExperience_Sort_Video_Text',\r\n      query: '$orderby=Text asc',\r\n      edmDefinition: { Text: 1 },\r\n    },\r\n  },\r\n  imageTypesWithOrder: [\r\n    'Image191x100',\r\n    'Image178x100',\r\n    'Image172x100',\r\n    'Image169x100',\r\n    'Image155x100',\r\n    'Image150x100',\r\n    'Image133x100',\r\n    'Image1x1',\r\n    'Image93x100',\r\n  ],\r\n  videoTypesWithOrder: [\r\n    'VideoMedia16X9',\r\n    'VideoMedia5X4',\r\n    'VideoMedia1X1',\r\n    'VideoMedia4X5',\r\n    'VideoMedia9X16',\r\n  ],\r\n  videoTypeToThumbnailType: {\r\n    VideoMedia16X9: 'VideoMedia16X9Thumbnail',\r\n    VideoMedia5X4: 'VideoMedia5X4Thumbnail',\r\n    VideoMedia1X1: 'VideoMedia1X1Thumbnail',\r\n    VideoMedia4X5: 'VideoMedia4X5Thumbnail',\r\n    VideoMedia9X16: 'VideoMedia9X16Thumbnail',\r\n  },\r\n  subTypeToType: {\r\n    // notice that 'X' is in capital\r\n    ImageMedia4X1: 'Image4x1',\r\n    LandscapeImageMedia: 'Image191x100',\r\n    ImageMedia178X100: 'Image178x100',\r\n    ImageMedia172X100: 'Image172x100',\r\n    ImageMedia169X100: 'Image169x100',\r\n    ImageMedia155X100: 'Image155x100',\r\n    ImageMedia15X10: 'Image150x100',\r\n    ImageMedia133X100: 'Image133x100',\r\n    SquareImageMedia: 'Image1x1',\r\n    ImageMedia93X100: 'Image93x100',\r\n    ImageMedia1X2: 'Image1x2',\r\n    LandscapeLogoMedia: 'Image4x1',\r\n    SquareLogoMedia: 'Image1x1',\r\n    OriginalImage: 'OriginalImage',\r\n    ImageMedia201X100: 'Image201x100',\r\n    ImageMedia200X100: 'Image200x100',\r\n    ImageMedia153X100: 'Image153x100',\r\n    ImageMedia124X100: 'Image124x100',\r\n    ImageMedia120X100: 'Image120x100',\r\n  },\r\n  pageSize: 12,\r\n  imageAdExtSettings: {\r\n    MobileMultiImage: {\r\n      previewContentClassName: 'mobile-multi-img',\r\n      imagePreviewHeight: 310,\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_MobileMulti',\r\n      previewTypeString: _TL_('Bing mobile multi-image extension'),\r\n    },\r\n    BingDesktopImage: {\r\n      previewContentClassName: 'bing-desktop-img',\r\n      imagePreviewHeight: 100,\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_BingDeskMulti',\r\n      previewTypeString: _TL_('Bing desktop multi-image extension'),\r\n    },\r\n    BingSingleImage: {\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_BingSingleImage',\r\n      previewTypeString: _TL_('Bing desktop single-image extension'),\r\n      imagePreviewHeight: 45,\r\n      previewSettings: {\r\n        previewContentClassName: 'bing-single-image',\r\n        showShortHeadline: false,\r\n        showLongHeadline: true,\r\n        showDescription: true,\r\n        showBusinessName: false,\r\n        showUrl: true,\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nconstants.GenericImage = {\r\n  minWidth: 128,\r\n  minHeight: 128,\r\n};\r\n\r\nconstants.getMinimumSizeForImage = (\r\n  type, isMultimediaAd = false,\r\n  imageOption = constants.defaultImageOption,\r\n  isCombinedMsanAndMmaAspectRatios = false,\r\n  isMMAV2Enabled = false\r\n) => {\r\n  if (isMMAV2Enabled) {\r\n    // we want to return the minimum size for the default image (703x368)\r\n    // but in V2 images, 1.69 aspecr ratio is 703x372, which is a corner case\r\n    // hard code here to return 703x368\r\n    return [703, 368];\r\n  }\r\n  const aspectRatios = constants.getAspectRatios({\r\n    imageOption, isMultimediaAd, isCombinedMsanAndMmaAspectRatios, isMMAV2Enabled,\r\n  });\r\n\r\n  if (type) {\r\n    return aspectRatios[type].minSize;\r\n  } else if (isMultimediaAd || isCombinedMsanAndMmaAspectRatios) {\r\n    return [constants.GenericImage.minWidth, constants.GenericImage.minHeight];\r\n  }\r\n\r\n  return _.reduce(aspectRatios, (memo, val) => [\r\n    memo[0] > val.minSize[0] ? memo[0] : val.minSize[0],\r\n    memo[1] > val.minSize[1] ? memo[1] : val.minSize[1],\r\n  ], [0, 0]);\r\n};\r\n\r\nconstants.getMinSizeForRequiredRatios = (isMultimediaAd) => {\r\n  const aspectRatios = isMultimediaAd ?\r\n    constants.getMmaAspectRatios() :\r\n    constants.aspectRatios;\r\n\r\n  const requiredRatios = _.filter(aspectRatios, ratio => ratio.minimumRequirements > 0);\r\n\r\n  return _.reduce(requiredRatios, (memo, val) => [\r\n    memo[0] > val.minSize[0] ? memo[0] : val.minSize[0],\r\n    memo[1] > val.minSize[1] ? memo[1] : val.minSize[1],\r\n  ], [0, 0]);\r\n};\r\n\r\nconstants.getMinSizeForAllRequiredRatios = () => {\r\n  const minSizeForMMA = constants.getMinSizeForRequiredRatios(true);\r\n  const minSizeForOther = constants.getMinSizeForRequiredRatios(false);\r\n\r\n  return [Math.max(minSizeForMMA[0], minSizeForOther[0]),\r\n    Math.max(minSizeForMMA[1], minSizeForOther[1])];\r\n};\r\n\r\nconstants.getImageTypesWithOrder = (isMultimediaAd = false, isCombinedMsanAndMmaAspectRatios = false) => {\r\n  if (isCombinedMsanAndMmaAspectRatios) {\r\n    return [\r\n      'Image4x1',\r\n      'Image191x100',\r\n      'Image178x100',\r\n      'Image150x100',\r\n      'Image133x100',\r\n      'Image1x1',\r\n      'Image1x2',\r\n    ];\r\n  }\r\n\r\n  if (isMultimediaAd) {\r\n    return [\r\n      'Image4x1',\r\n      'Image191x100',\r\n      'Image1x1',\r\n      'Image1x2',\r\n    ];\r\n  }\r\n\r\n  return constants.imageTypesWithOrder;\r\n};\r\n\r\nconstants.getDefaultRatio = (width, height, aspectRatios) =>\r\n  _.chain(aspectRatios)\r\n    .filter(ratio => width >= ratio.minSize[0] && height >= ratio.minSize[1])\r\n    .sortBy(ratio => Math.abs(ratio.aspectRatio - (width / height)))\r\n    .first()\r\n    .value();\r\n\r\nconstants.logoSubtypes = {\r\n  LandscapeLogoMedia: 'Image4x1',\r\n  SquareLogoMedia: 'Image1x1',\r\n};\r\n\r\nconst logoAspectRatios = {\r\n  Image4x1: {\r\n    aspectRatio: 4,\r\n    type: 'Image4x1',\r\n    associationType: 'LandscapeLogoMedia',\r\n    stringKey: 'ImageExperience_Image_Ratio_4x1',\r\n    previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_4x1',\r\n    imagePreviewHeight: 152,\r\n    previewWidth: '608px',\r\n    previewHeight: '152px',\r\n    simplifiedType: 'Image4x1',\r\n    isRequired: true,\r\n    minimumRequirements: 0,\r\n    minSize: [512, 128],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'multimedia-ad-wide-image',\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showDescription: true,\r\n      showBusinessName: false,\r\n      showUrl: true,\r\n      showAction: true,\r\n      showAdsLabel: true,\r\n      showAdditionalDisclaimer: true,\r\n    },\r\n    isLogo: true,\r\n  },\r\n  Image1x1: {\r\n    aspectRatio: 1,\r\n    type: 'Image1x1',\r\n    associationType: 'SquareLogoMedia',\r\n    stringKey: 'ImageExperience_Image_Ratio_1x1',\r\n    previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_1x1',\r\n    imagePreviewHeight: 400,\r\n    previewWidth: '400px',\r\n    previewHeight: '400px',\r\n    simplifiedType: 'Image1x1',\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [128, 128],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'multimedia-ad-square-image',\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showDescription: true,\r\n      showBusinessName: false,\r\n      showUrl: true,\r\n      showAction: true,\r\n      showAdsLabel: true,\r\n      showAdditionalDisclaimer: true,\r\n    },\r\n    isLogo: true,\r\n  },\r\n};\r\n\r\nconstants.getMmaAspectRatios = (imageOption) => {\r\n  if (imageOption === constants.imageOptionKeys.Logo) {\r\n    return logoAspectRatios;\r\n  }\r\n  return {\r\n    Image191x100: {\r\n      aspectRatio: 1.91,\r\n      type: 'Image191x100',\r\n      associationType: 'LandscapeImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_191x100',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_191x100',\r\n      previewTypeString: _TL_('Landscape image'),\r\n      imagePreviewHeight: 244,\r\n      previewWidth: '600px',\r\n      previewHeight: '244px',\r\n      simplifiedType: 'Image191x100',\r\n      isRequired: true,\r\n      minimumRequirements: 1,\r\n      minSize: [703, 368],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'multimedia-ad-landscape-image',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: true,\r\n        showBusinessName: false,\r\n        showUrl: true,\r\n        showAction: true,\r\n        showAdsLabel: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image4x1: {\r\n      aspectRatio: 4,\r\n      type: 'Image4x1',\r\n      associationType: 'ImageMedia4x1',\r\n      stringKey: 'ImageExperience_Image_Ratio_4x1',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_4x1',\r\n      previewTypeString: _TL_('Wide image'),\r\n      imagePreviewHeight: 152,\r\n      previewWidth: '608px',\r\n      previewHeight: '152px',\r\n      simplifiedType: 'Image4x1',\r\n      isRequired: true,\r\n      minimumRequirements: 0,\r\n      minSize: [608, 152],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'multimedia-ad-wide-image',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: true,\r\n        showBusinessName: false,\r\n        showUrl: true,\r\n        showAction: true,\r\n        showAdsLabel: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image1x1: {\r\n      aspectRatio: 1,\r\n      type: 'Image1x1',\r\n      associationType: 'SquareImageMedia',\r\n      stringKey: 'ImageExperience_Image_Ratio_1x1',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_1x1',\r\n      previewTypeString: _TL_('Square image'),\r\n      imagePreviewHeight: 400,\r\n      previewWidth: '400px',\r\n      previewHeight: '400px',\r\n      simplifiedType: 'Image1x1',\r\n      isRequired: true,\r\n      minimumRequirements: 1,\r\n      minSize: [470, 470],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'multimedia-ad-square-image',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: true,\r\n        showBusinessName: false,\r\n        showUrl: true,\r\n        showAction: true,\r\n        showAdsLabel: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n    Image1x2: {\r\n      aspectRatio: 0.5,\r\n      type: 'Image1x2',\r\n      associationType: 'ImageMedia1x2',\r\n      stringKey: 'ImageExperience_Image_Ratio_1x2',\r\n      previewTypeStringKey: 'ImageExperience_Preview_Type_MultimediaAd_1x2',\r\n      previewTypeString: _TL_('Vertical image'),\r\n      imagePreviewHeight: 400,\r\n      previewWidth: '200px',\r\n      previewHeight: '400px',\r\n      simplifiedType: 'Image1x2',\r\n      isRequired: true,\r\n      minimumRequirements: 0,\r\n      minSize: [470, 940],\r\n      maxSize: [0, 0],\r\n      previewSettings: {\r\n        previewContentClassName: 'multimedia-ad-vertical-image',\r\n        showShortHeadline: true,\r\n        showLongHeadline: false,\r\n        showDescription: true,\r\n        showBusinessName: false,\r\n        showUrl: true,\r\n        showAction: true,\r\n        showAdsLabel: true,\r\n        showAdditionalDisclaimer: true,\r\n      },\r\n      isLogo: false,\r\n    },\r\n  };\r\n};\r\n\r\nconstants.getAspectRatios = ({\r\n  isMultimediaAd,\r\n  isMultimediaAdinMSANEnabled,\r\n  imageOption = constants.defaultImageOption,\r\n  isCombinedMsanAndMmaAspectRatios = false,\r\n  isMMAV2Enabled = false,\r\n}) => {\r\n  if (imageOption === constants.imageOptionKeys.Logo) {\r\n    return logoAspectRatios;\r\n  }\r\n\r\n  if (isCombinedMsanAndMmaAspectRatios) {\r\n    return { ..._.pick(constants.aspectRatios, constants.multimediaAdinMSANRatios), ...constants.getMmaAspectRatios() };\r\n  }\r\n\r\n  let aspectRatios = isMultimediaAd ? constants.getMmaAspectRatios() : constants.aspectRatios;\r\n\r\n  if (isMultimediaAdinMSANEnabled) {\r\n    aspectRatios = _.pick(aspectRatios, constants.multimediaAdinMSANRatios);\r\n  }\r\n\r\n  if (isMMAV2Enabled) {\r\n    aspectRatios = _.pick(constants.aspectRatiosForMMAV2, constants.audienceMMAV2AspectRatios);\r\n  }\r\n\r\n  return aspectRatios;\r\n};\r\n\r\nconstants.SupportedCaptionLocales = [\r\n  {\r\n    Lcid: 1033,\r\n    FullName: 'English (US): en_US',\r\n    Tag: 'en_US',\r\n  },\r\n];\r\n\r\nconstants.LcidToFullName = (Lcid) => {\r\n  const locale = constants.SupportedCaptionLocales.find(loc => loc.Lcid === Lcid);\r\n  return locale ? locale.FullName : Lcid.toString();\r\n};\r\n\r\nconstants.TagToLcid = (tag) => {\r\n  const locale = constants.SupportedCaptionLocales\r\n    .find(loc => loc.Tag.toLowerCase() === tag.toLowerCase());\r\n  return locale ? locale.Lcid : null;\r\n};\r\n\r\nconstants.DEFAULT_MAX_IMAGE = 16;\r\nconstants.DEFAULT_MAX_LOGO = 5;\r\n\r\nconstants.audienceMMAV2WithDiffAspectRatio = ['Image191x100', 'Image169x100', 'Image1x1'];\r\n\r\nconstants.multimediaAdinMSANRatios = ['Image191x100', 'Image178x100', 'Image150x100', 'Image133x100', 'Image1x1'];\r\n\r\nconstants.audienceMMAV2AspectRatiosWithoutOriginalImage =\r\n  ['Image201x100', 'Image200x100', 'Image191x100',\r\n    'Image169x100', 'Image153x100', 'Image124x100', 'Image120x100', 'Image1x1'];\r\n\r\nconstants.audienceMMAV2AspectRatios =\r\n  ['OriginalImage', constants.audienceMMAV2AspectRatiosWithoutOriginalImage];\r\n\r\nconstants.imageSources = {\r\n  Website: 'Website',\r\n  WebsiteCarousel: 'WebsiteCarousel',\r\n  Upload: 'Upload',\r\n  Existing: 'Existing',\r\n  Stock: 'Stock',\r\n  AdRecommendation: 'AdRecommendation',\r\n  Social: 'Social',\r\n};\r\n\r\n// image asset from MT\r\nconstants.sourceTypes = {\r\n  TwitterImported: 'TwitterImported',\r\n  WebsiteImported: 'WebsiteImported',\r\n  UserUploaded: 'UserUploaded',\r\n};\r\n\r\nconstants.getSourceTypeFromImageSource = (imageSource) => {\r\n  if (imageSource === constants.imageSources.Website || imageSource === constants.imageSources.WebsiteCarousel) {\r\n    return constants.sourceTypes.WebsiteImported;\r\n  }\r\n  if (imageSource === constants.imageSources.Social) {\r\n    return constants.sourceTypes.TwitterImported;\r\n  }\r\n  return undefined;\r\n};\r\n\r\nconstants.preferenceFlags = {\r\n  MMATeachingBubble: 'WebApp.CampaignUI.ShowAdCreatorEditImageBubble',\r\n  MMAWebsiteImageOptIn: 'WebApp.CampaignUI.MMAWebsiteImageOptIn',\r\n  MMAInMSANTeachingBubble: 'WebApp.CampaignUI.ShowAdCreatorEditImageBubbleInMSAN',\r\n  MMAInMSANWebsiteImageOptIn: 'WebApp.CampaignUI.MMAInMSANWebsiteImageOptIn',\r\n  MMACarouselTeachingBubble: 'WebApp.CampaignUI.MMACarouselTeachingBubble',\r\n  MSANCarouselTeachingBubble: 'WebApp.CampaignUI.MSANCarouselTeachingBubble',\r\n};\r\n\r\nconstants.imageOptionKeys = {\r\n  Image: 'Image',\r\n  Logo: 'Logo',\r\n};\r\n\r\nconstants.getImageOptions = ({\r\n  i18n = {\r\n    getString: _.noop,\r\n  },\r\n  disableImage = false,\r\n  disableLogo = false,\r\n}) => [\r\n  {\r\n    key: constants.imageOptionKeys.Image,\r\n    text: i18n.getString(`ImageOptionDropdown_${constants.imageOptionKeys.Image}`),\r\n    disabled: disableImage,\r\n  },\r\n  {\r\n    key: constants.imageOptionKeys.Logo,\r\n    text: i18n.getString(`ImageOptionDropdown_${constants.imageOptionKeys.Logo}`),\r\n    disabled: disableLogo,\r\n  },\r\n];\r\n\r\nconstants.defaultImageOption = _.first(constants.getImageOptions({})).key;\r\n\r\nconstants.getAspectRatioOptions = (i18n = {\r\n  getString: _.noop,\r\n}) => [\r\n  {\r\n    key: constants.logoSubtypes.SquareLogoMedia,\r\n    labelId: constants.logoSubtypes.SquareLogoMedia,\r\n    text: i18n.getString(`AspectRatioChoiceGroup_${constants.logoSubtypes.SquareLogoMedia}`),\r\n  },\r\n  {\r\n    key: constants.logoSubtypes.LandscapeLogoMedia,\r\n    labelId: constants.logoSubtypes.LandscapeLogoMedia,\r\n    text: i18n.getString(`AspectRatioChoiceGroup_${constants.logoSubtypes.LandscapeLogoMedia}`),\r\n  },\r\n];\r\n\r\nconstants.defaultAspectRatioOption = _.first(constants.getAspectRatioOptions()).key;\r\n\r\nconstants.getBoostAspectRatios = i18n => ({\r\n  windowsSpotlight: {\r\n    aspectRatio: 1.9,\r\n    type: 'Image191x100',\r\n    associationType: 'LandscapeImageMedia',\r\n    stringKey: 'ImageExperience_Image_Ratio_191x100',\r\n    previewTypeStringKey: i18n.getString(_TL_('Windows Spotlight')),\r\n    previewTypeString: '',\r\n    imagePreviewHeight: 400,\r\n    simplifiedType: 'Image191x100',\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [268, 140],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-windows',\r\n      showLongHeadline: true,\r\n      showBusinessName: false,\r\n      multipleLineLongHeadline: true,\r\n      multipleDescription: true,\r\n      showDescription: true,\r\n      hideLabel: true,\r\n      showHotspots: true,\r\n    },\r\n  },\r\n  discoverCard: {\r\n    aspectRatio: 1,\r\n    type: 'Image1x1',\r\n    associationType: 'SquareImageMedia',\r\n    stringKey: 'ImageExperience_Image_Ratio_1x1',\r\n    previewTypeStringKey: i18n.getString(_TL_('Discover card')),\r\n    previewTypeString: _TL_('Audience Network square image'),\r\n    imagePreviewHeight: 250,\r\n    previewWidth: '200px',\r\n    previewHeight: '200px',\r\n    simplifiedType: 'Image1x1',\r\n    isRequired: true,\r\n    minimumRequirements: 0,\r\n    minSize: [300, 300],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-discover-card',\r\n      showShortHeadline: true,\r\n      showLongHeadline: false,\r\n      showBusinessName: false,\r\n      multipleDescription: true,\r\n      showDescription: true,\r\n      showAction: true,\r\n    },\r\n  },\r\n  startMeno: {\r\n    aspectRatio: 1.75,\r\n    type: 'Image178x100',\r\n    previewTypeString: '',\r\n    previewTypeStringKey: i18n.getString(_TL_('Start Menu')),\r\n    imagePreviewHeight: 160,\r\n    logoHeight: 24,\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [280, 160],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-start-menu',\r\n      showLogo: true,\r\n      showShortHeadline: true,\r\n      multipleLineLongHeadline: true,\r\n      showLongHeadline: true,\r\n      showAction: false,\r\n      showBusinessName: false,\r\n      showImage: false,\r\n      showDismiss: true,\r\n    },\r\n  },\r\n  actionCenter: {\r\n    aspectRatio: 1.75,\r\n    type: 'Image178x100',\r\n    previewTypeString: '',\r\n    previewTypeStringKey: i18n.getString(_TL_('Action Center')),\r\n    imagePreviewHeight: 160,\r\n    logoHeight: 48,\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [280, 160],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-actionCenter',\r\n      showLogo: true,\r\n      showShortHeadline: true,\r\n      multipleDescription: true,\r\n      showDescription: true,\r\n      showAction: true,\r\n      showBusinessName: false,\r\n      showImage: false,\r\n      showDismiss: true,\r\n    },\r\n  },\r\n  banner: {\r\n    aspectRatio: 1.75,\r\n    type: 'Image178x100',\r\n    previewTypeString: '',\r\n    previewTypeStringKey: i18n.getString(_TL_('Banner')),\r\n    imagePreviewHeight: 160,\r\n    logoHeight: 20,\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [280, 160],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-banner',\r\n      showLogo: true,\r\n      showShortHeadline: true,\r\n      showAction: true,\r\n      showBusinessName: false,\r\n      showImage: false,\r\n      showDismiss: true,\r\n    },\r\n  },\r\n  Image191x100: {\r\n    aspectRatio: 1.914,\r\n    type: 'Image191x100',\r\n    associationType: 'LandscapeImageMedia',\r\n    stringKey: 'ImageExperience_Image_Ratio_191x100',\r\n    previewTypeStringKey: i18n.getString(_TL_('Prong 1 / Prong 2 / Feed')),\r\n    previewTypeString: '',\r\n    imagePreviewHeight: 140,\r\n    simplifiedType: 'Image191x100',\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [268, 140],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-191X1',\r\n      showBusinessName: true,\r\n      showLongHeadline: true,\r\n      multipleLineLongHeadline: true,\r\n      hideLabel: true,\r\n    },\r\n  },\r\n  coachmark: {\r\n    aspectRatio: 1.75,\r\n    type: 'Image178x100',\r\n    previewTypeString: '',\r\n    previewTypeStringKey: i18n.getString(_TL_('CoachMark')),\r\n    imagePreviewHeight: 160,\r\n    isRequired: true,\r\n    minimumRequirements: 1,\r\n    minSize: [280, 160],\r\n    maxSize: [0, 0],\r\n    previewSettings: {\r\n      previewContentClassName: 'boost-coachmark',\r\n      showDescription: true,\r\n      showShortHeadline: true,\r\n      showBusinessName: false,\r\n      multipleLineLongHeadline: true,\r\n      multipleDescription: true,\r\n      showAction: true,\r\n    },\r\n  },\r\n});\r\n\r\nexport default constants;\r\n","import Promise from 'bluebird';\r\nimport _ from 'underscore';\r\nimport { cloneDeep } from '@bingads-webui-universal/primitive-utilities';\r\nimport { serializeImageAssetMetadata } from '@bingads-webui-campaign/media-metadata-model';\r\nimport C from './constants';\r\n\r\n/**\r\n * ImageExperienceImage Class\r\n * This class is used internally to the ImageExperience pacakge\r\n * Main purpose is to have a consistant object across different components\r\n *\r\n * @class ImageExperienceImage\r\n */\r\nclass ImageExperienceImage {\r\n  /**\r\n   * Creates an instance of ImageExperienceImage.\r\n   *\r\n   * @param {Object} imageObj - image object\r\n   * @param {id} imageObj.id - id of the image\r\n   * @param {String} imageObj.idString - id of the image\r\n   * @param {Number} imageObj.width - Width of the image\r\n   * @param {Number} imageObj.heigth - Height of the image\r\n   * @param {string} imageObj.type - Type of the image\r\n   * @param {string} imageObj.associationType - Sub type of the image\r\n   * @param {string} imageObj.text - Text of the image\r\n   * @param {Object} imageObj.cropSettings - Crop setting object of the image\r\n   * @param {Object} imageObj.effectSettings - Effect setting object of the image\r\n   * @param {string} imageObj.baseId - base id of the image without metadata\r\n   * @param {string} imageObj.metadata - string metadata of the image, e.g. effect info\r\n   * @param {Boolean} imageObj.isIncluded - Is the aspect ratio included\r\n   * @param {Boolean} imageObj.isLogo - Is a logo aspect ratio\r\n   * @param {Boolean} imageObj.isRecommendedImage - Is an recommended image\r\n   * @param {Boolean} imageObj.disableEdit - disable image edit\r\n   * @param {Boolean} createBaseImageInfo - Whether to create base image info\r\n   * @param {Object} imageObj.originCropSetting - cropsetting without manual cropping\r\n   * @param {boolean} imageObj.isAutoCropping - auto cropping\r\n   * @param {string} imageObj.source - source of image (e.g. website images, carousel, etc.)\r\n   * @param {string} imageObj.originalUrl - original url of image if user has done a bulk crop\r\n   * @param {string} imageObj.cropSettingOnOriginal - crop setting to derive current image\r\n   * from original\r\n   * @param {array} imageObj.placementSettings - placement settings if bulk crop was done\r\n   *  image source (Website, Upload, Existing or Stock)\r\n   * @param {number} imageObj.originalHeight - original height of image pre-bulk crop\r\n   * @param {number} imageObj.originalWidth - original width of the image pre-bulk crop\r\n   */\r\n  constructor(imageObj, createBaseImageInfo = true) {\r\n    this.id = imageObj.id;\r\n    this.idString = imageObj.idString;\r\n    this.src = imageObj.src;\r\n    this.type = imageObj.type;\r\n    this.associationType = imageObj.associationType;\r\n    this.width = imageObj.width;\r\n    this.height = imageObj.height;\r\n    this.cropSettings = imageObj.cropSettings;\r\n    this.effectSettings = imageObj.effectSettings;\r\n    this.baseId = imageObj.baseId;\r\n    this.metadata = imageObj.metadata;\r\n    this.isIncluded = imageObj.isIncluded;\r\n    this.isLogo = imageObj.isLogo;\r\n    this.isRecommendedImage = imageObj.isRecommendedImage;\r\n    this.disableEdit = imageObj.disableEdit;\r\n    this.originCropSetting = imageObj.originCropSetting || this.cropSettings;\r\n    this.isAutoCropping = imageObj.isAutoCropping;\r\n    this.text = imageObj.text;\r\n    this.source = imageObj.source;\r\n    this.originalUrl = imageObj.originalUrl;\r\n    this.cropSettingOnOriginal = imageObj.cropSettingOnOriginal;\r\n    this.placementSettings = imageObj.placementSettings;\r\n    this.originalHeight = imageObj.originalHeight;\r\n    this.originalWidth = imageObj.originalWidth;\r\n\r\n    if (createBaseImageInfo && this.type) {\r\n      // parent-child relationship will only be one level deep\r\n      this.baseImage = new ImageExperienceImage(_.defaults({\r\n        cropSettings: null,\r\n        effectSettings: null,\r\n        type: null,\r\n        id: this.BaseId,\r\n        baseId: null,\r\n        metadata: null,\r\n      }, imageObj), false /* createBaseImageInfo */);\r\n    } else {\r\n      this.baseImage = imageObj.baseImage;\r\n    }\r\n  }\r\n\r\n  /**\r\n   * Get base image\r\n   *\r\n   * @readonly\r\n   * @returns {Number} - base image\r\n   */\r\n  get BaseImage() {\r\n    return this.baseImage;\r\n  }\r\n\r\n  setBaseImage(baseImage) {\r\n    this.baseImage = baseImage;\r\n  }\r\n\r\n  /**\r\n   * Get source of the image\r\n   *\r\n   * @readonly\r\n   * @returns {Number} - id of the saved image\r\n   */\r\n  get Id() {\r\n    return this.id;\r\n  }\r\n\r\n  /**\r\n   * Get base source of the image without metadata\r\n   *\r\n   * @readonly\r\n   * @returns {String} - id of base image.\r\n   */\r\n  get BaseId() {\r\n    // if baseId is not set in constructor, this is already original image, return Id instead.\r\n    return this.baseId || this.Id;\r\n  }\r\n\r\n  /**\r\n   * Get source of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - id of the saved image\r\n   */\r\n  get IdString() {\r\n    return this.idString;\r\n  }\r\n\r\n  /**\r\n   * Get source of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - string source of the image either base64 or url\r\n   */\r\n  get Src() {\r\n    return this.src;\r\n  }\r\n\r\n  setSrc(src) {\r\n    this.src = src;\r\n  }\r\n\r\n  /**\r\n   * Get metadata of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - Metadata associated with this image\r\n   */\r\n  get Metadata() {\r\n    return this.metadata;\r\n  }\r\n\r\n  /**\r\n   * Get width of the image\r\n   *\r\n   * @readonly\r\n   * @returns {Number} - Width of the image\r\n   */\r\n  get Width() {\r\n    return this.width;\r\n  }\r\n\r\n  /**\r\n   * Get height of the image\r\n   *\r\n   * @readonly\r\n   * @returns {Number} - Height of the image\r\n   */\r\n  get Height() {\r\n    return this.height;\r\n  }\r\n\r\n  /**\r\n   * Get type of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - Type of the image\r\n   */\r\n  get Type() {\r\n    return this.type;\r\n  }\r\n\r\n  /**\r\n   * Get text of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - Text of the image\r\n   */\r\n  get Text() {\r\n    return this.text;\r\n  }\r\n\r\n  setType(type) {\r\n    this.type = type;\r\n  }\r\n\r\n  /**\r\n   * Get crop settings of the image\r\n   *\r\n   * @readonly\r\n   * @returns {Object} - crop settings of the image\r\n   */\r\n  get CropSettings() {\r\n    return this.cropSettings;\r\n  }\r\n\r\n  /**\r\n   * Get effect settings of the image\r\n   *\r\n   * @readonly\r\n   * @returns {Object} - crop settings of the image\r\n   */\r\n  get EffectSettings() {\r\n    return this.effectSettings;\r\n  }\r\n\r\n  setEffectSettings(effectSettings) {\r\n    this.effectSettings = effectSettings;\r\n  }\r\n\r\n  isMaunalCropped() {\r\n    return !_.isEqual(this.originCropSetting, this.cropSettings);\r\n  }\r\n\r\n  isEffectEdited() {\r\n    const metadata = serializeImageAssetMetadata({ effectSettings: this.EffectSettings });\r\n\r\n    if (_.isEmpty(this.Metadata) && _.isEmpty(metadata)) {\r\n      return false;\r\n    }\r\n\r\n    return !_.isEqual(this.Metadata, metadata);\r\n  }\r\n\r\n  isManualEdited(isAdCreatorV1Enabled = false) {\r\n    if (!isAdCreatorV1Enabled) {\r\n      return this.isMaunalCropped();\r\n    }\r\n\r\n    return this.isEffectEdited() || this.isMaunalCropped();\r\n  }\r\n\r\n  setIncluded(value) {\r\n    this.isIncluded = value;\r\n  }\r\n\r\n  setAutoCropping(value) {\r\n    this.isAutoCropping = value;\r\n  }\r\n\r\n  /**\r\n   * Get final src of the image with effect if any.\r\n   *\r\n   * @readonly\r\n   * @returns {string} - final image src with effect\r\n   */\r\n  get FinalSrc() {\r\n    if (this.effectSettings && this.effectSettings.effectKey) {\r\n      return this.effectSettings.effectSrc;\r\n    }\r\n    return this.src;\r\n  }\r\n\r\n  /**\r\n   * Get if the aspect ratio is included\r\n   *\r\n   * @readonly\r\n   * @returns {Boolean} - is default ratio of the image\r\n   */\r\n  get IsIncluded() {\r\n    return this.isIncluded;\r\n  }\r\n\r\n  /**\r\n   * Get crop settings of the image\r\n   *\r\n   * @readonly\r\n   * @returns {string} - thumbnail url for the AdList\r\n   */\r\n  get ThumbnailForAdList() {\r\n    return `${this.ThumbnailUrl}&w=191&h=100`;\r\n  }\r\n\r\n  get ThumbnailUrl() {\r\n    const srcWithQuery = this.src.indexOf('?') > 0 ? this.src : `${this.src}?`;\r\n    let cropQuery = '';\r\n\r\n    if (this.cropSettings) {\r\n      const left = this.cropSettings.SourceX / this.width;\r\n      const top = this.cropSettings.SourceY / this.height;\r\n      const right = (this.cropSettings.SourceX + this.cropSettings.SourceWidth) / this.width;\r\n      const bottom = (this.cropSettings.SourceY + this.cropSettings.SourceHeight) / this.height;\r\n\r\n      cropQuery = `&c=16&roil=${left}&roit=${top}&roir=${right}&roib=${bottom}`;\r\n    }\r\n\r\n    return `${srcWithQuery}${cropQuery}`;\r\n  }\r\n\r\n  copyThumbnailLookToNewImage({ id, src }) {\r\n    return new ImageExperienceImage({\r\n      id,\r\n      src,\r\n      cropSettings: cloneDeep(this.CropSettings),\r\n      width: this.Width,\r\n      height: this.Height,\r\n    });\r\n  }\r\n\r\n  // they are coming from same base image, but with different look\r\n  copyEffectsFromOther(another) {\r\n    const fields = [\r\n      'id',\r\n      'idString',\r\n      'src',\r\n      'effectSettings',\r\n      'baseId',\r\n      'metadata',\r\n      'isLogo',\r\n      'isRecommendedImage',\r\n      'text',\r\n      'source',\r\n    ];\r\n    _.extend(this, _.pick(another, fields));\r\n  }\r\n\r\n  /**\r\n   * Get source of the image, either Website, Upload, Existing or Stock\r\n   *\r\n   * @readonly\r\n   * @returns {string} - thumbnail url for the AdList\r\n   */\r\n  get Source() {\r\n    return this.source;\r\n  }\r\n\r\n  get OriginalUrl() {\r\n    return this.originalUrl;\r\n  }\r\n\r\n  get PlacementSettings() {\r\n    return this.placementSettings;\r\n  }\r\n\r\n  get OriginalHeight() {\r\n    return this.originalHeight;\r\n  }\r\n\r\n  get OriginalWidth() {\r\n    return this.originalWidth;\r\n  }\r\n\r\n  get CropSettingOnOriginal() {\r\n    return this.cropSettingOnOriginal;\r\n  }\r\n\r\n  get IsBulkCropped() {\r\n    return this.Src !== this.OriginalUrl;\r\n  }\r\n\r\n  setCropSettings(cropSettings) {\r\n    this.cropSettings = cropSettings;\r\n  }\r\n\r\n  // for some recommend ads, id of ImageExperienceImage could be null\r\n  setNewId(id) {\r\n    this.id = id;\r\n    this.idString = String(id);\r\n  }\r\n\r\n  /**\r\n   * Get the clone of this object\r\n   *\r\n   * @returns {ImageExperienceImage} - cloned ImageExperienceImage\r\n   */\r\n  clone() {\r\n    const base = this.baseImage ? new ImageExperienceImage(cloneDeep({\r\n      ...this.baseImage,\r\n    }), false) : null;\r\n\r\n    return new ImageExperienceImage(_.extend(cloneDeep({\r\n      id: this.id,\r\n      idString: this.idString,\r\n      src: this.src,\r\n      type: this.type,\r\n      associationType: this.associationType,\r\n      width: this.width,\r\n      height: this.height,\r\n      cropSettings: this.cropSettings,\r\n      effectSettings: this.effectSettings,\r\n      isIncluded: this.isIncluded,\r\n      isLogo: this.isLogo,\r\n      isRecommendedImage: this.isRecommendedImage,\r\n      disableEdit: this.disableEdit,\r\n      baseId: this.baseId,\r\n      metadata: this.metadata,\r\n      source: this.source,\r\n      originalUrl: this.originalUrl,\r\n      originalWidth: this.originalWidth,\r\n      originalHeight: this.originalHeight,\r\n      cropSettingOnOriginal: this.cropSettingOnOriginal,\r\n      placementSettings: this.placementSettings,\r\n    }), {\r\n      baseImage: base,\r\n    }), false);\r\n  }\r\n\r\n  getBasicData() {\r\n    return {\r\n      id: this.id,\r\n      idString: this.idString,\r\n      src: this.src,\r\n      width: this.width,\r\n      height: this.height,\r\n      text: this.text,\r\n      type: this.type,\r\n      isIncluded: this.isIncluded,\r\n      source: this.source,\r\n    };\r\n  }\r\n\r\n  /**\r\n   * Get the object formatted in JSON to save\r\n   *\r\n   * @param {Boolean} isMultimediaAd - Is multimedia ad\r\n   * @param {Boolean} isVideoThumbnail - Is this image used for video thumbnail\r\n   * @param {Boolean} overrideInfo - If field exists, take this isntead of member field.\r\n   * @param {Boolean} isMMAV2Enabled - If field exists, take this isntead of member field.\r\n   * @returns {Object} - Object formatted to be saved on MT\r\n   */\r\n  formatToSave(\r\n    isMultimediaAd = false,\r\n    isVideoThumbnail = false,\r\n    overrideInfo = {},\r\n    isMMAV2Enabled = false\r\n  ) {\r\n    let subType;\r\n\r\n    if (isVideoThumbnail) {\r\n      subType = this.Type;\r\n    } else {\r\n      /* eslint-disable no-lonely-if */\r\n      if (this.associationType) {\r\n        subType = this.associationType;\r\n      } else {\r\n        subType = isMultimediaAd ?\r\n          C.getMmaAspectRatios()[this.Type].associationType :\r\n          C.aspectRatios[this.Type] && C.aspectRatios[this.Type].associationType;\r\n        if (isMMAV2Enabled) {\r\n          subType = C.aspectRatiosForMMAV2[this.Type] && C.aspectRatiosForMMAV2[this.Type].associationType;\r\n        }\r\n      }\r\n    }\r\n\r\n    let result = _.extend({}, _.isEmpty(overrideInfo) ? {\r\n      id: this.Id,\r\n      idString: this.IdString || this.Id.toString(),\r\n    } : {\r\n      id: overrideInfo.id,\r\n      idString: overrideInfo.id.toString(),\r\n    }, { subType });\r\n\r\n    if (this.cropSettings) {\r\n      result = {\r\n        ...result,\r\n        cropX: this.cropSettings.SourceX,\r\n        cropY: this.cropSettings.SourceY,\r\n        cropWidth: this.cropSettings.SourceWidth,\r\n        cropHeight: this.cropSettings.SourceHeight,\r\n      };\r\n    }\r\n    return result;\r\n  }\r\n}\r\n\r\n/**\r\n * Returns a promise of returning ImageExperienceImage\r\n *\r\n * @param {string} imageSource - string representation of image source\r\n * @returns {Promise} - promise of returning loaded ImageExperienceImage\r\n */\r\nconst newImageFromSourceAsync = (imageSource) => {\r\n  const nativeImage = new Image();\r\n\r\n  nativeImage.src = imageSource;\r\n\r\n  let imageLoadResolve = null;\r\n\r\n  const imageLoadPromise = new Promise((resolve) => {\r\n    imageLoadResolve = resolve;\r\n  });\r\n\r\n  nativeImage.onload = () => {\r\n    const imageObj = new ImageExperienceImage({\r\n      src: nativeImage.src,\r\n      width: nativeImage.naturalWidth,\r\n      height: nativeImage.naturalHeight,\r\n      cropSettings: {\r\n        SourceX: 0,\r\n        SourceY: 0,\r\n        SourceWidth: nativeImage.naturalWidth,\r\n        SourceHeight: nativeImage.naturalHeight,\r\n      },\r\n    });\r\n\r\n    imageLoadResolve(imageObj);\r\n  };\r\n\r\n  return imageLoadPromise;\r\n};\r\n\r\n/**\r\n * Returns a {ImageExperienceImage} object\r\n *\r\n * @param {object} imageObjectMT - object returned from MT for the image\r\n * @param {string} source - source of the image\r\n * @returns {ImageExperienceImage} - ImageExperienceImage object\r\n */\r\nconst newImageFromMTObject = (imageObjectMT, source) => {\r\n  const imageObj = new ImageExperienceImage({\r\n    id: imageObjectMT.Id,\r\n    idString: imageObjectMT.IdString,\r\n    src: imageObjectMT.Url,\r\n    width: imageObjectMT.Width,\r\n    height: imageObjectMT.Height,\r\n    text: imageObjectMT.Text,\r\n    cropSettingOnOriginal: imageObjectMT.CropSettingOnOriginal,\r\n    originalUrl: imageObjectMT.OriginalUrl,\r\n    placementSettings: imageObjectMT.PlacementSettings,\r\n    source,\r\n  });\r\n\r\n  return imageObj;\r\n};\r\n\r\nexport {\r\n  ImageExperienceImage,\r\n  newImageFromSourceAsync,\r\n  newImageFromMTObject,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__14__;","module.exports = __WEBPACK_EXTERNAL_MODULE__26__;","module.exports = __WEBPACK_EXTERNAL_MODULE__985__;","export * from './src/index';\r\n","export { AdPlacementsGridPreview } from './ad-placements-grid-preview';\r\nexport { AdPlacementsGridPreviewPanel } from './ad-placements-grid-preview-panel';\r\n","import React from 'react';\r\n// import PropTypes from 'prop-types';\r\n\r\nexport function AdPlacementsGridPreview() {\r\n  return (\r\n    <h1>mock view</h1>\r\n  );\r\n}\r\n\r\nAdPlacementsGridPreview.propTypes = {\r\n};\r\n\r\nAdPlacementsGridPreview.defaultProps = {\r\n};\r\n","import React, { useContext } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { Panel, PanelType, DefaultButton } from '@bingads-webui-react/fabric-control';\r\nimport { AdPlacementsGridPreview } from './ad-placements-grid-preview';\r\n\r\nconst PanelWidth = 1377;\r\n\r\nexport function AdPlacementsGridPreviewPanel({\r\n  isOpen,\r\n  onDismiss,\r\n}) {\r\n  const i18n = useContext(I18nContext);\r\n  const onRenderFooterContent = React.useCallback(\r\n    () => (\r\n      <div>\r\n        <DefaultButton onClick={onDismiss}>{i18n.getString(_TL_('Close'))}</DefaultButton>\r\n      </div>\r\n    ),\r\n    [i18n, onDismiss]\r\n  );\r\n\r\n  return (\r\n    <Panel\r\n      className=\"media-editor-container\"\r\n      headerText={i18n.getString(_TL_('View all placements'))}\r\n      isOpen={isOpen}\r\n      onDismiss={onDismiss}\r\n      type={PanelType.custom}\r\n      customWidth={PanelWidth}\r\n      closeButtonAriaLabel={i18n.getString(_TL_('Close'))}\r\n      onRenderFooterContent={onRenderFooterContent}\r\n      isFooterAtBottom\r\n      // styles={_.pick(getMediaEditorStyle(subTitle), 'footer', 'commands')}\r\n    >\r\n      <AdPlacementsGridPreview />\r\n    </Panel>\r\n  );\r\n}\r\n\r\nAdPlacementsGridPreviewPanel.propTypes = {\r\n  isOpen: PropTypes.bool.isRequired,\r\n  onDismiss: PropTypes.func.isRequired,\r\n};\r\n\r\nAdPlacementsGridPreviewPanel.defaultProps = {\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__5__;","module.exports = __WEBPACK_EXTERNAL_MODULE__6__;","export * from './src/index';\r\n","import { AdPlacementsGroupType } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nimport { transformToTemplateData as imageExtensionTransformer } from './image-extension/index';\r\nimport { transformToTemplateData as msanImageAdTransformer } from './msan-image-ad/index';\r\nimport { transformToTemplateData as perfMaxTransformer } from './perf-max/index';\r\nimport { transformToTemplateData as searchImageAdTransformer } from './search-image-ad/index';\r\nimport { transformToTemplateData as streamlinedSignupTransformer } from './streamlined-signup/index';\r\nimport { transformToTemplateData as adLibraryTransformer } from './ad-library/index';\r\n\r\nexport const GroupTypeTransformerMapping = {\r\n  [AdPlacementsGroupType.imageExtension]: imageExtensionTransformer,\r\n  [AdPlacementsGroupType.msanImageAd]: msanImageAdTransformer,\r\n  [AdPlacementsGroupType.perfMax]: perfMaxTransformer,\r\n  [AdPlacementsGroupType.searchImageAd]: searchImageAdTransformer,\r\n  [AdPlacementsGroupType.streamlinedSignup]: streamlinedSignupTransformer,\r\n  [AdPlacementsGroupType.adLibrary]: adLibraryTransformer,\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_('Title part 1'),\r\n  longHeadline: _TL_('Title part 1 | Title part 2 | Title part 3'),\r\n  description: _TL_('Ad text 1. Ad text 2'),\r\n  businessName: _TL_('Business name'),\r\n};\r\n\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { isValidUrl } from '@bingads-webui/url-util';\r\n\r\nconst defaultLocalizedText = {\r\n  previewTypeStringKey: '',\r\n  stringKey: '',\r\n  disclaimerMessage: '',\r\n};\r\n\r\nexport const getLocalizedText = (template, i18n) => _.defaults(\r\n  {},\r\n  _.mapObject(template.localizedText, val => i18n.getString(val)),\r\n  defaultLocalizedText\r\n);\r\n\r\n// handle style overrides dependent on ad data\r\n// for preview workflows with include/exclude behavior\r\nexport const updateOpacityBasedOnIncludeState = (template, adData) => {\r\n  const { image: { IsIncluded } } = adData;\r\n\r\n  const styleOverrides = {\r\n    ...template.styleOverrides,\r\n    placementContainer: {\r\n      ...template.styleOverrides.placementContainer,\r\n      opacity: IsIncluded ? 100 : 50,\r\n    },\r\n  };\r\n\r\n  return {\r\n    ...template,\r\n    styleOverrides,\r\n  };\r\n};\r\n\r\nexport const defaultPreviewTextUrl = 'https://example.com';\r\n\r\nexport const getPreviewTexts = ({\r\n  adData,\r\n  skipUrlValidation,\r\n  defaultPreviewTexts,\r\n}) => {\r\n  const { url, displayUrl } = adData;\r\n\r\n  let processedUrl = url || defaultPreviewTextUrl;\r\n\r\n  const previewTextKeys = _.keys(defaultPreviewTexts);\r\n\r\n  if (!skipUrlValidation) {\r\n    processedUrl = isValidUrl(url) ? new URL(url).origin : url;\r\n  }\r\n\r\n  const previewTextWithDefaults = _.defaults(_.pick(adData, previewTextKeys), defaultPreviewTexts);\r\n\r\n  return _.extend(previewTextWithDefaults, {\r\n    url: processedUrl,\r\n    displayUrl,\r\n  });\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__12__;","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_('Title part 1'),\r\n  longHeadline: _TL_('Title part 1 | Title part 2 | Title part 3'),\r\n  description: _TL_('Ad text 1. Ad text 2'),\r\n  businessName: _TL_('Business name'),\r\n};\r\n\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_('Short headline'),\r\n  longHeadline: _TL_('Long headline'),\r\n  description: _TL_('Ad text'),\r\n  businessName: _TL_('Business name'),\r\n  callToAction: _TL_('Please select language first'),\r\n};\r\n\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_('Short headline'),\r\n  longHeadline: _TL_('Long headline'),\r\n  description: _TL_('Ad text'),\r\n  businessName: _TL_('Business name'),\r\n  callToAction: _TL_('Please select language first'),\r\n};\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_('Short headline'),\r\n  longHeadline: _TL_('Long headline'),\r\n  description: _TL_('Ad text'),\r\n  businessName: _TL_('Business name'),\r\n  callToAction: _TL_('Please select language first'),\r\n};\r\n\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  decoratorsData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    decoratorsData,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { staticTemplateProperties } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { getLocalizedText, getPreviewTexts } from '../common/index';\r\n\r\nconst defaultPreviewTextKeys = {\r\n  shortHeadline: _TL_(''),\r\n  longHeadline: _TL_(''),\r\n  description: _TL_(''),\r\n  businessName: _TL_(''),\r\n  callToAction: _TL_(''),\r\n};\r\n\r\nexport const transformToTemplateData = ({\r\n  adData,\r\n  template,\r\n  i18n,\r\n}) => {\r\n  const localizedText = getLocalizedText(template, i18n);\r\n  const carryOverProperties = _.pick(template, staticTemplateProperties);\r\n  const {\r\n    previewSettings,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n  } = template;\r\n\r\n  const defaultPreviewTexts = {\r\n    ..._.mapObject(defaultPreviewTextKeys, stringKey => i18n.getString(stringKey)),\r\n  };\r\n  const skipUrlValidation = previewSettings.showUrlMultiline;\r\n  const previewTexts = getPreviewTexts({\r\n    adData,\r\n    skipUrlValidation,\r\n    defaultPreviewTexts,\r\n  });\r\n\r\n  return {\r\n    previewTexts,\r\n    imagePreviewHeight,\r\n    styleOverrides,\r\n    ...previewSettings,\r\n    ...localizedText,\r\n    ...carryOverProperties,\r\n  };\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__50__;","export * from './src/index';\r\n","export * from './get-cropped-image';\r\nexport * from './get-smart-cropped-image';\r\nexport * from './validate-crop-settings';\r\nexport * from './get-generic-image-object';\r\nexport * from './update-placement-with-bulk-crop-settings';\r\nexport * from './image-size-validation';\r\n","import _ from 'underscore';\r\n\r\nimport {\r\n  ImageExperienceImage, constants as C\r\n} from '@bingads-webui-campaign-react/image-experience-model';\r\n\r\nconst AspectRatioTolerance = 0.01;\r\n\r\n// Attention!!: DO NOT touch this algorithm unless sync with MT/DE.\r\n// This logic is also implemented on DE side.\r\n// originalBoxToCrop { SourceWidth, SourceHeight, SourceX, SourceY }\r\nexport const getCenterCroppedSettings = (originalBoxToCrop, aspectRatio) => {\r\n  const {\r\n    SourceWidth: centerContainerWidth,\r\n    SourceHeight: centerContainerHeight,\r\n  } = originalBoxToCrop;\r\n  const originalRatio = centerContainerWidth / centerContainerHeight;\r\n  const cropSettings = _.defaults({}, originalBoxToCrop);\r\n\r\n  if (Math.abs(originalRatio - aspectRatio) > AspectRatioTolerance) {\r\n    // If the target ratio is narrower than the original\r\n    if (aspectRatio <= originalRatio) {\r\n      // Use the same height, get the width from the original height\r\n      const scaledSourceWidth = Math.round(cropSettings.SourceHeight * aspectRatio);\r\n\r\n      // Since we use the full height, Y is still 0\r\n      // Make sure we crop the middle section horionzontally\r\n      const centerX =\r\n        Math.round((cropSettings.SourceWidth - scaledSourceWidth) / 2) + cropSettings.SourceX;\r\n\r\n      cropSettings.SourceWidth = scaledSourceWidth;\r\n      cropSettings.SourceX = centerX;\r\n    } else {\r\n      // Use the same width, get the height from the original width\r\n      const scaledSourceHeight = Math.round(cropSettings.SourceWidth / aspectRatio);\r\n\r\n      // We use full width, X is 0.\r\n      // Make sure we crop the middle section vertically\r\n      const middleY = Math.round((\r\n        cropSettings.SourceHeight - scaledSourceHeight) / 2) + cropSettings.SourceY;\r\n\r\n      cropSettings.SourceHeight = scaledSourceHeight;\r\n      cropSettings.SourceY = middleY;\r\n    }\r\n  }\r\n\r\n  return cropSettings;\r\n};\r\n\r\nexport const getAutoCroppedImagesForRatios = ({\r\n  originalImageToCrop,\r\n  aspectRatios,\r\n  maxCropBox,\r\n  imageOption = C.defaultImageOption,\r\n  aspectRatioOption = C.defaultAspectRatioOption,\r\n  isRecommendedImage = false,\r\n  defaultRatioToInclude, // optional, if omit, compute a ratio from aspectRatios\r\n  disableEdit = false,\r\n}) => {\r\n  const boxToCrop = maxCropBox || {\r\n    SourceWidth: originalImageToCrop.Width,\r\n    SourceHeight: originalImageToCrop.Height,\r\n    SourceX: 0,\r\n    SourceY: 0,\r\n  };\r\n  const defaultRatio = defaultRatioToInclude ||\r\n    (imageOption === C.imageOptionKeys.Logo && aspectRatioOption ?\r\n      _.result(aspectRatios, aspectRatioOption) :\r\n      C.getDefaultRatio(boxToCrop.SourceWidth, boxToCrop.SourceHeight, aspectRatios));\r\n\r\n  const imagesToReturn = _.map(\r\n    aspectRatios,\r\n    (cropInfo) => {\r\n      const croppedImageData = {\r\n        id: originalImageToCrop.Id,\r\n        idString: originalImageToCrop.IdString,\r\n        src: originalImageToCrop.Src,\r\n        width: originalImageToCrop.Width,\r\n        height: originalImageToCrop.Height,\r\n        text: originalImageToCrop.Text,\r\n        source: originalImageToCrop.source,\r\n      };\r\n\r\n      // By default, the whole image is the crop setting\r\n      const cropSettings = getCenterCroppedSettings(boxToCrop, cropInfo.aspectRatio);\r\n\r\n      croppedImageData.cropSettings = cropSettings;\r\n      croppedImageData.type = cropInfo.type;\r\n      croppedImageData.associationType = cropInfo.associationType;\r\n      croppedImageData.isLogo = cropInfo.isLogo;\r\n      croppedImageData.isIncluded = cropInfo.aspectRatio === _.result(defaultRatio, 'aspectRatio');\r\n      croppedImageData.isRecommendedImage = isRecommendedImage;\r\n      croppedImageData.disableEdit = disableEdit;\r\n\r\n      return new ImageExperienceImage(croppedImageData);\r\n    }\r\n  );\r\n\r\n  return imagesToReturn;\r\n};\r\n\r\nexport const processCroppedImages = ({\r\n  imageOption,\r\n  croppedImages,\r\n  aspectRatios,\r\n  isMultimediaAdinMSANEnabled,\r\n}) => {\r\n  croppedImages.forEach((image) => {\r\n    if (imageOption !== C.imageOptionKeys.Logo) {\r\n      if (isMultimediaAdinMSANEnabled) {\r\n        image.setIncluded(true);\r\n        image.setAutoCropping(true);\r\n      }\r\n\r\n      const aspectRatio = _.findWhere(aspectRatios, { type: image.type });\r\n      if (image.width < aspectRatio.minSize[0] || image.height < aspectRatio.minSize[1]) {\r\n        image.setIncluded(false);\r\n      }\r\n    }\r\n  });\r\n};\r\n\r\n/**\r\n * Return the image objects\r\n *\r\n * @param {Object} originalImageToCrop - ImageExperienceImage Object\r\n * @param {boolean} isMultimediaAd - If it is responsive for Multimedia Ads\r\n * @param {object} maxCropBox - Max crop box\r\n * @returns {Array} - Array of image objects\r\n */\r\nexport const getAutoCroppedImages = ({\r\n  originalImageToCrop,\r\n  isMultimediaAd = false,\r\n  isMultimediaAdinMSANEnabled,\r\n  maxCropBox,\r\n  imageOption = C.defaultImageOption,\r\n  aspectRatioOption = C.defaultAspectRatioOption,\r\n  isRecommendedImage = false,\r\n  isCombinedMsanAndMmaAspectRatios,\r\n  disableEdit = false,\r\n  isMMAV2Enabled = false,\r\n}) => {\r\n  const aspectRatios = C.getAspectRatios({\r\n    isMultimediaAd,\r\n    isMultimediaAdinMSANEnabled,\r\n    isCombinedMsanAndMmaAspectRatios,\r\n    imageOption,\r\n    isMMAV2Enabled,\r\n  });\r\n\r\n  // wrap all logics into method getAutoCroppedImagesForRatios\r\n  const autoCroppingImages = getAutoCroppedImagesForRatios({\r\n    originalImageToCrop,\r\n    aspectRatios,\r\n    maxCropBox,\r\n    imageOption,\r\n    aspectRatioOption,\r\n    isRecommendedImage,\r\n    disableEdit,\r\n  });\r\n\r\n  processCroppedImages({\r\n    imageOption,\r\n    croppedImages: autoCroppingImages,\r\n    aspectRatios,\r\n    isMultimediaAdinMSANEnabled,\r\n  });\r\n\r\n  return autoCroppingImages;\r\n};\r\n","import _ from 'underscore';\r\nimport Promise from 'bluebird';\r\n\r\nimport { convertAspectRatioToDecimal } from '@bingads-webui-campaign/media-common-utils';\r\nimport {\r\n  ImageExperienceImage, constants as C\r\n} from '@bingads-webui-campaign-react/image-experience-model';\r\n\r\nimport {\r\n  getAutoCroppedImages,\r\n  getAutoCroppedImagesForRatios,\r\n  processCroppedImages\r\n} from './get-cropped-image';\r\nimport { validateSmartCropSettings } from './validate-crop-settings';\r\n/**\r\n * Return the image objects\r\n *\r\n * @param {Object} mediaRepository - Media repository to get smart crop settings\r\n * @param {Object} originalImageToCrop - ImageExperienceImage Object\r\n * @param {string} originalImageToCrop.Src - source of the image\r\n * @param {Number} originalImageToCrop.width - width of the image\r\n * @param {Number} originalImageToCrop.height - height of the image\r\n * @param {Object} smartCropActivity - instrumentation for smart crop\r\n * @param {Object} isMultimediaAd - true if current is mma\r\n * @param {Object} isMultimediaAdinMSANEnabled - true if current is msan mma\r\n * @returns {Array} - Array of image objects\r\n */\r\nexport const getSmartCroppedImagesAsync = ({\r\n  mediaRepository,\r\n  originalImageToCrop,\r\n  smartCropActivity,\r\n  isMultimediaAd,\r\n  isMultimediaAdinMSANEnabled,\r\n  imageOption = C.defaultImageOption,\r\n  aspectRatioOption = C.defaultAspectRatioOption,\r\n  isImageAdExtensionMode,\r\n  isCombinedMsanAndMmaAspectRatios,\r\n  isMMAV2Enabled,\r\n}) => {\r\n  /* turn off smart crop for msan temporarily\r\n   * When on, it will bring rapidly increased associations to MT. Need more discussion.\r\n   *\r\n   * There are some coupled logics. For simplicity, turn off here instead of consuming codes\r\n   */\r\n  if (isMultimediaAdinMSANEnabled || isImageAdExtensionMode) {\r\n    return Promise.resolve(getAutoCroppedImages({\r\n      originalImageToCrop,\r\n      isMultimediaAd,\r\n      isMultimediaAdinMSANEnabled,\r\n      imageOption,\r\n      aspectRatioOption,\r\n      isCombinedMsanAndMmaAspectRatios,\r\n      isMMAV2Enabled,\r\n    }));\r\n  }\r\n\r\n  const aspectRatios = C.getAspectRatios({\r\n    isMultimediaAd,\r\n    isMultimediaAdinMSANEnabled,\r\n    imageOption,\r\n  });\r\n  const defaultRatio = imageOption === C.imageOptionKeys.Logo && aspectRatioOption ?\r\n    _.result(aspectRatios, aspectRatioOption) :\r\n    C.getDefaultRatio(originalImageToCrop.Width, originalImageToCrop.Height, aspectRatios);\r\n\r\n  const placementSettings = _.map(aspectRatios, cropInfo => ({\r\n    aspectRatio: cropInfo.aspectRatio,\r\n    type: cropInfo.type,\r\n    associationType: cropInfo.associationType,\r\n    stringKey: cropInfo.stringKey,\r\n    previewTypeStringKey: cropInfo.previewTypeStringKey,\r\n    imagePreviewHeight: cropInfo.imagePreviewHeight,\r\n    minSize: cropInfo.minSize,\r\n    previewSettings: cropInfo.previewSettings,\r\n  }));\r\n  let imagesToReturn = [];\r\n  const aspectRatiosWithSmartCrop = {};\r\n\r\n  return mediaRepository.generateSmartCrop({\r\n    imageUrl: originalImageToCrop.Src,\r\n    placementSettings,\r\n  }).then((assets) => {\r\n    imagesToReturn = _.compact(_.map(assets, (asset) => {\r\n      const croppedImageData = {\r\n        id: originalImageToCrop.Id,\r\n        idString: originalImageToCrop.IdString,\r\n        src: originalImageToCrop.Src,\r\n        width: originalImageToCrop.width,\r\n        height: originalImageToCrop.height,\r\n        source: originalImageToCrop.source,\r\n      };\r\n      const cropSettings = {\r\n        SourceWidth: asset.Width,\r\n        SourceHeight: asset.Height,\r\n        SourceX: asset.X,\r\n        SourceY: asset.Y,\r\n      };\r\n      croppedImageData.cropSettings = cropSettings;\r\n      const ratioDecimalStr = convertAspectRatioToDecimal(asset.AspectRatio);\r\n      const placementSetting = _.find(aspectRatios, ratio =>\r\n        ratio.aspectRatio.toString() === ratioDecimalStr);\r\n      const minSize = _.propertyOf(placementSetting)('minSize') || [];\r\n\r\n      croppedImageData.type = _.propertyOf(placementSetting)('type');\r\n      croppedImageData.associationType = _.propertyOf(placementSetting)('associationType');\r\n      croppedImageData.isLogo = _.propertyOf(placementSetting)('isLogo');\r\n      croppedImageData.isIncluded = defaultRatio &&\r\n        ratioDecimalStr === _.result(defaultRatio, 'aspectRatio').toString();\r\n\r\n      if (!validateSmartCropSettings({\r\n        cropSettings,\r\n        originalImage: originalImageToCrop,\r\n        aspectRatio: _.propertyOf(placementSetting)('aspectRatio'),\r\n        minWidth: minSize.length === 2 && minSize[0],\r\n        minHeight: minSize.length === 2 && minSize[1],\r\n        smartCropActivity,\r\n      })) {\r\n        return null;\r\n      }\r\n\r\n      aspectRatiosWithSmartCrop[croppedImageData.type] = true;\r\n\r\n      return new ImageExperienceImage(croppedImageData);\r\n    }));\r\n  }).catch(() => {\r\n    // swallow the error\r\n  }).then(() => {\r\n    if (imagesToReturn.length < Object.keys(aspectRatios).length) {\r\n      const missingAspectRatios =\r\n        _.pick(aspectRatios, ({ type }) => !aspectRatiosWithSmartCrop[type]);\r\n      const autoCropSettings =\r\n        getAutoCroppedImagesForRatios({\r\n          originalImageToCrop,\r\n          aspectRatios: missingAspectRatios,\r\n          defaultRatioToInclude: defaultRatio,\r\n        });\r\n\r\n      imagesToReturn = imagesToReturn.concat(autoCropSettings);\r\n    }\r\n\r\n    processCroppedImages({\r\n      croppedImages: imagesToReturn,\r\n      isMultimediaAdinMSANEnabled,\r\n      aspectRatios,\r\n    });\r\n\r\n    return imagesToReturn;\r\n  });\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__7__;","export function validateSmartCropSettings({\r\n  originalImage,\r\n  cropSettings,\r\n  minWidth,\r\n  minHeight,\r\n  aspectRatio,\r\n  smartCropActivity,\r\n}) {\r\n  if (originalImage.width < cropSettings.SourceWidth) {\r\n    smartCropActivity.trace(`Smart crop provided invalid cropsettings for ${aspectRatio} originalWidth:${originalImage.width} smartCropWidth:${cropSettings.SourceWidth} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (originalImage.height < cropSettings.SourceHeight) {\r\n    smartCropActivity.trace(`Smart crop provided invalid cropsettings for ${aspectRatio} originalHeight:${originalImage.height} smartCropHeight:${cropSettings.SourceHeight} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceHeight < 0) {\r\n    smartCropActivity.trace(`Smart crop provided invalid SourceHeight ${cropSettings.SourceHeight} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceWidth < 0) {\r\n    smartCropActivity.trace(`Smart crop provided invalid SourceWidth ${cropSettings.SourceWidth} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceX < 0) {\r\n    smartCropActivity.trace(`Smart crop provided invalid X ${cropSettings.SourceX} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceY < 0) {\r\n    smartCropActivity.trace(`Smart crop provided invalid Y ${cropSettings.SourceY} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceX + cropSettings.SourceWidth > originalImage.width) {\r\n    smartCropActivity.trace(`Smart crop dimensions exceed width of image: CropX: ${cropSettings.SourceX} CropWidth: ${cropSettings.SourceWidth} ImageWidth: ${originalImage.width} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (cropSettings.SourceY + cropSettings.SourceHeight > originalImage.height) {\r\n    smartCropActivity.trace(`Smart crop dimensions exceed height of image: CropY ${cropSettings.SourceY} CropHeight: ${cropSettings.SourceHeight} ImageWidth: ${originalImage.height} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (minWidth && minWidth > cropSettings.SourceWidth) {\r\n    smartCropActivity.trace(`Smart crop width does not meet minWidth: CropWidth: ${cropSettings.SourceWidth} MinWidth: ${minWidth} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  if (minHeight && minHeight > cropSettings.SourceHeight) {\r\n    smartCropActivity.trace(`Smart crop height does not meet minHeight: CropHeight: ${cropSettings.SourceHeight} MinHeight: ${minHeight} imageSrc:${originalImage.Src}`);\r\n    return false;\r\n  }\r\n\r\n  return true;\r\n}\r\n","import Promise from 'bluebird';\r\n\r\nexport const getGenericImageObjectAsync = (genericImageSource) => {\r\n  const nativeImageObject = new Image();\r\n\r\n  let resolver = null;\r\n\r\n  const getImagePromise = new Promise((resolve) => {\r\n    resolver = resolve;\r\n  });\r\n\r\n  nativeImageObject.onload = () => {\r\n    resolver({\r\n      Src: nativeImageObject.src,\r\n      Width: nativeImageObject.naturalWidth,\r\n      Height: nativeImageObject.naturalHeight,\r\n      Type: 'Image191x100',\r\n    });\r\n  };\r\n\r\n  nativeImageObject.src = genericImageSource;\r\n\r\n  return getImagePromise;\r\n};\r\n","/* eslint-disable no-param-reassign */\r\nimport { find } from 'underscore';\r\nimport { getMediaPlacementType } from '@bingads-webui-campaign-react/asset-library-model';\r\n\r\nexport function updatePlacementWithBaseCropSettings({\r\n  placement,\r\n  mtImgObject,\r\n}) {\r\n  if (mtImgObject.CropSettingOnOriginal) {\r\n    const { SourceX, SourceY } = mtImgObject.CropSettingOnOriginal;\r\n\r\n    placement.BaseImage.setCropSettings(mtImgObject.CropSettingOnOriginal);\r\n    placement.BaseImage.src = mtImgObject.OriginalUrl;\r\n    placement.BaseImage.height = mtImgObject.OriginalHeight;\r\n    placement.BaseImage.width = mtImgObject.OriginalWidth;\r\n\r\n    // transform any auto/smart cropping back to the dimensions of the original image\r\n    placement.src = mtImgObject.OriginalUrl;\r\n    placement.cropSettings.SourceX += SourceX;\r\n    placement.cropSettings.SourceY += SourceY;\r\n    placement.height = mtImgObject.OriginalHeight;\r\n    placement.width = mtImgObject.OriginalWidth;\r\n  }\r\n}\r\n\r\nexport function updatePlacementWithPlacementSettings({\r\n  isMultimediaAd,\r\n  isMultimediaAdinMSANEnabled,\r\n  placement,\r\n  mtImgObject,\r\n  updatePlacementSettings,\r\n}) {\r\n  if (updatePlacementSettings &&\r\n    mtImgObject.PlacementSettings && mtImgObject.PlacementSettings.length > 0) {\r\n    const currentType = getMediaPlacementType({\r\n      isMultimediaAd,\r\n      isMultimediaAdinMSANEnabled,\r\n      type: placement.type,\r\n    });\r\n    const { CropSetting } =\r\n      find(mtImgObject.PlacementSettings, ({ MediaPlacementType }) => (\r\n        MediaPlacementType === currentType\r\n      )) || {};\r\n    if (CropSetting) {\r\n      placement.setCropSettings(CropSetting);\r\n    }\r\n  }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__947__;","import Promise from 'bluebird';\r\nimport _ from 'underscore';\r\n\r\nimport { constants as C } from '@bingads-webui-campaign-react/image-experience-model';\r\n\r\nclass ImageSizeValidationError extends Error {\r\n  constructor({\r\n    imageWidth,\r\n    imageHeight,\r\n    minWidth,\r\n    minHeight,\r\n  }) {\r\n    super('SizeValidationError');\r\n\r\n    this.imageWidthInternal = imageWidth;\r\n    this.imageHeightInternal = imageHeight;\r\n    this.minWidthInternal = minWidth;\r\n    this.minHeightInternal = minHeight;\r\n  }\r\n\r\n  get imageWidth() {\r\n    return this.imageWidthInternal;\r\n  }\r\n\r\n  get imageHeight() {\r\n    return this.imageHeightInternal;\r\n  }\r\n\r\n  get minWidth() {\r\n    return this.minWidthInternal;\r\n  }\r\n\r\n  get minHeight() {\r\n    return this.minHeightInternal;\r\n  }\r\n}\r\n\r\nclass ImageLoadError extends Error {\r\n  constructor() {\r\n    super('ImageLoadError');\r\n  }\r\n}\r\n\r\nconst validateImageWithDimension = function (\r\n  width,\r\n  height,\r\n  imageType,\r\n  isMultimediaAd = false,\r\n  imageOption = C.defaultImageOption,\r\n  isMMAV2Enabled = false\r\n) {\r\n  const minimumSizeForImage =\r\n    C.getMinimumSizeForImage(imageType, isMultimediaAd, imageOption, false, isMMAV2Enabled);\r\n\r\n  if (width < minimumSizeForImage[0] ||\r\n    height < minimumSizeForImage[1]) {\r\n    return new ImageSizeValidationError({\r\n      imageWidth: width,\r\n      imageHeight: height,\r\n      minWidth: minimumSizeForImage[0],\r\n      minHeight: minimumSizeForImage[1],\r\n    });\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nconst validateImageSyncAsyncWithDimensionParams = ({\r\n  imageSource,\r\n  minimumHeight,\r\n  minimumWidth,\r\n}) => {\r\n  const img = new Image();\r\n\r\n  let imageLoadedResolve = null;\r\n  let imageLoadedReject = null;\r\n  const imageLoadedPromise = new Promise((resolve, reject) => {\r\n    imageLoadedResolve = resolve;\r\n    imageLoadedReject = reject;\r\n  });\r\n\r\n  img.src = imageSource;\r\n\r\n  img.onload = () => {\r\n    if (img.naturalWidth < minimumWidth ||\r\n      img.naturalHeight < minimumHeight) {\r\n      imageLoadedReject(new ImageSizeValidationError({\r\n        imageWidth: img.naturalWidth,\r\n        imageHeight: img.naturalHeight,\r\n        minWidth: minimumWidth,\r\n        minHeight: minimumHeight,\r\n      }));\r\n    } else {\r\n      imageLoadedResolve();\r\n    }\r\n  };\r\n\r\n  img.onerror = (err) => {\r\n    imageLoadedReject(new ImageLoadError(err));\r\n  };\r\n\r\n  return imageLoadedPromise;\r\n};\r\n\r\nconst validateImageSizeAsync = function (\r\n  imageSource,\r\n  imageType,\r\n  isMultimediaAd = false,\r\n  imageOption = C.defaultImageOption,\r\n  isMMAV2Enabled = false\r\n) {\r\n  const minimumSize = C.getMinimumSizeForImage(imageType, isMultimediaAd, imageOption, false, isMMAV2Enabled);\r\n\r\n  return validateImageSyncAsyncWithDimensionParams({\r\n    imageSource,\r\n    minimumHeight: minimumSize[1],\r\n    minimumWidth: minimumSize[0],\r\n  });\r\n};\r\n\r\nfunction getImageValidationErrorMessage(e, i18n, isMultiple = false) {\r\n  if (e instanceof ImageSizeValidationError) {\r\n    let stringTemplateKey = isMultiple ? 'ImageExperience_MultipleUpload_SizeValidationFailTemplate' : 'ImageExperience_SizeValidationFailTemplate';\r\n    /* istanbul ignore else */\r\n    if (e.isDueToResizing) {\r\n      stringTemplateKey = 'ImageExperience_SizeValidationFailTemplate_WithDetail';\r\n    }\r\n\r\n    return i18n.getString(stringTemplateKey, {\r\n      width: e.minWidth,\r\n      height: e.minHeight,\r\n    });\r\n  }\r\n  const error = _.result(e, 'message', '');\r\n\r\n  return i18n.getString(`ImageExperience_Error_${error}`) || error;\r\n}\r\n\r\n\r\nconst validateMultipleImagesSizesAsync = ({\r\n  imageSources,\r\n  minimumHeight,\r\n  minimumWidth,\r\n}) => {\r\n  const validations = [];\r\n\r\n  _.each(imageSources, (imageSource) => {\r\n    validations.push(validateImageSyncAsyncWithDimensionParams({\r\n      imageSource,\r\n      minimumHeight,\r\n      minimumWidth,\r\n    }));\r\n  });\r\n\r\n  return Promise.all(validations);\r\n};\r\n\r\nexport {\r\n  ImageSizeValidationError, ImageLoadError,\r\n  validateImageSizeAsync,\r\n  validateImageWithDimension,\r\n  validateImageSyncAsyncWithDimensionParams,\r\n  validateMultipleImagesSizesAsync,\r\n  getImageValidationErrorMessage,\r\n};\r\n","export { SingleMonthCalendar } from './src/single-month-calendar';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport _ from 'underscore';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport {\r\n  compareCivilDate,\r\n  getCivilDateDayOfWeek,\r\n  isCivilDateInRange,\r\n  getCivilDateMonthStart,\r\n  getCivilDateMonthEnd,\r\n  isCivilDateRangeStartOrEnd,\r\n  getThisMonday\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\nimport { WithArrowKeys } from '@bingads-webui-react/hoc-with-arrow-keys';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\nimport { DayItem } from './day-item';\r\nimport { CalendarMonth } from './calendar-month';\r\nimport './month-calender.less';\r\n\r\nconst DAYS_IN_WEEK = 7;\r\nconst formatMonthDayYear = (date, i18n) =>\r\n  `${i18n.formatCivilDate(date, { skeleton: 'yMd' })}`;\r\nconst formatMonthYear = (date, i18n) =>\r\n  `${i18n.formatCivilDate(date, { skeleton: 'yMMM' })}`;\r\nconst formatDay = (date, i18n) =>\r\n  `${i18n.formatCivilDate(date, { skeleton: 'd' })}`;\r\nconst weekDays = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'];\r\nconst convertCivilTimeToDate = date => new Date(date.year, date.month - 1, date.day);\r\n\r\n\r\n/*  eslint-disable jsx-a11y/no-noninteractive-tabindex */\r\nclass SingleMonthCalendarInternal extends React.PureComponent {\r\n  static propTypes = {\r\n    defaultSelectedDate: PropTypes.instanceOf(CivilDate),\r\n    defaultNavigatedDate: PropTypes.instanceOf(CivilDate),\r\n    defaultSelectedRanges: PropTypes.arrayOf(PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    })),\r\n    selectedDate: PropTypes.instanceOf(CivilDate),\r\n    navigatedDate: PropTypes.instanceOf(CivilDate),\r\n    selectedRanges: PropTypes.arrayOf(PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    })),\r\n    minDate: PropTypes.instanceOf(CivilDate),\r\n    maxDate: PropTypes.instanceOf(CivilDate),\r\n    today: PropTypes.instanceOf(CivilDate),\r\n    isLeftNavigateVisible: PropTypes.bool,\r\n    isRightNavigateVisible: PropTypes.bool,\r\n    onSelectDate: PropTypes.func,\r\n    onNavigateDate: PropTypes.func,\r\n    i18n: PropTypes.shape({\r\n      getString: PropTypes.func.isRequired,\r\n      formatCivilDate: PropTypes.func.isRequired,\r\n      getToday: PropTypes.func.isRequired,\r\n      getDayOfWeek: PropTypes.func.isRequired,\r\n      getFirstDayOfWeek: PropTypes.func.isRequired,\r\n    }).isRequired,\r\n    observable: PropTypes.shape({\r\n      subscribe: PropTypes.func.isRequired,\r\n    }).isRequired,\r\n    isMonthPickerEnabled: PropTypes.bool,\r\n    isMonthRangePicker: PropTypes.bool,\r\n    isAriaLabelTranslated: PropTypes.bool,\r\n  }\r\n\r\n  static defaultProps = {\r\n    defaultSelectedDate: undefined,\r\n    defaultNavigatedDate: undefined,\r\n    defaultSelectedRanges: [],\r\n    minDate: undefined,\r\n    maxDate: undefined,\r\n    today: undefined,\r\n    selectedDate: undefined,\r\n    navigatedDate: undefined,\r\n    selectedRanges: [],\r\n    isLeftNavigateVisible: true,\r\n    isRightNavigateVisible: true,\r\n    onNavigateDate: undefined,\r\n    onSelectDate: undefined,\r\n    isMonthPickerEnabled: false,\r\n    isMonthRangePicker: false,\r\n    isAriaLabelTranslated: false,\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    const navigatedDate = props.navigatedDate || props.defaultNavigatedDate\r\n      || props.today || props.i18n.getToday();\r\n    const selectedDate = props.selectedDate || props.defaultSelectedDate;\r\n    this.state = {\r\n      navigatedDate,\r\n      selectedDate,\r\n      focusedDate: null,\r\n      showMonthPicker: false,\r\n      prevPropsNavigatedDate: navigatedDate,\r\n      weeks: this.getWeeks(props, navigatedDate, selectedDate),\r\n    };\r\n\r\n    const {\r\n      observable,\r\n    } = props;\r\n\r\n    let targetDate = null;\r\n    const observer = {\r\n      next: (data) => {\r\n        if (this.state.showMonthPicker && this.props.isMonthPickerEnabled) {\r\n          return;\r\n        }\r\n\r\n        switch (data) {\r\n          case keyCode.ArrowUp:\r\n            targetDate = this.addDay(this.state.focusedDate, -7);\r\n            this.setState({\r\n              focusedDate: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowDown:\r\n            targetDate = this.addDay(this.state.focusedDate, 7);\r\n            this.setState({\r\n              focusedDate: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowLeft:\r\n            targetDate = this.addDay(this.state.focusedDate, -1);\r\n            this.setState({\r\n              focusedDate: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowRight:\r\n            targetDate = this.addDay(this.state.focusedDate, 1);\r\n            this.setState({\r\n              focusedDate: targetDate,\r\n            });\r\n            break;\r\n          default:\r\n            break;\r\n        }\r\n      },\r\n    };\r\n    observable.subscribe(observer);\r\n  }\r\n\r\n  static getDerivedStateFromProps(nextProps, prevState) {\r\n    if (nextProps.navigatedDate) {\r\n      if (\r\n        compareCivilDate(nextProps.navigatedDate, prevState.prevPropsNavigatedDate) !== 0\r\n      ) {\r\n        return {\r\n          navigatedDate: nextProps.navigatedDate,\r\n          prevPropsNavigatedDate: nextProps.navigatedDate,\r\n        };\r\n      }\r\n    }\r\n    return null;\r\n  }\r\n\r\n  componentDidUpdate(prevProps, prevState) {\r\n    if (!_.isEqual(prevProps, this.props) ||\r\n      (this.state.navigatedDate && prevState.navigatedDate &&\r\n        compareCivilDate(prevState.navigatedDate, this.state.navigatedDate) !== 0) ||\r\n      (this.state.selectedDate && prevState.selectedDate &&\r\n        compareCivilDate(prevState.selectedDate, this.state.selectedDate) !== 0)\r\n    ) {\r\n      // eslint-disable-next-line react/no-did-update-set-state\r\n      this.setState({\r\n        weeks: this.getWeeks(this.props, this.state.navigatedDate, this.state.selectedDate),\r\n      });\r\n    }\r\n  }\r\n\r\n  onSelectDate = (selectedDate) => {\r\n    if (this.props.onSelectDate) {\r\n      this.props.onSelectDate(selectedDate);\r\n    }\r\n    // Navigate to next or previous month if needed\r\n    if (!this.props.isMonthRangePicker && selectedDate.month !== this.state.navigatedDate.month) {\r\n      const compareResult = compareCivilDate(selectedDate, this.state.navigatedDate);\r\n      if (compareResult < 0) {\r\n        this.onNavigateToPrevMonth();\r\n      } else if (compareResult > 0) {\r\n        this.onNavigateToNextMonth();\r\n      }\r\n    }\r\n    this.setState({\r\n      selectedDate,\r\n      focusedDate: convertCivilTimeToDate(selectedDate),\r\n      weeks: this.getWeeks(this.props, this.state.navigatedDate, selectedDate),\r\n    });\r\n  }\r\n\r\n  onSelectMonth = (selectedMonth, selectedYear) => {\r\n    const newNavigatedDate = new CivilDate(selectedYear, selectedMonth + 1, 1);\r\n    this.setState({\r\n      showMonthPicker: false,\r\n      focusedDate: convertCivilTimeToDate(newNavigatedDate),\r\n    });\r\n    this.updateNavigateDate(newNavigatedDate);\r\n  }\r\n\r\n  onNavigateToPrevMonth = () => {\r\n    const newNavigateDate = this.state.navigatedDate.plus({ months: -1 });\r\n    this.updateNavigateDate(newNavigateDate);\r\n  }\r\n\r\n  onNavigateToNextMonth = () => {\r\n    const newNavigateDate = this.state.navigatedDate.plus({ months: 1 });\r\n    this.updateNavigateDate(newNavigateDate);\r\n  }\r\n\r\n  getWeeks(props, navigatedDate, selectedDate) {\r\n    const {\r\n      minDate,\r\n      maxDate,\r\n      today,\r\n      i18n,\r\n      selectedRanges,\r\n      isMonthRangePicker,\r\n    } = props;\r\n\r\n    if (isMonthRangePicker) { return []; }\r\n\r\n    const todayDate = today || i18n.getToday();\r\n    let date = new CivilDate(navigatedDate.year, navigatedDate.month, 1);\r\n    const weeks = [];\r\n\r\n    // Cycle the date backwards to get to the first day of the week.\r\n    // For US the first day of the week is Sunday, and some counties like UK DE, first day is Monday\r\n    const firstDayOfMonthIndex = weekDays.indexOf(i18n.getFirstDayOfWeek());\r\n    date = firstDayOfMonthIndex === 1 ?\r\n      getThisMonday(date) :\r\n      date.plus({ days: -getCivilDateDayOfWeek(date) + firstDayOfMonthIndex });\r\n\r\n    let isAllDaysOfWeekOutOfMonth = false;\r\n    let shouldGetWeeks = true;\r\n\r\n    let foundFirstDayOfMonth = false;\r\n\r\n    for (let weekIndex = 0; shouldGetWeeks; weekIndex += 1) {\r\n      const week = [];\r\n\r\n      isAllDaysOfWeekOutOfMonth = true;\r\n\r\n      for (let dayIndex = 0; dayIndex < DAYS_IN_WEEK; dayIndex += 1) {\r\n        const isInMonth = (date.month === navigatedDate.month);\r\n        let isFirstDayOfMonth = false;\r\n\r\n        if (isInMonth && !foundFirstDayOfMonth) {\r\n          foundFirstDayOfMonth = true;\r\n          isFirstDayOfMonth = true;\r\n        }\r\n\r\n        const originalDate = date;\r\n        const dayInfo = {\r\n          key: date.toString(),\r\n          date: date.day,\r\n          originalDate,\r\n          isInMonth,\r\n          isToday: date ? compareCivilDate(todayDate, date) === 0 : false,\r\n          isSelected: selectedDate && date ? compareCivilDate(date, selectedDate) === 0 : false,\r\n          onSelected: this.onSelectDate.bind(this, originalDate),\r\n          isInBounds: (!minDate || compareCivilDate(minDate, date) <= 0) &&\r\n            (!maxDate || compareCivilDate(date, maxDate) <= 0),\r\n          formattedDate: new Date(date.year, date.month - 1, date.day),\r\n          isSelectedRangeStart: selectedRanges[0] ?\r\n            compareCivilDate(date, selectedRanges[0].start) === 0 : false,\r\n          isSelectedRangeEnd: selectedRanges[0] ?\r\n            compareCivilDate(date, selectedRanges[0].end) === 0 : false,\r\n          isFirstDayOfMonth,\r\n        };\r\n\r\n        week.push(dayInfo);\r\n\r\n        if (dayInfo.isInMonth) {\r\n          isAllDaysOfWeekOutOfMonth = false;\r\n        }\r\n\r\n        date = date.plus({ days: 1 });\r\n      }\r\n\r\n      shouldGetWeeks = !isAllDaysOfWeekOutOfMonth || weekIndex <= 5;\r\n      if (shouldGetWeeks) {\r\n        weeks.push(week);\r\n      }\r\n    }\r\n\r\n    return weeks;\r\n  }\r\n\r\n  getDayClass(day) {\r\n    const [selectedRange, comparedRange] = this.props.selectedRanges.length > 0 ?\r\n      this.props.selectedRanges : this.props.defaultSelectedRanges;\r\n    return classNames({\r\n      isSelected: day.isSelected,\r\n      isInMonth: day.isInMonth,\r\n      notInMonth: !day.isInMonth,\r\n      isInBounds: day.isInBounds,\r\n      notInBounds: !day.isInBounds,\r\n      isToday: day.isToday,\r\n      isInSelectedRange: this.isInSelectedRange(day),\r\n      isInComparedRange: comparedRange && comparedRange.start && comparedRange.end\r\n        && isCivilDateInRange(day.originalDate, comparedRange),\r\n      isSelectedRangeStartOrEnd: selectedRange && selectedRange.start && selectedRange.end\r\n        && isCivilDateRangeStartOrEnd(day.originalDate, selectedRange),\r\n      isComparedRangeStartOrEnd: comparedRange && comparedRange.start && comparedRange.end\r\n        && isCivilDateRangeStartOrEnd(day.originalDate, comparedRange),\r\n    });\r\n  }\r\n\r\n  isInSelectedRange(day) {\r\n    const [selectedRange] = this.props.selectedRanges.length > 0 ?\r\n      this.props.selectedRanges : this.props.defaultSelectedRanges;\r\n\r\n    return selectedRange && selectedRange.start && selectedRange.end\r\n      && isCivilDateInRange(day.originalDate, selectedRange);\r\n  }\r\n\r\n  addDay = (date, days) => {\r\n    if (date === null) {\r\n      // eslint-disable-next-line no-param-reassign\r\n      date = convertCivilTimeToDate(this.props.today);\r\n    }\r\n    const result = new Date(date.getTime());\r\n    result.setDate(result.getDate() + days);\r\n    if (result.getMonth() !== date.getMonth()) {\r\n      if (days > 0) {\r\n        this.onNavigateToNextMonth();\r\n      } else {\r\n        this.onNavigateToPrevMonth();\r\n      }\r\n    }\r\n    return result;\r\n  }\r\n\r\n  updateNavigateDate = (newNavigateDate) => {\r\n    this.setState({\r\n      navigatedDate: newNavigateDate,\r\n      weeks: this.getWeeks(this.props, newNavigateDate, this.state.selectedDate),\r\n    });\r\n    if (this.props.onNavigateDate) {\r\n      this.props.onNavigateDate(newNavigateDate, false);\r\n    }\r\n  }\r\n\r\n  focusItemCallback = (date) => {\r\n    this.setState({\r\n      focusedDate: date,\r\n    });\r\n  }\r\n\r\n  handleMonthPickerClick = () => {\r\n    this.setState({\r\n      showMonthPicker: true,\r\n    });\r\n  }\r\n\r\n  renderMonthLevelCalendarMonth = ({\r\n    i18n,\r\n    maxDate,\r\n    selectedDate,\r\n    minDate,\r\n    isLeftNavigateVisible,\r\n    isRightNavigateVisible,\r\n  }) => (\r\n    <CalendarMonth\r\n      i18n={i18n}\r\n      onSelectMonth={(month, year) => this.onSelectDate(new CivilDate(year, month + 1, 1))}\r\n      selectedDate={selectedDate}\r\n      minDate={minDate}\r\n      maxDate={maxDate}\r\n      navigatedDate={this.state.navigatedDate}\r\n      isLeftNavigateVisible={isLeftNavigateVisible}\r\n      isRightNavigateVisible={isRightNavigateVisible}\r\n      selectedRanges={this.props.selectedRanges}\r\n      defaultSelectedRanges={this.props.defaultSelectedRanges}\r\n      isMonthRangePicker={this.props.isMonthRangePicker}\r\n      onNavigateDate={this.updateNavigateDate}\r\n    />\r\n  );\r\n\r\n  renderDateLevelCalendar = ({\r\n    showMonthPicker,\r\n    isMonthPickerEnabled,\r\n    i18n,\r\n    maxDate,\r\n    selectedDate,\r\n    minDate,\r\n    isLeftNavigateVisible,\r\n    prevMonthInBounds,\r\n    monthYear,\r\n    nextMonthYear,\r\n    prevMonthYear,\r\n    isRightNavigateVisible,\r\n    nextMonthInBounds,\r\n    isAriaLabelTranslated,\r\n    curWeekDays,\r\n  }) => (\r\n    showMonthPicker && isMonthPickerEnabled\r\n      ? <CalendarMonth\r\n        i18n={i18n}\r\n        onSelectMonth={this.onSelectMonth}\r\n        selectedDate={selectedDate}\r\n        minDate={minDate}\r\n        maxDate={maxDate}\r\n      />\r\n      : (\r\n        <div className=\"single-month-calendar\">\r\n          <div className=\"header\">\r\n            <div className=\"monthComponents\">\r\n              <div className=\"navContainer\" aria-live=\"polite\">\r\n                {isLeftNavigateVisible && (\r\n                  <div\r\n                    className=\"prevMonth\"\r\n                    tabIndex=\"0\"\r\n                    role=\"button\"\r\n                    aria-label={isAriaLabelTranslated ? i18n.getString(_TL_('Previous month {{prevMonthYear}}'), { prevMonthYear }) : `Previous month ${prevMonthYear}`}\r\n                    disabled={!prevMonthInBounds}\r\n                    onClick={prevMonthInBounds ? this.onNavigateToPrevMonth : undefined}\r\n                    onKeyDown={prevMonthInBounds ?\r\n                      event => submitEvent(this.onNavigateToPrevMonth)({ keyCode: event.which })\r\n                      : undefined}\r\n                  >\r\n                    <span className=\"glyphicon glyphicon-menu-left\" />\r\n                  </div>\r\n                )}\r\n                <div className=\"monthAndYear\">\r\n                  {\r\n                    isMonthPickerEnabled ?\r\n                      <div\r\n                        role=\"button\"\r\n                        tabIndex=\"0\"\r\n                        onClick={this.handleMonthPickerClick}\r\n                        onKeyDown={\r\n                          event =>\r\n                            submitEvent(this.handleMonthPickerClick)({ keyCode: event.which })\r\n                        }\r\n                        className={isMonthPickerEnabled ? 'monthYearButton' : ''}\r\n                      >\r\n                        {monthYear}\r\n                      </div>\r\n                      : <span> {monthYear} </span>\r\n                  }\r\n                </div>\r\n                {isRightNavigateVisible && (\r\n                  <div\r\n                    className=\"nextMonth\"\r\n                    tabIndex=\"0\"\r\n                    role=\"button\"\r\n                    aria-label={isAriaLabelTranslated ? i18n.getString(_TL_('Next month {{nextMonthYear}}'), { nextMonthYear }) : `Next month ${nextMonthYear}`}\r\n                    disabled={!nextMonthInBounds}\r\n                    onClick={nextMonthInBounds ? this.onNavigateToNextMonth : undefined}\r\n                    onKeyDown={nextMonthInBounds ?\r\n                      event => submitEvent(this.onNavigateToNextMonth)({ keyCode: event.which })\r\n                      : undefined}\r\n                  >\r\n                    <span className=\"glyphicon glyphicon-menu-right\" />\r\n                  </div>\r\n                )}\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div>\r\n            <table className=\"table\" role=\"grid\" >\r\n              <thead>\r\n                <tr>\r\n                  {curWeekDays.map((val, index) => (\r\n                    <th\r\n                      className=\"weekday\"\r\n                      key={index.toString()}\r\n                      role=\"columnheader\"\r\n                      scope=\"col\"\r\n                      title={i18n.getDayOfWeek(val, { style: 'wide' })}\r\n                      aria-label={i18n.getDayOfWeek(val, { style: 'wide' })}\r\n                    >\r\n                      {i18n.getDayOfWeek(val, { style: 'narrow' })}\r\n                    </th>\r\n                  ))}\r\n                </tr>\r\n              </thead>\r\n              <tbody>\r\n                {this.state.weeks.map((week, index) => (\r\n                  <tr\r\n                    role=\"row\"\r\n                    key={index.toString()}\r\n                  >\r\n                    {week.map((day, dayIndex) => {\r\n                      const weekIdx = index;\r\n                      const dayIdx = dayIndex;\r\n                      return (\r\n                        <DayItem\r\n                          key={(weekIdx * 7) + dayIdx}\r\n                          i18n={i18n}\r\n                          day={day}\r\n                          date={day.formattedDate}\r\n                          formatMonthDayYear={formatMonthDayYear}\r\n                          formatDay={formatDay}\r\n                          isFocused={\r\n                            !!(this.state.focusedDate\r\n                              && (day.formattedDate.getTime()\r\n                                === this.state.focusedDate.getTime()))\r\n                          }\r\n                          dayClass={this.getDayClass(day)}\r\n                          focusItemCallback={this.focusItemCallback}\r\n                          isInSelectedRange={this.isInSelectedRange(day)}\r\n                        />\r\n                      );\r\n                    })}\r\n                  </tr>\r\n                ))}\r\n              </tbody>\r\n            </table>\r\n          </div>\r\n        </div>\r\n      )\r\n  )\r\n\r\n  render() {\r\n    const {\r\n      navigatedDate,\r\n      showMonthPicker,\r\n      selectedDate,\r\n    } = this.state;\r\n    const {\r\n      minDate,\r\n      maxDate,\r\n      isLeftNavigateVisible,\r\n      isRightNavigateVisible,\r\n      i18n,\r\n      isMonthPickerEnabled,\r\n      isMonthRangePicker,\r\n      isAriaLabelTranslated,\r\n    } = this.props;\r\n    // determine if previous/next months are in bounds\r\n    const prevMonthInBounds = !minDate ||\r\n      compareCivilDate(minDate, getCivilDateMonthStart(navigatedDate)) <= 0;\r\n    const nextMonthInBounds = !maxDate ||\r\n      compareCivilDate(getCivilDateMonthEnd(navigatedDate), maxDate) <= 0;\r\n    const monthYear = formatMonthYear(navigatedDate, i18n);\r\n    const prevMonth = new CivilDate(navigatedDate.year, navigatedDate.month - 1, 1);\r\n    const prevMonthYear = formatMonthYear(prevMonth, i18n);\r\n    const nextMonth = new CivilDate(navigatedDate.year, navigatedDate.month + 1, 1);\r\n    const nextMonthYear = formatMonthYear(nextMonth, i18n);\r\n    // Apply first day of week from i18n for countries\r\n    const firstDayOfMonthIndex = weekDays.indexOf(i18n.getFirstDayOfWeek());\r\n    const curWeekDays =\r\n    firstDayOfMonthIndex ?\r\n      weekDays.slice(firstDayOfMonthIndex).concat(weekDays.slice(0, firstDayOfMonthIndex)) :\r\n      weekDays;\r\n\r\n    const props = {\r\n      showMonthPicker,\r\n      isMonthPickerEnabled,\r\n      i18n,\r\n      maxDate,\r\n      selectedDate,\r\n      minDate,\r\n      isLeftNavigateVisible,\r\n      prevMonthInBounds,\r\n      monthYear,\r\n      nextMonthYear,\r\n      prevMonthYear,\r\n      isRightNavigateVisible,\r\n      nextMonthInBounds,\r\n      isAriaLabelTranslated,\r\n      curWeekDays,\r\n    };\r\n\r\n    return isMonthRangePicker\r\n      ? this.renderMonthLevelCalendarMonth(props)\r\n      : this.renderDateLevelCalendar(props);\r\n  }\r\n}\r\n\r\nexport const SingleMonthCalendar = WithArrowKeys(SingleMonthCalendarInternal);\r\n","import React from 'react';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { WithManagedFocuser } from '@bingads-webui-react/hoc-with-managed-focuser';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport PropTypes from 'prop-types';\r\n\r\nclass DayItemInternal extends React.PureComponent {\r\n  onFocusHandler = () => {\r\n    this.props.focusItemCallback(this.props.date);\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      day,\r\n      i18n,\r\n      formatDay,\r\n      formatMonthDayYear,\r\n      dayClass,\r\n      focusableRef,\r\n      focusThis,\r\n      isInSelectedRange,\r\n    } = this.props;\r\n\r\n    return (\r\n      <td\r\n        key={day.key}\r\n        ref={focusableRef}\r\n        role=\"gridcell\"\r\n        tabIndex={day.isFirstDayOfMonth ? '0' : '-1'}\r\n        data-value={formatDay(day.originalDate, i18n)}\r\n        className={`dayWrapper ${dayClass}`}\r\n        onClick={focusThis && day.isInBounds ? day.onSelected : undefined}\r\n        aria-label={formatMonthDayYear(\r\n          day.originalDate,\r\n          i18n\r\n        )}\r\n        onKeyDown={day.isInBounds ?\r\n          event => submitEvent(day.onSelected)({ keyCode: event.which }) :\r\n          undefined}\r\n        onFocus={this.onFocusHandler}\r\n        aria-selected={isInSelectedRange}\r\n      >\r\n        <button\r\n          key={`${day.key} div`}\r\n          className=\"day\"\r\n          aria-label={formatMonthDayYear(\r\n            day.originalDate,\r\n            i18n\r\n          )}\r\n          tabIndex=\"-1\"\r\n          data-is-focusable={day.isInBounds ? true : undefined}\r\n          disabled={!day.isInBounds || !day.isInMonth}\r\n        >\r\n          <span aria-hidden=\"true\">{formatDay(day.originalDate, i18n)}</span>\r\n        </button>\r\n      </td >\r\n    );\r\n  }\r\n}\r\n\r\nDayItemInternal.propTypes = {\r\n  day: PropTypes.shape({\r\n    key: PropTypes.string,\r\n    isInBounds: PropTypes.bool,\r\n    onSelected: PropTypes.func,\r\n    isSelected: PropTypes.bool,\r\n    isToday: PropTypes.bool,\r\n    isInMonth: PropTypes.bool,\r\n    date: PropTypes.number,\r\n    originalDate: PropTypes.instanceOf(CivilDate),\r\n  }).isRequired,\r\n  formatMonthDayYear: PropTypes.func.isRequired,\r\n  formatDay: PropTypes.func.isRequired,\r\n  i18n: PropTypes.shape({}).isRequired,\r\n  dayClass: PropTypes.string.isRequired,\r\n  focusItemCallback: PropTypes.func.isRequired,\r\n  focusableRef: PropTypes.func,\r\n  date: PropTypes.instanceOf(Date).isRequired,\r\n  focusThis: PropTypes.func.isRequired,\r\n  isInSelectedRange: PropTypes.bool,\r\n};\r\n\r\nDayItemInternal.defaultProps = {\r\n  focusableRef: null,\r\n  isInSelectedRange: undefined,\r\n};\r\n\r\nexport const DayItem = WithManagedFocuser(DayItemInternal);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport _ from 'underscore';\r\nimport { compareCivilMonth, isCivilMonthInRange } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { WithArrowKeys } from '@bingads-webui-react/hoc-with-arrow-keys';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\n\r\nimport { MonthsGroup, MonthsRowCount } from './constants';\r\nimport { MonthItem } from './month-item';\r\nimport { CalendarYear } from './calendar-year';\r\nimport './month-calender.less';\r\n\r\nconst formatMonth = (monthIndex, i18n) => i18n.getMonth(monthIndex + 1, { style: 'abbreviated' });\r\nexport const generateKey = (row, column) => (row * MonthsRowCount) + column;\r\n\r\nclass CalendarMonthInternal extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n    this.state = {\r\n      navigatedYear: props.isMonthRangePicker\r\n        ? props.navigatedDate.year\r\n        : props.selectedDate.year,\r\n      showYearPicker: false,\r\n      focusedMonth: 0,\r\n    };\r\n\r\n    const {\r\n      observable,\r\n    } = props;\r\n\r\n    let targetDate = null;\r\n    const observer = {\r\n      next: (data) => {\r\n        if (this.state.showYearPicker) {\r\n          return;\r\n        }\r\n\r\n        switch (data) {\r\n          case keyCode.ArrowUp:\r\n            targetDate = this.addMonth(this.state.focusedMonth, -1 * MonthsRowCount);\r\n            this.setState({\r\n              focusedMonth: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowDown:\r\n            targetDate = this.addMonth(this.state.focusedMonth, MonthsRowCount);\r\n            this.setState({\r\n              focusedMonth: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowLeft:\r\n            targetDate = this.addMonth(this.state.focusedMonth, -1);\r\n            this.setState({\r\n              focusedMonth: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowRight:\r\n            targetDate = this.addMonth(this.state.focusedMonth, 1);\r\n            this.setState({\r\n              focusedMonth: targetDate,\r\n            });\r\n            break;\r\n          default:\r\n            break;\r\n        }\r\n      },\r\n    };\r\n\r\n    observable.subscribe(observer);\r\n  }\r\n\r\n  onSelectYear = (year) => {\r\n    this.setState({\r\n      showYearPicker: false,\r\n    });\r\n    this.navigateYear(year);\r\n  }\r\n\r\n  getMonths = (year) => {\r\n    const { selectedDate } = this.props;\r\n    const [selectedRange] = this.props.selectedRanges.length > 0\r\n      ? this.props.selectedRanges\r\n      : this.props.defaultSelectedRanges;\r\n    const {\r\n      minDate,\r\n      maxDate,\r\n    } = this.props;\r\n\r\n    let date = new CivilDate(year, 0, 1);\r\n\r\n    return MonthsGroup.map(monthRows => monthRows.map((month) => {\r\n      date = date.plus({ months: 1 });\r\n      return {\r\n        key: month,\r\n        isSelected: selectedDate\r\n          ? compareCivilMonth(date, selectedDate) === 0\r\n          : false,\r\n        isInSelectedRange: selectedRange && selectedRange.start && selectedRange.end\r\n          && isCivilMonthInRange(date, selectedRange),\r\n        isSelectedRangeStartOrEnd: selectedRange && selectedRange.start && selectedRange.end\r\n          && _.some(selectedRange, boundary =>\r\n            compareCivilMonth(date, boundary) === 0),\r\n        isInBounds: (!minDate || compareCivilMonth(minDate, date) <= 0) &&\r\n          (!maxDate || compareCivilMonth(date, maxDate) <= 0),\r\n      };\r\n    }));\r\n  }\r\n\r\n  getNavigateYear = () => (this.props.isMonthRangePicker\r\n    ? this.props.navigatedDate.year\r\n    : this.state.navigatedYear);\r\n\r\n  getMonthItemClasses = (month) => {\r\n    if (!this.props.isMonthRangePicker) { return null; }\r\n\r\n    return classNames({\r\n      isSelected: month.isSelected,\r\n      isInSelectedRange: month.isInSelectedRange,\r\n      isSelectedRangeStartOrEnd: month.isSelectedRangeStartOrEnd,\r\n      isInBounds: month.isInBounds,\r\n    });\r\n  }\r\n\r\n  addMonth = (date, month) => {\r\n    if (month + date > 12 || month + date < 0) {\r\n      return this.state.focusedMonth;\r\n    }\r\n    return date + month;\r\n  }\r\n\r\n  navigateYear = (nextYear) => {\r\n    if (this.props.isMonthRangePicker) {\r\n      if (this.props.onNavigateDate) {\r\n        this.props.onNavigateDate(new CivilDate(nextYear, 1, 1), false);\r\n      }\r\n    } else {\r\n      this.setState({\r\n        navigatedYear: nextYear,\r\n      });\r\n    }\r\n  }\r\n\r\n  navigateToNextYear = () => {\r\n    if (this.canNavigateToNextYear()) {\r\n      this.navigateYear(this.getNavigateYear() + 1);\r\n    }\r\n  }\r\n\r\n  navigateToPrevYear = () => {\r\n    if (this.canNavigateToPrevYear()) {\r\n      this.navigateYear(this.getNavigateYear() - 1);\r\n    }\r\n  }\r\n\r\n  canNavigateToPrevYear = () => {\r\n    const { minDate } = this.props;\r\n    return !minDate || minDate.year < this.getNavigateYear();\r\n  }\r\n\r\n  canNavigateToNextYear = () => {\r\n    const { maxDate } = this.props;\r\n    return !maxDate || maxDate.year > this.getNavigateYear();\r\n  }\r\n\r\n  handleYearPickClick = () => {\r\n    this.setState({\r\n      showYearPicker: true,\r\n    });\r\n  }\r\n\r\n  focusItemCallback = (monthIdx) => {\r\n    this.setState({\r\n      focusedMonth: monthIdx,\r\n    });\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      i18n,\r\n      minDate,\r\n      maxDate,\r\n      isMonthRangePicker,\r\n      isLeftNavigateVisible,\r\n      isRightNavigateVisible,\r\n      onSelectMonth,\r\n    } = this.props;\r\n\r\n    const navigateYear = this.getNavigateYear();\r\n    const months = this.getMonths(navigateYear);\r\n\r\n    return (\r\n      this.state.showYearPicker\r\n        ? <CalendarYear\r\n          i18n={i18n}\r\n          onSelectYear={this.onSelectYear}\r\n          year={this.getNavigateYear()}\r\n          minDate={minDate}\r\n          maxDate={maxDate}\r\n        />\r\n        : (\r\n          <div className={classNames('calendar-month', { 'calendar-month-range-picker': isMonthRangePicker })}>\r\n            <div className=\"header\">\r\n              <div className=\"year-components\">\r\n                <div className=\"navContainer\">\r\n                  {\r\n                    isLeftNavigateVisible && (\r\n                      <div\r\n                        className=\"prevMonth\"\r\n                        tabIndex=\"0\"\r\n                        role=\"button\"\r\n                        onClick={this.navigateToPrevYear}\r\n                        onKeyDown={this.canNavigateToPrevYear() ?\r\n                          event => submitEvent(this.navigateToPrevYear)({ keyCode: event.which })\r\n                          : undefined}\r\n                      >\r\n                        <span className={classNames([this.canNavigateToPrevYear() ? '' : 'disabled', 'glyphicon', 'glyphicon-menu-left'])} />\r\n                      </div>\r\n                    )\r\n                  }\r\n                  <div className=\"monthAndYear\">\r\n                    {\r\n                      isMonthRangePicker ? (\r\n                        <div>{navigateYear}</div>\r\n                      ) : (\r\n                        <div\r\n                          role=\"button\"\r\n                          tabIndex=\"0\"\r\n                          className=\"monthYearButton\"\r\n                          onClick={this.handleYearPickClick}\r\n                          onKeyDown={\r\n                            event => submitEvent(this.handleYearPickClick)({ keyCode: event.which })\r\n                          }\r\n                        >\r\n                          {navigateYear}\r\n                        </div>\r\n                      )\r\n                    }\r\n                  </div>\r\n                  {\r\n                    isRightNavigateVisible && (\r\n                      <div\r\n                        className=\"nextMonth\"\r\n                        tabIndex=\"0\"\r\n                        role=\"button\"\r\n                        onClick={this.navigateToNextYear}\r\n                        onKeyDown={this.canNavigateToNextYear() ?\r\n                          event => submitEvent(this.navigateToNextYear)({ keyCode: event.which })\r\n                          : undefined}\r\n                      >\r\n                        <span className={classNames([this.canNavigateToNextYear() ? '' : 'disabled', 'glyphicon', 'glyphicon-menu-right'])} />\r\n                      </div>\r\n                    )\r\n                  }\r\n                </div>\r\n              </div>\r\n              <div>\r\n                <table className=\"table\">\r\n                  <tbody>\r\n                    {\r\n                      _.map(months, (month, index) => (\r\n                        <tr\r\n                          className=\"row\"\r\n                          key={index}\r\n                        >\r\n                          {\r\n                            _.map(month, (monthItem, monthIndex) => {\r\n                              const idx = index;\r\n                              return (\r\n                                <MonthItem\r\n                                  month={monthItem}\r\n                                  key={generateKey(idx, monthIndex)}\r\n                                  monthIdx={generateKey(idx, monthIndex)}\r\n                                  year={navigateYear}\r\n                                  onSelectMonth={onSelectMonth}\r\n                                  formatMonth={formatMonth}\r\n                                  i18n={i18n}\r\n                                  monthClass={this.getMonthItemClasses(monthItem)}\r\n                                  isFocused={\r\n                                    (idx * MonthsRowCount) + monthIndex === this.state.focusedMonth\r\n                                  }\r\n                                  focusItemCallback={this.focusItemCallback}\r\n                                  isMonthRangePicker={isMonthRangePicker}\r\n                                />\r\n                              );\r\n                            })\r\n                          }\r\n\r\n                        </tr>\r\n                    ))}\r\n                  </tbody>\r\n                </table>\r\n              </div>\r\n            </div>\r\n          </div>\r\n        ));\r\n  }\r\n}\r\n\r\nCalendarMonthInternal.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getToday: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  navigatedDate: PropTypes.instanceOf(CivilDate),\r\n  onSelectMonth: PropTypes.func.isRequired,\r\n  observable: PropTypes.shape({\r\n    subscribe: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  selectedDate: PropTypes.instanceOf(CivilDate),\r\n  minDate: PropTypes.instanceOf(CivilDate).isRequired,\r\n  maxDate: PropTypes.instanceOf(CivilDate).isRequired,\r\n  isMonthRangePicker: PropTypes.bool,\r\n  defaultSelectedRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  })),\r\n  selectedRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  })),\r\n  isLeftNavigateVisible: PropTypes.bool,\r\n  isRightNavigateVisible: PropTypes.bool,\r\n  onNavigateDate: PropTypes.func,\r\n};\r\n\r\nCalendarMonthInternal.defaultProps = {\r\n  navigatedDate: undefined,\r\n  isMonthRangePicker: false,\r\n  selectedDate: undefined,\r\n  defaultSelectedRanges: [],\r\n  selectedRanges: [],\r\n  isLeftNavigateVisible: true,\r\n  isRightNavigateVisible: true,\r\n  onNavigateDate: undefined,\r\n};\r\n\r\nexport const CalendarMonth = WithArrowKeys(CalendarMonthInternal);\r\n","import _ from 'underscore';\r\n\r\nexport const Months = [\r\n  'jan', 'feb', 'mar', 'apr',\r\n  'may', 'jun', 'jul', 'aug',\r\n  'sept', 'oct', 'nov', 'dec',\r\n];\r\n\r\nexport const MonthsRowCount = 4;\r\n\r\nexport const MonthsGroup = _.chain(Months)\r\n  .groupBy((m, index) => (Math.floor(index / MonthsRowCount)))\r\n  .values()\r\n  .value();\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { WithManagedFocuser } from '@bingads-webui-react/hoc-with-managed-focuser';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport './month-calender.less';\r\n\r\nclass MonthItemInternal extends React.PureComponent {\r\n  onFocusHandler = () => {\r\n    this.props.focusItemCallback(this.props.monthIdx);\r\n  }\r\n\r\n  handleMonthSelect = () => {\r\n    const {\r\n      onSelectMonth,\r\n      monthIdx,\r\n      year,\r\n      isMonthRangePicker,\r\n      month,\r\n    } = this.props;\r\n    if (isMonthRangePicker && !month.isInBounds) {\r\n      return;\r\n    }\r\n\r\n    onSelectMonth(monthIdx, year);\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      monthIdx,\r\n      formatMonth,\r\n      i18n,\r\n      focusableRef,\r\n      focusThis,\r\n      monthClass,\r\n    } = this.props;\r\n\r\n    return (\r\n      <td\r\n        key={monthIdx}\r\n        ref={focusableRef}\r\n        role=\"gridcell\"\r\n        tabIndex={monthIdx === 0 ? '0' : '-1'}\r\n        className={`monthItem-${formatMonth(monthIdx, i18n)} ${monthClass}`}\r\n        onKeyDown={event => submitEvent(this.handleMonthSelect)({ keyCode: event.which })}\r\n        onClick={focusThis && this.handleMonthSelect}\r\n        onFocus={this.onFocusHandler}\r\n      >\r\n        <div\r\n          className=\"day\"\r\n          role=\"gridcell\"\r\n        >\r\n          <span aria-hidden=\"true\">{formatMonth(monthIdx, i18n)}</span>\r\n        </div>\r\n      </td>\r\n    );\r\n  }\r\n}\r\n\r\nMonthItemInternal.propTypes = {\r\n  monthIdx: PropTypes.number.isRequired,\r\n  year: PropTypes.number.isRequired,\r\n  i18n: PropTypes.shape({}).isRequired,\r\n  formatMonth: PropTypes.func.isRequired,\r\n  onSelectMonth: PropTypes.func.isRequired,\r\n  focusThis: PropTypes.func.isRequired,\r\n  focusItemCallback: PropTypes.func.isRequired,\r\n  focusableRef: PropTypes.func,\r\n  monthClass: PropTypes.string,\r\n  isMonthRangePicker: PropTypes.bool,\r\n  month: PropTypes.shape({}),\r\n};\r\n\r\nMonthItemInternal.defaultProps = {\r\n  focusableRef: null,\r\n  monthClass: '',\r\n  isMonthRangePicker: false,\r\n  month: {},\r\n};\r\n\r\n\r\nexport const MonthItem = WithManagedFocuser(MonthItemInternal);\r\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/less-loader/dist/cjs.js??ref--17-2!./month-calender.less\");\nif(typeof content === 'string') content = [[module.id, content, '']];\n// add the styles to the DOM\nvar update = require(\"!../../../../node_modules/style-loader/addStyles.js\")(content, {});\nif(content.locals) module.exports = content.locals;\n// Hot Module Replacement\nif(module.hot) {\n\t// When the styles change, update the <style> tags\n\tif(!content.locals) {\n\t\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/less-loader/dist/cjs.js??ref--17-2!./month-calender.less\", function() {\n\t\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/less-loader/dist/cjs.js??ref--17-2!./month-calender.less\");\n\t\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\t\t\tupdate(newContent);\n\t\t});\n\t}\n\t// When the module is disposed, remove the <style> tags\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".calendar-month table td {\\n  width: 40px;\\n  height: 40px;\\n}\\n.calendar-month table td:hover {\\n  background-color: #edebe9;\\n}\\n.calendar-month .monthYearButton {\\n  font-weight: 600;\\n}\\n.calendar-month .monthYearButton:hover {\\n  color: #000000;\\n}\\n.calendar-month .disabled {\\n  color: #c8c6c4;\\n}\\n.calendar-year table td {\\n  width: 40px;\\n  height: 40px;\\n}\\n.calendar-year table td:hover {\\n  background-color: #edebe9;\\n}\\n.calendar-year .monthYearButton {\\n  font-weight: 600;\\n}\\n.calendar-year .monthYearButton:hover {\\n  color: #000000;\\n}\\n.calendar-year .disabled {\\n  color: #c8c6c4;\\n}\\n.single-month-calendar .monthYearButton {\\n  font-weight: 600;\\n}\\n.single-month-calendar .monthYearButton:hover {\\n  color: #000000;\\n}\\n.single-month-calendar table td {\\n  padding: 3.5px 0px  !important;\\n}\\n.single-month-calendar .day {\\n  border: none;\\n  background-color: inherit;\\n  padding: 0;\\n}\\n\", \"\"]);\n\n// exports\n","\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport _ from 'underscore';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { WithArrowKeys } from '@bingads-webui-react/hoc-with-arrow-keys';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\n\r\nimport { generateKey } from './calendar-month';\r\nimport { YearItem } from './year-item';\r\n\r\nclass CalendarYearInternal extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n    this.state = {\r\n      yearStart: props.year,\r\n      yearEnd: props.year + 11,\r\n      focusedYear: props.year,\r\n    };\r\n    const {\r\n      observable,\r\n    } = props;\r\n\r\n    let targetDate = null;\r\n    const observer = {\r\n      next: (data) => {\r\n        switch (data) {\r\n          case keyCode.ArrowUp:\r\n            targetDate = this.addYear(this.state.focusedYear, -4);\r\n            this.setState({\r\n              focusedYear: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowDown:\r\n            targetDate = this.addYear(this.state.focusedYear, 4);\r\n            this.setState({\r\n              focusedYear: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowLeft:\r\n            targetDate = this.addYear(this.state.focusedYear, -1);\r\n            this.setState({\r\n              focusedYear: targetDate,\r\n            });\r\n            break;\r\n          case keyCode.ArrowRight:\r\n            targetDate = this.addYear(this.state.focusedYear, 1);\r\n            this.setState({\r\n              focusedYear: targetDate,\r\n            });\r\n            break;\r\n          default:\r\n            break;\r\n        }\r\n      },\r\n    };\r\n    observable.subscribe(observer);\r\n  }\r\n\r\n  getRange = () => {\r\n    const {\r\n      yearStart,\r\n      yearEnd,\r\n    } = this.state;\r\n\r\n    const years = _.range(yearStart, yearEnd + 1);\r\n    const result = [];\r\n    const { length } = years;\r\n    let i = 0;\r\n    while (i < length) {\r\n      const tempArr = years.slice(i, i + 4);\r\n      result.push(tempArr);\r\n      i += 4;\r\n    }\r\n    return result;\r\n  }\r\n\r\n  addYear = (date, year) => {\r\n    if (year + date > this.state.yearEnd || year + date < this.state.yearStart) {\r\n      return this.state.focusedYear;\r\n    }\r\n    return date + year;\r\n  }\r\n\r\n  isYearInRange = (year) => {\r\n    const { maxDate, minDate } = this.props;\r\n    if (minDate && year < minDate.year) return false;\r\n    if (maxDate && year > maxDate.year) return false;\r\n    return true;\r\n  }\r\n\r\n  canNavigateToPrevYearRange = () => {\r\n    const { minDate } = this.props;\r\n    return !minDate || this.state.yearStart > minDate.year;\r\n  }\r\n\r\n  canNavigateToNextYearRange = () => {\r\n    const { maxDate } = this.props;\r\n    return !maxDate || this.state.yearEnd < maxDate.year;\r\n  }\r\n\r\n  navigateToPrevYearRange = () => {\r\n    if (this.canNavigateToPrevYearRange()) {\r\n      this.setState(prevState => ({\r\n        yearEnd: prevState.yearStart - 1,\r\n        yearStart: prevState.yearStart - 12,\r\n      }));\r\n    }\r\n  }\r\n\r\n  navigateToNextYearRange = () => {\r\n    if (this.canNavigateToNextYearRange()) {\r\n      this.setState(prevState => ({\r\n        yearEnd: prevState.yearEnd + 12,\r\n        yearStart: prevState.yearEnd + 1,\r\n      }));\r\n    }\r\n  }\r\n\r\n  focusItemCallback = (year) => {\r\n    this.setState({\r\n      focusedYear: year,\r\n    });\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      yearStart,\r\n      yearEnd,\r\n    } = this.state;\r\n\r\n    const {\r\n      onSelectYear,\r\n    } = this.props;\r\n\r\n    const years = this.getRange();\r\n    return (\r\n      <div className=\"calendar-year\">\r\n        <div className=\"header\">\r\n          <div className=\"year-range\">\r\n            <div className=\"navContainer\">\r\n              <div\r\n                className=\"prevMonth\"\r\n                tabIndex=\"0\"\r\n                role=\"button\"\r\n                onClick={this.navigateToPrevYearRange}\r\n                onKeyDown={this.canNavigateToPrevYearRange() ?\r\n                  event => submitEvent(this.navigateToPrevYearRange)({ keyCode: event.which })\r\n                  : undefined}\r\n              >\r\n                <span className={classNames([this.canNavigateToPrevYearRange() ? '' : 'disabled', 'glyphicon', 'glyphicon-menu-left'])} />\r\n              </div>\r\n              <div className=\"monthAndYear monthYearButton\">\r\n                <span> {yearStart} - {yearEnd} </span>\r\n              </div>\r\n              <div\r\n                className=\"nextMonth\"\r\n                tabIndex=\"0\"\r\n                role=\"button\"\r\n                onClick={this.navigateToNextYearRange}\r\n                onKeyDown={this.canNavigateToNextYearRange() ?\r\n                  event => submitEvent(this.navigateToNextYearRange)({ keyCode: event.which })\r\n                  : undefined}\r\n              >\r\n                <span className={classNames([this.canNavigateToNextYearRange() ? '' : 'disabled', 'glyphicon', 'glyphicon-menu-right'])} />\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div>\r\n            <table>\r\n              <tbody>\r\n                {\r\n                  _.map(years, (yearRange, index) => (\r\n                    <tr\r\n                      className=\"row\"\r\n                      key={index}\r\n                    >\r\n                      {\r\n                        _.map(yearRange, (year, yearIndex) => {\r\n                          const idx = index;\r\n                          return (\r\n                            <YearItem\r\n                              key={generateKey(idx, yearIndex)}\r\n                              yearIdx={generateKey(idx, yearIndex)}\r\n                              year={year}\r\n                              isYearInRange={this.isYearInRange}\r\n                              onSelectYear={onSelectYear}\r\n                              focusItemCallback={this.focusItemCallback}\r\n                              isFocused={\r\n                                year === this.state.focusedYear\r\n                              }\r\n                            />\r\n                          );\r\n                        })\r\n                      }\r\n\r\n                    </tr>\r\n                ))}\r\n              </tbody>\r\n            </table>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nCalendarYearInternal.propTypes = {\r\n  year: PropTypes.number.isRequired,\r\n  onSelectYear: PropTypes.func.isRequired,\r\n  observable: PropTypes.shape({\r\n    subscribe: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  minDate: PropTypes.instanceOf(CivilDate).isRequired,\r\n  maxDate: PropTypes.instanceOf(CivilDate).isRequired,\r\n};\r\n\r\nexport const CalendarYear = WithArrowKeys(CalendarYearInternal);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { WithManagedFocuser } from '@bingads-webui-react/hoc-with-managed-focuser';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport './month-calender.less';\r\n\r\nclass YearItemInternal extends React.PureComponent {\r\n  onFocusHandler = () => {\r\n    this.props.focusItemCallback(this.props.year);\r\n  }\r\n\r\n  handleYearSelect = () => {\r\n    const {\r\n      onSelectYear,\r\n      year,\r\n      isYearInRange,\r\n    } = this.props;\r\n    if (isYearInRange(year)) {\r\n      onSelectYear(year);\r\n    }\r\n  }\r\n  render() {\r\n    const {\r\n      yearIdx,\r\n      year,\r\n      isYearInRange,\r\n      focusableRef,\r\n      focusThis,\r\n    } = this.props;\r\n\r\n    return (\r\n      <td\r\n        key={yearIdx}\r\n        ref={focusableRef}\r\n        role=\"gridcell\"\r\n        className={classNames([isYearInRange(year) ? '' : 'disabled', `yearItem-${year}`])}\r\n        onKeyDown={event => submitEvent(this.handleYearSelect)({ keyCode: event.which })}\r\n        tabIndex={yearIdx === 0 ? '0' : '-1'}\r\n        onClick={focusThis && this.handleYearSelect}\r\n        onFocus={this.onFocusHandler}\r\n      >\r\n        <div\r\n          className=\"day\"\r\n          role=\"gridcell\"\r\n        >\r\n          <span aria-hidden=\"true\">{year}</span>\r\n        </div>\r\n      </td>\r\n    );\r\n  }\r\n}\r\n\r\nYearItemInternal.propTypes = {\r\n  yearIdx: PropTypes.number.isRequired,\r\n  year: PropTypes.number.isRequired,\r\n  onSelectYear: PropTypes.func.isRequired,\r\n  isYearInRange: PropTypes.func.isRequired,\r\n  focusThis: PropTypes.func.isRequired,\r\n  focusableRef: PropTypes.func,\r\n  focusItemCallback: PropTypes.func.isRequired,\r\n};\r\n\r\nYearItemInternal.defaultProps = {\r\n  focusableRef: null,\r\n};\r\n\r\nexport const YearItem = WithManagedFocuser(YearItemInternal);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__156__;","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t//  when a module is imported multiple times with different media queries.\n\t\t\t//  I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n","/*\r\n\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\tAuthor Tobias Koppers @sokra\r\n*/\r\nvar stylesInDom = {},\r\n\tmemoize = function(fn) {\r\n\t\tvar memo;\r\n\t\treturn function () {\r\n\t\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\r\n\t\t\treturn memo;\r\n\t\t};\r\n\t},\r\n\tisOldIE = memoize(function() {\r\n\t\treturn /msie [6-9]\\b/.test(window.navigator.userAgent.toLowerCase());\r\n\t}),\r\n\tgetHeadElement = memoize(function () {\r\n\t\treturn document.head || document.getElementsByTagName(\"head\")[0];\r\n\t}),\r\n\tsingletonElement = null,\r\n\tsingletonCounter = 0,\r\n\tstyleElementsInsertedAtTop = [];\r\n\r\nmodule.exports = function(list, options) {\r\n\tif(typeof DEBUG !== \"undefined\" && DEBUG) {\r\n\t\tif(typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\r\n\t}\r\n\r\n\toptions = options || {};\r\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\r\n\t// tags it will allow on a page\r\n\tif (typeof options.singleton === \"undefined\") options.singleton = isOldIE();\r\n\r\n\t// By default, add <style> tags to the bottom of <head>.\r\n\tif (typeof options.insertAt === \"undefined\") options.insertAt = \"bottom\";\r\n\r\n\tvar styles = listToStyles(list);\r\n\taddStylesToDom(styles, options);\r\n\r\n\treturn function update(newList) {\r\n\t\tvar mayRemove = [];\r\n\t\tfor(var i = 0; i < styles.length; i++) {\r\n\t\t\tvar item = styles[i];\r\n\t\t\tvar domStyle = stylesInDom[item.id];\r\n\t\t\tdomStyle.refs--;\r\n\t\t\tmayRemove.push(domStyle);\r\n\t\t}\r\n\t\tif(newList) {\r\n\t\t\tvar newStyles = listToStyles(newList);\r\n\t\t\taddStylesToDom(newStyles, options);\r\n\t\t}\r\n\t\tfor(var i = 0; i < mayRemove.length; i++) {\r\n\t\t\tvar domStyle = mayRemove[i];\r\n\t\t\tif(domStyle.refs === 0) {\r\n\t\t\t\tfor(var j = 0; j < domStyle.parts.length; j++)\r\n\t\t\t\t\tdomStyle.parts[j]();\r\n\t\t\t\tdelete stylesInDom[domStyle.id];\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n}\r\n\r\nfunction addStylesToDom(styles, options) {\r\n\tfor(var i = 0; i < styles.length; i++) {\r\n\t\tvar item = styles[i];\r\n\t\tvar domStyle = stylesInDom[item.id];\r\n\t\tif(domStyle) {\r\n\t\t\tdomStyle.refs++;\r\n\t\t\tfor(var j = 0; j < domStyle.parts.length; j++) {\r\n\t\t\t\tdomStyle.parts[j](item.parts[j]);\r\n\t\t\t}\r\n\t\t\tfor(; j < item.parts.length; j++) {\r\n\t\t\t\tdomStyle.parts.push(addStyle(item.parts[j], options));\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tvar parts = [];\r\n\t\t\tfor(var j = 0; j < item.parts.length; j++) {\r\n\t\t\t\tparts.push(addStyle(item.parts[j], options));\r\n\t\t\t}\r\n\t\t\tstylesInDom[item.id] = {id: item.id, refs: 1, parts: parts};\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction listToStyles(list) {\r\n\tvar styles = [];\r\n\tvar newStyles = {};\r\n\tfor(var i = 0; i < list.length; i++) {\r\n\t\tvar item = list[i];\r\n\t\tvar id = item[0];\r\n\t\tvar css = item[1];\r\n\t\tvar media = item[2];\r\n\t\tvar sourceMap = item[3];\r\n\t\tvar part = {css: css, media: media, sourceMap: sourceMap};\r\n\t\tif(!newStyles[id])\r\n\t\t\tstyles.push(newStyles[id] = {id: id, parts: [part]});\r\n\t\telse\r\n\t\t\tnewStyles[id].parts.push(part);\r\n\t}\r\n\treturn styles;\r\n}\r\n\r\nfunction insertStyleElement(options, styleElement) {\r\n\tvar head = getHeadElement();\r\n\tvar lastStyleElementInsertedAtTop = styleElementsInsertedAtTop[styleElementsInsertedAtTop.length - 1];\r\n\tif (options.insertAt === \"top\") {\r\n\t\tif(!lastStyleElementInsertedAtTop) {\r\n\t\t\thead.insertBefore(styleElement, head.firstChild);\r\n\t\t} else if(lastStyleElementInsertedAtTop.nextSibling) {\r\n\t\t\thead.insertBefore(styleElement, lastStyleElementInsertedAtTop.nextSibling);\r\n\t\t} else {\r\n\t\t\thead.appendChild(styleElement);\r\n\t\t}\r\n\t\tstyleElementsInsertedAtTop.push(styleElement);\r\n\t} else if (options.insertAt === \"bottom\") {\r\n\t\thead.appendChild(styleElement);\r\n\t} else {\r\n\t\tthrow new Error(\"Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.\");\r\n\t}\r\n}\r\n\r\nfunction removeStyleElement(styleElement) {\r\n\tstyleElement.parentNode.removeChild(styleElement);\r\n\tvar idx = styleElementsInsertedAtTop.indexOf(styleElement);\r\n\tif(idx >= 0) {\r\n\t\tstyleElementsInsertedAtTop.splice(idx, 1);\r\n\t}\r\n}\r\n\r\nfunction createStyleElement(options) {\r\n\tvar styleElement = document.createElement(\"style\");\r\n\tstyleElement.type = \"text/css\";\r\n\tinsertStyleElement(options, styleElement);\r\n\treturn styleElement;\r\n}\r\n\r\nfunction createLinkElement(options) {\r\n\tvar linkElement = document.createElement(\"link\");\r\n\tlinkElement.rel = \"stylesheet\";\r\n\tinsertStyleElement(options, linkElement);\r\n\treturn linkElement;\r\n}\r\n\r\nfunction addStyle(obj, options) {\r\n\tvar styleElement, update, remove;\r\n\r\n\tif (options.singleton) {\r\n\t\tvar styleIndex = singletonCounter++;\r\n\t\tstyleElement = singletonElement || (singletonElement = createStyleElement(options));\r\n\t\tupdate = applyToSingletonTag.bind(null, styleElement, styleIndex, false);\r\n\t\tremove = applyToSingletonTag.bind(null, styleElement, styleIndex, true);\r\n\t} else if(obj.sourceMap &&\r\n\t\ttypeof URL === \"function\" &&\r\n\t\ttypeof URL.createObjectURL === \"function\" &&\r\n\t\ttypeof URL.revokeObjectURL === \"function\" &&\r\n\t\ttypeof Blob === \"function\" &&\r\n\t\ttypeof btoa === \"function\") {\r\n\t\tstyleElement = createLinkElement(options);\r\n\t\tupdate = updateLink.bind(null, styleElement);\r\n\t\tremove = function() {\r\n\t\t\tremoveStyleElement(styleElement);\r\n\t\t\tif(styleElement.href)\r\n\t\t\t\tURL.revokeObjectURL(styleElement.href);\r\n\t\t};\r\n\t} else {\r\n\t\tstyleElement = createStyleElement(options);\r\n\t\tupdate = applyToTag.bind(null, styleElement);\r\n\t\tremove = function() {\r\n\t\t\tremoveStyleElement(styleElement);\r\n\t\t};\r\n\t}\r\n\r\n\tupdate(obj);\r\n\r\n\treturn function updateStyle(newObj) {\r\n\t\tif(newObj) {\r\n\t\t\tif(newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap)\r\n\t\t\t\treturn;\r\n\t\t\tupdate(obj = newObj);\r\n\t\t} else {\r\n\t\t\tremove();\r\n\t\t}\r\n\t};\r\n}\r\n\r\nvar replaceText = (function () {\r\n\tvar textStore = [];\r\n\r\n\treturn function (index, replacement) {\r\n\t\ttextStore[index] = replacement;\r\n\t\treturn textStore.filter(Boolean).join('\\n');\r\n\t};\r\n})();\r\n\r\nfunction applyToSingletonTag(styleElement, index, remove, obj) {\r\n\tvar css = remove ? \"\" : obj.css;\r\n\r\n\tif (styleElement.styleSheet) {\r\n\t\tstyleElement.styleSheet.cssText = replaceText(index, css);\r\n\t} else {\r\n\t\tvar cssNode = document.createTextNode(css);\r\n\t\tvar childNodes = styleElement.childNodes;\r\n\t\tif (childNodes[index]) styleElement.removeChild(childNodes[index]);\r\n\t\tif (childNodes.length) {\r\n\t\t\tstyleElement.insertBefore(cssNode, childNodes[index]);\r\n\t\t} else {\r\n\t\t\tstyleElement.appendChild(cssNode);\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction applyToTag(styleElement, obj) {\r\n\tvar css = obj.css;\r\n\tvar media = obj.media;\r\n\r\n\tif(media) {\r\n\t\tstyleElement.setAttribute(\"media\", media)\r\n\t}\r\n\r\n\tif(styleElement.styleSheet) {\r\n\t\tstyleElement.styleSheet.cssText = css;\r\n\t} else {\r\n\t\twhile(styleElement.firstChild) {\r\n\t\t\tstyleElement.removeChild(styleElement.firstChild);\r\n\t\t}\r\n\t\tstyleElement.appendChild(document.createTextNode(css));\r\n\t}\r\n}\r\n\r\nfunction updateLink(linkElement, obj) {\r\n\tvar css = obj.css;\r\n\tvar sourceMap = obj.sourceMap;\r\n\r\n\tif(sourceMap) {\r\n\t\t// http://stackoverflow.com/a/26603875\r\n\t\tcss += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + \" */\";\r\n\t}\r\n\r\n\tvar blob = new Blob([css], { type: \"text/css\" });\r\n\r\n\tvar oldSrc = linkElement.href;\r\n\r\n\tlinkElement.href = URL.createObjectURL(blob);\r\n\r\n\tif(oldSrc)\r\n\t\tURL.revokeObjectURL(oldSrc);\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__299__;","module.exports = __WEBPACK_EXTERNAL_MODULE__738__;","module.exports = __WEBPACK_EXTERNAL_MODULE__46__;","module.exports = __WEBPACK_EXTERNAL_MODULE__49__;","export { version } from './package.json';\r\nexport { WithManagedFocuser } from './src/hoc';\r\n","import React from 'react';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport PropTypes from 'prop-types';\r\nimport { getDisplayName } from '@bingads-webui-react/hoc-utils';\r\n\r\n/**\r\n * @param {React.Component} ComponentToWrap - component to be enhanced\r\n * @returns {React.Component} enhanced version of the argument component\r\n */\r\nexport const WithManagedFocuser = (ComponentToWrap) => {\r\n  class HoC extends React.PureComponent {\r\n    static displayName = `WithManagedFocuser(${getDisplayName(ComponentToWrap)})`;\r\n    static propTypes = { isFocused: PropTypes.bool.isRequired };\r\n\r\n    constructor(props) {\r\n      super(props);\r\n\r\n      this.instanceRef = null;\r\n    }\r\n\r\n    componentDidMount() {\r\n      if (this.props.isFocused) {\r\n        this.focusThis();\r\n      }\r\n    }\r\n\r\n    componentDidUpdate() {\r\n      if (this.props.isFocused) {\r\n        this.focusThis();\r\n      }\r\n    }\r\n\r\n    focusableRef = (ref) => { this.instanceRef = ref; };\r\n\r\n    focusThis = () => { this.instanceRef.focus(); }\r\n\r\n    render() {\r\n      return (\r\n        <ComponentToWrap\r\n          focusableRef={this.focusableRef}\r\n          focusThis={this.focusThis}\r\n          {...this.props}\r\n        />\r\n      );\r\n    }\r\n  }\r\n\r\n  return hoistNonReactStatics(HoC, ComponentToWrap);\r\n};\r\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@bingads-webui/keycode\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"@bingads-webui/keycode\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"@bingads-webui/keycode\")) : factory(root[\"@bingads-webui/keycode\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__3__) {\nreturn ","export * from './src/index';\r\n","import _ from 'underscore';\r\n\r\nexport function parse(json: string, cb: (err: Error | undefined, data?: any) => void) {\r\n  try {\r\n    cb(undefined, JSON.parse(json));\r\n  } catch (err: any) {\r\n    cb(err);\r\n  }\r\n}\r\n\r\nexport function parseSync(json: string) {\r\n  try {\r\n    return JSON.parse(json);\r\n  } catch (err) {\r\n    return undefined;\r\n  }\r\n}\r\n\r\nexport function stringifySync(obj: any) {\r\n  try {\r\n    return JSON.stringify(obj);\r\n  } catch (err) {\r\n    return '';\r\n  }\r\n}\r\n\r\ntype IndexArray = (string | number)[]\r\ntype Cycle = { inner: IndexArray, outer: IndexArray, str: string } | null\r\n\r\nexport function findCycle(obj?: any) {\r\n  const stackObj = [obj];\r\n  const stackKey: Array<string | number> = ['[obj]'];\r\n\r\n  function step(innerObj: any) {\r\n    let result: Cycle = null;\r\n    const stackIndex = _.indexOf(stackObj, innerObj);\r\n\r\n    if (stackIndex !== -1 && stackIndex !== stackObj.length - 1) {\r\n      const inner = _.tail(stackKey, 0);\r\n      const outer = _.head(stackKey, stackIndex + 1);\r\n      return {\r\n        inner,\r\n        outer,\r\n        str: `${inner.join('.')} === ${outer.join('.')}`,\r\n      };\r\n    }\r\n\r\n    _.each(innerObj, (val, key) => {\r\n      if (!!result || !_.isObject(val)) {\r\n        return;\r\n      }\r\n      stackObj.push(val);\r\n      stackKey.push(key);\r\n\r\n      result = result || step(val);\r\n\r\n      stackObj.pop();\r\n      stackKey.pop();\r\n    });\r\n    return result;\r\n  }\r\n\r\n  return step(obj);\r\n}\r\n","export { AdPlacementsGroupType } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nexport {\r\n  getSinglePlacementLayouts,\r\n  getPreviewCarouselLayout,\r\n  getGroupsPreviewerLayout,\r\n  useSinglePlacementLayouts,\r\n  usePreviewCarouselLayout,\r\n  useGroupsPreviewerLayout,\r\n} from './src/index';\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, {\r\n  useCallback,\r\n  useContext,\r\n  useMemo,\r\n  useState,\r\n  useEffect,\r\n  useRef,\r\n} from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { GroupTypeTransformerMapping } from '@bingads-webui-campaign-react/ad-placement-connector';\r\nimport { GroupTypeTemplatesMapping, templateParserUtils } from '@bingads-webui-campaign-react/ad-placement-templates';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { SinglePlacement, PreviewCarouselLayout, GroupsPreviewer } from '@bingads-webui-campaign-react/ad-placement-layouts';\r\nimport { getAdPlacementElement } from '@bingads-webui-campaign-react/ad-placement-view';\r\nimport { getGenericImageObjectAsync, getAutoCroppedImagesForRatios } from '@bingads-webui-campaign/image-experience-utils';\r\n\r\nimport defaultImage from '../media/191to1.jpg';\r\n\r\nconst {\r\n  getImageTypeForTemplate,\r\n  getCarouselTitleForTemplate,\r\n  getMinSizeForTemplate,\r\n  validateImageSizeForTemplate,\r\n  getCropSettingsInfoFromTemplates,\r\n  getIsRequiredFromTemplate,\r\n  getTemplateTypeForTemplate,\r\n  doesTemplateShowImage,\r\n  doesTemplateHideHeaderButtons,\r\n} = templateParserUtils;\r\n\r\nconst doAnyTemplatesHaveImages = (templates) => {\r\n  const aspectRatios = _.filter(getCropSettingsInfoFromTemplates(templates), ({ aspectRatio }) => aspectRatio);\r\n\r\n  return aspectRatios.length > 0;\r\n};\r\n\r\nconst getGenericImagesForTemplateAsync = (templates, defaultImageToUse = defaultImage) => {\r\n  const aspectRatios = _.filter(getCropSettingsInfoFromTemplates(templates), ({ aspectRatio }) => aspectRatio);\r\n  const setupPromise = getGenericImageObjectAsync(defaultImageToUse)\r\n    .then((imageObject) => {\r\n      const croppedImages = getAutoCroppedImagesForRatios({\r\n        originalImageToCrop: imageObject,\r\n        aspectRatios,\r\n      });\r\n\r\n      _.each(croppedImages, (image) => {\r\n        // eslint-disable-next-line no-param-reassign\r\n        image.isIncluded = false;\r\n        // eslint-disable-next-line no-param-reassign\r\n        image.isRequired = false;\r\n      });\r\n\r\n      return croppedImages;\r\n    });\r\n\r\n  return setupPromise;\r\n};\r\n\r\nexport const getFilteredTemplates = ({ groupType, placementFilterPredicate }) => {\r\n  const groupTypeTemplates = GroupTypeTemplatesMapping[groupType];\r\n\r\n  const templatesToUse = placementFilterPredicate ? _.filter(groupTypeTemplates, template => placementFilterPredicate(template)) : groupTypeTemplates;\r\n\r\n  return templatesToUse;\r\n};\r\n\r\nexport const getSinglePlacementLayouts = ({ groupType, placementFilterPredicate }) => {\r\n  const templatesToUse = getFilteredTemplates({ groupType, placementFilterPredicate });\r\n  const templateTransformerFunc = GroupTypeTransformerMapping[groupType];\r\n  // eslint-disable-next-line arrow-body-style\r\n  return _.map(templatesToUse, (template) => {\r\n    return {\r\n      template,\r\n      // eslint-disable-next-line react/prop-types\r\n      SinglePlacementLayout: ({ adData, images, decoratorsData }) => {\r\n        const i18n = useContext(I18nContext);\r\n        const { AdPlacementElement } = useMemo(() => getAdPlacementElement({\r\n          template,\r\n          templateTransformerFunc,\r\n          i18n,\r\n        }), [i18n]);\r\n\r\n        // eslint-disable-next-line react/prop-types\r\n        return (\r\n          <SinglePlacement\r\n            onRenderPlacement={() => (\r\n              <AdPlacementElement\r\n                adData={adData}\r\n                imagesToDisplay={images}\r\n                decoratorsData={decoratorsData}\r\n              />\r\n            )}\r\n          />\r\n        );\r\n      },\r\n    };\r\n  });\r\n};\r\n\r\nexport const useSinglePlacementLayouts = ({ groupType, placementFilterPredicate }) => {\r\n  const layouts = useMemo(() => getSinglePlacementLayouts({ groupType, placementFilterPredicate }), [\r\n    groupType,\r\n    placementFilterPredicate,\r\n  ]);\r\n\r\n  return layouts;\r\n};\r\n\r\n\r\nexport const getPreviewCarouselLayout = ({\r\n  groupType,\r\n  placementFilterPredicate,\r\n  customDefaultImage,\r\n}) => {\r\n  const templateTransformerFunc = GroupTypeTransformerMapping[groupType];\r\n  const templatesToUse = getFilteredTemplates({ groupType, placementFilterPredicate });\r\n\r\n  const PreviewCarouselLayoutComponent = (props) => {\r\n    const {\r\n      adData,\r\n      imagesToDisplay,\r\n      decoratorsData,\r\n      headerButtonProps,\r\n      getIsRequiredByIndex,\r\n      getCarouselTitleByIndex,\r\n      hideHeaderButtons,\r\n      hideNavigationControlsIfSingle,\r\n    } = props;\r\n    const [displayImages, setDisplayImages] = useState([]);\r\n\r\n    const placeholderImagesRef = useRef(null);\r\n    const isDisplayingPlaceholderImages = useRef(false);\r\n\r\n    const i18n = useContext(I18nContext);\r\n\r\n    const isImageListEmpty = useMemo(() => imagesToDisplay.length === 0, [imagesToDisplay]);\r\n\r\n    const anyImageTemplates = useMemo(() => doAnyTemplatesHaveImages(templatesToUse), [templatesToUse]);\r\n\r\n    useEffect(() => {\r\n      if (anyImageTemplates) {\r\n        if (isImageListEmpty) {\r\n          // no need to regenerate placeholder images if present\r\n          if (!placeholderImagesRef.current) {\r\n            getGenericImagesForTemplateAsync(templatesToUse, customDefaultImage)\r\n              .then((placeholderImages) => {\r\n                placeholderImagesRef.current = placeholderImages;\r\n                setDisplayImages([\r\n                  ...placeholderImages,\r\n                ]);\r\n                isDisplayingPlaceholderImages.current = true;\r\n              });\r\n          } else if (!isDisplayingPlaceholderImages.current) {\r\n            setDisplayImages([\r\n              ...placeholderImagesRef.current,\r\n            ]);\r\n            isDisplayingPlaceholderImages.current = true;\r\n          }\r\n        } else {\r\n          setDisplayImages([\r\n            ...imagesToDisplay,\r\n          ]);\r\n          isDisplayingPlaceholderImages.current = false;\r\n        }\r\n      }\r\n    }, [imagesToDisplay, isImageListEmpty, anyImageTemplates]);\r\n\r\n    const placementComponents = useMemo(() => {\r\n      const componentList = _.map(templatesToUse, (template) => {\r\n        const { AdPlacementElement } = getAdPlacementElement({\r\n          template,\r\n          templateTransformerFunc,\r\n          i18n,\r\n        });\r\n\r\n        return AdPlacementElement;\r\n      });\r\n\r\n      return componentList;\r\n    }, [i18n, displayImages]);\r\n\r\n    const previewElements = useMemo(() => {\r\n      if (displayImages.length > 0 || !anyImageTemplates) {\r\n        // eslint-disable-next-line arrow-body-style\r\n        const elementList = _.map(placementComponents, (AdPlacementElement) => {\r\n          return (\r\n            <AdPlacementElement\r\n              adData={adData}\r\n              imagesToDisplay={displayImages}\r\n              decoratorsData={decoratorsData}\r\n            />\r\n          );\r\n        });\r\n\r\n        return elementList;\r\n      }\r\n      return [];\r\n    }, [adData, displayImages, decoratorsData, placementComponents]);\r\n\r\n    const getImageInfoByIndex = useCallback((index) => {\r\n      const imageType = getImageTypeForTemplate(templatesToUse[index]);\r\n\r\n      return _.find(displayImages, ({ associationType }) => associationType === imageType);\r\n    }, [displayImages]);\r\n\r\n    const getCarouselTitleByIndexImpl = useCallback((index) => {\r\n      const title = getCarouselTitleByIndex ? getCarouselTitleByIndex(index) : getCarouselTitleForTemplate(templatesToUse[index], groupType, i18n);\r\n\r\n      return title;\r\n    }, [getCarouselTitleByIndex]);\r\n\r\n    const getMinSizeByIndex = ((index) => {\r\n      const template = templatesToUse[index];\r\n\r\n      return getMinSizeForTemplate(template);\r\n    });\r\n\r\n    const validateImageSizeByIndex = useCallback((index) => {\r\n      if (isImageListEmpty) {\r\n        return true;\r\n      }\r\n\r\n      const imageInfo = getImageInfoByIndex(index);\r\n\r\n      return validateImageSizeForTemplate(templatesToUse[index], imageInfo);\r\n    }, [getImageInfoByIndex, isImageListEmpty]);\r\n\r\n    const getIsRequiredByIndexImpl = useCallback((index) => {\r\n      const isRequired = getIsRequiredByIndex ? getIsRequiredByIndex(index) : getIsRequiredFromTemplate(templatesToUse[index]);\r\n\r\n      return isRequired;\r\n    }, [getIsRequiredByIndex]);\r\n\r\n    const getTemplateTypeByIndex = useCallback((index) => {\r\n      const type = getTemplateTypeForTemplate(templatesToUse[index]);\r\n\r\n      return type;\r\n    }, []);\r\n\r\n    const headerButtonIncludeMethodWrapper = useCallback((type, originalFunc, newValue) => {\r\n      // eslint-disable-next-line arrow-body-style\r\n      const index = _.findIndex(templatesToUse, (template) => {\r\n        return getTemplateTypeForTemplate(template) === type;\r\n      });\r\n      const imageType = getImageTypeForTemplate(templatesToUse[index]);\r\n\r\n      setDisplayImages((prevImages) => {\r\n        const imageIndex = _.findIndex(prevImages, ({ associationType }) => associationType === imageType);\r\n\r\n        // eslint-disable-next-line no-param-reassign\r\n        prevImages[imageIndex].isIncluded = newValue;\r\n\r\n        return [\r\n          ...prevImages,\r\n        ];\r\n      });\r\n\r\n      originalFunc(type);\r\n    }, []);\r\n\r\n    const updatedHeaderButtonProps = useMemo(() => {\r\n      if (headerButtonProps && headerButtonProps.onAddAspectRatio) {\r\n        const updatedProps = {\r\n          onEdit: headerButtonProps.onEdit,\r\n        };\r\n\r\n        updatedProps.onAddAspectRatio = (type) => {\r\n          headerButtonIncludeMethodWrapper(type, headerButtonProps.onAddAspectRatio, true);\r\n        };\r\n\r\n        updatedProps.onRemoveAspectRatio = (type) => {\r\n          headerButtonIncludeMethodWrapper(type, headerButtonProps.onRemoveAspectRatio, false);\r\n        };\r\n\r\n        return updatedProps;\r\n      }\r\n      return headerButtonProps;\r\n    }, [headerButtonIncludeMethodWrapper, headerButtonProps]);\r\n\r\n    const doesTemplateShowImageByIndex = useCallback((index) => {\r\n      const template = templatesToUse[index];\r\n\r\n      return doesTemplateShowImage(template);\r\n    }, []);\r\n\r\n    const doesTemplateHideHeaderButtonsByIndex = useCallback((index) => {\r\n      const template = templatesToUse[index];\r\n\r\n      return doesTemplateHideHeaderButtons(template);\r\n    }, []);\r\n\r\n    // Hide header buttons if template explicitly hides them or if template does not show an image\r\n    const shouldHideHeaderButtonsByIndex = useCallback(\r\n      index => doesTemplateHideHeaderButtonsByIndex(index) || !doesTemplateShowImageByIndex(index)\r\n      , [doesTemplateHideHeaderButtonsByIndex, doesTemplateShowImageByIndex]\r\n    );\r\n\r\n    return (\r\n      <PreviewCarouselLayout\r\n        {...props}\r\n        previewElements={previewElements}\r\n        getImageInfoByIndex={getImageInfoByIndex}\r\n        getCarouselTitleByIndex={getCarouselTitleByIndexImpl}\r\n        getMinSizeByIndex={getMinSizeByIndex}\r\n        validateImageSizeByIndex={validateImageSizeByIndex}\r\n        getTemplateTypeByIndex={getTemplateTypeByIndex}\r\n        getIsRequiredByIndex={getIsRequiredByIndexImpl}\r\n        hideHeaderButtons={hideHeaderButtons || isImageListEmpty}\r\n        headerButtonProps={updatedHeaderButtonProps}\r\n        shouldHideHeaderButtonsByIndex={shouldHideHeaderButtonsByIndex}\r\n        doesTemplateShowImageByIndex={doesTemplateShowImageByIndex}\r\n        hideNavigationControlsIfSingle={hideNavigationControlsIfSingle}\r\n      />\r\n    );\r\n  };\r\n\r\n  PreviewCarouselLayoutComponent.propTypes = {\r\n    adData: PropTypes.shape({}).isRequired,\r\n    headerButtonProps: PropTypes.shape({\r\n      onEdit: PropTypes.func,\r\n      onAddAspectRatio: PropTypes.func,\r\n      onRemoveAspectRatio: PropTypes.func,\r\n    }),\r\n    imagesToDisplay: PropTypes.arrayOf(PropTypes.shape({})),\r\n    decoratorsData: PropTypes.shape({}),\r\n    getIsRequiredByIndex: PropTypes.func,\r\n    getCarouselTitleByIndex: PropTypes.func,\r\n    hideHeaderButtons: PropTypes.bool,\r\n    hideNavigationControlsIfSingle: PropTypes.bool,\r\n  };\r\n\r\n  PreviewCarouselLayoutComponent.defaultProps = {\r\n    headerButtonProps: null,\r\n    imagesToDisplay: [],\r\n    decoratorsData: {},\r\n    getIsRequiredByIndex: null,\r\n    getCarouselTitleByIndex: null,\r\n    hideHeaderButtons: null,\r\n    hideNavigationControlsIfSingle: false,\r\n  };\r\n\r\n  return {\r\n    PreviewCarouselLayout: PreviewCarouselLayoutComponent,\r\n  };\r\n};\r\n\r\nexport const usePreviewCarouselLayout = ({\r\n  groupType,\r\n  placementFilterPredicate,\r\n  customDefaultImage,\r\n}) => {\r\n  const layout = useMemo(() => getPreviewCarouselLayout({\r\n    groupType,\r\n    placementFilterPredicate,\r\n    customDefaultImage,\r\n  }), [groupType, placementFilterPredicate, customDefaultImage]);\r\n\r\n  return layout;\r\n};\r\n\r\nexport const getGroupsPreviewerLayout = ({\r\n  groupsDefinitions,\r\n  customDefaultImage,\r\n}) => {\r\n  const previewers = _.chain(groupsDefinitions)\r\n    .map(({ key, groupType, placementFilterPredicate }) => {\r\n      const { PreviewCarouselLayout: PreviewerLayout } =\r\n        getPreviewCarouselLayout({ groupType, placementFilterPredicate, customDefaultImage });\r\n\r\n      return [key, PreviewerLayout];\r\n    })\r\n    .object()\r\n    .value();\r\n\r\n  const GroupsPreviewerComponent = props => (\r\n    <GroupsPreviewer\r\n      groups={groupsDefinitions}\r\n      previewers={previewers}\r\n      {...props}\r\n    />\r\n  );\r\n\r\n  GroupsPreviewerComponent.propTypes = {\r\n    adData: PropTypes.shape({}).isRequired,\r\n    decoratorsData: PropTypes.shape({}),\r\n    images: PropTypes.arrayOf(PropTypes.shape({})),\r\n    headerButtonProps: PropTypes.shape({}).isRequired,\r\n  };\r\n\r\n  GroupsPreviewerComponent.defaultProps = {\r\n    decoratorsData: {},\r\n    images: [],\r\n  };\r\n\r\n  return {\r\n    GroupsPreviewer: GroupsPreviewerComponent,\r\n  };\r\n};\r\n\r\nexport const useGroupsPreviewerLayout = ({\r\n  groupsDefinitions,\r\n  customDefaultImage,\r\n}) => {\r\n  const layout = useMemo(() => getGroupsPreviewerLayout({\r\n    groupsDefinitions,\r\n    customDefaultImage,\r\n  }), [groupsDefinitions, customDefaultImage]);\r\n\r\n  return layout;\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__24__;","module.exports = __WEBPACK_EXTERNAL_MODULE__26__;","module.exports = __WEBPACK_EXTERNAL_MODULE__27__;","module.exports = __WEBPACK_EXTERNAL_MODULE__839__;","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/191to1.0842ddd6.jpg\";","export * from './src/index';\r\n","export { CroppedImageView } from './cropped-image-view';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class CroppedImageView extends React.PureComponent {\r\n  render() {\r\n    const {\r\n      originalWidth,\r\n      resizeImageHeight,\r\n      aspectRatio,\r\n      src,\r\n    } = this.props;\r\n\r\n    const SourceWidth = this.props.SourceWidth || originalWidth;\r\n    const SourceX = this.props.SourceX || 0;\r\n    const SourceY = this.props.SourceY || 0;\r\n\r\n    const resizeImageWidth = resizeImageHeight * aspectRatio;\r\n\r\n    const imageToContainerRatio = resizeImageWidth / originalWidth;\r\n\r\n    const cropSectionToImageRatio = originalWidth / SourceWidth;\r\n\r\n    const negativeMarginX = -SourceX * imageToContainerRatio * cropSectionToImageRatio;\r\n    const negativeMarginY = -SourceY * imageToContainerRatio * cropSectionToImageRatio;\r\n\r\n    const resizeContainerStyle = {\r\n      height: `${resizeImageHeight}px`,\r\n      width: `${resizeImageWidth}px`,\r\n      overflow: 'hidden',\r\n    };\r\n\r\n    const resizeImageStyle = {\r\n      width: `${resizeImageWidth * cropSectionToImageRatio}px`,\r\n      marginLeft: `${negativeMarginX}px`,\r\n      marginTop: `${negativeMarginY}px`,\r\n    };\r\n\r\n    return (\r\n      <div\r\n        className=\"cropped-image-view\"\r\n        style={resizeContainerStyle}\r\n      >\r\n        <img\r\n          onContextMenu={e => e.preventDefault()}\r\n          style={resizeImageStyle}\r\n          src={src}\r\n          alt={aspectRatio}\r\n        />\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nCroppedImageView.propTypes = {\r\n  originalWidth: PropTypes.number.isRequired,\r\n  resizeImageHeight: PropTypes.number.isRequired,\r\n  aspectRatio: PropTypes.number.isRequired,\r\n  SourceWidth: PropTypes.number,\r\n  SourceX: PropTypes.number,\r\n  SourceY: PropTypes.number,\r\n  src: PropTypes.string.isRequired,\r\n};\r\n\r\nCroppedImageView.defaultProps = {\r\n  SourceWidth: null,\r\n  SourceX: null,\r\n  SourceY: null,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__467__;","export { DisclaimerBanner, DisclaimerBannerWithoutTimezone, DisclaimerBannerWithInstore, DisclaimerBannerWithInstoreWithoutTimezone } from './src/disclaimer-banner';\r\nexport { HelpIcon } from './src/help-icon';\r\nexport { LearnMoreLink } from './src/learn-more-link';\r\nexport { getTimezoneI18nString } from './src/i18n-mapper.js';\r\nexport { getDisclaimerBannerStyle } from './src/disclaimer-banner-style';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { withI18nConsumer } from '@bingads-webui-react/i18n-context';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { LearnMoreLink } from './learn-more-link';\r\nimport { getTimezoneI18nString } from './i18n-mapper';\r\nimport { getDisclaimerBannerStyle } from './disclaimer-banner-style';\r\n\r\nconst commonPropTypes = {\r\n  classes: PropTypes.shape({\r\n    disclaimer: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func,\r\n  }).isRequired,\r\n};\r\n\r\nconst DisclaimerBannerUnStyledWrapper = ({\r\n  classes,\r\n  i18n,\r\n  instore,\r\n  children, // content for second line\r\n}) => {\r\n  let text = i18n.getString(_TL_('Not all metrics are in real time. Clicks and impressions in the last 1 hour, UET conversions in the last 2 hours, and Non-UET conversions (App Install, Offline Conversions) in the last 5 hours might not be included.'));\r\n\r\n  if (instore) {\r\n    const instoreText = i18n.getString(_TL_('Conversions from store visits in the last 73 hours might not be included.'));\r\n\r\n    text = `${text} ${instoreText}`;\r\n  }\r\n\r\n  return (\r\n    <div className={classNames('disclaimer-banner', classes.disclaimer)}>\r\n      <LearnMoreLink\r\n        linkText={i18n.getString(_TL_('Learn more'))}\r\n        text={text}\r\n        topic=\"ext54480\"\r\n      />\r\n      <br />\r\n      {children}\r\n    </div>\r\n  );\r\n};\r\n\r\nDisclaimerBannerUnStyledWrapper.propTypes = {\r\n  ...commonPropTypes,\r\n  children: PropTypes.node.isRequired,\r\n  instore: PropTypes.bool.isRequired,\r\n};\r\n\r\nconst DisclaimerBannerUnStyled = ({\r\n  classes,\r\n  i18n,\r\n  timezone,\r\n  instore,\r\n}) => {\r\n  const timeZoneStr = typeof timezone === 'string' ? timezone : i18n.getString(getTimezoneI18nString(timezone));\r\n  const mrcAccreditedText = `${i18n.getString(_TL_('Only clicks are MRC accredited. The time zone for the date range is'))} ${timeZoneStr}`;\r\n\r\n  return (\r\n    <DisclaimerBannerUnStyledWrapper\r\n      classes={classes}\r\n      i18n={i18n}\r\n      timezone={timezone}\r\n      instore={instore}\r\n    >\r\n      <LearnMoreLink\r\n        linkText={i18n.getString(_TL_('Learn more'))}\r\n        text={mrcAccreditedText}\r\n        topic=\"ext54483\"\r\n      />\r\n    </DisclaimerBannerUnStyledWrapper>\r\n  );\r\n};\r\n\r\nDisclaimerBannerUnStyled.propTypes = {\r\n  ...commonPropTypes,\r\n  timezone: PropTypes.oneOfType([\r\n    PropTypes.string,\r\n    PropTypes.number,\r\n  ]).isRequired,\r\n  instore: PropTypes.bool,\r\n};\r\n\r\nDisclaimerBannerUnStyled.defaultProps = {\r\n  instore: false,\r\n};\r\n\r\nexport const DisclaimerBanner = withDefaultStyles(\r\n  withI18nConsumer(DisclaimerBannerUnStyled),\r\n  getDisclaimerBannerStyle\r\n);\r\n\r\nconst DisclaimerBannerWithInstoreUnStyled = ({\r\n  classes,\r\n  i18n,\r\n  timezone,\r\n}) => (\r\n  <DisclaimerBannerUnStyled classes={classes} i18n={i18n} timezone={timezone} instore />\r\n);\r\n\r\nDisclaimerBannerWithInstoreUnStyled.propTypes = {\r\n  ...commonPropTypes,\r\n  timezone: PropTypes.number.isRequired,\r\n};\r\n\r\nexport const DisclaimerBannerWithInstore = withDefaultStyles(\r\n  withI18nConsumer(DisclaimerBannerWithInstoreUnStyled),\r\n  getDisclaimerBannerStyle\r\n);\r\n\r\nconst DisclaimerBannerWithoutTimezoneUnStyled = ({\r\n  classes,\r\n  i18n,\r\n  instore,\r\n}) => (\r\n  <DisclaimerBannerUnStyledWrapper classes={classes} i18n={i18n} instore={instore}>\r\n    {i18n.getString(_TL_('Only clicks are MRC accredited.'))}\r\n  </DisclaimerBannerUnStyledWrapper>\r\n);\r\n\r\nDisclaimerBannerWithoutTimezoneUnStyled.propTypes = {\r\n  ...commonPropTypes,\r\n  instore: PropTypes.bool,\r\n};\r\n\r\nDisclaimerBannerWithoutTimezoneUnStyled.defaultProps = {\r\n  instore: false,\r\n};\r\n\r\nexport const DisclaimerBannerWithoutTimezone = withDefaultStyles(\r\n  withI18nConsumer(DisclaimerBannerWithoutTimezoneUnStyled),\r\n  getDisclaimerBannerStyle\r\n);\r\n\r\nconst DisclaimerBannerWithInstoreWithoutTimezoneUnStyled = ({\r\n  classes,\r\n  i18n,\r\n}) => (\r\n  <DisclaimerBannerWithoutTimezoneUnStyled classes={classes} i18n={i18n} instore />\r\n);\r\n\r\nDisclaimerBannerWithInstoreWithoutTimezoneUnStyled.propTypes = commonPropTypes;\r\n\r\nexport const DisclaimerBannerWithInstoreWithoutTimezone = withDefaultStyles(\r\n  withI18nConsumer(DisclaimerBannerWithInstoreWithoutTimezoneUnStyled),\r\n  getDisclaimerBannerStyle\r\n);\r\n","/* eslint-disable jsx-a11y/anchor-is-valid, no-script-url */\r\nimport React, { PureComponent } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { ComponentSettings } from '@bingads-webui-theme-2018/theme-fluent';\r\n\r\nclass UnStyledLearnMoreLink extends PureComponent {\r\n  static defaultProps = {\r\n    linkText: 'LearnMore',\r\n    label: null,\r\n    ariaLabel: null,\r\n    text: '',\r\n    href: '#!',\r\n    linkType: 'helpPopup',\r\n    onLinkClick: undefined,\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      ariaLabel, label, text, linkText, topic, href, linkType, classes, onLinkClick,\r\n    } = this.props;\r\n\r\n    const helpTopic = `help:${topic}`;\r\n    const aria = ariaLabel || `${label || text} ${linkText}`;\r\n    const learnMoreLink = {\r\n      helpPopup: (<a className=\"HelpTopic clickable\" query={helpTopic} href={href} aria-label={aria} role=\"button\">{linkText}</a>),\r\n      fwdLink: (<a className=\"Fwlink clickable\" href={`http://go.microsoft.com/fwlink?LinkId=${topic}`} target=\"_apexPlatformHelp\" aria-label={aria} role=\"button\">{linkText}</a>),\r\n      delegate: (<a className=\"clickable\" href={href} aria-label={aria} role=\"button\" onClick={onLinkClick}>{linkText}</a>),\r\n    };\r\n\r\n    return (<span className={classes.link}>{text} {learnMoreLink[linkType]}</span>);\r\n  }\r\n}\r\n\r\nUnStyledLearnMoreLink.propTypes = {\r\n  text: PropTypes.string,\r\n  topic: PropTypes.string.isRequired,\r\n  linkText: PropTypes.string,\r\n  label: PropTypes.string,\r\n  ariaLabel: PropTypes.string,\r\n  href: PropTypes.string,\r\n  linkType: PropTypes.string,\r\n  classes: PropTypes.shape({\r\n    link: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  onLinkClick: PropTypes.func,\r\n};\r\n\r\nexport const LearnMoreLink = ({\r\n  isUnderlineLink,\r\n  isGreyBackground,\r\n  ...props\r\n}) => {\r\n  const { internalLinkStyle, underlineLinkStyle } = ComponentSettings;\r\n  const StyledLearnMoreLink = isUnderlineLink ? withDefaultStyles(\r\n    UnStyledLearnMoreLink,\r\n    (_, { palette = {} } = {}) => ({ link: underlineLinkStyle({ palette, elementLocator: 'a.HelpTopic, a.Fwlink', isGreyBackground }) })\r\n  ) : withDefaultStyles(\r\n    UnStyledLearnMoreLink,\r\n    (_, { palette = {} } = {}) => ({ link: internalLinkStyle({ palette, elementLocator: 'a.HelpTopic, a.Fwlink', isGreyBackground }) })\r\n  );\r\n\r\n  return <StyledLearnMoreLink {...props} />;\r\n};\r\n\r\nLearnMoreLink.defaultProps = {\r\n  isUnderlineLink: true,\r\n  isGreyBackground: false,\r\n};\r\n\r\nLearnMoreLink.propTypes = {\r\n  isUnderlineLink: PropTypes.bool,\r\n  isGreyBackground: PropTypes.bool,\r\n};\r\n","import _ from 'underscore';\r\n\r\nconst i18nTimezoneMap = {\r\n  TimezoneId_1: _TL_('(GMT+13:00) Nuku\\'alofa'),\r\n  TimezoneId_2: _TL_('(GMT+12:00) Fiji, Kamchatka, Marshall Is.'),\r\n  TimezoneId_3: _TL_('(GMT+12:00) Auckland, Wellington'),\r\n  TimezoneId_4: _TL_('(GMT+11:00) Magadan, Solomon Is., New Caledonia'),\r\n  TimezoneId_5: _TL_('(GMT+10:00) Vladivostok'),\r\n  TimezoneId_6: _TL_('(GMT+10:00) Hobart'),\r\n  TimezoneId_7: _TL_('(GMT+10:00) Guam, Port Moresby'),\r\n  TimezoneId_8: _TL_('(GMT+10:00) Canberra, Melbourne, Sydney'),\r\n  TimezoneId_9: _TL_('(GMT+10:00) Brisbane'),\r\n  TimezoneId_10: _TL_('(GMT+09:30) Darwin'),\r\n  TimezoneId_11: _TL_('(GMT+09:30) Adelaide'),\r\n  TimezoneId_12: _TL_('(GMT+09:00) Yakutsk'),\r\n  TimezoneId_13: _TL_('(GMT+09:00) Seoul'),\r\n  TimezoneId_14: _TL_('(GMT+09:00) Osaka, Sapporo, Tokyo'),\r\n  TimezoneId_15: _TL_('(GMT+08:00) Taipei'),\r\n  TimezoneId_16: _TL_('(GMT+08:00) Perth'),\r\n  TimezoneId_17: _TL_('(GMT+08:00) Kuala Lumpur, Singapore'),\r\n  TimezoneId_18: _TL_('(GMT+08:00) Irkutsk, Ulaan Bataar'),\r\n  TimezoneId_19: _TL_('(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi'),\r\n  TimezoneId_20: _TL_('(GMT+07:00) Krasnoyarsk'),\r\n  TimezoneId_21: _TL_('(GMT+07:00) Bangkok, Hanoi, Jakarta'),\r\n  TimezoneId_22: _TL_('(GMT+06:30) Yangon'),\r\n  TimezoneId_23: _TL_('(GMT+06:00) Sri Jayawardenepura'),\r\n  TimezoneId_24: _TL_('(GMT+06:00) Nur Sultan, Dhaka'),\r\n  TimezoneId_25: _TL_('(GMT+06:00) Almaty, Novosibirsk'),\r\n  TimezoneId_26: _TL_('(GMT+05:45) Kathmandu'),\r\n  TimezoneId_27: _TL_('(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi'),\r\n  TimezoneId_28: _TL_('(GMT+05:00) Islamabad, Karachi, Tashkent'),\r\n  TimezoneId_29: _TL_('(GMT+05:00) Ekaterinburg'),\r\n  TimezoneId_30: _TL_('(GMT+04:30) Kabul'),\r\n  TimezoneId_31: _TL_('(GMT+04:00) Baku, Tbilisi, Yerevan'),\r\n  TimezoneId_32: _TL_('(GMT+04:00) Abu Dhabi, Muscat'),\r\n  TimezoneId_33: _TL_('(GMT+03:30) Tehran'),\r\n  TimezoneId_34: _TL_('(GMT+03:00) Nairobi'),\r\n  TimezoneId_35: _TL_('(GMT+03:00) Moscow, St. Petersburg, Volgograd'),\r\n  TimezoneId_36: _TL_('(GMT+03:00) Kuwait, Riyadh'),\r\n  TimezoneId_37: _TL_('(GMT+03:00) Baghdad'),\r\n  TimezoneId_38: _TL_('(GMT+02:00) Jerusalem'),\r\n  TimezoneId_39: _TL_('(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius'),\r\n  TimezoneId_40: _TL_('(GMT+02:00) Harare, Pretoria'),\r\n  TimezoneId_41: _TL_('(GMT+02:00) Cairo'),\r\n  TimezoneId_42: _TL_('(GMT+02:00) Bucharest'),\r\n  TimezoneId_43: _TL_('(GMT+02:00) Athens, Istanbul, Minsk'),\r\n  TimezoneId_44: _TL_('(GMT+01:00) West Central Africa'),\r\n  TimezoneId_45: _TL_('(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb'),\r\n  TimezoneId_46: _TL_('(GMT+01:00) Brussels, Copenhagen, Madrid, Paris'),\r\n  TimezoneId_47: _TL_('(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague'),\r\n  TimezoneId_48: _TL_('(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna'),\r\n  TimezoneId_49: _TL_('(GMT) Casablanca, Monrovia'),\r\n  TimezoneId_50: _TL_('(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London'),\r\n  TimezoneId_51: _TL_('(GMT-01:00) Azores'),\r\n  TimezoneId_52: _TL_('(GMT-01:00) Cabo Verde'),\r\n  TimezoneId_53: _TL_('(GMT-02:00) Mid-Atlantic'),\r\n  TimezoneId_54: _TL_('(GMT-03:00) Brasilia'),\r\n  TimezoneId_55: _TL_('(GMT-03:00) Buenos Aires, Georgetown'),\r\n  TimezoneId_56: _TL_('(GMT-03:00) Greenland'),\r\n  TimezoneId_57: _TL_('(GMT-03:30) Newfoundland'),\r\n  TimezoneId_58: _TL_('(GMT-04:00) Atlantic Time (Canada)'),\r\n  TimezoneId_59: _TL_('(GMT-04:00) Caracas, La Paz'),\r\n  TimezoneId_60: _TL_('(GMT-03:00) Santiago'),\r\n  TimezoneId_61: _TL_('(GMT-05:00) Bogota, Lima, Quito'),\r\n  TimezoneId_62: _TL_('(GMT-05:00) Eastern Time (U.S. & Canada)'),\r\n  TimezoneId_63: _TL_('(GMT-05:00) Indiana (East)'),\r\n  TimezoneId_64: _TL_('(GMT-06:00) Central America'),\r\n  TimezoneId_65: _TL_('(GMT-06:00) Central Time (U.S. & Canada)'),\r\n  TimezoneId_66: _TL_('(GMT-06:00) Guadalajara, Mexico City, Monterrey'),\r\n  TimezoneId_67: _TL_('(GMT-06:00) Saskatchewan'),\r\n  TimezoneId_68: _TL_('(GMT-07:00) Arizona'),\r\n  TimezoneId_69: _TL_('(GMT-07:00) Chihuahua, La Paz, Mazatlan'),\r\n  TimezoneId_70: _TL_('(GMT-07:00) Mountain Time (U.S. & Canada)'),\r\n  TimezoneId_71: _TL_('(GMT-08:00) Pacific Time (U.S. & Canada); Tijuana'),\r\n  TimezoneId_72: _TL_('(GMT-09:00) Alaska'),\r\n  TimezoneId_73: _TL_('(GMT-10:00) Hawaii'),\r\n  TimezoneId_74: _TL_('(GMT-11:00) Midway Island, Samoa'),\r\n  TimezoneId_75: _TL_('(GMT-12:00) International Date Line West'),\r\n};\r\n\r\n// Consider to extract i18n string mapping to a seperate package\r\nexport function getTimezoneI18nString(timezoneId) {\r\n  const id = _.isNumber(timezoneId) ? timezoneId : Number(timezoneId);\r\n  if (id >= 1 && id <= 75) {\r\n    return i18nTimezoneMap[`TimezoneId_${id}`];\r\n  }\r\n\r\n  return _TL_('Unknown');\r\n}\r\n","// export this to ensure any update here to be effective for all customized disclaimer banners\r\n// which consume this style\r\nexport const getDisclaimerBannerStyle = (_, { palette = {} } = {}) => ({\r\n  disclaimer: {\r\n    fontSize: 12,\r\n    color: '#323130',\r\n    marginTop: 16,\r\n    marginBottom: 16,\r\n    paddingLeft: 32,\r\n    '& span': {\r\n      '& a.HelpTopic': {\r\n        textDecoration: 'underline',\r\n        color: palette.themePrimary,\r\n        '&:focus': {\r\n          textDecoration: 'underline',\r\n          outline: `1px solid ${palette.neutralSecondary}`,\r\n        },\r\n        '&:hover': {\r\n          textDecoration: 'underline',\r\n          color: palette.themeDarker,\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class HelpIcon extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n    this.element = React.createRef();\r\n  }\r\n\r\n  onClick = (event) => {\r\n    event.stopPropagation();\r\n    event.preventDefault();\r\n    // eslint-disable-next-line no-undef\r\n    PopupController.PopupJsClick(this.element.current);\r\n  }\r\n\r\n  render() {\r\n    const { topic, ariaLabel, disabled } = this.props;\r\n    return (\r\n      // eslint-disable-next-line jsx-a11y/anchor-has-content, jsx-a11y/anchor-is-valid\r\n      <a\r\n        ref={this.element}\r\n        className=\"helpbutton\"\r\n        tabIndex=\"0\"\r\n        topic={topic.trim()}\r\n        type=\"helppopup\"\r\n        onClick={this.onClick}\r\n        // eslint-disable-next-line no-script-url\r\n        href=\"#\"\r\n        aria-label={ariaLabel}\r\n        disabled={disabled}\r\n      />\r\n    );\r\n  }\r\n}\r\n\r\nHelpIcon.propTypes = {\r\n  topic: PropTypes.string.isRequired,\r\n  ariaLabel: PropTypes.string,\r\n  disabled: PropTypes.bool,\r\n};\r\n\r\nHelpIcon.defaultProps = {\r\n  ariaLabel: 'Learn more',\r\n  disabled: false,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__187__;","export { WithArrowKeys } from './src/hoc';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\nimport { getDisplayName } from '@bingads-webui-react/hoc-utils';\r\nimport { Observable } from '@bingads-webui-universal/observable';\r\n\r\nexport const WithArrowKeys = (ComponentToWrap, staticOptions) => {\r\n  const { interceptTabKey: interceptTabKeyFromStaticOptions = false } = staticOptions || {};\r\n  class HoC extends React.PureComponent {\r\n    static displayName = `WithArrowKeys(${getDisplayName(ComponentToWrap)})`;\r\n\r\n    constructor(props) {\r\n      super(props);\r\n\r\n      this.observable = new Observable((observer) => {\r\n        this.setData = data => observer.next(data);\r\n      });\r\n\r\n      this.onKeyDown = this.onKeyDown.bind(this);\r\n\r\n      this.interceptTabKey = interceptTabKeyFromStaticOptions || props.interceptTabKey;\r\n    }\r\n\r\n    onKeyDown(e) {\r\n      if (e.keyCode === keyCode.ArrowLeft\r\n          || e.keyCode === keyCode.ArrowRight\r\n          || e.keyCode === keyCode.ArrowUp\r\n          || e.keyCode === keyCode.ArrowDown\r\n          || (e.keyCode === keyCode.Tab && this.interceptTabKey)) {\r\n        e.preventDefault();\r\n        e.stopPropagation();\r\n\r\n        this.setData(e.keyCode);\r\n      }\r\n    }\r\n\r\n    render() {\r\n      return (\r\n        <div\r\n          role=\"presentation\"\r\n          onKeyDown={this.onKeyDown}\r\n        >\r\n          <ComponentToWrap observable={this.observable} {...this.props} />\r\n        </div>\r\n      );\r\n    }\r\n  }\r\n\r\n  HoC.propTypes = {\r\n    interceptTabKey: PropTypes.bool,\r\n  };\r\n\r\n  HoC.defaultProps = {\r\n    interceptTabKey: false,\r\n  };\r\n\r\n  return hoistNonReactStatics(HoC, ComponentToWrap);\r\n};\r\n","export { BackboneInstanceWrapper } from './src/index';\r\n","import { each } from 'underscore';\r\nimport React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class BackboneInstanceWrapper extends Component {\r\n  static defaultProps = {\r\n    managed: false,\r\n    eventHandlers: {\r\n      once: {},\r\n      on: {},\r\n    },\r\n  };\r\n\r\n  static propTypes = {\r\n    /**\r\n     * an instance of backbone view\r\n     */\r\n    instance: PropTypes.shape({\r\n      $el: PropTypes.object.isRequired,\r\n      render: PropTypes.func.isRequired,\r\n      off: PropTypes.func.isRequired,\r\n      once: PropTypes.func.isRequired,\r\n      on: PropTypes.func.isRequired,\r\n    }).isRequired,\r\n    /**\r\n     * indicate if backbone view is managed outside\r\n     */\r\n    managed: PropTypes.bool,\r\n\r\n    /**\r\n     * Handlers to be triggered on backbone event\r\n     */\r\n    eventHandlers: PropTypes.shape({\r\n      once: PropTypes.objectOf(PropTypes.func),\r\n      on: PropTypes.objectOf(PropTypes.func),\r\n    }),\r\n  };\r\n\r\n  componentDidMount() {\r\n    this.mount();\r\n  }\r\n\r\n  shouldComponentUpdate(nextProps) {\r\n    return nextProps.instance !== this.props.instance;\r\n  }\r\n\r\n  componentDidUpdate() {\r\n    this.detach();\r\n    this.mount();\r\n  }\r\n\r\n  componentWillUnmount() {\r\n    this.detach();\r\n  }\r\n\r\n  detach() {\r\n    if (this.props.managed) {\r\n      this.instance.$el.detach();\r\n    } else {\r\n      this.instance.undelegateEvents().off().remove();\r\n    }\r\n  }\r\n\r\n  mount() {\r\n    each(this.props.eventHandlers.once, (handler, event) => {\r\n      this.props.instance.once(event, handler);\r\n    });\r\n\r\n    each(this.props.eventHandlers.on, (handler, event) => {\r\n      this.props.instance.on(event, handler);\r\n    });\r\n    this.instance = this.props.instance;\r\n    this.instance.$el.appendTo(this.container);\r\n  }\r\n\r\n  render() {\r\n    return (<div className=\"ba-backbone-instance-wrapper\" ref={(container) => { this.container = container; }} />);\r\n  }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__13__;","import pkg from './package.json';\r\nimport FilePicker from './src/view/index';\r\n\r\nexport { pkg as _package, FilePicker };\r\n","import _ from 'underscore';\r\nimport ko from 'knockout';\r\nimport Backbone from 'backbone';\r\nimport ViewModel from '../viewmodel/index';\r\nimport template from '../template/index.pug';\r\n\r\nexport default class FilePicker extends Backbone.View {\r\n  /**\r\n   *\r\n   * @param {object} options the options to build a filepicker instance.\r\n   *   See the detail fields below.\r\n   * @param {boolean} options.isNative will use the browser native button when it is set to true.\r\n   * Otherwise will use the customized elements and hide the native ones.\r\n   * @param {array} options.allowedFileExtensions the allowed file extensions. An array of strings.\r\n   * Example: ['.txt', '.exe']. Will accept all file extensions if this field is not set.\r\n   * @param {function} options.validator function to validate your file. The file object as\r\n   * paramter. Return string for true is to raise an error. If you return true will use the\r\n   * predefined error message.\r\n   * @param {object} options.i18n object: contains getString function for i18n.\r\n   * @param {function} options.i18n.getString pass a key(and model if needed) and returns a string.\r\n   * @param {function} options.displayFilePath an enum of 'full' or 'filename', indicating the\r\n   * display name of the chosen file in customized elements\r\n   *\r\n   * @event FilePicker#changed triggered when file is changed.\r\n   * @event FilePicker#cleared triggered when file is cleared.\r\n   * @event FilePicker#error.extension triggered when file extension is invalid.\r\n   *\r\n   * @returns {undefined} no return value\r\n   *\r\n   */\r\n  initialize({\r\n    isNative = false,\r\n    allowedFileExtensions = [],\r\n    validateFileExtensionsFailedMessage,\r\n    validator = _.noop,\r\n    i18n = {},\r\n    displayFilePath = 'full',\r\n    enableMultiple = false,\r\n  }) {\r\n    this.isNative = isNative;\r\n    this.i18n = i18n;\r\n    this.allowedFileExtensions = [];\r\n    this.enableMultiple = enableMultiple;\r\n\r\n    if (!_.isFunction(i18n.getString)) {\r\n      this.i18n = { getString: _.identity };\r\n    }\r\n\r\n    if (!_.isEmpty(allowedFileExtensions)) {\r\n      if (_.isArray(allowedFileExtensions)) {\r\n        this.allowedFileExtensions = allowedFileExtensions;\r\n      } else {\r\n        throw new Error('allowedFileExtensions accepts array of strings only.');\r\n      }\r\n    }\r\n\r\n    this.viewModel = new ViewModel({\r\n      i18n: this.i18n,\r\n      validator,\r\n      allowedFileExtensions: this.allowedFileExtensions,\r\n      validateFileExtensionsFailedMessage,\r\n      getFileObject: () => this.fileObject,\r\n      getFileObjects: () => this.fileObjects,\r\n      trigger: this.trigger.bind(this),\r\n      displayFilePath,\r\n      enableMultiple: this.enableMultiple,\r\n    });\r\n\r\n    this.fileInputCssId = _.uniqueId('el_fileinput_');\r\n  }\r\n\r\n  render() {\r\n    this.$el.html(template({\r\n      fileInputCssId: this.fileInputCssId,\r\n      i18n: this.i18n,\r\n      isNative: this.isNative,\r\n      acceptString: this.allowedFileExtensions.join(),\r\n      enableMultiple: this.enableMultiple,\r\n    }));\r\n    ko.applyBindings(this.viewModel, this.el);\r\n    return this;\r\n  }\r\n\r\n  get events() {\r\n    return {\r\n      'click .remove-file': 'removeFile',\r\n    };\r\n  }\r\n\r\n  /**\r\n   * @returns {string} the full path file\r\n   */\r\n  get filePath() {\r\n    return this.viewModel.filePath();\r\n  }\r\n\r\n  /**\r\n   * @returns {Object} the object to describe the file. Refer https://developer.mozilla.org/en-US/docs/Web/API/File for more details.\r\n   * @example\r\n   * {\r\n   *    lastModified: 1465909575599,\r\n   *    lastModifiedDate: Tue Jun 14 2016 21:06:15 GMT+0800 (China Standard Time),\r\n   *    name: 'test.txt',\r\n   *    size: 3,\r\n   *    type: \"\",\r\n   *    webkitRelativePath: ''\r\n   * }\r\n   */\r\n  get fileObject() {\r\n    return _.first(this.fileObjects);\r\n  }\r\n\r\n  get fileObjects() {\r\n    return _.first(this.$(`#${this.fileInputCssId}`)).files;\r\n  }\r\n\r\n  removeFile() {\r\n    this.viewModel.filePath('');\r\n  }\r\n\r\n  addExternalValidationErrors(msg) {\r\n    this.viewModel.errors.push(msg);\r\n  }\r\n\r\n  hasErrors() {\r\n    return this.viewModel.hasErrors();\r\n  }\r\n}\r\n","import _ from 'underscore';\r\nimport ko from 'knockout';\r\nimport path from 'path-browserify';\r\nimport Promise from 'bluebird';\r\n\r\nfunction validatorDecorator(\r\n  validator,\r\n  reasonText,\r\n  file,\r\n  context\r\n) {\r\n  return Promise.resolve(validator(file)).then(returnedError =>\r\n    new Promise((resolve, reject) => {\r\n      if (returnedError) {\r\n        reject(new Error(_.isString(returnedError) ? returnedError : reasonText));\r\n      } else {\r\n        resolve(file);\r\n      }\r\n    })).bind(context);\r\n}\r\n\r\nexport default class ViewModel {\r\n  constructor({\r\n    i18n,\r\n    allowedFileExtensions,\r\n    validateFileExtensionsFailedMessage,\r\n    validator,\r\n    getFileObject,\r\n    getFileObjects,\r\n    trigger,\r\n    displayFilePath,\r\n    enableMultiple,\r\n  }) {\r\n    this.i18n = i18n;\r\n    this.allowedFileExtensions = _.map(allowedFileExtensions, ext => ext.toUpperCase());\r\n    this.validateFileExtensionsFailedMessage = validateFileExtensionsFailedMessage;\r\n\r\n    this.validator = validator;\r\n    this.getFileObject = getFileObject;\r\n    this.getFileObjects = getFileObjects;\r\n    this.trigger = trigger;\r\n    this.enableMultiple = enableMultiple;\r\n\r\n    this.filePath = ko.observable('');\r\n    this.errors = ko.observableArray();\r\n    this.hasErrors = ko.computed(() => this.errors().length > 0, this);\r\n    this.displayFilePath = ko.computed(() => {\r\n      const fullPath = this.filePath();\r\n\r\n      return _.result({\r\n        full: fullPath,\r\n        filename: () => fullPath.replace(/^.*[\\\\\\/]/, ''), //eslint-disable-line\r\n      }, displayFilePath);\r\n    });\r\n\r\n    if (enableMultiple) {\r\n      // use change event when multiple is enabled.\r\n      // value subscribe doens't work when first selected file doesn't change.\r\n      this.onInputChange = () => {\r\n        this.handleInputChange();\r\n      };\r\n    } else {\r\n      this.filePath.subscribe((newFilePath) => {\r\n        this.handleInputChange(newFilePath);\r\n      });\r\n    }\r\n  }\r\n\r\n  handleInputChange(newFilePath) {\r\n    // for backward compatibility, here still use getFileObject to get selected file.\r\n    // otherwise there are many feature test codes needing fix.\r\n    let files = [];\r\n    if (this.enableMultiple) {\r\n      files = this.getFileObjects();\r\n    } else {\r\n      const file = this.getFileObject();\r\n      if (file) {\r\n        files.push(file);\r\n      }\r\n    }\r\n\r\n    this.resetStatus();\r\n\r\n    this.trigger('changed', newFilePath);\r\n\r\n    if (_.isEmpty(files)) {\r\n      this.trigger('cleared');\r\n    } else {\r\n      const validatingPromiseArr = [];\r\n      _.each(files, (file) => {\r\n        validatingPromiseArr.push(this.validateExtension(file).then(() => {\r\n          this.validateFile(file);\r\n        }));\r\n      });\r\n\r\n      Promise.all(validatingPromiseArr)\r\n        .then(() => this.trigger('validated'))\r\n        .catch((reason) => {\r\n          this.validationDidFail(reason);\r\n        });\r\n    }\r\n  }\r\n\r\n  get extensionValidator() {\r\n    return (file) => {\r\n      if (_.isEmpty(this.allowedFileExtensions)) {\r\n        return false;\r\n      }\r\n\r\n      const extension = path.extname(file.name).toUpperCase();\r\n      if (_.indexOf(this.allowedFileExtensions, extension) === -1) {\r\n        this.trigger('error.extension');\r\n\r\n        return this.validateFileExtensionsFailedMessage || true;\r\n      }\r\n\r\n      return null;\r\n    };\r\n  }\r\n\r\n  validateExtension(file) {\r\n    return validatorDecorator(\r\n      this.extensionValidator.bind(this),\r\n      this.i18n.getString('FilePicker_FileExtensionInvalid', { allowedFileExtensions: this.allowedFileExtensions }),\r\n      file,\r\n      this\r\n    );\r\n  }\r\n\r\n  validateFile(file) {\r\n    return validatorDecorator(this.validator, this.i18n.getString('FilePicker_FileInvalid'), file, this);\r\n  }\r\n\r\n  validationDidFail(reason) {\r\n    this.errors.push(reason.message);\r\n  }\r\n\r\n  resetStatus() {\r\n    this.errors([]);\r\n  }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__316__;","var pug = require(\"!../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (acceptString, enableMultiple, fileInputCssId, i18n, isNative) {pug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"class\", pug.classes([isNative ? 'hidden' : ''], [true]), false, true)) + \"\\u003E\\u003Clabel\" + (\" class=\\\"btn btn-default file-picker-btn clickable\\\"\"+pug.attr(\"for\", fileInputCssId, true, true)+\" data-bind=\\\"css: { &quot;error&quot;: hasErrors}\\\" role=\\\"button\\\" tabindex=\\\"0\\\"\") + \"\\u003E\" + (pug.escape(null == (pug_interp = i18n.getString('FilePicker_ButtonText_ChooseFile')) ? \"\" : pug_interp)) + \"\\u003C\\u002Flabel\\u003E\\u003Cspan class=\\\"file-text\\\" data-bind=\\\"text: displayFilePath, css: { error: hasErrors}\\\"\\u003E\\u003C\\u002Fspan\\u003E\\u003Ca class=\\\"remove-file\\\" href=\\\"javascript:void(0)\\\" data-bind=\\\"visible: filePath\\\" role=\\\"button\\\"\\u003E\" + (pug.escape(null == (pug_interp = i18n.getString('FilePicker_ButtonText_RemoveFile')) ? \"\" : pug_interp)) + \"\\u003C\\u002Fa\\u003E\\u003C\\u002Fdiv\\u003E\";\nif (enableMultiple) {\npug_html = pug_html + \"\\u003Cinput\" + (pug.attr(\"class\", pug.classes([\"file-picker-input\",isNative ? '' : 'hidden'], [false,true]), false, true)+\" type=\\\"file\\\" data-bind=\\\"css: { error: hasErrors }, event: { change: onInputChange }\\\"\"+pug.attr(\"id\", fileInputCssId, true, true)+pug.attr(\"accept\", acceptString, true, true)+pug.attr(\"multiple\", true, true, true)) + \"\\u003E\";\n}\nelse {\npug_html = pug_html + \"\\u003Cinput\" + (pug.attr(\"class\", pug.classes([\"file-picker-input\",isNative ? '' : 'hidden'], [false,true]), false, true)+\" type=\\\"file\\\" data-bind=\\\"css: { error: hasErrors }, value: filePath\\\"\"+pug.attr(\"id\", fileInputCssId, true, true)+pug.attr(\"accept\", acceptString, true, true)) + \"\\u003E\";\n}\npug_html = pug_html + \"\\u003C!-- ko foreach: errors--\\u003E\\u003Cdiv class=\\\"error\\\" role=\\\"alert\\\" data-bind=\\\"text: $data\\\"\\u003E\\u003C\\u002Fdiv\\u003E\\u003C!-- \\u002Fko--\\u003E\";}.call(this,\"acceptString\" in locals_for_with?locals_for_with.acceptString:typeof acceptString!==\"undefined\"?acceptString:undefined,\"enableMultiple\" in locals_for_with?locals_for_with.enableMultiple:typeof enableMultiple!==\"undefined\"?enableMultiple:undefined,\"fileInputCssId\" in locals_for_with?locals_for_with.fileInputCssId:typeof fileInputCssId!==\"undefined\"?fileInputCssId:undefined,\"i18n\" in locals_for_with?locals_for_with.i18n:typeof i18n!==\"undefined\"?i18n:undefined,\"isNative\" in locals_for_with?locals_for_with.isNative:typeof isNative!==\"undefined\"?isNative:undefined));;return pug_html;};\nmodule.exports = template;","module.exports = __WEBPACK_EXTERNAL_MODULE__57__;","module.exports = __WEBPACK_EXTERNAL_MODULE__9__;","export * from './src/shared-styles-from-theme-fluent';\r\n\r\nexport { adCustomizersStyle } from './src/ad-customizers-style';\r\nexport { adColumnPreviewStyle } from './src/ad-column-preview-style';\r\nexport { adSuggestionStyle, adSuggestionModalStyle } from './src/ad-suggestion-style';\r\nexport { audienceSelectorStyle } from './src/audience-selector-style';\r\nexport { reactUIBlockerStyle } from './src/react-ui-blocker-style';\r\nexport { messageBarStyle } from './src/message-bar-style';\r\nexport { tableStyle } from './src/table-style';\r\nexport { linkStyle } from './src/link-style';\r\nexport { learnMoreStyle } from './src/learn-more-style';\r\nexport { getLocalBlockerStyle } from './src/local-blocker';\r\nexport { advancedSettingsSectionStyle } from './src/advanced-settings-section-style';\r\nexport { containerBudgetStyle } from './src/container-budget-style';\r\nexport { locationBidGridStyle } from './src/location-bid-grid-style';\r\nexport { keywordPlannerStyle } from './src/keyword-planner-style';\r\nexport { locationMapStyle } from './src/location-map-style';\r\nexport { locationCellStatusStyle } from './src/location-cell-status-style';\r\nexport { getMapStyle } from './src/map-style';\r\nexport { targetLocationRecommendationStyle } from './src/target-location-recommendation-style';\r\nexport { glyphIconStyle } from './src/glyph-icon-style';\r\nexport { crudAdStyle, crudAudienceAdStyle } from './src/crud-ad-style';\r\nexport { uurlTestToolStyle } from './src/uurl-test-tool-style';\r\nexport { sharedBudgetGridWrapper } from './src/shared-budget-grid-wrapper';\r\nexport { estimationResultStyle } from './src/estimation-result-style';\r\nexport { audienceAssociationSectionStyle } from './src/audience-association-section-style';\r\nexport { audienceBulkAssociationStyle } from './src/audience-bulk-association-style';\r\nexport { extensionEditorStyles } from './src/extension-editor-style';\r\nexport { selectElementStyle } from './src/select-element-style';\r\nexport { audienceReachEstimateContainerStyle } from './src/audience-reach-estimate-container-style';\r\nexport { audienceModalStyles } from './src/audience-modal-styles';\r\nexport { kendoMultiSelectStyle } from './src/kendo-multi-select-style';\r\nexport { audienceCombinedListStyle } from './src/audience-combined-list-style';\r\nexport { audienceExpressionStyle } from './src/audience-expression-styles';\r\nexport { uetTagManageDialogStyles } from './src/uet-tag-manage-dialog-style';\r\nexport { dateFilterStyle } from './src/date-filter-style';\r\nexport { mergeStyles } from './src/utils/merge-style';\r\nexport { keywordToolbarStyle } from './src/keyword-toolbar-style';\r\nexport { crudKeywordStyle } from './src/crud-keyword-style';\r\nexport { convertToLocalStyle, convertToConcatStyle, convertToGlobalStyle } from './src/utils/convert-style';\r\nexport { adsExtensionDoubleListStyle } from './src/ads-extentions-doublelist-style';\r\nexport { commonDoubleListBoxStyle } from './src/double-list-box-style';\r\nexport { inputFieldStyle } from './src/input-field-style';\r\nexport { summaryPageStyle } from './src/summary-page-style';\r\nexport { competitionCardStyle } from './src/competition-card-style';\r\nexport { gmbImportEditorStyle } from './src/google-import-style';\r\nexport { experimentSettingsStyle } from './src/experiment-settings-style';\r\nexport { productGroupsStyle } from './src/product-groups-style';\r\nexport { getReactModalStyle } from './src/react-modal-style';\r\nexport { gridPopUpEditorStyle } from './src/grid-popup-editor';\r\nexport { predicateValueEditorStyle } from './src/predicate-value-editor-style';\r\nexport { getUETTagViewerStyle } from './src/uet-tag-viewer-style';\r\nexport { getDialogStyle } from './src/dialog-style';\r\nexport { getProgressBarStyle } from './src/progress-bar-style';\r\nexport { convertTooltipPanelToCalloutStyle } from './src/panel-callout-style';\r\nexport { colorPickerStyle } from './src/color-picker-style';\r\nexport { getColumnSolidBorderStyle } from './src/grid-column-style';\r\nexport { campaignMultiSelectorWithoutDropdownStyle } from './src/campaign-multi-selector-without-dropdown-style';\r\nexport { uetTagSelectorStyles } from './src/uet-tag-selector-style';\r\nexport { labelPopupStyle } from './src/label-popup-style';\r\nexport { deliveryColumnStyle } from './src/delivery-column-style';\r\nexport { truncatedStyle, truncatedDeclaration } from './src/truncated-style';\r\nexport { labelColumnHeaderStyle } from './src/label-column-header-style';\r\nexport { labelsCellItemStyle } from './src/labels-cell-item-style';\r\nexport { labelsCellScopeStyle } from './src/labels-cell-item-style';\r\nexport { qualityScorePopupStyle } from './src/quality-score-popup-style';\r\nexport { deleteColumnModalStyle } from './src/delete-column-modal-style';\r\nexport { getPhoneFrameStyle } from './src/phone-frame-style';\r\nexport { imageExperienceContentStyle } from './src/image-experience-content-style';\r\nexport { editImageCommonStyle } from './src/edit-image-common-style';\r\nexport { modalContainerStyle } from './src/modal-container-style';\r\nexport * from './src/ad-extentions-item-template-styles';\r\nexport * from './src/fluctuation-insights-style';\r\n","import { ComponentSettings } from '@bingads-webui-theme-2018/theme-fluent';\r\n\r\n// The styles listed here have been migrated to above package, since they might be shared across sites (CMUI and CCUI).\r\n// If you want to fix a common issue for all sites, please do it there;\r\n// If you want do some change only for CMUI, please config the styles after importing to this package.\r\nexport const {\r\n  alertStyle,\r\n  buttonInputStyle,\r\n  btnStyle,\r\n  btnInteractStyle,\r\n  closeImageStyle,\r\n  controlStyle,\r\n  datePickerStyle,\r\n  dropDownEditorStyle,\r\n  entitySelectorStyle,\r\n  floatButtonStyle,\r\n  getBlockerStyle,\r\n  gridInlineErrorStyle,\r\n  helpbuttonStyle,\r\n  InlineEditorStyle,\r\n  inlineErrorStyle,\r\n  internalLinkStyle,\r\n  legacyUIBlockerStyle,\r\n  paginationStyle,\r\n  scrollbarStyle,\r\n  searchboxStyle,\r\n  spinnerKeyframe,\r\n  statusStyle,\r\n  toggleButtonStyle,\r\n  uiblockerStyle,\r\n  underlineLinkStyle,\r\n} = ComponentSettings;\r\n","import { audienceSelectorStyle } from './audience-selector-style';\r\n\r\nexport const adCustomizersStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .ac-container': {\r\n    position: 'relative',\r\n  },\r\n\r\n  '& .ad-customizer-container > .dropdown-menu.picker-list': {\r\n    maxHeight: 432,\r\n    overflowY: 'auto',\r\n\r\n    '& > li ~ li, & > .adcustomizerpicker-syntax-container ~ li': {\r\n      borderTop: `1px solid ${palette.neutralSecondary}`,\r\n    },\r\n\r\n    '& > li > a': {\r\n      fontSize: 14,\r\n      height: 'auto',\r\n\r\n      '& .type-bold': {\r\n        fontWeight: 600,\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .ac-helper-area.adCustomizersEditor': {\r\n    background: 'white',\r\n    borderRadius: 2,\r\n    boxShadow: '0px 0.6px 1.8px rgba(0, 0, 0, 0.108), 0px 3.2px 7.2px rgba(0, 0, 0, 0.132)',\r\n    padding: '27px 32px 32px 32px',\r\n    zIndex: 1090,\r\n  },\r\n\r\n  '& .ad-customizer-container > .dropdown-menu > .adcustomizerpicker-syntax-container': {\r\n    padding: '27px 32px 16px 32px',\r\n\r\n    '& ~ li > a': {\r\n      padding: '0 32px',\r\n    },\r\n\r\n    '& .panel-heading': {\r\n      padding: 'unset',\r\n      border: 'none',\r\n      borderRadius: 0,\r\n\r\n      '& a': {\r\n        display: 'inline-flex',\r\n        padding: 0,\r\n        width: 'auto',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .ad-customizer-container > .dropdown-menu.adCustomizersEditor': {\r\n    fontSize: 14,\r\n    lineHeight: '19px',\r\n\r\n    '& .picker-content': {\r\n      borderTop: `1px solid ${palette.neutralSecondary}`,\r\n      padding: '16px 32px 32px 32px',\r\n\r\n      '& .form-grid': {\r\n        '& > .control-label': {\r\n          display: 'flex',\r\n          padding: 0,\r\n          textAlign: 'left',\r\n\r\n          '& ~ .control-label': {\r\n            marginTop: 32,\r\n          },\r\n\r\n          '& label': {\r\n            padding: '0 0 7px 0',\r\n          },\r\n        },\r\n\r\n        '& > span': {\r\n          display: 'block',\r\n          alignSelf: 'center',\r\n        },\r\n\r\n        '& .checkbox label, .radio label': {\r\n          paddingLeft: 0,\r\n        },\r\n\r\n        '& .form-buttons': {\r\n          marginTop: 36,\r\n\r\n          '& button.cancel': {\r\n            marginLeft: 8,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .countdownEditor .form-grid': {\r\n        display: 'grid',\r\n        fallbacks: [\r\n          {\r\n            display: '-ms-grid',\r\n          },\r\n        ],\r\n        gridTemplateColumns: '136px 136px 1fr',\r\n        '-ms-grid-columns': '136px 136px 1fr',\r\n\r\n        '& .form-label': {\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-column-span': '3',\r\n\r\n          '&.flexible-grid-row-1': {\r\n            '-ms-grid-row': '1',\r\n          },\r\n\r\n          '&.flexible-grid-row-4': {\r\n            '-ms-grid-row': '5',\r\n          },\r\n\r\n          '&.flexible-grid-row-6': {\r\n            '-ms-grid-row': '8',\r\n          },\r\n\r\n          '&.flexible-grid-row-7': {\r\n            '-ms-grid-row': '10',\r\n          },\r\n        },\r\n\r\n        '& .form-date': {\r\n          gridColumnStart: '1',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-row': '2',\r\n          paddingRight: 12,\r\n        },\r\n\r\n        '& .form-time': {\r\n          gridColumnStart: '2',\r\n          '-ms-grid-column': '2',\r\n          '-ms-grid-row': '2',\r\n          paddingRight: 12,\r\n        },\r\n\r\n        '& .form-time-format': {\r\n          gridColumnStart: '3',\r\n          '-ms-grid-column': '3',\r\n          '-ms-grid-row': '2',\r\n        },\r\n\r\n        '& .form-days': {\r\n          gridColumnStart: '1',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-row': '6',\r\n          paddingRight: 12,\r\n        },\r\n\r\n        '& .form-days-description': {\r\n          gridColumnStart: '2',\r\n          gridColumnEnd: 'span 2',\r\n          '-ms-grid-column': '2',\r\n          '-ms-grid-column-span': '2',\r\n          '-ms-grid-row': '6',\r\n        },\r\n\r\n        '& .form-time-zone': {\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-column-span': '3',\r\n          '-ms-grid-row': '9',\r\n        },\r\n\r\n        '& .form-language': {\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-column-span': '3',\r\n          '-ms-grid-row': '11',\r\n\r\n          '& select': {\r\n            minWidth: 180,\r\n            width: 'fit-content',\r\n          },\r\n        },\r\n\r\n        '& .form-buttons': {\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-column-span': '3',\r\n          '-ms-grid-row': '13',\r\n        },\r\n\r\n        '& .form-validation': {\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n          '-ms-grid-column': '1',\r\n          '-ms-grid-column-span': '3',\r\n\r\n          '&.flexible-grid-row-2': {\r\n            '-ms-grid-row': '3',\r\n          },\r\n\r\n          '&.flexible-grid-row-3': {\r\n            '-ms-grid-row': '4',\r\n          },\r\n\r\n          '&.flexible-grid-row-5': {\r\n            '-ms-grid-row': '7',\r\n          },\r\n\r\n          '&.flexible-grid-row-8': {\r\n            '-ms-grid-row': '12',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .keyword-editor .form-grid': {\r\n        display: 'flex',\r\n        flexDirection: 'column',\r\n\r\n        '& .form-default-text input': {\r\n          width: 124,\r\n        },\r\n      },\r\n\r\n      '& .k-select': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .radio': {\r\n        padding: 0,\r\n      },\r\n\r\n      '& .error': {\r\n        color: '#A80000',\r\n        listStyle: 'none',\r\n        margin: 0,\r\n        padding: 0,\r\n\r\n        '& li': {\r\n          paddingTop: 4,\r\n        },\r\n      },\r\n\r\n      '& .default-value-input': {\r\n        '& > .display-inline-block ~ .display-inline-block': {\r\n          marginTop: 36,\r\n        },\r\n\r\n        '& .col-sm-4, & .col-sm-8': {\r\n          display: 'flex',\r\n          float: 'none',\r\n          padding: 0,\r\n          width: '100%',\r\n\r\n          '& label': {\r\n            padding: '0 0 7px 0',\r\n          },\r\n\r\n          '& input': {\r\n            width: 124,\r\n          },\r\n        },\r\n\r\n        '& input.btn-default': {\r\n          marginLeft: 8,\r\n        },\r\n      },\r\n\r\n      '& .iff-editor': {\r\n        '& .panel-body': {\r\n          position: 'static',\r\n          overflow: 'hidden',\r\n        },\r\n\r\n        '& .iff-editor__label': {\r\n          display: 'flex',\r\n\r\n          '& ~ .iff-editor__label': {\r\n            marginTop: 32,\r\n          },\r\n\r\n          '& label': {\r\n            padding: '0 0 7px 0',\r\n          },\r\n        },\r\n\r\n        '& .iff-editor__field': {\r\n          display: 'flex',\r\n          alignItems: 'baseline',\r\n\r\n          '& input': {\r\n            width: 220,\r\n          },\r\n\r\n          '& select': {\r\n            width: 180,\r\n\r\n            '& + span': {\r\n              marginLeft: 11,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .iff-editor__buttons-group': {\r\n          marginTop: 36,\r\n\r\n          '& button ~ button': {\r\n            marginLeft: 8,\r\n          },\r\n        },\r\n\r\n        '& .iff-editor__field--audience-selector': {\r\n          marginTop: 16,\r\n\r\n          ...audienceSelectorStyle({ palette, iconFontFamily }),\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","import { commonDoubleListBoxStyle } from './double-list-box-style';\r\nimport { convertToLocalStyle } from './utils/convert-style';\r\nimport { glyphIconStyle } from './glyph-icon-style';\r\nimport { paginationStyle, searchboxStyle } from './shared-styles-from-theme-fluent';\r\n\r\n// Audience selector style for IF functions on ad customizers UI\r\nexport const audienceSelectorStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '&': {\r\n    '& .row': {\r\n      margin: 0,\r\n    },\r\n\r\n    '& .col-sm-12': {\r\n      padding: 0,\r\n    },\r\n\r\n    '& .panel-heading': {\r\n      fontWeight: 'normal',\r\n    },\r\n\r\n    '& .form-control': {\r\n      minWidth: 180,\r\n      width: 'fit-content',\r\n    },\r\n\r\n    '& .DMP_doublelistbox_section': {\r\n      '& .doubleListBox': {\r\n        width: 1240,\r\n\r\n        '& .dlb-filter-alignPlaceholder': {\r\n          width: 608,\r\n\r\n          '& .searchbox-input': {\r\n            paddingLeft: 48,\r\n            height: 48,\r\n            width: '100%',\r\n          },\r\n\r\n          '& .form-control-feedback': {\r\n            left: 0,\r\n            lineHeight: '48px',\r\n            height: 48,\r\n            marginLeft: 16,\r\n            position: 'absolute',\r\n            width: 'fit-content',\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element:nth-child(1)': {\r\n          '& .panel-form': {\r\n            '& .panel-heading': {\r\n              margin: '-48px -1px 0 -1px',\r\n              padding: 0,\r\n            },\r\n\r\n            '& .panel-body': {\r\n              marginTop: 16,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element': {\r\n          boxSizing: 'content-box',\r\n          padding: 0,\r\n          width: 610,\r\n\r\n          '& ~ .layout-columns-element': {\r\n            paddingLeft: 10,\r\n          },\r\n\r\n          '& .panel-form': {\r\n            border: [1, 'solid', '#BBB'],\r\n            boxShadow: 'none',\r\n            height: 352,\r\n            marginTop: 48,\r\n            padding: 0,\r\n\r\n            '& .panel-heading': {\r\n              backgroundColor: `${palette.white}`,\r\n              border: 'none',\r\n              padding: '0 8px',\r\n            },\r\n\r\n            '& .panel-body': {\r\n              padding: 0,\r\n\r\n              '& .dlb-source-container, & .dlb-selected-container': {\r\n                '& .dlb-source-summary': {\r\n                  padding: '0 8px',\r\n                },\r\n\r\n                '& .audience-association-selector-header': {\r\n                  height: 36,\r\n                  lineHeight: '20px',\r\n                  padding: '5px 8px',\r\n\r\n                  '& .audience-association-selector-header-table': {\r\n                    width: 510,\r\n\r\n                    '& .audience-association-selector-header-col': {\r\n                      fontWeight: 600,\r\n                      width: 'auto',\r\n                    },\r\n\r\n                    '& .audience-association-selector-header-listsize-col': {\r\n                      '& .appListItem-text': {\r\n                        textAlign: 'right',\r\n                        width: 'auto',\r\n                      },\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .dlb-selectAll, .dlb-deselectAll': {\r\n                  color: palette.themePrimary,\r\n                  padding: '0 10px',\r\n                  position: 'absolute',\r\n                  right: 8,\r\n                  zIndex: 1,\r\n\r\n                  '& .arrow-button': {\r\n                    display: 'none',\r\n                  },\r\n                },\r\n\r\n                '& .dlb-selectAll': {\r\n                  top: 106,\r\n                },\r\n\r\n                '& .dlb-deselectAll': {\r\n                  top: 58,\r\n                },\r\n\r\n                '& .dlb-source-list, & .dlb-selected-list': {\r\n                  height: 228,\r\n                  overflowX: 'auto',\r\n                  overflowY: 'auto',\r\n\r\n                  '& .dlbItem': {\r\n                    minHeight: 28,\r\n                    position: 'relative',\r\n                    padding: '0 8px',\r\n\r\n                    '& .glyphicon-triangle-right, & .glyphicon-triangle-bottom': {\r\n                      marginRight: 5,\r\n                    },\r\n\r\n                    '& .dlbItem-actions, & .remove': {\r\n                      position: 'absolute',\r\n                      right: 8,\r\n                      margin: '4px 0',\r\n                    },\r\n\r\n                    '& .dlbItem-customAction, .arrow-button': {\r\n                      textDecoration: 'none',\r\n\r\n                      '&:focus': {\r\n                        outline: 'solid 1px',\r\n                        outlineOffset: 2,\r\n                      },\r\n                    },\r\n\r\n                    '& .dlbItem-content': {\r\n                      minHeight: 28,\r\n                      padding: '4px 0',\r\n\r\n                      '& table': {\r\n                        width: 510,\r\n\r\n                        '& .tree-indent': {\r\n                          paddingLeft: 10,\r\n                        },\r\n                      },\r\n\r\n                      '& table > tbody > tr > td:nth-child(1)': {\r\n                        textAlign: 'left',\r\n                        width: 'auto',\r\n                      },\r\n                      '& table > tbody > tr > td:nth-child(2)': {\r\n                        textAlign: 'right',\r\n                        width: 120,\r\n                      },\r\n\r\n                      '& span': {\r\n                        wordBreak: 'break-word',\r\n                      },\r\n                    },\r\n                  },\r\n\r\n                  '& .disabled': {\r\n                    '& .arrow-button:before': {\r\n                      content: '\"\"',\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .dlb-source-list ul.list-container': {\r\n                  listStyle: 'none',\r\n                  paddingLeft: 0,\r\n                },\r\n\r\n                '& .dlb-selected-list': {\r\n                  height: 276,\r\n                },\r\n\r\n                '& ::-webkit-scrollbar':\r\n                {\r\n                  width: 4,\r\n                  backgroundColor: 'transparent',\r\n                },\r\n\r\n                '& ::-webkit-scrollbar-track':\r\n                {\r\n                  backgroundColor: 'transparent',\r\n                },\r\n\r\n                '& ::-webkit-scrollbar-thumb':\r\n                {\r\n                  width: 4,\r\n                  height: 44,\r\n                  backgroundColor: '#EBEAE8',\r\n                },\r\n\r\n                '& ::-webkit-scrollbar:horizontal':\r\n                {\r\n                  height: 4,\r\n                  backgroundColor: 'transparent',\r\n                },\r\n\r\n                '& ::-webkit-scrollbar-track:horizontal':\r\n                {\r\n                  backgroundColor: 'transparent',\r\n                },\r\n\r\n                '& ::-webkit-scrollbar-thumb:horizontal':\r\n                {\r\n                  width: 200,\r\n                  height: 4,\r\n                  backgroundColor: '#EBEAE8',\r\n                },\r\n              },\r\n\r\n              '& .dlb-emptyMessage, & .dlb-emptySelectedMessage': {\r\n                padding: '0 8px',\r\n                height: 36,\r\n                lineHeight: '36px',\r\n                marginBottom: 0,\r\n\r\n                '& p': {\r\n                  marginBottom: 0,\r\n                },\r\n              },\r\n\r\n              '& .dlb-emptyMessage[style=\"display: none;\"] + .dlb-source-list': {\r\n                height: 236,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .dlb-pager-container': {\r\n            width: 'fit-content',\r\n            float: 'right',\r\n            marginTop: 8,\r\n\r\n            '& .pager': {\r\n              height: 'auto',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    ...commonDoubleListBoxStyle({ palette }),\r\n    ...paginationStyle({ palette, iconFontFamily }),\r\n    ...convertToLocalStyle(glyphIconStyle({ palette, iconFontFamily })),\r\n    ...searchboxStyle({ palette, iconFontFamily }),\r\n  },\r\n});\r\n","export const commonDoubleListBoxStyle = ({ palette = {} }) => ({\r\n  '& .doubleListBox.layout-columns': {\r\n    '& .layout-columns-container.row': {\r\n      '& .layout-columns-element.col-sm-6': {\r\n        '&>.row': {\r\n          '&>.col-sm-12': {\r\n            '& .panel-form': {\r\n              '& .panel-body': {\r\n                '& .dlb-source-container, & .dlb-selected-container': {\r\n                  '& .dlb-source.dlb-source-list, & .dlb-selected.dlb-selected-list': {\r\n                    outline: 'none',\r\n\r\n                    '&:empty:focus': {\r\n                      border: `1px solid ${palette.neutralSecondary}`,\r\n                    },\r\n\r\n                    '& .dlbItem': {\r\n                      '&:hover': {\r\n                        backgroundColor: palette.neutralLighter,\r\n                      },\r\n\r\n                      '&.k-state-focused': {\r\n                        border: `1px solid ${palette.neutralSecondary}`,\r\n                      },\r\n\r\n                      '&.k-state-selected, &.selected': {\r\n                        backgroundColor: palette.neutralLight,\r\n                      },\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .dlb-source-container .dlb-source.dlb-source-list .selectable-treeview .dlbItem': {\r\n                  '& .dlbItem-content': {\r\n                    '& .audience-association-selector-item-table': {\r\n                      '& .tree-item': {\r\n                        outline: 'none',\r\n\r\n                        '&.active': {\r\n                          backgroundColor: palette.neutralLight,\r\n                        },\r\n                        '&.focus': {\r\n                          border: `1px solid ${palette.neutralSecondary}`,\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","import _ from 'underscore';\r\nimport { merge } from '@bingads-webui-universal/primitive-utilities';\r\n\r\nexport const convertToLocalStyle = style => _.object(\r\n  _.map(_.keys(style), key => `& ${key}`),\r\n  _.values(style)\r\n);\r\n\r\nexport const convertToConcatStyle = style => _.object(\r\n  _.map(_.keys(style), key => `&${key}`),\r\n  _.values(style)\r\n);\r\n\r\nexport const convertToGlobalStyle = (style) => {\r\n  let mergeStyle = style;\r\n  if (_.isArray(style)) {\r\n    mergeStyle = merge(\r\n      {},\r\n      ...style\r\n    );\r\n  }\r\n\r\n  return {\r\n    div: mergeStyle,\r\n  };\r\n};\r\n","export const glyphIconStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.arrow-button.enabled': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.themePrimary,\r\n    cursor: 'pointer',\r\n  },\r\n\r\n  '.arrow-button.enabled:before': {\r\n    content: '\"\\\\E710\"',\r\n  },\r\n\r\n  '.arrow-button.remove': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.themePrimary,\r\n    cursor: 'pointer',\r\n  },\r\n\r\n  '.arrow-button.remove:before': {\r\n    content: '\"\\\\E738\"',\r\n  },\r\n\r\n  '.infomark': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 14,\r\n    marginRight: 5,\r\n    color: '#606060',\r\n    verticalAlign: 'middle',\r\n    display: 'inline-block',\r\n  },\r\n\r\n  '.infomark:before': {\r\n    content: '\"\\\\E783\"',\r\n  },\r\n\r\n  '.expanderImage, .expandedImage': {\r\n    color: palette.themePrimary,\r\n  },\r\n\r\n  '.expanderImage:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E76C\"',\r\n  },\r\n\r\n  '.expandedImage:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E70D\"',\r\n  },\r\n\r\n  '.glyphicon-remove': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.themePrimary,\r\n  },\r\n\r\n  '.glyphicon-remove:before': {\r\n    content: '\"\\\\E711\"',\r\n  },\r\n\r\n  '.glyphicon-triangle-right': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.neutralPrimary,\r\n  },\r\n\r\n  '.glyphicon-triangle-right:before': {\r\n    content: '\"\\\\F08F\"',\r\n  },\r\n\r\n  '.glyphicon-triangle-bottom': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.neutralPrimary,\r\n  },\r\n\r\n  '.glyphicon-triangle-bottom:before': {\r\n    content: '\"\\\\F08E\"',\r\n  },\r\n\r\n  '.glyphicon-plus': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.themePrimary,\r\n  },\r\n\r\n  '.glyphicon-plus:before': {\r\n    content: '\"\\\\E710\"',\r\n  },\r\n\r\n  'input[type=\"checkbox\"]': {\r\n    fontFamily: iconFontFamily,\r\n    appearance: 'none',\r\n    '-webkit-appearance': 'none',\r\n  },\r\n\r\n  'input[type=\"checkbox\"]::after': {\r\n    content: '\"\\\\E73E\"',\r\n  },\r\n\r\n  'input[type=\"radio\"]': {\r\n    outline: 'none !important',\r\n  },\r\n\r\n  '.glyphicon-arrow-down, .glyphicon-arrow-up': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.neutralPrimary,\r\n  },\r\n\r\n  '.glyphicon-arrow-down:before': {\r\n    content: '\"\\\\E74B\"',\r\n  },\r\n\r\n  '.glyphicon-arrow-up:before': {\r\n    content: '\"\\\\E74A\"',\r\n  },\r\n\r\n  '.map-icon__pin--included': {\r\n    fontFamily: iconFontFamily,\r\n    color: '#107C10',\r\n  },\r\n\r\n  '.map-icon__pin--included:before': {\r\n    content: '\"\\\\F5CA\"',\r\n  },\r\n\r\n  '.map-icon__pin--excluded': {\r\n    fontFamily: iconFontFamily,\r\n    color: '#A80000',\r\n  },\r\n\r\n  '.map-icon__pin--excluded:before': {\r\n    content: '\"\\\\F5CD\"',\r\n  },\r\n\r\n  '.status_icon': {\r\n    fontFamily: iconFontFamily,\r\n  },\r\n\r\n  '.status_icon:before': {\r\n    content: '\"\\\\E712\"',\r\n  },\r\n\r\n  '.insight_icon': {\r\n    fontFamily: iconFontFamily,\r\n  },\r\n\r\n  '.insight_icon:before': {\r\n    content: '\"\\\\E3AF\"',\r\n  },\r\n\r\n  '.glyph-caret-right::before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E974\"',\r\n  },\r\n  '.glyph-caret-left::before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E973\"',\r\n  },\r\n  '.closeimage': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 14,\r\n    color: palette.neutralSecondary,\r\n  },\r\n\r\n  '.closeimage:before': {\r\n    content: '\"\\\\E711\"',\r\n  },\r\n\r\n  '.glyphicon-pencil, .edit_icon': {\r\n    fontFamily: iconFontFamily,\r\n    fontStyle: 'normal',\r\n  },\r\n\r\n  '.glyphicon-pencil::before, .edit_icon::before': {\r\n    content: '\"\\\\E70F\"',\r\n    color: palette.themePrimary,\r\n  },\r\n  '.grid-asc::before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\EE68\"',\r\n  },\r\n  '.grid-des::before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\EE69\"',\r\n  },\r\n\r\n  '.glyphicon-chevron-down:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E70D\"',\r\n  },\r\n  '.glyphicon-chevron-up:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E70E\"',\r\n  },\r\n\r\n  '.recommendation-light-bulb:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\EA80\"',\r\n  },\r\n  '.status_error:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E946\"',\r\n    color: palette.redDark,\r\n  },\r\n  '.status_warning:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E7BA\"',\r\n    color: '#FF9900',\r\n  },\r\n  '.status_success:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E930\"',\r\n    color: palette.green,\r\n  },\r\n  '.statusPending_icon:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E7BA\"',\r\n    color: palette.orange,\r\n  },\r\n  '.statusProcessing_icon:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\EA03\"',\r\n  },\r\n  '.icon-arrowdown-normal:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E70D\"',\r\n  },\r\n  '.icon-arrowdown-hover:before': {\r\n    fontFamily: iconFontFamily,\r\n    content: '\"\\\\E70D\"',\r\n  },\r\n  '.glyphicon-arrow-left': {\r\n    fontFamily: iconFontFamily,\r\n    color: palette.themePrimary,\r\n  },\r\n  '.glyphicon-arrow-left:before': {\r\n    content: '\"\\\\E72B\"',\r\n  },\r\n});\r\n","export const adColumnPreviewStyle = () => ({\r\n  '& .previewAd': {\r\n    width: '100%',\r\n    textAlign: 'left',\r\n    wordWrap: 'break-word', // IE support\r\n    wordBreak: 'break-word',\r\n    overflowWrap: 'break-word',\r\n    minWidth: 230,\r\n    fontSize: 13,\r\n    lineHeight: '19px',\r\n  },\r\n\r\n  '& .previewTitleAd, & .previewTitleAdNoLink, & .productAd': {\r\n    color: '#001BA0',\r\n    fontSize: 20,\r\n  },\r\n\r\n  '& .previewUrlAd': {\r\n    color: '#006D21',\r\n    fontSize: 11,\r\n  },\r\n\r\n  '& .previewTextAd, & .dynamic-search-ad-preview-text': {\r\n    color: '#666666',\r\n  },\r\n\r\n  '& .moreHint': {\r\n    color: '#979797',\r\n  },\r\n\r\n  '& .linkToAssets': {\r\n    color: '#0078D4',\r\n  },\r\n\r\n  '& .responsive-ad-preview-shared-template': {\r\n    '& div, & p': {\r\n      color: '#767676',\r\n      textOverflow: 'ellipsis',\r\n      overflow: 'hidden',\r\n      whiteSpace: 'nowrap',\r\n    },\r\n\r\n    '& img': {\r\n      width: 114,\r\n      height: 60,\r\n      marginRight: 8,\r\n    },\r\n  },\r\n});\r\n","import { adColumnPreviewStyle } from './ad-column-preview-style';\r\nimport {\r\n  alertStyle,\r\n  btnStyle,\r\n  buttonInputStyle,\r\n  paginationStyle,\r\n} from './shared-styles-from-theme-fluent';\r\nimport { convertToLocalStyle } from './utils/convert-style';\r\nimport { getReactModalStyle } from './react-modal-style';\r\nimport { glyphIconStyle } from './glyph-icon-style';\r\nimport { tableStyle } from './table-style';\r\n\r\nexport const adSuggestionStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .ad-suggestion-container': {\r\n    padding: '12px 32px',\r\n    borderBottom: [1, 'solid', palette.neutralLight],\r\n    marginBottom: 0,\r\n\r\n    '& .table-container': {\r\n      fontSize: 13,\r\n      lineHeight: '19px',\r\n\r\n      '& table > thead > tr > th, table > tbody > tr > td': {\r\n        padding: '8px 10px',\r\n        verticalAlign: 'middle',\r\n      },\r\n      '& table > colgroup + thead > tr:first-child > th': {\r\n        borderTop: '0 !important',\r\n      },\r\n      '& table > thead > tr > th.text-center': {\r\n        textAlign: 'center',\r\n      },\r\n      '& table > tfoot > tr > td': {\r\n        border: 0,\r\n      },\r\n      '& col.col-selection': {\r\n        width: 50,\r\n        minWidth: 50,\r\n      },\r\n      '& col.col-RecommendedAd': {\r\n        width: 350,\r\n        minWidth: 350,\r\n      },\r\n      '& col.col-Campaign': {\r\n        width: 250,\r\n        minWidth: 250,\r\n      },\r\n      '& col.col-AdGroup': {\r\n        width: 250,\r\n        minWidth: 250,\r\n      },\r\n      '& col.col-ApplyDate': {\r\n        width: 100,\r\n        minWidth: 100,\r\n      },\r\n      '& col.col-Dismiss': {\r\n        width: 50,\r\n        minWidth: 50,\r\n      },\r\n      '& tbody > tr .grid-edit-icon': {\r\n        lineHeight: 1,\r\n        visibility: 'visible',\r\n        opacity: 0,\r\n\r\n        '&:focus': {\r\n          visibility: 'visible',\r\n          opacity: 100,\r\n        },\r\n      },\r\n      '& tbody > tr:hover': {\r\n        backgroundColor: palette.neutralLighter,\r\n\r\n        '& .grid-edit-icon': {\r\n          visibility: 'visible',\r\n          opacity: 100,\r\n        },\r\n      },\r\n      '& .grid-editable-cell-container': {\r\n        alignItems: 'center',\r\n        display: 'flex',\r\n        justifyContent: 'flex-start',\r\n\r\n        '& .previewAd': {\r\n          lineHeight: 1.5,\r\n\r\n          '& a.previewTitleAd': {\r\n            lineHeight: 1,\r\n          },\r\n\r\n          '& img': {\r\n            marginRight: 8,\r\n          },\r\n        },\r\n      },\r\n      '& .dismiss-recommendation': {\r\n        cursor: 'pointer',\r\n      },\r\n      '& a.select-all-cross-page, a.deselect-all-cross-page': {\r\n        marginLeft: 5,\r\n      },\r\n      '& input[type=\"checkbox\"]:focus': {\r\n        outline: `1px solid ${palette.neutralSecondary} !important`,\r\n        outlineOffset: 1,\r\n      },\r\n    },\r\n    '& .btn-primary': {\r\n      marginRight: 10,\r\n    },\r\n    '& .alert.alert-recommendation': {\r\n      background: palette.themeLighterAlt,\r\n      border: [1, 'solid', palette.themePrimary],\r\n      padding: '10px 32px 10px 8px',\r\n      lineHeight: '16px',\r\n\r\n      '& .alert-info-inline': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& .glyphicon, .recommendation-light-bulb': {\r\n        color: palette.themePrimary,\r\n        fontSize: 16,\r\n        lineHeight: '22px',\r\n        verticalAlign: 'middle',\r\n      },\r\n\r\n      '& .recommendation-light-bulb': {\r\n        margin: '0 5px 0 8px',\r\n      },\r\n\r\n      '& .recommendation-detail-info': {\r\n        fontWeight: 600,\r\n        '& a': {\r\n          color: palette.themeDark,\r\n        },\r\n      },\r\n    },\r\n    '& .ad-suggestion-panel': {\r\n      '& #ad-suggestion-dropdown': {\r\n        width: 'fit-content',\r\n      },\r\n      '& .previewAd': {\r\n        '& img': {\r\n          marginRight: 5,\r\n        },\r\n      },\r\n    },\r\n    '& .value-proposition': {\r\n      paddingTop: 16,\r\n      paddingBottom: 10,\r\n    },\r\n    '& .disabled': {\r\n      'pointer-events': 'none',\r\n    },\r\n    ...adColumnPreviewStyle(),\r\n    ...alertStyle({ palette }),\r\n    ...buttonInputStyle({ palette }),\r\n    ...paginationStyle({ palette }),\r\n    ...tableStyle({ palette }),\r\n    ...convertToLocalStyle(glyphIconStyle({ palette, iconFontFamily })),\r\n  },\r\n});\r\n\r\nexport const adSuggestionModalStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.adsbybing-optin-modal': {\r\n    maxWidth: 940,\r\n\r\n    '& .adsbybing-optin-modal-info': {\r\n      '& br': {\r\n        display: 'none',\r\n      },\r\n      '& .adsbybing-optin-modal-title': {\r\n        fontWeight: 600,\r\n        fontSize: 20,\r\n        marginBottom: 8,\r\n      },\r\n    },\r\n    '& .adsbybing-optin-dismiss-feedback': {\r\n      marginTop: 16,\r\n    },\r\n    '& .adsbybing-optin-action-container, .actions': {\r\n      marginTop: 16,\r\n\r\n      '& .btn': {\r\n        marginRight: 8,\r\n      },\r\n    },\r\n    '& .closeimage': {\r\n      color: palette.neutralSecondary,\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 12,\r\n\r\n      '&:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n    ...buttonInputStyle({ palette }),\r\n    ...convertToLocalStyle(btnStyle({ palette })),\r\n  },\r\n  ...getReactModalStyle(),\r\n});\r\n","export const getReactModalStyle = () => ({\r\n  '.ReactModalPortal': {\r\n    '& .react-modal-overlay, .ReactModal__Overlay': {\r\n      position: 'fixed',\r\n      top: 0,\r\n      left: 0,\r\n      right: 0,\r\n      bottom: 0,\r\n      zIndex: 1061,\r\n      background: 'rgba(255, 255, 255, 0.4)',\r\n    },\r\n\r\n    '& .react-modal, .ReactModal__Content': {\r\n      position: 'absolute',\r\n      top: '50%',\r\n      left: '50%',\r\n      padding: 24,\r\n      outline: 'none',\r\n      transform: 'translate(-50%, -50%)',\r\n      marginRight: '-50%',\r\n      background: '#fff',\r\n      boxShadow: '0px 4.8px 14.4px rgba(0, 0, 0, 0.18), 0px 25.6px 57.6px rgba(0, 0, 0, 0.22)',\r\n    },\r\n  },\r\n\r\n  reactModalButton: {\r\n    marginRight: '12px',\r\n  },\r\n});\r\n","export const tableStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .table': {\r\n    border: 0,\r\n    '& > thead > tr > th': {\r\n      fontWeight: 600,\r\n      verticalAlign: 'top',\r\n      border: `1px solid ${palette.neutralLight} !important`,\r\n      '&:first-child': {\r\n        borderLeft: '0 !important',\r\n      },\r\n      '&:last-child': {\r\n        borderRight: '0 !important',\r\n      },\r\n      '&.column-header-sortable': {\r\n        cursor: 'pointer',\r\n        '& .glyphicon-arrow-up:before': {\r\n          content: '\"\\\\EE68\"',\r\n          fontFamily: iconFontFamily,\r\n        },\r\n        '& .glyphicon-arrow-down:before': {\r\n          content: '\"\\\\EE69\"',\r\n          fontFamily: iconFontFamily,\r\n        },\r\n      },\r\n      '&.column-name-isIncludedOrExcluded > span': {\r\n        maxWidth: '100%', // Fix word break for Ad group include/Exclude setting\r\n      },\r\n      '& span': {\r\n        display: 'inline-block',\r\n        maxWidth: '80%',\r\n      },\r\n    },\r\n    '& > tbody > tr > td': {\r\n      verticalAlign: 'middle',\r\n      padding: '0 10px',\r\n      lineHeight: 1.8,\r\n      border: `1px solid ${palette.neutralLight}`,\r\n      '&:first-child': {\r\n        borderLeft: '0 !important',\r\n      },\r\n      '&:last-child': {\r\n        borderRight: '0 !important',\r\n      },\r\n    },\r\n    '& > tfoot > tr > td': {\r\n      '&:first-child': {\r\n        borderLeft: '0 !important',\r\n      },\r\n      '&:last-child': {\r\n        borderRight: '0 !important',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .table__row--indent td:first-child': {\r\n    paddingLeft: '32px !important',\r\n  },\r\n\r\n  '& .bidBoost-percentValue': {\r\n    width: 'fit-content',\r\n    display: 'inline-block',\r\n  },\r\n});\r\n","import { getBlockerStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const reactUIBlockerStyle = palette => ({\r\n  '& .react-block-ui': {\r\n    '& > div:last-child': {\r\n      alignItems: 'center',\r\n      backgroundColor: 'white',\r\n      color: palette.themePrimary,\r\n      display: 'flex',\r\n      outline: 'none',\r\n      padding: 10,\r\n\r\n      '& .blocker-text': {\r\n        fontWeight: 'normal',\r\n      },\r\n\r\n      '& .blocker-image': getBlockerStyle(28, palette),\r\n    },\r\n  },\r\n});\r\n","export const messageBarStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.alert': {\r\n    border: 'none',\r\n    boxShadow: 'none',\r\n    color: palette.neutralPrimary,\r\n    display: 'flex',\r\n    fontSize: 12,\r\n    height: 'auto',\r\n    lineHeight: '16px',\r\n    padding: '8px 32px 8px 8px',\r\n  },\r\n\r\n  '.alert-success .alert-image:before': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 16,\r\n    lineHeight: '16px',\r\n    color: palette.green,\r\n    marginRight: 8,\r\n    content: '\"\\\\E930\"',\r\n  },\r\n\r\n  '.alert-danger .alert-image:before': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 16,\r\n    lineHeight: '16px',\r\n    color: '#A80000',\r\n    marginRight: 8,\r\n    content: '\"\\\\EA39\"',\r\n  },\r\n\r\n  '.alert-info .alert-image:before': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 16,\r\n    lineHeight: '16px',\r\n    color: palette.neutralSecondary,\r\n    marginRight: 8,\r\n    content: '\"\\\\E946\"',\r\n  },\r\n\r\n  '.alert-warning .alert-image:before': {\r\n    fontFamily: iconFontFamily,\r\n    fontSize: 16,\r\n    lineHeight: '16px',\r\n    color: palette.orange,\r\n    marginRight: 8,\r\n\r\n    content: '\"\\\\E7BA\"',\r\n  },\r\n\r\n  '.form-group > #KoErrors': {\r\n    marginLeft: 15,\r\n  },\r\n\r\n  '#KoErrors': {\r\n    paddingLeft: 8,\r\n  },\r\n});\r\n","export const linkStyle = {\r\n  '& a': {\r\n    color: '#0078d4',\r\n    textDecoration: 'none',\r\n    cursor: 'pointer',\r\n  },\r\n\r\n  '& a:hover, a:active': {\r\n    color: '#004578',\r\n    textDecoration: 'underline',\r\n  },\r\n\r\n  '& a:focus': {\r\n    outline: 'none',\r\n    border: '1px solid #605E5C',\r\n  },\r\n};\r\n","export const learnMoreStyle = ({ palette = {} }) => ({\r\n  '& .HelpTopic': {\r\n    padding: 0,\r\n    border: 'none',\r\n    color: palette.themePrimary,\r\n    background: 'none',\r\n    textDecoration: 'underline',\r\n  },\r\n});\r\n","import { getBlockerStyle, spinnerKeyframe } from './shared-styles-from-theme-fluent';\r\n\r\nexport const getLocalBlockerStyle = palette => (Object.assign({\r\n  '.blocker-local': {\r\n    alignItems: 'center',\r\n    backgroundColor: 'rgba(51,51,51,0.15)',\r\n    display: 'flex !important',\r\n    justifyContent: 'center',\r\n    position: 'absolute',\r\n    zIndex: 20,\r\n\r\n    '& > .blocker-indicator': {\r\n      alignItems: 'center',\r\n      backgroundColor: 'white',\r\n      color: palette.themePrimary,\r\n      display: 'flex',\r\n      outline: 'none',\r\n      padding: 10,\r\n\r\n      '& > .blocker-image': getBlockerStyle(28, palette),\r\n    },\r\n  },\r\n}, spinnerKeyframe));\r\n","import { underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\nimport { uurlTestToolStyle } from './uurl-test-tool-style';\r\n\r\nexport const advancedSettingsSectionStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }, { advancedSectionMarginLeft = 38 } = {}) => ({\r\n\r\n  '& .advanced-settings-section, .adschedule-targets-container, .bid-adjustments-container, .audience-advanced-settings-section, .settings-top-grid-panel-container': {\r\n\r\n    '& .bidBoost-percentValue': {\r\n      width: 66,\r\n      marginRight: 8,\r\n    },\r\n\r\n    padding: '8px 0 20px 0',\r\n    borderTop: `1px solid ${palette.neutralSecondary}`,\r\n\r\n    '& .col-sm-10>div': {\r\n      marginBottom: 20,\r\n    },\r\n\r\n    '& .table>thead>tr>th': {\r\n      verticalAlign: 'top',\r\n      textAlign: 'left',\r\n      border: `1px solid ${palette.neutralLight}`,\r\n      fontWeight: 'normal',\r\n    },\r\n\r\n    '& .table>tbody>tr>td': {\r\n      verticalAlign: 'middle',\r\n      padding: '0 10px',\r\n      height: 42,\r\n      border: `1px solid ${palette.neutralLight}`,\r\n    },\r\n\r\n    '& .table__row--indent td:first-child': {\r\n      paddingLeft: '32px !important',\r\n    },\r\n\r\n    '& .table>thead>tr>th span': {\r\n      display: 'inline-block',\r\n      maxWidth: '80%',\r\n    },\r\n\r\n    '& #setAdvancedSettings .form-group': {\r\n      marginLeft: advancedSectionMarginLeft,\r\n    },\r\n\r\n    '& #setAdvancedSettings .form-group:nth-child(2)>label': {\r\n      marginTop: 0,\r\n    },\r\n\r\n    '& #setAdvancedSettings': {\r\n      '& div[data-bind=\"visible: showNativeAds()\"], & div[data-bind=\"visible: showMultimediaAds()\"], & div[data-bind=\"visible: showAdDistribution()\"], & div[data-bind=\"visible: showAdRotation()\"], & div[data-bind=\"visible: showLocationTargets()\"], & div[data-bind=\"visible: showAdSchedule()\"], & div[data-bind=\"visible: showDeviceTargets()\"]': {\r\n        '&>.form-control-static': {\r\n          minHeight: 1,\r\n\r\n          '&>a:not(.helpbutton)': {\r\n            '&, &[aria-expanded=\"false\"], &.collapsed': {\r\n              textDecoration: 'none',\r\n              outline: 'none',\r\n              border: 'none',\r\n              color: palette.themePrimary,\r\n              lineHeight: '24px',\r\n              fontSize: 14,\r\n\r\n              '&:before': {\r\n                content: '\"\\\\E76C\"',\r\n                fontFamily: iconFontFamily,\r\n                marginRight: 8,\r\n                position: 'relative',\r\n                top: 2,\r\n              },\r\n\r\n              '&:hover': {\r\n                color: palette.themeDarker,\r\n                borderBottom: `1px solid ${palette.neutralSecondary}`,\r\n              },\r\n\r\n              '&:focus': {\r\n                color: palette.themeDarker,\r\n                border: `1px solid ${palette.neutralSecondary}`,\r\n              },\r\n            },\r\n\r\n            '&[aria-expanded=\"true\"]:before': {\r\n              content: '\"\\\\E70D\"',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .expanderImage, .expandedImage': {\r\n      fontSize: 18,\r\n      marginRight: 11,\r\n    },\r\n\r\n    '& .form-control-static': {\r\n      margin: '3px 0',\r\n      padding: 0,\r\n      minHeight: 'fit-content',\r\n      color: palette.neutralSecondary,\r\n      marginBottom: '3px !important',\r\n    },\r\n\r\n    ...uurlTestToolStyle({ palette, iconFontFamily }),\r\n\r\n    /** *************Ad schedule begin******* */\r\n\r\n    '& .ad-schedule, .adschedule-targets, .advanced-scheduling-grid': {\r\n\r\n      '&.show-cashback-percent': {\r\n        '& .ad-scheduling-grid': {\r\n          minWidth: 1200,\r\n        },\r\n      },\r\n\r\n      '& .date-settings__container': {\r\n\r\n        '& .date-settings-intro': {\r\n          padding: 0,\r\n        },\r\n\r\n        '& .date-container': {\r\n          '& table ': {\r\n            height: 200,\r\n            width: 500,\r\n            position: 'relative',\r\n\r\n\r\n            '& td': {\r\n              position: 'absolute',\r\n              width: '100%',\r\n            },\r\n\r\n            '& .schedule-item-label': {\r\n              fontWeight: 600,\r\n              color: '#323130',\r\n            },\r\n\r\n            '& tr:nth-child(1)': {\r\n              height: 92,\r\n\r\n              '& td:nth-child(2)': {\r\n                top: 26,\r\n              },\r\n            },\r\n\r\n            '& tr:nth-child(2)': {\r\n              '& td:nth-child(2)': {\r\n                marginTop: 25,\r\n\r\n                '& .radio': {\r\n                  padding: 0,\r\n\r\n                  '& .col-sm-3': {\r\n                    width: 'auto',\r\n                    marginTop: 5,\r\n\r\n                    '& label': {\r\n                      paddingTop: 0,\r\n                      paddingBottom: 0,\r\n                    },\r\n                  },\r\n\r\n                  '& .col-sm-9': {\r\n                    width: 'auto',\r\n                  },\r\n                },\r\n\r\n                '& .radio.row': {\r\n                  padding: [8, 5, 8, 8],\r\n                  left: -8,\r\n                  position: 'relative',\r\n                  width: 'fit-content',\r\n\r\n                  '&:focus-within': {\r\n                    outline: `1px solid ${palette.neutralSecondary}`,\r\n                  },\r\n                },\r\n              },\r\n            },\r\n\r\n            '& .date-start, & .date-end': {\r\n              width: '220px !important',\r\n            },\r\n\r\n          },\r\n        },\r\n\r\n      },\r\n\r\n      '& .k-select': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& td>.col-sm-9': {\r\n        padding: 0,\r\n      },\r\n      '& td>.radio': {\r\n        width: 'auto',\r\n      },\r\n\r\n      '& .scheduling-grid': {\r\n        marginTop: 46,\r\n        marginBottom: 32,\r\n        minWidth: 918,\r\n      },\r\n      '& .new-advance-target-grid-container': {\r\n        marginBottom: 12,\r\n      },\r\n\r\n      '& .ad-scheduling-grid': {\r\n        minWidth: 918,\r\n        '& thead>tr': {\r\n          '& th.cashback-percent-head': {\r\n            width: 200,\r\n          },\r\n        },\r\n\r\n        '& tbody>tr': {\r\n          '& td:nth-child(2), td:nth-child(5),td:nth-child(8)': {\r\n            borderRight: '0 !important',\r\n          },\r\n\r\n          '& td.cashback-percent-cell': {\r\n            borderLeft: '0 !important',\r\n            paddingLeft: 0,\r\n            '& input.form-control': {\r\n              width: 64,\r\n              display: 'inline-block',\r\n              marginRight: 10,\r\n            },\r\n          },\r\n\r\n          '& td:nth-child(3), td:nth-child(6), td:nth-child(9)': {\r\n            borderRight: '0 !important',\r\n            borderLeft: '0 !important',\r\n            padding: '0 !important',\r\n          },\r\n\r\n          '& td:nth-child(4), td:nth-child(7), td:nth-child(10)': {\r\n            borderLeft: '0 !important',\r\n          },\r\n\r\n          '& td.cashback-percent-options-cell': {\r\n            borderRight: '0 !important',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .ad-scheduling-panel': {\r\n\r\n        '& table': {\r\n          position: 'relative',\r\n\r\n          '& tr': {\r\n            verticalAlign: 'top',\r\n          },\r\n          '& tr:nth-child(2)': {\r\n            '& a': {\r\n              padding: [0, 8],\r\n              marginBottom: 29,\r\n              left: -8,\r\n              position: 'relative',\r\n              display: 'inline-block',\r\n            },\r\n          },\r\n\r\n          '& tr:nth-child(3)': {\r\n            position: 'relative',\r\n            height: 85,\r\n\r\n            '& td': {\r\n              position: 'relative',\r\n              '& span': {\r\n                color: '#323130',\r\n                fontWeight: 600,\r\n              },\r\n\r\n              '& .radio-inline:nth-child(2)': {\r\n                position: 'absolute',\r\n                top: 20,\r\n              },\r\n\r\n              '& .radio-inline:nth-child(3)': {\r\n                position: 'absolute',\r\n                top: 50,\r\n                margin: 0,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& tr:nth-child(4)': {\r\n            '& .schedule-item-label': {\r\n              color: '#323130',\r\n              fontWeight: 600,\r\n              lineHeight: '19px',\r\n            },\r\n            '& .radio': {\r\n              padding: 0,\r\n            },\r\n            '& .schedule-timezone-setting-text': {\r\n              paddingLeft: 28,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .table>tbody tr:nth-child(3) span': {\r\n          marginRight: 20,\r\n        },\r\n      },\r\n    },\r\n\r\n    /** *************device begin******* */\r\n    '& .device-targets, table[target-type=\"Device\"], table[target-type=\"OriginalDevice\"]': {\r\n      width: 716,\r\n      '&.showCashbackPercent': {\r\n        width: 800,\r\n        '& thead th': {\r\n          '&.col-sm-3, &.col-sm-4': {\r\n            width: 'auto',\r\n          },\r\n          // '&:nth-child(1)': {\r\n          //   width: 130,\r\n          // },\r\n          // '&.cashback-percent-head': {\r\n          //   width: 370,\r\n          // },\r\n        },\r\n        '& tbody tr td:nth-child(3)': {\r\n          width: 125,\r\n        },\r\n        '& .cashback-option-select-col': {\r\n          width: 200,\r\n        },\r\n        '& tbody td.cashback-option-select-col': {\r\n          borderRight: 'none',\r\n          '& select': {\r\n            display: 'block',\r\n          },\r\n        },\r\n        '& tbody td.cashback-value-col': {\r\n          paddingLeft: 0,\r\n          width: 160,\r\n          borderLeft: 'none',\r\n          '& .inherit-cashback-value': {\r\n            display: 'block',\r\n          },\r\n          '& input': {\r\n            width: 64,\r\n            display: 'inline-block',\r\n            marginRight: 10,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& table>tbody, tbody': {\r\n        '& tr>td[colspan=\"3\"]': {\r\n          height: 'auto',\r\n\r\n          '& ul': {\r\n            marginBottom: 0,\r\n            minHeight: 42,\r\n\r\n            '& li': {\r\n              height: 42,\r\n              lineHeight: '42px',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& tr>td:nth-child(2)': {\r\n          borderRight: 0,\r\n          paddingRight: 0,\r\n          width: '1%',\r\n          '& select': {\r\n            width: 135,\r\n          },\r\n          '& select:focus': {\r\n            border: `1px solid ${palette.neutralSecondary}`,\r\n          },\r\n        },\r\n\r\n        '& tr>td:nth-child(3)': {\r\n          borderLeft: 0,\r\n          '& input': {\r\n            width: 66,\r\n          },\r\n        },\r\n\r\n        '& tr>td:nth-child(4)': {\r\n          '& input': {\r\n            width: 66,\r\n            marginRight: 10,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .bidBoost-percentValue, .bidBoost-percent': {\r\n        marginRight: 8,\r\n      },\r\n    },\r\n\r\n    '& .advance-targeting-grid, demographic-gender-targets': {\r\n      width: 716,\r\n\r\n      '& table>tbody, tbody': {\r\n        '& tr>td[colspan=\"3\"]': {\r\n          height: 'auto',\r\n        },\r\n      },\r\n    },\r\n\r\n    /** *************Ad distribution begin******* */\r\n    '& #setAdDistributionSettings ': {\r\n      '& .infomark': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .radio > div': {\r\n        marginLeft: 30,\r\n        '& span': {\r\n          ...underlineLinkStyle({ palette, elementLocator: '> a.HelpTopic' }),\r\n        },\r\n      },\r\n\r\n    },\r\n\r\n    /** *************Audience ads begin******* */\r\n    '& #setNativeAdsSettings, #setMultimediaAdsSettings': {\r\n      '& .advance-targeting-grid': {\r\n        '& thead>tr': {\r\n          '& th:nth-child(1)': {\r\n            width: 'auto',\r\n          },\r\n\r\n          '& th:nth-child(2)': {\r\n            width: 'auto',\r\n          },\r\n        },\r\n\r\n        '& tbody>tr': {\r\n          '& td:nth-child(1)': {\r\n            width: 'auto',\r\n          },\r\n\r\n          '& td:nth-child(2)': {\r\n            borderRight: 0,\r\n            padding: '0 0 0 8px',\r\n            width: 142,\r\n\r\n            '& select': {\r\n              width: 135,\r\n            },\r\n          },\r\n\r\n          '& td:nth-child(3)': {\r\n            borderLeft: 0,\r\n            padding: '0 0 0 8px',\r\n\r\n            '& .bidBoost-percentValue': {\r\n              marginRight: 8,\r\n              width: 66,\r\n            },\r\n          },\r\n\r\n          '& td:nth-child(4)': {\r\n            '& .cashback-percent-value': {\r\n              width: 66,\r\n              marginRight: 10,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& td[colspan=\"3\"]': {\r\n          height: 'auto',\r\n          borderBottom: 0,\r\n          padding: 0,\r\n\r\n          '& ul': {\r\n            marginBottom: 0,\r\n            minHeight: 42,\r\n            borderBottom: `1px solid ${palette.neutralLight}`,\r\n            padding: '0 10px',\r\n\r\n            '& li': {\r\n              height: 42,\r\n              lineHeight: '42px',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .form-control[disabled]': {\r\n      background: '#F3F2F1',\r\n      border: 'none',\r\n      color: '#A19F9D',\r\n    },\r\n  },\r\n\r\n  '& .advanced-settings-section>div>.form-horizontal>.form-group>a': {\r\n    fontSize: 18,\r\n    marginBottom: 15,\r\n  },\r\n\r\n  '& .advanced-settings-section a[data-target=\"#setAdvancedSettings\"], .audience-advanced-settings-header': {\r\n    backgroundClip: 'content-box',\r\n\r\n    '&:focus, &:hover': {\r\n      border: 'none',\r\n      textDecoration: 'none',\r\n      backgroundColor: '#F3F2F1',\r\n    },\r\n  },\r\n\r\n  '& table[target-type=\"OriginalDevice\"]': {\r\n    '& tr': {\r\n      '&.deviceSettings.target': {\r\n        '& .checkbox input.targetDevice': {\r\n          position: 'static',\r\n          marginLeft: 10,\r\n          display: 'inline-block',\r\n          verticalAlign: 'middle',\r\n        },\r\n\r\n        '& td>div:last-child .link': {\r\n          verticalAlign: 'middle',\r\n        },\r\n      },\r\n\r\n      '& .bidBoost-options': {\r\n        width: 97,\r\n        marginRight: 8,\r\n      },\r\n\r\n      '& .bidBoost-percentValue': {\r\n        width: 66,\r\n        marginRight: 8,\r\n      },\r\n    },\r\n  },\r\n});\r\n","import { getBlockerStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const uurlTestToolStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .uurl-test-tool__container': {\r\n    paddingLeft: 0,\r\n    marginLeft: 0,\r\n\r\n    '& .glyph-status-ok, & .status_warning, & .glyph-info': {\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 16,\r\n      lineHeight: '16px',\r\n    },\r\n\r\n    '& .glyph-status-ok:before': {\r\n      color: '#107C10',\r\n      content: '\"\\\\E930\"',\r\n      verticalAlign: 'middle',\r\n    },\r\n\r\n    '& .status_warning:before': {\r\n      color: '#D83B01',\r\n      content: '\"\\\\E7BA\"',\r\n      verticalAlign: 'middle',\r\n    },\r\n\r\n    '& .glyph-info:before': {\r\n      color: '#605E5C',\r\n      content: '\"\\\\E946\"',\r\n    },\r\n  },\r\n\r\n  '& .uurl-test-info__container .uurl-test-info': {\r\n    '-ms-grid-row': '3',\r\n    alignItems: 'center',\r\n    display: 'flex',\r\n    marginTop: 4,\r\n\r\n    '& .loading-image': Object.assign({\r\n      display: 'inline-block',\r\n      margin: '8px 2px',\r\n      flexShrink: 0,\r\n      flexGrow: 0,\r\n    }, getBlockerStyle(28, palette)),\r\n\r\n    '& .resultString': {\r\n      borderBottom: '1px dashed #0078D4',\r\n      marginLeft: 7,\r\n    },\r\n\r\n    '& .detail-icon': {\r\n      display: 'none !important',\r\n    },\r\n\r\n    '& .glyph-status-ok, & .status_warning, & .glyph-info': {\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 16,\r\n      lineHeight: '16px',\r\n    },\r\n\r\n    '& .glyph-status-ok:before': {\r\n      color: '#107C10',\r\n      content: '\"\\\\E930\"',\r\n      verticalAlign: 'middle',\r\n    },\r\n\r\n    '& .status_warning:before': {\r\n      color: '#D83B01',\r\n      content: '\"\\\\E7BA\"',\r\n      verticalAlign: 'middle',\r\n    },\r\n\r\n    '& .glyph-info:before': {\r\n      color: '#605E5C',\r\n      content: '\"\\\\E946\"',\r\n    },\r\n  },\r\n});\r\n","export const containerBudgetStyle = ({ palette = {} }) => ({\r\n  '& .container-budget, & .search-bid__container': {\r\n\r\n    '& span': {\r\n      color: palette.neutralPrimary,\r\n    },\r\n\r\n    '& .form-control-static': {\r\n      marginTop: 2,\r\n    },\r\n\r\n    '& .input-group-addon': {\r\n      background: palette.white,\r\n      border: 0,\r\n      color: palette.neutralPrimary,\r\n      padding: '6px 6px 6px 12px',\r\n    },\r\n\r\n    '& .col-sm-3': {\r\n      display: 'table',\r\n      paddingRight: 0,\r\n      paddingLeft: 0,\r\n    },\r\n\r\n    '& .col-sm-12': {\r\n      paddingLeft: 0,\r\n    },\r\n\r\n    '& .margin-rt-five': {\r\n      paddingLeft: 28,\r\n    },\r\n\r\n  },\r\n\r\n});\r\n","/* eslint-disable no-unused-vars */\r\nimport { locationCellStatusStyle } from './location-cell-status-style';\r\nimport { underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const locationBidGridStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '& .toggle-campaign-settings-switch': {\r\n    paddingRight: '8px !important',\r\n    marginTop: 3,\r\n    display: 'inline-block',\r\n    float: 'left',\r\n  },\r\n\r\n  '& .change-mode-link': {\r\n    paddingLeft: 4,\r\n    verticalAlign: 'middle',\r\n    ...underlineLinkStyle({ palette, elementLocator: '' }),\r\n  },\r\n\r\n  '& .location-bid-grid-container': {\r\n    '&.show-cashback-percent': {\r\n      '& .table-container': {\r\n        width: '966px !important',\r\n      },\r\n    },\r\n    '& thead>tr': {\r\n      '& th:nth-child(1)': {\r\n        borderRight: '0 !important',\r\n        width: 'auto !important',\r\n      },\r\n      '& th:nth-child(2)': {\r\n        borderRight: '0 !important',\r\n        width: '333px !important',\r\n      },\r\n    },\r\n    '& .table': {\r\n      '& .col-location': {\r\n        width: 'auto !important',\r\n        borderLeft: '0 !important',\r\n      },\r\n\r\n      '& .col-bid': {\r\n        width: 'auto !important',\r\n      },\r\n\r\n      '& .cashback-percent-input, & .inherit-value-span': {\r\n        marginRight: 10,\r\n        width: 66,\r\n      },\r\n\r\n      '& .cashback-input-container, & .inherit-cashback-value': {\r\n        display: 'inline-block',\r\n\r\n        '& .input-group-addon': {\r\n          padding: 0,\r\n          verticalAlign: 'middle',\r\n          lineHeight: '30px',\r\n        },\r\n      },\r\n\r\n      '& .cashback-option-select': {\r\n        width: '180px !important',\r\n        marginRight: 8,\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .location-bid-grid, .excluded-location-grid, .advance-targeting-grid, & .location-bid-grid-container': {\r\n    margin: 0,\r\n    width: 716,\r\n    minWidth: 716,\r\n    '& .form-control': {\r\n      display: 'inline-block',\r\n    },\r\n\r\n    '& .table': {\r\n      marginTop: 8,\r\n      marginBottom: 8,\r\n\r\n      '& th, td': {\r\n        lineHeight: '19px',\r\n        color: palette.neutralPrimary,\r\n        fontWeight: 'normal',\r\n        paddingLeft: 8,\r\n        paddingRight: 8,\r\n        verticalAlign: 'middle !important',\r\n        height: '42px',\r\n      },\r\n\r\n      '& thead>tr': {\r\n        '& th:nth-child(1)': {\r\n          borderRight: '0 !important',\r\n        },\r\n\r\n        '& th:nth-child(2)': {\r\n          borderLeft: '0 !important',\r\n        },\r\n        '& th:nth-child(3)': {\r\n          borderLeft: '0 !important',\r\n        },\r\n      },\r\n\r\n      '& tbody>tr': {\r\n        '& td': {\r\n          border: `1px solid ${palette.neutralLight}`,\r\n        },\r\n\r\n        '& td:nth-child(1)': {\r\n          borderRight: 0,\r\n        },\r\n\r\n        '& td:nth-child(2)': {\r\n          borderLeft: 0,\r\n        },\r\n      },\r\n\r\n      '& .col-icon': {\r\n        width: 32,\r\n        borderRight: '0 !important',\r\n        paddingLeft: 16,\r\n        paddingRight: 0,\r\n\r\n        '& .map-icon__pin--included, .map-icon__pin--excluded': {\r\n          fontSize: 16,\r\n          lineHeight: '19px',\r\n        },\r\n      },\r\n\r\n      '& .col-location': {\r\n        width: 333,\r\n        borderLeft: '0 !important',\r\n      },\r\n\r\n      '& .col-bid': {\r\n        width: 350,\r\n        padding: '5px 8px',\r\n\r\n        '& .location-target-bid-grid-cell': {\r\n          '& .bidBoost-options': {\r\n            width: 135,\r\n            marginRight: 8,\r\n          },\r\n\r\n          '& .bidBoost-percentValue': {\r\n            marginRight: 8,\r\n            width: 66,\r\n          },\r\n        },\r\n      },\r\n    },\r\n    ...locationCellStatusStyle({ iconFontFamily }),\r\n  },\r\n\r\n  '& .excluded-location-grid': {\r\n    '& .col-location': {\r\n      width: '684px !important',\r\n    },\r\n  },\r\n\r\n  '& .location-bid-pager-view, .excluded-location-pager-view': {\r\n    height: 'auto !important',\r\n  },\r\n});\r\n","const warningIconStyle = ({ iconFontFamily = 'MsAds MDL2 Assets', fontSize = 14 }) => ({\r\n  fontFamily: iconFontFamily,\r\n  fontSize,\r\n  fontWeight: 'normal',\r\n  lineHeight: '16px',\r\n  color: '#D83B01',\r\n  '&:before': {\r\n    content: '\"\\\\E7BA\"',\r\n    marginRight: 2,\r\n  },\r\n});\r\n\r\nexport const locationCellStatusStyle = ({ iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .col-icon .alert-icon.warning': warningIconStyle({ iconFontFamily }),\r\n\r\n  '& .col-location, & .location-map-item': {\r\n    '& .alert-icon.warning': warningIconStyle({ iconFontFamily, fontSize: 12 }),\r\n  },\r\n  '& .location-cell-status': {\r\n    display: 'block',\r\n    cursor: 'pointer',\r\n    width: 'fit-content',\r\n    '& .location-cell-status-inline': {\r\n      display: 'inline',\r\n      borderBottom: '1px dashed #0078D4',\r\n      color: '#D83B01',\r\n      '& .status-icon': {\r\n        float: 'none',\r\n        marginRight: 5,\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .status-icon .status_warning': warningIconStyle({ iconFontFamily }),\r\n  '& .popup.popup-location-status': {\r\n    display: 'block !important',\r\n    color: '#323130',\r\n    width: 350,\r\n    maxWidth: 350,\r\n    '& .popup__contents': {\r\n      position: 'relative',\r\n      '& .location-status-container': {\r\n        padding: '18px 25px',\r\n        backgroundColor: '#fff',\r\n      },\r\n    },\r\n    '& .popup__close': {\r\n      display: 'none',\r\n    },\r\n    '& h3': {\r\n      marginTop: 0,\r\n      marginBottom: 10,\r\n      fontSize: 20,\r\n      lineHeight: '28px',\r\n      fontWeight: 600,\r\n      border: 'none',\r\n    },\r\n    '& p': {\r\n      fontSize: 12,\r\n      lineHeight: '22px',\r\n    },\r\n  },\r\n  '& .popover': {\r\n    '& .arrow': {\r\n      position: 'absolute',\r\n    },\r\n    '&.right, &.left': {\r\n      '& .arrow': {\r\n        top: '50%',\r\n      },\r\n    },\r\n    '&.top, &.bottom': {\r\n      '& .arrow': {\r\n        left: '50%',\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const keywordPlannerStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .create-keyword-container, & .keyword-planner-root, & .add-keywords-root .panel-body .row:nth-child(2) .col-sm-7': {\r\n    transition: 'margin-top .5s',\r\n    padding: 0,\r\n    marginBottom: 0,\r\n    '& .keyword-planner-container': {\r\n      marginLeft: 110,\r\n      marginBottom: 161,\r\n    },\r\n    '& .keyword-planner-container, & .keyword-planner-inline': {\r\n      background: palette.white,\r\n      border: `1px solid ${palette.neutralSecondary} !important`,\r\n      padding: '1px !important',\r\n      width: 650,\r\n\r\n      'no-suggestion-note': {\r\n        margin: 5,\r\n      },\r\n\r\n      '& .title': {\r\n        padding: '6px 12px',\r\n        borderBottom: `1px solid ${palette.neutralLighter}`,\r\n      },\r\n\r\n      '& .keywords': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& .keywords + .col-sm-1': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .keyword-planner-content': {\r\n        margin: 0,\r\n\r\n        '& .table>thead>tr>th': {\r\n          border: '0 !important',\r\n        },\r\n\r\n        '& .table>tbody>tr>td': {\r\n          border: '0 !important',\r\n        },\r\n\r\n        '& .keyword-planner+div[data-bind=\"visible: isKeywordPlannerVisible\"]': {\r\n          position: 'absolute',\r\n\r\n          '& .pagination_host': {\r\n            padding: 0,\r\n\r\n            '& .unselectable .pagination': {\r\n              margin: '9px 0',\r\n            },\r\n          },\r\n\r\n        },\r\n\r\n        '& .suggested-keyword-select-all-on-page': {\r\n          position: 'relative !important',\r\n          paddingLeft: 10,\r\n        },\r\n      },\r\n\r\n      '& .keyword-planner-search-button': {\r\n        display: 'none',\r\n      },\r\n\r\n\r\n      '& .form-control-feedback': {\r\n        left: 12,\r\n        position: 'absolute',\r\n        height: 'fit-content',\r\n        width: 'fit-content',\r\n        top: '50%',\r\n        transform: 'translate(0, -50%)',\r\n        '-webkit-transform': 'translate(0, -50%)',\r\n        pointerEvents: 'auto',\r\n      },\r\n\r\n      '& .table-header__cell': {\r\n        maxWidth: 95,\r\n        display: 'inline-block',\r\n        textAlign: 'right',\r\n        verticalAlign: 'top',\r\n        overflowWrap: 'break-word',\r\n      },\r\n\r\n      '& .table__row--header > .sortable.clickable:first-child .table-header__cell': {\r\n        maxWidth: 100,\r\n      },\r\n\r\n      '& .grid-asc, .grid-des': {\r\n        fontFamily: iconFontFamily,\r\n        fontSize: 14,\r\n      },\r\n\r\n      '& .grid-asc:before': {\r\n        content: '\"\\\\EE68\"',\r\n      },\r\n\r\n      '& .grid-des:before': {\r\n        content: '\"\\\\EE69\"',\r\n      },\r\n\r\n      '& .arrow-back-double': {\r\n        fontFamily: iconFontFamily,\r\n        color: palette.themePrimary,\r\n        marginRight: 8,\r\n      },\r\n\r\n      '& .arrow-back-double:before': {\r\n        content: '\"\\\\E710\"',\r\n      },\r\n\r\n      '& .table__row--see-more td:first-child': {\r\n        color: `${palette.themePrimary} !important`,\r\n        cursor: 'pointer',\r\n      },\r\n\r\n      '& .glyphicon-triangle-left, .glyphicon-triangle-right': {\r\n        fontFamily: iconFontFamily,\r\n        color: palette.neutralSecondary,\r\n        fontSize: 14,\r\n      },\r\n\r\n      '& .glyphicon-triangle-left:before': {\r\n        content: '\"\\\\E76B\"',\r\n      },\r\n\r\n      '& .glyphicon-triangle-right:before': {\r\n        content: '\"\\\\E76C\"',\r\n      },\r\n\r\n      '& .pagination>li>a, .pagination>li>span': {\r\n        color: palette.neutralPrimary,\r\n      },\r\n\r\n      '& .pagination_host': {\r\n        padding: '0 8px',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .keyword-textarea': {\r\n    resize: 'none',\r\n    height: 'auto !important',\r\n    fontSize: 14,\r\n  },\r\n\r\n  '& .create-keywords-errors': {\r\n    minHeight: 25,\r\n  },\r\n\r\n  '& .displayNone': {\r\n    display: 'none',\r\n  },\r\n\r\n  '& .off-screen': {\r\n    width: 1,\r\n    height: 1,\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n    position: 'absolute',\r\n  },\r\n});\r\n","import { getMapStyle } from './map-style';\r\nimport { locationCellStatusStyle } from './location-cell-status-style';\r\n\r\nexport const locationMapStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '& .location-manage-box': {\r\n    width: 970,\r\n    minHeight: '530px',\r\n    border: `1px solid ${palette.neutralSecondary}`,\r\n    float: 'left',\r\n    color: palette.neutralPrimary,\r\n\r\n    '& .left-panel': {\r\n      width: 391,\r\n      margin: '16px 36px 36px 30px',\r\n      padding: 0,\r\n\r\n      '& .recommend-location-grid .location-recommend-grid-container .table>thead>tr>th.recommendation-target-grid__removeall-header': {\r\n        textAlign: 'right',\r\n      },\r\n\r\n      '& .location-search': {\r\n        '& .searchbox': {\r\n          borderBottom: '0 !important',\r\n          color: palette.neutralSecondary,\r\n\r\n          '& .searchbox-input': {\r\n            border: `1px solid ${palette.neutralSecondary} !important`,\r\n            width: 391,\r\n            height: '32px',\r\n            padding: '6px 8px 7px 32px',\r\n          },\r\n\r\n          '& .glyphicon': {\r\n            left: 0,\r\n\r\n            '& .searchbox-searchbutton': {\r\n              position: 'absolute',\r\n              width: 16,\r\n              height: '16px',\r\n              left: 8,\r\n              top: 8,\r\n              fontFamily: iconFontFamily,\r\n              fontSize: 16,\r\n              lineHeight: '16px',\r\n              color: palette.themePrimary,\r\n              pointerEvents: 'auto',\r\n            },\r\n\r\n            '& .searchbox-searchbutton:before': {\r\n              content: '\"\\\\E721\"',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .new-location-targeting-prompt': {\r\n          width: 360,\r\n          height: '38px',\r\n          lineHeight: '20px',\r\n          color: palette.neutralSecondary,\r\n        },\r\n\r\n        '& .new-location-targeting-result': {\r\n          border: 0,\r\n\r\n          '& .new-location-targeting-container': {\r\n            padding: 0,\r\n            backgroundColor: palette.white,\r\n            width: '100%',\r\n            position: 'absolute',\r\n            boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n            zIndex: 1,\r\n            maxHeight: '444px',\r\n            overflowY: 'auto',\r\n\r\n            '& .new-location-targeting-grid': {\r\n              fontSize: 14,\r\n              width: '100%',\r\n\r\n              '& .new-search-result-row': {\r\n                lineHeight: '20px',\r\n\r\n                '& .new-location-targeting-grid-include, .new-location-targeting-grid-exclude': {\r\n                  padding: '8px 8px 8px 0',\r\n                  textAlign: 'right',\r\n                  color: palette.neutralSecondary,\r\n                  verticalAlign: 'top',\r\n                  minWidth: 80,\r\n\r\n                  '& .new-location-targeting-separator': {\r\n                    padding: '0 4px',\r\n                    verticalAlign: 'baseline',\r\n                  },\r\n                },\r\n              },\r\n\r\n              '& .new-search-result-row>td': {\r\n                padding: '8px 16px 9px 8px',\r\n              },\r\n            },\r\n\r\n            '& .new-empty-result-message': {\r\n              padding: '8px 8px 9px 8px',\r\n              fontSize: 14,\r\n            },\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .location-target-grid, .excluded-location-target-grid': {\r\n        position: 'relative',\r\n\r\n        '& .no-data-message-container': {\r\n          paddingTop: 8,\r\n        },\r\n\r\n        '& .target-grid-remove-all-locations': {\r\n          position: 'absolute',\r\n          right: 0,\r\n          top: 0,\r\n          padding: '8px 0px 8px 0',\r\n        },\r\n\r\n        '& .target-grid-remove-all-locations:after': {\r\n          clear: 'both',\r\n          display: 'table',\r\n          content: '\" \"',\r\n        },\r\n\r\n        '& .location-popup-editor': {\r\n          backgroundColor: palette.white,\r\n          boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n          width: 375,\r\n          height: 'auto',\r\n          padding: '29px 17px 16px 17px',\r\n          position: 'absolute',\r\n          zIndex: 1,\r\n\r\n          '& .radius-selector-table': {\r\n            '& .radius-within': {\r\n              width: 49,\r\n              lineHieght: '19px',\r\n            },\r\n\r\n            '& .radius-input': {\r\n              paddingLeft: 8,\r\n              paddingRight: 12,\r\n\r\n              '& .form-control': {\r\n                width: 104,\r\n                padding: '6px 8px 7px 8px',\r\n              },\r\n            },\r\n\r\n            '& .radius-unit': {\r\n              '& .form-control': {\r\n                width: 104,\r\n                padding: '6px 28px 7px 8px',\r\n              },\r\n            },\r\n          },\r\n\r\n          '& #radiusErrorValidationError': {\r\n            margin: 0,\r\n          },\r\n\r\n          '& .location-edit-btn-done': {\r\n            marginTop: 10,\r\n          },\r\n\r\n          '& .react-focus-lock': {\r\n            '& .ba-backbone-instance-wrapper, .ba-backbone-instance-wrapper > div': {\r\n              overflow: 'hidden',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .new-advance-target-grid-container': {\r\n          '& .table-container': {\r\n            width: 380,\r\n\r\n            '& .table': {\r\n              border: 0,\r\n              '& .header': {\r\n                borderBottom: `1px solid ${palette.neutralLight}`,\r\n                '& .column-header': {\r\n                  paddingLeft: 13,\r\n                  border: '0 !important',\r\n                  fontWeight: 'normal',\r\n                  lineHeight: '19px',\r\n                  height: '42px',\r\n                  width: 336,\r\n                  verticalAlign: 'middle',\r\n                  '&:last-child': {\r\n                    paddingRight: 0,\r\n                    paddingLeft: 0,\r\n                    width: 92,\r\n                    textAlign: 'right',\r\n                    wordBreak: 'normal',\r\n                  },\r\n                  '& >thead>tr>th .location-target-grid__removeall-header': {\r\n                    textAlign: 'right',\r\n                  },\r\n                },\r\n\r\n                '& .location-target-grid__remove-body': {\r\n                  width: 44,\r\n                },\r\n              },\r\n\r\n              '& .location-target-grid__area-row': {\r\n                borderBottom: `1px solid ${palette.neutralLight}`,\r\n\r\n                '& td': {\r\n                  height: '32px',\r\n                },\r\n\r\n                '& span': {\r\n                  verticalAlign: 'baseline',\r\n                },\r\n\r\n                '& .text-left': {\r\n                  fontSize: 12,\r\n                  lineHeight: '19px',\r\n                  color: palette.neutralPrimary,\r\n                  padding: '7px 5.5px 3px 13px',\r\n                  border: 0,\r\n\r\n                  '& .map-icon__pin--included, .map-icon__pin--excluded': {\r\n                    display: 'inline-block',\r\n                    fontFamily: iconFontFamily,\r\n                    fontSize: 16,\r\n                    color: '#107C10',\r\n                    marginRight: 17,\r\n                    lineHeight: '14px',\r\n                    marginBottom: 5,\r\n                    verticalAlign: 'middle',\r\n                  },\r\n\r\n                  '& .map-icon__pin--included:before': {\r\n                    content: '\"\\\\F5CB\"',\r\n                  },\r\n\r\n                  '& .map-icon__pin--excluded': {\r\n                    color: '#A80000',\r\n                  },\r\n\r\n                  '& .map-icon__pin--excluded:before': {\r\n                    content: '\"\\\\F5CE\"',\r\n                  },\r\n\r\n                  '& .location-target-grid__title-column': {\r\n                    color: palette.themePrimary,\r\n                    cursor: 'pointer',\r\n                    fontSize: 14,\r\n                    position: 'relative',\r\n                    fontWeight: 'bold',\r\n                  },\r\n                },\r\n\r\n                '& .text-right': {\r\n                  border: 0,\r\n                  width: 12,\r\n                  padding: '0 11px',\r\n\r\n                  '& .location-target-grid__remove-col': {\r\n                    width: 13,\r\n                    height: '12px',\r\n                    fontFamily: iconFontFamily,\r\n                    fontSize: 12,\r\n                    lineHeight: '12px',\r\n                    textAlign: 'center',\r\n                    color: palette.neutralSecondary,\r\n                    verticalAlign: 'middle',\r\n                  },\r\n                  '& .location-target-grid__remove-col:before': {\r\n                    content: '\"\\\\E711\"',\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .pagination_host': {\r\n          '& .pager': {\r\n            display: 'inline-block',\r\n            marginLeft: '0 !important',\r\n          },\r\n        },\r\n        ...locationCellStatusStyle({ iconFontFamily }),\r\n      },\r\n\r\n    },\r\n\r\n    '& .right-panel': {\r\n      width: 485,\r\n      height: '455px',\r\n      margin: '16px 0 0 17px',\r\n      padding: 0,\r\n\r\n      '& .map-container-wrapper': {\r\n        height: '455px',\r\n\r\n        '& .map-container': {\r\n          extend: getMapStyle(palette)['& .map-container'],\r\n          height: '455px',\r\n          width: 485,\r\n        },\r\n\r\n        '& .map-message-panel': {\r\n          extend: getMapStyle(palette)['& .map-message-panel'],\r\n        },\r\n\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .location-targets .control-label': {\r\n    marginTop: 0,\r\n  },\r\n\r\n\r\n  '& a.disabled': {\r\n    color: '#CCCCCC',\r\n    cursor: 'default',\r\n  },\r\n\r\n  '& .location-manage .location-map-item': {\r\n    display: 'flex',\r\n    '& span': {\r\n      wordBreak: 'break-word',\r\n    },\r\n  },\r\n\r\n});\r\n","export const getMapStyle = palette => (Object.assign({\r\n  '& .map-container': {\r\n    '& .MicrosoftMap': {\r\n      overflow: 'hidden',\r\n      position: 'absolute !important',\r\n      width: 'inherit !important',\r\n      height: 'inherit !important',\r\n      left: 0,\r\n      top: 0,\r\n      right: 0,\r\n      bottom: 0,\r\n      whiteSpace: 'normal',\r\n      lineHeight: '16px',\r\n\r\n      '& .Infobox2': {\r\n        marginLeft: -3,\r\n        height: 'auto',\r\n        top: -26,\r\n        width: 256,\r\n        boxShadow: '0px 1.2px 3.6px rgba(0, 0, 0, 0.108), 0px 6.4px 14.4px rgba(0, 0, 0, 0.132)',\r\n        background: '#fff',\r\n        border: '1px solid #edebe9',\r\n        borderRadius: 2,\r\n\r\n        '& .infobox-body': {\r\n          padding: '13px 12px 9px 12px',\r\n          fontSize: 13,\r\n          background: '#fff',\r\n        },\r\n\r\n        '& .infobox-actions': {\r\n          padding: 0,\r\n          margin: '4px -8px 0',\r\n          overflow: 'hidden',\r\n          whiteSpace: 'nowrap',\r\n        },\r\n\r\n        '& .infobox-actions-list': {\r\n          overflow: 'hidden',\r\n          width: '100%',\r\n          listStyle: 'none outside none',\r\n          lineHeight: 1.3,\r\n          padding: 0,\r\n          margin: '4px 0',\r\n\r\n          '& li': {\r\n            display: 'inline-block',\r\n            marginBottom: 1,\r\n            marginTop: 1,\r\n            '&:focus-within': {\r\n              border: `1px solid ${palette.neutralSecondary}`,\r\n            },\r\n\r\n            '& a': {\r\n              padding: '0 8px',\r\n            },\r\n\r\n            '& a.icon': {\r\n              width: 13,\r\n              height: 18,\r\n              margin: '2px 4px 2px 8px',\r\n              padding: '2px 0 0 0',\r\n              position: 'relative',\r\n\r\n              '& .iconUnderline': {\r\n                position: 'absolute',\r\n                height: '100%',\r\n                width: '100%',\r\n                left: 0,\r\n                top: -1,\r\n              },\r\n\r\n              '& img': {\r\n                border: 'none',\r\n              },\r\n            },\r\n          },\r\n\r\n          '& li:last-child a': {\r\n            border: 0,\r\n          },\r\n\r\n          '& .disabled a': {\r\n            outline: 'none',\r\n            textDecoration: 'none',\r\n            cursor: 'default',\r\n            color: '#888',\r\n          },\r\n        },\r\n\r\n        '& .infobox-title': {\r\n          lineHeight: 1.1,\r\n          fontSize: 18,\r\n          fontWeight: 'normal',\r\n          textDecoration: 'none',\r\n          margin: '0 4px 0 0',\r\n          display: 'inline',\r\n          overflow: 'hidden',\r\n          overflowWrap: 'break-word',\r\n          wordBreak: 'break-word',\r\n        },\r\n\r\n        '& .infobox-titleActionLink': {\r\n          display: 'inline',\r\n          marginLeft: 4,\r\n          fontSize: 13,\r\n        },\r\n\r\n        '& .infobox-body .infobox-info': {\r\n          marginTop: 6,\r\n          marginBottom: 6,\r\n\r\n          '& a': {\r\n            float: 'left',\r\n          },\r\n        },\r\n\r\n        // Separate a, a:visited here since '& a, & a:visited' cannot work\r\n        '& a': {\r\n          textDecoration: 'none',\r\n          wordBreak: 'break-word',\r\n        },\r\n\r\n        '& a:vistited': {\r\n          textDecoration: 'none',\r\n          wordBreak: 'break-word',\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .map-message-panel': {\r\n    left: 6,\r\n    position: 'absolute',\r\n    top: 6,\r\n    width: 292,\r\n    zIndex: 110,\r\n    textAlign: 'center',\r\n    backgroundColor: palette.white,\r\n    fontWeight: 'bold',\r\n    padding: 2,\r\n    boxShadow: `0 0 10px ${palette.black}`,\r\n    display: 'none',\r\n  },\r\n}));\r\n","import { getMapStyle } from './map-style';\r\nimport { tableStyle } from './table-style';\r\nimport { paginationStyle, alertStyle } from './shared-styles-from-theme-fluent';\r\n\r\nconst targetLocationRecommendationSharedStyle = ({ palette = {} }) => (Object.assign({\r\n  '.location-recommendation-container': {\r\n    '& .table>.header>tr>th': {\r\n      padding: '8px 10px',\r\n    },\r\n    '& .table > colgroup + thead > tr:first-child > th': {\r\n      borderTop: '0 !important',\r\n    },\r\n    '& .map-container-wrapper': {\r\n      position: 'relative',\r\n      zIndex: 0,\r\n      ...getMapStyle(palette),\r\n    },\r\n    '& .dismiss-recommendation': {\r\n      cursor: 'pointer',\r\n    },\r\n    '& .btn-primary': {\r\n      marginRight: 10,\r\n    },\r\n    ...tableStyle({ palette }),\r\n    ...paginationStyle({ palette }),\r\n  },\r\n}));\r\n\r\nexport const targetLocationRecommendationStyle = ({ palette = {} }) => ({\r\n  '.location-recommendation-container': {\r\n    padding: '12px 32px',\r\n    borderBottom: '1px solid #edebe9',\r\n    marginBottom: 0,\r\n    extend: targetLocationRecommendationSharedStyle({ palette })['.location-recommendation-container'],\r\n    '& .recommendation-light-bulb': {\r\n      color: '#1470A5',\r\n      display: 'inline-block',\r\n      overflow: 'visible',\r\n      background: '#EFF6FC',\r\n      marginRight: '5px',\r\n      paddingRight: '0px !important',\r\n      '&:before': {\r\n        content: \"'\\\\F8F2'\",\r\n        lineHeight: '22px',\r\n        fontFamily: 'MsAds MDL2 Assets',\r\n        verticalAlign: 'top',\r\n        fontSize: '14px',\r\n      },\r\n    },\r\n    '& .alert.alert-recommendation': {\r\n      background: '#EFF6FC',\r\n      border: '1px solid #0078D4 !important',\r\n      padding: '10px 32px 10px 8px !important',\r\n      lineHeight: '16px !important',\r\n      fontWeight: 600,\r\n    },\r\n    '& .location-recommendation-grid-container': {\r\n      '& .grid-pager': {\r\n        '& .pager': {\r\n          display: 'inline-block',\r\n          marginLeft: '15px',\r\n        },\r\n      },\r\n    },\r\n    '& .location-recommendation-body': {\r\n      marginLeft: '-15px',\r\n      '&.panel.collapse.in': {\r\n        backgroundColor: '#fff',\r\n        border: '1px solid transparent',\r\n        borderRadius: '4px',\r\n        boxShadow: 'none',\r\n        margin: '0 0 0 -15px',\r\n      },\r\n      '& > .row > .col-sm-6': {\r\n        width: '100%',\r\n      },\r\n    },\r\n    '& .location-grid-container': {\r\n      paddingBottom: '17px',\r\n      '& .table>tbody>tr>td': {\r\n        fontSize: '14px',\r\n        lineHeight: '19px',\r\n        padding: '22px 10px',\r\n        verticalAlign: 'middle',\r\n      },\r\n    },\r\n    ...alertStyle({ palette }),\r\n  },\r\n  '.inline-location-recommendation-container': {\r\n    marginLeft: '-15px !important',\r\n    extend: targetLocationRecommendationSharedStyle({ palette })['.location-recommendation-container'],\r\n    '& .map-container-wrapper': {\r\n      height: '479px',\r\n    },\r\n  },\r\n  '.location-targets': {\r\n    '& .alert-recommendation': {\r\n      border: `1px solid ${palette.neutralSecondary} !important`,\r\n      '& .alert-info-inline': {\r\n        marginLeft: '0px',\r\n      },\r\n      margin: '3px 0',\r\n    },\r\n    '& .recommendation-light-bulb': {\r\n      color: '#1470A5',\r\n      overflow: 'visible',\r\n      background: '#EFF6FC',\r\n      '&:before': {\r\n        content: \"'\\\\F8F2'\",\r\n        lineHeight: '22px',\r\n        fontFamily: 'MsAds MDL2 Assets',\r\n        verticalAlign: 'top',\r\n        fontSize: '14px',\r\n      },\r\n    },\r\n  },\r\n  '.location-manage-box': {\r\n    '& .recommend-location-grid': {\r\n      marginTop: '35px',\r\n      marginRight: '-15px',\r\n      marginLeft: '-15px',\r\n      '& .location-recommend-grid-container': {\r\n        marginBottom: '10px',\r\n        '& .column-header:last-child': {\r\n          paddingRight: 0,\r\n          paddingLeft: 0,\r\n          width: 85,\r\n          textAlign: 'right',\r\n        },\r\n        '& tbody > tr > td': {\r\n          border: '0px !important',\r\n          '& .dismiss-recommendation': {\r\n            width: '13px',\r\n            color: palette.neutralSecondary,\r\n            height: '12px',\r\n            fontSize: '12px',\r\n            textAlign: 'center',\r\n            fontFamily: 'MsAds MDL2 Assets',\r\n            lineHeight: '12px',\r\n            cursor: 'pointer',\r\n          },\r\n        },\r\n        '& .custormerInsightsLocation': {\r\n          color: '#0078D4',\r\n          overflow: 'visible',\r\n          marginRight: '5px',\r\n          fontSize: '16px',\r\n          lineHeight: '14px',\r\n          '&:before': {\r\n            content: \"'\\\\F8F4'\",\r\n            fontFamily: 'MsAds MDL2 Assets',\r\n          },\r\n        },\r\n      },\r\n      '& .alert .alert-info-inline': {\r\n        marginLeft: '0px',\r\n      },\r\n      '& .alert.alert-recommendation': {\r\n        background: '#EFF6FC',\r\n        border: '1px solid #0078D4 !important',\r\n        padding: '10px 32px 10px 12px !important',\r\n        lineHeight: '16px !important',\r\n        marginBottom: '16px',\r\n      },\r\n      '& input.target.btn.btn-primary': {\r\n        background: '#FFFFFF',\r\n        border: '1px solid #8A8886',\r\n        boxSizing: 'border-box',\r\n        borderRadius: '2px',\r\n        color: '#323130',\r\n        marginBottom: '39px',\r\n      },\r\n      '& .location-grid-container': {\r\n        '& .table-container': {\r\n          '& .row-selected>td': {\r\n            background: '#EDEBE9',\r\n            color: '#323130',\r\n            fontWeight: '500',\r\n          },\r\n          '& .table>tbody>tr': {\r\n            lineHeight: '19px',\r\n            fontSize: '12px',\r\n            height: '32px',\r\n            color: '#797775',\r\n          },\r\n          '& .table>thead>tr>th': {\r\n            height: '42px',\r\n            lineHeight: '19px',\r\n            border: 'none !important',\r\n          },\r\n        },\r\n      },\r\n      '& .recommendation-light-bulb': {\r\n        color: '#0078D4',\r\n        overflow: 'visible',\r\n        background: '#EFF6FC',\r\n        marginRight: '5px',\r\n        paddingRight: '0px !important',\r\n        '&:before': {\r\n          content: \"'\\\\EA80'\",\r\n          lineHeight: '22px',\r\n          fontFamily: 'MsAds MDL2 Assets',\r\n          fontSize: '16px',\r\n        },\r\n      },\r\n    },\r\n  },\r\n  // TODO: Make this style local\r\n  // ...glyphIconStyle({ palette, iconFontFamily }),\r\n});\r\n","import { floatButtonStyle, underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\nimport { getLocalBlockerStyle } from './local-blocker';\r\nimport { getPhoneFrameStyle } from './phone-frame-style';\r\nimport { reactUIBlockerStyle } from './react-ui-blocker-style';\r\nimport { truncatedStyle } from './truncated-style';\r\nimport { uurlTestToolStyle } from './uurl-test-tool-style';\r\nimport { modalContainerStyle } from './modal-container-style';\r\nimport BingSearchImage from '../media/BingSearch.png';\r\n\r\nconst crudRSAStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .headlines-container, & .descriptions-container': {\r\n    marginTop: 32,\r\n\r\n    '& .form-group ~ .form-group': {\r\n      marginTop: 12,\r\n    },\r\n\r\n    '& .form-group + .col-sm-4.control-label': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& a.ad-rsa-add-headline, & a.ad-rsa-add-description': {\r\n      color: palette.neutralPrimary,\r\n      fontSize: 14,\r\n      lineHeight: '19px',\r\n      marginTop: 12,\r\n      textAlign: 'left',\r\n\r\n      '&.disabled': {\r\n        color: palette.neutralTertiary,\r\n      },\r\n    },\r\n\r\n    '& .ad-rsa-filed-group': {\r\n      display: 'grid',\r\n      fallbacks: [\r\n        {\r\n          display: '-ms-grid',\r\n        },\r\n      ],\r\n      gridTemplateColumns: '1fr auto',\r\n      '-ms-grid-columns': '1fr auto',\r\n\r\n      '& .iconba-Lightbulb': {\r\n        position: 'absolute',\r\n        left: '-18px',\r\n        top: '7px',\r\n        color: '#0078d4',\r\n        visibility: 'hidden',\r\n      },\r\n\r\n      '& > input.text': {\r\n        gridColumnStart: '1',\r\n        '-ms-grid-column': '1',\r\n        '-ms-grid-row': '1',\r\n      },\r\n\r\n      '& > .clearfix': {\r\n        gridColumnStart: '1',\r\n        '-ms-grid-column': '1',\r\n        '-ms-grid-row': '2',\r\n      },\r\n\r\n      '& > ul': {\r\n        gridColumnStart: '1',\r\n        '-ms-grid-column': '1',\r\n        '-ms-grid-row': '3',\r\n      },\r\n\r\n      '& > .ad-rsa-pin-group': {\r\n        gridColumnStart: '2',\r\n        '-ms-grid-column': '2',\r\n        '-ms-grid-row': '1',\r\n        minWidth: 56,\r\n        paddingTop: 6,\r\n        position: 'relative',\r\n        right: 'auto',\r\n        top: 'auto',\r\n\r\n        '& .ad-field-position': {\r\n          color: palette.neutralPrimary,\r\n          fontSize: 14,\r\n          lineHeight: '19px',\r\n          visibility: 'visible !important',\r\n        },\r\n\r\n        '& .ad-pinned': {\r\n          fontSize: 14,\r\n          width: 'fit-content',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .glyphicon-pushpin, & .glyphicon-plus': {\r\n      color: palette.themePrimary,\r\n      fontFamily: iconFontFamily,\r\n    },\r\n\r\n    '& .glyphicon-pushpin:before': {\r\n      content: '\"\\\\E840\"',\r\n      padding: '0 8px 0 12px',\r\n    },\r\n\r\n    '& .glyphicon-plus:before': {\r\n      content: '\"\\\\E710\"',\r\n      marginRight: 8,\r\n    },\r\n  },\r\n\r\n  '& .ad-strength-container': {\r\n    borderRadius: 2,\r\n    boxShadow: '0px 0.3px 0.9px rgba(0, 0, 0, 0.108), 0px 1.6px 3.6px rgba(0, 0, 0, 0.132)',\r\n    marginBottom: 50,\r\n    width: 592,\r\n    padding: '15px 20px',\r\n\r\n    '& .responsive-search-ad-strength-view': {\r\n      '& label': {\r\n        fontSize: 18,\r\n        fontWeight: 'normal',\r\n        lineHeight: '24px',\r\n        padding: 0,\r\n      },\r\n\r\n      '& .ad-strength-content': {\r\n        display: 'inline-flex',\r\n        marginTop: 15,\r\n      },\r\n\r\n      '& .ad-strength-score': {\r\n        margin: '-10px 16px 0 -20px',\r\n      },\r\n\r\n      '& .ad-strength-suggestions': {\r\n        fontSize: 14,\r\n        lineHeight: '20px',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-view': {\r\n        color: '#1570A6',\r\n        cursor: 'pointer',\r\n        display: 'inline-block',\r\n        marginLeft: '10px',\r\n        '&:focus': {\r\n          outline: 'thin dotted',\r\n        },\r\n      },\r\n\r\n      '& .ad-strength-suggestions-detail': {\r\n        display: 'none',\r\n        position: 'absolute',\r\n        left: 0,\r\n        top: 217,\r\n        zIndex: 1,\r\n        border: 'solid 1px #dddddd',\r\n        boxShadow: '0px 0.3px 0.9px rgba(0, 0, 0, 0.108), 0px 1.6px 3.6px rgba(0, 0, 0, 0.132)',\r\n        background: '#fff',\r\n        padding: '16px 24px',\r\n        width: 592,\r\n        minHeight: 250,\r\n      },\r\n\r\n      '& .ad-strength-suggestions-detail-close-button': {\r\n        color: '#333333',\r\n        cursor: 'pointer',\r\n        float: 'right',\r\n        position: 'relative',\r\n        verticalAlign: 'middle',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-title': {\r\n        color: '#333333',\r\n        fontFamily: 'Segoe UI',\r\n        fontSize: 14,\r\n        fontWeight: 'bold',\r\n        marginTop: 0,\r\n        marginBottom: 4,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-sub-title': {\r\n        color: '#333333',\r\n        fontFamily: 'Arial',\r\n        fontSize: 12,\r\n        fontWeight: 'normal',\r\n        marginBottom: 12,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-container': {\r\n        marginBottom: 25,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-title': {\r\n        color: '#333333',\r\n        cursor: 'pointer',\r\n        fontFamily: 'Arial',\r\n        fontSize: 12,\r\n        fontWeight: 'normal',\r\n        '&:focus': {\r\n          outline: 'thin dotted',\r\n        },\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-subtitle': {\r\n        color: '#333333',\r\n        fontFamily: 'Arial',\r\n        fontSize: 12,\r\n        fontWeight: 'normal',\r\n        marginBottom: 5,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-item-container': {\r\n        color: '#333333',\r\n        display: 'none',\r\n        fontFamily: 'Arial',\r\n        fontSize: 12,\r\n        fontWeight: 'normal',\r\n        marginLeft: 16,\r\n        marginBottom: 10,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-header': {\r\n        fontWeight: 'bold',\r\n        marginTop: 8,\r\n        marginBottom: 4,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-header-desc': {\r\n        marginBottom: 4,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-category-title': {\r\n        display: 'inline-block',\r\n        marginBottom: 4,\r\n        marginLeft: 4,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-tips-item': {\r\n        '&:before': {\r\n          content: '\"\\\\2022\"',\r\n          padding: '5px 5px',\r\n        },\r\n        marginBottom: 5,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestions-container': {\r\n        marginTop: 15,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestion': {\r\n        '&:hover': {\r\n          backgroundColor: '#106ebe',\r\n          borderColor: '#106ebe',\r\n          color: '#ffffff',\r\n        },\r\n        '&:active': {\r\n          backgroundColor: '#106ebe',\r\n          borderColor: '#106ebe',\r\n          color: '#ffffff',\r\n        },\r\n        '&:disabled': {\r\n          backgroundColor: '#f3f2f1',\r\n          borderColor: '#f3f2f1',\r\n          color: '#a19f9d',\r\n        },\r\n        display: 'inline-block',\r\n        backgroundColor: '#ffffff',\r\n        color: '#106ebe',\r\n        cursor: 'pointer',\r\n        borderColor: '#106ebe',\r\n        borderWidth: 1,\r\n        borderStyle: 'solid',\r\n        marginBottom: 8,\r\n        marginRight: 8,\r\n        fontSize: 14,\r\n        padding: '0px 8px 0px 8px',\r\n        textAlign: 'left',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestion-disabled': {\r\n        display: 'inline-block',\r\n        color: '#a19f9d',\r\n        backgroundColor: '#f3f2f1',\r\n        borderWidth: 1,\r\n        borderStyle: 'solid',\r\n        marginBottom: 10,\r\n        marginRight: 10,\r\n        fontSize: 14,\r\n        padding: '0px 8px 0px 8px',\r\n        textAlign: 'left',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestion-add-symbol': {\r\n        display: 'table-cell',\r\n        fontSize: 24,\r\n        padding: '0px 10px 5px 0px',\r\n        verticalAlign: 'middle',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestion-id': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-suggestion-content': {\r\n        display: 'table-cell',\r\n        padding: '0px 10px 0px 0px',\r\n        verticalAlign: 'middle',\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-no-new-asset-container': {\r\n        marginBottom: 15,\r\n      },\r\n\r\n      '& .ad-strength-suggestion-detail-warning': {\r\n        marginRight: 5,\r\n      },\r\n\r\n      '& ul.ad-strength-actions': {\r\n        '& li': {\r\n          padding: '2px 0',\r\n\r\n          '& .ad-strength-action-met, & .ad-strength-action-half-met, & .ad-strength-action-not-met': {\r\n            fontFamily: iconFontFamily,\r\n            fontSize: 16,\r\n            lineHeight: '20px',\r\n            marginRight: 8,\r\n            verticalAlign: 'middle',\r\n          },\r\n\r\n          '& .ad-strength-action-met': {\r\n            color: '#107C10',\r\n\r\n            '&:before': {\r\n              content: '\"\\\\EC61\"',\r\n            },\r\n          },\r\n\r\n          '& .ad-strength-action-half-met': {\r\n            color: '#FFB900',\r\n\r\n            '&:before': {\r\n              content: '\"\\\\EC61\"',\r\n            },\r\n          },\r\n\r\n          '& .ad-strength-action-not-met': {\r\n            color: palette.neutralSecondary,\r\n\r\n            '&:before': {\r\n              content: '\"\\\\ECCA\"',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .ad-strength-suggestion-picker-title': {\r\n    fontWeight: 'bold',\r\n  },\r\n});\r\n\r\nconst crudAppInstallAdStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .app-lookup-control': {\r\n    '& .applookup-dropdown': {\r\n      '& .col-sm-8': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& .col-sm-offset-4': {\r\n        marginRight: 0,\r\n      },\r\n\r\n      '& .form-control.changeapp': {\r\n        paddingRight: 32,\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n        whiteSpace: 'nowrap',\r\n      },\r\n\r\n      '& .dropDownSelect': {\r\n        '& .icon.change-app-edit': {\r\n          color: palette.neutralSecondary,\r\n          fontFamily: iconFontFamily,\r\n          position: 'absolute',\r\n          top: 8,\r\n          right: 8,\r\n          margin: 0,\r\n\r\n          '&:before': {\r\n            content: '\"\\\\E70D\"',\r\n          },\r\n        },\r\n\r\n        '& .appinfo-table': {\r\n          border: `1px solid ${palette.neutralSecondary}`,\r\n\r\n          '& .app-icon': {\r\n            width: 58,\r\n          },\r\n\r\n          '& .app-details': {\r\n            width: 'auto',\r\n\r\n            '& .appstoreselector, & span': {\r\n              fontSize: 12,\r\n              lineHeight: '16px',\r\n              '&[data-bind=\"text: DeveloperName\"]': {\r\n                color: palette.neutralSecondary,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .app-actions': {\r\n            width: 24,\r\n\r\n            '& .icon.changeapp': {\r\n              color: palette.themeDark,\r\n              fontFamily: iconFontFamily,\r\n              position: 'absolute',\r\n              top: 8,\r\n              right: 8,\r\n              margin: 0,\r\n\r\n              '&:before': {\r\n                content: '\"\\\\E70F\"',\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n\r\n      '& > .popover': {\r\n        left: '0 !important',\r\n        top: '32px !important',\r\n        maxWidth: '100%',\r\n        width: 467,\r\n\r\n        '& .popover-content': {\r\n          fontSize: 14,\r\n          lineHeight: '19px',\r\n          padding: '12px 32px 30px 32px',\r\n\r\n          '& .applookup': {\r\n            width: 'unset',\r\n\r\n            '& > .form-group': {\r\n              marginTop: 16,\r\n            },\r\n\r\n            '& .searchbox': {\r\n              '& .searchbox-input': {\r\n                padding: '6px 8px 6px 32px',\r\n              },\r\n\r\n              '& .form-control-feedback': {\r\n                left: 0,\r\n                right: 'unset',\r\n                lineHeight: '32px',\r\n                height: 32,\r\n                width: 32,\r\n                pointerEvents: 'auto',\r\n\r\n                '& .searchbox-searchbutton': {\r\n                  fontFamily: iconFontFamily,\r\n                  fontSize: 16,\r\n                  lineHeight: 1,\r\n                  padding: 8,\r\n\r\n                  '&:before': {\r\n                    content: '\"\\\\E721\"',\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n\r\n          '& table.action-radio': {\r\n            '& tr > *': {\r\n              display: 'block',\r\n            },\r\n\r\n            '& tr': {\r\n              display: 'table-cell',\r\n            },\r\n\r\n            '& td ~ td': {\r\n              marginTop: 12,\r\n            },\r\n\r\n            '& .radio': {\r\n              minHeight: 'unset',\r\n            },\r\n          },\r\n\r\n          '& .scrollable-appresult': {\r\n            border: `1px solid ${palette.neutralLighter}`,\r\n            margin: '16px 0 12px 0',\r\n            maxHeight: 290,\r\n\r\n            '& .applookup-results-row': {\r\n              border: `1px solid ${palette.neutralLighter}`,\r\n              height: 48,\r\n\r\n              '& .app-icon': {\r\n                width: 48,\r\n\r\n                '& img': {\r\n                  margin: 0,\r\n                },\r\n              },\r\n\r\n              '& .app-result-details': {\r\n                paddingLeft: 8,\r\n                maxWidth: 0,\r\n                overflow: 'hidden',\r\n                textOverflow: 'ellipsis',\r\n                whiteSpace: 'nowrap',\r\n                width: 'auto',\r\n              },\r\n\r\n              '& .appstoreselector, & span': {\r\n                fontSize: 12,\r\n                lineHeight: '16px',\r\n              },\r\n\r\n              '& span[data-bind=\"text: DeveloperName\"]': {\r\n                color: palette.neutralSecondary,\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .blocker-local': {\r\n      extend: getLocalBlockerStyle(palette)['.blocker-local'],\r\n    },\r\n  },\r\n\r\n  '& .app-upgraded-url': {\r\n    marginTop: 32,\r\n\r\n    '& .fieldRowAd > .form-group': {\r\n      marginTop: 0,\r\n    },\r\n\r\n    '& #landingPageLabel > div': {\r\n      display: 'none',\r\n    },\r\n  },\r\n\r\n  '& .app-install__mobile-frame, & .app-install__tablet-frame': {\r\n    ...getPhoneFrameStyle(palette).outerFrame,\r\n  },\r\n\r\n  '& .app-install__mobile-frame': {\r\n    width: 527,\r\n  },\r\n\r\n  '& .app-install__tablet-frame': {\r\n    width: 720,\r\n  },\r\n\r\n  '& .app-install__preview-ad': {\r\n    ...getPhoneFrameStyle(palette).innerFrame,\r\n\r\n    padding: '30px 32px 0 32px',\r\n\r\n    '& .app-install__preview': {\r\n      display: 'flex',\r\n      marginBottom: 8,\r\n\r\n      '& .preview-app-icon, & .preview-app-image, & .preview-app-placeholder': {\r\n        height: 80,\r\n        width: 80,\r\n        marginRight: 9,\r\n      },\r\n      '& .preview-app-description': {\r\n        width: 'calc(100% - 89px)',\r\n\r\n        '& .preview-app-title': {\r\n          color: '#0E3EB5',\r\n          fontSize: 18,\r\n          fontWeight: 600,\r\n          lineHeight: '24px',\r\n        },\r\n\r\n        '& .preview-app-details': {\r\n          color: '#767676',\r\n          fontSize: 14,\r\n          lineHeight: '20px',\r\n          paddingTop: 4,\r\n          wordWrap: 'break-word',\r\n          wordBreak: 'break-word',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .app-install__actions': {\r\n      display: 'flex',\r\n      justifyContent: 'space-between',\r\n\r\n      '& .preview-app-url': {\r\n        color: '#646464',\r\n        fontSize: 11,\r\n        fontWeight: 600,\r\n        lineHeight: '24px',\r\n        padding: '2px 0',\r\n        verticalAlign: 'baseline',\r\n\r\n        '&:before': {\r\n          border: '1px solid #ddd',\r\n          borderRadius: 6,\r\n          content: '\"Ad\"',\r\n          lineHeight: 1,\r\n          marginRight: 5,\r\n          padding: '0 2px',\r\n        },\r\n\r\n        '&:after': {\r\n          color: '#575757',\r\n          content: '\"\\\\F08E\"',\r\n          fontFamily: iconFontFamily,\r\n          marginLeft: 5,\r\n        },\r\n      },\r\n\r\n      '& .btn-default': {\r\n        color: '#111111',\r\n        fontSize: 14,\r\n        lineHeight: '24px',\r\n\r\n        '&:before': {\r\n          content: '\"\\\\E896\"',\r\n          fontFamily: iconFontFamily,\r\n          marginRight: 10,\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n\r\nconst experienceContent = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .image-experience-content': {\r\n    marginBottom: 10,\r\n    minWidth: 669,\r\n\r\n    '& .image-list-view-content .image-list': {\r\n      position: 'relative',\r\n      marginBottom: 0,\r\n\r\n      '& .image-list-content': {\r\n        width: '100%',\r\n        overflowX: 'auto',\r\n\r\n        '&:after': {\r\n          content: '\"\"',\r\n          display: 'inline-flex',\r\n          flexBasis: 28,\r\n          flexShrink: 0,\r\n        },\r\n\r\n        '& .image-list-item .image-list-item-image, & .image-list-item .image-list-item-video': {\r\n          '& .glyphicon.glyphicon-remove.image-delete': {\r\n            extend: floatButtonStyle({ palette }).floatButton,\r\n            fontFamily: iconFontFamily,\r\n            fontSize: 16,\r\n            lineHeight: 1,\r\n            margin: 0,\r\n            padding: 8,\r\n            position: 'absolute',\r\n            left: 'auto',\r\n            top: 'auto',\r\n            right: 2,\r\n            bottom: 2,\r\n\r\n            '&:before': {\r\n              content: '\"\\\\E711\"',\r\n            },\r\n          },\r\n\r\n          '& .glyphicon.glyphicon-pencil.image-edit': {\r\n            extend: floatButtonStyle({ palette }).floatButton,\r\n            fontFamily: iconFontFamily,\r\n            lineHeight: 1,\r\n            fontSize: 16,\r\n            border: 'none',\r\n            position: 'absolute',\r\n            left: 2,\r\n            top: 'auto',\r\n            right: 'auto',\r\n            bottom: 2,\r\n            backgroundColor: `${palette.white}d4`,\r\n            borderRadius: '50%',\r\n            marginLeft: 20,\r\n            marginBottom: 8,\r\n            height: 32,\r\n            width: 32,\r\n            padding: 0,\r\n\r\n            '&:before': {\r\n              content: '\"\\\\E70F\"',\r\n            },\r\n\r\n            '&:hover': {\r\n              backgroundColor: `${palette.themeDarkAlt}ff`,\r\n              '&:before': {\r\n                color: palette.white,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .image-edit + .glyphicon.glyphicon-remove.image-delete': {\r\n            extend: floatButtonStyle({ palette }).floatButton,\r\n            fontFamily: iconFontFamily,\r\n            lineHeight: 1,\r\n            fontSize: 16,\r\n            border: 'none',\r\n            position: 'absolute',\r\n            left: 'auto',\r\n            top: 'auto',\r\n            right: 2,\r\n            bottom: 2,\r\n            backgroundColor: `${palette.white}d4`,\r\n            borderRadius: '50%',\r\n            marginRight: 20,\r\n            marginBottom: 8,\r\n            height: 32,\r\n            width: 32,\r\n            padding: 0,\r\n\r\n            '&:before': {\r\n              content: '\"\\\\E711\"',\r\n            },\r\n\r\n            '&:hover': {\r\n              backgroundColor: `${palette.themeDarkAlt}ff`,\r\n              '&:before': {\r\n                color: palette.white,\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .remove-all-button': {\r\n          background: 'white',\r\n          display: 'flex',\r\n          position: 'absolute',\r\n          left: 'auto',\r\n          top: 1,\r\n          right: 1,\r\n          bottom: 20,\r\n          height: 'auto',\r\n          margin: 0,\r\n        },\r\n\r\n        '& .image-list-choice-group-ad-creator': {\r\n          '& .ms-ChoiceFieldGroup-flexContainer': {\r\n            '& .ms-ChoiceField': {\r\n              '& .ms-ChoiceField-field': {\r\n                borderWidth: 2,\r\n                height: 95,\r\n                width: 112,\r\n                padding: 0,\r\n\r\n                '&:before, &:after': {\r\n                  zIndex: 1,\r\n                },\r\n              },\r\n\r\n              '& .ms-ChoiceField-innerField': {\r\n                padding: 0,\r\n                height: 63,\r\n                width: 112,\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .image-list-choice-group': {\r\n          '& .ms-Label, & .ms-ChoiceField-labelWrapper': {\r\n            display: 'none',\r\n          },\r\n\r\n          '& .ms-ChoiceFieldGroup-flexContainer': {\r\n            display: 'flex',\r\n            flexFlow: 'row',\r\n\r\n            '& .ms-ChoiceField': {\r\n              margin: 0,\r\n\r\n              '& ~ .ms-ChoiceField': {\r\n                marginLeft: 8,\r\n              },\r\n\r\n              '& .ms-ChoiceField-field': {\r\n                borderWidth: 2,\r\n                height: 63,\r\n                width: 112,\r\n                padding: 0,\r\n\r\n                '&:before, &:after': {\r\n                  zIndex: 1,\r\n                },\r\n              },\r\n\r\n              '& .ms-ChoiceField-innerField': {\r\n                padding: 0,\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n\r\n\r\nexport const crudAdStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '& .form-group': {\r\n    margin: 0,\r\n  },\r\n\r\n  '& .form-group:not([style=\"display: none;\"]) ~ .form-group': {\r\n    marginTop: 32,\r\n  },\r\n\r\n  '& .ad-editor-form__container': {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n\r\n    '& > div:not([style=\"display: none;\"]) ~ div': {\r\n      marginTop: 32,\r\n    },\r\n\r\n    '& .alert.alert-info.form-group': {\r\n      marginTop: 8,\r\n    },\r\n  },\r\n\r\n  '& .form-group > #KoErrors': {\r\n    marginLeft: 0,\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n  },\r\n\r\n  '& .panel-title': {\r\n    fontWeight: 600,\r\n  },\r\n\r\n  '& .panel-body-ad': {\r\n    padding: '32px 32px 0 0',\r\n    marginTop: '0 !important',\r\n  },\r\n\r\n  '& textarea': {\r\n    height: 69,\r\n    resize: 'none',\r\n  },\r\n\r\n  '& ul.ui-tabs-nav': {\r\n    display: 'flex',\r\n\r\n    '& > li': {\r\n\r\n      '& > a': {\r\n        background: palette.neutralLighter,\r\n        border: '1px solid transparent',\r\n        borderRadius: 0,\r\n        color: palette.neutralPrimary,\r\n        padding: '12px 24px',\r\n        fontSize: 14,\r\n        fontWeight: 'normal',\r\n        height: 40,\r\n        lineHeight: '12px',\r\n        textAlign: 'center',\r\n\r\n        '&:hover': {\r\n          background: palette.neutralLight,\r\n        },\r\n\r\n        '&:focus': {\r\n          border: '1px solid #605E5C',\r\n        },\r\n\r\n        '&.btn.focus:after, &.btn:focus:after': {\r\n          border: 'none',\r\n        },\r\n      },\r\n\r\n      '&.ui-tabs-selected > a': {\r\n        background: palette.themeLighterAlt,\r\n        fontWeight: 600,\r\n\r\n        '&:hover': {\r\n          background: palette.themeLight,\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .preview-container': {\r\n    '& .preview-nav-pills': {\r\n      display: 'flex',\r\n      flexDirection: 'row',\r\n      alignItems: 'stretch',\r\n      marginBottom: 36,\r\n      width: '100%',\r\n    },\r\n\r\n    '& .ad-preview-bing-searchbox-icon': {\r\n      background: `url(${BingSearchImage}) no-repeat -5px -5px`,\r\n      height: 100,\r\n      width: 530,\r\n    },\r\n\r\n    '& .previews': {\r\n      '& .previewTitleAd': {\r\n        color: '#001BA0',\r\n        fontSize: 20,\r\n        lineHeight: '24px',\r\n      },\r\n\r\n      '& .previewUrlAd': {\r\n        color: '#006D21',\r\n        fontSize: 13,\r\n        lineHeight: '24px',\r\n      },\r\n\r\n      '& .preview-ad__description': {\r\n        color: '#767676',\r\n        fontSize: 13,\r\n        lineHeight: '24px',\r\n\r\n        '&:before': {\r\n          border: '1px solid #ddd',\r\n          borderRadius: 6,\r\n          content: '\"Ad\"',\r\n          fontSize: 11,\r\n          fontWeight: 600,\r\n          lineHeight: 1,\r\n          marginRight: 4,\r\n          padding: '0 2px',\r\n        },\r\n      },\r\n\r\n      '& .preview-ad-slug': {\r\n        display: 'none',\r\n\r\n        '& + span': {\r\n          display: 'none',\r\n        },\r\n      },\r\n\r\n      '& .preview-top .bing-preview-answer': {\r\n        padding: '0 0 0 36px',\r\n      },\r\n\r\n      '& .preview-sidebar .bing-preview-container': {\r\n        padding: '0 0 0 18px',\r\n      },\r\n\r\n      '& .preview-mobile': {\r\n        ...getPhoneFrameStyle(palette).outerFrame,\r\n        width: 527,\r\n\r\n        '& .preview-device-Pref': {\r\n          ...getPhoneFrameStyle(palette).innerFrame,\r\n\r\n          '& .previewAd.mainline': {\r\n            borderRadius: 2,\r\n            boxShadow: '0px 0.3px 0.9px rgba(0, 0, 0, 0.108), 0px 1.6px 3.6px rgba(0, 0, 0, 0.132)',\r\n            margin: 16,\r\n            padding: '8px 16px',\r\n          },\r\n        },\r\n\r\n        '& .previewTitleAd': {\r\n          fontSize: 14,\r\n        },\r\n\r\n        '& .previewUrlAd, & .preview-ad__description': {\r\n          fontSize: 12,\r\n        },\r\n      },\r\n\r\n      '& a:hover': {\r\n        textDecoration: 'underline',\r\n      },\r\n    },\r\n\r\n    ...truncatedStyle,\r\n  },\r\n\r\n  '& > div:not([style=\"display: none;\"]) ~ div': {\r\n    marginTop: 32,\r\n  },\r\n\r\n  '& .col-sm-1, & .col-sm-2, & .col-sm-3, & .col-sm-4, & .col-sm-5, & .col-sm-6, & .col-sm-7, & .col-sm-8, & .col-sm-9, & .col-sm-10, & .col-sm-11, & .col-sm-12': {\r\n    float: 'none',\r\n    paddingLeft: 0,\r\n    paddingRight: 0,\r\n  },\r\n\r\n  '& .col-sm-8': {\r\n    width: '80%',\r\n  },\r\n\r\n  '& .col-sm-offset-4': {\r\n    marginLeft: 0,\r\n    marginRight: '20%',\r\n  },\r\n\r\n  '& .row': {\r\n    display: 'flex',\r\n    margin: 0,\r\n  },\r\n\r\n  '& > .p': {\r\n    marginTop: 32,\r\n  },\r\n\r\n  '& .form-group .control-label': {\r\n    display: 'flex',\r\n    fontSize: 14,\r\n    fontWeight: 600,\r\n    lineHeight: '19px',\r\n    padding: '0 0 8px 0',\r\n    textAlign: 'left',\r\n  },\r\n\r\n  '& .form-group label': {\r\n    padding: 0,\r\n  },\r\n\r\n  '& .form-hint, & .remaining-hint, & .charactersRemaining, & .remaining-chars-hint': {\r\n    color: palette.neutralPrimary,\r\n    fontSize: 14,\r\n    lineHeight: '20px',\r\n    textAlign: 'right',\r\n    marginTop: 4,\r\n    marginBottom: 0,\r\n  },\r\n\r\n  '& .checkbox, & .radio': {\r\n    paddingTop: 0,\r\n\r\n    '& > label': {\r\n      left: 0,\r\n    },\r\n\r\n    '& input[type=\"checkbox\"], & input[type=\"radio\"]': {\r\n      marginLeft: 0,\r\n    },\r\n\r\n    '& input[type=\"checkbox\"]': {\r\n      fontFamily: iconFontFamily,\r\n      appearance: 'none',\r\n      '-webkit-appearance': 'none',\r\n\r\n      '&:after': {\r\n        content: '\"\\\\E73E\"',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .ext-ad-url-options, & .advanced-url-options': {\r\n    '& .row': {\r\n      display: 'block',\r\n    },\r\n\r\n    '& .col-sm-offset-4 .row': {\r\n      display: 'table-row',\r\n      fontSize: 14,\r\n      lineHeight: '20px',\r\n      padding: 0,\r\n    },\r\n\r\n    '& div[data-bind=\"visible: isExpanded\"]': {\r\n      marginTop: 32,\r\n    },\r\n\r\n    '& .form-control-static': {\r\n      padding: '2px 0',\r\n      minHeight: 'unset',\r\n    },\r\n\r\n    '& ul#TrackingTemplateErrors li': {\r\n      paddingTop: 4,\r\n    },\r\n\r\n    '& .accordion': {\r\n      marginTop: 32,\r\n      paddingBottom: 0,\r\n      whiteSpace: 'nowrap',\r\n    },\r\n\r\n    '& .upgraded-url-options-preview__label': {\r\n      color: palette.neutralPrimary,\r\n      display: 'table-cell',\r\n      marginRight: 14,\r\n      padding: '2px 4px 2px 0',\r\n      whiteSpace: 'nowrap',\r\n      verticalAlign: 'top',\r\n\r\n      '& span': {\r\n        verticalAlign: 'baseline',\r\n      },\r\n    },\r\n\r\n    '& .upgraded-url-options-preview__value': {\r\n      display: 'table-cell',\r\n      padding: '2px 0',\r\n      whiteSpace: 'nowrap',\r\n\r\n      '& span': {\r\n        verticalAlign: 'baseline',\r\n      },\r\n\r\n      '& .form-inline': {\r\n        display: 'flex',\r\n      },\r\n\r\n      '& .control-label': {\r\n        fontWeight: 'normal',\r\n        padding: 0,\r\n      },\r\n\r\n      '& .custom-params-template .row .form-inline span:last-of-type': {\r\n        paddingLeft: 4,\r\n      },\r\n    },\r\n\r\n    '& .tracking-template': {\r\n      display: 'flex',\r\n    },\r\n  },\r\n\r\n  '& .expand-url-options .expanderImage, & .link.expander .expanderImage, & .call-to-action .expanderImage': {\r\n    color: palette.themePrimary,\r\n    fontSize: 14,\r\n    lineHeight: '24px',\r\n\r\n    '&:before': {\r\n      fontFamily: iconFontFamily,\r\n      content: '\"\\\\E76C\"',\r\n      marginRight: 8,\r\n    },\r\n  },\r\n\r\n  '& .expand-url-options .expandedImage, & .link.expanded .expandedImage, & .call-to-action .expandedImage': {\r\n    color: palette.themePrimary,\r\n    fontSize: 14,\r\n    lineHeight: '24px',\r\n\r\n    '&:before': {\r\n      fontFamily: iconFontFamily,\r\n      content: '\"\\\\E70D\"',\r\n      marginRight: 8,\r\n    },\r\n  },\r\n\r\n  '& .tracking-template__container > div': {\r\n    display: 'grid',\r\n    fallbacks: [\r\n      {\r\n        display: '-ms-grid',\r\n      },\r\n    ],\r\n    gridTemplateColumns: '1fr auto',\r\n    '-ms-grid-columns': '1fr auto',\r\n\r\n    '& > *': {\r\n      gridColumnStart: '1',\r\n      gridColumnEnd: 'span 2',\r\n      '-ms-grid-column': '1',\r\n      '-ms-grid-column-span': '2',\r\n    },\r\n\r\n    '& > span': {\r\n      display: 'block',\r\n    },\r\n\r\n    '& > input.tracking-template__value-field': {\r\n      gridColumnStart: '1',\r\n      gridColumnEnd: '1',\r\n      '-ms-grid-column': '1',\r\n      '-ms-grid-column-span': '1',\r\n      '-ms-grid-row': '1',\r\n    },\r\n\r\n    '& > .charactersRemaining': {\r\n      '-ms-grid-row': '2',\r\n      textAlign: 'left',\r\n    },\r\n\r\n    '& > .font-error': {\r\n      '-ms-grid-row': '4',\r\n    },\r\n\r\n    '& > #trackingTemplateErrors': {\r\n      '-ms-grid-row': '5',\r\n    },\r\n\r\n    '& > span.control-label': {\r\n      '-ms-grid-row': '6',\r\n    },\r\n\r\n    '& > :last-child': {\r\n      '-ms-grid-row': '7',\r\n    },\r\n  },\r\n\r\n  '& .final-url-suffix__container > div': {\r\n    display: 'grid',\r\n    fallbacks: [\r\n      {\r\n        display: '-ms-grid',\r\n      },\r\n    ],\r\n    gridTemplateColumns: '1fr auto',\r\n    '-ms-grid-columns': '1fr auto',\r\n\r\n    '& > *': {\r\n      gridColumnStart: '1',\r\n      gridColumnEnd: 'span 2',\r\n      '-ms-grid-column': '1',\r\n      '-ms-grid-column-span': '2',\r\n    },\r\n\r\n    '& > span': {\r\n      display: 'block',\r\n    },\r\n\r\n    '& > input.tracking-template__value-field': {\r\n      gridColumnStart: '1',\r\n      gridColumnEnd: '1',\r\n      '-ms-grid-column': '1',\r\n      '-ms-grid-column-span': '1',\r\n      '-ms-grid-row': '1',\r\n    },\r\n\r\n    '& > .charactersRemaining': {\r\n      '-ms-grid-row': '2',\r\n      textAlign: 'left',\r\n    },\r\n\r\n    '& > .font-error': {\r\n      '-ms-grid-row': '4',\r\n    },\r\n\r\n    '& > #FinalUrlSuffixErrors': {\r\n      '-ms-grid-row': '5',\r\n    },\r\n\r\n    '& > span.control-label': {\r\n      '-ms-grid-row': '6',\r\n    },\r\n\r\n    '& > :last-child': {\r\n      '-ms-grid-row': '7',\r\n    },\r\n  },\r\n\r\n  ...uurlTestToolStyle({ palette, iconFontFamily }),\r\n\r\n  '& .error, & .font-error': {\r\n    color: '#A80000',\r\n    fontSize: 12,\r\n  },\r\n\r\n  '& div.error': {\r\n    margin: '4px 0 0 0',\r\n  },\r\n\r\n  '& input.error, & input.validation-error': {\r\n    border: '1px solid #A80000',\r\n    margin: 'unset',\r\n  },\r\n\r\n  '& .container-fluid': {\r\n    display: 'grid',\r\n    fallbacks: [\r\n      {\r\n        display: '-ms-grid',\r\n      },\r\n    ],\r\n    gridTemplateColumns: 'auto 1fr',\r\n    '-ms-grid-columns': 'auto 1fr',\r\n    paddingLeft: 0,\r\n    paddingRight: 0,\r\n    width: '100%',\r\n\r\n    '& > span': {\r\n      display: 'block',\r\n    },\r\n  },\r\n\r\n  '& ol, & ul': {\r\n    margin: 0,\r\n  },\r\n\r\n  '& .url, & .final-url, & .mobile-url': {\r\n    '& .flex-row-fixed': {\r\n      gridColumnStart: '1',\r\n      '-ms-grid-column': '1',\r\n      '-ms-grid-row': '1',\r\n      marginRight: 6,\r\n    },\r\n\r\n    '& .flex-row-dynamic': {\r\n      gridColumnStart: '2',\r\n      '-ms-grid-column': '2',\r\n      '-ms-grid-row': '1',\r\n      marginLeft: 6,\r\n\r\n      '& + .error': {\r\n        gridColumnStart: '1',\r\n        gridColumnEnd: 'span 2',\r\n        '-ms-grid-column': '1',\r\n        '-ms-grid-column-span': '2',\r\n        '-ms-grid-row': '2',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .display-url': {\r\n    display: 'flex',\r\n    flexWrap: 'wrap',\r\n    alignItems: 'baseline',\r\n\r\n    '& .ext__displayUrl__domain': {\r\n      width: 'auto',\r\n    },\r\n\r\n    '& .ext__displayUrl__domain--placeholder': {\r\n      color: palette.neutralSecondary,\r\n    },\r\n\r\n    '& .ext__displayUrl__path': {\r\n      flex: '1 0 auto',\r\n      width: '20%',\r\n    },\r\n\r\n    '& .ext__displayUrl__separator': {\r\n      marginLeft: 6,\r\n      marginRight: 6,\r\n      width: 'auto',\r\n    },\r\n\r\n    '& .clearfix': {\r\n      width: '100%',\r\n    },\r\n  },\r\n\r\n  '& .upgraded-url': {\r\n    marginTop: 32,\r\n\r\n    '& .upgraded-url__container > div > .fieldRowAd': {\r\n      '& > div:not([style=\"display: none;\"]) ~ div': {\r\n        marginTop: 8,\r\n      },\r\n\r\n      '& > .form-group[data-bind=\"visible: mobileUrlVisible\"]': {\r\n        marginTop: 32,\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .custom-parameters, & .custom-paramters__container': {\r\n    '& .custom-params-template .custom-param-entry': {\r\n      display: 'flex',\r\n      alignItems: 'baseline',\r\n\r\n      '& .custom-param__key-container, & .flex-row-dynamic, & td': {\r\n        display: 'flex',\r\n        alignItems: 'baseline',\r\n      },\r\n    },\r\n\r\n    '& .control-label': {\r\n      whiteSpace: 'pre',\r\n    },\r\n\r\n    '& .custom-param__close-button': {\r\n      marginLeft: 10,\r\n      cursor: 'pointer',\r\n    },\r\n  },\r\n\r\n  '& .advanced-options': {\r\n    marginTop: 32,\r\n\r\n    '& .title-container + .form-control-static': {\r\n      padding: 0,\r\n      minHeight: 'unset',\r\n    },\r\n\r\n    '& .expandable': {\r\n      marginTop: 32,\r\n\r\n      '& .form-group': {\r\n        display: 'block',\r\n\r\n        '& .title-container': {\r\n          textAlign: 'left',\r\n          paddingBottom: 8,\r\n\r\n          '& + .form-control-static': {\r\n            padding: 0,\r\n          },\r\n        },\r\n\r\n        '& .tracking-template, & .final-url-suffix > div': {\r\n          '& > .charactersRemaining': {\r\n            textAlign: 'left',\r\n          },\r\n\r\n          '& .control-label': {\r\n            fontWeight: 'normal',\r\n            padding: 0,\r\n          },\r\n        },\r\n\r\n        '& .custom-params-template .form-inline': {\r\n          display: 'flex',\r\n          fontWeight: 'normal',\r\n          padding: 0,\r\n\r\n          '& .control-label': {\r\n            fontWeight: 'normal',\r\n          },\r\n        },\r\n\r\n        '& .custom-params-template > div > span.control-label': {\r\n          fontWeight: 'normal',\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& div[data-type=\"DynamicSearch\"]': {\r\n    '& .form-control-static': {\r\n      padding: 0,\r\n      minHeight: 'unset',\r\n    },\r\n  },\r\n\r\n  '& .col-sm-4.adgroup-selector': {\r\n    width: '40%',\r\n\r\n    '& .dropdown-toggle': {\r\n      width: '100%',\r\n\r\n      '& .selected-item': {\r\n        maxWidth: '93%', // Leave some space to render edit icon.\r\n\r\n        '& .selected-item': {\r\n          maxWidth: '100%', // Fix bug: https://msasg.visualstudio.com/Bing_Ads/_queries/edit/2857432/\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  ...crudAppInstallAdStyle({ palette, iconFontFamily }),\r\n  ...crudRSAStyle({ palette, iconFontFamily }),\r\n});\r\n\r\nexport const crudAudienceAdStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  ...underlineLinkStyle({ palette, elementLocator: ' > a.HelpTopic' }),\r\n\r\n  '& .form-group, & .image-section-label, & .custom-param__key-container': {\r\n    '& label': {\r\n      display: 'inline-block',\r\n      padding: '0 0 8px 0',\r\n    },\r\n\r\n    '& a.helpbutton': {\r\n      display: 'inline-block',\r\n    },\r\n\r\n    '& .input-group': {\r\n      width: '100%',\r\n    },\r\n  },\r\n\r\n  '& .btn-hero': {\r\n    background: `${palette.white} !important`,\r\n    border: `1px solid ${palette.neutralSecondaryAlt}`,\r\n    borderRadius: 2,\r\n    boxSizing: 'border-box',\r\n    fontWeight: 600,\r\n\r\n    '&:before': {\r\n      color: palette.themePrimary,\r\n      content: '\"\\\\E710\"',\r\n      fontFamily: iconFontFamily,\r\n      fontWeight: 'normal',\r\n      marginRight: 8,\r\n    },\r\n  },\r\n\r\n  '& .react-image-experience': {\r\n    marginTop: 32,\r\n\r\n    '& .crud-audience-ad-react .ad-edit-and-preview-container': {\r\n      marginTop: 32,\r\n\r\n      '& > .col-sm-7': {\r\n        marginLeft: '8%',\r\n      },\r\n\r\n      '& .ad-edit-with-image-container': {\r\n        margin: 0,\r\n        padding: 0,\r\n\r\n        '& .ad-creation-content': {\r\n          padding: 0,\r\n\r\n          '& .ad-properties-section': {\r\n            width: '100%',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .new-preview-carousel-container': {\r\n        border: '1px solid #C8C8C8',\r\n        margin: 0,\r\n        width: '100%',\r\n        minWidth: 669,\r\n\r\n        '& .preview-header': {\r\n          display: 'flex',\r\n          flexDirection: 'row',\r\n          alignItems: 'center',\r\n\r\n          '& .ad-preview-title.with-additional-tag': {\r\n            marginRight: 8,\r\n            display: 'inline-block',\r\n            flexGrow: 0,\r\n          },\r\n\r\n          '& .flex-grow': {\r\n            flexGrow: 1,\r\n          },\r\n\r\n          '& .ad-preview-actions.inline-title': {\r\n            display: 'inline-block',\r\n            flexGrow: 0,\r\n            marginRight: 16,\r\n          },\r\n        },\r\n\r\n        '& .ad-preview-title': {\r\n          fontSize: 18,\r\n          fontWeight: 'normal',\r\n          lineHeight: '24px',\r\n          margin: '20px 24px 16px 24px',\r\n          '&.with-additional-tag': {\r\n            marginRight: 8,\r\n            display: 'inline-block',\r\n          },\r\n        },\r\n\r\n        '& .ad-preview-actions': {\r\n          textAlign: 'center',\r\n\r\n          '& span.action-label': {\r\n            fontSize: 16,\r\n            lineHeight: 2,\r\n            marginRight: 16,\r\n          },\r\n        },\r\n\r\n        '& .carousel-inner': {\r\n          paddingBottom: 64,\r\n          '& > .item.active': {\r\n            paddingLeft: 24,\r\n            paddingRight: 24,\r\n          },\r\n        },\r\n\r\n        '& ol.carousel-indicators': {\r\n          position: 'absolute',\r\n          bottom: 0,\r\n          left: 0,\r\n          margin: '20px 24px',\r\n          width: 'auto',\r\n\r\n          '& li': {\r\n            background: 'none',\r\n            border: '1px solid #605E5C',\r\n            borderRadius: 10,\r\n            margin: '0 10px 0 0',\r\n            height: 10,\r\n            width: 10,\r\n          },\r\n\r\n          '& li.active': {\r\n            background: palette.themePrimary,\r\n            border: `1px solid ${palette.themePrimary}`,\r\n          },\r\n        },\r\n\r\n        '& .carousel-controls': {\r\n          display: 'none',\r\n        },\r\n\r\n        '& .carousel-control': {\r\n          color: palette.themePrimary,\r\n          position: 'absolute',\r\n          left: 'auto',\r\n          top: 'auto',\r\n          right: 0,\r\n          bottom: 0,\r\n          height: 32,\r\n          width: 20,\r\n          margin: '20px 24px',\r\n          textShadow: 'none',\r\n\r\n          '&:focus': {\r\n            outline: `1px solid ${palette.neutralSecondary}`,\r\n          },\r\n\r\n          '&.left': {\r\n            marginRight: 76,\r\n          },\r\n\r\n          '& .glyphicon-chevron-left, & .glyphicon-chevron-right': {\r\n            fontFamily: iconFontFamily,\r\n            position: 'relative',\r\n            top: 'auto',\r\n            right: 'auto',\r\n            bottom: 'auto',\r\n            left: 'auto',\r\n            margin: 0,\r\n            fontSize: 16,\r\n            lineHeight: 1,\r\n            verticalAlign: 0,\r\n          },\r\n        },\r\n\r\n        '& .new-responsive-ad-preview-container': {\r\n          height: 500,\r\n          overflow: 'hidden',\r\n\r\n          '& .responsive-ad-preview-content': {\r\n            border: '1px solid #C8C8C8',\r\n\r\n            '& .ad-logo': {\r\n              width: 'auto',\r\n              padding: '0 4px',\r\n              marginRight: 4,\r\n\r\n              '& p': {\r\n                margin: 0,\r\n                position: 'relative',\r\n                top: 0,\r\n              },\r\n            },\r\n\r\n            '& .business-name': {\r\n              height: 'auto',\r\n              padding: 0,\r\n            },\r\n          },\r\n\r\n          '& .preview-type-string': {\r\n            bottom: 50,\r\n            fontSize: 14,\r\n            lineHeight: '20px',\r\n            paddingTop: 12,\r\n          },\r\n\r\n          '& .video-ad-preview-type-name': {\r\n            fontSize: 22,\r\n            position: 'absolute',\r\n            bottom: 20,\r\n            transform: 'translateX(-50%)',\r\n            left: '50%',\r\n          },\r\n        },\r\n\r\n        '& .new-responsive-ad-preview-container.preview-16-9-homepage, & .new-responsive-ad-preview-container.preview-16-9-infopane': {\r\n          '& .responsive-video-ad-preview-content': {\r\n            boxShadow: '0px 1.6px 3.6px rgba(0, 0, 0, 0.13), 0px 0px 2.9px rgba(0, 0, 0, 0.11)',\r\n          },\r\n          '& .responsive-ad-preview-content': {\r\n            '& > div > div:nth-child(3)': {\r\n              color: 'white',\r\n              '& i': {\r\n                marginTop: 12,\r\n                marginBottom: 12,\r\n              },\r\n              '& i:first-child': {\r\n                marginLeft: 16,\r\n              },\r\n              '& i:last-child': {\r\n                marginRight: 16,\r\n              },\r\n              '& .ms-Slider-container': {\r\n                marginLeft: 16,\r\n                marginRight: 16,\r\n              },\r\n            },\r\n          },\r\n          '& .video-ad-preview-shadow': {\r\n            background: 'linear-gradient(transparent, black)',\r\n            position: 'absolute',\r\n            bottom: 0,\r\n            height: 150,\r\n            width: '100%',\r\n            pointerEvents: 'none',\r\n            transition: 'opacity 0.3s',\r\n          },\r\n          // Video control styles\r\n          '& video::-webkit-media-controls-panel': {\r\n            background: '0 0',\r\n          },\r\n          '& video::-webkit-media-controls-fullscreen-button': {\r\n            display: 'none',\r\n          },\r\n\r\n          '& .text-container': {\r\n            position: 'absolute',\r\n            marginBottom: 50,\r\n            color: 'white',\r\n            '& .long-headline .multi-line-processed-text': {\r\n              fontSize: 28,\r\n              lineHeight: '34px',\r\n            },\r\n            '& .business-name-with-ads': {\r\n              marginTop: 13,\r\n              '& .adslabel': {\r\n                fontSize: 10,\r\n                borderRadius: '4px',\r\n                background: '#107C10',\r\n                height: 16,\r\n                padding: '2px 4px 2px 4px',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .new-responsive-ad-preview-container.preview-16-9-inarticlead': {\r\n          '& .responsive-video-ad-preview-content': {\r\n            boxShadow: '0px 1.6px 3.6px rgba(0, 0, 0, 0.13), 0px 0px 2.9px rgba(0, 0, 0, 0.11)',\r\n          },\r\n          '& .responsive-ad-preview-content': {\r\n            '& > div > div:nth-child(3)': {\r\n              color: 'white',\r\n              '& i': {\r\n                marginTop: 12,\r\n                marginBottom: 12,\r\n              },\r\n              '& i:first-child': {\r\n                marginLeft: 16,\r\n              },\r\n              '& i:last-child': {\r\n                marginRight: 16,\r\n              },\r\n              '& .ms-Slider-container': {\r\n                marginLeft: 16,\r\n                marginRight: 16,\r\n              },\r\n            },\r\n          },\r\n          // Video control styles\r\n          '& video::-webkit-media-controls-current-time-display, & video::-webkit-media-controls-time-remaining-display, & video::-webkit-media-controls-fullscreen-button': {\r\n            display: 'none',\r\n          },\r\n\r\n          '& .text-container': {\r\n            padding: 8,\r\n            '& .long-headline ': {\r\n              '& .multi-line-processed-text': {\r\n                fontSize: 14,\r\n                lineHeight: '20px',\r\n                color: '#2B2B2B',\r\n              },\r\n            },\r\n            '& .business-name-with-ads': {\r\n              position: 'absolute',\r\n              bottom: 8,\r\n              '& .adslabel': {\r\n                fontSize: 10,\r\n                borderRadius: '4px',\r\n                background: '#107C10',\r\n                height: 16,\r\n                padding: '2px 4px 2px 4px',\r\n              },\r\n              '& .business-name': {\r\n                color: '#555555',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .disclaimer-info, & .additional-disclaimer': {\r\n          fontSize: 12,\r\n          lineHeight: '20px',\r\n          textAlign: 'left',\r\n        },\r\n\r\n        '& .disclaimer-info': {\r\n          padding: '0 24px 20px 24px',\r\n        },\r\n\r\n        '& .additional-disclaimer': {\r\n          bottom: 0,\r\n          padding: '0 24px',\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .audience-ads-policy-container': {\r\n    marginTop: 32,\r\n  },\r\n\r\n  '& .image-experience-content .upload-progress-container': {\r\n    paddingTop: 4,\r\n    '& .bar-upload-progress-text': {\r\n      marginTop: -10,\r\n    },\r\n  },\r\n\r\n  '& .image-experience-content .image-list-view-content': {\r\n    '& .image-list': {\r\n      '& .image-list-label': {\r\n        fontSize: 14,\r\n        fontWeight: 600,\r\n        lineHeight: '19px',\r\n      },\r\n\r\n      '& .image-list-content': {\r\n        display: 'flex',\r\n        border: '1px solid #C8C8C8',\r\n        margin: '8px 0 0 0',\r\n        padding: '16px 16px 12px 16px',\r\n        width: 'fit-content',\r\n\r\n        '& .image-list-item': {\r\n          float: 'none',\r\n          padding: 0,\r\n\r\n          '& .image-list-item-video': {\r\n            backgroundColor: 'rgb(97, 97, 97)',\r\n          },\r\n\r\n          '& ~ .image-list-item': {\r\n            marginLeft: 8,\r\n          },\r\n\r\n          '& .dropdown.btn-group': {\r\n            display: 'block',\r\n\r\n            '&.image-edit-dropdown .dropdown-toggle': {\r\n              extend: floatButtonStyle({ palette }).floatButton,\r\n              fontFamily: iconFontFamily,\r\n              fontSize: 16,\r\n              lineHeight: 1,\r\n              float: 'right',\r\n              margin: 0,\r\n\r\n              '&:before': {\r\n                content: '\"\\\\E70F\"',\r\n              },\r\n            },\r\n\r\n            '& .caret': {\r\n              display: 'none',\r\n            },\r\n          },\r\n\r\n          '& .image-item-ratio-label': {\r\n            fontSize: 14,\r\n            lineHeight: '20px',\r\n          },\r\n        },\r\n\r\n        '& .remove-all-button': {\r\n          background: 'none',\r\n          border: 'none',\r\n          color: palette.neutralSecondary,\r\n          fontFamily: iconFontFamily,\r\n          fontSize: 12,\r\n          lineHeight: 1,\r\n          margin: '-14px -14px 0 0',\r\n          padding: 8,\r\n          width: 28,\r\n          height: 28,\r\n\r\n          '&:before': {\r\n            content: '\"\\\\E711\"',\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .created-ad-list-container': {\r\n    display: 'block',\r\n\r\n    '& .ad-list-item': {\r\n      backgroundColor: `${palette.white} !important`,\r\n      border: `1px solid ${palette.neutralSecondary} !important`,\r\n      margin: '20px 40px 20px 0 !important',\r\n\r\n      '& .create-another-ad': {\r\n        color: `${palette.themePrimary} !important`,\r\n      },\r\n\r\n      '& .existing-ad-options': {\r\n        backgroundColor: 'transparent !important',\r\n        height: 'auto !important',\r\n\r\n        '& button': {\r\n          color: `${palette.themePrimary} !important`,\r\n        },\r\n      },\r\n      '& .unavailable-hint': {\r\n        paddingTop: 36,\r\n      },\r\n    },\r\n    '& .ad-list-video-item': {\r\n      '&:before': {\r\n        content: '\"\\\\E072\"',\r\n        position: 'absolute',\r\n        fontFamily: 'Glyphicons Halflings',\r\n        color: 'white',\r\n        left: 100,\r\n        top: 42,\r\n        fontSize: 24,\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .react-image-experience .crud-audience-ad-react.crud-multimedia-ad-react': {\r\n    marginTop: -32,\r\n\r\n    '& .call-to-action-section': {\r\n      '& .action-text, .action-language': {\r\n\r\n        '& .dropdown-search-selector__dropdown': {\r\n          marginLeft: 0,\r\n\r\n          '& button.dropdown-toggle': {\r\n            padding: 0,\r\n            width: 'fit-content',\r\n            minWidth: '100%',\r\n            borderColor: palette.neutralSecondary,\r\n            borderRadius: 2,\r\n            fontWeight: 'normal',\r\n          },\r\n\r\n          '& .text-left': {\r\n            padding: '4px 0px 0px 8px',\r\n            marginRight: 25,\r\n          },\r\n\r\n          '& .glyphicon.glyphicon-chevron-down': {\r\n            paddingTop: 7,\r\n            marginRight: 5,\r\n            fontSize: 14,\r\n            color: palette.neutralSecondary,\r\n          },\r\n        },\r\n\r\n        '& .dropdown-menu': {\r\n          transform: 'translateY(0px)',\r\n          transition: 'none',\r\n\r\n          '& .dropdown-search-selector__search': {\r\n            padding: '5px 0px',\r\n\r\n            '& button': {\r\n              // marginTop: 0,\r\n            },\r\n\r\n            '& input': {\r\n              width: '80%',\r\n            },\r\n          },\r\n\r\n          '& .dropdown-search-selector__options': {\r\n            '& li>a': {\r\n              color: '#333',\r\n              display: 'block',\r\n              padding: '5px 10px',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .ad-iamge-container': experienceContent({ palette, iconFontFamily }),\r\n\r\n    '& .ad-edit-and-preview-container': {\r\n      '& .col-sm-5': {\r\n        width: '40%',\r\n      },\r\n\r\n      '& .ad-edit-with-image-container .ad-creation-content .ad-properties-section': {\r\n        marginTop: 0,\r\n\r\n        '& .short-headline, .long-headline, .description': {\r\n          marginTop: 12,\r\n        },\r\n\r\n        '& .image-manager-container, .image-required-error': {\r\n          marginBottom: 0,\r\n        },\r\n      },\r\n\r\n      ...experienceContent({ palette, iconFontFamily }),\r\n\r\n      '& .new-preview-carousel-container .new-responsive-ad-preview-container': {\r\n        height: 500,\r\n\r\n        '& .responsive-ad-preview-content': {\r\n          top: '45%',\r\n        },\r\n\r\n        '& .preview-type-string': {\r\n          bottom: 40,\r\n        },\r\n\r\n        '& .additional-disclaimer': {\r\n          padding: 0,\r\n        },\r\n\r\n        '& .ads-label': {\r\n          position: 'absolute',\r\n          backgroundColor: 'white',\r\n          color: 'black',\r\n          fontSize: 11,\r\n          borderRadius: 5,\r\n          padding: '1.2px 6px 1.8px 6px',\r\n          margin: '7px',\r\n          opacity: '90%',\r\n        },\r\n\r\n        '& .multimedia-ad-wide-image': {\r\n          '& .text-container': {\r\n            position: 'absolute',\r\n            left: 0,\r\n            paddingLeft: 32,\r\n            '& .short-headline': {\r\n              position: 'relative',\r\n              bottom: 15,\r\n              fontSize: 24,\r\n              color: 'white',\r\n            },\r\n            '& .final-url': {\r\n              position: 'relative',\r\n              bottom: 10,\r\n              fontSize: 10,\r\n              color: 'white',\r\n            },\r\n            '& .description': {\r\n              position: 'relative',\r\n              bottom: 5,\r\n              fontSize: 14,\r\n              color: 'white',\r\n            },\r\n            '& .action-button': {\r\n              position: 'relative',\r\n              borderRadius: 32,\r\n              border: 'none',\r\n              padding: '7px 16px 8px 16px',\r\n              fontSize: 16,\r\n              color: '#666',\r\n              backgroundColor: '#EEE',\r\n              opacity: '70%',\r\n              fontWeight: 'bold',\r\n            },\r\n          },\r\n          '& .gradient': {\r\n            display: 'block',\r\n            position: 'absolute',\r\n            backgroundImage: 'linear-gradient(to left, transparent 0, black 100%)',\r\n            height: 152,\r\n            width: '100%',\r\n            content: '',\r\n          },\r\n          '& .ads-label': {\r\n            right: '0%',\r\n            zIndex: 1,\r\n          },\r\n        },\r\n\r\n        '& .multimedia-ad-landscape-image': {\r\n          height: 'fit-content',\r\n          '& .text-container': {\r\n            bottom: 0,\r\n            left: 0,\r\n            padding: '8px 20px 20px 20px',\r\n            lineHeight: 1.1,\r\n            maxWidth: '-webkit-fill-available',\r\n            width: 466,\r\n            '& .short-headline': {\r\n              bottom: 20,\r\n              fontSize: 24,\r\n              color: 'black',\r\n              marginBottom: 8,\r\n            },\r\n            '& .final-url': {\r\n              bottom: 18,\r\n              fontSize: 10,\r\n              color: 'green',\r\n              marginBottom: 8,\r\n            },\r\n            '& .description': {\r\n              bottom: 8,\r\n              fontSize: 14,\r\n              color: 'black',\r\n              maxWidth: 250,\r\n              paddingRight: 16,\r\n              wordWrap: 'break-word',\r\n            },\r\n            '& .action-button': {\r\n              position: 'absolute',\r\n              bottom: 15,\r\n              right: 15,\r\n              borderRadius: 32,\r\n              border: 'none',\r\n              padding: '6px 16px 8px 16px',\r\n              fontSize: 16,\r\n              backgroundColor: '#a19f9d',\r\n              color: 'white',\r\n              opacity: '90%',\r\n              fontWeight: 'bold',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .multimedia-ad-square-image': {\r\n          '& .text-container': {\r\n            position: 'absolute',\r\n            left: 0,\r\n            paddingLeft: 32,\r\n            lineHeight: 1.1,\r\n            '& .short-headline': {\r\n              position: 'relative',\r\n              bottom: 20,\r\n              fontSize: 24,\r\n              color: 'white',\r\n            },\r\n            '& .final-url': {\r\n              position: 'relative',\r\n              bottom: 18,\r\n              fontSize: 10,\r\n              color: 'green',\r\n            },\r\n            '& .description': {\r\n              position: 'relative',\r\n              bottom: 8,\r\n              fontSize: 14,\r\n              color: 'white',\r\n            },\r\n            '& .action-button': {\r\n              position: 'relative',\r\n              borderRadius: 32,\r\n              border: 'none',\r\n              padding: '6px 16px 8px 16px',\r\n              fontSize: 16,\r\n              backgroundColor: '#a19f9d',\r\n              color: 'white',\r\n              opacity: '90%',\r\n              fontWeight: 'bold',\r\n            },\r\n          },\r\n          '& .gradient': {\r\n            display: 'block',\r\n            position: 'absolute',\r\n            backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n            height: 400,\r\n            width: '100%',\r\n            content: '',\r\n          },\r\n        },\r\n\r\n        '& .multimedia-ad-vertical-image': {\r\n          '& .text-container': {\r\n            position: 'absolute',\r\n            left: 0,\r\n            paddingLeft: 32,\r\n            lineHeight: 1.1,\r\n            '& .short-headline': {\r\n              position: 'relative',\r\n              bottom: 20,\r\n              fontSize: 24,\r\n              color: 'white',\r\n            },\r\n            '& .final-url': {\r\n              position: 'relative',\r\n              bottom: 15,\r\n              fontSize: 10,\r\n              color: 'green',\r\n            },\r\n            '& .description': {\r\n              position: 'relative',\r\n              bottom: 5,\r\n              fontSize: 14,\r\n              color: 'white',\r\n            },\r\n            '& .action-button': {\r\n              position: 'relative',\r\n              top: 5,\r\n              borderRadius: 3,\r\n              border: 'solid 1px #dddddd',\r\n              padding: '5px 16px 6px 16px',\r\n              fontSize: 14,\r\n              backgroundColor: '#a19f9d',\r\n              color: 'white',\r\n              opacity: '90%',\r\n              fontWeight: 'bold',\r\n            },\r\n          },\r\n          '& .gradient': {\r\n            display: 'block',\r\n            position: 'absolute',\r\n            backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n            height: 400,\r\n            width: '100%',\r\n            content: '',\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  ...reactUIBlockerStyle(palette),\r\n  ...modalContainerStyle(palette),\r\n});\r\n","export const getPhoneFrameStyle = palette => ({\r\n  outerFrame: {\r\n    border: `5px solid ${palette.neutralSecondary}`,\r\n    borderBottom: 'none',\r\n    borderRadius: '40px 40px 0 0',\r\n    position: 'relative',\r\n  },\r\n\r\n  innerFrame: {\r\n    border: `1px solid ${palette.neutralSecondary}`,\r\n    borderBottom: 'none',\r\n    borderRadius: 0,\r\n    margin: '45px 15px 0 15px',\r\n    paddingBottom: 1,\r\n\r\n    '&:before': {\r\n      content: '\"\"',\r\n      border: `5px solid ${palette.neutralSecondary}`,\r\n      borderRadius: 5,\r\n      left: '50%',\r\n      top: 20,\r\n      position: 'absolute',\r\n    },\r\n  },\r\n});\r\n","export const truncatedDeclaration = {\r\n  whiteSpace: 'nowrap',\r\n  overflow: 'hidden',\r\n  textOverflow: 'ellipsis',\r\n};\r\n\r\nexport const truncatedStyle = {\r\n  '& .truncated': truncatedDeclaration,\r\n};\r\n","import { btnStyle, controlStyle, floatButtonStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const modalContainerStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .modal-container': {\r\n    position: 'absolute',\r\n    top: 0,\r\n    right: 0,\r\n    bottom: 0,\r\n    left: 'auto',\r\n    width: 940,\r\n    background: palette.white,\r\n    boxShadow: '-5px 10px 15px 0px #0000002D',\r\n    '-webkit-box-shadow': '-5px 10px 15px 0px #0000002D',\r\n    overflow: 'auto',\r\n    zIndex: 1070,\r\n\r\n    '&.image-edit-modal': {\r\n      width: 'auto',\r\n    },\r\n\r\n    '& .modal-content': {\r\n      height: 'auto',\r\n      width: 'auto',\r\n      boxShadow: 'none',\r\n      padding: '22px 32px 16px 32px',\r\n\r\n      '& .add-image-content, & .image-edit-content': {\r\n        fontSize: 14,\r\n        lineHeight: '20px',\r\n        position: 'relative',\r\n\r\n        '& .add-image-label, & .edit-image-title': {\r\n          fontSize: 20,\r\n          fontWeight: 600,\r\n          lineHeight: '27px',\r\n          marginBottom: 16,\r\n        },\r\n\r\n        '& .add-image-description': {\r\n          marginBottom: 20,\r\n          paddingBottom: 32,\r\n          borderBottom: `1px solid ${palette.neutralSecondary}`,\r\n        },\r\n\r\n        '& .image-preview-crop-description': {\r\n          fontSize: 14,\r\n          lineHeight: '20px',\r\n          margin: '0 0 32px 0',\r\n        },\r\n\r\n        '& .image-cropper-ratio-label': {\r\n          fontSize: 14,\r\n          fontWeight: 'normal',\r\n          lineHeight: '20px',\r\n          margin: '16px 0',\r\n        },\r\n\r\n        '& .close-dialog-button': {\r\n          backgroundColor: 'transparent',\r\n          color: palette.neutralSecondary,\r\n          fontFamily: iconFontFamily,\r\n          fontSize: 12,\r\n          lineHeight: 1,\r\n          position: 'absolute',\r\n          right: 0,\r\n          top: 0,\r\n          border: 'none',\r\n          background: 'none',\r\n\r\n          '&:before': {\r\n            content: '\"\\\\E711\"',\r\n          },\r\n        },\r\n\r\n        '& .search-box-container': {\r\n          width: '40%',\r\n\r\n          '& .search-box__input-group': {\r\n            display: 'flex',\r\n\r\n            '& input.search-box__input': {\r\n              color: palette.neutralSecondary,\r\n              marginLeft: '-16px',\r\n              padding: '6px 8px 6px 32px',\r\n              order: 1,\r\n            },\r\n\r\n            '& .search-box__icon': {\r\n              position: 'relative',\r\n              top: 8,\r\n              left: 8,\r\n              fontFamily: iconFontFamily,\r\n              fontSize: 16,\r\n              lineHeight: 1,\r\n              order: 0,\r\n\r\n              '&:before': {\r\n                content: '\"\\\\E721\"',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .sort-by-label': {\r\n          display: 'none',\r\n        },\r\n\r\n        '& .dropdown-selector-container': {\r\n          float: 'right',\r\n          minWidth: '25%',\r\n\r\n          '& .dropdown-toggle': {\r\n            background: 'url(\"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMiAxMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiM0ODQ2NDQ7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5BcnRib2FyZCAxPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS4zNyw0bC41Mi41M0w2LDEwLjQ1LjEyLDQuNTYuNjQsNCw2LDkuNFoiLz48L3N2Zz4=\") no-repeat right 8px top 8px transparent',\r\n            backgroundSize: '14px 14px',\r\n            borderColor: palette.neutralSecondary,\r\n            borderRadius: 2,\r\n            boxShadow: 'none',\r\n            color: palette.neutralPrimary,\r\n            fontWeight: 'normal',\r\n            height: 32,\r\n            padding: '0px 28px 0px 8px',\r\n            transition: 'border-color .15s ease-in-out,box-shadow .15s ease-in-out',\r\n            width: '100%',\r\n            '-webkit-box-shadow': 'none',\r\n            '-webkit-appearance': 'none',\r\n            '-moz-appearance': 'none',\r\n\r\n            '&:active': {\r\n              borderColor: palette.themePrimary,\r\n            },\r\n\r\n            '&:focus': {\r\n              borderColor: palette.themePrimary,\r\n              outline: 0,\r\n            },\r\n\r\n            '&:hover': {\r\n              borderColor: palette.neutralPrimary,\r\n            },\r\n\r\n            '& span': {\r\n              margin: 'auto 0',\r\n            },\r\n\r\n            '& .glyphicon-triangle-bottom': {\r\n              display: 'none',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .image-picker': {\r\n          background: 'none',\r\n          border: 'none',\r\n          margin: '16px 0',\r\n          padding: 0,\r\n\r\n          '& .existing-images': {\r\n            display: 'flex',\r\n            flexWrap: 'wrap',\r\n            height: 'auto',\r\n            justifyContent: 'space-between',\r\n\r\n            '& .existing-image-container': {\r\n              display: 'inline-flex',\r\n              margin: '0 0 24px 0',\r\n              paddingBottom: 20,\r\n\r\n              '& .image-section-wrapper': {\r\n                display: 'flex',\r\n                flexDirection: 'column',\r\n                justifyContent: 'center',\r\n                height: 202,\r\n                width: 202,\r\n\r\n                '& .image-section': {\r\n                  position: 'relative',\r\n\r\n                  '& .image-dimensions': {\r\n                    display: 'none',\r\n                  },\r\n\r\n                  '& button.existing-image': {\r\n                    border: '1px solid transparent',\r\n\r\n                    '&:before': {\r\n                      fontFamily: iconFontFamily,\r\n                      fontSize: 18,\r\n                      position: 'absolute',\r\n                      right: 5,\r\n                      top: 5,\r\n                    },\r\n\r\n                    '& img': {\r\n                      margin: 0,\r\n                      maxHeight: 200,\r\n                      maxWidth: 200,\r\n                    },\r\n                  },\r\n\r\n                  '&:active button.existing-image': {\r\n                    border: `1px solid ${palette.themePrimary}`,\r\n\r\n                    '&:before': {\r\n                      color: palette.themePrimary,\r\n                      content: '\"\\\\ECCB\"',\r\n                    },\r\n                  },\r\n\r\n                  '&:focus button.existing-image': {\r\n                    border: `1px solid ${palette.neutralSecondary}`,\r\n                  },\r\n\r\n                  '&:hover button.existing-image': {\r\n                    border: `1px solid ${palette.neutralPrimary}`,\r\n\r\n                    '&:before': {\r\n                      color: palette.neutralPrimary,\r\n                      content: '\"\\\\ECCA\"',\r\n                    },\r\n                  },\r\n\r\n                  '& button.glyphicon-remove': {\r\n                    extend: floatButtonStyle({ palette }).floatButton,\r\n                    position: 'absolute',\r\n                    top: 'unset',\r\n                    right: 1,\r\n                    bottom: 1,\r\n                    fontFamily: iconFontFamily,\r\n                    fontSize: 16,\r\n                    lineHeight: 1,\r\n                    float: 'right',\r\n\r\n                    '&:before': {\r\n                      content: '\"\\\\E711\"',\r\n                    },\r\n                  },\r\n                },\r\n              },\r\n\r\n              '& .image-name-section': {\r\n                bottom: 0,\r\n                left: 0,\r\n                position: 'absolute',\r\n                display: 'flex',\r\n                justifyContent: 'center',\r\n                width: '100%',\r\n\r\n                '& .image-name': {\r\n                  position: 'relative',\r\n                  left: 0,\r\n                  bottom: 0,\r\n                  width: 'auto',\r\n                },\r\n\r\n                '& .glyphicon-pencil': {\r\n                  background: 'none',\r\n                  color: palette.themeDark,\r\n                  display: 'inline',\r\n                  fontFamily: iconFontFamily,\r\n                  paddingLeft: 8,\r\n                  position: 'relative',\r\n                  top: 'unset',\r\n                  right: 'unset',\r\n\r\n                  '&:before': {\r\n                    content: '\"\\\\E70F\"',\r\n                  },\r\n                },\r\n              },\r\n\r\n              '& .image-name-container': {\r\n                background: palette.white,\r\n                border: 'rgba(0, 0, 0, 0.2)',\r\n                boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n                left: 0,\r\n                margin: 1,\r\n                padding: 16,\r\n                width: 220,\r\n                zIndex: 9,\r\n\r\n                '& .image-name-input': {\r\n                  extend: controlStyle({ palette })['.form-control'],\r\n\r\n                  '& + button': {\r\n                    extend: btnStyle({ palette })['.btn-primary'],\r\n                  },\r\n                },\r\n\r\n                '& #image-name-field': {\r\n                  width: '100%',\r\n                },\r\n\r\n                '& button': {\r\n                  marginLeft: 0,\r\n                  marginTop: 16,\r\n\r\n                  '& ~ button': {\r\n                    marginLeft: 8,\r\n                  },\r\n                },\r\n              },\r\n\r\n              '& .image-delete.glyphicon.glyphicon-remove': {\r\n                display: 'inline',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .ba-pagination': {\r\n          display: 'block',\r\n          textAlign: 'center',\r\n        },\r\n\r\n        '& .choose-file-description': {\r\n          borderTop: `1px solid ${palette.neutralSecondary}`,\r\n          paddingTop: 32,\r\n        },\r\n\r\n        '& .file-picker-react-wrapper': {\r\n          margin: 0,\r\n          padding: '14px 0 0 0',\r\n          width: '100%',\r\n\r\n          '& .file-picker-btn': {\r\n            extend: btnStyle({ palette })['.btn-default'],\r\n            display: 'inline-block',\r\n            float: 'none',\r\n            marginLeft: 0,\r\n\r\n            '& ~ .file-text': {\r\n              display: 'inline-block',\r\n              border: 'none',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .add-image-button-bar, & .image-edit-actions': {\r\n          borderTop: `1px solid ${palette.neutralSecondary}`,\r\n          marginTop: 32,\r\n          paddingTop: 16,\r\n\r\n          '& button ~ button': {\r\n            marginLeft: 12,\r\n          },\r\n        },\r\n\r\n        '& .image-cropper-in-edit': {\r\n          margin: 0,\r\n          padding: 0,\r\n        },\r\n\r\n        '& .edit-preview-section': {\r\n          display: 'flex',\r\n\r\n          '& .edit-section': {\r\n            display: 'flex',\r\n            flexDirection: 'column',\r\n            justifyContent: 'center',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .preview-section': {\r\n        border: '1px solid #C8C8C8',\r\n        padding: '20px 24px',\r\n\r\n        '& .preview-section-title': {\r\n          fontSize: 18,\r\n          fontWeight: 'normal',\r\n          lineHeight: '24px',\r\n        },\r\n      },\r\n\r\n      '& .HelpTopic': {\r\n        verticalAlign: 'baseline',\r\n      },\r\n    },\r\n  },\r\n});\r\n","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/BingSearch.c18bf677.png\";","import { underlineLinkStyle, internalLinkStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const sharedBudgetGridWrapper = ({ palette }) => ({\r\n  '& .shared-budget-switch-editor-grid-wrapper': {\r\n\r\n    '& .shared-budget-switch-editor-grid-innner-wrapper': {\r\n      marginTop: 8,\r\n      marginLeft: 28,\r\n      marginBottom: 10,\r\n\r\n      '& .shared-budget-switch-editor-grid': {\r\n        margin: '8px 0',\r\n        maxHeight: '300px',\r\n        overflow: 'auto',\r\n        width: 600,\r\n\r\n        '& .table-container': {\r\n          padding: 1,\r\n\r\n          '& table>thead>tr>th, & table>tbody>tr>td': {\r\n            fontWeight: 'normal',\r\n            height: '42px',\r\n            verticalAlign: 'middle',\r\n          },\r\n\r\n          '& table>tbody>tr>td:nth-child(1), & table>tbody>tr>td:nth-child(2)': {\r\n            width: '5%',\r\n          },\r\n\r\n          '& table>tbody>tr>td:nth-child(3)': {\r\n            width: '50%',\r\n            wordBreak: 'break-all',\r\n          },\r\n          '& table>tbody>tr>td:nth-child(4), & table>tbody>tr>td:nth-child(5)': {\r\n            width: '20%',\r\n            minWidth: 120,\r\n          },\r\n\r\n          '& .sort-indicator': {\r\n            paddingLeft: 2,\r\n            verticalAlign: 'baseline',\r\n          },\r\n\r\n          '& .grid-cell-text': {\r\n            display: 'inline-block',\r\n          },\r\n\r\n          '& .select-row': {\r\n            marginLeft: 0,\r\n            marginTop: 0,\r\n\r\n            '&:focus:before': {\r\n              outline: `1px solid ${palette.neutralSecondary}`,\r\n              outlineOffset: 8,\r\n            },\r\n          },\r\n\r\n          '& .cell-budget-amount .grid-cell-text': {\r\n            display: 'inline',\r\n          },\r\n\r\n          '& .shared-budgets-grid-status-icon': {\r\n            verticalAlign: 'middle',\r\n          },\r\n\r\n          '& .glyphicon-arrow-up:before': {\r\n            content: '\"\\\\EE68\"',\r\n          },\r\n          '& .glyphicon-arrow-down:before': {\r\n            content: '\"\\\\EE69\"',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .shared-budget-switch-editor-selected-budget': {\r\n      paddingLeft: 28,\r\n      ...underlineLinkStyle({ palette, elementLocator: '> a' }),\r\n      '& > a:focus': {\r\n        border: 0,\r\n      },\r\n\r\n      '& .margin-rt-five': {\r\n        marginRight: 5,\r\n      },\r\n\r\n      '& .shared-budget-switch-editor-selected-budget-edit': {\r\n        verticalAlign: 'middle',\r\n      },\r\n    },\r\n\r\n    '& .shared-budget-no-budget-warning': {\r\n      paddingLeft: '33px',\r\n      fontSize: '12px',\r\n    },\r\n\r\n    '& .shared-budget-no-selected-budget-warning, .shared-budget-is-not-allowed-warning': {\r\n      paddingLeft: '33px',\r\n    },\r\n  },\r\n\r\n  '& .container-budget': {\r\n    padding: [4, 0, 10, 28],\r\n\r\n    '& .input-group': {\r\n      marginBottom: 3,\r\n    },\r\n\r\n    '& .budget-amount': {\r\n      width: 343,\r\n    },\r\n\r\n    '& .form-control-static': {\r\n      padding: 0,\r\n      marginTop: 2,\r\n    },\r\n\r\n    '& .alert-info.form-group': {\r\n      lineHeight: 1.5,\r\n      margin: '8px 0',\r\n      padding: 8,\r\n\r\n      '& .alert-image': {\r\n        marginTop: 3,\r\n        float: 'left',\r\n      },\r\n\r\n      '& .alert-info-inline': {\r\n        ...internalLinkStyle({ palette, elementLocator: '> a', isGreyBackground: true }),\r\n        '& a': {\r\n          verticalAlign: 'middle',\r\n        },\r\n        '& > a:focus': {\r\n          border: 0,\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const estimationResultStyle = () => ({\r\n\r\n  '& .estimation-result, .kpiestimation-result': {\r\n    marginTop: 35,\r\n    minHeight: 88,\r\n    width: '100%',\r\n\r\n    '& .panel-heading': {\r\n      border: 0,\r\n    },\r\n\r\n    '& .panel-body': {\r\n      padding: 0,\r\n\r\n      '& .form-group': {\r\n        margin: 0,\r\n        width: 250,\r\n        float: 'left',\r\n        border: '1px solid #EFEDEB',\r\n\r\n        '& .control-label': {\r\n          marginTop: 0,\r\n          width: 250,\r\n          borderBottom: '1px solid #EFEDEB',\r\n          padding: 8,\r\n\r\n          '& label': {\r\n            width: 210,\r\n            fontWeight: 'normal',\r\n            overflow: 'hidden',\r\n            textOverflow: 'ellipsis',\r\n            whiteSpace: 'nowrap',\r\n          },\r\n\r\n          '& .helpbutton': {\r\n            display: 'inline-block',\r\n            marginTop: 5,\r\n            verticalAlign: 'top',\r\n          },\r\n        },\r\n\r\n        '& .form-control-static': {\r\n          width: '100%',\r\n          height: 44,\r\n          lineHeight: '44px',\r\n          textAlign: 'left',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .estimated-clicks, .estimated-impressions, .estimated-spend, .estimated-position, .estimated-CTR, .estimated-avgCPC': {\r\n      display: 'inline-block',\r\n      float: 'none',\r\n    },\r\n  },\r\n\r\n});\r\n","import { convertToLocalStyle } from './utils/convert-style';\r\nimport { scrollbarStyle } from './shared-styles-from-theme-fluent';\r\n\r\nconst headeWidth = 78;\r\nconst paddingOfAll = 8;\r\n\r\nexport const audienceAssociationSectionStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }, { singleListBoxWidth = 610 } = {}) => ({\r\n  '& .association-section, & .audience__exclusion, & .audience__association': {\r\n    '& .bid-adjustment-section': {\r\n      '& .form-group:nth-child(3)': {\r\n        '& .inline-control': {\r\n          width: 'auto',\r\n          paddingLeft: 0,\r\n          paddingRight: 0,\r\n        },\r\n        '& #bidAdjustInput': {\r\n          marginLeft: 7,\r\n          marginRight: 9,\r\n        },\r\n      },\r\n    },\r\n    '& .cashback-settings-section': {\r\n      '& .cashback-percent-cell': {\r\n        '& input': {\r\n          marginLeft: 7,\r\n          marginRight: 9,\r\n          paddingLeft: 8,\r\n        },\r\n        '& select': {\r\n          width: 185,\r\n        },\r\n      },\r\n    },\r\n    '& .DMP_doublelistbox_section': {\r\n      marginBottom: 0,\r\n      ...convertToLocalStyle(scrollbarStyle({ palette })),\r\n\r\n      '& .dmp_select_section': {\r\n        padding: 0,\r\n        marginBottom: 8,\r\n      },\r\n\r\n      '& .doubleListBox': {\r\n        width: 1240,\r\n        position: 'relative',\r\n\r\n        '& .layout-columns-element:nth-child(1)': {\r\n          float: 'none',\r\n          height: 48,\r\n          position: 'absolute',\r\n          zIndex: 1,\r\n\r\n          '& .form-group:nth-child(1)': {\r\n            marginBottom: '0 !important',\r\n            width: singleListBoxWidth,\r\n            height: 48,\r\n\r\n            '& .dlb-filter-alignPlaceholder': {\r\n              width: '100%',\r\n              '& .searchbox-input': {\r\n                width: singleListBoxWidth,\r\n                height: 48,\r\n                paddingLeft: '48px !important',\r\n                border: `1px solid ${palette.neutralTertiary}`,\r\n              },\r\n\r\n              '& .form-control-feedback': {\r\n                position: 'absolute',\r\n                left: 0,\r\n                height: 48,\r\n                width: 16,\r\n                lineHeight: '48px',\r\n                marginTop: '-3px',\r\n                pointerEvents: 'auto',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .audience-association-selector-item-table.ineligible-ima': {\r\n          color: '#605E5C',\r\n        },\r\n\r\n        '& .layout-columns-element:nth-child(3)': {\r\n          '& .panel-heading': {\r\n            marginTop: '0 !important',\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element': {\r\n          width: singleListBoxWidth,\r\n          paddingRight: 10,\r\n          boxSizing: 'content-box',\r\n\r\n          '& .panel-form': {\r\n            padding: 1,\r\n            '& .panel-heading': {\r\n              backgroundColor: `${palette.white} !important`,\r\n              border: 0,\r\n              padding: '0 8px !important',\r\n              marginTop: '48px !important',\r\n              height: 36,\r\n            },\r\n\r\n            '& .panel-body': {\r\n              '& .dlb-source-container, & .dlb-selected-container': {\r\n                '& .dlb-selected-header, .dlb-source-header': {\r\n                  width: `${headeWidth}%`,\r\n                },\r\n                '& .audience-association-selector-header': {\r\n                  border: '0 !important',\r\n                  padding: '0 !important',\r\n                  height: 36,\r\n                  lineHeight: '36px !important',\r\n                },\r\n\r\n                '& .dlb-selectAll, .dlb-deselectAll': {\r\n                  position: 'absolute',\r\n                  zIndex: 1,\r\n                  right: 8,\r\n                  width: `calc(${100 - headeWidth}% - ${paddingOfAll}px)`,\r\n                  textAlign: 'right',\r\n\r\n                  '& span': {\r\n                    color: palette.themePrimary,\r\n                    whiteSpace: 'nowrap',\r\n                    textOverflow: 'ellipsis',\r\n                    overflow: 'hidden',\r\n                    display: 'inline-block',\r\n                    width: '100%',\r\n                  },\r\n\r\n                  '& .arrow-button': {\r\n                    display: 'none',\r\n                  },\r\n                },\r\n\r\n                '& .dlb-selectAll': {\r\n                  top: 48,\r\n                },\r\n\r\n                '& .dlb-deselectAll': {\r\n                  top: 40,\r\n                },\r\n\r\n                '& .dlb-source-header, & .dlb-selected-header, & .k-loading-mask': {\r\n                  padding: `0 ${paddingOfAll}px`,\r\n                },\r\n\r\n                '& .dlb-source-list, & .dlb-selected-list': {\r\n                  height: '200px !important',\r\n\r\n                  '& .dlbItem': {\r\n                    minHeight: 28,\r\n                    position: 'relative',\r\n                    padding: [5, 8],\r\n                    margin: 0,\r\n\r\n                    '& .audience-association-selector-item-name-text, & .tree-item, & .audience-association-selector-item-col': {\r\n                      display: 'flex',\r\n                    },\r\n\r\n                    '& .audience-association-selector-item-col': {\r\n                      float: 'left',\r\n                    },\r\n\r\n                    '& .audience-association-selector-item-listitem-col, .audience-association-selector-item-listitem-col-bulk': {\r\n                      flexDirection: 'row-reverse',\r\n                      alignItems: 'center',\r\n                    },\r\n\r\n                    '& .glyphicon-triangle-right, & .glyphicon-triangle-bottom': {\r\n                      marginRight: 5,\r\n                      marginTop: 3,\r\n                    },\r\n\r\n                    '& .dlbItem-actions, & .remove': {\r\n                      position: 'absolute',\r\n                      right: 8,\r\n                      top: 4,\r\n                    },\r\n\r\n                    '& .dlbItem-content': {\r\n                      minHeight: 28,\r\n                      padding: '4px 0',\r\n                      display: 'inline',\r\n\r\n                      '& table': {\r\n                        width: `${headeWidth}%`,\r\n\r\n                        '& .audience-association-selector-item-col': {\r\n                          textAlign: 'left',\r\n                          width: '50%',\r\n                        },\r\n                        '& .audience-association-selector-item-col.audience-association-selector-item-listitem-col': {\r\n                          textAlign: 'right',\r\n                          width: '50%',\r\n                          height: '100%',\r\n                        },\r\n                        '& .audience-association-selector-item-col.audience-association-selector-item-listitem-col-bulk': {\r\n                          textAlign: 'right',\r\n                          width: 'calc(100% / 3)',\r\n                        },\r\n                        '& .tree-indent': {\r\n                          paddingLeft: 10,\r\n                        },\r\n                      },\r\n\r\n                      '& span': {\r\n                        wordBreak: 'break-word',\r\n                        overflowWrap: 'break-word',\r\n                      },\r\n\r\n                      '& .audience-association-selector-item-listsize-text': {\r\n                        '& .tree-listsize': {\r\n                          display: 'inline-block',\r\n                        },\r\n                        '& .audience-association-internalization': {\r\n                          display: 'inline-block',\r\n                          width: 12,\r\n                          height: 12,\r\n                          marginLeft: 12,\r\n                        },\r\n                      },\r\n                    },\r\n                  },\r\n\r\n                  '& .disabled': {\r\n                    '& .arrow-button:before': {\r\n                      content: '\"\"',\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .dlb-source-list.dlb-source .selectable-treeview .dlbItem': {\r\n                  padding: 0,\r\n                  margin: 0,\r\n\r\n                  '& .dlbItem-actions': {\r\n                    top: 0,\r\n\r\n                    '&>a.tree-action': {\r\n                      position: 'relative',\r\n                      top: 7,\r\n                    },\r\n                  },\r\n\r\n                  '& .dlbItem-content': {\r\n                    padding: 0,\r\n\r\n                    '& .audience-association-selector-item-table': {\r\n                      // width: '100%',\r\n\r\n                      '& .tree-item': {\r\n                        padding: [5, 8],\r\n\r\n                        '&>td': {\r\n                          // width: '35%',\r\n\r\n                          '& .tree-text': {\r\n                            marginTop: 2,\r\n                          },\r\n                        },\r\n                      },\r\n                    },\r\n                  },\r\n                },\r\n                '& .dlb-selected-list': {\r\n                  height: '284px !important',\r\n                },\r\n\r\n                '& .dlb-emptyMessage': {\r\n                  padding: '0 8px',\r\n                  height: 36,\r\n                  lineHeight: '36px',\r\n                  marginBottom: 0,\r\n\r\n                  '& p': {\r\n                    marginBottom: 0,\r\n                  },\r\n                },\r\n\r\n                '& .dlb-emptyMessage[style=\"display: none;\"] + .dlb-source-list': {\r\n                  height: '236px !important',\r\n                },\r\n\r\n                '& .empty-message-action': {\r\n                  marginBottom: 0,\r\n                },\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .dlb-pager-container': {\r\n            width: 'auto',\r\n            float: 'right',\r\n            marginTop: 8,\r\n\r\n            '& .pager': {\r\n              height: 'auto',\r\n            },\r\n          },\r\n        },\r\n        '& .dlb-internalzation-popover.representation': {\r\n          '& .popover-title-content__title-text': {\r\n            fontWeight: 'bold',\r\n          },\r\n        },\r\n\r\n        '& .dlb-internalzation-popover': {\r\n          zIndex: 2,\r\n\r\n          '& .popover-view': {\r\n            background: '#ffffff',\r\n            border: 'solid 1px #BBB',\r\n            padding: 15,\r\n            width: 262,\r\n\r\n            '& .popover-view__dismiss': {\r\n              width: 10,\r\n              height: 10,\r\n            },\r\n\r\n            '& .popover-titled-content__title': {\r\n              marginBottom: 8,\r\n            },\r\n\r\n            '& .popover-view__content': {\r\n              paddingTop: 9,\r\n              paddingBottom: 9,\r\n              fontSize: 12,\r\n              '& .market-lists': {\r\n                wordBreak: 'break-word',\r\n              },\r\n              '& .table-bordered': {\r\n                margin: 0,\r\n\r\n                '& thead>tr>td': {\r\n                  'border-bottom-width': 1,\r\n                },\r\n\r\n                '& thead>tr>td:nth-child(1)': {\r\n                  borderLeft: 0,\r\n                },\r\n\r\n                '& thead>tr>td:nth-child(2)': {\r\n                  borderRight: 0,\r\n                },\r\n\r\n                '& thead>tr>th:nth-child(2)': {\r\n                  textAlign: 'right',\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n        '& .pager-container': {\r\n          '& select': {\r\n            '-webkit-appearance': 'none !important',\r\n            background: 'url(\"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMiAxMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiM0ODQ2NDQ7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5BcnRib2FyZCAxPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS4zNyw0bC41Mi41M0w2LDEwLjQ1LjEyLDQuNTYuNjQsNCw2LDkuNFoiLz48L3N2Zz4=\") no-repeat right 8px top 8px transparent !important',\r\n            backgroundSize: '14px !important',\r\n            '&.disabled,&[disabled]': {\r\n              background: `url(\"data:image/svg+xml;base64,PHN2ZyBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEyIDEyIj48cGF0aCBkPSJNMTEuMzcgNGwuNTIuNTNMNiAxMC40NS4xMiA0LjU2LjY0IDQgNiA5LjR6IiBmaWxsPSIjYTZhNmE2Ii8+PC9zdmc+\") no-repeat right 8px top 8px ${palette.neutralLighter} !important`,\r\n              backgroundSize: '14px !important',\r\n            },\r\n          },\r\n        },\r\n        '& .audience-association-internalization-info': {\r\n          borderBottom: '1px dashed #0078D4',\r\n          width: 'fit-content',\r\n          cursor: 'pointer',\r\n          display: 'inline',\r\n        },\r\n      },\r\n\r\n      '& #InMarket.associationDoubleListBoxControl, & #InMarket.exclusionDoubleListBoxControl': {\r\n        '& .audience-association-selector-item-name-text': {\r\n          '& span': {\r\n            overflowWrap: 'break-word',\r\n          },\r\n        },\r\n\r\n        '& .glyphicon-triangle-bottom': {\r\n          fontFamily: iconFontFamily,\r\n          fontSize: 12,\r\n        },\r\n\r\n        '& .glyphicon-triangle-bottom:before': {\r\n          content: '\"\\\\E70D\"',\r\n        },\r\n\r\n        '& .glyphicon-triangle-right': {\r\n          fontFamily: iconFontFamily,\r\n          fontSize: 12,\r\n        },\r\n\r\n        '& .glyphicon-triangle-right:before': {\r\n          content: '\"\\\\E76C\"',\r\n        },\r\n      },\r\n\r\n      '& #Product .empty-message-action a': {\r\n        verticalAlign: 'bottom',\r\n      },\r\n    },\r\n\r\n    '& .type-bold': {\r\n      marginTop: 8.5,\r\n      marginBottom: 10,\r\n      fontSize: 16,\r\n    },\r\n\r\n    '& hr': {\r\n      marginTop: 0,\r\n      marginBottom: 17,\r\n      border: 0,\r\n      borderTop: [1, 'solid', '#A2A2A2'],\r\n    },\r\n\r\n    '& p': {\r\n      marginBottom: 8.5,\r\n    },\r\n\r\n    '& .col-sm-12': {\r\n      padding: 0,\r\n\r\n      '& .form-control': {\r\n        width: 205,\r\n      },\r\n\r\n      '& .form-group': {\r\n        marginBottom: 10,\r\n      },\r\n\r\n      '& .layout-columns-container': {\r\n        '& .dlb-filter-alignPlaceholder': {\r\n          padding: 0,\r\n          '& .has-feedback': {\r\n            '& .searchbox-searchbutton': {\r\n              fontSize: 16,\r\n              outline: 'none',\r\n              height: 48,\r\n              width: 48,\r\n              padding: 14,\r\n            },\r\n            '& .searchbox-searchbutton:focus': {\r\n              border: `1px solid ${palette.neutralSecondary}`,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element': {\r\n          paddingLeft: 0,\r\n\r\n          '& .panel-form': {\r\n            border: [1, 'solid', '#BBB'],\r\n\r\n            '& .panel-heading': {\r\n              backgroundColor: '#E5E5E5',\r\n              padding: [0, 15],\r\n\r\n              '& .panel-title': {\r\n                marginTop: 0,\r\n                fontSize: 16,\r\n                lineHeight: '30px',\r\n              },\r\n            },\r\n\r\n            '& .panel-body': {\r\n              padding: 0,\r\n              '& .dlb-source-container, .dlb-selected-container': {\r\n                padding: 0,\r\n                '& .dlb-source-header, .dlb-selected-header': {\r\n                  height: 36,\r\n                  '& .audience-association-selector-header': {\r\n                    padding: [5, 17, 5, 10],\r\n                    borderTop: [1, 'solid', '#BBB'],\r\n                    borderBottom: [1, 'solid', '#BBB'],\r\n                    lineHeight: '20px',\r\n\r\n                    '& .audience-association-selector-header-table': {\r\n                      width: '100%',\r\n\r\n                      '& .audience-association-selector-header-col': {\r\n                        fontWeight: 600,\r\n                      },\r\n                      '& .audience-association-selector-header-col.audience-association-selector-header-listsize-col': {\r\n                        width: '50%',\r\n                      },\r\n\r\n                      '& .audience-association-selector-header-col.audience-association-selector-header-listsize-col-bulk': {\r\n                        width: 'calc(100% / 3)',\r\n                      },\r\n\r\n                      '& .audience-association-selector-header-col.audience-association-selector-header-name-col': {\r\n                        '& .appListItem-text': {\r\n                          '& span': {\r\n                            display: 'inline-block',\r\n                            verticalAlign: 'middle',\r\n                            whiteSpace: 'nowrap',\r\n                            textOverflow: 'ellipsis',\r\n                            overflow: 'hidden',\r\n                          },\r\n                        },\r\n                      },\r\n\r\n                      '& .audience-association-selector-header-listsize-col, .audience-association-selector-header-listsize-col-bulk': {\r\n                        textAlign: 'right',\r\n\r\n                        '& .appListItem-text': {\r\n                          display: 'flex',\r\n                          justifyContent: 'flex-end',\r\n                          float: 'right',\r\n\r\n                          '& span': {\r\n                            display: 'inline-block',\r\n                            verticalAlign: 'middle',\r\n                            whiteSpace: 'nowrap',\r\n                            textOverflow: 'ellipsis',\r\n                            overflow: 'hidden',\r\n                          },\r\n                        },\r\n                      },\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .dlb-selectAll': {\r\n                  padding: [5, 10],\r\n                  color: '#1470A5',\r\n\r\n                  '& .arrow-button': {\r\n                    fontFamily: iconFontFamily,\r\n                    fontSize: '12px',\r\n                    marginLeft: '12px',\r\n                  },\r\n                  '& .arrow-button:before': {\r\n                    content: '\"\\\\EDBF\"',\r\n                  },\r\n                },\r\n\r\n                '& .dlb-deselectAll': {\r\n                  padding: [5, 10],\r\n                  color: '#1470A5',\r\n\r\n                  '& .arrow-button': {\r\n                    fontFamily: iconFontFamily,\r\n                    fontSize: '12px',\r\n                    marginRight: '12px',\r\n                  },\r\n                  '& .arrow-button:before': {\r\n                    content: '\"\\\\EDBE\"',\r\n                  },\r\n                },\r\n\r\n                '& .dlb-source-list, .dlb-selected-list': {\r\n                  height: '295px',\r\n                  overflowY: 'scroll',\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .dmp:nth-child(3)': {\r\n        '& .dlb-source-list': {\r\n          height: '248px',\r\n        },\r\n      },\r\n    },\r\n  },\r\n  '& .audience__association .association__body .association-section .radio > div > span': {\r\n    marginLeft: 28,\r\n  },\r\n  '& .audience-modal.modal.in': {\r\n    zIndex: 1070,\r\n  },\r\n});\r\n","import { audienceAssociationSectionStyle } from './audience-association-section-style';\r\nimport { convertToLocalStyle } from './utils/convert-style';\r\nimport { commonDoubleListBoxStyle } from './double-list-box-style';\r\nimport { glyphIconStyle } from './glyph-icon-style';\r\nimport { helpbuttonStyle, searchboxStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const audienceBulkAssociationStyle = ({ palette }) => ({\r\n  ...audienceAssociationSectionStyle({ palette }),\r\n  '& .association__body, .exclusion__body': {\r\n    ...searchboxStyle({ palette }),\r\n    ...convertToLocalStyle(glyphIconStyle({ palette })),\r\n    ...convertToLocalStyle(helpbuttonStyle({ palette })),\r\n    ...commonDoubleListBoxStyle({ palette }),\r\n\r\n    '& .DMP_doublelistbox_section .doubleListBox.layout-columns .layout-columns-container .layout-columns-element': {\r\n      '& .dlb-source-container .dlb-source.dlb-source-list, .dlb-selected-container .dlb-selected.dlb-selected-list': {\r\n        '& .dlbItem .dlbItem-content .audience-association-selector-item-table .audience-association-selector-item-col.audience-association-selector-item-name-col': {\r\n          width: 'calc(100% / 3)',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .row': {\r\n      marginLeft: 0,\r\n      marginRight: 0,\r\n    },\r\n  },\r\n});\r\n","import { floatButtonStyle, underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\nimport { uurlTestToolStyle } from './uurl-test-tool-style';\r\nimport { selectElementStyle } from './select-element-style';\r\nimport { imageExperienceContentStyle } from './image-experience-content-style';\r\nimport { modalContainerStyle } from './modal-container-style';\r\nimport { editImageCommonStyle } from './edit-image-common-style';\r\nimport { reactUIBlockerStyle } from './react-ui-blocker-style';\r\n\r\n// this style is in right a panel, out of the feature scope, so use as the global pattern\r\nexport const extensionEditorStyles = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.extension-editor__container, .image-ad-extension-v2-edit': {\r\n    '& .error': {\r\n      color: '#D90026',\r\n      fontSize: 12,\r\n    },\r\n    '& .form-horizontal .form-group': {\r\n      marginLeft: 0,\r\n      marginRight: 0,\r\n    },\r\n    '& .form-horizontal': {\r\n      '& .control-label': {\r\n        textAlign: 'left',\r\n        float: 'none',\r\n        width: '100%',\r\n      },\r\n      '& .control-value': {\r\n        float: 'none',\r\n        '& .form-input-container[data-property=\"IsCallTrackingEnabled\"]': {\r\n          '& .radio label': {\r\n            ...underlineLinkStyle({ palette }),\r\n          },\r\n        },\r\n      },\r\n      '& .selectorControl': {\r\n        marginTop: 10,\r\n        minWidth: 1000,\r\n      },\r\n      '& .form-label-container': {\r\n        float: 'none',\r\n      },\r\n      '& .k-picker-wrap.k-state-default .k-select .k-icon.k-i-calendar': {\r\n        display: 'none',\r\n      },\r\n    },\r\n    '& .url-protocol': {\r\n      width: 'auto',\r\n      marginRight: 10,\r\n      float: 'left',\r\n    },\r\n    '& .url-field': {\r\n      width: '50%',\r\n    },\r\n    '& .input-group .form-control': {\r\n      marginBottom: 10,\r\n    },\r\n    '& .form-group ~ .form-group': {\r\n      marginTop: 16,\r\n    },\r\n\r\n    '& .input-group .input-group-addon': {\r\n      backgroundColor: 'transparent',\r\n      borderWidth: 0,\r\n      position: 'absolute',\r\n      top: 0,\r\n      right: '15px',\r\n      height: '100%',\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      justifyContent: 'center',\r\n      color: 'gray',\r\n    },\r\n\r\n    '& .form-groups-with-sidebar': {\r\n      '&  .sidebar': {\r\n        position: 'absolute',\r\n        top: 150,\r\n        left: 400,\r\n        right: 10,\r\n        height: '10%',\r\n      },\r\n\r\n      '& .sidebar__right-bracket': {\r\n        float: 'left',\r\n        height: '100%',\r\n        width: 10,\r\n        margin: '5px 30px',\r\n        borderWidth: '1px 1px 1px 0',\r\n        borderStyle: 'solid',\r\n        borderColor: 'darkgray',\r\n      },\r\n\r\n      '& .sidebar__content': {\r\n        float: 'left',\r\n        height: '100%',\r\n      },\r\n\r\n      '& .sidebar__content_aggregate-length': {\r\n        display: 'flex',\r\n        flexDirection: 'column',\r\n        justifyContent: 'center',\r\n      },\r\n    },\r\n\r\n    '& .alert': {\r\n      width: 625,\r\n      display: 'block',\r\n    },\r\n    '& .alert-image': {\r\n      float: 'left',\r\n      marginTop: 5,\r\n    },\r\n    '& .alert-info-inline': {\r\n      marginBottom: 10,\r\n    },\r\n\r\n    '& .url': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .mobile-url': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .upgraded-url-options-preview__label': {\r\n      marginLeft: 10,\r\n    },\r\n    '& .upgraded-url-options-preview__value': {\r\n      marginLeft: 10,\r\n      width: 500,\r\n      wordWrap: 'break-word',\r\n    },\r\n\r\n    '& .dayTimeRange': {\r\n      '& select.form-control': {\r\n        width: 'auto',\r\n        marginBottom: 5,\r\n      },\r\n      '& select.form-control.hour-select': {\r\n        marginLeft: 5,\r\n        marginRight: 5,\r\n      },\r\n      '& select.form-control.minute-select': {\r\n        marginLeft: 5,\r\n        marginRight: 5,\r\n      },\r\n      '& .filtercloseimage': {\r\n        fontFamily: iconFontFamily,\r\n        color: palette.neutralSecondary,\r\n        cursor: 'pointer',\r\n        right: -8,\r\n        top: 0,\r\n        paddingTop: 0,\r\n        position: 'relative',\r\n      },\r\n      '& .filtercloseimage:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n\r\n    '& .tracking-template__container': {\r\n      width: 500,\r\n    },\r\n\r\n    '& .font-error': {\r\n      color: '#D90026',\r\n      fontSize: 12,\r\n    },\r\n\r\n    '& #LandingPageUrlErrors': {\r\n      '& .col-sm-offset-4': {\r\n        marginLeft: 15,\r\n      },\r\n    },\r\n\r\n    '& .expandedImage, & .expanderImage': {\r\n      display: 'inline-block',\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 14,\r\n      fontStyle: 'normal',\r\n      fontWeight: 'normal',\r\n      lineHeight: '1',\r\n      marginLeft: 10,\r\n      marginRight: 4,\r\n    },\r\n\r\n    '& .expanderImage': {\r\n      verticalAlign: 'top',\r\n      '&:before': {\r\n        lineHeight: '1.7',\r\n        content: '\"\\\\E96E\"',\r\n      },\r\n    },\r\n    '& .expandedImage:before': {\r\n      content: '\"\\\\E96D\"',\r\n    },\r\n\r\n    '& .string-list-input .side-close-image': {\r\n      position: 'relative',\r\n      top: -35,\r\n      left: 185,\r\n    },\r\n\r\n    '& .closeimage': {\r\n      fontFamily: iconFontFamily,\r\n      color: palette.neutralSecondary,\r\n      cursor: 'pointer',\r\n      top: 0,\r\n      right: -8,\r\n      paddingTop: 0,\r\n      position: 'relative',\r\n    },\r\n    '& .closeimage:before': {\r\n      content: '\"\\\\E711\"',\r\n    },\r\n\r\n    '& .custom-params-template': {\r\n      '& .custom-param-entry': {\r\n        '& .custom-param__key-container': {\r\n          display: 'inline-block',\r\n          marginBottom: 10,\r\n\r\n          '& .control-label': {\r\n            display: 'inline',\r\n            marginLeft: 5,\r\n            marginRight: 5,\r\n          },\r\n          '& .custom-param__key-field': {\r\n            display: 'inline',\r\n            width: 85,\r\n          },\r\n        },\r\n        '& .custom-param__value-field': {\r\n          width: 150,\r\n          display: 'inline',\r\n        },\r\n      },\r\n    },\r\n\r\n    ...uurlTestToolStyle({ palette, iconFontFamily }),\r\n  },\r\n\r\n  '.extension-editor__extra': {\r\n    '& .fieldItemAd': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .fieldRowAd .col-sm-offset-4': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .advanced-options .col-sm-offset-4.col-sm-8': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .url-options .col-sm-offset-4.col-sm-8': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .advanced-options .col-sm-8.form-control-static': {\r\n      marginLeft: 10,\r\n    },\r\n    '& .url-options .col-sm-8.form-control-static': {\r\n      marginLeft: 10,\r\n    },\r\n    '& .advanced-options .col-sm-8.uurl-test-tool__container': {\r\n      marginLeft: 15,\r\n    },\r\n  },\r\n\r\n\r\n  '[data-type=\"AppAdExtension\"]': {\r\n    '& [data-property=\"DestinationUrl\"]': {\r\n      '& .form-label-container': {\r\n        width: 300,\r\n      },\r\n    },\r\n  },\r\n  '[data-type=\"ReviewAdExtension\"]': {\r\n    '& [data-property=\"Url\"]': {\r\n      '& .form-input-container': {\r\n        width: 400,\r\n      },\r\n      '& .url-field': {\r\n        width: 275,\r\n      },\r\n    },\r\n  },\r\n  '[data-type=\"CallAdExtension\"]': {\r\n    '& input[type=radio]': {\r\n      float: 'left',\r\n    },\r\n  },\r\n  '[data-type=\"StructuredSnippetAdExtension\"]': {\r\n    '& button.btn-link.add-row': {\r\n      color: '#0078d4',\r\n    },\r\n  },\r\n  // this style is shared between Action and Dynamic Data ad extensions\r\n  '.actionextension-search-dropdown-container': {\r\n    '& .dropdown-search-selector__options': {\r\n      overflowY: 'auto',\r\n      maxHeight: 200,\r\n    },\r\n    '& .dropdown-search-selector__dropdown': {\r\n      marginLeft: 15,\r\n\r\n      '& .dropdown-toggle': {\r\n        ...selectElementStyle({ palette, includeSelector: false }),\r\n\r\n        '& .text-left': {\r\n          width: 'unset',\r\n          padding: 'unset',\r\n        },\r\n\r\n        '& .glyphicon-chevron-down': {\r\n          display: 'none',\r\n        },\r\n      },\r\n    },\r\n    '& .open > .dropdown-toggle:focus, & .open > .dropdown-toggle:hover': {\r\n      backgroundColor: 'unset',\r\n    },\r\n    '& .dropdown-menu': {\r\n      marginLeft: 15,\r\n      minWidth: 200,\r\n      '& .dropdown-search-selector__search': {\r\n        '& #srch-term': {\r\n          height: 32,\r\n          border: 'none',\r\n          padding: 5,\r\n        },\r\n\r\n        '& .dropdown-search-selector__search--submit': {\r\n          border: 0,\r\n          padding: 0,\r\n          width: 16,\r\n          minWidth: 'unset',\r\n          height: 16,\r\n          marginTop: 6,\r\n          marginLeft: 8,\r\n          marginRight: 2,\r\n          fontSize: '14px',\r\n          fontWeight: 200,\r\n          float: 'left',\r\n        },\r\n      },\r\n      '& .dropdown-search-selector__option': {\r\n        width: 'unset',\r\n        float: 'unset',\r\n        padding: 'unset',\r\n\r\n        '& > a': {\r\n          display: 'block',\r\n          padding: '7px 10px',\r\n          color: '#323130',\r\n\r\n          '&:focus': {\r\n            textDecoration: 'none',\r\n          },\r\n\r\n          '&:hover': {\r\n            backgroundColor: palette.neutralLighter,\r\n          },\r\n        },\r\n\r\n        '& > a:focus:after': {\r\n          content: '\"\"',\r\n          position: 'absolute',\r\n          bottom: 1,\r\n          left: 1,\r\n          right: 1,\r\n          top: 1,\r\n          outline: '1px solid #605e5c',\r\n        },\r\n\r\n        '&.dropdown-search-selector__option--selected > a': {\r\n          backgroundColor: palette.neutralLight,\r\n        },\r\n      },\r\n    },\r\n    '& .empty-result-message': {\r\n      margin: '5px',\r\n    },\r\n  },\r\n\r\n  '.cx-select .structured-snippet-category-layer-1': {\r\n    marginRight: '10px',\r\n    width: '25%',\r\n    float: 'left',\r\n  },\r\n  '.cx-select .structured-snippet-category-layer-2': {\r\n    width: '70%',\r\n    float: 'right',\r\n  },\r\n\r\n  '.price-extension-table-rows': {\r\n    '& .table-row-header label': {\r\n      display: 'inline',\r\n    },\r\n    '& .input-group': {\r\n      width: 170,\r\n    },\r\n    '& input[title=\"Price\"]': {\r\n      width: 170,\r\n    },\r\n  },\r\n  '.PriceTableRow-property-Header-container': {\r\n    '& .text-form-hint-inline': {\r\n      marginLeft: 20,\r\n      marginTop: 25,\r\n    },\r\n  },\r\n  '.PriceTableRow-property-Description-container': {\r\n    '& .text-form-hint-inline': {\r\n      marginRight: 35,\r\n      marginLeft: 35,\r\n      marginTop: 9,\r\n    },\r\n  },\r\n  '.PriceTableRow-property-PriceQualifier-container': {\r\n    marginRight: 35,\r\n  },\r\n  '.PriceTableRow-property-CurrencyCode-container': {\r\n    marginRight: 35,\r\n  },\r\n  '.PriceTableRow-property-Price-container': {\r\n    marginRight: 35,\r\n  },\r\n  '.PriceTableRow-property-PriceUnit-container': {\r\n    marginRight: 35,\r\n  },\r\n  '.PriceTableRow-property-FinalUrls-container': {\r\n    marginRight: 35,\r\n  },\r\n  '[data-type=\"PriceAdExtension\"]': {\r\n    width: '1250px !important',\r\n\r\n    '& .table-row-header': {\r\n      width: 1300,\r\n    },\r\n    '& .extension-editor__form-container': {\r\n      width: '1250px !important',\r\n      marginLeft: 10,\r\n    },\r\n    '& .object-list-item': {\r\n      minWidth: 1450,\r\n    },\r\n    '& .control-value.col-sm-10': {\r\n      width: '100%',\r\n    },\r\n    '& .alert': {\r\n      width: '100%',\r\n    },\r\n    '& .object-action': {\r\n      marginLeft: 20,\r\n      marginTop: 30,\r\n    },\r\n    '& .form-group.scheduling-form': {\r\n      '& .control-label.col-sm-2': {\r\n        paddingLeft: 0,\r\n      },\r\n    },\r\n    '& .form-horizontal .form-group': {\r\n      marginLeft: -15,\r\n    },\r\n  },\r\n  '[data-type=\"FilterLinkExtension\"]': {\r\n    '& .alert': {\r\n      width: '100%',\r\n    },\r\n  },\r\n  '[data-type=\"PromotionExtension\"]': {\r\n    '& .alert': {\r\n      width: '100%',\r\n    },\r\n  },\r\n  '[data-type=\"FlyerExtension\"]': {\r\n    '& .alert': {\r\n      width: '100%',\r\n    },\r\n  },\r\n  '[data-type=\"VideoExtension\"]': {\r\n    '& .alert': {\r\n      width: '100%',\r\n    },\r\n  },\r\n  '.PriceTableRow-property-Description-group': {\r\n    marginLeft: 110,\r\n  },\r\n  '.PriceTableRow-property-PriceQualifier-group': {\r\n    marginLeft: 100,\r\n  },\r\n  '.PriceTableRow-property-CurrencyCode-group': {\r\n    marginLeft: 20,\r\n  },\r\n  '.PriceTableRow-property-Price-group': {\r\n    marginLeft: 40,\r\n  },\r\n  '.PriceTableRow-property-PriceUnit-group': {\r\n    marginLeft: 160,\r\n  },\r\n  '.PriceTableRow-property-FinalUrls-group': {\r\n    marginLeft: 80,\r\n  },\r\n  '.PriceTableRow-property-FinalMobileUrls-group': {\r\n    marginLeft: 100,\r\n  },\r\n\r\n  '[data-type=\"ActionAdExtension\"]': {\r\n    '& .form-group.scheduling-form': {\r\n      '& .control-label.col-sm-4': {\r\n        paddingLeft: 0,\r\n      },\r\n    },\r\n\r\n    '& button.row.btn.btn-default.dropdown-toggle': {\r\n      minWidth: 200,\r\n    },\r\n\r\n    '& button.btn.btn-default.dropdown-search-selector__search--submit.filter_search_icon_small': {\r\n      borderLeft: 'none',\r\n      borderTop: 'none',\r\n      borderRight: 'none',\r\n    },\r\n\r\n    '& ul': {\r\n      listStyle: 'none',\r\n      paddingLeft: 0,\r\n    },\r\n  },\r\n\r\n  '.automated-extensions__options-container': {\r\n    '& input[type=checkbox]': {\r\n      float: 'left',\r\n    },\r\n    '& input[type=radio]': {\r\n      float: 'left',\r\n    },\r\n    '& .label__text': {\r\n      marginLeft: 10,\r\n    },\r\n    '& .justification__input': {\r\n      marginBottom: 20,\r\n    },\r\n    '& .opt-out__checkboxes label': {\r\n      marginLeft: 10,\r\n      paddingLeft: 20,\r\n    },\r\n    '& .form-horizontal .form-label-container': {\r\n      paddingLeft: 0,\r\n    },\r\n    '& .radio label': {\r\n      paddingLeft: 5,\r\n      color: palette.neutralPrimary,\r\n    },\r\n    '& .control-label span': {\r\n      color: palette.neutralPrimary,\r\n    },\r\n    '& .radio .label__text': {\r\n      marginLeft: 0,\r\n    },\r\n    '& li.opt-out__checkbox input': {\r\n      marginRight: 5,\r\n    },\r\n    '& .automated-extensions__options panel': {\r\n      '& .panel-heading': {\r\n        marginBottom: 10,\r\n      },\r\n    },\r\n    '& .label__sub-text': {\r\n      color: '#605e5c',\r\n      fontWeight: 'normal',\r\n    },\r\n  },\r\n\r\n  '.img-editor-list-group': {\r\n    border: '1px solid #BBBBBB',\r\n    background: '#FFFFFF',\r\n    width: '100%',\r\n    height: 295,\r\n    padding: 11.5,\r\n  },\r\n\r\n  '.img-editor-selected-list': {\r\n    border: '1px solid #BBBBBB',\r\n    background: '#FFFFFF',\r\n    height: 150,\r\n    padding: 15,\r\n    display: 'inline-block',\r\n\r\n    '& .selected-img-description': {\r\n      textAlign: 'center',\r\n      height: 10,\r\n      marginTop: 10,\r\n      fontWeight: 'bold',\r\n    },\r\n  },\r\n\r\n  '.img-editor': {\r\n    '& .imgEditor-form .col-sm-4': {\r\n      marginLeft: 0,\r\n    },\r\n    '& ul[role=radiogroup]': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .ui-tabs-selected .btn': {\r\n      backgroundColor: '#E7F0F6;',\r\n    },\r\n    '& .img-editor-selected-img': {\r\n      position: 'relative',\r\n      width: '100px',\r\n      height: '100%',\r\n      marginLeft: 10,\r\n      marginRight: 10,\r\n      backgroundColor: '#F2F2F2',\r\n      '& img': {\r\n        backgroundColor: '#F2F2F2',\r\n        width: '100px',\r\n        height: '100px',\r\n      },\r\n      '& .image-selected & img': {\r\n        border: 'none',\r\n        backgroundColor: '#FFFFFF',\r\n      },\r\n      '&.image-selected &:hover': {\r\n        opacity: 0.5,\r\n      },\r\n    },\r\n    '& .selected-img-delete-icon': {\r\n      fontFamily: iconFontFamily,\r\n      height: 12,\r\n      width: 12,\r\n      position: 'absolute',\r\n      top: 1,\r\n      right: 1,\r\n      '.image-selected .img-editor-selected-img:hover &': {\r\n        display: 'block',\r\n      },\r\n      '&:hover': {\r\n        cursor: 'pointer',\r\n        backgroundColor: '#DDEEFF',\r\n      },\r\n      '&:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n    '& .img-editor-ratio-list': {\r\n      width: '100%',\r\n      float: 'left',\r\n      display: 'none',\r\n    },\r\n    '& .img-editor-ratio-list.ratio12x10': {\r\n      display: 'block',\r\n    },\r\n    '& .img-editor-selected-listitem': {\r\n      float: 'left',\r\n    },\r\n    '& .image-preview': {\r\n      maxWidth: '50%',\r\n      maxHeight: '25%',\r\n    },\r\n    '& .imgEditor-listitem': {\r\n      display: 'inline-block',\r\n      position: 'relative',\r\n      '.img-editor-ratio-list &': {\r\n        margin: 4.5,\r\n      },\r\n      '.img-editor-ratio-list & img': {\r\n        width: '100%',\r\n        height: '100%',\r\n      },\r\n      '.ratio12x10 &': {\r\n        width: 100,\r\n        height: 83,\r\n      },\r\n      '.ratio4x3 &': {\r\n        width: 100,\r\n        height: 75,\r\n      },\r\n      '.ratio3x2 &': {\r\n        width: 100,\r\n        height: 67,\r\n      },\r\n      '.ratio16x9 &': {\r\n        width: 100,\r\n        height: 56,\r\n      },\r\n      '.img-preview': {\r\n        width: 160,\r\n        height: 90,\r\n      },\r\n    },\r\n    '& .imgEditor-listitem img': {\r\n      cursor: 'pointer',\r\n      border: '3px white solid',\r\n      '&:hover': {\r\n        border: '3px #1570A6 solid',\r\n      },\r\n    },\r\n    '& .imgEditor-listitem-delete': {\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 12,\r\n      fontWeight: 'normal',\r\n      lineHeight: 1,\r\n      right: 10,\r\n      top: 10,\r\n      position: 'absolute',\r\n      '&:hover': {\r\n        cursor: 'pointer',\r\n        backgroundColor: '#DDEEFF',\r\n      },\r\n      '&:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n    '& .crop-item': {\r\n      float: 'left',\r\n      marginRight: 20,\r\n    },\r\n    '& .radio input[type=\"radio\"]': {\r\n      float: 'left',\r\n    },\r\n    '& .radio label': {\r\n      display: 'inline',\r\n    },\r\n    '& .btn-group li': {\r\n      float: 'left',\r\n    },\r\n    '& .col-sm-offset-2': {\r\n      marginLeft: 0,\r\n    },\r\n    '& .col-sm-4': {\r\n      marginLeft: 20,\r\n    },\r\n    '& .form-group .col-sm-10': {\r\n      width: 700,\r\n      float: 'none',\r\n    },\r\n  },\r\n\r\n  '.imgEditor-container-edit-ps4n': {\r\n    marginLeft: 20,\r\n    '& .media-object': {\r\n      float: 'left',\r\n      marginRight: 10,\r\n    },\r\n  },\r\n\r\n  '.imgEditor-crop': {\r\n    height: 212,\r\n  },\r\n\r\n  '.img-editor-crop': {\r\n    border: '1px solid #FFFFFF',\r\n    padding: 5,\r\n    display: 'inline-block',\r\n    background: '#FFFFFF',\r\n    minWidth: 800,\r\n  },\r\n\r\n  '.crop-item': {\r\n    display: 'inline-block',\r\n    margin: 10,\r\n\r\n    '& img': {\r\n      marginBottom: 5,\r\n    },\r\n  },\r\n\r\n  '.img-editor-menu': {\r\n    border: '1px solid #FFFFFF',\r\n    float: 'right',\r\n  },\r\n\r\n  '.imgeditor-save-container': {\r\n    paddingTop: 15,\r\n  },\r\n\r\n  '.image-cropper': {\r\n    minWidth: 720,\r\n\r\n    '& .crop-area': {\r\n      maxWidth: 720,\r\n      marginTop: 20,\r\n    },\r\n\r\n    '& .imgEditor-crop': {\r\n      marginTop: 5,\r\n    },\r\n\r\n    '& .image-extension-preview': {\r\n      marginTop: 10,\r\n      marginBottom: 20,\r\n\r\n      '& .mediaBody': {\r\n        position: 'relative',\r\n      },\r\n\r\n      '& .note-creation-review': {\r\n        marginTop: 15,\r\n        width: 300,\r\n      },\r\n\r\n      '& .note-crop-preview': {\r\n        marginTop: -3,\r\n        fontSize: 9,\r\n      },\r\n\r\n      '& .display-url': {\r\n        position: 'absolute',\r\n        bottom: 0,\r\n        fontSize: 9,\r\n        color: '#727272',\r\n        whiteSpace: 'nowrap',\r\n      },\r\n\r\n      '& .brand-logo-placeholder': {\r\n        width: 20,\r\n        height: 20,\r\n        display: 'inline-block',\r\n        background: '#999',\r\n        verticalAlign: 'middle',\r\n        marginRight: 10,\r\n      },\r\n    },\r\n  },\r\n\r\n  '.jcrop-handle': {\r\n    backgroundColor: 'rgba(255, 255, 255, 0)',\r\n    opacity: 1,\r\n    width: 20,\r\n    height: 20,\r\n\r\n    '&.ord-ne': {\r\n      borderRight: '5px #000000 solid',\r\n      borderTop: '5px #000000 solid',\r\n      top: 0,\r\n      right: 0,\r\n    },\r\n    '&.ord-se': {\r\n      borderRight: '5px #000000 solid',\r\n      borderBottom: '5px #000000 solid',\r\n      bottom: 0,\r\n      right: 0,\r\n    },\r\n    '&.ord-nw ': {\r\n      borderLeft: '5px #000000 solid',\r\n      borderTop: '5px #000000 solid',\r\n      top: 0,\r\n      left: 0,\r\n    },\r\n    '&.ord-sw': {\r\n      borderLeft: '5px #000000 solid',\r\n      borderBottom: '5px #000000 solid',\r\n      bottom: 0,\r\n      left: 0,\r\n    },\r\n  },\r\n\r\n  '.image-picker': {\r\n    '& .drop-picker-area': {\r\n      height: 150,\r\n      width: '100%',\r\n      border: 'dashed',\r\n      color: 'gray',\r\n      position: 'relative',\r\n      '& div': {\r\n        position: 'absolute',\r\n        height: '100%',\r\n        width: '100%',\r\n      },\r\n      '& .drop-area': {\r\n        padding: 10,\r\n        '& .add-image-text': {\r\n          textAlign: 'center',\r\n          position: 'relative',\r\n          top: '50%',\r\n          transform: 'translateY(-50%)',\r\n        },\r\n      },\r\n      '& img': {\r\n        maxWidth: '95%',\r\n        maxHeight: '95%',\r\n      },\r\n    },\r\n  },\r\n\r\n  '.jcrop-holder': {\r\n    '.jcrop-tracker': {\r\n      height: '100%',\r\n      width: '100%',\r\n    },\r\n    '.jcrop-keymgr': {\r\n      visibility: 'hidden',\r\n    },\r\n  },\r\n\r\n  '#selector-control-container': {\r\n    background: '#FFFFFF',\r\n    boxShadow: '0px 0.6px 1.8px rgba(0, 0, 0, 0.108), 0px 3.2px 7.2px rgba(0, 0, 0, 0.132)',\r\n    borderRadius: '0px 0px 2px 2px',\r\n    marginLeft: 15,\r\n    width: '90%',\r\n    minWidth: 1000,\r\n  },\r\n\r\n  '.save-bar': {\r\n    '& .btn.btn-primary': {\r\n      marginRight: 10,\r\n    },\r\n  },\r\n\r\n  '.k-overlay': {\r\n    zIndex: '10000 !important',\r\n  },\r\n  '.k-widget.k-window': {\r\n    zIndex: '10001 !important',\r\n    minWidth: '750px !important',\r\n\r\n    '& a.HelpTopic': {\r\n      textDecoration: 'underline',\r\n    },\r\n  },\r\n\r\n  '.image-ad-extension-v2-edit': {\r\n    '& .image-experience-content': {\r\n      marginBottom: '10px',\r\n    },\r\n    '& .add-image-button': {\r\n      background: `${palette.white} !important`,\r\n      border: `1px solid ${palette.neutralSecondaryAlt}`,\r\n      borderRadius: 2,\r\n      boxSizing: 'border-box',\r\n      fontWeight: 600,\r\n      margin: '0 !important',\r\n\r\n      '&:before': {\r\n        color: palette.themePrimary,\r\n        content: '\"\\\\E710\"',\r\n        fontFamily: iconFontFamily,\r\n        fontWeight: 'normal',\r\n        marginRight: 8,\r\n      },\r\n    },\r\n    '& .col-sm-4.control-label': {\r\n      float: 'none',\r\n      textAlign: 'left',\r\n    },\r\n    '& .extension-editor__extra': {\r\n      '& .fieldItemAd': {\r\n        '& .radio': {\r\n          margin: 0,\r\n          float: 'left',\r\n          '& label': {\r\n            paddingLeft: 0,\r\n            paddingRight: 10,\r\n\r\n          },\r\n          '& input[type=radio]': {\r\n            marginLeft: 0,\r\n            bottom: 0,\r\n          },\r\n        },\r\n      },\r\n    },\r\n    '& input[type=checkbox].single-eligible-checkbox': {\r\n      marginLeft: 0,\r\n      marginRight: 10,\r\n      float: 'left',\r\n    },\r\n    '& input[type=checkbox].multi-eligible-checkbox': {\r\n      marginLeft: 0,\r\n      marginRight: 10,\r\n      float: 'left',\r\n    },\r\n    '& .scheduling-form': {\r\n      '& .radio': {\r\n        '& label': {\r\n          paddingLeft: 0,\r\n          '& input[type=radio]': {\r\n            marginLeft: 0,\r\n            bottom: 0,\r\n          },\r\n        },\r\n      },\r\n    },\r\n    '& .extension-images-control': {\r\n      '& .image-section-label': {\r\n        display: 'inline-block',\r\n        '& label': {\r\n          float: 'left',\r\n        },\r\n        '& .helpbutton': {\r\n          float: 'left',\r\n        },\r\n      },\r\n      '& .add-image-button': {\r\n        display: 'block',\r\n      },\r\n    },\r\n    '& .image-experience-content .image-list-view-content': {\r\n      position: 'relative',\r\n      '& .image-list': {\r\n        '& .image-list-label': {\r\n          fontSize: 14,\r\n          fontWeight: 600,\r\n          lineHeight: '19px',\r\n        },\r\n\r\n        '& .image-list-content': {\r\n          display: 'flex',\r\n          border: '1px solid #C8C8C8',\r\n          margin: '8px 0 0 0',\r\n          padding: '16px 16px 12px 16px',\r\n          width: 'fit-content',\r\n\r\n          '& .image-list-item': {\r\n            float: 'none',\r\n            padding: 0,\r\n\r\n            '& ~ .image-list-item': {\r\n              marginLeft: 8,\r\n            },\r\n\r\n            '& .dropdown.btn-group': {\r\n              display: 'block',\r\n\r\n              '&.image-edit-dropdown .dropdown-toggle': {\r\n                extend: floatButtonStyle({ palette }).floatButton,\r\n                fontFamily: iconFontFamily,\r\n                fontSize: 16,\r\n                lineHeight: 1,\r\n                float: 'right',\r\n                margin: 0,\r\n\r\n                '&:before': {\r\n                  content: '\"\\\\E70F\"',\r\n                },\r\n              },\r\n\r\n              '& .caret': {\r\n                display: 'none',\r\n              },\r\n            },\r\n\r\n            '& .image-item-ratio-label': {\r\n              fontSize: 14,\r\n              lineHeight: '20px',\r\n            },\r\n          },\r\n\r\n          '& .remove-all-button': {\r\n            background: 'none',\r\n            border: 'none',\r\n            color: palette.neutralSecondary,\r\n            fontFamily: iconFontFamily,\r\n            fontSize: 12,\r\n            lineHeight: 1,\r\n            margin: '-14px -14px 0 0',\r\n            padding: 8,\r\n            width: 28,\r\n            height: 28,\r\n\r\n            '&:before': {\r\n              content: '\"\\\\E711\"',\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n    '& .image-experience-content .image-list-view-content .remove-all-button': {\r\n      marginBottom: 5,\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list': {\r\n      margin: '10px 0',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-label': {\r\n      fontSize: 12,\r\n      fontWeight: '700',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item': {\r\n      border: 'none',\r\n      position: 'relative',\r\n      float: 'left',\r\n      padding: 5,\r\n      fontSize: 12,\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-item-ratio-label': {\r\n      marginTop: 5,\r\n      height: '20px !important',\r\n      textAlign: 'center',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item:hover .image-list-item-image .dropdown.btn-group': {\r\n      display: 'block',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item:focus': {\r\n      outline: 'none !important',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image': {\r\n      position: 'relative',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group': {\r\n      display: 'none',\r\n      position: 'absolute',\r\n      width: '100%',\r\n      bottom: '0',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group.image-edit-dropdown .dropdown-toggle': {\r\n      color: 'white',\r\n      background: 'rgba(0,0,0,0.3)',\r\n      width: '100%',\r\n      border: '0',\r\n      padding: 2,\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu': {\r\n      margin: '0',\r\n      borderRadius: '0',\r\n      border: '2px solid rgba(0,0,0,0.15)',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu li': {\r\n      float: 'unset',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item .image-list-item-image .dropdown.btn-group .dropdown-menu li a': {\r\n      paddingLeft: 10,\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item.empty-image-list-item button': {\r\n      border: 'dashed',\r\n      background: 'white',\r\n      borderColor: '#CCCCCC',\r\n      borderWidth: 'thin',\r\n      color: '#00a2ff',\r\n      textAlign: 'center',\r\n    },\r\n    '& .image-experience-content .image-list-view-content .image-list .image-list-item.empty-image-list-item button:focus': {\r\n      outline: 'none !important',\r\n    },\r\n    '& .new-preview-carousel-container': {\r\n      // inner carousel in a carousel\r\n      '& .mobile-multi-img .image-combo-contanier': {\r\n        '& .carousel-inner': {\r\n          paddingBottom: 0,\r\n        },\r\n      },\r\n      border: '1px solid #C8C8C8',\r\n      margin: 0,\r\n      width: '100%',\r\n      minWidth: 669,\r\n\r\n      '& .ad-preview-title': {\r\n        fontSize: 18,\r\n        fontWeight: 'normal',\r\n        lineHeight: '24px',\r\n        margin: '20px 24px 16px 24px',\r\n      },\r\n\r\n      '& .carousel-inner': {\r\n        paddingBottom: 64,\r\n        '& > .item.active': {\r\n          paddingLeft: 0,\r\n          paddingRight: 0,\r\n        },\r\n      },\r\n\r\n      '& ol.carousel-indicators': {\r\n        position: 'absolute',\r\n        bottom: 0,\r\n        left: 0,\r\n        margin: '20px 24px',\r\n        width: 'auto',\r\n\r\n        '& li': {\r\n          background: 'none',\r\n          border: '1px solid #605E5C',\r\n          borderRadius: 10,\r\n          margin: '0 10px 0 0',\r\n          height: 10,\r\n          width: 10,\r\n        },\r\n\r\n        '& li.active': {\r\n          background: palette.themePrimary,\r\n          border: `1px solid ${palette.themePrimary}`,\r\n        },\r\n      },\r\n\r\n      '& .carousel-controls': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .carousel-control': {\r\n        color: palette.themePrimary,\r\n        position: 'absolute',\r\n        left: 'auto',\r\n        top: 'auto',\r\n        right: 0,\r\n        bottom: 0,\r\n        height: 32,\r\n        width: 20,\r\n        margin: '20px 24px',\r\n        textShadow: 'none',\r\n        background: 'transparent',\r\n\r\n        '&.left': {\r\n          marginRight: 76,\r\n        },\r\n\r\n        '& .glyphicon-chevron-left, & .glyphicon-chevron-right': {\r\n          fontFamily: iconFontFamily,\r\n          position: 'relative',\r\n          top: 'auto',\r\n          right: 'auto',\r\n          bottom: 'auto',\r\n          left: 'auto',\r\n          margin: 0,\r\n          fontSize: 16,\r\n          lineHeight: 1,\r\n          verticalAlign: 0,\r\n        },\r\n      },\r\n\r\n      '& .new-responsive-ad-preview-container': {\r\n        height: 500,\r\n        overflow: 'hidden',\r\n\r\n        '& .responsive-ad-preview-content': {\r\n          border: '1px solid #C8C8C8',\r\n        },\r\n\r\n        '& .preview-type-string': {\r\n          bottom: 25,\r\n          fontSize: 14,\r\n          lineHeight: '20px',\r\n          paddingTop: 12,\r\n        },\r\n      },\r\n\r\n      '& .disclaimer-info, & .additional-disclaimer': {\r\n        fontSize: 12,\r\n        lineHeight: '20px',\r\n        textAlign: 'left',\r\n      },\r\n\r\n      '& .disclaimer-info': {\r\n        padding: '0 24px 20px 24px',\r\n      },\r\n\r\n      '& .additional-disclaimer': {\r\n        bottom: 0,\r\n        padding: '0 24px',\r\n      },\r\n    },\r\n    '& .new-responsive-ad-preview-container': {\r\n      fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n      fontSize: 10,\r\n      height: 540,\r\n      position: 'relative',\r\n    },\r\n    '& .new-responsive-ad-preview-container .responsive-ad-preview-content': {\r\n      boxSizing: 'unset',\r\n      position: 'absolute',\r\n      top: '47%',\r\n      left: '50%',\r\n      transform: 'translate(-50%, -50%)',\r\n      margin: '0',\r\n      overflow: 'hidden',\r\n    },\r\n    '& .new-responsive-ad-preview-container .preview-type-string': {\r\n      position: 'absolute',\r\n      bottom: 50,\r\n      fontSize: 12,\r\n      textAlign: 'center',\r\n      width: '100%',\r\n    },\r\n    '& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu li': {\r\n      float: 'unset',\r\n    },\r\n    ...imageExperienceContentStyle(),\r\n    ...modalContainerStyle(palette),\r\n    ...editImageCommonStyle(),\r\n  },\r\n  '.new-responsive-ad-preview-container': {\r\n    '& .bing-desktop-img': {\r\n      border: '0.5px solid #ddd',\r\n      width: '548px',\r\n      height: '242px',\r\n      padding: '10px',\r\n      '& .text-container': {\r\n        height: '110px',\r\n        '& .ad-logo': {\r\n          position: 'absolute',\r\n          color: '#999',\r\n          fontWeight: 'bold',\r\n          backgroundColor: '#fff',\r\n          lineHeight: '0.05em',\r\n          fontSize: '7px',\r\n          border: '0.5px solid #ddd',\r\n          borderRadius: '4px',\r\n          padding: '4px 1px 0px 1px',\r\n          '& p': {\r\n            margin: '0 0 5px !important',\r\n          },\r\n        },\r\n        '& .long-headline': {\r\n          fontSize: '20px',\r\n          fontWeight: 'bold',\r\n          width: '548px',\r\n          position: 'relative',\r\n          overflow: 'hidden',\r\n          color: '#003DC1',\r\n          lineHeight: '25px',\r\n        },\r\n        '& .final-url': {\r\n          width: '548px',\r\n          position: 'relative',\r\n          overflow: 'hidden',\r\n          color: '#0b6a0b',\r\n          fontSize: '12px',\r\n        },\r\n        '& .description': {\r\n          margin: '2px 0px 7px 0px',\r\n          color: '#333',\r\n          fontSize: '12px',\r\n        },\r\n      },\r\n      '& .image-combo-contanier': {\r\n        float: 'left',\r\n        marginRight: '5px',\r\n        height: '135px',\r\n        borderRadius: '6px',\r\n        border: '0.5px solid #ddd',\r\n        width: '130px',\r\n        overflow: 'hidden',\r\n        '& .image-container': {\r\n          overflow: 'hidden',\r\n        },\r\n        '& .text-container': {\r\n          height: '45px',\r\n          padding: '2px',\r\n          '& .extension-headline': {\r\n            fontSize: '13px',\r\n            lineHeight: '15px',\r\n            height: '32px',\r\n            color: '#003DC1',\r\n            fontWeight: 'normal',\r\n          },\r\n        },\r\n      },\r\n    },\r\n    '& .mobile-multi-img': {\r\n      borderRadius: '6px',\r\n      border: '0.5px solid #ddd',\r\n      '& .ad-logo': {\r\n        position: 'absolute',\r\n        color: '#fff',\r\n        backgroundColor: '#666',\r\n        top: '10px',\r\n        left: '5px',\r\n        lineHeight: '0.1em',\r\n        border: '1px solid #ddd',\r\n        borderRadius: '6px',\r\n        padding: '5px 1px 2px 1px',\r\n        '& p': {\r\n          margin: '0 0 5px !important',\r\n        },\r\n      },\r\n      '& .text-container': {\r\n        height: '118px',\r\n        padding: '10px',\r\n        width: '400px',\r\n        '& .long-headline': {\r\n          fontWeight: '400',\r\n          fontSize: '18px',\r\n          width: '100%',\r\n          height: '24px',\r\n          color: '#003DC1',\r\n        },\r\n        '& .final-url': {\r\n          width: '100%',\r\n          height: '20px',\r\n          position: 'relative',\r\n          overflow: 'hidden',\r\n          color: '#0b6a0b',\r\n          borderBottom: '1px solid #ddd',\r\n          paddingBottom: '6px',\r\n          marginBottom: '6px',\r\n          fontWeight: '400',\r\n          fontSize: '14px',\r\n        },\r\n        '& .description': {\r\n          height: '40px',\r\n          margin: '2px 0px 7px 0px',\r\n          color: '#333',\r\n          fontSize: '14px',\r\n          fontWeight: '400',\r\n          lineHeight: '20px',\r\n        },\r\n      },\r\n    },\r\n    '& .bing-single-image': {\r\n      border: '0.5px solid #ddd',\r\n      width: '608px',\r\n      height: '110px',\r\n      padding: '3px',\r\n      '& .image-container': {\r\n        float: 'right',\r\n        transform: 'translate(20px,20px)',\r\n        width: '100px',\r\n        height: '75px',\r\n        margin: '8px',\r\n      },\r\n      '& .text-container': {\r\n        margin: '4px 8px 0px 8px',\r\n        '& .long-headline': {\r\n          fontWeight: '400',\r\n          fontSize: '20px',\r\n          lineHeight: '24px',\r\n          height: '28px',\r\n          overflow: 'hidden',\r\n        },\r\n        '& .final-url': {\r\n          overflow: 'hidden',\r\n          color: '#0b6a0b',\r\n          fontSize: '14px',\r\n          height: '20px',\r\n        },\r\n        '& .description': {\r\n          color: '#333',\r\n          fontSize: '13px',\r\n        },\r\n      },\r\n    },\r\n  },\r\n  '.add-image-content-container .add-image-content': {\r\n    '& .image-picker-container': {\r\n      marginTop: 15,\r\n      marginBottom: 5,\r\n      backgroundColor: 'transparent',\r\n      padding: 15,\r\n      border: 0,\r\n    },\r\n    '& .nav-pills.pill-control': {\r\n      marginBottom: '15px',\r\n      border: 'none',\r\n      '& li': {\r\n        border: 'none',\r\n        '& a': {\r\n          border: 'none',\r\n          background: '#F3F2F1',\r\n          color: palette.neutralPrimary,\r\n        },\r\n        '&:hover': {\r\n          '& a': {\r\n            background: '#EDEBE9',\r\n          },\r\n        },\r\n        '&:focus': {\r\n          '& a': {\r\n            background: '#F3F2F1',\r\n            border: '1px solid #605E5C',\r\n          },\r\n        },\r\n      },\r\n      '& li.active': {\r\n        '& a': {\r\n          background: '#EFF6FC',\r\n          color: palette.neutralPrimary,\r\n          fontWeight: 600,\r\n        },\r\n        '&:hover': {\r\n          '& a': {\r\n            background: '#C7E0F4',\r\n          },\r\n        },\r\n      },\r\n      '& .pill-item-label-container': {\r\n        top: -7,\r\n        color: '#ffffff',\r\n        right: -15,\r\n        border: '1px solid #ffffff',\r\n        display: 'inline-block',\r\n        padding: '0 9px',\r\n        zIndex: 1,\r\n        position: 'absolute',\r\n        fontSize: 12,\r\n        borderRadius: 12,\r\n        backgroundColor: '#D83B01',\r\n      },\r\n    },\r\n    '& .react-block-ui > div:last-child > div > div': {\r\n      display: 'inline-flex',\r\n    },\r\n    ...reactUIBlockerStyle(palette),\r\n  },\r\n  '.action-language': {\r\n    '& .actionextension-search-dropdown-container': {\r\n      '& .dropdown-menu': {\r\n        marginLeft: 0,\r\n      },\r\n    },\r\n  },\r\n  '.action-text': {\r\n    '& .actionextension-search-dropdown-container': {\r\n      '& .dropdown-menu': {\r\n        marginLeft: 0,\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const selectElementStyle = ({ palette, includeSelector = true }) => {\r\n  const styles = {\r\n    background: 'url(\"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMiAxMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiM0ODQ2NDQ7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5BcnRib2FyZCAxPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS4zNyw0bC41Mi41M0w2LDEwLjQ1LjEyLDQuNTYuNjQsNCw2LDkuNFoiLz48L3N2Zz4=\") no-repeat right 8px top 8px transparent',\r\n    backgroundSize: '14px 14px',\r\n    borderColor: palette.neutralSecondary,\r\n    borderRadius: 2,\r\n    lineHeight: '19px',\r\n    boxShadow: 'none',\r\n    color: palette.neutralPrimary,\r\n    fontWeight: 'normal',\r\n    height: 32,\r\n    padding: '0px 28px 0px 8px',\r\n    transition: 'border-color .15s ease-in-out,box-shadow .15s ease-in-out',\r\n    '-webkit-box-shadow': 'none',\r\n    '-webkit-appearance': 'none',\r\n    '-moz-appearance': 'none',\r\n\r\n    '&:active': {\r\n      borderColor: palette.themePrimary,\r\n    },\r\n\r\n    '&:focus': {\r\n      borderColor: palette.themePrimary,\r\n      outline: 0,\r\n    },\r\n\r\n    '&:hover': {\r\n      borderColor: palette.neutralPrimary,\r\n    },\r\n\r\n    '& .glyphicon-triangle-bottom': {\r\n      display: 'none',\r\n    },\r\n    '&.disabled,&[disabled]': {\r\n      background: `url(\"data:image/svg+xml;base64,PHN2ZyBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEyIDEyIj48cGF0aCBkPSJNMTEuMzcgNGwuNTIuNTNMNiAxMC40NS4xMiA0LjU2LjY0IDQgNiA5LjR6IiBmaWxsPSIjYTZhNmE2Ii8+PC9zdmc+\") no-repeat right 8px top 8px ${palette.neutralLighter}`,\r\n      color: palette.neutralTertiary,\r\n      backgroundSize: '14px',\r\n    },\r\n  };\r\n  if (includeSelector) {\r\n    return {\r\n      '& select.form-control': styles,\r\n    };\r\n  }\r\n  return styles;\r\n};\r\n","export const imageExperienceContentStyle = () => ({\r\n  '& .image-experience-content .add-image-content': {\r\n    fontSize: 12,\r\n    position: 'relative',\r\n  },\r\n  '& .image-experience-content .add-image-content .add-image-label': {\r\n    marginBottom: 15,\r\n    fontSize: 14,\r\n    fontFamily: '\"Segoe UI\"',\r\n    fontWeight: '400',\r\n    fontStyle: 'normal',\r\n  },\r\n  '& .image-experience-content .add-image-content .add-image-description': {\r\n    marginBottom: 5,\r\n  },\r\n  '& .image-experience-content .add-image-content .search-box-container': {\r\n    width: '45%',\r\n    float: 'left',\r\n  },\r\n  '& .image-experience-content .add-image-content .search-box-container .search-box__input-group .search-box__input.form-control': {\r\n    borderRadius: '0',\r\n  },\r\n  '& .image-experience-content .add-image-content .search-box-container .search-box__input-group .search-box__icon': {\r\n    fontSize: 12,\r\n  },\r\n  '& .image-experience-content .add-image-content .add-image-button-bar': {\r\n    marginTop: 15,\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container': {\r\n    float: 'right',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector': {\r\n    position: 'relative',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle': {\r\n    borderRadius: '0',\r\n    minWidth: 190,\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle .icon-right.glyphicon-triangle-bottom': {\r\n    paddingTop: 3,\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-content': {\r\n    border: 'none',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .empty-message': {\r\n    position: 'absolute',\r\n    padding: '5px 10px',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item': {\r\n    padding: '5px 10px',\r\n    margin: '0',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item:hover': {\r\n    cursor: 'pointer',\r\n    backgroundColor: '#f5f5f5',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item.selected': {\r\n    background: '#E7F0F6',\r\n  },\r\n  '& .image-experience-content .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item .item-actions': {\r\n    float: 'right',\r\n  },\r\n  '& .image-experience-content .add-image-content .sort-by-label': {\r\n    paddingTop: 9,\r\n    paddingRight: 5,\r\n    float: 'right',\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker': {\r\n    marginTop: 15,\r\n    marginBottom: 5,\r\n    backgroundColor: '#f4f4f4',\r\n    padding: 15,\r\n    border: '1px solid #bbb',\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images': {\r\n    overflowY: 'auto',\r\n    height: 400,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container': {\r\n    position: 'relative',\r\n    display: 'inline-block',\r\n    padding: '0',\r\n    margin: 10,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-dimensions, .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-edit.glyphicon.glyphicon-pencil, .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container:hover .image-delete.glyphicon.glyphicon-remove': {\r\n    display: 'inline',\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .existing-image': {\r\n    display: 'inline-block',\r\n    position: 'relative',\r\n    cursor: 'pointer',\r\n    border: 'none',\r\n    background: 'none',\r\n    padding: '0',\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .existing-image img': {\r\n    margin: 15,\r\n    width: 225,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-dimensions': {\r\n    display: 'none',\r\n    position: 'absolute',\r\n    bottom: 15,\r\n    left: 15,\r\n    textIndent: 5,\r\n    color: 'white',\r\n    backgroundColor: 'rgba(27,27,27,0.616)',\r\n    width: 225,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-edit.glyphicon.glyphicon-pencil': {\r\n    border: 'none',\r\n    background: 'none',\r\n    display: 'none',\r\n    position: 'absolute',\r\n    color: 'white',\r\n    backgroundColor: 'rgba(27,27,27,0.616)',\r\n    top: 15,\r\n    right: 40,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-delete.glyphicon.glyphicon-remove': {\r\n    border: 'none',\r\n    background: 'none',\r\n    display: 'none',\r\n    position: 'absolute',\r\n    color: 'white',\r\n    backgroundColor: 'rgba(27,27,27,0.616)',\r\n    top: 15,\r\n    right: 15,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container': {\r\n    position: 'absolute',\r\n    left: 15,\r\n    bottom: '0',\r\n    marginBottom: -15,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container input': {\r\n    width: 100,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container button': {\r\n    marginLeft: 3,\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name-container [role=alert]': {\r\n    position: 'absolute',\r\n  },\r\n  '& .image-experience-content .add-image-content .image-picker .existing-images .existing-image-container .image-name': {\r\n    position: 'absolute',\r\n    width: 225,\r\n    left: 15,\r\n    bottom: '0',\r\n    marginBottom: -5,\r\n    textAlign: 'center',\r\n    textOverflow: 'ellipsis',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n  },\r\n  '& .image-experience-content .add-image-content .file-picker-react-wrapper': {\r\n    marginTop: 5,\r\n    marginBottom: 5,\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container': {\r\n    marginBottom: 10,\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container .ba-pagination>*': {\r\n    display: 'inline',\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container .pager-input': {\r\n    border: '1px solid #BBB',\r\n    width: 25,\r\n    padding: '0 3px',\r\n    marginRight: 5,\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default': {\r\n    border: 'none',\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default:disabled': {\r\n    backgroundColor: 'inherit',\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container .btn.btn-default:disabled .glyphicon': {\r\n    color: '#a2a2a2',\r\n  },\r\n  '& .image-experience-content .add-image-content .pagination-control-container span': {\r\n    marginRight: 5,\r\n  },\r\n  '& .react-image-cropper': {\r\n    textAlign: 'center',\r\n  },\r\n  '& .react-image-cropper .jcrop-handle': {\r\n    backgroundColor: 'rgba(255,255,255,0)',\r\n    opacity: '1',\r\n    width: 20,\r\n    height: 20,\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-ne': {\r\n    borderRight: '6px #000000 solid',\r\n    borderTop: '6px #000000 solid',\r\n    top: '0',\r\n    right: '0',\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-ne:before': {\r\n    content: '\" \"',\r\n    position: 'absolute',\r\n    zIndex: '-1',\r\n    width: 16,\r\n    height: 16,\r\n    opacity: '1',\r\n    top: '0',\r\n    right: '0',\r\n    borderRight: '2px solid white',\r\n    borderTop: '2px solid white',\r\n    marginTop: -4,\r\n    marginRight: -4,\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-se': {\r\n    borderRight: '6px #000000 solid',\r\n    borderBottom: '6px #000000 solid',\r\n    bottom: '0',\r\n    right: '0',\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-se:before': {\r\n    content: '\" \"',\r\n    position: 'absolute',\r\n    zIndex: '-1',\r\n    width: 16,\r\n    height: 16,\r\n    opacity: '1',\r\n    bottom: '0',\r\n    right: '0',\r\n    borderRight: '2px solid white',\r\n    borderBottom: '2px solid white',\r\n    marginBottom: -4,\r\n    marginRight: -4,\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-nw': {\r\n    borderLeft: '6px #000000 solid',\r\n    borderTop: '6px #000000 solid',\r\n    top: '0',\r\n    left: '0',\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-nw:before': {\r\n    content: '\" \"',\r\n    position: 'absolute',\r\n    zIndex: '-1',\r\n    width: 16,\r\n    height: 16,\r\n    opacity: '1',\r\n    top: '0',\r\n    left: '0',\r\n    borderLeft: '2px solid white',\r\n    borderTop: '2px solid white',\r\n    marginTop: -4,\r\n    marginLeft: -4,\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-sw': {\r\n    borderLeft: '6px #000000 solid',\r\n    borderBottom: '6px #000000 solid',\r\n    bottom: '0',\r\n    left: '0',\r\n  },\r\n  '& .react-image-cropper .jcrop-handle.ord-sw:before': {\r\n    content: '\" \"',\r\n    position: 'absolute',\r\n    zIndex: '-1',\r\n    width: 16,\r\n    height: 16,\r\n    opacity: '1',\r\n    bottom: '0',\r\n    left: '0',\r\n    borderLeft: '2px solid white',\r\n    borderBottom: '2px solid white',\r\n    marginBottom: -4,\r\n    marginLeft: -4,\r\n  },\r\n  '& .react-image-cropper .jcrop-holder': {\r\n    display: 'inline-block',\r\n  },\r\n  '& .react-image-cropper .jcrop-holder .jcrop-tracker': {\r\n    height: '100%',\r\n    width: '100%',\r\n  },\r\n  '& .react-image-cropper .jcrop-holder .jcrop-keymgr': {\r\n    visibility: 'hidden',\r\n  },\r\n  '& .image-experience-content .image-edit-content .edit-image-title': {\r\n    fontSize: 14,\r\n    fontFamily: '\"Segoe UI\"',\r\n    fontWeight: '400',\r\n    fontStyle: 'normal',\r\n  },\r\n  '& .image-experience-content .image-edit-content .close-dialog-button': {\r\n    top: 10,\r\n    right: 5,\r\n  },\r\n  '& .image-experience-content .image-edit-content .image-preview-crop-description': {\r\n    fontSize: 12,\r\n    margin: '10px 0',\r\n  },\r\n  '& .image-experience-content .image-edit-content .image-cropper-in-edit': {\r\n    padding: 5,\r\n    marginTop: 30,\r\n  },\r\n  '& .image-experience-content .image-edit-content .image-cropper-in-edit .image-cropper-ratio-label': {\r\n    fontSize: 12,\r\n    margin: '5px 0',\r\n    width: '100%',\r\n    fontWeight: '700',\r\n    textAlign: 'center',\r\n  },\r\n  '& .image-experience-content .image-edit-content .image-replace-description': {\r\n    fontSize: 12,\r\n    margin: '10px 0',\r\n  },\r\n  '& .image-experience-content .image-edit-content .preview-section': {\r\n    border: '1px solid #CCCCCC',\r\n  },\r\n  '& .image-experience-content .image-edit-content .preview-section .preview-section-title': {\r\n    marginLeft: 5,\r\n    marginTop: 5,\r\n    fontSize: 12,\r\n    fontWeight: '700',\r\n  },\r\n  '& .image-experience-content .image-edit-content .image-edit-actions': {\r\n    marginTop: 40,\r\n  },\r\n  '& .image-experience-content .modal-container.image-edit-modal .modal-content': {\r\n    minWidth: 1350,\r\n    width: 1350,\r\n  },\r\n  '& .image-experience-content .logo-item .logo-image-container': {\r\n    position: 'relative',\r\n    width: 62,\r\n    fontSize: 13,\r\n  },\r\n  '& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group': {\r\n    position: 'absolute',\r\n    width: '100%',\r\n    bottom: '0',\r\n  },\r\n  '& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group #logo-edit-dropdown': {\r\n    color: 'white',\r\n    background: 'rgba(0,0,0,0.3)',\r\n    width: '100%',\r\n    border: '0',\r\n    padding: 2,\r\n  },\r\n  '& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu': {\r\n    margin: '0',\r\n    borderRadius: '0',\r\n    border: '2px solid rgba(0,0,0,0.15)',\r\n  },\r\n  '& .image-experience-content .logo-item .logo-image-container .dropdown.btn-group .dropdown-menu li a': {\r\n    paddingLeft: 10,\r\n  },\r\n  '& .image-experience-content .add-image-button': {\r\n    margin: '10px 0',\r\n    background: '#008272',\r\n  },\r\n  '& .image-experience-content .on-add-logo-button': {\r\n    margin: '10px 0',\r\n  },\r\n  '& .image-experience-content .logo-label': {\r\n    marginTop: 10,\r\n    fontSize: 12,\r\n    fontWeight: '700',\r\n    color: '#666666',\r\n  },\r\n  '& .image-experience-content .image-section-label': {\r\n    paddingTop: 5,\r\n  },\r\n  '& .image-experience-content .close-dialog-button': {\r\n    position: 'absolute',\r\n    right: '0',\r\n    top: '0',\r\n    border: 'none',\r\n    background: 'none',\r\n    color: 'black',\r\n    backgroundColor: 'unset',\r\n  },\r\n  '& .image-experience-content .button-as-link': {\r\n    margin: '0',\r\n    padding: '0',\r\n    border: 'none',\r\n  },\r\n  '& .created-ad-list-container.row': {\r\n    margin: '0',\r\n  },\r\n  '& .created-ad-list-container.row .ad-list-item': {\r\n    boxSizing: 'content-box',\r\n    height: 100,\r\n    background: '#EEEEEE',\r\n    padding: 10,\r\n    display: 'table',\r\n    border: 'dashed',\r\n    borderWidth: 'thin',\r\n    color: 'gray',\r\n    width: 360,\r\n    margin: '20px 20px 20px 20px',\r\n    float: 'left',\r\n    textAlign: 'center',\r\n  },\r\n  '& .created-ad-list-container.row .ad-list-item:first-child': {\r\n    marginLeft: '0',\r\n  },\r\n  '& .created-ad-list-container.row .ad-list-item .create-another-ad': {\r\n    lineHeight: '86px',\r\n    color: '#00a2ff',\r\n    fontSize: 14,\r\n    border: 'none',\r\n    backgroundColor: 'unset',\r\n    padding: 2,\r\n  },\r\n  '& .created-ad-list-container.row .ad-list-item .create-another-ad:hover, .created-ad-list-container.row .ad-list-item .create-another-ad:active, .created-ad-list-container.row .ad-list-item .create-another-ad:focus': {\r\n    border: 'none',\r\n    outline: '0',\r\n  },\r\n  '& .created-ad-list-container.row .create-another-ad-container': {\r\n    cursor: 'pointer',\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad': {\r\n    position: 'relative',\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad p': {\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n    fontSize: 12,\r\n    lineHeight: '15px',\r\n    textAlign: 'left',\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad .existing-ad-image': {\r\n    float: 'left',\r\n    width: 191,\r\n    height: 100,\r\n    marginRight: 10,\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad .existing-ad-options': {\r\n    display: 'none',\r\n    position: 'absolute',\r\n    width: '100%',\r\n    height: 20,\r\n    bottom: '0',\r\n    left: '0',\r\n    textIndent: 5,\r\n    color: 'white',\r\n    backgroundColor: 'rgba(27,27,27,0.616)',\r\n    paddingRight: 5,\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad .existing-ad-options button': {\r\n    cursor: 'pointer',\r\n    width: 'min-content',\r\n    float: 'right',\r\n    border: 'none',\r\n    color: 'white',\r\n    backgroundColor: 'unset',\r\n    padding: '2px 5px',\r\n    fontSize: 12,\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad .existing-ad-options button:hover, .created-ad-list-container.row .existing-ad .existing-ad-options button:active, .created-ad-list-container.row .existing-ad .existing-ad-options button:focus': {\r\n    border: 'none',\r\n    outline: '0',\r\n  },\r\n  '& .created-ad-list-container.row .existing-ad:hover .existing-ad-options': {\r\n    display: 'inline',\r\n  },\r\n  '& .react-image-experience .blocker': {\r\n    backgroundColor: 'rgba(51,51,51,0.15)',\r\n    zIndex: '1100',\r\n    textAlign: 'center',\r\n  },\r\n  '& .react-image-experience .blocker .blocker-indicator': {\r\n    marginTop: -55,\r\n    top: '50%',\r\n    position: 'relative',\r\n    display: 'inline-block',\r\n    padding: 20,\r\n    backgroundColor: '#fff',\r\n    maxWidth: 370,\r\n    minWidth: 140,\r\n    minHeight: 70,\r\n    zIndex: '1011',\r\n  },\r\n  '& .react-image-experience .blocker-text': {\r\n    verticalAlign: 'center',\r\n    margin: '5px 0 0 40px',\r\n    fontWeight: 'bold',\r\n  },\r\n  '& .react-image-experience .blocker-image': {\r\n    background: 'url(\\'../images/Loader_Grey_30x30.gif\\') no-repeat',\r\n    textAlign: 'left',\r\n    position: 'absolute',\r\n    height: 30,\r\n    width: 30,\r\n    zIndex: '10',\r\n  },\r\n});\r\n","export const editImageCommonStyle = () => ({\r\n  '& .new-responsive-ad-preview-container .additional-disclaimer': {\r\n    position: 'absolute',\r\n    bottom: 35,\r\n    fontSize: 12,\r\n    textAlign: 'center',\r\n    width: '100%',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container': {\r\n    bottom: 25,\r\n    left: 20,\r\n    fontSize: 10,\r\n    lineHeight: '16px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .long-headline': {\r\n    overflow: 'hidden',\r\n    fontWeight: '200',\r\n    paddingBottom: 1,\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .short-headline': {\r\n    fontWeight: '200',\r\n    fontSize: 20,\r\n    paddingBottom: 5,\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .business-name-with-ads': {\r\n    marginTop: 9,\r\n    padding: '1px 0',\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .business-name-with-ads .adslabel': {\r\n    fontSize: 11,\r\n    lineHeight: '1.364',\r\n    margin: '0 5px 0 0',\r\n    background: '#1e6525',\r\n    borderRadius: 2,\r\n    color: '#fff',\r\n    fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n    fontWeight: '400',\r\n    padding: '1.2px 6px 1.8px 6px',\r\n    width: 'auto',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .business-name-with-ads .business-name': {\r\n    fontSize: 11,\r\n    lineHeight: '1.364',\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container, .new-responsive-ad-preview-container .edge-single-carousel .text-container, .new-responsive-ad-preview-container .msn-double-carousel .text-container': {\r\n    position: 'absolute',\r\n    color: '#bebebe',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .long-headline': {\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline': {\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel .gradient::after': {\r\n    display: 'block',\r\n    position: 'relative',\r\n    backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n    marginTop: -250,\r\n    height: 280,\r\n    width: '100%',\r\n    content: '\\'\\'',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover, .new-responsive-ad-preview-container .edge-single-carousel:hover, .new-responsive-ad-preview-container .msn-double-carousel:hover': {\r\n    cursor: 'pointer',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .short-headline': {\r\n    textDecoration: 'underline',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel:hover .gradient::after': {\r\n    marginTop: -450,\r\n    height: 480,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide, .new-responsive-ad-preview-container .edge-medium-headline, .new-responsive-ad-preview-container .msn-medium-headline, .new-responsive-ad-preview-container .msn-in-article, .new-responsive-ad-preview-container .msn-small-headline, .new-responsive-ad-preview-container .audience-network-square-image, .new-responsive-ad-preview-container .mobile-web-outlook': {\r\n    margin: 'auto',\r\n    background: '#fff',\r\n    border: 'solid',\r\n    borderWidth: 'thin',\r\n    color: '#ddd',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container, .new-responsive-ad-preview-container .edge-medium-headline .text-container, .new-responsive-ad-preview-container .msn-medium-headline .text-container, .new-responsive-ad-preview-container .msn-in-article .text-container, .new-responsive-ad-preview-container .msn-small-headline .text-container, .new-responsive-ad-preview-container .audience-network-square-image .text-container, .new-responsive-ad-preview-container .mobile-web-outlook .text-container': {\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .edge-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-in-article .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-small-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .audience-network-square-image .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .mobile-web-outlook .text-container .business-name-with-ads .business-name': {\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel': {\r\n    width: 622,\r\n    height: 368,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline': {\r\n    width: 575,\r\n    height: 80,\r\n    fontSize: 28,\r\n    lineHeight: '1.214',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel': {\r\n    width: 624,\r\n    height: 350,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline': {\r\n    height: 73,\r\n    fontSize: 28,\r\n    lineHeight: '33.99px',\r\n    width: 590,\r\n    marginBottom: 20,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel': {\r\n    width: 310,\r\n    height: 333,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline': {\r\n    fontSize: 20,\r\n    lineHeight: '1.3',\r\n    height: 54,\r\n    width: 280,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide': {\r\n    width: 382,\r\n    height: 364,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container': {\r\n    padding: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .long-headline': {\r\n    fontSize: 18,\r\n    lineHeight: '1.2',\r\n    height: 60,\r\n    position: 'relative',\r\n    top: -6,\r\n    color: '#207697',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .description': {\r\n    height: 45,\r\n    margin: '5px 0 10px 0',\r\n    fontSize: 14,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article': {\r\n    width: 300,\r\n    height: 364,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container': {\r\n    height: 98,\r\n    padding: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container .long-headline': {\r\n    fontSize: 15,\r\n    lineHeight: '1.2',\r\n    height: 60,\r\n    position: 'relative',\r\n    top: -6,\r\n    overflow: 'hidden',\r\n    color: '#207697',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container .description': {\r\n    height: 45,\r\n    margin: '5px 0 10px 0',\r\n    fontSize: 14,\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline': {\r\n    width: 300,\r\n    height: 296,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline .text-container': {\r\n    height: 98,\r\n    padding: '15px 13px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline .text-container .long-headline': {\r\n    fontSize: 15,\r\n    lineHeight: '1.467',\r\n    height: 47,\r\n    position: 'relative',\r\n    top: -6,\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline': {\r\n    width: 300,\r\n    height: 350,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .text-container': {\r\n    padding: '15px 13px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .text-container .long-headline': {\r\n    fontSize: 24,\r\n    fontWeight: 'normal',\r\n    lineHeight: '28px',\r\n    marginTop: 20,\r\n    height: 100,\r\n    position: 'relative',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image': {\r\n    width: 300,\r\n    height: 90,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image .image-container': {\r\n    float: 'left',\r\n    transform: 'none',\r\n    width: 80,\r\n    height: 75,\r\n    margin: 8,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image .short-headline': {\r\n    fontWeight: '600',\r\n    fontSize: 13,\r\n    lineHeight: '1.384',\r\n    height: 45,\r\n    margin: '8px 8px 0 8px',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline': {\r\n    width: 300,\r\n    height: 90,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline .image-container': {\r\n    float: 'left',\r\n    transform: 'none',\r\n    width: 100,\r\n    height: 75,\r\n    margin: 8,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline .long-headline': {\r\n    fontWeight: '600',\r\n    fontSize: 13,\r\n    lineHeight: '1.384',\r\n    height: 52,\r\n    margin: '4px 8px 0 8px',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook': {\r\n    margin: '25px auto 0 auto',\r\n    background: '#fff',\r\n    border: 'solid',\r\n    borderWidth: 'thin',\r\n    color: '#ddd',\r\n    height: 25,\r\n    width: 800,\r\n    marginTop: 25,\r\n    paddingLeft: 25,\r\n    whiteSpace: 'nowrap',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo, .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow, .new-responsive-ad-preview-container .web-desktop-outlook .short-headline, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator, .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .business-name': {\r\n    display: 'inline-block',\r\n    padding: 4,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo': {\r\n    verticalAlign: 'middle',\r\n    backgroundColor: 'blue',\r\n    width: 20,\r\n    borderRadius: 4,\r\n    height: 13,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo p': {\r\n    position: 'absolute',\r\n    top: 3,\r\n    fontSize: 10,\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .business-name': {\r\n    marginRight: 40,\r\n    color: 'black',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow': {\r\n    border: 'solid gray',\r\n    borderWidth: '0 1.5px 1.5px 0',\r\n    display: 'inline-block',\r\n    padding: 2,\r\n    transform: 'rotate(45deg) translateY(-3px)',\r\n    W: 'rotate(45deg) translateY(-3px)',\r\n    marginRight: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .short-headline': {\r\n    color: 'blue',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator': {\r\n    color: 'gray',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook': {\r\n    width: 340,\r\n    height: 80,\r\n    padding: '5px 10px 5px 15px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo, .new-responsive-ad-preview-container .mobile-web-outlook .business-name': {\r\n    display: 'inline-block',\r\n    padding: 4,\r\n    height: 30,\r\n    fontSize: 20,\r\n    verticalAlign: 'middle',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo': {\r\n    verticalAlign: 'middle',\r\n    backgroundColor: '#006ed4',\r\n    width: 20,\r\n    borderRadius: 4,\r\n    height: 15,\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo p': {\r\n    position: 'absolute',\r\n    top: 11.5,\r\n    fontSize: 10,\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .business-name': {\r\n    color: 'black',\r\n    paddingTop: 6,\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .short-headline': {\r\n    color: '#1081d9',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .description': {\r\n    color: 'gray',\r\n    padding: '0',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .description, .new-responsive-ad-preview-container .mobile-web-outlook .short-headline': {\r\n    fontSize: 13,\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n    marginTop: 2,\r\n  },\r\n});\r\n","/* eslint-disable no-unused-vars */\r\nexport const audienceReachEstimateContainerStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }, { leftMargin = 900, rightMargin = 'unset', topMargin = 320 } = {}) => ({\r\n  '& .audience-reach-estimate-container, & .reach-estimate-control-container': {\r\n    width: 434,\r\n    position: 'absolute',\r\n    top: topMargin,\r\n    left: leftMargin,\r\n    right: rightMargin,\r\n    margin: 0,\r\n\r\n    '& >div': {\r\n      width: 434,\r\n    },\r\n\r\n    '& .reach-estimate-control': {\r\n      width: 434,\r\n      '& .panel': {\r\n        backgroundColor: palette.white,\r\n        boxShadow: '-5px 10px 15px 0px rgba(0,0,0,0.2)',\r\n        '-webkit-box-shadow': '-5px 10px 15px 0px rgba(0,0,0,0.2)',\r\n        borderRadius: 2,\r\n        padding: 20,\r\n\r\n        '& .panel-body': {\r\n          padding: 0,\r\n\r\n\r\n          '& .audience-meter-container': {\r\n            '& .audience-meter>div': {\r\n              fontSize: 18,\r\n            },\r\n\r\n            '& .meter-container': {\r\n              height: 37,\r\n              margin: '10px 0 13px 0',\r\n              position: 'relative',\r\n              fontSize: 12,\r\n\r\n              '& .arrow': {\r\n                backgroundColor: '#107C10',\r\n                top: 5,\r\n                width: 16,\r\n                height: 35,\r\n                position: 'absolute',\r\n                border: `4px solid ${palette.white} !important`,\r\n                zIndex: 1,\r\n              },\r\n\r\n              '& div[style *= \"border-top-color: green\"]': {\r\n                backgroundColor: '#107C10',\r\n              },\r\n\r\n              '& div[style *= \"border-top-color: red\"]': {\r\n                backgroundColor: '#A80000',\r\n              },\r\n\r\n              '& .meter': {\r\n                '& .specific-meter, & .broad-meter': {\r\n                  width: '10%',\r\n                  height: 12,\r\n                  backgroundColor: '#C4C4C4',\r\n                  position: 'absolute',\r\n                  top: 17,\r\n                },\r\n\r\n                '& .broad-meter': {\r\n                  width: '90%',\r\n                  backgroundColor: '#C4C4C4',\r\n                  marginLeft: '10%',\r\n                },\r\n              },\r\n\r\n              '& .audience-specific-label': {\r\n                position: 'absolute',\r\n                top: 35,\r\n                fontSize: 12,\r\n              },\r\n\r\n              '& .audience-broad-label': {\r\n                position: 'absolute',\r\n                top: 35,\r\n                fontSize: 12,\r\n                right: 0,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .estimate-note': {\r\n            color: '#323130',\r\n            fontSize: 12,\r\n            paddingTop: 20,\r\n          },\r\n\r\n          '& .reach-warning': {\r\n            width: '100%',\r\n            display: 'none',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n  },\r\n});\r\n","// this style is in right a panel, out of the feature scope, so use as the global pattern\r\nimport { uetTagSelectorStyles } from './uet-tag-selector-style';\r\nimport { underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const audienceModalStyles = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }, { modalWidth = 800 } = {}) => ({\r\n  '.audience-modal': {\r\n    left: 'auto',\r\n    background: '#FFFFFF',\r\n    display: 'block',\r\n    opacity: 1,\r\n    position: 'relative',\r\n    overflow: 'unset !important',\r\n\r\n    ...underlineLinkStyle({ palette, elementLocator: 'a.HelpTopic' }),\r\n\r\n    '& div.error': {\r\n      float: 'right',\r\n      width: '100%',\r\n      color: '#A80000',\r\n      fontSize: 14,\r\n    },\r\n\r\n    '& input.error': {\r\n      borderColor: '#A80000',\r\n    },\r\n\r\n    '& .modal-dialog': {\r\n      width: '100%',\r\n      transform: 'none !important',\r\n      transition: 'none !important',\r\n      display: 'block',\r\n      overflow: 'unset',\r\n      maxWidth: 'none',\r\n      height: 'auto',\r\n\r\n      '& .modal-content': {\r\n        boxShadow: 'none',\r\n\r\n        '& .modal-header': {\r\n          display: 'none',\r\n        },\r\n\r\n        '& .modal-body': {\r\n          padding: 0,\r\n\r\n          '& .row': {\r\n            margin: 0,\r\n\r\n            '& p': {\r\n              fontSize: 14,\r\n              marginBottom: 10,\r\n              padding: 0,\r\n            },\r\n\r\n            '& .col-sm-7, .col-sm-12': {\r\n              padding: 0,\r\n            },\r\n\r\n            '& .inline-sm-input': {\r\n              width: 64,\r\n              margin: '0 10px',\r\n            },\r\n          },\r\n\r\n          '& .membershipDuration': {\r\n            width: 64,\r\n          },\r\n\r\n          '& .step2': {\r\n            marginTop: 15,\r\n\r\n            '& .row:nth-child(3)': {\r\n              marginBottom: 0,\r\n            },\r\n\r\n            '& .col-sm-12': {\r\n              padding: 0,\r\n            },\r\n\r\n          },\r\n\r\n          '& .product-audience-popup': {\r\n\r\n            '& .step2': {\r\n              width: 1200,\r\n            },\r\n          },\r\n\r\n          '& .text-highlighted': {\r\n            color: '#D90026',\r\n          },\r\n\r\n          '& textarea': {\r\n            resize: 'none',\r\n          },\r\n\r\n          '& .form-horizontal': {\r\n            '& .control-label': {\r\n              float: 'none',\r\n              width: '100%',\r\n              textAlign: 'left',\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .modal-footer': {\r\n          padding: '16px 0px 0px 0px',\r\n          textAlign: 'left',\r\n          borderTop: '1px solid #eee',\r\n\r\n          '& .btn': {\r\n            lineHeight: '32px',\r\n            marginLeft: 0,\r\n            marginRight: 12,\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '.annotation-text': {\r\n    textAlign: 'right',\r\n    fontSize: 14,\r\n    color: palette.neutralPrimary,\r\n    lineHeight: '24px',\r\n  },\r\n\r\n  '.audienceConditionControl': {\r\n    '& .panel-form': {\r\n      border: `1px solid ${palette.neutralSecondary}`,\r\n      borderRadius: 2,\r\n      padding: '5px 10px',\r\n\r\n      '& .simpleMode': {\r\n        padding: 0,\r\n        overflow: 'unset',\r\n\r\n        '& .audiencePickerContainer': {\r\n          paddingBottom: 21,\r\n\r\n          '& h5': {\r\n            fontSize: 14,\r\n            fontWeight: 400,\r\n          },\r\n\r\n          '& .exampleText': {\r\n            fontSize: 12,\r\n          },\r\n        },\r\n\r\n        '& .audiencePickerControl': {\r\n\r\n          '& .audiencePicker': {\r\n            height: 'auto',\r\n            width: '100%',\r\n\r\n            '& option': {\r\n              fontWeight: 400,\r\n              display: 'block',\r\n              whiteSpace: 'pre',\r\n              minHeight: '1.2em',\r\n              padding: '0px 2px 1px',\r\n            },\r\n          },\r\n\r\n          '& .create': {\r\n            position: 'relative',\r\n            right: 10,\r\n            top: -22,\r\n            fontSize: 14,\r\n            color: '#0078d4',\r\n            fontWeight: 400,\r\n            opacity: 1,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .panel-footer': {\r\n        background: palette.white,\r\n        padding: 0,\r\n      },\r\n    },\r\n  },\r\n\r\n  ...uetTagSelectorStyles({ palette, iconFontFamily }, { width: modalWidth }),\r\n\r\n  '.uet-tag-help-panel': {\r\n\r\n    width: modalWidth,\r\n\r\n    '& .product-audience-code-sample': {\r\n      border: `1px solid ${palette.neutralSecondary}`,\r\n      padding: 15,\r\n      wordBreak: 'break-all',\r\n      '& p': {\r\n        margin: 0,\r\n        padding: 0,\r\n      },\r\n    },\r\n\r\n    '& .pull-right': {\r\n      padding: 0,\r\n      marginTop: 15,\r\n      width: 'fit-content',\r\n      textAlign: 'right',\r\n      display: 'flex',\r\n      flexDirection: 'row',\r\n\r\n      '& button': {\r\n        width: 'auto',\r\n        display: 'inline-block',\r\n        position: 'relative',\r\n      },\r\n\r\n      '& .btn-uet-download-tag, & .btn-uet-email-tag': {\r\n        marginLeft: 15,\r\n      },\r\n    },\r\n  },\r\n\r\n  '.manageRemarketingListContainer': {\r\n    '& > div:nth-child(6) > form > div:nth-child(4)': {\r\n      '& > .col-sm-2': {\r\n        width: 0,\r\n        padding: 0,\r\n      },\r\n      '& > .col-sm-10': {\r\n        width: modalWidth,\r\n      },\r\n    },\r\n\r\n    '& div.error': {\r\n      color: palette.redDark,\r\n    },\r\n\r\n    '& .inactive': {\r\n      color: palette.neutralTertiary,\r\n    },\r\n\r\n    '& .panel-title hr': {\r\n      marginTop: 10,\r\n      marginBottom: 20,\r\n    },\r\n\r\n    '& .audience-type-selector-panel .audience-type-selector label .type-normal': {\r\n      marginLeft: '8px',\r\n    },\r\n\r\n    '& >div[data-bind=\"visible: isAudienceTitleStep() || editMode()\"]': {\r\n      width: 528,\r\n      '& .col-sm-10': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& #ManageLblName + .col-sm-6': {\r\n        width: '100%',\r\n      },\r\n    },\r\n\r\n    '& >div[data-bind=\"visible: isAudienceDetailStep() || (!isCustomerListAudience() && editMode())\"], & >div:nth-child(6)': {\r\n      '& #ManageLblSelectTag + .col-sm-10, & #ManageLblListOption + .col-sm-10': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& input[data-bind=\"checked: isInfiniteDuration\"] + .col-sm-1': {\r\n        width: 64,\r\n        boxSizing: 'content-box',\r\n      },\r\n    },\r\n\r\n    '& > div.panel-group': {\r\n      '& > form.formContainer.form-horizontal': {\r\n        '& .form-group': {\r\n          marginBottom: 5,\r\n        },\r\n        '& label.control-label.col-sm-2': {\r\n          textAlign: 'left',\r\n        },\r\n        '& #ManageLblListOption': {\r\n          width: '100%',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& #tagsDropDown': {\r\n      marginLeft: -15,\r\n      width: modalWidth,\r\n      '& + .error': {\r\n        marginLeft: -15, // same margin as #tagsDropDown\r\n        float: 'unset',\r\n      },\r\n    },\r\n\r\n    '& #conjunctionDropDown_EventCategory, #conjunctionDropDown_EventAction, #conjunctionDropDown_EventLabel, #conjunctionDropDown_EventValue': {\r\n      width: '100%',\r\n    },\r\n\r\n    '& #remarketingDescription': {\r\n      width: modalWidth,\r\n      resize: 'none',\r\n    },\r\n\r\n    '& #remarketingDescription + .annotation-text': {\r\n      width: modalWidth,\r\n      textAlign: 'right',\r\n    },\r\n\r\n    '& .remarketing-list-panel #whoToAddDropDown': {\r\n      width: modalWidth,\r\n    },\r\n\r\n    '& .panel-title': {\r\n      '& h3': {\r\n        fontSize: 16,\r\n        margin: 0,\r\n      },\r\n\r\n      '& .indented-section': {\r\n        marginLeft: 8,\r\n      },\r\n    },\r\n\r\n    '& .title-area': {\r\n      '& h3': {\r\n        fontSize: 14,\r\n        fontWeight: 400,\r\n      },\r\n    },\r\n\r\n    '& .h5': {\r\n      fontSize: 14,\r\n    },\r\n\r\n    '& .control-label': {\r\n      '& label': {\r\n        display: 'inline-block',\r\n      },\r\n    },\r\n\r\n    '& .policyContainer': {\r\n      '& h5': {\r\n        fontWeight: 400,\r\n        fontSize: 14,\r\n      },\r\n    },\r\n\r\n    '& input.membershipDuration': {\r\n      width: 50,\r\n    },\r\n\r\n    '& .membership-duration>div.col-sm-1': {\r\n      width: 80,\r\n    },\r\n\r\n    '& .radio label div': {\r\n      float: 'none',\r\n      display: 'inline-block',\r\n    },\r\n\r\n    '& .customer-list-detail-panel': {\r\n      '& >label.control-label': {\r\n        textAlign: 'left !important',\r\n      },\r\n\r\n      '& >div.col-sm-8': {\r\n        width: modalWidth,\r\n        marginLeft: '15px !important',\r\n\r\n        '& .customer-list-upload-selector': {\r\n          '& .radio': {\r\n            clear: 'both',\r\n\r\n            '& label': {\r\n              display: 'flow-root',\r\n            },\r\n\r\n            '& input[type=\"radio\"]': {\r\n              float: 'left',\r\n              marginRight: 0,\r\n              top: 0,\r\n            },\r\n\r\n            '& input[type=\"radio\"] + div': {\r\n              float: 'left',\r\n              marginLeft: 8,\r\n            },\r\n\r\n            '& .customer-list-file-picker': {\r\n              '& .row': {\r\n                marginBottom: 5,\r\n                marginLeft: 0,\r\n\r\n                '& .file-path-indicator': {\r\n                  height: '32px !important',\r\n                  width: '270px !important',\r\n                  overflow: 'hidden',\r\n                  textOverflow: 'ellipsis',\r\n                  whiteSpace: 'nowrap',\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n        '& .upload-selector-error': {\r\n          float: 'left',\r\n          marginLeft: 28,\r\n          marginBottom: 20,\r\n        },\r\n        '& .consent-line': {\r\n          marginLeft: 8,\r\n          '& .checkbox-inline': {\r\n            paddingLeft: 28,\r\n            '& input': {\r\n              marginLeft: -28,\r\n            },\r\n          },\r\n          '& .consent-line-error': {\r\n            marginLeft: 28,\r\n            marginBottom: 20,\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .form-group': {\r\n      '& .col-sm-10': {\r\n        '& .radio': {\r\n          '& >input[data-bind=\"checked: isInfiniteDuration\"]': {\r\n            float: 'left',\r\n            marginLeft: 0,\r\n          },\r\n\r\n          '& .col-sm-1': {\r\n            paddingLeft: 0,\r\n          },\r\n\r\n          '& .col-sm-1.form-control-static': {\r\n            width: 'auto',\r\n          },\r\n\r\n          '& .col-sm-1 > label': {\r\n            padding: '0 0 0 8px',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .shared-library-audience-scope-editor': {\r\n      width: modalWidth,\r\n\r\n      '& .sharing-scope-dblist': {\r\n        padding: 0,\r\n        marginTop: 10,\r\n\r\n        '& .alert.alert-info': {\r\n          width: '100%',\r\n          padding: 10,\r\n          marginBottom: 10,\r\n        },\r\n\r\n        '& > .form-horizontal.row': {\r\n          margin: 0,\r\n          width: modalWidth,\r\n          '& .form-group.row': {\r\n            marginLeft: 0,\r\n            marginRight: 0,\r\n          },\r\n        },\r\n\r\n        '& .col-lg-6': {\r\n          paddingRight: 0,\r\n\r\n          '& .col-lg-12': {\r\n            padding: 0,\r\n\r\n            '& .panel-form': {\r\n              border: '1px solid #BBB',\r\n              padding: 1,\r\n              height: '400px',\r\n\r\n              '& .panel-heading': {\r\n                backgroundColor: `${palette.white} !important`,\r\n                padding: '0 8px',\r\n                marginTop: '48px',\r\n                height: 36,\r\n\r\n                '& .panel-title': {\r\n                  marginTop: 0,\r\n                  fontSize: 16,\r\n                  lineHeight: '30px',\r\n                },\r\n              },\r\n\r\n              '& .panel-body': {\r\n                padding: 0,\r\n                position: 'unset',\r\n\r\n                '& .sharing-scope-tree-view': {\r\n                  '& .sharing-scope-tree-view__search-box': {\r\n                    position: 'absolute',\r\n                    top: 0,\r\n                    width: '100%',\r\n                    left: 0,\r\n                    height: '48px',\r\n\r\n                    '& .search-box__input-group': {\r\n                      position: 'relative',\r\n\r\n                      '& .search-box__input': {\r\n                        height: 48,\r\n                        paddingLeft: 48,\r\n                      },\r\n\r\n                      '& .search-box__icon': {\r\n                        fontFamily: iconFontFamily,\r\n                        fontSize: 16,\r\n                        color: palette.themePrimary,\r\n                        position: 'absolute',\r\n                        padding: 12,\r\n                        top: 0,\r\n                      },\r\n\r\n                      '& .search-box__icon:before': {\r\n                        content: '\"\\\\E721\"',\r\n                      },\r\n                    },\r\n                  },\r\n\r\n                  '& .sharing-scope-tree-view__add-all, .sharing-scope-tree-view__remove-all': {\r\n                    textAlign: 'right',\r\n                    paddingRight: 8,\r\n\r\n                    '& .arrow-button': {\r\n                      verticalAlign: 'middle',\r\n                    },\r\n\r\n                    '& .arrow-button.enabled': {\r\n                      paddingLeft: 5,\r\n                    },\r\n\r\n                    '& .arrow-button.remove': {\r\n                      paddingRight: 5,\r\n                    },\r\n                  },\r\n\r\n                  '& .sharing-scope-tree-view__hierarchy-tree': {\r\n                    paddingLeft: 8,\r\n\r\n                    '& .glyphicon-triangle-bottom': {\r\n                      fontFamily: iconFontFamily,\r\n                      fontSize: 12,\r\n                    },\r\n\r\n                    '& .glyphicon-triangle-bottom:before': {\r\n                      content: '\"\\\\E70D\"',\r\n                    },\r\n\r\n                    '& .glyphicon-triangle-right': {\r\n                      fontFamily: iconFontFamily,\r\n                      fontSize: 12,\r\n                    },\r\n\r\n                    '& .glyphicon-triangle-right:before': {\r\n                      content: '\"\\\\E76C\"',\r\n                    },\r\n\r\n                    '& .hierarchy-tree': {\r\n                      height: '290px',\r\n\r\n                      '& .glyphicon': {\r\n                        paddingRight: 5,\r\n                      },\r\n\r\n                      '& .ReactVirtualized__Grid': {\r\n                        overflow: 'scroll !important',\r\n\r\n                        '& .ReactVirtualized__Grid__innerScrollContainer': {\r\n                          overflow: 'visible !important',\r\n\r\n                          '& .tree-node': {\r\n                            whiteSpace: 'nowrap',\r\n                          },\r\n                        },\r\n                      },\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar':\r\n                    {\r\n                      width: 4,\r\n                      backgroundColor: 'transparent',\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar-track':\r\n                    {\r\n                      backgroundColor: 'transparent',\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar-thumb':\r\n                    {\r\n                      width: 4,\r\n                      height: 44,\r\n                      backgroundColor: '#EBEAE8',\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar:horizontal':\r\n                    {\r\n                      height: 4,\r\n                      backgroundColor: 'transparent',\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar-track:horizontal':\r\n                    {\r\n                      backgroundColor: 'transparent',\r\n                    },\r\n\r\n                    '& ::-webkit-scrollbar-thumb:horizontal':\r\n                    {\r\n                      width: 200,\r\n                      height: 4,\r\n                      backgroundColor: '#EBEAE8',\r\n                    },\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .col-lg-6:first-child': {\r\n          paddingLeft: 0,\r\n          paddingRight: 15,\r\n        },\r\n\r\n        '& .col-lg-6:last-child': {\r\n          paddingLeft: 0,\r\n          paddingRight: 0,\r\n        },\r\n      },\r\n\r\n      '& .sharing-scope-dblist .col-lg-6:nth-child(2)': {\r\n        '& .panel-heading': {\r\n          marginTop: '0 !important',\r\n        },\r\n\r\n        '& .hierarchy-tree': {\r\n          height: '338px !important',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .upload-panel': {\r\n      '& .panel-title + .form-group': {\r\n        margin: 0,\r\n      },\r\n      '& .result-panel-content': {\r\n        margin: '0 !important',\r\n        '& .result-table': {\r\n          width: 300,\r\n          '& thead, & tbody': {\r\n            background: palette.white,\r\n            borderLeft: 0,\r\n            borderRight: 0,\r\n            '& td:first-child': {\r\n              borderLeft: 0,\r\n            },\r\n            '& td:last-child': {\r\n              borderRight: 0,\r\n            },\r\n          },\r\n          '& td': {\r\n            padding: 12,\r\n            width: '50%',\r\n          },\r\n        },\r\n\r\n        '& .result-panel-progress': {\r\n          '& .progress-status': {\r\n            color: '#323130',\r\n            marginBottom: 5,\r\n            fontWeight: 600,\r\n          },\r\n          '& .progress-container': {\r\n            '& .progress-bar': {\r\n              backgroundColor: palette.themePrimary,\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .result-panel-success-statement': {\r\n          '& ul': {\r\n            padding: 0,\r\n            margin: '12px 0',\r\n            '& li': {\r\n              marginLeft: 20,\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .buttonsContainer .btn': {\r\n      marginRight: 12,\r\n    },\r\n  },\r\n\r\n  '.conditionsPanel': {\r\n    '& .col-sm-3': {\r\n      paddingRight: 0,\r\n    },\r\n\r\n    '& .filtercloseimage': {\r\n      fontFamily: iconFontFamily,\r\n      color: palette.neutralSecondary,\r\n      cursor: 'pointer',\r\n      right: -8,\r\n      top: 5,\r\n      position: 'relative',\r\n    },\r\n    '& .filtercloseimage:before': {\r\n      content: '\"\\\\E711\"',\r\n    },\r\n  },\r\n\r\n  '.product-audience-creation': {\r\n    '& .row-gap': {\r\n      '& input[type=\"number\"]': {\r\n        '-moz-appearance': 'textfield',\r\n      },\r\n\r\n      '& input[type=\"number\"]::-webkit-outer-spin-button, input[type=\"number\"]::-webkit-inner-spin-button': {\r\n        '-webkit-appearance': 'none !important',\r\n        margin: 0,\r\n      },\r\n\r\n      '& .form-inline': {\r\n        paddingLeft: 28,\r\n      },\r\n    },\r\n  },\r\n\r\n  '.uet-modal': {\r\n    zIndex: 10000,\r\n\r\n    '& .modal-dialog': {\r\n      maxWidth: 550,\r\n      padding: 0,\r\n\r\n      '& .modal-content': {\r\n\r\n        '& .modal-body': {\r\n          paddingBottom: 26,\r\n\r\n          '& .error': {\r\n            color: '#A80000',\r\n          },\r\n\r\n          '& .footerDoneCancel': {\r\n            '& .save-btn-cb': {\r\n              marginRight: 8,\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .condition-dialog': {\r\n      float: 'right',\r\n      right: 162,\r\n    },\r\n  },\r\n\r\n  '.k-list-container': {\r\n    background: palette.white,\r\n    border: '1px solid #E5E5E5',\r\n\r\n    '& .k-list': {\r\n      listStyle: 'none',\r\n      padding: 0,\r\n    },\r\n\r\n    '& .k-item': {\r\n      padding: 5,\r\n    },\r\n\r\n    '& .k-item:hover, .k-state-focused': {\r\n      background: '#E5E5E5',\r\n    },\r\n\r\n    '& .k-extra': {\r\n      borderTop: '1px solid #E5E5E5',\r\n    },\r\n  },\r\n\r\n  '.audience-creation-panel': {\r\n    '& .panel-body': {\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      padding: 16,\r\n      '& >div': {\r\n        flex: 1,\r\n        '& .audience-modal': {\r\n          height: '100%',\r\n          '& .modal-dialog': {\r\n            height: '100%',\r\n            '& .modal-content': {\r\n              height: '100%',\r\n              display: 'flex',\r\n              flexDirection: 'column',\r\n\r\n              '& .modal-body': {\r\n                flex: 1,\r\n                width: modalWidth,\r\n                '& .cnf-or-dnf-panel': {\r\n                  '& >.form-group': {\r\n                    marginLeft: '0px !important',\r\n                    '& select': {\r\n                      marginLeft: '0px !important',\r\n                    },\r\n                  },\r\n                  '& .condition-title': {\r\n                    marginLeft: '15px !important',\r\n                    paddingTop: '7px !important',\r\n                    paddingBottom: '5px !important',\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '.manage-tag-alert-panel': {\r\n    '& .panel-content': {\r\n      width: 550,\r\n      height: 'auto !important',\r\n      left: 'calc(50% - 275px)',\r\n      top: 'calc(50% - 90px) !important',\r\n\r\n      '& .panel-close-container': {\r\n        '& .panel-cancel-icon': {\r\n          paddingTop: 24,\r\n        },\r\n      },\r\n      '& .panel-header': {\r\n        paddingLeft: 24,\r\n        marginBottom: 0,\r\n      },\r\n      '& .panel-body': {\r\n        padding: 24,\r\n      },\r\n      '& .audience-modal.manage-tag-alert.in .modal-dialog': {\r\n        '& .modal-content .modal-footer': {\r\n          border: 'none',\r\n          paddingTop: 24,\r\n        },\r\n      },\r\n    },\r\n  },\r\n  '.modal-backdrop.in': {\r\n    zIndex: 'auto',\r\n    backgroundColor: palette.white,\r\n  },\r\n});\r\n","// this style is in right a panel, out of the feature scope, so use as the global pattern\r\nexport const uetTagSelectorStyles = (theme, { width = 800 } = {}) => ({\r\n  '.uet-tag-selector': {\r\n    width,\r\n\r\n    '& .col-sm-4': {\r\n      lineHeight: '32px',\r\n      width: '100%',\r\n\r\n      '& .link-manage-tag': {\r\n        marginLeft: 20,\r\n        float: 'right',\r\n      },\r\n    },\r\n\r\n    '& .create-tag-form': {\r\n      border: '1px solid #605E5C',\r\n      margin: '10px 0px',\r\n      paddingBottom: 10,\r\n\r\n      '& .panel': {\r\n        border: 0,\r\n        boxShadow: 'none',\r\n\r\n        '& .form-group': {\r\n          margin: 0,\r\n        },\r\n\r\n        '& .control-label': {\r\n          textAlign: 'left',\r\n        },\r\n\r\n        '& textarea': {\r\n          resize: 'none',\r\n        },\r\n\r\n        '& .col-sm-8': {\r\n          padding: '0px 15px',\r\n          width: '100%',\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","/* eslint-disable no-unused-vars */\r\nexport const kendoMultiSelectStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '.k-multiselect': {\r\n    border: `1px solid ${palette.neutralSecondary}`,\r\n    padding: 0,\r\n    minHeight: '32px',\r\n    height: 'auto',\r\n\r\n    '& .k-multiselect-wrap': {\r\n      height: 'auto',\r\n      zoom: 1,\r\n\r\n      '& .k-reset': {\r\n        margin: 0,\r\n        padding: 0,\r\n\r\n        '& .k-button': {\r\n          margin: 2,\r\n          padding: '0 8px',\r\n          fontSize: 14,\r\n          float: 'left',\r\n          listStyle: 'none',\r\n          height: '27px',\r\n          lineHeight: '27px',\r\n          backgroundColor: palette.neutralLight,\r\n\r\n          '& span:first-child': {\r\n            maxWidth: '180px',\r\n            overflowWrap: 'break-word',\r\n            wordBreak: 'break-word',\r\n            display: 'inline-block',\r\n            verticalAlign: 'middle',\r\n            overflow: 'hidden',\r\n            textOverflow: 'ellipsis',\r\n            whiteSpace: 'nowrap',\r\n            marginTop: '-4px',\r\n          },\r\n\r\n          '& .k-edit': {\r\n            margin: '1px 0 0 8px',\r\n            fontFamily: iconFontFamily,\r\n            fontSize: 14,\r\n            verticalAlign: 'middle',\r\n          },\r\n\r\n          '& .k-edit:before': {\r\n            content: '\"\\\\E711\"',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .k-input': {\r\n        height: '26px',\r\n        border: 0,\r\n        margin: '3px 20px 0 5px',\r\n        paddingLeft: 0,\r\n        maxWidth: 380,\r\n        float: 'left',\r\n        outline: 'none',\r\n      },\r\n    },\r\n\r\n    '& .k-multiselect-wrap:after': {\r\n      clear: 'both',\r\n      content: '\"\"',\r\n      display: 'block',\r\n      height: 0,\r\n      width: 0,\r\n    },\r\n  },\r\n\r\n});\r\n","// this style is in right a panel, out of the feature scope, so use as the global pattern\r\nimport { convertToLocalStyle } from './utils/convert-style';\r\nimport { scrollbarStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const audienceCombinedListStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.combined-list-detail-panel': {\r\n    width: 800,\r\n\r\n    '& > div:first-child > div:first-child': {\r\n\r\n      '& .dropdown.btn-group': {\r\n        marginLeft: '-8px',\r\n      },\r\n\r\n      '& #audience-set-relationship-selection': {\r\n        border: `1px solid ${palette.neutralSecondary}`,\r\n        padding: '0px 10px 0px 10px',\r\n        fontWeight: 400,\r\n        color: palette.neutralPrimary,\r\n      },\r\n\r\n      '& .dropdown-menu': {\r\n        width: '230px',\r\n      },\r\n    },\r\n\r\n    '& .double-list-box': {\r\n      padding: 0,\r\n      width: 778,\r\n      margin: '10px 0px',\r\n      ...convertToLocalStyle(scrollbarStyle({ palette })),\r\n\r\n      '& .category-action': {\r\n        marginTop: '0px !important',\r\n      },\r\n\r\n      '& .row': {\r\n        margin: 0,\r\n      },\r\n\r\n      '& .col-sm-12': {\r\n        padding: 0,\r\n      },\r\n\r\n      '& .col-sm-5 > .row:first-child': {\r\n        backgroundColor: 'transparent',\r\n      },\r\n\r\n      '& label.control-label': {\r\n        height: '30px',\r\n        textAlign: 'left',\r\n        lineHeight: '30px',\r\n        fontSize: '16px',\r\n        fontWeight: 600,\r\n        paddingTop: '5px',\r\n      },\r\n\r\n      '& .c113,.c118,.c1112': {\r\n        backgroundColor: 'transparent',\r\n      },\r\n\r\n      '& .button-add-remove': {\r\n        padding: 0,\r\n        backgroundColor: 'transparent',\r\n      },\r\n      '& .button-add-remove:hover': {\r\n        backgroundColor: 'transparent',\r\n      },\r\n\r\n      '& .button-back': {\r\n        backgroundColor: 'transparent',\r\n      },\r\n      '& .button-back:hover': {\r\n        backgroundColor: 'transparent',\r\n      },\r\n\r\n      '& .glyphicon': {\r\n        fontFamily: iconFontFamily,\r\n      },\r\n      '& .glyphicon-chevron-left:before': {\r\n        content: '\"\\\\E76B\"',\r\n      },\r\n      '& .glyphicon-chevron-right:before': {\r\n        content: '\"\\\\E76C\"',\r\n      },\r\n      '& .glyphicon-chevron-up:before': {\r\n        content: '\"\\\\E70E\"',\r\n      },\r\n      '& .glyphicon-chevron-down:before': {\r\n        content: '\"\\\\E70D\"',\r\n      },\r\n\r\n      '& .source': {\r\n        border: `1px solid ${palette.neutralSecondary}`,\r\n        padding: 0,\r\n        width: 384,\r\n\r\n        '& .search-box': {\r\n          height: 30,\r\n          width: 375,\r\n          margin: 0,\r\n\r\n          '& .inputGroup': {\r\n            height: 30,\r\n            width: 375,\r\n            margin: 0,\r\n            display: 'flex',\r\n\r\n            '& .iconba': {\r\n              fontFamily: iconFontFamily,\r\n            },\r\n\r\n            '& .iconba-Search': {\r\n              display: 'none',\r\n            },\r\n\r\n            '& input.input': {\r\n              margin: '0px 10px',\r\n              height: 30,\r\n              width: 355,\r\n              marginRight: -30,\r\n              paddingRight: 30,\r\n            },\r\n\r\n            '& .iconba-Forward': {\r\n              cursor: 'pointer',\r\n              visibility: 'visible !important',\r\n              marginTop: 2,\r\n              color: palette.themePrimary,\r\n              '&:before': {\r\n                content: '\"\\\\E721\"',\r\n              },\r\n              '&:hover': {\r\n                color: '#004578',\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .source-categories': {\r\n          margin: 0,\r\n          padding: 0,\r\n          width: 382,\r\n\r\n          '& .btn-group-vertical': {\r\n            marginTop: '5px',\r\n            width: 375,\r\n\r\n            '& button.source-category': {\r\n              margin: 0,\r\n              padding: 0,\r\n              height: 'auto',\r\n\r\n              '& .container-fluid': {\r\n                padding: 0,\r\n\r\n                '& .row': {\r\n                  margin: 0,\r\n\r\n                  '& .col-sm-11': {\r\n                    width: 340,\r\n                    padding: '0px 0px 0px 10px',\r\n\r\n                    '& .category-title': {\r\n                      fontSize: '14px',\r\n                      float: 'none',\r\n                      padding: 0,\r\n                    },\r\n\r\n                    '& .category-description': {\r\n                      fontSize: '12px',\r\n                      margin: 0,\r\n                    },\r\n                  },\r\n\r\n                  '& .col-sm-1': {\r\n                    float: 'right',\r\n                    display: 'inline-block',\r\n                    width: '30px',\r\n                    height: '30px',\r\n                    padding: '25px 0px 0px 0px',\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n\r\n        '& .source-list-box.container-fluid': {\r\n          padding: 0,\r\n\r\n          '& .glyphicon-chevron-right': {\r\n            color: palette.themePrimary,\r\n            fontSize: 14,\r\n          },\r\n          '& .glyphicon-chevron-right:before': {\r\n            content: '\"\\\\E710\"',\r\n          },\r\n\r\n          '& .row': {\r\n            margin: 0,\r\n            padding: 0,\r\n\r\n            '& .button-add-remove': {\r\n              padding: '0px 0px 0px 10px',\r\n            },\r\n\r\n            '& .item.container-fluid': {\r\n              padding: '0px 0px 0px 12px',\r\n              margin: 0,\r\n\r\n              '& .col-sm-10': {\r\n                padding: 0,\r\n                margin: 0,\r\n                width: 300,\r\n                wordBreak: 'break-all',\r\n              },\r\n\r\n              '& .col-sm-2': {\r\n                padding: 0,\r\n                margin: 0,\r\n                display: 'inline-block',\r\n                float: 'right',\r\n\r\n                '& .button-action.btn.btn-default': {\r\n                  padding: 0,\r\n                  maxHeight: 25,\r\n\r\n                  '& .glyphicon': {\r\n                    top: 0,\r\n                  },\r\n                },\r\n\r\n                '& .button-action.btn.btn-default:hover': {\r\n                  background: 'transparent',\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .selected': {\r\n        border: `1px solid ${palette.neutralSecondary}`,\r\n        padding: 0,\r\n        width: 384,\r\n\r\n        '& .selected-list-box-group.container-fluid': {\r\n          padding: 0,\r\n          margin: 0,\r\n\r\n          '& .selected-list-box.container-fluid': {\r\n            padding: '0px 0px 0px 10px',\r\n            margin: 0,\r\n\r\n            '& .glyphicon-chevron-left': {\r\n              color: palette.themePrimary,\r\n              fontSize: 14,\r\n            },\r\n            '& .glyphicon-chevron-left:before': {\r\n              content: '\"\\\\E738\"',\r\n            },\r\n\r\n            '& .row': {\r\n              margin: 0,\r\n              padding: 0,\r\n\r\n              '& .button-add-remove': {\r\n                backgroundColor: 'transparent',\r\n              },\r\n\r\n              '& .category-name-button': {\r\n                padding: 0,\r\n                border: 'none',\r\n              },\r\n              '& .category-name-button:hover': {\r\n                backgroundColor: 'transparent',\r\n              },\r\n              '& .category-name-button:focus': {\r\n                border: 'none',\r\n              },\r\n\r\n              '& .item.container-fluid': {\r\n                padding: 0,\r\n                margin: 0,\r\n                backgroundColor: 'transparent',\r\n                border: 'none',\r\n\r\n                '& .col-sm-2': {\r\n                  padding: 0,\r\n                  margin: 0,\r\n                  display: 'inline-block',\r\n                  float: 'left',\r\n                  maxHeight: 25,\r\n\r\n                  '& .button-action.btn.btn-default': {\r\n                    padding: 0,\r\n                    margin: '0px 0px 0px -28px',\r\n                    backgroundColor: 'transparent',\r\n\r\n                    '& .glyphicon': {\r\n                      top: 0,\r\n                    },\r\n                  },\r\n                },\r\n\r\n                '& .col-sm-10': {\r\n                  padding: 0,\r\n                  margin: '0px 0px 0px -37px',\r\n                  width: 300,\r\n                  wordBreak: 'break-all',\r\n                  display: 'inline-block',\r\n                },\r\n              },\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .add-new-audience-set-button': {\r\n      backgroundColor: palette.blue,\r\n      color: palette.white,\r\n    },\r\n\r\n    '& .existing-audience-set-container': {\r\n      '& .audience-set-panel-list-container': {\r\n        '& ol': {\r\n          padding: 0,\r\n        },\r\n        '& div': {\r\n          padding: 0,\r\n          marginBottom: 10,\r\n          overflow: 'hidden',\r\n          textOverflow: 'ellipsis',\r\n          whiteSpace: 'nowrap',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .operator-selector': {\r\n      marginLeft: 0,\r\n    },\r\n\r\n    '& .audience-set-edit-panel-buttons': {\r\n      marginLeft: 0,\r\n      '& .btn': {\r\n        marginRight: 12,\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const audienceExpressionStyle = () => ({\r\n  '.cnf-or-dnf-panel': {\r\n    '& .dnf-panel-body, & .cnf-panel-body': {\r\n      paddingLeft: '0px',\r\n    },\r\n    '& #ExpressionGroupDropDown': {\r\n      marginLeft: '15px',\r\n      marginTop: '8px',\r\n      width: '200px',\r\n    },\r\n    '& .conditionsPanel': {\r\n      background: '#F3F2F1',\r\n      marginTop: '8px',\r\n      paddingBottom: '12px',\r\n      '& .condition-title': {\r\n        fontWeight: 'normal',\r\n      },\r\n      '& .col-sm-3': {\r\n        paddingRight: '0px',\r\n        '& .remove-button, & .remove-button-readonly': {\r\n          display: 'flex',\r\n          '& .remove-text': {\r\n            marginTop: '4px',\r\n          },\r\n        },\r\n      },\r\n      '& input[disabled],.disabled': {\r\n        color: '#a19f9d',\r\n      },\r\n      '& .predicateDropDown, .conjunctionDropDown,.conditionText': {\r\n        backgroundColor: '#FFFFFF',\r\n      },\r\n      '& .filtercloseimage': {\r\n        top: '5px',\r\n        color: '#605e5c',\r\n        right: '8px',\r\n        cursor: 'pointer',\r\n        position: 'relative',\r\n        fontFamily: 'MsAds MDL2 Assets',\r\n        paddingLeft: '5px',\r\n      },\r\n      '& .filtercloseimage:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n\r\n    '& .rule-group-operator-button': {\r\n      marginTop: '15px',\r\n    },\r\n\r\n    '& .operatorButton': {\r\n      marginLeft: '15px',\r\n    },\r\n\r\n  },\r\n});\r\n","// this style is in modal dialog directly under <body>, out of the feature scope, so use as the global pattern\r\n// eslint-disable-next-line no-unused-vars\r\nexport const uetTagManageDialogStyles = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.manage-tag-alert.in': {\r\n\r\n    '& .modal-dialog': {\r\n\r\n      '& .modal-content': {\r\n        width: 550,\r\n        boxShadow: '-2px 0 8px rgba(0, 0, 0, 0.15)',\r\n        top: 'calc(50% - 90px)',\r\n        left: 'calc(50% - 275px)',\r\n        flex: '0 0 auto',\r\n        display: 'flex',\r\n        position: 'fixed',\r\n        flexDirection: 'column',\r\n\r\n        '& .modal-header': {\r\n          display: 'block',\r\n          padding: 24,\r\n\r\n          '& .close': {\r\n            marginTop: 8,\r\n          },\r\n\r\n          '& .dialog-close-button': {\r\n            fontFamily: iconFontFamily,\r\n            fontSize: '16px',\r\n            content: '\"\\\\E711\"',\r\n            float: 'right',\r\n            display: 'inline-block',\r\n          },\r\n          '& .dialog-close-button:before': {\r\n            content: '\"\\\\E711\"',\r\n          },\r\n        },\r\n\r\n        '& .modal-body': {\r\n          padding: '0px 24px',\r\n        },\r\n\r\n        '& .modal-footer': {\r\n          padding: 24,\r\n          border: 'none',\r\n        },\r\n      },\r\n    },\r\n  },\r\n  '.modal-backdrop.in': {\r\n    zIndex: 'auto',\r\n    backgroundColor: palette.white,\r\n  },\r\n});\r\n","export const dateFilterStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .date-filter': {\r\n    '& .dropdown-menu': {\r\n      border: `1px solid ${palette.neutralTertiary}`,\r\n      borderTop: 0,\r\n      borderRadius: 0,\r\n      minWidth: 390,\r\n      marginLeft: -15,\r\n      boxShadow: 'none',\r\n\r\n      '& .customDateRangePanel ': {\r\n        width: 200,\r\n        '& >div': {\r\n          display: 'flex',\r\n        },\r\n        '& .datePicker': {\r\n          // border: `1px solid ${palette.neutralTertiary}`,\r\n          border: 0,\r\n          background: palette.white,\r\n          '& input': {\r\n            height: 20,\r\n            paddingLeft: 4,\r\n            lineHeight: '16px',\r\n            fontSize: 12,\r\n            textAlign: 'center',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .customTimeRangePanel': {\r\n        width: 280,\r\n        '& >div': {\r\n          display: 'flex',\r\n          flexWrap: 'wrap',\r\n        },\r\n        '& .datePicker, .timePicker': {\r\n          // border: `1px solid ${palette.neutralTertiary}`,\r\n          border: 0,\r\n          background: palette.white,\r\n          width: 90,\r\n\r\n          '& input': {\r\n            height: 20,\r\n            paddingLeft: 4,\r\n            lineHeight: '16px',\r\n            fontSize: 12,\r\n            textAlign: 'center',\r\n          },\r\n        },\r\n        '& .errors': {\r\n          fontSize: 12,\r\n          color: palette.red,\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .dropdown-menu .dividerPanel': {\r\n      padding: '7px 10px',\r\n    },\r\n    '& .date-range a': {\r\n      padding: '7px 10px',\r\n      display: 'block',\r\n      clear: 'both',\r\n      fontSize: 14,\r\n      fontWeight: 'normal',\r\n      lineHeight: 1.45833333,\r\n      color: `${palette.neutralPrimary}`,\r\n      whiteSpace: 'nowrap',\r\n      cursor: 'pointer',\r\n      textDecoration: 'none',\r\n      '&:hover': {\r\n        'background-color': `${palette.neutralLight}`,\r\n      },\r\n    },\r\n    '& .glyphicon-offset-left5': {\r\n      marginRight: 5,\r\n      marginLeft: -5,\r\n      width: 12,\r\n    },\r\n    '& .dropdown-toggle': {\r\n      border: `1px solid ${palette.neutralTertiary}`,\r\n      borderRadius: 0,\r\n      boxShadow: 'none',\r\n      paddingLeft: 10,\r\n      minWidth: 390,\r\n      backgroundColor: `${palette.white} !important`,\r\n      '& .type-bold.primary-range': {\r\n        fontWeight: 400,\r\n      },\r\n    },\r\n    '& .dropdown-toggle > div': {\r\n      '&:after': {\r\n        content: '',\r\n        display: 'block',\r\n        clear: 'both',\r\n      },\r\n    },\r\n    '& .dropdown-toggle .glyphicon-triangle-bottom': {\r\n      position: 'absolute',\r\n      top: '50%',\r\n      transform: 'translateY(-50%)',\r\n    },\r\n    '& .dropdown-toggle .glyphicon-triangle-bottom:before': {\r\n      fontFamily: iconFontFamily,\r\n      content: '\"\\\\E787\"',\r\n    },\r\n    '& .toggle-button': {\r\n      width: 40,\r\n      height: 20,\r\n      padding: 4,\r\n      lineHeight: 10,\r\n    },\r\n  },\r\n});\r\n","import { merge } from '@bingads-webui-universal/primitive-utilities';\r\nimport { isFunction, some, isEmpty } from 'underscore';\r\n\r\nexport const mergeStyles = function mergeStyles({ theme }, ...styles) {\r\n  const resolvedStyles = styles.map(s => (isFunction(s) ? s(theme) : s));\r\n\r\n  if (some(resolvedStyles, isEmpty)) {\r\n    throw new Error('Cannot pass in empty style!');\r\n  }\r\n  // merge will keep other fields inside the objects and override the duplicated fields\r\n  // and thus, the sequence may affect the results\r\n  return merge({}, ...resolvedStyles);\r\n};\r\n","// this style is in right a panel, out of the feature scope, so use as the global pattern\r\n/* eslint-disable no-unused-vars */\r\nexport const keywordToolbarStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '.advanced-keyword-planner-toolbar': {\r\n    '& .btn': {\r\n      marginRight: 12,\r\n    },\r\n\r\n    '& .dropdown-menu': {\r\n      '& .grid-submenu-flyout': {\r\n        position: 'relative',\r\n\r\n        '& a': {\r\n          paddingRight: 24,\r\n        },\r\n\r\n        '& .caret-right': {\r\n          position: 'absolute',\r\n          right: 0,\r\n          marginRight: 8,\r\n        },\r\n\r\n        '& .caret-right:before': {\r\n          content: '\"\\\\E76C\"',\r\n        },\r\n\r\n        '& .adgroups-list': {\r\n          opacity: 1,\r\n          visibility: 'visible',\r\n          left: '100%',\r\n          top: 7,\r\n          display: 'none',\r\n          position: 'absolute',\r\n\r\n          '& a.grid-submenu-item': {\r\n            '& input.margin-right-little': {\r\n              zIndex: 1,\r\n            },\r\n          },\r\n\r\n          '& .normal-font': {\r\n            fontWeight: 400,\r\n            overflow: 'hidden',\r\n            textOverflow: 'ellipsis',\r\n            whiteSpace: 'nowrap',\r\n            width: 164,\r\n            padding: 0,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .grid-submenu-flyout:hover': {\r\n        '& .adgroups-list': {\r\n          display: 'block',\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n  '.advanced-keyword-planner.bingadsgrid': {\r\n    width: 800,\r\n\r\n    '& .grid-header-text': {\r\n      fontWeight: 'normal',\r\n    },\r\n\r\n    '& .sort-indicator.glyphicon-arrow-up:before': {\r\n      content: '\"\\\\EE68\"',\r\n    },\r\n\r\n    '& .sort-indicator.glyphicon-arrow-down:before': {\r\n      content: '\"\\\\EE69\"',\r\n    },\r\n\r\n    '& .table-container': {\r\n      '& .header': {\r\n        '& th[data-name=\"name\"]': {\r\n          minWidth: 200,\r\n        },\r\n        '& th[data-name=\"searchCount\"]': {\r\n          minWidth: 170,\r\n        },\r\n        '& th[data-name=\"averageCPC\"]': {\r\n          minWidth: 230,\r\n        },\r\n        '& th[data-name=\"competition\"]': {\r\n          minWidth: 140,\r\n        },\r\n        '& .helpbutton:before': {\r\n          position: 'static',\r\n        },\r\n      },\r\n\r\n      '& tbody': {\r\n        '& .table__row--keyword-planner': {\r\n          '& .grid-cell-text': {\r\n            wordBreak: 'normal',\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n\r\n});\r\n","import { underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const crudKeywordStyle = ({ palette = {} }) => ({\r\n  '& .add-keywords-root': {\r\n    marginLeft: '32px',\r\n    marginTop: '24px',\r\n    '& .create-keywords-errors .error': {\r\n      overflowWrap: 'break-word',\r\n      wordBreak: 'break-word',\r\n      width: 320,\r\n      marginLeft: 10,\r\n    },\r\n    '& .panel-heading': {\r\n      padding: 0,\r\n      '& .panel-title': {\r\n        fontSize: '20px',\r\n        fontWeight: 600,\r\n      },\r\n    },\r\n    '& .panel-body': {\r\n      padding: '0px 0px 0px 0px',\r\n      '& .displayNone': {\r\n        display: 'none',\r\n      },\r\n      '& .col-sm-4': {\r\n        paddingLeft: 0,\r\n        marginTop: '32px',\r\n        '& .ba-campaign-adgroup-selector': {\r\n          '& .dropdown-toggle': {\r\n            width: '330px',\r\n            '& .selected-item': {\r\n              maxWidth: '280px',\r\n            },\r\n          },\r\n          '& .list-selector-content': {\r\n            height: 390,\r\n          },\r\n        },\r\n        '& #Keyword_EnterKeywords_Label, & .helpbutton': {\r\n          display: 'inline-block',\r\n        },\r\n        '& textarea': {\r\n          width: '330px',\r\n        },\r\n        '& p': {\r\n          width: '330px',\r\n          ...underlineLinkStyle({ palette, elementLocator: ' > a.HelpTopic' }),\r\n        },\r\n        '& .alert': {\r\n          width: '330px',\r\n          ...underlineLinkStyle({ palette, elementLocator: ' a.HelpTopic' }),\r\n        },\r\n      },\r\n      '& .row': {\r\n        margin: 0,\r\n        '& .bid-section__container .form-group': {\r\n          margin: 0,\r\n\r\n          '& .input-group': {\r\n            width: '330px',\r\n\r\n            '& .bidlandscape_icon': {\r\n              position: 'absolute',\r\n              top: '50%',\r\n              transform: 'translate(-23px, -50%)',\r\n              cursor: 'pointer',\r\n              zIndex: 3,\r\n            },\r\n          },\r\n        },\r\n      },\r\n      '& .row.buttons-row': {\r\n        paddingTop: '16px',\r\n        paddingBottom: '16px',\r\n      },\r\n    },\r\n    '& #KoErrors': {\r\n      display: 'block',\r\n      lineHeight: '21px',\r\n    },\r\n    '& .create-keywords-panel__errors': {\r\n      overflowWrap: 'break-word',\r\n      wordBreak: 'break-word',\r\n      width: 330,\r\n    },\r\n  },\r\n});\r\n","import { convertToLocalStyle } from './utils/convert-style';\r\nimport { scrollbarStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const adsExtensionDoubleListStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n\r\n  '& .associations__container': {\r\n    padding: '0 14px',\r\n    margin: '0 15px',\r\n    width: 750,\r\n    ...convertToLocalStyle(scrollbarStyle({ palette })),\r\n\r\n    '& .panel': {\r\n      boxShadow: 'none',\r\n    },\r\n\r\n    '& .panel-body': {\r\n      padding: '0',\r\n\r\n      '& h5': {\r\n        fontSize: 14,\r\n        fontWeight: 'normal',\r\n        margin: '0 0 10px 0',\r\n      },\r\n    },\r\n\r\n    '& .extension-editor-dblist-container, .alert-danger': {\r\n      marginLeft: 2,\r\n    },\r\n\r\n    '& #editorErrors': {\r\n      paddingLeft: '8px',\r\n    },\r\n\r\n    '& .doubleListBox': {\r\n\r\n      '& .layout-columns-container ': {\r\n\r\n        minHeight: 261,\r\n\r\n        '& .layout-columns-element[data-bind=\"visible: features.filtering || showMaximumSelectionAlert\"]': {\r\n          display: 'flex',\r\n          flexDirection: 'column',\r\n\r\n          '& .form-group[data-bind=\"visible: features.filtering\"]': {\r\n            order: 2,\r\n          },\r\n\r\n          '& >div[data-bind=\"visible: showMaximumSelectionAlert\"]': {\r\n            order: 1,\r\n            marginBottom: 10.5,\r\n          },\r\n        },\r\n\r\n        '& .dlb-filter-alignPlaceholder': {\r\n          paddingBottom: 5,\r\n          paddingLeft: 15,\r\n          position: 'absolute',\r\n\r\n          '& .searchbox': {\r\n            width: 300,\r\n\r\n            '& .form-control': {\r\n              border: `1px solid ${palette.neutralSecondary}`,\r\n              borderBottom: 0,\r\n              height: 48,\r\n            },\r\n\r\n            '& .form-control-feedback': {\r\n              position: 'absolute',\r\n              left: 0,\r\n              lineHeight: '46px',\r\n              pointerEvents: 'auto',\r\n            },\r\n          },\r\n        },\r\n\r\n\r\n        '& .layout-columns-element:nth-child(2)': {\r\n          width: 300,\r\n          height: 'auto',\r\n          marginRight: 8,\r\n          marginTop: 45,\r\n          padding: 0,\r\n\r\n\r\n          '& .row.form-group': {\r\n            overflowY: 'auto',\r\n            height: 316,\r\n            border: `1px solid ${palette.neutralSecondary}`,\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element:nth-child(3)': {\r\n          width: 300,\r\n          border: `1px solid ${palette.neutralSecondary}`,\r\n          marginRight: 8,\r\n          padding: 0,\r\n          height: 361,\r\n\r\n          '& .panel-body': {\r\n            height: 213,\r\n            overflowY: 'auto',\r\n          },\r\n        },\r\n\r\n        '& .panel-heading': {\r\n          padding: 0,\r\n\r\n          '& .panel-title': {\r\n            fontSize: 14,\r\n            height: 'auto',\r\n            lineHeight: '36px',\r\n            padding: '0 8px',\r\n          },\r\n        },\r\n\r\n        '& .col-sm-12': {\r\n          padding: 0,\r\n        },\r\n      },\r\n\r\n      '& .dlbItem, & .dlb-source-header, & .dlb-selected-header, & .k-loading-mask': {\r\n        padding: '0 8px',\r\n      },\r\n\r\n      '& .dlbItem:hover': {\r\n        background: '#EDEBE9',\r\n      },\r\n\r\n      '& .dlbItem-content': {\r\n        minHeight: 36,\r\n        lineHeight: '36px',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n        whiteSpace: 'nowrap',\r\n\r\n        '& .wordwrap, .itemTemplate-text, .appListItem-text': {\r\n          overflow: 'hidden',\r\n          textOverflow: 'ellipsis',\r\n          whiteSpace: 'nowrap',\r\n        },\r\n\r\n        '& .type-bold': {\r\n          fontWeight: 600,\r\n        },\r\n      },\r\n\r\n      '& .dlbItem-actions': {\r\n        float: 'right',\r\n        marginTop: 8,\r\n      },\r\n\r\n      '& .arrow-button.enabled': {\r\n        marginLeft: 10,\r\n        overflow: 'visible !important',\r\n        textDecoration: 'none !important',\r\n        background: 'none !important',\r\n        fontFamily: iconFontFamily,\r\n        cursor: 'pointer',\r\n      },\r\n\r\n      '& .arrow-button.enabled:before': {\r\n        content: '\"\\\\E710\"',\r\n      },\r\n\r\n      '& .arrow-button.remove': {\r\n        marginRight: 10,\r\n        float: 'right',\r\n        fontFamily: iconFontFamily,\r\n        padding: 0,\r\n        marginTop: 8,\r\n      },\r\n\r\n      '& .arrow-button.remove:before': {\r\n        content: '\"\\\\E738\"',\r\n      },\r\n\r\n      '& .arrow-button.remove+a': {\r\n        width: 'fit-content',\r\n        padding: 0,\r\n      },\r\n\r\n      '& .itemTemplate-text': {\r\n        '& li': {\r\n          height: 32,\r\n          lineHeight: '32px',\r\n\r\n          '& a': {\r\n            verticalAlign: 'middle',\r\n          },\r\n        },\r\n      },\r\n\r\n\r\n      '& .pager': {\r\n        height: 'auto',\r\n\r\n        '& .pager-page': {\r\n          float: 'right',\r\n\r\n          '& span': {\r\n            marginLeft: 6,\r\n            verticalAlign: 'baseline',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .create-link-Container': {\r\n      marginLeft: 2,\r\n      marginTop: 10,\r\n\r\n      '& span': {\r\n        verticalAlign: 'top',\r\n        color: palette.themePrimary,\r\n      },\r\n\r\n      '& a.btn-create': {\r\n        position: 'relative',\r\n        left: -21,\r\n        paddingLeft: 21,\r\n        paddingRight: 8,\r\n      },\r\n    },\r\n\r\n    '& .save-bar': {\r\n      margin: '10px 0 20px 0',\r\n    },\r\n\r\n    '& .create-extension': {\r\n      padding: '8px',\r\n      position: 'relative',\r\n      left: '-8px',\r\n\r\n      '& .glyphicon-plus': {\r\n        marginRight: 12,\r\n        verticalAlign: 'inherit',\r\n      },\r\n    },\r\n\r\n    '& .campaign-adextension-list': {\r\n      width: 400,\r\n\r\n      '& .adExtension-previewbox div': {\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n        whiteSpace: 'nowrap',\r\n      },\r\n    },\r\n\r\n  },\r\n\r\n  '& div[data-type=\"StructuredSnippet\"]': {\r\n    '& .doubleListBox': {\r\n      '& .layout-columns-container ': {\r\n        '& .dlb-filter-alignPlaceholder': {\r\n          '& .searchbox': {\r\n            width: 346,\r\n          },\r\n        },\r\n\r\n        '& .layout-columns-element:nth-child(2)': {\r\n          width: 346,\r\n        },\r\n\r\n        '& .layout-columns-element:nth-child(3)': {\r\n          width: 346,\r\n        },\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const inputFieldStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  // Checkbox and radio style begin\r\n  'input[type=\"checkbox\"], input[type=\"radio\"]': {\r\n    outline: 'none',\r\n    appearance: 'none',\r\n    '-webkit-appearance': 'none',\r\n    '-moz-appearance': 'none',\r\n  },\r\n\r\n  'input[type=\"checkbox\"]': {\r\n    fontFamily: iconFontFamily,\r\n\r\n    '&:after': {\r\n      content: '\"\\\\E73E\"',\r\n    },\r\n  },\r\n\r\n  '.checkbox-inline, .checkbox>label, .radio-inline, .radio>label, label.checkbox, label.radio': {\r\n    padding: [8, 5, 8, 28],\r\n    left: -8,\r\n    position: 'relative',\r\n\r\n    '&:focus-within': {\r\n      outline: `1px solid ${palette.neutralSecondary}`,\r\n    },\r\n\r\n    '& input[type=\"checkbox\"]': {\r\n      marginTop: 3,\r\n\r\n      '&:focus': {\r\n        outline: 'none',\r\n      },\r\n    },\r\n  },\r\n  // Checkbox and radio style end\r\n\r\n  // Text style begin\r\n  'input[type=\"text\"]': {\r\n    textOverflow: 'ellipsis',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n\r\n    '&:hover': {\r\n      border: `1px solid ${palette.neutralPrimary}`,\r\n    },\r\n\r\n    '&:focus': {\r\n      border: `1px solid ${palette.themePrimary}`,\r\n    },\r\n  },\r\n  // Text style end\r\n});\r\n","import { crudAdStyle } from './crud-ad-style';\r\nimport { underlineLinkStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const summaryPageStyle = ({ palette = {} }) =>\r\n  ({\r\n    '& .recommendation-summary-view': {\r\n      '& >.toolbar': {\r\n        marginLeft: 10,\r\n        '& .upper-toolbar': {\r\n          display: 'inline-block',\r\n        },\r\n      },\r\n      '& .empty-buttons': {\r\n        marginTop: 36,\r\n      },\r\n\r\n      // empty view\r\n      '& .empty-filter-view': {\r\n        margin: '32px 10px 32px 32px',\r\n\r\n        '& .empty-icon': {\r\n          display: 'none',\r\n        },\r\n\r\n        '& .empty-details': {\r\n          color: '#605E5C',\r\n          gridRow: '1',\r\n          gridColumn: '2',\r\n          '& .empty-title': {\r\n            fontSize: 26,\r\n            margin: '0 0 8.5px',\r\n          },\r\n          '& .empty-sub-title': {\r\n            fontSize: 14,\r\n            fontWeight: 'normal',\r\n            ...underlineLinkStyle({ palette }),\r\n          },\r\n        },\r\n      },\r\n\r\n      // summary cards\r\n      '& .recommendation-summary-cards': {\r\n        width: '100%',\r\n        minWidth: 1000,\r\n        maxWidth: 1200,\r\n        transformStyle: 'preserve-3d',\r\n        '& .btn-primary': {\r\n          fontFamily: '\\'Segoe UI\\', Arial, sans-serif',\r\n          fontSize: 14,\r\n          height: '32px',\r\n          backgroundColor: palette.themePrimary,\r\n          color: palette.white,\r\n          padding: '5px 10px',\r\n          borderRadius: '2px',\r\n          margin: '0 5px 0 0',\r\n          '&:hover': {\r\n            backgroundColor: '#106ebe',\r\n          },\r\n        },\r\n        '& .recommendation-summary-card': {\r\n          minHeight: 120,\r\n          marginBottom: 20,\r\n          width: 500,\r\n          border: 'solid 1px #dddddd',\r\n          boxShadow: '0px 0.3px 0.9px rgba(0, 0, 0, 0.108), 0px 1.6px 3.6px rgba(0, 0, 0, 0.132)',\r\n          fontFamily: '\\'Segoe UI\\', Arial, sans-serif',\r\n          fontSize: 12,\r\n          color: '#333333',\r\n          display: 'grid',\r\n          gridTemplateColumns: '100%',\r\n          gridTemplateRows: 'repeat(4,auto)',\r\n          borderRadius: '2px',\r\n          '& .summary-header': {\r\n            paddingTop: '8px',\r\n            paddingRight: '16px',\r\n            paddingLeft: '16px',\r\n            paddingBottom: '8px',\r\n            gridRow: '1',\r\n            '& .recommendation-summary-header': {\r\n              display: 'grid',\r\n              gridTemplateColumns: '24px min-content auto 40px',\r\n              '-ms-grid-columns': '24px auto 1fr 15px',\r\n              gridTemplateRows: 24,\r\n              alignItems: 'center',\r\n              '& .summary-header-icon': {\r\n                gridColumn: '1',\r\n                justifySelf: 'stretch',\r\n                alignSelf: 'center',\r\n                position: 'relative',\r\n                borderRadius: '50%',\r\n                width: 24,\r\n                height: 24,\r\n                '& span': {\r\n                  color: palette.white,\r\n                  position: 'absolute',\r\n                  fontSize: 13,\r\n                  left: '25%',\r\n                  right: '25%',\r\n                  top: '25%',\r\n                  bottom: '25%',\r\n                },\r\n              },\r\n              '& .summary-header-title': {\r\n                padding: '2px 0 2px 8px',\r\n                gridColumn: '2',\r\n                fontSize: 14,\r\n                color: '#323130',\r\n                fontWeight: '500',\r\n                whiteSpace: 'nowrap',\r\n              },\r\n              '& .summary-header-label': {\r\n                alignSelf: 'center',\r\n                marginLeft: 8,\r\n                gridColumn: '3',\r\n                fontSize: 12,\r\n                background: '#EFF6FC',\r\n                border: '1px solid #FFFFFF',\r\n                boxSizing: 'border-box',\r\n                borderRadius: 12,\r\n                width: 48,\r\n                padding: '0 10px 0 10px',\r\n              },\r\n              '& .summary-header-menu': {\r\n                gridColumn: '4',\r\n                justifySelf: 'right',\r\n                '& .toggle-context-menu': {\r\n                  cursor: 'pointer',\r\n                },\r\n              },\r\n              '& .summary-context-menu': {\r\n                '& .bingads-popover': {\r\n                  background: '#fff',\r\n                  border: '1px solid #ddd',\r\n                  boxShadow: '3px 3px 4px #ddd',\r\n                  top: 'inherit !important',\r\n                  left: 'inherit !important',\r\n                  '& >ul': {\r\n                    minWidth: 170,\r\n                    listStyle: 'none',\r\n                    margin: '0',\r\n                    padding: '0',\r\n                    '& button': {\r\n                      margin: '0',\r\n                      padding: '7px 10px',\r\n                      color: '#333',\r\n                      fontWeight: 'normal',\r\n                      textAlign: 'left',\r\n                      '&[disabled]': {\r\n                        opacity: 0.5,\r\n                      },\r\n                      '&:hover': {\r\n                        textDecoration: 'none',\r\n                        background: '#e5e5e5',\r\n                      },\r\n                    },\r\n                  },\r\n                },\r\n              },\r\n            },\r\n          },\r\n          '& .summary-summary': {\r\n            paddingRight: '24px',\r\n            paddingLeft: '24px',\r\n            paddingTop: '24px',\r\n            borderTop: 'solid 1px #dddddd',\r\n            gridRow: '2',\r\n            gridTemplateRows: 'repeat(2,auto)',\r\n            '& .summary-banner': {\r\n              background: '#DDDDDD',\r\n              gridRow: '1',\r\n              '& .summary-banner-title': {\r\n                fontWeight: 'bold',\r\n                color: '#333333',\r\n                height: 30,\r\n                padding: '0px 20px',\r\n              },\r\n            },\r\n            '& .summary-summary-content': {\r\n              borderBottom: 'solid 1px #dddddd',\r\n              display: 'grid',\r\n              gridRow: '3',\r\n              paddingBottom: '38px',\r\n              gridTemplateColumns: '125px 16px',\r\n              '& .summary-info': {\r\n                gridColumn: '3',\r\n                '& .summary-description': {\r\n                  fontSize: 16,\r\n                  lineHeight: '22px',\r\n                  fontWeight: 'bold',\r\n                  color: '#323130',\r\n                },\r\n                '& .summary-pitching': {\r\n                  fontSize: 12,\r\n                  lineHeight: '16px',\r\n                  fontWeight: 'normal',\r\n                  color: '#797775',\r\n                  marginTop: 8,\r\n                  '& > span': {\r\n                    ...underlineLinkStyle({ palette }),\r\n                  },\r\n                },\r\n              },\r\n            },\r\n            '& .summary-estimates': {\r\n              gridColumn: '1',\r\n            },\r\n          },\r\n          '& .summary-sample': {\r\n            paddingRight: '16px',\r\n            paddingLeft: '16px',\r\n            paddingTop: '16px',\r\n            gridRow: '3',\r\n            '& .recommendation-sample': {\r\n              '& .sample-insight-title': {\r\n                fontSize: 13,\r\n                fontWeight: 'bold',\r\n                color: '#323130',\r\n              },\r\n              '& .sample-insight': {\r\n                margin: '10px 0 0 0',\r\n                fontSize: 13,\r\n                fontWeight: 'normal',\r\n                color: '#666666',\r\n              },\r\n              '& .sample-visual, & .sample-action-table': {\r\n                margin: '15px 0 0 0',\r\n              },\r\n              '& .sample-horizontal-separator': {\r\n                margin: '15px 0',\r\n                borderTop: '1px solid #ececec',\r\n              },\r\n              '& .sample-action-title': {\r\n                fontSize: 13,\r\n                fontWeight: 'normal',\r\n                color: '#333333',\r\n              },\r\n              '& .sample-more-recommendations': {\r\n                margin: '15px 0 0 0',\r\n              },\r\n              '& .sample-visual .MicrosoftMap': {\r\n                width: 'inherit !important',\r\n                height: 'inherit !important',\r\n                '& .InfoboxCustom': {\r\n                  pointerEvents: 'auto',\r\n                  /* background-color: #FFFFFF; */\r\n                  /* background: linear-gradient(0deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.6)), rgba(255, 255, 255, 0.25); */\r\n                  backgroundBlendMode: 'normal, luminosity',\r\n                  backdropFilter: 'blur(60px)',\r\n                  boxShadow: '0px 1.2px 3.6px rgba(0, 0, 0, 0.18), 0px 6.4px 14.4px rgba(0, 0, 0, 0.22)',\r\n                  padding: '10px',\r\n                  /* font-family: 'Segoe UI'; */\r\n                  '& .infobox-title': {\r\n                    fontSize: '14px',\r\n                    fontWeight: 600,\r\n                  },\r\n                },\r\n              },\r\n              // '& .sample-visual': {\r\n              //   '& .advisor-chart .vnext-legend-labels-container': {\r\n              //     display: 'none',\r\n              //   },\r\n              // },\r\n            },\r\n            ...crudAdStyle({ palette }), // TODO: remove duplicated crudAdStyle if toolbar style conflict is resolved\r\n            '& .ad-preview-header': {\r\n              padding: '15px 0 15px 0',\r\n            },\r\n            '& .recommendation-suggested-ads-column': {\r\n              padding: '10px 10px 10px 10px',\r\n              background: '#f5f5f5',\r\n              '& .recommendation-summary-ad-preview': {\r\n                width: '100%',\r\n                padding: '15px 15px 15px 15px',\r\n                background: palette.white,\r\n                border: 'solid 1px #dddddd',\r\n                boxShadow: '3px 3px 4px #dddddd',\r\n              },\r\n            },\r\n          },\r\n          '& .summary-footer': {\r\n            paddingBottom: '16px',\r\n            paddingRight: '16px',\r\n            paddingLeft: '16px',\r\n            margin: '20px 0 0 0',\r\n            gridRow: '4',\r\n            '& .primary-button': {\r\n              '& button': {\r\n                fontFamily: 'Segoe UI, Helvetica, sans-serif',\r\n                fontWeight: 'bold',\r\n                fontSize: 13,\r\n                backgroundColor: palette.themePrimary,\r\n                color: palette.white,\r\n                padding: '5px 10px',\r\n                margin: '0 8px 0 0',\r\n                '&:hover': {\r\n                  backgroundColor: '#006464',\r\n                },\r\n              },\r\n            },\r\n            '& .secondary-button': {\r\n              '& buuton': {\r\n                fontFamily: 'Segoe UI, Helvetica, sans-serif',\r\n                fontWeight: 'bold',\r\n                fontSize: 13,\r\n                backgroundColor: palette.white,\r\n                color: '#000000',\r\n                padding: '5px 10px',\r\n                border: '1px black solid',\r\n                margin: '0 8px 0 0',\r\n                '&:hover': {\r\n                  backgroundColor: '#a8a8a8',\r\n                },\r\n              },\r\n            },\r\n          },\r\n          '& .btn-default': {\r\n            position: 'absolute',\r\n            fontFamily: 'Segoe UI, Helvetica, sans-serif',\r\n            fontSize: 14,\r\n            padding: '5px 10px',\r\n            margin: '0 5px',\r\n            borderRadius: '2px',\r\n            height: '32px',\r\n            boxSizing: 'border-box',\r\n            border: '1px solid #8A8886',\r\n            fontWeight: 'bold',\r\n            '&[disabled]': {\r\n              opacity: 0.5,\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n    // recommendation visual\r\n    '& .action-table': {\r\n      marginTop: 10,\r\n      fontFamily: '\\'Segoe UI\\', Arial, sans-serif',\r\n      '& thead': {\r\n        '& th': {\r\n          fontSize: 12,\r\n          color: '#323130',\r\n          fontWeight: 'bold',\r\n          paddingBottom: '16px',\r\n        },\r\n      },\r\n      '& tbody': {\r\n        '& th': {\r\n          fontSize: 12,\r\n          color: '#323130',\r\n        },\r\n      },\r\n      '& tr td:last-child': { // will the impressions ever be negative?\r\n        color: '#107C10 !important',\r\n      },\r\n      '& tr td:not(:last-child)': {\r\n        color: '#333333',\r\n      },\r\n      '& td': {\r\n        fontSize: 13,\r\n        fontWeight: 'normal',\r\n        paddingBottom: 5,\r\n        verticalAlign: 'top',\r\n        'word-break': 'break-word',\r\n        '& .progress-bar-with-right-label': {\r\n          marginLeft: 10,\r\n          alignItems: 'center',\r\n          display: 'flex',\r\n          '& .progress': {\r\n            height: 7,\r\n            marginRight: 5,\r\n            gridRow: '1',\r\n            gridColumn: '1',\r\n            width: '100%',\r\n            marginBottom: 0,\r\n            '& .progress-bar': {\r\n              backgroundColor: '#0078D4',\r\n            },\r\n          },\r\n          '& .right-label': {\r\n            marginLeft: '7px',\r\n          },\r\n        },\r\n      },\r\n    },\r\n    '& .navbar-nav': {\r\n      '& .recommendation-download': {\r\n        paddingLeft: 20,\r\n        paddingTop: 6,\r\n        marginBottom: '-15px',\r\n        '& #button-download': {\r\n          background: '#FFFFFF',\r\n          border: '1px solid #8A8886',\r\n          boxSizing: 'border-box',\r\n          borderRadius: '2px',\r\n          fontSize: '14px',\r\n          marginLeft: '770px',\r\n          zIndex: '1',\r\n        },\r\n      },\r\n    },\r\n    '& .nav-pills': {\r\n      '& li': {\r\n        border: '1px solid #505050',\r\n        '&.active, &.active a': {\r\n          backgroundColor: '#e7f0f6',\r\n          color: '#666',\r\n          fontWeight: 'bold',\r\n        },\r\n        '&:nth-child(1)': {\r\n          borderRight: '0',\r\n        },\r\n        '& a': {\r\n          padding: '5px 20px 4px 20px',\r\n          border: 'none',\r\n          fontWeight: 'normal',\r\n        },\r\n      },\r\n    },\r\n    '& .filter-editor': {\r\n      '& .selector-container': {\r\n        '& button': {\r\n          border: '1px solid #BBB',\r\n          padding: '3px 5px 5px 5px',\r\n          textAlign: 'right',\r\n        },\r\n      },\r\n      '& .selector-v2': {\r\n        width: 400,\r\n      },\r\n    },\r\n\r\n  });\r\n","import CircleSolidSmall from '../media/CircleSolidSmall.svg';\r\nimport DiamondSolidSmall from '../media/DiamondSolidSmall.svg';\r\nimport TriangleDownSolidSmall from '../media/TriangleDownSolidSmall.svg';\r\nimport TriangleUpSolidSmall from '../media/TriangleUpSolidSmall.svg';\r\nimport SquareSolidSmall from '../media/SquareSolidSmall.svg';\r\n\r\nexport const competitionCardStyle = {\r\n  '.competition-card': {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    paddingBottom: 16,\r\n    '& .vnext-legend-labels-container': {\r\n      paddingLeft: 10,\r\n      paddingTop: 10,\r\n\r\n      '& ul': {\r\n        display: 'flex',\r\n        listStyle: 'none',\r\n        paddingLeft: 0,\r\n\r\n        '& li': {\r\n          minWidth: 60,\r\n\r\n          '& .legend-label': {\r\n            height: 20,\r\n            paddingLeft: '15PX !important',\r\n            backgroundRepeat: 'no-repeat',\r\n            backgroundPosition: 'left',\r\n            backgroundSize: '12px 20px',\r\n            marginRight: 5,\r\n            marginLeft: 5,\r\n            marginTop: 1,\r\n            cursor: 'pointer',\r\n            textOverflow: 'ellipsis',\r\n            overflow: 'hidden',\r\n            whiteSpace: 'nowrap',\r\n          },\r\n\r\n          '& .legend-label.disabled': {\r\n            opacity: '50%',\r\n          },\r\n        },\r\n        '& li:nth-child(1) .legend-label': {\r\n          backgroundImage: `url(\"${CircleSolidSmall}\")`,\r\n        },\r\n        '& li:nth-child(2) .legend-label': {\r\n          backgroundImage: `url(\"${DiamondSolidSmall}\")`,\r\n        },\r\n        '& li:nth-child(3) .legend-label': {\r\n          backgroundImage: `url(\"${TriangleDownSolidSmall}\")`,\r\n        },\r\n        '& li:nth-child(4) .legend-label': {\r\n          backgroundImage: `url(\"${TriangleUpSolidSmall}\")`,\r\n        },\r\n        '& li:nth-child(5) .legend-label': {\r\n          backgroundImage: `url(\"${SquareSolidSmall}\")`,\r\n        },\r\n      },\r\n    },\r\n    '& .highcharts-container': {\r\n      overflow: 'visible !important',\r\n\r\n      '& .chart-tooltip': {\r\n        fontFamily: '\"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif',\r\n        fontSize: 14,\r\n        position: 'absolute',\r\n        whiteSpace: 'nowrap',\r\n        color: 'rgb(51, 51, 51)',\r\n        padding: 15,\r\n        display: 'block',\r\n        boxShadow: '0 3.2px 7.2px 0 rgba(0,0,0,.132), 0 0.6px 1.8px 0 rgba(0,0,0,.108)',\r\n        backgroundColor: 'rgba(255, 255, 255, 0.95)',\r\n        '@supports (backdrop-filter: blur(60px))': {\r\n          backdropFilter: 'blur(60px)',\r\n          backgroundColor: 'rgba(255, 255, 255, 0.25)',\r\n        },\r\n\r\n        '& .segment-wrapper': {\r\n          marginBottom: 10,\r\n        },\r\n\r\n        '& .tooltip-name': {\r\n          marginLeft: 6,\r\n          maxWidth: 400,\r\n          wordWrap: 'break-word',\r\n          whiteSpace: 'normal',\r\n        },\r\n      },\r\n    },\r\n  },\r\n  '.competition-card .selector-container': {\r\n    float: 'left',\r\n    marginBottom: 12,\r\n  },\r\n  '.competition-card .competition_action .competition_clickLink': {\r\n    flex: '0 0 auto',\r\n  },\r\n  '.competition-card .competition-graph': {\r\n    flex: '1',\r\n  },\r\n  '.competition-card .tile-content .error-msg': {\r\n    paddingTop: 100,\r\n    display: 'flex',\r\n    width: '100%',\r\n    justifyContent: 'center',\r\n  },\r\n  '.competition-card .competition-empty': {\r\n    height: 234,\r\n    textAlign: 'center',\r\n    display: 'inline-block',\r\n    width: '100%',\r\n  },\r\n  '.competition-card .competition-empty .competition-empty-text': {\r\n    position: 'relative',\r\n    top: '50%',\r\n    W: 'translateY(-50%)',\r\n    M: 'translateY(-50%)',\r\n    transform: 'translateY(-50%)',\r\n  },\r\n  '.competition-card-in-toolbar': {\r\n    order: '2',\r\n    margin: '0 5px 0 10px',\r\n    display: 'flex',\r\n    alignItems: 'center',\r\n  },\r\n  '.competition-card .selector-container, .competition-card-in-toolbar .selector-container': {\r\n    lineHeight: 'normal !important',\r\n    fontWeight: '400',\r\n    fontSize: '14px !important',\r\n  },\r\n  '.competition-card .selector-container .btn, .competition-card-in-toolbar .selector-container .btn': {\r\n    border: '0',\r\n    padding: 1,\r\n    fontWeight: 'normal',\r\n  },\r\n  '.competition-card .selector-container .truncated, .competition-card-in-toolbar .selector-container .truncated': {\r\n    marginRight: 5,\r\n  },\r\n  '.competition-card .domain-selector-header, .competition-card-in-toolbar .domain-selector-header': {\r\n    paddingLeft: 10,\r\n    paddingRight: 10,\r\n    paddingTop: 10,\r\n  },\r\n  '.selector-v2': {\r\n    width: 300,\r\n    padding: '0',\r\n  },\r\n  '.selector-v2 .selector__filter': {\r\n    padding: 10,\r\n  },\r\n  '.selector-v2 .selector__main': {\r\n    width: '100%',\r\n  },\r\n  '.selector-v2 .selector__filter .search-box__input[type=\"text\"]': {\r\n    width: '100%',\r\n  },\r\n  '.selector-v2 .selector__data-host': {\r\n    position: 'relative',\r\n    minHeight: 40,\r\n  },\r\n  '.selector-v2 .selector__data-progress-backdrop': {\r\n    backgroundColor: 'white',\r\n    bottom: '0',\r\n    left: '0',\r\n    opacity: '0.8',\r\n    position: 'absolute',\r\n    right: '0',\r\n    top: '0',\r\n  },\r\n  '.selector-v2 .selector__data-progress-overlay': {\r\n    backgroundColor: 'white',\r\n    height: 40,\r\n    left: '50%',\r\n    lineHeight: '40px',\r\n    marginLeft: -60,\r\n    marginTop: -20,\r\n    overflowX: 'hidden',\r\n    overflowY: 'hidden',\r\n    position: 'absolute',\r\n    textAlign: 'center',\r\n    textOverflow: 'ellipsis',\r\n    top: '50%',\r\n    width: 120,\r\n    whiteSpace: 'pre',\r\n  },\r\n  '.selector-v2 .selector__data-progress-overlay span': {\r\n    verticalAlign: 'middle',\r\n  },\r\n  '.selector-v2 .selector__data': {\r\n    maxHeight: 360,\r\n    overflowY: 'auto',\r\n    position: 'relative',\r\n  },\r\n  '.selector-v2 .selector__data-progress-overlay .progress__icon': {\r\n    display: 'inline-block',\r\n    backgroundRepeat: 'no-repeat',\r\n    width: 40,\r\n    height: 30,\r\n  },\r\n  '.selector-v2 .selector__grid-host .table.grid': {\r\n    marginBottom: 0,\r\n    cursor: 'pointer',\r\n    overflow: 'hidden',\r\n  },\r\n  '.selector-v2 .selector__grid-host .table.grid > tbody > tr > td.table__cell--icon': {\r\n    width: 30,\r\n    paddingLeft: 7,\r\n  },\r\n  '.selector-v2 .selector__grid-host .table.grid > tbody > tr:hover': {\r\n    backgroundColor: '#f3f2f1',\r\n  },\r\n  '.selector-v2 .selector__grid-host .table.grid > thead > tr:hover': {\r\n    backgroundColor: '#f3f2f1',\r\n  },\r\n  '.selector-v2 .selector__grid-host td': {\r\n    whiteSpace: 'pre',\r\n  },\r\n  '.selector-v2 .selector__list-checkbox, .selector-v2 .column-tri-state-checkbox': {\r\n    height: '20px',\r\n    width: '20px',\r\n    '& > span:after': {\r\n      display: 'inline-block',\r\n      backgroundColor: '#fff',\r\n      border: '1px solid rgba(155, 155, 155, 0.57)',\r\n      borderRadius: '2px',\r\n      color: 'transparent',\r\n      content: '\"\\\\E73E\"',\r\n      height: '20px',\r\n      width: '20px',\r\n      fontFamily: 'MsAds MDL2 Assets',\r\n      fontSize: '16px',\r\n      fontWeight: '400',\r\n      paddingTop: '1px',\r\n      textAlign: 'center',\r\n    },\r\n    '& > span.glyphicon-ok:before': {\r\n      content: '\"\" !important',\r\n    },\r\n    '& > span.glyphicon-ok:after': {\r\n      content: '\"\\\\E73E\"',\r\n      backgroundColor: '#0078d4',\r\n      borderColor: '#0078d4',\r\n      color: '#fff',\r\n    },\r\n  },\r\n  '.selector-v2 .selector__no-data-message, .selector-v2 .selector__progress': {\r\n    lineHeight: '38px',\r\n    minHeight: 40,\r\n    paddingLeft: 10,\r\n  },\r\n  '.selector-v2 .selector__no-data-message span, .selector-v2 .selector__progress span': {\r\n    verticalAlign: 'middle',\r\n  },\r\n  '.selector-v2 .selector__no-data-message .progress__icon, .selector-v2 .selector__progress .progress__icon': {\r\n    display: 'inline-block',\r\n    backgroundRepeat: 'no-repeat',\r\n    width: 40,\r\n    height: 30,\r\n    marginRight: 10,\r\n  },\r\n  '.selector-v2 .selector__filter-pill': {\r\n    paddingLeft: 10,\r\n    marginTop: 10,\r\n  },\r\n  '.selector-v2 .selector__filter-pill .pill-control': {\r\n    display: 'inline-block',\r\n    marginBottom: '0',\r\n    verticalAlign: 'middle',\r\n  },\r\n  '.selector-v2 .selector__filter-pill .pill-control__list--links': {\r\n    listStyle: 'none',\r\n    marginBottom: '0',\r\n    paddingLeft: '0',\r\n  },\r\n  '.selector-v2 .selector__filter-pill .pill-control__list-item--links': {\r\n    float: 'left',\r\n    marginLeft: 7,\r\n  },\r\n  '.selector-v2 .selector__filter-pill .pill-control__list-item--links a': {\r\n    textDecoration: 'none',\r\n  },\r\n  '.selector-v2 .selector__filter-pill-label': {\r\n    verticalAlign: 'middle',\r\n  },\r\n  '.selector-v2 .search-box-v2 .search-box__input-group': {\r\n    position: 'relative',\r\n    overflow: 'hidden',\r\n  },\r\n  '.selector-v2 .search-box-v2 .search-box__input': {\r\n    padding: '3px 8px',\r\n    paddingLeft: 33,\r\n    border: '1px solid #bbbbbb',\r\n    display: 'block',\r\n    width: '100%',\r\n    fontSize: '1em',\r\n    '&:focus, &:hover': {\r\n      border: '1px #0078d4 solid',\r\n    },\r\n  },\r\n  '.selector-v2 .search-box-v2 .search-box__icon': {\r\n    position: 'absolute',\r\n    left: 6,\r\n    fontSize: 12,\r\n    color: '#605e5c',\r\n    fontFamily: '\"MsAds MDL2 Assets\"',\r\n    '&:hover': {\r\n      cursor: 'pointer',\r\n    },\r\n    '&:before': {\r\n      display: 'inline-block',\r\n      fontWeight: 'normal',\r\n      fontStyle: 'normal',\r\n      textDecoration: 'inherit',\r\n      speak: 'none',\r\n      fontVariant: 'normal',\r\n      textTransform: 'none',\r\n      verticalAlign: 'top',\r\n      lineHeight: 1,\r\n      WebkitFontSmoothing: 'antialiased',\r\n      MozOsxFontSmoothing: 'grayscale',\r\n      content: '\"\\\\E721\"',\r\n      fontSize: 14,\r\n      paddingTop: 4,\r\n    },\r\n    overflow: 'visible !important',\r\n    textDecoration: 'none !important',\r\n    background: 'none !important',\r\n    top: 0,\r\n    marginTop: 5,\r\n  },\r\n  '.selector-v2 .search-box-v2 .filter_search_icon_small': {\r\n    '&:before': {\r\n      fontSize: '14px',\r\n    },\r\n    height: '15px !important',\r\n    display: 'inline-block !important',\r\n    verticalAlign: 'text-top',\r\n    marginTop: '5px',\r\n  },\r\n};\r\n","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/CircleSolidSmall.87a8ad71.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/DiamondSolidSmall.32c2211a.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/TriangleDownSolidSmall.97f5618d.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/TriangleUpSolidSmall.4c620019.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/SquareSolidSmall.ee0390d2.svg\";","export const gmbImportEditorStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '#bulkEditContainer': {\r\n    '& h3': {\r\n      fontSize: 14,\r\n    },\r\n    '& .panel-title': {\r\n      fontSize: 14,\r\n    },\r\n    '& .steps-wizard__content.clearfix': {\r\n      marginTop: 10,\r\n      marginBottom: 10,\r\n    },\r\n    '& .select-account-grid': {\r\n      '& .table-bordered>thead>tr.grid-toolbar th': {\r\n        borderBottom: {\r\n          color: '#ddd',\r\n          width: 1,\r\n          style: 'solid',\r\n        },\r\n        borderLeft: 'none',\r\n        borderRight: 'none',\r\n      },\r\n      '& input[type=radio]:before': {\r\n        content: 'none',\r\n      },\r\n      '& input[type=radio]:after': {\r\n        content: 'none',\r\n      },\r\n      '& .viewport': {\r\n        overflow: 'visible !important',\r\n      },\r\n      '& table.table.table-bordered': {\r\n        border: 'none',\r\n      },\r\n      '& .search-box': {\r\n        '& button': {\r\n          width: 30,\r\n          marginTop: 1,\r\n          backgroundColor: '#fff',\r\n          border: 'none',\r\n        },\r\n        '& input': {\r\n          height: 32,\r\n          marginRight: -32,\r\n          paddingRight: 32,\r\n          fontWeight: 400,\r\n        },\r\n      },\r\n    },\r\n    '& .filter_search_icon_small': {\r\n      fontFamily: iconFontFamily,\r\n      color: palette.themePrimary,\r\n      fontSize: 14,\r\n    },\r\n    '& .filter_search_icon_small:before': {\r\n      content: '\"\\\\E721\"',\r\n    },\r\n    '& .filter-query-seperator': {\r\n      float: 'left',\r\n      width: 14,\r\n    },\r\n    '& .filter-query-remove': {\r\n      marginTop: 6,\r\n      float: 'left',\r\n      padding: 0,\r\n    },\r\n    '& .filter-query-or': {\r\n      marginTop: 5,\r\n      padding: 0,\r\n    },\r\n    '& .filter-query-attribute': {\r\n      marginBottom: 5,\r\n    },\r\n  },\r\n});\r\n","/* eslint-disable no-unused-vars */\r\nexport const experimentSettingsStyle = ({ palette = {} }) => ({\r\n  '.grey-out': {\r\n    position: 'relative',\r\n    color: '#999 !important',\r\n    '& a': {\r\n      color: '#999 !important',\r\n    },\r\n    '& input': {\r\n      color: '#999 !important',\r\n    },\r\n    '&::before': {\r\n      content: '\"\"',\r\n      display: 'block',\r\n      position: 'absolute',\r\n      width: '100%',\r\n      height: '100%',\r\n      zIndex: '1000',\r\n    },\r\n  },\r\n  '.experiment-budget-alert': {\r\n    '& .alert-info.form-group': {\r\n      lineHeight: 1.5,\r\n      margin: '8px 0',\r\n      padding: 8,\r\n\r\n      '& .alert-image': {\r\n        marginTop: 3,\r\n        float: 'left',\r\n      },\r\n    },\r\n  },\r\n});\r\n","import { paginationStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const productGroupsStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '#button-chart-toggle': {\r\n    '&.hidden': {\r\n      display: 'none',\r\n    },\r\n  },\r\n  '#product-groups-toolbar-divider': {\r\n    '&.hidden': {\r\n      display: 'none',\r\n    },\r\n  },\r\n  '.table-container table.table tbody': {\r\n    'overflow-wrap': 'break-word',\r\n    '& tr td': {\r\n      '& span': {\r\n        'word-break': 'break-word',\r\n      },\r\n      '& a': {\r\n        'word-break': 'break-word',\r\n      },\r\n    },\r\n  },\r\n  '.popover-edit-bid': {\r\n    '&>span': {\r\n      display: 'block',\r\n      marginBottom: 16,\r\n    },\r\n  },\r\n  '.grid-popupeditor .grid-error-list': {\r\n    padding: 0,\r\n  },\r\n  '.grid-bid-warning': {\r\n    '& .iconba-Warning': {\r\n      marginRight: 5,\r\n      color: '#D83B01',\r\n    },\r\n    '& .warning-count': {\r\n      color: '#D83B01',\r\n    },\r\n  },\r\n  '.product-group-popover-warning.popover-view': {\r\n    padding: 15,\r\n    '& .iconba.iconba-Cancel': {\r\n      fontSize: 14,\r\n      opacity: 1,\r\n    },\r\n    '& .popover-titled-content__title': {\r\n      color: '#D83B01',\r\n      '& .status_warning.iconba.iconba-Warning': {\r\n        marginRight: 5,\r\n      },\r\n    },\r\n    '& .popover-titled-content__body': {\r\n      '& .seperator': {\r\n        marginLeft: 5,\r\n        marginRight: 5,\r\n      },\r\n    },\r\n  },\r\n  'span.clickable.toggle-row.grid-expandable:before': {\r\n    content: '\"\\\\F08F\"',\r\n  },\r\n  'span.clickable.toggle-row.grid-expanded:before': {\r\n    content: '\"\\\\F08E\"',\r\n  },\r\n  'span.productgroup-row-icon.clickable.show-product-selector': {\r\n    'font-family': iconFontFamily,\r\n  },\r\n  'span.productgroup-row-icon.clickable.show-product-selector.add_icon:before': {\r\n    content: '\"\\\\E948\"',\r\n  },\r\n  'span.productgroup-row-icon.clickable.show-product-selector.grid-edit-icon:before': {\r\n    content: '\"\\\\E70F\"',\r\n  },\r\n  'nav li.toggle-button-disabled #button-chart-toggle': {\r\n    cursor: 'not-allowed',\r\n  },\r\n  '.table-page-container': {\r\n    '& .grid-column-DestinationUrl .grid-cell-text': {\r\n      wordBreak: 'break-all',\r\n    },\r\n    '& .grid-column-DestinationUrl .grid-editable-cell-container': {\r\n      alignItems: 'center',\r\n    },\r\n    '& .scope-navigator': {\r\n      wordBreak: 'break-all',\r\n    },\r\n    '& .flatten-path': {\r\n      fontFamily: 'Segoe UI',\r\n      fontSize: '12px',\r\n      lineHeight: '24px',\r\n      alignItems: 'center',\r\n      color: '#605E5C',\r\n    },\r\n    '& .view-switch-button': {\r\n      background: palette.white,\r\n      color: palette.themePrimary,\r\n      borderRadius: '0px 2px 2px 0px',\r\n      padding: '0px',\r\n      width: 32,\r\n      minWidth: 32,\r\n      minHeight: 32,\r\n      height: 32,\r\n    },\r\n    '& .view-switch-button.active': {\r\n      background: palette.themePrimary,\r\n      border: '0px',\r\n      borderRadius: '2px 0px 0px 2px',\r\n      '& .iconba': {\r\n        color: palette.white,\r\n      },\r\n    },\r\n    '& .view-switch-button.not-allowed': {\r\n      cursor: 'not-allowed',\r\n    },\r\n    '& .toolbar-container': {\r\n      '& .add-filter-button': {\r\n        paddingLeft: 0,\r\n        marginLeft: 0,\r\n      },\r\n    },\r\n  },\r\n  '.product-groups-page-list': {\r\n    display: 'flex',\r\n    '& .view-switch-button': {\r\n      borderRadius: '2px 0px 0px 2px',\r\n    },\r\n    '& .view-switch-button.active': {\r\n      borderRadius: '0px 2px 2px 0px',\r\n    },\r\n  },\r\n  '.product-groups-page-list-hide': {\r\n    display: 'none',\r\n  },\r\n  '.product-groups-page-hierarchy': {\r\n    display: 'flex',\r\n  },\r\n  '.product-groups-page-hierarchy-hide': {\r\n    display: 'none',\r\n  },\r\n  '.table-container table.table': {\r\n    '& tbody tr td:nth-child(2)': {\r\n      borderRight: '1px solid #EDEBE9 !important',\r\n    },\r\n    '& thead.header tr th:nth-child(2)': {\r\n      borderRight: '1px solid #EDEBE9 !important',\r\n    },\r\n    '& span.clickable.toggle-row': {\r\n      '&.grid-expanded, &.grid-expandable': {\r\n        float: 'left',\r\n        marginRight: 5,\r\n        marginTop: 3,\r\n      },\r\n    },\r\n    '& tbody tr td > div.grid-editable-cell-container': {\r\n      display: 'flex',\r\n      justifyContent: 'flex-end !important',\r\n    },\r\n    '.product-condition-cell .productgroup-icon-container': {\r\n      float: 'right',\r\n    },\r\n  },\r\n  '.popover-view__content': {\r\n    background: '#fff',\r\n    fontFamily: 'Segoe UI',\r\n    fontStyle: 'normal',\r\n    fontWeight: 'normal',\r\n    '& .productgroup-detail': {\r\n      margin: '13px 28px 17px 28px',\r\n      '& .partition-trail': {\r\n        fontSize: '12px',\r\n        lineHeight: '24px',\r\n        display: 'flex',\r\n        alignItems: 'center',\r\n        color: '#605E5C',\r\n      },\r\n      '& .current-attribute': {\r\n        fontWeight: 600,\r\n        fontSize: '20px',\r\n        lineHeight: '28px',\r\n        color: '#323130',\r\n      },\r\n      '& .product-sample-description': {\r\n        fontSize: '12px',\r\n        lineHeight: '22px',\r\n        color: '#323130',\r\n      },\r\n      '& .view-full-product': {\r\n        marginTop: 15,\r\n        '& > a': {\r\n          fontSize: '14px',\r\n          lineHeight: '19px',\r\n          color: '#0078D4',\r\n        },\r\n      },\r\n      '& .product-sample-id': {\r\n        fontWeight: 600,\r\n        fontSize: 14,\r\n      },\r\n      '& .product-sample-title': {\r\n        fontSize: 14,\r\n      },\r\n    },\r\n  },\r\n  '.blocker-container': {\r\n    '& .blocker': {\r\n      zIndex: 100002,\r\n    },\r\n  },\r\n  // for DoubleListBox\r\n  '#productgroups-subdivider': {\r\n\r\n    '& .panel-footer': {\r\n      backgroundColor: 'white',\r\n      borderTop: '0px',\r\n\r\n      '& .cancel-button': {\r\n        marginLeft: 10,\r\n      },\r\n    },\r\n\r\n    '& .row': {\r\n      margin: 0,\r\n    },\r\n\r\n    '& .col-sm-12': {\r\n      padding: 0,\r\n    },\r\n\r\n    '& .panel-heading': {\r\n      fontWeight: 'normal',\r\n    },\r\n\r\n    '& .form-control': {\r\n      minWidth: 180,\r\n      width: 'fit-content',\r\n    },\r\n\r\n    '& .doubleListBox': {\r\n\r\n      '& .selector-column-header': {\r\n        float: 'right',\r\n        width: 80,\r\n        textAlign: 'right',\r\n      },\r\n      '& .selector-column-header-last': {\r\n        float: 'right',\r\n        width: 80,\r\n        textAlign: 'right',\r\n        marginRight: 30,\r\n      },\r\n      '& .selector-column-value': {\r\n        float: 'right',\r\n        width: 80,\r\n        textAlign: 'right',\r\n      },\r\n      '& .selector-column-value-last': {\r\n        float: 'right',\r\n        width: 80,\r\n        textAlign: 'right',\r\n        marginRight: 30,\r\n      },\r\n\r\n      '& .dlb-filter-alignPlaceholder': {\r\n        width: 608,\r\n\r\n        '& .searchbox-input': {\r\n          paddingLeft: 48,\r\n          height: 48,\r\n          width: '100%',\r\n        },\r\n\r\n        '& .form-control-feedback': {\r\n          left: 0,\r\n          lineHeight: '48px',\r\n          height: 48,\r\n          marginLeft: 16,\r\n          position: 'absolute',\r\n          width: 'fit-content',\r\n        },\r\n      },\r\n\r\n      '& .layout-columns-element': {\r\n        boxSizing: 'border-box',\r\n        padding: 0,\r\n\r\n        '& ~ .layout-columns-element': {\r\n          paddingLeft: 7.5,\r\n        },\r\n\r\n        '& .panel-form': {\r\n          border: [1, 'solid', '#BBB'],\r\n          boxShadow: 'none',\r\n          padding: 0,\r\n\r\n          '& .panel-heading': {\r\n            backgroundColor: `${palette.white}`,\r\n            border: 'none',\r\n            padding: '0 8px',\r\n\r\n            '& .panel-title': {\r\n              fontWeight: 600,\r\n            },\r\n          },\r\n\r\n          '& .panel-body': {\r\n            padding: 0,\r\n\r\n            '& .custom-values': {\r\n              height: 200,\r\n              width: '100%',\r\n            },\r\n\r\n            '& .add-custom-button': {\r\n              margin: '10px 8px',\r\n              float: 'right',\r\n            },\r\n\r\n            '& .dlb-source-summary': {\r\n              padding: '0 8px',\r\n            },\r\n\r\n            '& .dlb-selectAll, .dlb-deselectAll': {\r\n              color: `${palette.themePrimary}`,\r\n              padding: '0 10px',\r\n              right: 8,\r\n              zIndex: 1,\r\n\r\n              '& .arrow-button': {\r\n                display: 'none',\r\n              },\r\n            },\r\n\r\n            '& .dlb-source, & .dlb-selected': {\r\n              height: 228,\r\n              overflowX: 'auto',\r\n              overflowY: 'auto',\r\n\r\n              '& .dlbItem': {\r\n                minHeight: 28,\r\n                position: 'relative',\r\n                padding: '0 8px',\r\n\r\n                '& .glyphicon-triangle-right, & .glyphicon-triangle-bottom': {\r\n                  marginRight: 5,\r\n                },\r\n\r\n                '& .dlbItem-actions': {\r\n                  position: 'absolute',\r\n                  right: 8,\r\n                  top: 5,\r\n                  '& .arrow-button.enabled:before': {\r\n                    fontFamily: iconFontFamily,\r\n                    content: '\"\\\\E710\"',\r\n                  },\r\n\r\n                  '& .arrow-button.disabled:before': {\r\n                    content: '\"\"',\r\n                  },\r\n                  '& .arrow-button.remove:before': {\r\n                    fontFamily: iconFontFamily,\r\n                    content: '\"\\\\E738\"',\r\n                  },\r\n                },\r\n\r\n                '& .dlbItem-content': {\r\n                  minHeight: 28,\r\n                  padding: '4px 0',\r\n\r\n                  '& table': {\r\n                    width: 510,\r\n\r\n                    '& .tree-indent': {\r\n                      paddingLeft: 10,\r\n                    },\r\n                  },\r\n\r\n                  '& table > tbody > tr > td:nth-child(1)': {\r\n                    textAlign: 'left',\r\n                    width: 'auto',\r\n                  },\r\n                  '& table > tbody > tr > td:nth-child(2)': {\r\n                    textAlign: 'right',\r\n                    width: 120,\r\n                  },\r\n\r\n                  '& span': {\r\n                    wordBreak: 'break-all',\r\n                  },\r\n                },\r\n              },\r\n            },\r\n\r\n            '& ::-webkit-scrollbar':\r\n            {\r\n              width: 4,\r\n              backgroundColor: 'transparent',\r\n            },\r\n\r\n            '& ::-webkit-scrollbar-track':\r\n            {\r\n              backgroundColor: 'transparent',\r\n            },\r\n\r\n            '& ::-webkit-scrollbar-thumb':\r\n            {\r\n              width: 4,\r\n              height: 44,\r\n              backgroundColor: '#EBEAE8',\r\n            },\r\n\r\n            '& ::-webkit-scrollbar:horizontal':\r\n            {\r\n              height: 4,\r\n              backgroundColor: 'transparent',\r\n            },\r\n\r\n            '& ::-webkit-scrollbar-track:horizontal':\r\n            {\r\n              backgroundColor: 'transparent',\r\n            },\r\n\r\n            '& ::-webkit-scrollbar-thumb:horizontal':\r\n            {\r\n              width: 200,\r\n              height: 4,\r\n              backgroundColor: '#EBEAE8',\r\n            },\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .dlb-pager-container': {\r\n        width: 'fit-content',\r\n        float: 'right',\r\n        marginTop: 8,\r\n\r\n        '& .pager': {\r\n          height: 'auto',\r\n        },\r\n      },\r\n    },\r\n    ...paginationStyle({ palette, iconFontFamily }),\r\n  },\r\n  '.gotoCampaignSettings': {\r\n    textDecoration: 'underline',\r\n  },\r\n});\r\n","import { buttonInputStyle } from './shared-styles-from-theme-fluent';\r\n\r\nexport const gridPopUpEditorStyle = ({ palette }) => ({\r\n  '[role=\"dialog\"].popup-editor': {\r\n    padding: '24px 16px',\r\n    zIndex: '10',\r\n    backgroundColor: '#FFFFFF',\r\n    boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n\r\n    '& .form-validation-container[data-property=\"Name\"]': {\r\n      width: '200px',\r\n    },\r\n  },\r\n  '[role=\"dialog\"].popup-editor .form-inline .form-group': {\r\n    display: 'block !important',\r\n  },\r\n  '.form-group ~ .form-group': {\r\n    marginTop: 16,\r\n  },\r\n  '.popup-editor .btn ~ .btn': {\r\n    marginLeft: 8,\r\n  },\r\n  '.grid-popupeditor': {\r\n    ...buttonInputStyle({ palette }),\r\n    position: 'absolute',\r\n    zIndex: '10',\r\n    backgroundColor: '#FFFFFF',\r\n    boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n    minHeight: 50,\r\n    padding: '24px 16px',\r\n    width: 'fit-content',\r\n    display: 'table',\r\n  },\r\n  '.grid-popupeditor.inline-budget-editor-popup': {\r\n    paddingTop: '16px',\r\n    paddingBottom: '16px',\r\n    paddingLeft: '24px',\r\n    paddingRight: '16px',\r\n  },\r\n  '.grid-popupeditor .btn ~ .btn': {\r\n    marginLeft: 8,\r\n  },\r\n  '.grid-popupeditor label': {\r\n    display: 'inline-block',\r\n  },\r\n  '.popup-editor, .grid-popupeditor': {\r\n    '& ul.help-block.error, ul[role=\"alert\"], .grid-error-list': {\r\n      listStyle: 'none',\r\n      paddingLeft: 0,\r\n      margin: 0,\r\n      '& > li': {\r\n        margin: '5px 0px 0px 0px',\r\n      },\r\n      '& > li:empty': {\r\n        margin: 0,\r\n      },\r\n    },\r\n  },\r\n  // body has default height of 0 as components in it has position: absolute\r\n  // give it a height of view port so that grid inline-edit popup can be positioned correctly\r\n  body: {\r\n    height: '100vh',\r\n  },\r\n  '.popup-editor .error, .grid-popupeditor .error, .grid-popupeditor .font-error, .k-widget .error, .popup-editor .is-error': {\r\n    color: '#A80000',\r\n    fontSize: 12,\r\n  },\r\n});\r\n","import { extend } from 'underscore';\r\nimport { getBlockerStyle } from './shared-styles-from-theme-fluent';\r\n\r\nconst selector = ({ palette }) => ({\r\n  width: 300,\r\n  '& .selector-v2': {\r\n    '& .table.table--fixed-layout': {\r\n      tableLayout: 'fixed',\r\n    },\r\n    '& .selector__data-progress-backdrop': {\r\n      backgroundColor: 'white',\r\n      bottom: 0,\r\n      left: 0,\r\n      opacity: 0.8,\r\n      position: 'absolute',\r\n      right: 0,\r\n      top: 0,\r\n    },\r\n    '& .selector__data-progress-overlay': {\r\n      backgroundColor: 'white',\r\n      height: 40,\r\n      left: '50%',\r\n      lineHeight: '40px',\r\n      marginLeft: '-60px',\r\n      marginTop: '-20px',\r\n      overflowX: 'hidden',\r\n      overflowY: 'hidden',\r\n      position: 'absolute',\r\n      textAlign: 'center',\r\n      textOverflow: 'ellipsis',\r\n      top: '50%',\r\n      width: 120,\r\n      whiteSpace: 'pre',\r\n      '& .progress__icon': extend({\r\n        display: 'inline-block',\r\n        backgroundRepeat: 'no-repeat',\r\n      }, getBlockerStyle(30, palette)),\r\n      '& span': {\r\n        verticalAlign: 'middle',\r\n      },\r\n    },\r\n  },\r\n  '& .selector-v2 .selector__data': {\r\n    maxHeight: '360px',\r\n    overflowY: 'auto',\r\n    position: 'relative',\r\n  },\r\n  '& .search-box-v2': {\r\n    height: 48,\r\n    '& .search-box__input-group': {\r\n      paddingBottom: 5,\r\n      borderBottom: `1px solid ${palette.neutralPrimary}`,\r\n      '&:active, &:focus, &:hover': {\r\n        borderBottom: `1px solid ${palette.themePrimary}`,\r\n      },\r\n    },\r\n    '& .search-box__icon.iconba.iconba-Search': {\r\n      marginRight: 16,\r\n      paddingLeft: 16,\r\n      paddingTop: 12,\r\n      paddingBottom: 16,\r\n      display: 'inline-block',\r\n      float: 'left',\r\n    },\r\n    '& .search-box__input.form-control': {\r\n      paddingTop: 16,\r\n      marginLeft: '0px !important',\r\n      width: 'auto !important',\r\n      display: 'inline-block',\r\n      border: '0',\r\n    },\r\n  },\r\n  '& .column-tri-state-checkbox': {\r\n    lineHeight: '11px',\r\n    '& span': {\r\n      width: 20,\r\n      height: 20,\r\n      border: `1px solid ${palette.neutralPrimary}`,\r\n      boxSizing: 'border-box',\r\n      borderRadius: 2,\r\n      display: 'inline-block',\r\n    },\r\n    '& .glyphicon': {\r\n      position: 'initial !important',\r\n      padding: '1px 0 0 0',\r\n      margin: '0 !important',\r\n      fontFamily: 'MsAds MDL2 Assets !important',\r\n    },\r\n    '& .glyphicon.glyphicon-ok': {\r\n      backgroundColor: palette.themePrimary,\r\n    },\r\n    '& .glyphicon.glyphicon-ok:before': {\r\n      paddingLeft: '1px',\r\n      fontSize: 16,\r\n      lineHeight: '16px',\r\n      content: '\"\\\\E73E\" !important',\r\n      color: 'white',\r\n    },\r\n    '& .glyphicon.glyphicon-minus': {\r\n      color: palette.themePrimary,\r\n      border: `1px solid ${palette.neutralDark} !important`,\r\n    },\r\n    '& .glyphicon.glyphicon-minus:before': {\r\n      content: '\"\\\\E73C\" !important',\r\n      paddingLeft: '1px',\r\n      fontSize: 16,\r\n      lineHeight: '16px',\r\n      color: palette.themePrimary,\r\n    },\r\n  },\r\n  '& .table__cell--menu-item-style.table__cell--icon': {\r\n    width: 36,\r\n    height: 36,\r\n    border: 'none',\r\n  },\r\n  '& .table__cell--menu-item-style.table__cell--ellipsis-overflow': {\r\n    height: '36px !important',\r\n    paddingLeft: 0,\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n    fontSize: '14px !important',\r\n    border: 'none',\r\n  },\r\n  '& li.action': {\r\n    height: 36,\r\n    '& a': {\r\n      padding: '0px 10px',\r\n      lineHeight: '36px',\r\n      fontSize: 14,\r\n      color: `${palette.neutralPrimary} !important`,\r\n      display: 'block',\r\n    },\r\n    '&:hover': {\r\n      backgroundColor: palette.neutralLighter,\r\n      color: palette.neutralDark,\r\n    },\r\n  },\r\n  '& .divider': {\r\n    background: palette.neutralTertiaryAlt,\r\n    display: 'block',\r\n  },\r\n  '& .table': {\r\n    marginBottom: '0',\r\n  },\r\n});\r\n\r\nexport const predicateValueEditorStyle = {\r\n  selector,\r\n};\r\n","export const getUETTagViewerStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.tag-viewer': {\r\n    '& .modal-dialog': {\r\n      width: 900,\r\n      'max-width': 'none',\r\n      '& .modal-header': {\r\n        display: 'block',\r\n\r\n        '& .dialog-close-button': {\r\n          fontFamily: iconFontFamily,\r\n          fontSize: '16px',\r\n          content: '\"\\\\E711\"',\r\n          float: 'right',\r\n          display: 'inline-block',\r\n        },\r\n        '& .dialog-close-button:before': {\r\n          content: '\"\\\\E711\"',\r\n        },\r\n      },\r\n      '& .modal-body': {\r\n        '& a': {\r\n          textDecoration: 'underline',\r\n        },\r\n        '& .form-group': {\r\n          'margin-top': 2,\r\n          'margin-bottom': 15,\r\n          '& .form-control-static': {\r\n            padding: 0,\r\n            'min-height': 0,\r\n          },\r\n          '& .tab-content .form-control.active.tab-pane': {\r\n            height: 130,\r\n            'border-color': palette.neutralTertiary,\r\n          },\r\n          '& textarea': {\r\n            resize: 'none',\r\n          },\r\n        },\r\n        '& .row': {\r\n          'font-size': 13,\r\n          '& h6.type-bold': {\r\n            'font-weight': 'bold',\r\n          },\r\n          '& h6.colon:after': {\r\n            content: '\": \"',\r\n          },\r\n          '& h6': {\r\n            'padding-right': [0, '!important'],\r\n          },\r\n          '& h6.tag-name': {\r\n            overflow: 'hidden',\r\n            'text-overflow': 'ellipsis',\r\n            'white-space': 'nowrap',\r\n          },\r\n        },\r\n        '& ul.btn-group': {\r\n          'list-style': 'none',\r\n          'padding-left': 0,\r\n          'margin-bottom': 0,\r\n          '& .active>a': {\r\n            'font-weight': 'bold',\r\n            'background-color': '#E7F0F6',\r\n          },\r\n        },\r\n      },\r\n      '& .modal-footer': {\r\n        '& .btn': {\r\n          'min-width': 60,\r\n          width: 'fit-content',\r\n        },\r\n        '& .pull-right': {\r\n          float: ['left', '!important'],\r\n          '& .row': {\r\n            'margin-left': 0,\r\n            'margin-right': 0,\r\n          },\r\n        },\r\n      },\r\n      '& .btn': {\r\n        'line-height': 2.0,\r\n      },\r\n    },\r\n  },\r\n});\r\n","export const getDialogStyle = () => ({\r\n  dialog: {\r\n    '& .ms-Dialog-actionsRight': {\r\n      textAlign: 'left',\r\n    },\r\n  },\r\n});\r\n","export const getProgressBarStyle = ({ palette = {} }) => ({\r\n  '& .progress-text': {\r\n    '& .spinner-header': {\r\n      color: palette.neutralPrimary,\r\n      fontSize: 14,\r\n      fontWeight: 600,\r\n    },\r\n  },\r\n\r\n  '& .progress': {\r\n    backgroundColor: palette.neutralLight,\r\n    marginTop: 7,\r\n    '& .progress-bar': {\r\n      backgroundColor: palette.themePrimary,\r\n      height: 4,\r\n    },\r\n  },\r\n});\r\n","export const convertTooltipPanelToCalloutStyle = () => ({\r\n  '.bingads-webui-react-callout-popover .popover-content': {\r\n    '& .panel': {\r\n      border: 'none',\r\n      boxShadow: 'none',\r\n      marginBottom: 0,\r\n    },\r\n    '& .panel-heading, & .panel-header': {\r\n      padding: '18px 0 12px 0',\r\n      '& .panel-title': {\r\n        fontSize: 20,\r\n        lineHeight: '28px',\r\n        fontWeight: 600,\r\n      },\r\n    },\r\n    '& .panel-title': {\r\n      marginTop: 0,\r\n    },\r\n    '& .panel-body': {\r\n      padding: 0,\r\n    },\r\n    '& .panel-footer': {\r\n      padding: 0,\r\n      border: 'none',\r\n    },\r\n  },\r\n});\r\n","export const colorPickerStyle = () => ({\r\n  '& .ms-ColorPicker': {\r\n    width: '288px',\r\n\r\n    '& .ms-ColorPicker-panel': {\r\n      padding: '12px',\r\n      background: '#FFFFFF',\r\n      border: '1px solid #605E5C',\r\n    },\r\n  },\r\n});\r\n","import { each, extend, range } from 'underscore';\r\n\r\nexport const getColumnSolidBorderStyle = (startIndex = 0, endIndex = 2) => {\r\n  const cellStyle = {};\r\n\r\n  each(range(startIndex, endIndex), index => extend(cellStyle, {\r\n    [`& thead.header tr th:nth-child(${index + 1}), & tbody tr td:nth-child(${index + 1})`]: {\r\n      '&:not(:last-child)': {\r\n        borderRight: '1px solid #EDEBE9',\r\n      },\r\n    },\r\n    [`& tbody tr:hover td:nth-child(${index + 1}), & tbody tr.row-selected td:nth-child(${index + 1}), & tbody tr.row-selected:hover td:nth-child(${index + 1})`]: {\r\n      '&:not(:last-child)': {\r\n        borderRight: '1px solid #FFFFFF',\r\n      },\r\n    },\r\n    [`& tbody tr.aggregated-row:hover td:nth-child(${index + 1})`]: {\r\n      '&:not(:last-child)': {\r\n        borderRight: '1px solid #EDEBE9',\r\n      },\r\n    },\r\n  }));\r\n\r\n  extend(cellStyle, {\r\n    // startIndex will be the primary column, use 14px font.\r\n    [`& tbody tr td:nth-child(${startIndex + 1})`]: {\r\n      fontSize: '14px',\r\n    },\r\n  });\r\n\r\n  if (startIndex !== 2) {\r\n    extend(cellStyle, {\r\n      '& tbody tr td:nth-child(3)': {\r\n        fontSize: '12px !important', // Override the global primary column font size\r\n      },\r\n    });\r\n  }\r\n\r\n  const style = {\r\n    '& .table-container table.table': {\r\n      ...cellStyle,\r\n    },\r\n  };\r\n\r\n  return style;\r\n};\r\n","import { extend } from 'underscore';\r\nimport { entitySelectorStyle, paginationStyle } from './shared-styles-from-theme-fluent';\r\n\r\nconst campaignMultiSelector = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .ba-campaign-selector .ba-entity-selector': {\r\n    minWidth: 300,\r\n  },\r\n  '& .ba-campaign-selector .list-selector-content .add-arrow-button': {\r\n    position: 'absolute',\r\n    top: '20%',\r\n    right: 10,\r\n  },\r\n  '& .ba-campaign-selector .list-selector-content .remove-arrow-button': {\r\n    position: 'absolute',\r\n    top: '2%',\r\n    right: 10,\r\n  },\r\n  '& .list-selector-content .remove-arrow-button': {\r\n    position: 'absolute',\r\n    top: '2%',\r\n    right: 10,\r\n  },\r\n  '& .list-selector-content .add-arrow-button': {\r\n    position: 'absolute',\r\n    right: 10,\r\n  },\r\n  '& .ba-entity-selector': {\r\n    minWidth: 300,\r\n  },\r\n  '& .ba-search-box ': {\r\n    borderTop: `1px solid ${palette.neutralSecondary}`,\r\n    borderLeft: `1px solid ${palette.neutralSecondary}`,\r\n    borderRight: `1px solid ${palette.neutralSecondary}`,\r\n    padding: 1,\r\n    position: 'relative',\r\n\r\n    '& .search-box__input': {\r\n      height: 48,\r\n      width: 'calc(100% - 2px)',\r\n      border: 0,\r\n      borderBottom: `1px solid ${palette.neutralLight}`,\r\n      paddingLeft: 48,\r\n      marginLeft: 1,\r\n    },\r\n\r\n    '& .search-box__icon': {\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 16,\r\n      verticalAlign: 'middle',\r\n      position: 'absolute',\r\n      left: 16,\r\n      top: 16,\r\n    },\r\n\r\n    '& .search-box__icon:before': {\r\n      content: '\"\\\\E721\"',\r\n      color: palette.themePrimary,\r\n    },\r\n  },\r\n  '& .multi-selector': {\r\n    border: 'none',\r\n    '& .ba-pagination': {\r\n      '& .pager-input': {\r\n        width: '70px',\r\n      },\r\n    },\r\n    '& .ba-list-selector': {\r\n      borderTop: '0px',\r\n      borderBottom: `1px solid ${palette.neutralSecondary}`,\r\n      borderLeft: `1px solid ${palette.neutralSecondary}`,\r\n      borderRight: `1px solid ${palette.neutralSecondary}`,\r\n      '& .list-selector-header': {\r\n        '& .panel-heading': {\r\n          color: palette.neutralPrimary,\r\n          fontSize: 14,\r\n          padding: '7px 8px',\r\n\r\n          '& .panel-title': {\r\n            fontSize: 14,\r\n            marginTop: 0,\r\n          },\r\n        },\r\n      },\r\n      '& .list-selector-action-bar': {\r\n        '& [class*=\"-all-content\"]': {\r\n          padding: '10px 8px',\r\n          color: '#0078D4',\r\n          cursor: 'pointer',\r\n          '& span': {\r\n            '&:hover': {\r\n              color: '#004578',\r\n              textDecorationLine: 'underline',\r\n            },\r\n          },\r\n        },\r\n        '& .select-all-content .enabled.arrow-button': {\r\n          float: 'right',\r\n        },\r\n        '& .remove-all-content .remove.arrow-button': {\r\n          marginTop: 0,\r\n        },\r\n      },\r\n      '& .list-selector-content': {\r\n        height: 380,\r\n        '& .list-selector-item': {\r\n          padding: '7px 8px 8px 8px',\r\n          margin: 0,\r\n          minHeight: 36,\r\n\r\n          '& .item-content': {\r\n            maxWidth: 225,\r\n            textOverflow: 'ellipsis',\r\n            overflow: 'hidden',\r\n            whiteSpace: 'nowrap',\r\n            cursor: 'pointer',\r\n\r\n            '& .statusIcon': {\r\n              verticalAlign: 'middle',\r\n              height: '19px',\r\n            },\r\n\r\n            '& .text': {\r\n              marginLeft: 10,\r\n              verticalAlign: 'middle',\r\n            },\r\n          },\r\n          '& .statusEnabled_icon::before': {\r\n            color: '#107c10',\r\n            content: '\"\\\\ECCC\"',\r\n            fontFamily: iconFontFamily,\r\n          },\r\n          '& .statusPaused_icon::before': {\r\n            color: '#323130',\r\n            content: '\"\\\\F6B0\"',\r\n            fontFamily: iconFontFamily,\r\n          },\r\n          '& .statusDeleted_icon::before': {\r\n            color: '#FF0000',\r\n            content: '\"\\\\E738\"',\r\n            fontFamily: iconFontFamily,\r\n          },\r\n        },\r\n      },\r\n      '& .list-selector-item:hover': {\r\n        background: palette.neutralLight,\r\n      },\r\n\r\n      '& .list-selector-item:focus': {\r\n        outline: `1px solid ${palette.neutralSecondary}`,\r\n        outlineOffset: -1,\r\n      },\r\n      '& .list-selector-empty': {\r\n        marginLeft: 10,\r\n      },\r\n      '& .pagination-container': {\r\n        '& .ba-pagination': {\r\n          height: 36,\r\n          padding: '6px 0',\r\n          paddingBottom: 0,\r\n        },\r\n      },\r\n      '& .arrow-button': {\r\n        color: '#0078D4',\r\n      },\r\n      '& .arrow-button.enabled': {\r\n        marginLeft: 10,\r\n        overflow: 'visible !important',\r\n        textDecoration: 'none !important',\r\n        background: 'none !important',\r\n        fontFamily: iconFontFamily,\r\n        cursor: 'pointer',\r\n      },\r\n\r\n      '& .arrow-button.enabled:before': {\r\n        content: '\"\\\\E710\"',\r\n      },\r\n\r\n      '& .arrow-button.remove': {\r\n        marginRight: 10,\r\n        marginTop: 8,\r\n        float: 'right',\r\n        fontFamily: iconFontFamily,\r\n        padding: 0,\r\n\r\n      },\r\n\r\n      '& .list-selector-content .arrow-button.remove': {\r\n        marginTop: 0,\r\n        top: '50%',\r\n        transform: 'translate(0, -50%)',\r\n        '-webkit-transform': 'translate(0, -50%)',\r\n      },\r\n\r\n      '& .arrow-button.remove:before': {\r\n        content: '\"\\\\E738\"',\r\n      },\r\n\r\n      '& .arrow-button.remove+a': {\r\n        width: 'fit-content',\r\n        padding: 0,\r\n      },\r\n    },\r\n    '& .multi-selector-result-container': {\r\n      margin: '0 0 0 8px',\r\n      '& .list-selector-container .ba-list-selector': {\r\n        height: '351px',\r\n        borderTop: `1px solid ${palette.neutralSecondary}`, // no search box on top of the result container\r\n      },\r\n    },\r\n  },\r\n});\r\n\r\nexport const campaignMultiSelectorWithoutDropdownStyle = ({ palette = {} }) => extend(\r\n  {},\r\n  entitySelectorStyle({ palette }),\r\n  paginationStyle({ palette }),\r\n  campaignMultiSelector({ palette })\r\n);\r\n","// this style is in right a panel, out of the feature scope, so use as the global pattern\r\n/* eslint-disable no-unused-vars */\r\nimport { glyphIconStyle } from './glyph-icon-style';\r\nimport { convertToLocalStyle } from './utils/convert-style';\r\n\r\nexport const labelPopupStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.popup--labels': {\r\n    width: 394,\r\n    padding: '17px 28px 20px 24px',\r\n    backgroundColor: '#FFFFFF',\r\n    boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n    border: 'none',\r\n    ...convertToLocalStyle(glyphIconStyle({ palette })),\r\n    '& .popup__close': {\r\n      textAlign: 'right',\r\n    },\r\n  },\r\n});\r\n","export const deliveryColumnStyle = () => ({\r\n  '& .delivery-info.trigger-popup': {\r\n    borderBottom: '1px dashed #0078D4',\r\n    width: 'fit-content',\r\n    display: 'inline',\r\n    cursor: 'pointer',\r\n  },\r\n  '& .status-icon': {\r\n    marginRight: '5px',\r\n  },\r\n  '& .status-error, & .iconba-ErrorBadge': {\r\n    color: '#A80000',\r\n  },\r\n  '& .iconba': {\r\n    position: 'static',\r\n    marginLeft: '5px',\r\n  },\r\n  '& .status-warning, & .iconba-Warning': {\r\n    color: '#D83B01',\r\n  },\r\n  '& .status-column.delivery_status_with_reject_reasons': {\r\n    cursor: 'pointer',\r\n  },\r\n});\r\n","export const labelColumnHeaderStyle = () => ({\r\n  '.label-header-divider': {\r\n    width: '1px',\r\n    height: '28px',\r\n    backgroundColor: '#e1dfdd',\r\n    display: 'inline-block',\r\n    margin: '2px 7px 0px 7px',\r\n    verticalAlign: 'middle',\r\n  },\r\n  '.manage-labels-button': {\r\n    fontFamily: 'MsAds MDL2 Assets',\r\n    fontSize: '15px',\r\n    fontWeight: 'normal',\r\n    verticalAlign: 'middle',\r\n    '&::before': {\r\n      content: '\"\\\\E90F\"',\r\n    },\r\n  },\r\n  '.manage-labels-button:focus': {\r\n    border: 'none',\r\n    outline: '1px solid !important',\r\n    outlineColor: '#605e5c !important',\r\n    padding: '2px',\r\n    textDecoration: 'none',\r\n  },\r\n});\r\n","export const labelsCellScopeStyle = (fontSize = '10px', translateYValue = '1') => ({\r\n  '& .labels-cell-scope': {\r\n    display: 'inline-block',\r\n    fontFamily: 'MsAds MDL2 Assets',\r\n    fontSize,\r\n    marginRight: '4px',\r\n    transform: `translateY(${translateYValue}px)`,\r\n  },\r\n  '& .labels-cell-mcc': {\r\n    '&::before': {\r\n      content: '\"\\\\ECA6\"',\r\n    },\r\n  },\r\n  '& .labels-cell-account': {\r\n    '&::before': {\r\n      content: '\"\\\\EFBE\"',\r\n    },\r\n  },\r\n});\r\n\r\nexport const labelsCellItemStyle = () => ({\r\n  '& .labels-cell-item': {\r\n    textOverflow: 'ellipsis',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n    height: '20px',\r\n    width: '70px',\r\n    padding: '1px 7px 3px 8px',\r\n    borderRadius: '2px',\r\n    display: 'inline-block',\r\n    margin: '0 10px 5px 0',\r\n    verticalAlign: 'top',\r\n\r\n    ...labelsCellScopeStyle(),\r\n  },\r\n});\r\n","export const qualityScorePopupStyle = () => ({\r\n  '.quality-score-popup': {\r\n    maxWidth: '350px',\r\n    width: '350px',\r\n\r\n    '& .qs-Poor': {\r\n      color: '#A80000',\r\n    },\r\n    '& .qs-Good': {\r\n      color: '#107C10',\r\n    },\r\n    '& .qs-Values': {\r\n      width: '100%',\r\n      marginBottom: 10,\r\n\r\n      '& td:first-child': {\r\n        paddingLeft: 0,\r\n      },\r\n      '& tr': {\r\n        height: '25px',\r\n      },\r\n      '& td': {\r\n        borderBottom: '1px solid #EDEBE9',\r\n      },\r\n    },\r\n\r\n  },\r\n});\r\n","export const deleteColumnModalStyle = () => ({\r\n  '.modal-dialog .modal-content .modal-body p.delete-column': {\r\n    whiteSpace: 'nowrap',\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n  },\r\n});\r\n","const itemContainer = {\r\n  display: 'flex',\r\n  alignItems: 'center',\r\n};\r\n\r\nconst itemImage = {\r\n  marginRight: 8,\r\n  flexShrink: 0,\r\n};\r\n\r\nconst itemText = {\r\n  overflow: 'hidden',\r\n  whiteSpace: 'nowrap',\r\n  textOverflow: 'ellipsis',\r\n};\r\n\r\nexport const adExtensionItemTemplateStyles = (/* { palette = {},  iconFontFamily = 'MsAds MDL2 Assets' } */) => ({\r\n  '& .flyerTemplateItemContainer': {\r\n    extend: [itemContainer],\r\n  },\r\n\r\n  '& .flyerTemplateItemImage': {\r\n    extend: [itemImage],\r\n  },\r\n\r\n  '& .flyerTemplateItemText': {\r\n    extend: [itemText],\r\n  },\r\n\r\n  '& .videoTemplateItemContainer': {\r\n    extend: [itemContainer],\r\n    display: 'flex',\r\n    alignItems: 'center',\r\n\r\n    '& .videoTemplateItemTextContainer': {\r\n      overflow: 'hidden',\r\n\r\n      '& .videoTemplateItemText': {\r\n        extend: [itemText],\r\n        display: 'block',\r\n        lineHeight: '24px',\r\n      },\r\n    },\r\n  },\r\n\r\n  '& .videoTemplateItemImage': {\r\n    extend: [itemImage],\r\n  },\r\n\r\n  '& .videoTemplateItemImagePlaceholder': {\r\n    height: 100,\r\n    width: 150,\r\n    minWidth: 150,\r\n    position: 'relative',\r\n    display: 'flex',\r\n  },\r\n\r\n  '& .videoTemplateItemImagePlaceholder__background': {\r\n    position: 'absolute',\r\n    left: 45,\r\n    top: 10,\r\n\r\n    '& span.iconba.iconba-Video': {\r\n      fontSize: 40,\r\n      color: '#7f7f7f',\r\n      lineHeight: 1,\r\n      margin: '0 0 0 8px',\r\n    },\r\n  },\r\n\r\n  '& .videoTemplateItemImagePlaceholder__text': {\r\n    display: 'flex',\r\n    alignItems: 'center',\r\n    position: 'relative',\r\n    padding: [[0, 20]],\r\n    width: '100%',\r\n    height: '100%',\r\n\r\n    '& span': {\r\n      margin: 'auto 4px 12px 0',\r\n      display: 'block',\r\n      lineHeight: 'normal',\r\n      whiteSpace: 'normal',\r\n      textAlign: 'center',\r\n    },\r\n  },\r\n});\r\n","import CircleSolid from '../media/CircleSolid.svg';\r\nimport CircleDotted from '../media/CircleDotted.svg';\r\nimport DiamondSolid from '../media/DiamondSolid.svg';\r\nimport DiamondDotted from '../media/DiamondDotted.svg';\r\n\r\nexport const getFluctuationGridCellStyle = ({ palette = {} }) => ({\r\n  '& .performance-metrics-value': {\r\n    width: 'calc(100% - 20px)',\r\n    float: 'left',\r\n  },\r\n  '& .performance-metrics-fluctuation, & .performance-metrics-insight': {\r\n    width: 20,\r\n    '& .iconba-Insights': {\r\n      color: palette.themePrimary,\r\n    },\r\n  },\r\n});\r\n\r\nexport const getFluctuationTooltipStyle = () => ({\r\n  '#fluctuation-tooltip-id .popover-content': {\r\n    padding: '5px 10px',\r\n  },\r\n});\r\n\r\nexport const getFluctuationContentStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .fluc-lightbulb': {\r\n    color: palette.themePrimary,\r\n    '&:before': {\r\n      content: '\"\\\\E3AF\"',\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 16,\r\n    },\r\n  },\r\n  '& .fluctuation-upper-content': {\r\n    padding: '10px 15px 0',\r\n  },\r\n  '& .fluctuation-upper-content .fluctuation-close': {\r\n    position: 'absolute',\r\n    right: 10,\r\n    top: 10,\r\n  },\r\n  '& .fluctuation-lower-content': {\r\n    paddingLeft: 10,\r\n    paddingRight: 10,\r\n\r\n    '& .checkbox-container': {\r\n      backgroundColor: 'unset',\r\n\r\n      '& .checkbox': {\r\n        margin: '0 0 10px 0',\r\n\r\n        '& input': {\r\n          marginLeft: 0,\r\n          marginRight: 5,\r\n          verticalAlign: 'bottom',\r\n        },\r\n      },\r\n\r\n      '& .ms-Checkbox-text': {\r\n        fontSize: 12,\r\n      },\r\n    },\r\n\r\n    '& .confirm-container .button-container': {\r\n      paddingLeft: 10,\r\n    },\r\n\r\n    '& .btn-default': {\r\n      marginLeft: 10,\r\n    },\r\n  },\r\n  '& .fluctuation-button-container': {\r\n    marginTop: 10,\r\n  },\r\n  '& .cause-container-wrapper': {\r\n    backgroundColor: '#E5F5FB',\r\n    borderTop: '1px solid #1570A6',\r\n    borderBottom: '1px solid #1570A6',\r\n    marginTop: 10,\r\n    padding: '5px 15px',\r\n    display: 'flex',\r\n    alignItems: 'center',\r\n  },\r\n  '& .cause-container-wrapper .fluc-description': {\r\n    display: 'inline',\r\n    fontFamily: '\\'Arial Regular\\'',\r\n    color: '#1570A6',\r\n    marginLeft: 5,\r\n  },\r\n\r\n  '& .cause-container-wrapper .action-container': {\r\n    fontSize: 11,\r\n  },\r\n\r\n  '& .inline-block': {\r\n    display: 'inline-block',\r\n  },\r\n  '& .metric-entry': {\r\n    display: 'inline-block',\r\n    marginRight: 20,\r\n  },\r\n  '& .metric-counter-container': {\r\n    paddingTop: '12px !important',\r\n  },\r\n  '& .metric-entry .metric-color-line': {\r\n    width: '20px !important',\r\n    height: '40px !important',\r\n    backgroundRepeat: 'no-repeat',\r\n    backgroundPositionX: 'center',\r\n    backgroundPositionY: 'center',\r\n  },\r\n  '& .metric-entry .metric-counter-text-wrapper': {\r\n    float: 'right',\r\n    '& .metric-text': {\r\n      verticalAlign: 'top',\r\n      fontSize: 14,\r\n      top: 0,\r\n      height: '50%',\r\n      display: 'inherit',\r\n    },\r\n    '& .metric-value': {\r\n      color: palette.themePrimary,\r\n      bottom: 0,\r\n      verticalAlign: 'bottom',\r\n      height: '50%',\r\n      fontSize: 15,\r\n      fontWeight: 'bold',\r\n      display: 'inherit',\r\n    },\r\n  },\r\n\r\n  '& .metric-entry .iconba.iconba-Insights': {\r\n    color: palette.themePrimary,\r\n  },\r\n\r\n  '& .metric-entry .primary': {\r\n    backgroundImage: `url(\"${CircleSolid}\")`,\r\n  },\r\n  '& .metric-entry .secondary': {\r\n    backgroundImage: `url(\"${DiamondSolid}\")`,\r\n  },\r\n  '& .metric-entry .primaryComparison': {\r\n    backgroundImage: `url(\"${CircleDotted}\")`,\r\n  },\r\n  '& .metric-entry .secondaryComparison': {\r\n    backgroundImage: `url(\"${DiamondDotted}\")`,\r\n  },\r\n\r\n  '& .fluctuation-action-container': {\r\n    padding: 5,\r\n    marginTop: 10,\r\n  },\r\n  '& .fluctuation-action-container .confirm-container .confirm-message': {\r\n    marginBottom: 5,\r\n    paddingLeft: 10,\r\n  },\r\n  '& .fluctuation-action-container .show': {\r\n    display: 'block',\r\n  },\r\n  '& .fluctuation-action-container .hide': {\r\n    display: 'none',\r\n  },\r\n  '& .fluctuation-action-container .feedback-complete': {\r\n    textAlign: 'center',\r\n    color: 'green',\r\n    fontSize: 12,\r\n  },\r\n  '& .fluctuation-action-container .action-container': {\r\n    marginBottom: 10,\r\n    textAlign: 'center',\r\n  },\r\n  '& .fluctuation-action-container .action-container button': {\r\n    background: 'transparent',\r\n    border: 'none',\r\n    outline: 'transparent',\r\n    padding: '0',\r\n  },\r\n  '& .fluctuation-action-container .action-container .fluc-image': {\r\n    marginTop: 5,\r\n  },\r\n  '& .fluctuation-action-container .action-container .HelpTopic, .fluctuation-action-container .action-container .link-text': {\r\n    cursor: 'pointer',\r\n    color: palette.themePrimary,\r\n    marginLeft: 5,\r\n    marginRight: 5,\r\n    fontSize: 11,\r\n  },\r\n  '& .fluctuation-action-container .form-container': {\r\n    padding: 10,\r\n  },\r\n  '& .fluctuation-action-container .form-container label': {\r\n    fontSize: 12,\r\n    color: '#333333',\r\n  },\r\n  '& .fluctuation-action-container .form-container .comment-container .comment-textarea': {\r\n    resize: 'none',\r\n    width: '100%',\r\n    height: 75,\r\n  },\r\n  '& .action-container-wrapper': {\r\n    padding: '10px 20px 0 20px',\r\n  },\r\n  '& .action-container-wrapper .action-header': {\r\n    fontWeight: 'bold',\r\n    marginTop: 5,\r\n    marginBottom: 5,\r\n  },\r\n  '& .action-container-wrapper .action-list-item': {\r\n    display: 'list-item',\r\n    marginLeft: '1.3em',\r\n    wordWrap: 'break-word',\r\n\r\n    '&.nested-item': {\r\n      marginLeft: '2.6em',\r\n      listStyleType: 'circle',\r\n    },\r\n  },\r\n  '& .action-container-wrapper .entity-item-wrapper': {\r\n    display: 'inline-block',\r\n  },\r\n  '& .action-container-wrapper .cause-item-segment': {\r\n    display: 'inline',\r\n  },\r\n  '& .action-container-wrapper .entity-item': {\r\n    color: palette.themePrimary,\r\n    display: 'inline-block',\r\n    cursor: 'pointer',\r\n    background: 'transparent',\r\n    border: 'none',\r\n    outline: 'none',\r\n    padding: '0',\r\n  },\r\n  '& .detail-container-wrapper': {\r\n    width: '100%',\r\n    maxHeight: 126,\r\n    border: 'none',\r\n    marginTop: 10,\r\n    marginBottom: 10,\r\n    padding: 5,\r\n    backgroundColor: '#f2f2f2',\r\n    overflowY: 'auto',\r\n  },\r\n  '& .detail-container-wrapper .entity-header': {\r\n    fontWeight: 'bold',\r\n  },\r\n  '& .detail-container-wrapper .entity-entry': {\r\n    marginTop: 5,\r\n  },\r\n\r\n  // view all button\r\n  '& .viewall-container-wrapper': {\r\n    marginTop: 10,\r\n    marginLeft: 24,\r\n    marginBottom: 10,\r\n  },\r\n\r\n  // pagination dots\r\n  '& .pagination-container .fluctuation-pagination': {\r\n    width: 8,\r\n    height: 8,\r\n    borderRadius: 8,\r\n    margin: '10px 0 10px 10px',\r\n    display: 'inline-block',\r\n    border: '1px solid #605E5C',\r\n    backgroundColor: '#fff',\r\n    padding: '0',\r\n    cursor: 'pointer',\r\n  },\r\n  '& .pagination-container .active': {\r\n    backgroundColor: palette.themePrimary,\r\n    border: `1px solid ${palette.themePrimary}`,\r\n  },\r\n\r\n  // pagination carousel\r\n  '& .pagination-container': {\r\n    paddingLeft: 16,\r\n    '& div:first-child': {\r\n      float: 'left',\r\n    },\r\n  },\r\n\r\n  '& .card-holder__wrapper': {\r\n    float: 'right',\r\n    marginBottom: 10,\r\n\r\n    '& div': {\r\n      float: 'none !important',\r\n    },\r\n  },\r\n\r\n  '& .card-holder__wrapper .carousel-control': {\r\n    backgroundColor: 'transparent',\r\n    textShadow: 'none',\r\n    color: palette.themePrimary,\r\n    opacity: 1,\r\n    height: 24,\r\n    marginRight: 20,\r\n    position: 'relative',\r\n    fontSize: 16,\r\n    display: 'inline-block',\r\n    top: 0,\r\n    marginTop: 0,\r\n\r\n    '&[role=\"button\"]': {\r\n      '&:hover': {\r\n        color: palette.themeDarker,\r\n        backgroundColor: palette.neutralLighter,\r\n      },\r\n      '&:focus': {\r\n        border: `1px solid ${palette.neutralSecondary}`,\r\n      },\r\n      '&:active': {\r\n        backgroundColor: palette.neutralLight,\r\n      },\r\n      '&:focus:after': {\r\n        border: 'none',\r\n      },\r\n    },\r\n\r\n    '&[role=\"button\"][disabled]:hover': {\r\n      backgroundColor: 'transparent !important',\r\n    },\r\n  },\r\n\r\n  '& .card-holder__wrapper .carousel-control[disabled] .carousel-control': {\r\n    color: palette.neutralTertiaryAlt,\r\n    cursor: 'default',\r\n\r\n    '&:hover': {\r\n      color: palette.neutralTertiaryAlt,\r\n    },\r\n    '&:focus:after, &:focus': {\r\n      border: 'none',\r\n    },\r\n  },\r\n\r\n  '& .carousel-control .carousel-control__arrow-left:before': {\r\n    content: '\"\\\\E76B\"',\r\n    fontFamily: iconFontFamily,\r\n  },\r\n\r\n  '& .carousel-control .carousel-control__arrow-right:before': {\r\n    content: '\"\\\\E76C\"',\r\n    fontFamily: iconFontFamily,\r\n  },\r\n});\r\n\r\nexport const getFluctuationLoadingStyle = () => ({\r\n  '.bingads-fluctuation-callout .fluctuation-loading': {\r\n    display: 'flex',\r\n\r\n    '& .loading-dialog': {\r\n      position: 'relative',\r\n      border: 'none',\r\n      boxShadow: 'none',\r\n      top: 0,\r\n      right: 0,\r\n      maxHeight: 135,\r\n      maxWidth: 200,\r\n    },\r\n  },\r\n});\r\n\r\nexport const getFluctuationPopupStyle = ({ palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '.bingads-fluctuation-callout': {\r\n    maxWidth: 500,\r\n\r\n    '& .popover-content': {\r\n      padding: 0,\r\n      maxHeight: 680,\r\n      overflowY: 'auto',\r\n      overflowX: 'hidden',\r\n\r\n      '& a:focus, & button:not(.btn):focus': {\r\n        border: '1px solid #605E5C !important',\r\n      },\r\n\r\n      '& button:not(.btn):hover': {\r\n        backgroundColor: `${palette.neutralLighter} !important`,\r\n      },\r\n\r\n      '& a:hover': {\r\n        textDecoration: 'underline',\r\n        color: `${palette.themeDarker} !important`,\r\n      },\r\n    },\r\n    '& .bingads-fluctuation-wrapper': {\r\n      ...getFluctuationContentStyle({ palette, iconFontFamily }),\r\n    },\r\n  },\r\n});\r\n","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/CircleSolid.65d09796.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/CircleDotted.149db90d.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/DiamondSolid.8cb1af9d.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/DiamondDotted.4ebad774.svg\";","export * from './src/index';\r\nexport { DefaultSpecificRanges, RANGES } from './src/date-options/default-specific-ranges';\r\nexport { ComparedOptions } from './src/date-options/compared-options';\r\nexport {\r\n  generateDateData,\r\n  getRangesFromData,\r\n  translateLegacyToIANATimezone,\r\n  parseCivilDate,\r\n  formatCivilDate,\r\n} from './src/date-util';\r\n","import _ from 'underscore';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\n\r\nexport const MAX_VALUE = 8640000000000000;\r\nexport const MIN_VALUE = -8640000000000000;\r\n\r\nexport function isDateInvalid(date) {\r\n  const year = _.get(date, 'year');\r\n  const month = _.get(date, 'month');\r\n  const day = _.get(date, 'day');\r\n  return _.isNaN(year) || _.isUndefined(year) || _.isNull(year) ||\r\n    _.isNaN(month) || _.isUndefined(month) || _.isNull(month) ||\r\n    _.isNaN(day) || _.isUndefined(day) || _.isNull(day);\r\n}\r\n\r\n// Returns a date that is the first day of the month of the provided date.\r\nexport function getCivilDateMonthStart(date) {\r\n  return new CivilDate(date.year, date.month, 1);\r\n}\r\n\r\n// Returns a date that is the last day of the month of the provided date.\r\nexport function getCivilDateMonthEnd(date) {\r\n  return new CivilDate(date.year, date.month + 1, 0);\r\n}\r\n\r\n// Checks whether the date is valid.\r\nexport const isValidDate = value => _.isDate(value) && !_.isNaN(value.getTime());\r\n\r\n// Get a Civil Date from Date object\r\nexport const getCivilDateFromDate = value => (isValidDate(value) ? new CivilDate(\r\n  value.getFullYear(),\r\n  value.getMonth() + 1,\r\n  value.getDate()\r\n) : null);\r\n\r\nexport const maxCivilDate = getCivilDateFromDate(new Date(MAX_VALUE));\r\nexport const minCivilDate = getCivilDateFromDate(new Date(MIN_VALUE));\r\n\r\n// Compare the month parts of two dates. A negative value if date1 is earlier than date2,\r\n// 0 if the dates are equal, or a positive value if date1 is later than date2.\r\nexport function compareCivilMonth(date1, date2) {\r\n  if (date1.year !== date2.year) {\r\n    return date1.year - date2.year;\r\n  }\r\n  return date1.month - date2.month;\r\n}\r\n\r\n// Compare the date parts of two dates. A negative value if date1 is earlier than date2,\r\n// 0 if the dates are equal, or a positive value if date1 is later than date2.\r\nexport function compareCivilDate(date1, date2) {\r\n  if (date1.year !== date2.year) {\r\n    return date1.year - date2.year;\r\n  } else if (date1.month !== date2.month) {\r\n    return date1.month - date2.month;\r\n  }\r\n  return date1.day - date2.day;\r\n}\r\n\r\nexport function getMinDate(date1, date2) {\r\n  if (isDateInvalid(date1)) {\r\n    return date2;\r\n  }\r\n  if (isDateInvalid(date2)) {\r\n    return date1;\r\n  }\r\n  if (compareCivilDate(date1, date2) <= 0) {\r\n    return date1;\r\n  }\r\n  return date2;\r\n}\r\n\r\nexport function getMaxDate(date1, date2) {\r\n  if (isDateInvalid(date1)) {\r\n    return date2;\r\n  }\r\n  if (isDateInvalid(date2)) {\r\n    return date1;\r\n  }\r\n  if (compareCivilDate(date1, date2) >= 0) {\r\n    return date1;\r\n  }\r\n  return date2;\r\n}\r\n\r\n// Checks whether the specified date is in the given date range.\r\nexport function isCivilDateInRange(date, { start, end }) {\r\n  if (start && end) {\r\n    if ((compareCivilDate(start, date) >= 0 && compareCivilDate(end, date) <= 0)\r\n      || (compareCivilDate(start, date) <= 0 && compareCivilDate(end, date) >= 0)) {\r\n      return true;\r\n    }\r\n  }\r\n  return false;\r\n}\r\n\r\n// Checks whether the specified date is in the given date open range\r\n// eslint-disable-next-line max-len\r\nexport const isCivilDateInOpenRange = ({ minDate = minCivilDate, maxDate = maxCivilDate, value }) => {\r\n  if (!value) {\r\n    return false;\r\n  }\r\n  return isCivilDateInRange(value, { start: minDate, end: maxDate });\r\n};\r\n\r\n// Checks whether the month of the specified date is in the given date range.\r\nexport function isCivilMonthInRange(date, { start, end }) {\r\n  if (start && end) {\r\n    return (compareCivilMonth(start, date) >= 0 && compareCivilMonth(end, date) <= 0)\r\n    || (compareCivilMonth(start, date) <= 0 && compareCivilMonth(end, date) >= 0);\r\n  }\r\n  return false;\r\n}\r\n\r\n// TODO: remove it and use civildate own function to do this.\r\n// There is a issue tracking this function: https://github.com/tc39/proposal-temporal/issues/69\r\nexport function getCivilDateDayOfWeek(civilDate) {\r\n  return (new Date(civilDate.year, civilDate.month - 1, civilDate.day)).getDay();\r\n}\r\n\r\n// get a date that is the monday of this week(monday - sunday)\r\nexport const getThisMonday = (date, includeToday = true) => {\r\n  if (isDateInvalid(date) || date.plus == null) {\r\n    return null;\r\n  }\r\n  if (includeToday) {\r\n    return (getCivilDateDayOfWeek(date) === 0 ?\r\n      date.plus({ days: -6 }) :\r\n      date.plus({ days: -getCivilDateDayOfWeek(date) + 1 }));\r\n  }\r\n  // map [1, 2, 3, 4, 5, 6, 0] to [7, 1, 2, 3, 4, 5, 6]\r\n  const dayOfWeek = getCivilDateDayOfWeek(date);\r\n  if (dayOfWeek === 1) {\r\n    return date.plus({ days: -7 });\r\n  }\r\n  return date.plus({ days: -((dayOfWeek + 6) % 7) });\r\n};\r\n\r\nexport function getCivilDateToday() {\r\n  return getCivilDateFromDate(new Date());\r\n}\r\n\r\n// Checks whether the specified date is the the given date range start or end.\r\nexport function isCivilDateRangeStartOrEnd(date, dateRange) {\r\n  return _.some(dateRange, d => compareCivilDate(date, d) === 0);\r\n}\r\n\r\nfunction withDateChecker(date, func) {\r\n  if (isDateInvalid(date) || date.plus == null) {\r\n    return null;\r\n  }\r\n  return func();\r\n}\r\n\r\nexport function getThisSunday(date, includeToday = true) {\r\n  // map [1, 2, 3, 4, 5, 6, 0] to [1, 2, 3, 4, 5, 6, 0]\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (!includeToday && dayOfWeek === 0) {\r\n      return date.plus({ days: -7 });\r\n    }\r\n    return date.plus({ days: -(dayOfWeek) });\r\n  });\r\n}\r\n\r\nexport function getThisSaturday(date, includeToday = true) {\r\n  // map [1, 2, 3, 4, 5, 6, 0] to [2, 3, 4, 5, 6, 0, 1]\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (!includeToday && dayOfWeek === 6) {\r\n      return date.plus({ days: -7 });\r\n    }\r\n    return date.plus({ days: -((dayOfWeek + 1) % 7) });\r\n  });\r\n}\r\n\r\nexport function getLastMonday(date, includeToday = true) {\r\n  // map [1, 2, 3, 4, 5, 6, 0] to [0, 1, 2, 3, 4, 5, 6]\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (!includeToday && dayOfWeek === 1) {\r\n      return date.plus({ days: -14 });\r\n    }\r\n    return date.plus({ days: -(((dayOfWeek + 6) % 7) + 7) });\r\n  });\r\n}\r\n\r\nexport function getLastSunday(date, includeToday = true) {\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (!includeToday && dayOfWeek === 0) {\r\n      return date.plus({ days: -14 });\r\n    }\r\n    return date.plus({ days: -(dayOfWeek + 7) });\r\n  });\r\n}\r\n\r\nexport function getNextMonday(date, includeToday = false) {\r\n  return withDateChecker(date, () => {\r\n    if (includeToday) {\r\n      // map [1, 2, 3, 4, 5, 6, 0] to [0, 6, 5, 4, 3, 2, 1]\r\n      const dayOfWeek = getCivilDateDayOfWeek(date);\r\n      return date.plus({ days: (((7 - dayOfWeek) + 1) % 7) });\r\n    }\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    return date.plus({ days: -((dayOfWeek + 6) % 7) + 7 });\r\n  });\r\n}\r\n\r\nexport function getNextSunday(date, includeToday = false) {\r\n  return withDateChecker(date, () => {\r\n    if (includeToday) {\r\n      const dayOfWeek = getCivilDateDayOfWeek(date);\r\n      return date.plus({ days: ((7 - dayOfWeek) % 7) });\r\n    }\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    return date.plus({ days: -(dayOfWeek) + 7 });\r\n  });\r\n}\r\n\r\nexport function getNextSaturday(date, includeToday = false) {\r\n  return withDateChecker(date, () => {\r\n    if (includeToday) {\r\n      // map [1, 2, 3, 4, 5, 6, 0] to [5, 4, 3, 2, 1, 0, 6]\r\n      const dayOfWeek = getCivilDateDayOfWeek(date);\r\n      return date.plus({ days: ((6 - dayOfWeek) % 7) });\r\n    }\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    return date.plus({ days: -((dayOfWeek + 1) % 7) + 7 });\r\n  });\r\n}\r\n\r\nexport function getNextNextSunday(date, includeToday = false) {\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (includeToday && dayOfWeek === 0) {\r\n      return date.plus({ days: 7 });\r\n    }\r\n    return date.plus({ days: -(dayOfWeek) + 14 });\r\n  });\r\n}\r\n\r\nexport function getNextNextSaturday(date, includeToday = false) {\r\n  return withDateChecker(date, () => {\r\n    const dayOfWeek = getCivilDateDayOfWeek(date);\r\n    if (includeToday && dayOfWeek === 6) {\r\n      return date.plus({ days: 7 });\r\n    }\r\n    return date.plus({ days: -((dayOfWeek + 1) % 7) + 14 });\r\n  });\r\n}\r\n\r\nexport function isDateAvailable(date, minDate, maxDate) {\r\n  if (isDateInvalid(date) || isDateInvalid(minDate) || isDateInvalid(maxDate)) {\r\n    return false;\r\n  }\r\n  return isCivilDateInRange(date, { start: minDate, end: maxDate });\r\n}\r\n\r\nexport function isRangeValid(range) {\r\n  const start = _.get(range, 'start');\r\n  const end = _.get(range, 'end');\r\n  if (isDateInvalid(start) || isDateInvalid(end)) {\r\n    return false;\r\n  }\r\n  return compareCivilDate(start, end) <= 0;\r\n}\r\n\r\nexport function isRangeDateAvailable(range, minDate, maxDate) {\r\n  if (!isRangeValid(range)) {\r\n    return false;\r\n  }\r\n  const start = _.get(range, 'start');\r\n  const end = _.get(range, 'end');\r\n  return isDateAvailable(start, minDate, maxDate) && isDateAvailable(end, minDate, maxDate);\r\n}\r\n\r\nexport function getDaysOfARange(range) {\r\n  if (!isRangeValid(range)) {\r\n    return 0;\r\n  }\r\n  const end = _.get(range, 'end');\r\n  const start = _.get(range, 'start');\r\n  const t2 = new Date(end.year, end.month - 1, end.day).getTime();\r\n  const t1 = new Date(start.year, start.month - 1, start.day).getTime();\r\n  // eslint-disable-next-line radix\r\n  const difference = Math.round((t2 - t1) / (24 * 3600 * 1000));\r\n  return difference + 1;\r\n}\r\n\r\nexport function getMonthsOfARange(range) {\r\n  if (!isRangeValid(range)) {\r\n    return 0;\r\n  }\r\n  const end = _.get(range, 'end');\r\n  const start = _.get(range, 'start');\r\n  if (end.year === start.year) {\r\n    return (end.month - start.month) + 1;\r\n  }\r\n  const fullYears = end.year - start.year - 1;\r\n  return (fullYears * 12) + ((12 - start.month) + 1) + end.month;\r\n}\r\n\r\nexport function isTheSameRange(range1, range2) {\r\n  const start1 = _.get(range1, 'start');\r\n  const start2 = _.get(range2, 'start');\r\n  const end1 = _.get(range1, 'end');\r\n  const end2 = _.get(range2, 'end');\r\n  if (isDateInvalid(start1) || isDateInvalid(start2) || isDateInvalid(end1) || isDateInvalid(end2)) {\r\n    return false;\r\n  }\r\n  return compareCivilDate(start1, start2) === 0 && compareCivilDate(end1, end2) === 0;\r\n}\r\n","\r\n\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport {\r\n  getCivilDateDayOfWeek,\r\n  getCivilDateMonthStart,\r\n  getThisMonday,\r\n} from '../index';\r\n\r\nexport const RANGES = {\r\n  Yesterday: 1,\r\n  Last7Days: 2,\r\n  Today: 3,\r\n  Custom: 4,\r\n  Last30Days: 5,\r\n  Last14Days: 6,\r\n  ThisWeek: 7,\r\n  ThisWeekMon: 8,\r\n  LastWeek: 9,\r\n  ThisMonth: 10,\r\n  LastMonth: 11,\r\n  Last3Months: 12,\r\n  Last6Months: 13,\r\n  LastWeekMon: 14,\r\n  ThisYear: 15,\r\n  LastYear: 16,\r\n  EntireTimeLast18Months: 17,\r\n  EntireTimeLast5Years: 18,\r\n  EntireTime: 22,\r\n};\r\n\r\nexport const DefaultSpecificRanges = (i18n, timeZone) => {\r\n  const todayObj = i18n.getToday({ timeZone });\r\n  const today = new CivilDate(todayObj.year, todayObj.month, todayObj.day);\r\n  const yesterday = today.plus({ days: -1 });\r\n  const thisSunday = today.plus({ days: -getCivilDateDayOfWeek(today) });\r\n  const thisMonday = getThisMonday(today);\r\n  const last7day = today.plus({ days: -7 });\r\n  const last14day = today.plus({ days: -14 });\r\n  const last30day = today.plus({ days: -30 });\r\n  const lastMonday = today.plus({ days: -getCivilDateDayOfWeek(today) - 6 });\r\n  const lastSunday = today.plus({ days: -getCivilDateDayOfWeek(today) - 7 });\r\n  const lastSaturday = today.plus({ days: -getCivilDateDayOfWeek(today) - 1 });\r\n  const thisMonthFirstDay = getCivilDateMonthStart(today);\r\n  const lastMonthlastDay = thisMonthFirstDay.plus({ days: -1 });\r\n  const lastMonthFirstDay = getCivilDateMonthStart(lastMonthlastDay);\r\n  const minSupportDay = today.plus({ years: -3 });\r\n\r\n  return [\r\n    {\r\n      rangeId: RANGES.Custom, key: 'Custom', range: { start: undefined, end: undefined },\r\n    },\r\n    {\r\n      rangeId: RANGES.Today, key: 'Today', range: { start: today, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.Yesterday, key: 'Yesterday', range: { start: yesterday, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisWeek, key: 'ThisWeek', range: { start: thisSunday, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisWeekMon, key: 'ThisWeekMon', range: { start: thisMonday, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last7Days, key: 'Last7Days', range: { start: last7day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastWeek, key: 'LastWeek', range: { start: lastSunday, end: lastSaturday },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastWeekMon, key: 'LastWeekMon', range: { start: lastMonday, end: thisSunday },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last14Days, key: 'Last14Days', range: { start: last14day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisMonth, key: 'ThisMonth', range: { start: thisMonthFirstDay, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastMonth, key: 'LastMonth', range: { start: lastMonthFirstDay, end: lastMonthlastDay },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last30Days, key: 'Last30Days', range: { start: last30day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.EntireTime, key: 'EntireTime', range: { start: minSupportDay, end: today },\r\n    },\r\n  ];\r\n};\r\n","import { getLastMonth } from '../date-util';\r\n\r\nexport const ComparedType = {\r\n  LastPeriod: 0,\r\n  LastMonth: 1,\r\n  LastYear: 2,\r\n  Custom: 3,\r\n};\r\nexport const ComparedOptions = [\r\n  {\r\n    type: ComparedType.LastPeriod,\r\n    textToExport: 'Previous period',\r\n    keyToExport: 'previousPeriod',\r\n    get: (range, specificRangeId) => {\r\n      switch (specificRangeId) {\r\n        // this week\r\n        case 7:\r\n        case 8:\r\n          return ({\r\n            start: range.start.plus({ days: -7 }),\r\n            end: range.end.plus({ days: -7 }),\r\n          });\r\n        // this month\r\n        case 10:\r\n          return ({\r\n            start: getLastMonth(range.start),\r\n            end: getLastMonth(range.end),\r\n          });\r\n        default: {\r\n          const t2 = new Date(range.end.year, range.end.month - 1, range.end.day).getTime();\r\n          const t1 = new Date(range.start.year, range.start.month - 1, range.start.day).getTime();\r\n          // eslint-disable-next-line radix\r\n          const difference = parseInt((t2 - t1) / (24 * 3600 * 1000));\r\n          return ({\r\n            start: range.start.plus({ days: -1 - difference }),\r\n            end: range.start.plus({ days: -1 }),\r\n          });\r\n        }\r\n      }\r\n    },\r\n  }, {\r\n    type: ComparedType.LastMonth,\r\n    textToExport: 'Last month',\r\n    keyToExport: 'lastMonth',\r\n    get: range => ({\r\n      start: getLastMonth(range.start),\r\n      end: getLastMonth(range.end),\r\n    }),\r\n  }, {\r\n    type: ComparedType.LastYear,\r\n    textToExport: 'Same period last year',\r\n    keyToExport: 'samePeriodLastYear',\r\n    get: range => ({\r\n      start: range.start.plus({ years: -1 }),\r\n      end: range.end.plus({ years: -1 }),\r\n    }),\r\n  }, {\r\n    type: ComparedType.Custom,\r\n    textToExport: 'Custom',\r\n    keyToExport: 'customPeriod',\r\n    get: () => ({\r\n      start: undefined,\r\n      end: undefined,\r\n    }),\r\n  },\r\n];\r\n","/* eslint-disable max-len */\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { fromLegacyTimeZone, toIANATimeZone } from '@bingads-webui-universal/time-zone-converter';\r\n\r\nexport const getLastMonth = (date) => {\r\n  let lastMonthDate = date.plus({ months: -1 });\r\n  if (lastMonthDate.day !== date.day) {\r\n    lastMonthDate = lastMonthDate.plus({ days: -lastMonthDate.day });\r\n  }\r\n  return lastMonthDate;\r\n};\r\n\r\nexport const formatCivilDate = ({\r\n  i18n, date, dateFormat = 'M/d/yyyy',\r\n}) => `${date ? i18n.formatCivilDate(date, { raw: dateFormat }) : ''}`;\r\n\r\nexport const getDateObj = ({ i18n, dateString, dateFormat }) => {\r\n  if (!dateString) { return null; }\r\n  if (dateFormat) { return i18n.parseCivilDate(dateString, { raw: dateFormat }); }\r\n\r\n  const date = new Date(dateString);\r\n  const year = date.getFullYear();\r\n  const month = date.getMonth() + 1;\r\n  const day = date.getDate();\r\n\r\n  return (year && month && day) ? {\r\n    year,\r\n    month,\r\n    day,\r\n  } : null;\r\n};\r\n\r\nexport const parseCivilDate = ({ i18n, dateString, dateFormat }) => {\r\n  const dateObj = getDateObj({ i18n, dateString, dateFormat });\r\n  return dateObj ? new CivilDate(dateObj.year, dateObj.month, dateObj.day) : undefined;\r\n};\r\n\r\nexport const translateLegacyToIANATimezone =\r\n  legacyTimeZone => toIANATimeZone(fromLegacyTimeZone(legacyTimeZone));\r\n\r\nexport const generateDateData = (i18n, dateFromDatePicker, dateFormat, lcid) => {\r\n  const formattedStart = dateFromDatePicker.selectedComparedRange ? formatCivilDate({ i18n, date: dateFromDatePicker.selectedComparedRange.start, dateFormat }) : null;\r\n  const formattedEnd = dateFromDatePicker.selectedComparedRange ? formatCivilDate({ i18n, date: dateFromDatePicker.selectedComparedRange.end, dateFormat }) : null;\r\n  let compared;\r\n  if (!formattedStart && !formattedEnd) {\r\n    compared = null;\r\n  } else {\r\n    compared = {\r\n      formattedStart,\r\n      formattedEnd,\r\n      text: dateFromDatePicker.comparedOption && dateFromDatePicker.comparedOption.textToExport,\r\n      key: dateFromDatePicker.comparedOption && dateFromDatePicker.comparedOption.keyToExport,\r\n      start: i18n.parseDate(formattedStart),\r\n      end: i18n.parseDate(formattedEnd),\r\n    };\r\n  }\r\n  const date = {\r\n    RangeStartDate: formatCivilDate({ i18n, date: dateFromDatePicker.selectedRange.start, dateFormat }),\r\n    RangeEndDate: formatCivilDate({ i18n, date: dateFromDatePicker.selectedRange.end, dateFormat }),\r\n    RangeId: dateFromDatePicker.rangeType.rangeId,\r\n    Rangelcid: lcid,\r\n    compared,\r\n    RangeIndex: dateFromDatePicker.rangeIndex,\r\n    RangeDays: dateFromDatePicker.rangeDays,\r\n  };\r\n  return date;\r\n};\r\n\r\nexport const getRangesFromData = (i18n, dateData, dateFormat, lcid) => {\r\n  if (!dateData || dateData.Rangelcid !== lcid) {\r\n    return { selectedRange: undefined, selectedComparedRange: undefined };\r\n  }\r\n  const {\r\n    RangeStartDate,\r\n    RangeEndDate,\r\n    compared,\r\n  } = dateData;\r\n  return {\r\n    selectedRange: {\r\n      start: RangeStartDate ? parseCivilDate({ i18n, dateString: RangeStartDate, dateFormat }) : undefined,\r\n      end: RangeEndDate ? parseCivilDate({ i18n, dateString: RangeEndDate, dateFormat }) : undefined,\r\n    },\r\n    selectedComparedRange: {\r\n      start: compared && compared.formattedStart ?\r\n        parseCivilDate({ i18n, dateString: compared.formattedStart, dateFormat }) : undefined,\r\n      end: compared && compared.formattedEnd ?\r\n        parseCivilDate({ i18n, dateString: compared.formattedEnd, dateFormat }) : undefined,\r\n    },\r\n  };\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__95__;","export * from './src/constants';\r\nexport * from './src/utils';\r\nexport * from './src/edit-image-utils';\r\nexport { getDateAddedChoiceOptions } from './src/get-date-added-options';\r\nexport { getSortingOptions, getSortingOptionsV3 } from './src/get-image-sorting-options';\r\nexport { getImportSourceOptions } from './src/get-import-source-options';\r\nexport { getTimeDescription } from './src/get-time-description';\r\nexport { getAssetTypeOptions } from './src/get-asset-type-options';\r\nexport { useClarityTags } from './src/use-clarity-hook';\r\nexport { convertTimeDuration } from './src/convert-time-duration';\r\nexport { getSearchLocationOptions } from './src/get-search-location-options';\r\n","export { allowedVideoFileExtensions as supportedVideoExtensions } from '@bingads-webui-campaign-react/upload-file-picker';\r\n\r\nexport const CSMLAdTypeUsage = {\r\n  UsedIn: 'Used in',\r\n  NotUsedIn: 'Not used in',\r\n};\r\n\r\nexport const CSMLAdType = {\r\n  MMA: 'Multimedia ad',\r\n  Audience: 'Audience network',\r\n  ImageExtension: 'Image extension',\r\n};\r\n\r\nexport const CSMLSortBy = {\r\n  MostRecent: 'Most recent',\r\n  ImageName: 'Image name',\r\n  ImageNameDesc: 'Image name (Z-A)',\r\n  LastCreated: 'Last created',\r\n};\r\n\r\nexport const CSMLTimeFrame = {\r\n  Anytime: 'Anytime',\r\n  Today: 'Today',\r\n  Last7Days: 'Last 7 days',\r\n  Last30Days: 'Last 30 days',\r\n  Custom: 'Custom range',\r\n};\r\n\r\nexport const CSMLImportSource = {\r\n  Google: 'Google',\r\n  Facebook: 'Facebook',\r\n};\r\n\r\nexport const CSMLDisplayedGridType = {\r\n  Tiles: 'Tiles',\r\n  Details: 'Details',\r\n};\r\n\r\nexport const DEFAULT_PAGE_SIZE = 20;\r\n\r\nexport const MIN_SIZE = [\r\n  703, // width\r\n  368, // height\r\n];\r\n\r\nexport const CROP_BOX_MAX_SIZE = {\r\n  width: 416,\r\n  height: 300,\r\n};\r\n\r\nexport const CSMLAdTypeAbbr = {\r\n  [CSMLAdType.MMA]: 'MultiMediaAd',\r\n  [CSMLAdType.Audience]: 'MSAN',\r\n  [CSMLAdType.ImageExtension]: 'ImageExtension',\r\n};\r\n\r\n// deprecated after folder pilot is Ga-ed\r\n// export const CSMLCalloutPreferenceFlag = 'WebApp.CampaignUI.ShowAssetLibraryCallout';\r\n\r\nexport const CSMLFoldersCalloutPreferenceFlag = 'WebApp.CampaignUI.ShowAssetLibraryFoldersCallout';\r\n\r\nexport const CalloutDisplayPeriod = {\r\n  AfterClickClose: 4,\r\n  AfterClickCancelButton: 2,\r\n};\r\n\r\nexport const ClarityTags = {\r\n  LaunchedAssetLibrary: 'LaunchedAssetLibrary',\r\n\r\n  // begin: will deprecate in v3 pilot\r\n  LaunchedAddAssetsFromAssetLibrary: 'LaunchedAddAssetsFromAssetLibrary',\r\n  // end\r\n  LaunchedUploadAssetsFromAssetLibrary: 'LaunchedUploadAssetsFromAssetLibrary',\r\n  LaunchedAddImageAssetsFromAssetLibrary: 'LaunchedAddImageAssetsFromAssetLibrary',\r\n  LaunchedAddVideoAssetsFromAssetLibrary: 'LaunchedAddVideoAssetsFromAssetLibrary',\r\n  LaunchedAddAssetsFromCrudAd: 'LaunchedAddAssetsFromCrudAd',\r\n\r\n  LaunchedEditImage: 'LaunchedEditImage',\r\n\r\n  LaunchedImageDetails: 'LaunchedImageDetails',\r\n  LaunchedVideoDetails: 'LaunchedVideoDetails',\r\n};\r\n\r\nexport const ROOT_FOLDER_ID = 'ROOT';\r\n\r\nexport const FolderAssetType = {\r\n  Image: 'Image',\r\n  Video: 'Video',\r\n};\r\n\r\nexport const RootFolderName = {\r\n  [FolderAssetType.Image]: _TL_('Images'),\r\n  [FolderAssetType.Video]: _TL_('Videos'),\r\n};\r\n\r\nexport const isRootFolderId = folderIdToTest => folderIdToTest === ROOT_FOLDER_ID;\r\n\r\nexport const supportedImageExtensions = ['.png', '.jpg', '.jpeg', '.gif'];\r\n\r\nexport const GridSectionName = {\r\n  Folder: 'folderSection',\r\n  Asset: 'assetsSection',\r\n};\r\n\r\nexport const MaxAddAssetJobInParell = 6;\r\n\r\nexport const AssetLibraryAppNameODataHeader = {\r\n  key: 'x-ms-applicationname',\r\n  value: 'bingadsweb-assetlibrary',\r\n};\r\n\r\nexport const CSMLSearchLocation = {\r\n  Current: 'Current',\r\n  Global: 'Global',\r\n};\r\n\r\nexport const VideoStatus = {\r\n  Unverified: 'Unverified',\r\n  Draft: 'Draft',\r\n  Active: 'Active',\r\n  Failed: 'Failed',\r\n};\r\n\r\n// important! do not change the name for each page since they are used in our report\r\nexport const PageNameForLog = {\r\n  Landing: 'LandingPage',\r\n  ImageDetails: 'ImageDetailsPage',\r\n  ImageEditing: 'ImageEditingPage',\r\n  AddLocalAssets: 'AddLocalAssetsPage',\r\n  AddLocalFolder: 'AddLocalFolderPage',\r\n  AddImage: 'AddImagePage',\r\n  AddImageFolder: 'AddImageFolderPage', // Only used in V2, V3 has a new route for upload folder (AddLocalFolder)\r\n  VideoDetails: 'VideoDetailsPage',\r\n  AddVideo: 'AddVideoPage',\r\n};\r\n\r\nexport const VersionForLog = {\r\n  V2: 'V2', // prod version\r\n  V3: 'V3',\r\n};\r\n\r\nexport const RealUsedFlagSuffix = {\r\n  App: 'AssetLibraryApp',\r\n  Picker: 'AssetLibraryPicker',\r\n};\r\n\r\nexport const AssetLibrarySurveyTriggerFlag = {\r\n  App: 'AssetLibraryAppSurveyTrigger',\r\n  Picker: 'AssetLibraryPickerSurveyTrigger',\r\n};\r\n","import _ from 'underscore';\r\nimport {\r\n  // getCivilDateToday,\r\n  compareCivilDate,\r\n  // isValidDate\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\nimport { VideoStatus, VersionForLog } from './constants';\r\n\r\nexport const civilDateEqual = (d1, d2) => {\r\n  if (!d1 && !d2) {\r\n    return true;\r\n  }\r\n  if (!d1 || !d2) {\r\n    return false;\r\n  }\r\n  return compareCivilDate(d1, d2) === 0;\r\n};\r\n\r\nexport const civilDateRangeEqual = (r1, r2) => {\r\n  if ((!r1 && !r2) || (r1 === r2)) {\r\n    return true;\r\n  }\r\n  if (!r1 || !r2) {\r\n    return false;\r\n  }\r\n  return civilDateEqual(r1.start, r2.start) && civilDateEqual(r1.end, r2.end);\r\n};\r\n\r\nexport const civilDateToDebugString = (cd) => {\r\n  if (!cd) return '';\r\n  const { year, month, day } = cd || {};\r\n  return `${year || ''}-${month || ''}-${day || ''}`;\r\n};\r\n\r\nexport const civilDateRangeToDebugString = (dr) => {\r\n  if (!dr) {\r\n    return '';\r\n  }\r\n  return `start:${civilDateToDebugString(dr.start)} end:${civilDateToDebugString(dr.end)}`;\r\n};\r\n\r\n// dateStr: string in format like 2022-06-21T08:55:59.807-07:00\r\nexport const parseMTDateString = (i18n, dateStr) => {\r\n  if (!dateStr) {\r\n    return null;\r\n  }\r\n  // remove the millisecs part to avoid parsing fail (the length of millisecs part is variable)\r\n  const str = dateStr.replace(/\\.\\d+/, '');\r\n  const options = {\r\n    raw: 'yyyy-MM-ddTHH:mm:ssZZZZZ',\r\n    timeZone: null,\r\n  };\r\n  const date = i18n.parseDate(str, options);\r\n  return date;\r\n};\r\n\r\nexport const formatDate = (date, i18n, ianaTimeZone, dateFormat) =>\r\n  i18n.formatDate(date, { raw: dateFormat, timeZone: ianaTimeZone });\r\n\r\nexport const findParentElementWithClass = (elem, className) => {\r\n  let target = elem;\r\n  while (target) {\r\n    const { classList } = target || {};\r\n    if (classList && classList.length > 0\r\n      && classList.contains && classList.contains(className)) {\r\n      return target;\r\n    }\r\n    target = target.parentElement;\r\n  }\r\n  return null;\r\n};\r\n\r\nexport const validate = (value) => {\r\n  const reg = /<|>|:|\\*|\\?|\"|\\\\|\\/|\\|/;\r\n  return !reg.test(value);\r\n};\r\n\r\nconst getSizeLimitPerAccount = (aid, id) => {\r\n  const value = localStorage.getItem(`SystemLimitData_${aid}`);\r\n  if (!value) {\r\n    return null;\r\n  }\r\n\r\n  let valObj = null;\r\n\r\n  try {\r\n    valObj = JSON.parse(value);\r\n  } catch (e) {\r\n    return null;\r\n  }\r\n\r\n  const limitData = _.find(valObj.data, data => data.id === id);\r\n\r\n  return limitData && limitData.val;\r\n};\r\n\r\nexport const getImageAssetLimitPerAccount = (aid, logger) => {\r\n  const assetLimit = getSizeLimitPerAccount(aid, 32);\r\n  if (assetLimit) {\r\n    return assetLimit;\r\n  }\r\n\r\n  logger.logError('get image asset limit data error', { aid });\r\n  return 5000;\r\n};\r\n\r\nexport const getVideoAssetLimitPerAccount = (aid, logger) => {\r\n  const assetLimit = getSizeLimitPerAccount(aid, 86);\r\n  if (assetLimit) {\r\n    return assetLimit;\r\n  }\r\n\r\n  logger.logError('get video asset limit data error', { aid });\r\n  return 1000;\r\n};\r\n\r\nexport const getFoldersLimitPerAccount = (aid, logger) => {\r\n  const foldersLimit = getSizeLimitPerAccount(aid, 97);\r\n  if (foldersLimit) {\r\n    return foldersLimit;\r\n  }\r\n  logger.logError('get folders limit data error', { aid });\r\n  return 1000;\r\n};\r\n\r\nexport const keyDownHandlerForListItem = (event, itemIndex, listItems, tabTarget, enterHandler, spaceHandler, customTabHandler = undefined) => {\r\n  switch (event.code) {\r\n    case 'ArrowUp':\r\n    case 'ArrowLeft':\r\n      if (itemIndex > 0 && listItems[itemIndex - 1]) {\r\n        listItems[itemIndex - 1].focus();\r\n      }\r\n      break;\r\n    case 'ArrowDown':\r\n    case 'ArrowRight':\r\n      if (itemIndex < listItems.length - 1 && listItems[itemIndex + 1]) {\r\n        listItems[itemIndex + 1].focus();\r\n      }\r\n      break;\r\n    case 'Tab':\r\n      if (customTabHandler) {\r\n        customTabHandler();\r\n      } else if (tabTarget) {\r\n        tabTarget.focus();\r\n      }\r\n      break;\r\n    case 'Enter':\r\n      enterHandler();\r\n      break;\r\n    case 'Space':\r\n      spaceHandler();\r\n      break;\r\n    default:\r\n      break;\r\n  }\r\n\r\n  event.stopPropagation();\r\n  event.preventDefault();\r\n};\r\n\r\nexport const checkVideosIntermediateStatus =\r\n  video => video.status !== VideoStatus.Active && video.status !== VideoStatus.Failed;\r\n\r\n// need update this function before starting new pilot\r\n// eslint-disable-next-line no-unused-vars\r\nexport const getLogVersion = permissions => VersionForLog.V3;\r\n\r\nconst getRealUsedFlagValue = (preference, flagSuffix) => {\r\n  if (preference && flagSuffix) {\r\n    const realUsedFlagStr = `realUsedFlagIn${flagSuffix}`;\r\n    const realUsedFlagHandlerStr = `setRealUsedFlagIn${flagSuffix}`;\r\n    const realUsedFlag = preference[realUsedFlagStr];\r\n    const realUsedFlagHandler = preference[realUsedFlagHandlerStr];\r\n\r\n    return {\r\n      realUsedFlag,\r\n      realUsedFlagHandler,\r\n    };\r\n  }\r\n\r\n  return {};\r\n};\r\n\r\nexport const handleRealUsedFlag = (preference, flagSuffix) => { // flagSuffix: AssetLibraryApp or AssetLibraryPicker\r\n  const { realUsedFlag, realUsedFlagHandler } = getRealUsedFlagValue(preference, flagSuffix);\r\n\r\n  const {\r\n    haveUsed,\r\n  } = realUsedFlag || {};\r\n\r\n  if (!haveUsed && realUsedFlagHandler) {\r\n    realUsedFlagHandler();\r\n  }\r\n};\r\n\r\nexport const addAssetLibrarySurveyTriggerFlag = (preference, triggerFlag, usedFlagSuffix) => { // trigger flag: AssetLibraryPickerSurveyTrigger or AssetLibraryAppSurveyTrigger\r\n  const { realUsedFlag } = getRealUsedFlagValue(preference, usedFlagSuffix);\r\n\r\n  const { haveUsed, timestamp } = realUsedFlag || {};\r\n\r\n  if (haveUsed) {\r\n    const currentTime = new Date().getTime();\r\n    const diffDay = (currentTime - timestamp) / 1000 / 60 / 60 / 24;\r\n    if (diffDay > 1 && window.survey) {\r\n      window.survey[triggerFlag] = true;\r\n      window.survey.surveyManager.trigger();\r\n    }\r\n  }\r\n};\r\n\r\nexport const removeAssetLibrarySurveyTriggerFlag = (triggerFlag) => {\r\n  if (window.survey) {\r\n    window.survey[triggerFlag] = false;\r\n  }\r\n};\r\n","/* eslint-disable max-len */\r\nimport _ from 'underscore';\r\nimport { constants as C } from '@bingads-webui-campaign-react/image-experience-model';\r\nimport { CSMLAdTypeAbbr, CSMLAdType } from './constants';\r\n\r\n// eslint-disable-next-line prefer-destructuring\r\nconst imageAdExtSettings = C.imageAdExtSettings;\r\n\r\nexport const aspectRatioConfig = isMultimediaAd => ({\r\n  Image191x100: {\r\n    aspectRatio: 1.91,\r\n    aspectRatioAsRatio: '1.91 : 1',\r\n    aspectRatioString: '191X100',\r\n    type: 'Image191x100',\r\n    isRequired: true,\r\n  },\r\n  Image4x1: {\r\n    aspectRatio: 4,\r\n    aspectRatioAsRatio: '4 : 1',\r\n    aspectRatioString: '400X100',\r\n    type: 'Image4x1',\r\n    isRequired: false,\r\n  },\r\n  Image1x1: {\r\n    aspectRatio: 1,\r\n    aspectRatioAsRatio: '1 : 1',\r\n    aspectRatioString: '100X100',\r\n    type: 'Image1x1',\r\n    isRequired: isMultimediaAd,\r\n  },\r\n  Image1x2: {\r\n    aspectRatio: 0.5,\r\n    aspectRatioAsRatio: '1 : 2',\r\n    aspectRatioString: '50X100',\r\n    type: 'Image1x2',\r\n    isRequired: false,\r\n  },\r\n  Image178x100: {\r\n    aspectRatio: 1.78,\r\n    aspectRatioAsRatio: '1.78 : 1',\r\n    aspectRatioString: '178X100',\r\n    type: 'Image178x100',\r\n    isRequired: false,\r\n    extraExtension: {\r\n      BingSingleImage: {\r\n        previewTypeString: imageAdExtSettings.BingSingleImage.previewTypeString,\r\n      },\r\n    },\r\n  },\r\n  Image172x100: {\r\n    aspectRatio: 1.72,\r\n    type: 'Image172x100',\r\n    aspectRatioAsRatio: '1.72 : 1',\r\n    aspectRatioString: '172X100',\r\n    isRequired: false,\r\n  },\r\n  Image169x100: {\r\n    aspectRatio: 1.69,\r\n    type: 'Image169x100',\r\n    aspectRatioAsRatio: '1.69 : 1',\r\n    aspectRatioString: '169X100',\r\n    isRequired: false,\r\n  },\r\n  Image150x100: {\r\n    aspectRatio: 1.5,\r\n    aspectRatioAsRatio: '1.5 : 1',\r\n    aspectRatioString: '150X100',\r\n    type: 'Image150x100',\r\n    isRequired: false,\r\n  },\r\n  Image155x100: {\r\n    aspectRatio: 1.55,\r\n    type: 'Image155x100',\r\n    aspectRatioAsRatio: '1.55 : 1',\r\n    aspectRatioString: '155X100',\r\n    isRequired: false,\r\n  },\r\n  Image133x100: {\r\n    aspectRatio: 1.33,\r\n    aspectRatioAsRatio: '1.33 : 1',\r\n    aspectRatioString: '133X100',\r\n    type: 'Image133x100',\r\n    isRequired: false,\r\n    extraExtension: {\r\n      MobileMultiImage: {\r\n        previewTypeString: imageAdExtSettings.MobileMultiImage.previewTypeString,\r\n      },\r\n      BingDesktopImage: {\r\n        previewTypeString: imageAdExtSettings.BingDesktopImage.previewTypeString,\r\n      },\r\n    },\r\n  },\r\n  Image93x100: {\r\n    aspectRatio: 0.93,\r\n    aspectRatioAsRatio: '0.93 : 1',\r\n    aspectRatioString: '93X100',\r\n    type: 'Image93x100',\r\n    isRequired: false,\r\n  },\r\n});\r\n\r\nexport const getMediaPlacementType = ({\r\n  isMultimediaAd,\r\n  isMultimediaAdinMSANEnabled,\r\n  type,\r\n}) => {\r\n  // eslint-disable-next-line no-nested-ternary\r\n  const adType = isMultimediaAd ? CSMLAdType.MMA : (isMultimediaAdinMSANEnabled ? CSMLAdType.Audience : CSMLAdType.ImageExtension);\r\n  const allAspectRatioConfig = aspectRatioConfig(isMultimediaAd);\r\n\r\n  return `${CSMLAdTypeAbbr[adType]}${allAspectRatioConfig[type].aspectRatioString}`;\r\n};\r\n\r\nexport const getAspectRatioConfig = (adType) => {\r\n  const aspectRatios = C.getAspectRatios({\r\n    isMultimediaAd: adType === CSMLAdType.MMA,\r\n    isMultimediaAdinMSANEnabled: CSMLAdType.Audience === adType,\r\n  });\r\n\r\n  const allAspectRatioConfig = aspectRatioConfig(adType === CSMLAdType.MMA);\r\n\r\n  const subAspectRatioConfig = _.mapObject(aspectRatios, item => ({\r\n    ...allAspectRatioConfig[item.type],\r\n    minSize: item.minSize,\r\n    previewTypeString: item.previewTypeString,\r\n    placementType: `${CSMLAdTypeAbbr[adType]}${allAspectRatioConfig[item.type].aspectRatioString}`,\r\n  }));\r\n\r\n  return subAspectRatioConfig;\r\n};\r\n\r\nexport const getPreviewText = (isImageExtension, i18n) => {\r\n  if (isImageExtension) {\r\n    return {\r\n      shortHeadline: i18n.getString(_TL_('Title part 1')),\r\n      longHeadline: i18n.getString(_TL_('Title part 1 | Title part 2 | Title part 3')),\r\n      description: i18n.getString(_TL_('Ad text 1. Ad text 2')),\r\n      businessName: i18n.getString(_TL_('Business name')),\r\n      url: 'https://example.com',\r\n    };\r\n  }\r\n\r\n  return {\r\n    shortHeadline: i18n.getString(_TL_('Short headline')),\r\n    longHeadline: i18n.getString(_TL_('Long headline')),\r\n    description: i18n.getString(_TL_('Ad text')),\r\n    businessName: i18n.getString(_TL_('Business name')),\r\n    url: 'https://example.com',\r\n    callToAction: i18n.getString(_TL_('Shop Now')),\r\n  };\r\n};\r\n\r\nexport const sizeValidForRatio = (minSize, cropSettings) => {\r\n  if (cropSettings) {\r\n    const { SourceWidth, SourceHeight } = cropSettings;\r\n    if (SourceWidth < minSize[0] || SourceHeight < minSize[1]) {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  return true;\r\n};\r\n\r\nexport const getSizeErrorRatioList = (\r\n  adType,\r\n  cropSettings,\r\n  requiredOnly = false\r\n) => {\r\n  let ratioList = getAspectRatioConfig(adType);\r\n\r\n  if (requiredOnly) {\r\n    ratioList = _.filter(ratioList, config => config.isRequired);\r\n  }\r\n\r\n  const invalidRatioList = _.filter(ratioList, (item) => {\r\n    const { minSize } = item;\r\n    return !sizeValidForRatio(minSize, cropSettings);\r\n  });\r\n\r\n  return invalidRatioList;\r\n};\r\n\r\nexport const getAllSizeErrorRatioList = (cropSettings, requiredOnly = false) => {\r\n  const errorListForMMA = getSizeErrorRatioList(CSMLAdType.MMA, cropSettings, requiredOnly);\r\n  const errorListForAudience = getSizeErrorRatioList(CSMLAdType.Audience, cropSettings, requiredOnly);\r\n  const errorListForExtension = getSizeErrorRatioList(CSMLAdType.ImageExtension, cropSettings, requiredOnly);\r\n\r\n  return _.uniq(\r\n    [...errorListForAudience, ...errorListForExtension, ...errorListForMMA],\r\n    item => item.type\r\n  );\r\n};\r\n","import { CivilDate } from 'tc39-proposal-temporal';\r\n// import { getCivilDateToday } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { CSMLTimeFrame } from './constants';\r\n\r\nexport const getDateAddedChoiceOptions = (i18n, timeZone) => {\r\n  // const yesterday = getCivilDateToday().plus({ days: -1 });\r\n  const todayObj = i18n.getToday({ timeZone });\r\n  const today = new CivilDate(todayObj.year, todayObj.month, todayObj.day);\r\n  const last7day = today.plus({ days: -6 });\r\n  const last30day = today.plus({ days: -29 });\r\n  return [\r\n    { key: CSMLTimeFrame.Today, text: i18n.getString(_TL_('Today')), range: { start: today, end: today } },\r\n    { key: CSMLTimeFrame.Last7Days, text: i18n.getString(_TL_('Last 7 days')), range: { start: last7day, end: today } },\r\n    { key: CSMLTimeFrame.Last30Days, text: i18n.getString(_TL_('Last 30 days')), range: { start: last30day, end: today } },\r\n    { key: CSMLTimeFrame.Custom, text: i18n.getString(_TL_('Custom range')), range: null },\r\n  ];\r\n};\r\n","import { CSMLSortBy } from './constants';\r\n\r\nexport const getSortingOptions = i18n => [\r\n  { key: CSMLSortBy.ImageName, text: i18n.getString(_TL_('Name (A-Z)')) },\r\n  { key: CSMLSortBy.MostRecent, text: i18n.getString(_TL_('Most recent')) },\r\n];\r\n\r\nexport const getSortingOptionsV3 = i18n => [\r\n  { key: CSMLSortBy.ImageName, text: i18n.getString(_TL_('Sort by name (A-Z)')) },\r\n  { key: CSMLSortBy.ImageNameDesc, text: i18n.getString(_TL_('Sort by name (Z-A)')) },\r\n  { key: CSMLSortBy.MostRecent, text: i18n.getString(_TL_('Sort by most recent')) },\r\n  { key: CSMLSortBy.LastCreated, text: i18n.getString(_TL_('Sort by last created')) },\r\n];\r\n","import { CSMLImportSource } from './constants';\r\n\r\nexport const getImportSourceOptions = i18n => [\r\n  {\r\n    key: CSMLImportSource.Google,\r\n    text: i18n.getString(_TL_('Google Ads')),\r\n    title: i18n.getString(_TL_('Imported from Google Ads')),\r\n  },\r\n  {\r\n    key: CSMLImportSource.Facebook,\r\n    text: i18n.getString(_TL_('Facebook Ads')),\r\n    title: i18n.getString(_TL_('Imported from Facebook Ads')),\r\n  },\r\n];\r\n","import _ from 'underscore';\r\n\r\nconst MAX_DAYS = 7;\r\n\r\n// timestamp: Date\r\nexport function getTimeDescription(timestamp, i18n) {\r\n  if (_.isDate(timestamp)) {\r\n    const now = new Date();\r\n\r\n    const diffInSec = Math.round((now - timestamp) / 1000);\r\n    if (diffInSec < 0) {\r\n      // in case something is wrong\r\n      return null;\r\n    } else if (diffInSec === 0) {\r\n      return i18n.getString(_TL_('just now'));\r\n    } else if (diffInSec === 1) {\r\n      return i18n.getString(_TL_('1 second ago'));\r\n    } else if (diffInSec < 60) {\r\n      return i18n.getString(_TL_('{{seconds}} seconds ago'), { seconds: diffInSec });\r\n    }\r\n\r\n    const diffInMin = Math.round(diffInSec / 60);\r\n    if (diffInMin === 1) {\r\n      return i18n.getString(_TL_('1 minute ago'));\r\n    } else if (diffInMin < 60) {\r\n      return i18n.getString(_TL_('{{minutes}} minutes ago'), { minutes: diffInMin });\r\n    }\r\n\r\n    const diffInHour = Math.round(diffInMin / 60);\r\n    if (diffInHour === 1) {\r\n      return i18n.getString(_TL_('1 hour ago'));\r\n    } else if (diffInHour < 24) {\r\n      return i18n.getString(_TL_('{{hours}} hours ago'), { hours: diffInHour });\r\n    }\r\n\r\n    const diffInDay = Math.round(diffInHour / 24);\r\n    if (diffInDay === 1) {\r\n      return i18n.getString(_TL_('1 day ago'));\r\n    } else if (diffInDay <= MAX_DAYS) {\r\n      return i18n.getString(_TL_('{{days}} days ago'), { days: diffInDay });\r\n    }\r\n  }\r\n\r\n  // no description for timestamp > 30 days ago\r\n  return null;\r\n}\r\n","import { FolderAssetType } from './constants';\r\n\r\nexport const getAssetTypeOptions = i18n => [\r\n  {\r\n    key: FolderAssetType.Image,\r\n    text: i18n.getString(_TL_('Image')),\r\n    title: i18n.getString(_TL_('Image')),\r\n  },\r\n  {\r\n    key: FolderAssetType.Video,\r\n    text: i18n.getString(_TL_('Video')),\r\n    title: i18n.getString(_TL_('Video')),\r\n  },\r\n];\r\n","import { useState, useEffect } from 'react';\r\nimport { reduce } from 'underscore';\r\n\r\nimport { setClarityTag } from '@bingads-webui-universal/clarity';\r\n\r\nexport const useClarityTags = (customTags) => {\r\n  const [haveSetClarityTags, setHaveSetClarityTags] = useState(false);\r\n\r\n  useEffect(() => {\r\n    if (!haveSetClarityTags) {\r\n      const tagsToSet = reduce(customTags, (tagsObj, currentTag) => ({\r\n        ...tagsObj,\r\n        [currentTag]: true,\r\n      }), {});\r\n\r\n      setClarityTag(tagsToSet);\r\n      setHaveSetClarityTags(true);\r\n    }\r\n  }, [haveSetClarityTags, setHaveSetClarityTags, customTags]);\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__382__;","export const convertTimeDuration = (DurationInMS) => {\r\n  const hours = Math.floor(DurationInMS / 3600000);\r\n  const minutes = Math.floor((DurationInMS % 3600000) / 60000);\r\n  const seconds = Math.floor((DurationInMS % 60000) / 1000);\r\n  return `${hours < 10 ? '0' : ''}${hours}:${minutes < 10 ? '0' : ''}${minutes}:${seconds < 10 ? '0' : ''}${seconds}`;\r\n};\r\n","import { CSMLSearchLocation } from './constants';\r\n\r\nexport const getSearchLocationOptions = i18n => [\r\n  {\r\n    key: CSMLSearchLocation.Global,\r\n    text: i18n.getString(_TL_('Everywhere')),\r\n    title: i18n.getString(_TL_('Everywhere')),\r\n  },\r\n  {\r\n    key: CSMLSearchLocation.Current,\r\n    text: i18n.getString(_TL_('Current folder')),\r\n    title: i18n.getString(_TL_('Current folder')),\r\n  },\r\n];\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__56__;","export { version } from './package.json';\r\nexport * from './src/controls';\r\nexport { CheckboxGroup } from './src/checkbox-group';\r\nexport { RadioGroup } from './src/radio-group';\r\n","import * as unthemed from '@bingads-webui-react/primitive-unthemed';\r\nimport { withStyleOverride } from './with-style-override';\r\nimport { withCustomClassName } from './with-custom-class-name';\r\n\r\nexport {\r\n  Grid,\r\n  Row,\r\n  Col,\r\n  Form,\r\n  FormGroup,\r\n  ButtonGroup,\r\n  ButtonToolbar,\r\n  Panel,\r\n  PanelGroup,\r\n} from '@bingads-webui-react/layout';\r\n\r\nexport const Alert = withStyleOverride(unthemed.Alert, ['components.alert']);\r\nexport const Label = withStyleOverride(unthemed.Label, ['components.label']);\r\nexport const Button = withStyleOverride(unthemed.Button, ['components.button']);\r\nexport const Radio = withStyleOverride(unthemed.Radio, ['components.radio']);\r\nexport const Checkbox = withStyleOverride(unthemed.Checkbox, ['components.checkbox']);\r\nexport const Input = withStyleOverride(unthemed.Input, ['components.input']);\r\nexport const Select = withStyleOverride(unthemed.Select, ['components.select']);\r\nexport const TextArea = withStyleOverride(unthemed.TextArea, ['components.textarea']);\r\nexport const Glyphicon = withStyleOverride(unthemed.Glyphicon, ['components.glyphicon']);\r\n\r\nexport const Dropdown = withStyleOverride(unthemed.Dropdown, ['components.dropdown']);\r\nexport const DropdownToggle = withCustomClassName(unthemed.Dropdown.Toggle, 'react-dropdown-toggle', 'toggle');\r\nexport const DropdownMenu = withCustomClassName(unthemed.Dropdown.Menu, 'react-dropdown-menu', 'menu');\r\nexport const DropdownButton = withStyleOverride(unthemed.DropdownButton, ['components.dropdownbutton']);\r\nDropdown.Toggle = DropdownToggle;\r\nDropdown.Menu = DropdownMenu;\r\n\r\nexport const MenuItem = withStyleOverride(unthemed.MenuItem, ['components.menuitem']);\r\nexport const Modal = withStyleOverride(unthemed.Modal, ['components.modal']);\r\nexport const Tooltip = withStyleOverride(unthemed.Tooltip, ['components.tooltip']);\r\nexport const { OverlayTrigger, Overlay } = unthemed;\r\nexport const Popover = withStyleOverride(unthemed.Popover, ['components.popover']);\r\nexport const Navbar = withStyleOverride(unthemed.Navbar, ['components.navbar']);\r\nexport const Nav = withStyleOverride(unthemed.Nav, ['components.nav']);\r\n\r\nexport const NavDropdown\r\n  = withCustomClassName(withStyleOverride(unthemed.NavDropdown, ['components.navdropdown']), 'react-dropdown');\r\n\r\nexport const NavItem = withStyleOverride(unthemed.NavItem, ['components.navitem']);\r\nexport const Image = withStyleOverride(unthemed.Image, ['components.image']);\r\nexport const Tabs = withStyleOverride(unthemed.Tabs, ['components.tabs']);\r\nexport const Tab = withStyleOverride(unthemed.Tab, ['components.tab']);\r\n","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { jss, ThemeProvider, withTheme } from 'react-jss';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport { get } from '@bingads-webui-universal/primitive-utilities';\r\n\r\nconst emptyTheme = {};\r\n\r\nconst styleSheet = jss.createStyleSheet({}).attach();\r\n\r\nconst getClassName = (theme, fieldName) => {\r\n  const ruleName = fieldName.split('.').pop();\r\n  const elementStyles = get(theme, fieldName);\r\n\r\n  let rule = styleSheet.getRule(ruleName);\r\n\r\n  if (_.isEmpty(rule) && !_.isEmpty(elementStyles)) {\r\n    rule = styleSheet.addRule(ruleName, elementStyles);\r\n  }\r\n\r\n  return get(rule, `options.classes.${ruleName}`);\r\n};\r\n\r\nexport function withStyleOverride(Component, fieldNames = []) {\r\n  const StyledComponent = ({\r\n    theme, className, forwardRef, ...props\r\n  }) => {\r\n    const themeClasses = _.map(fieldNames, _.partial(getClassName, theme));\r\n    const nameProp = classNames(themeClasses, className);\r\n\r\n    return (<Component\r\n      className={_.isEmpty(nameProp) ? null : nameProp}\r\n      {...props}\r\n      ref={forwardRef}\r\n    />);\r\n  };\r\n\r\n  StyledComponent.propTypes = {\r\n    className: PropTypes.string,\r\n    theme: PropTypes.objectOf(PropTypes.object),\r\n    forwardRef: PropTypes.oneOfType([\r\n      PropTypes.func,\r\n      PropTypes.shape({ current: PropTypes.any }),\r\n    ]),\r\n  };\r\n\r\n  StyledComponent.defaultProps = {\r\n    className: '',\r\n    theme: {},\r\n    forwardRef: null,\r\n  };\r\n\r\n  const WrappedComponent = withTheme(StyledComponent);\r\n\r\n  const ThemedComponent = React.forwardRef((props, ref) => (\r\n    <ThemeProvider theme={emptyTheme}>\r\n      <WrappedComponent {...props} forwardRef={ref} />\r\n    </ThemeProvider>\r\n  ));\r\n\r\n  hoistNonReactStatics(ThemedComponent, Component);\r\n\r\n  return ThemedComponent;\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__45__;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport { getDisplayName } from '@bingads-webui-react/hoc-utils';\r\n\r\nexport const withCustomClassName = (WrappedComponent, customClassName, bsRole = '') => {\r\n  const WrappedComponentWithCustomClassName = (props) => {\r\n    const {\r\n      bsRole: role,\r\n      className,\r\n      forwardedRef,\r\n      ...rest\r\n    } = props;\r\n\r\n    const nameProp = classNames(className, customClassName);\r\n\r\n    return (<WrappedComponent className={nameProp} ref={forwardedRef} {...rest} />);\r\n  };\r\n\r\n  WrappedComponentWithCustomClassName.propTypes = {\r\n    className: PropTypes.string,\r\n    forwardedRef: PropTypes.oneOfType([\r\n      PropTypes.func,\r\n      PropTypes.shape({ current: PropTypes.instanceOf(Element) }),\r\n    ]),\r\n    bsRole: PropTypes.string.isRequired,\r\n  };\r\n\r\n  WrappedComponentWithCustomClassName.defaultProps = {\r\n    className: '',\r\n    forwardedRef: null,\r\n  };\r\n\r\n  WrappedComponentWithCustomClassName.displayName = `withCustomClassName(${getDisplayName(WrappedComponent)})`;\r\n\r\n  hoistNonReactStatics(WrappedComponentWithCustomClassName, WrappedComponent);\r\n\r\n  const WrappedComponentWithForwardRef = React.forwardRef((props, ref) =>\r\n    <WrappedComponentWithCustomClassName forwardedRef={ref} {...props} />);\r\n\r\n  WrappedComponentWithForwardRef.propTypes = {\r\n    bsRole: PropTypes.string,\r\n  };\r\n\r\n  WrappedComponentWithForwardRef.defaultProps = {\r\n    bsRole,\r\n  };\r\n\r\n  return WrappedComponentWithForwardRef;\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__50__;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Checkbox } from './controls';\r\n\r\nexport class CheckboxGroup extends React.PureComponent {\r\n  // for now eslint-plugin-react doesn't recognize `getDerivedStateFromProps`\r\n  // which is introduced in React 16.3\r\n  static propTypes = {\r\n    checked: PropTypes.arrayOf(PropTypes.any), // eslint-disable-line\r\n    getItemId: PropTypes.func,\r\n    getItemValue: PropTypes.func,\r\n    items: PropTypes.arrayOf(PropTypes.any).isRequired,\r\n    name: PropTypes.string, // eslint-disable-line\r\n    onChange: PropTypes.func.isRequired,\r\n    renderItem: PropTypes.func,\r\n    className: PropTypes.string,\r\n  }\r\n\r\n  static defaultProps = {\r\n    checked: [],\r\n    getItemId: (item, index) => String(index),\r\n    getItemValue: null,\r\n    name: null,\r\n    renderItem: () => null,\r\n    className: null,\r\n  };\r\n\r\n  static getDerivedStateFromProps(nextProps, prevState) {\r\n    return {\r\n      name: nextProps.name || prevState.name || _.uniqueId('checkbox-group-'),\r\n    };\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    this.state = {};\r\n  }\r\n\r\n  render() {\r\n    const getItemValue = this.props.getItemValue || this.props.getItemId;\r\n\r\n    return (\r\n      <React.Fragment>\r\n        {this.props.items.map((item, index) => {\r\n          const id = this.props.getItemId(item, index);\r\n          const onChange = (event) => {\r\n            const checked = event.target.checked ?\r\n              [...this.props.checked, item] :\r\n              _.without(this.props.checked, item);\r\n\r\n            this.props.onChange(checked);\r\n          };\r\n\r\n          return (\r\n            <Checkbox\r\n              key={id}\r\n              id={`${this.state.name}-${id}`}\r\n              className={this.props.className}\r\n              checked={_.contains(this.props.checked, item)}\r\n              name={this.state.name}\r\n              onChange={onChange}\r\n              value={getItemValue(item, index)}\r\n            >\r\n              {this.props.renderItem(item, index)}\r\n            </Checkbox>\r\n          );\r\n        })}\r\n      </React.Fragment>\r\n    );\r\n  }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Radio } from './controls';\r\n\r\nexport class RadioGroup extends React.PureComponent {\r\n  // for now eslint-plugin-react doesn't recognize `getDerivedStateFromProps`\r\n  // which is introduced in React 16.3\r\n  static propTypes = {\r\n    checked: PropTypes.any, // eslint-disable-line\r\n    getItemId: PropTypes.func,\r\n    getItemValue: PropTypes.func,\r\n    items: PropTypes.arrayOf(PropTypes.any).isRequired,\r\n    name: PropTypes.string, // eslint-disable-line\r\n    onChange: PropTypes.func.isRequired,\r\n    renderItem: PropTypes.func,\r\n    className: PropTypes.string,\r\n    disabled: PropTypes.bool,\r\n  }\r\n\r\n  static defaultProps = {\r\n    checked: null,\r\n    getItemId: (item, index) => String(index),\r\n    getItemValue: null,\r\n    name: null,\r\n    renderItem: () => null,\r\n    className: null,\r\n    disabled: false,\r\n  };\r\n\r\n  static getDerivedStateFromProps(nextProps, prevState) {\r\n    return {\r\n      name: nextProps.name || prevState.name || _.uniqueId('radio-group-'),\r\n    };\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    this.state = {};\r\n  }\r\n\r\n  render() {\r\n    const getItemValue = this.props.getItemValue || this.props.getItemId;\r\n\r\n    return (\r\n      <React.Fragment>\r\n        {this.props.items.map((item, index) => {\r\n          const id = this.props.getItemId(item, index);\r\n          const onChange = () => {\r\n            this.props.onChange(item);\r\n          };\r\n\r\n          return (\r\n            <Radio\r\n              key={id}\r\n              id={`${this.state.name}-${id}`}\r\n              className={this.props.className}\r\n              checked={this.props.checked === item}\r\n              name={this.state.name}\r\n              onChange={onChange}\r\n              value={getItemValue(item, index)}\r\n              disabled={this.props.disabled}\r\n            >\r\n              {this.props.renderItem(item, index)}\r\n            </Radio>\r\n          );\r\n        })}\r\n      </React.Fragment>\r\n    );\r\n  }\r\n}\r\n","export { Progress } from './src/progress';\r\nexport { RadialProgress } from './src/radial-progress';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport const Progress = (props) => {\r\n  const {\r\n    progressPercentage,\r\n  } = props;\r\n\r\n  const styles = { width: `${progressPercentage * 100}%` };\r\n\r\n  return (\r\n    <div className=\"progress\">\r\n      <div\r\n        className=\"progress-bar\"\r\n        role=\"progressbar\"\r\n        aria-valuemin=\"0\"\r\n        aria-valuemax=\"100\"\r\n        style={styles}\r\n      />\r\n    </div>\r\n  );\r\n};\r\n\r\nProgress.propTypes = {\r\n  progressPercentage: PropTypes.number,\r\n};\r\n\r\nProgress.defaultProps = {\r\n  progressPercentage: 0.2,\r\n};\r\n\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getStyles } from './getStyles';\r\n\r\nexport const RadialProgressUnthemed = (props) => {\r\n  const {\r\n    progressPercentage,\r\n    size,\r\n    stroke,\r\n    strokeWidth,\r\n    classes,\r\n    className,\r\n  } = props;\r\n\r\n  const radius = (size / 2) - (strokeWidth / 2);\r\n  const strokeLength = Math.PI * 2 * radius;\r\n  const sizePixels = `${size}px`;\r\n\r\n  return (\r\n    <div\r\n      className={classnames('radial-progress', classes.container, className)}\r\n      style={{\r\n        width: sizePixels,\r\n        height: sizePixels,\r\n      }}\r\n    >\r\n      <svg\r\n        className={classes.svg}\r\n        width={size}\r\n        height={size}\r\n        viewBox={`0 0 ${size} ${size}`}\r\n      >\r\n        <circle\r\n          className={classes.circle}\r\n          cx={`${size / 2}`}\r\n          cy={`${size / 2}`}\r\n          r={`${radius}`}\r\n          style={{\r\n            strokeWidth,\r\n          }}\r\n        />\r\n        <circle\r\n          className={classnames(classes.circle, classes.primary)}\r\n          cx={`${size / 2}`}\r\n          cy={`${size / 2}`}\r\n          r={`${radius}`}\r\n          style={{\r\n            stroke,\r\n            strokeWidth,\r\n            strokeDasharray: `${progressPercentage * strokeLength} ${strokeLength}`,\r\n          }}\r\n        />\r\n      </svg>\r\n      <div\r\n        className={classnames('radial-progress-text', classes.text)}\r\n        style={{\r\n          width: sizePixels,\r\n          height: sizePixels,\r\n          lineHeight: sizePixels,\r\n        }}\r\n      >\r\n        {`${parseInt(progressPercentage * 100, 10)}%`}\r\n      </div>\r\n    </div>\r\n  );\r\n};\r\n\r\nRadialProgressUnthemed.propTypes = {\r\n  progressPercentage: PropTypes.number.isRequired,\r\n  size: PropTypes.number,\r\n  strokeWidth: PropTypes.number,\r\n  stroke: PropTypes.string,\r\n  className: PropTypes.string,\r\n  classes: PropTypes.shape({}).isRequired,\r\n};\r\n\r\nRadialProgressUnthemed.defaultProps = {\r\n  size: 128,\r\n  stroke: '#107C10',\r\n  strokeWidth: 14,\r\n  className: null,\r\n};\r\n\r\nexport const RadialProgress = withDefaultStyles(RadialProgressUnthemed, getStyles);\r\n","export const getStyles = (_, { palette = {} }) => ({\r\n  container: {\r\n    position: 'relative',\r\n  },\r\n  svg: {\r\n    position: 'absolute',\r\n    left: 0,\r\n    top: 0,\r\n    transform: 'rotate(270deg)',\r\n  },\r\n  circle: {\r\n    fill: 'transparent',\r\n    strokeDashoffset: '0',\r\n    strokeLinecap: 'round',\r\n    stroke: palette.neutralLight,\r\n  },\r\n  primary: {\r\n    stroke: palette.green,\r\n  },\r\n  text: {\r\n    position: 'absolute',\r\n    left: 0,\r\n    top: 0,\r\n    textAlign: 'center',\r\n  },\r\n});\r\n\r\n","export { setupClarity, setClarityTag } from './src/index';\r\n","/* eslint-disable */\r\nimport _ from 'underscore';\r\n\r\nfunction initialize(projectId) {\r\n  try {\r\n    (function (c, l, a, r, i, t, y) {\r\n      c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments); };\r\n      t = l.createElement(r); t.async = 1; t.src = `https://www.clarity.ms/tag/${i}`;\r\n      y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y);\r\n    }(window, document, 'clarity', 'script', projectId));\r\n  } catch (all) { }\r\n}\r\n\r\nexport function setClarityTag(tags) {\r\n  if (window.clarity) {\r\n    _.each(_.keys(tags), (key) => {\r\n      const tagValue = tags[key];\r\n      if (tagValue) {\r\n        window.clarity('set', key, _.isString(tagValue)? tagValue: JSON.stringify(tagValue));\r\n      }\r\n    });\r\n  }\r\n}\r\n\r\nexport function setupClarity(projectId, tags = {}, userId, sessionId, pageId) {\r\n  initialize(projectId);\r\n\r\n  setClarityTag(tags);\r\n\r\n  if (userId || sessionId || pageId) {\r\n    window.clarity('identify', userId, sessionId, pageId);\r\n  }\r\n}\r\n","export * from './src/imageCommonStyle';\r\nexport * from './src/palette';\r\n","import {\r\n  predicateValueEditorStyle,\r\n  editImageCommonStyle,\r\n} from '@bingads-webui-campaign-react/common-styles';\r\nimport { getCommonPreviewContainerStyles } from '@bingads-webui-campaign-react/shared-image-preview-styles';\r\n\r\nimport { palette } from './palette';\r\n\r\nconst panelStyle = () => ({\r\n  '& .panel-body': {\r\n    height: '100%',\r\n    marginBottom: '65px',\r\n  },\r\n});\r\n\r\nconst floatButtonStyle = () => ({\r\n  floatButton: {\r\n    background: palette.neutralLighter,\r\n    border: 'none',\r\n    borderRadius: 0,\r\n    color: palette.themeDarkAlt,\r\n    fontWeight: 'normal',\r\n    height: 'auto',\r\n    minHeight: 'auto',\r\n    minWidth: 'auto',\r\n    width: 'auto',\r\n    padding: '14px 8px',\r\n\r\n    '&:active, &:focus, &:hover': {\r\n      color: palette.themeDark,\r\n      background: palette.neutralQuaternaryAlt,\r\n    },\r\n  },\r\n});\r\n\r\nconst paginationStyle = ({ iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .ba-pagination, .dlb-pager-container, .pagination-control': {\r\n    height: 'auto',\r\n    padding: '6px 0',\r\n\r\n    '& > .text': {\r\n      display: 'inline-block',\r\n      verticalAlign: 'middle',\r\n      padding: '0px 0px 8px 5px',\r\n      '& > span': {\r\n        marginRight: '5px',\r\n      },\r\n    },\r\n    '& button': {\r\n      border: 0,\r\n      background: 'transparent',\r\n      minWidth: '1px',\r\n      padding: 0,\r\n      color: palette.neutralSecondary,\r\n    },\r\n\r\n    '& button:hover': {\r\n      borderRadius: 2,\r\n      background: palette.neutralLighter,\r\n    },\r\n\r\n    '& button:disabled': {\r\n      background: 'transparent',\r\n      color: '#BEBBB8',\r\n    },\r\n\r\n    '& .pager-input': {\r\n      border: `1px solid ${palette.neutralSecondary}`,\r\n      padding: '6px 8px',\r\n      height: 32,\r\n      textAlign: 'center',\r\n      margin: '0 12px',\r\n      width: 70,\r\n      display: 'inline-block',\r\n      borderRadius: 2,\r\n      boxSizing: 'border-box',\r\n      color: palette.neutralPrimary,\r\n    },\r\n\r\n    '& .glyphicon-triangle-left, & .glyphicon-triangle-right': {\r\n      display: 'inline-block',\r\n      fontFamily: iconFontFamily,\r\n      color: 'inherit',\r\n    },\r\n\r\n    '& .glyphicon-triangle-left:before': {\r\n      content: '\"\\\\E76B\"',\r\n    },\r\n\r\n    '& .glyphicon-triangle-right:before': {\r\n      content: '\"\\\\E76C\"',\r\n    },\r\n  },\r\n\r\n  '& .pager, .location-bid-pager-view': {\r\n    height: 32,\r\n    padding: 0,\r\n    margin: 0,\r\n\r\n    '& .pager-input, .page-number-input, .grid-pager-input': {\r\n      border: `1px solid ${palette.neutralSecondary}`,\r\n      padding: '6px 8px',\r\n      height: 32,\r\n      textAlign: 'center',\r\n      margin: '0 12px',\r\n      width: 70,\r\n      display: 'inline-block',\r\n      borderRadius: 2,\r\n      boxSizing: 'border-box',\r\n      color: palette.neutralPrimary,\r\n      background: palette.white,\r\n    },\r\n\r\n    '& .pager-input[disabled], & .page-number-input[disabled], & .grid-pager-input[disabled]': {\r\n      backgroundColor: palette.neutralLighter,\r\n    },\r\n\r\n    '& .pager-previous, & .pager-next, & .glyphicon-triangle-left, & .glyphicon-triangle-right': {\r\n      fontFamily: iconFontFamily,\r\n      color: palette.neutralSecondary,\r\n      background: 'transparent',\r\n      display: 'inline-block',\r\n      verticalAlign: 'middle',\r\n      padding: '2px 5px',\r\n      height: 32,\r\n      lineHeight: '32px',\r\n      marginTop: '-7px',\r\n      outline: 'none',\r\n    },\r\n\r\n    '& .pager-previous, & .pager-next': {\r\n      '&:focus': {\r\n        outline: `1px solid ${palette.neutralSecondary}`,\r\n        outlineOffset: '-2px',\r\n      },\r\n    },\r\n\r\n    '& .pager-previous:hover, & .pager-next:hover': {\r\n      borderRadius: 2,\r\n      background: palette.neutralLighter,\r\n    },\r\n\r\n    '& .pager-previous-disabled, & .pager-next-disabled': {\r\n      fontFamily: iconFontFamily,\r\n      color: '#BEBBB8',\r\n      background: 'transparent',\r\n      display: 'inline-block',\r\n      verticalAlign: 'middle',\r\n      padding: '2px 5px',\r\n      height: 32,\r\n      lineHeight: '32px',\r\n      marginTop: '-7px',\r\n    },\r\n\r\n    '& .pager-previous-disabled:before, & .pager-previous:before': {\r\n      content: '\"\\\\E76B\"',\r\n    },\r\n\r\n    '& .pager-next-disabled:before, & .pager-next:before': {\r\n      content: '\"\\\\E76C\"',\r\n    },\r\n\r\n    '& .pager-totalCount': {\r\n      verticalAlign: 'unset',\r\n      marginLeft: 4,\r\n    },\r\n  },\r\n\r\n  '& .pagination-control': {\r\n    textAlign: 'left',\r\n\r\n    '& .text': {\r\n      display: 'inline-block',\r\n      width: 'auto',\r\n    },\r\n\r\n    '& .page-size-selector': {\r\n      border: `1px solid ${palette.neutralSecondary}`,\r\n      height: 32,\r\n      textAlign: 'center',\r\n      margin: '0 12px',\r\n      width: '70px !important',\r\n      display: 'inline-block',\r\n      borderRadius: 2,\r\n      boxSizing: 'border-box',\r\n      color: palette.neutralPrimary,\r\n    },\r\n  },\r\n\r\n});\r\n\r\nexport const btnStyle = () => {\r\n  const primary = {\r\n    height: 32,\r\n    minWidth: 80,\r\n    background: palette.themePrimary,\r\n    borderRadius: 2,\r\n    textAlign: 'center',\r\n    color: palette.white,\r\n    boxSizing: 'border-box',\r\n\r\n    '&:hover': {\r\n      background: palette.themeDarkAlt,\r\n    },\r\n\r\n    '&:focus': {\r\n      background: palette.themePrimary,\r\n      outline: 'none',\r\n    },\r\n\r\n    '&:active': {\r\n      background: palette.themeDark,\r\n    },\r\n\r\n    '&:disabled': {\r\n      background: palette.neutralLighter,\r\n      color: palette.neutralTertiary,\r\n    },\r\n  };\r\n\r\n  return {\r\n    '.btn-primary': primary,\r\n    '.btn-hero': primary,\r\n\r\n    '.btn-default': {\r\n      height: 32,\r\n      minWidth: 80,\r\n      background: palette.white,\r\n      borderRadius: 2,\r\n      textAlign: 'center',\r\n      color: palette.neutralPrimary,\r\n      border: `1px solid ${palette.neutralSecondaryAlt}`,\r\n\r\n      '&:hover': {\r\n        background: palette.neutralLighter,\r\n      },\r\n\r\n      '&:focus': {\r\n        background: palette.neutralLight,\r\n      },\r\n\r\n      '&:disabled': {\r\n        background: palette.neutralLighter,\r\n        color: palette.neutralTertiary,\r\n      },\r\n    },\r\n  };\r\n};\r\n\r\nconst controlStyle = () => ({\r\n  '.form-control': {\r\n    '-webkit-box-shadow': 'none',\r\n    backgroundColor: palette.white,\r\n    backgroundImage: 'none',\r\n    border: `1px solid ${palette.neutralSecondary}`,\r\n    borderRadius: 2,\r\n    boxShadow: 'none',\r\n    color: palette.neutralPrimary,\r\n    display: 'block',\r\n    fontSize: 14,\r\n    height: 32,\r\n    lineHeight: 1.5,\r\n    padding: '6px 12px',\r\n    transition: 'border-color .15s ease-in-out, box-shadow .15s ease-in-out',\r\n\r\n    '&:active': {\r\n      borderColor: palette.themePrimary,\r\n    },\r\n\r\n    '&:hover': {\r\n      borderColor: palette.neutralPrimary,\r\n    },\r\n\r\n    '&:focus': {\r\n      '-webkit-box-shadow': 'none',\r\n      borderColor: palette.themePrimary,\r\n      boxShadow: 'none',\r\n      outline: 0,\r\n    },\r\n  },\r\n});\r\n\r\nconst addEditCommonStyle = ({ iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .add-image-content, & .image-edit-content': {\r\n    fontSize: 14,\r\n    lineHeight: '20px',\r\n    position: 'relative',\r\n\r\n    '& .add-image-label, & .edit-image-title': {\r\n      fontSize: 20,\r\n      fontWeight: 600,\r\n      lineHeight: '27px',\r\n      marginBottom: 16,\r\n    },\r\n\r\n    '& .add-image-description': {\r\n      marginBottom: 20,\r\n      paddingBottom: 32,\r\n      borderBottom: `1px solid ${palette.neutralSecondary}`,\r\n    },\r\n\r\n    '& .image-preview-crop-description': {\r\n      fontSize: 14,\r\n      lineHeight: '20px',\r\n      margin: '0 0 32px 0',\r\n    },\r\n\r\n    '& .image-cropper-ratio-label': {\r\n      fontSize: 14,\r\n      fontWeight: 'normal',\r\n      lineHeight: '20px',\r\n      margin: '16px 0',\r\n    },\r\n\r\n    '& .close-dialog-button': {\r\n      backgroundColor: 'transparent',\r\n      color: palette.neutralSecondary,\r\n      fontFamily: iconFontFamily,\r\n      fontSize: 12,\r\n      lineHeight: 1,\r\n      position: 'absolute',\r\n      right: 0,\r\n      top: 0,\r\n      border: 'none',\r\n      background: 'none',\r\n\r\n      '&:before': {\r\n        content: '\"\\\\E711\"',\r\n      },\r\n    },\r\n\r\n    '& .search-box-container': {\r\n      width: '40%',\r\n      display: 'flex',\r\n      alignItems: 'center',\r\n\r\n      '& .search-box__input-group': {\r\n        display: 'flex',\r\n\r\n        '& input.search-box__input': {\r\n          color: palette.neutralSecondary,\r\n          marginLeft: -32,\r\n          padding: '6px 8px 6px 32px',\r\n          order: 1,\r\n        },\r\n\r\n        '& .search-box__icon': {\r\n          position: 'relative',\r\n          fontFamily: iconFontFamily,\r\n          fontSize: 16,\r\n          lineHeight: 1,\r\n          order: 0,\r\n          padding: 8,\r\n\r\n          '&:before': {\r\n            content: '\"\\\\E721\"',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .ba-search-box': {\r\n        flex: 1,\r\n      },\r\n\r\n      '& .clear-search': {\r\n        marginLeft: 10,\r\n        border: 'none',\r\n        backgroundColor: 'transparent',\r\n        cursor: 'pointer',\r\n        fontFamily: iconFontFamily,\r\n      },\r\n    },\r\n\r\n    '& .sort-by-label': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& .dropdown-selector-container': {\r\n      float: 'right',\r\n      minWidth: '25%',\r\n\r\n      '& .dropdown-toggle': {\r\n        background: 'url(\"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMiAxMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiM0ODQ2NDQ7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5BcnRib2FyZCAxPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS4zNyw0bC41Mi41M0w2LDEwLjQ1LjEyLDQuNTYuNjQsNCw2LDkuNFoiLz48L3N2Zz4=\") no-repeat right 8px top 8px transparent',\r\n        backgroundSize: '14px 14px',\r\n        borderColor: palette.neutralSecondary,\r\n        borderRadius: 2,\r\n        boxShadow: 'none',\r\n        color: palette.neutralPrimary,\r\n        fontWeight: 'normal',\r\n        height: 32,\r\n        padding: '0px 28px 0px 8px',\r\n        transition: 'border-color .15s ease-in-out,box-shadow .15s ease-in-out',\r\n        width: '100%',\r\n        '-webkit-box-shadow': 'none',\r\n        '-webkit-appearance': 'none',\r\n        '-moz-appearance': 'none',\r\n\r\n        '&:active': {\r\n          borderColor: palette.themePrimary,\r\n        },\r\n\r\n        '&:focus': {\r\n          borderColor: palette.themePrimary,\r\n          outline: 0,\r\n        },\r\n\r\n        '&:hover': {\r\n          borderColor: palette.neutralPrimary,\r\n        },\r\n\r\n        '& span': {\r\n          margin: 'auto 0',\r\n        },\r\n\r\n        '& .glyphicon-triangle-bottom': {\r\n          display: 'none',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .image-picker-container': {\r\n      '& .image-name-section': {\r\n        display: 'flex',\r\n        justifyContent: 'center',\r\n        width: '100%',\r\n        marginTop: 5,\r\n        marginBottom: 5,\r\n\r\n        '& .image-name': {\r\n          position: 'relative',\r\n          left: 0,\r\n          bottom: 0,\r\n          width: 'auto',\r\n          whiteSpace: 'nowrap',\r\n          overflow: 'hidden',\r\n          textOverflow: 'ellipsis',\r\n        },\r\n\r\n        '& .glyphicon-pencil': {\r\n          border: 'none',\r\n          background: 'none',\r\n          color: palette.themeDark,\r\n          display: 'inline',\r\n          fontFamily: iconFontFamily,\r\n          paddingLeft: 8,\r\n          position: 'relative',\r\n          top: 'unset',\r\n          right: 'unset',\r\n\r\n          '&:before': {\r\n            content: '\"\\\\E70F\"',\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .image-name-container': {\r\n        background: palette.white,\r\n        border: 'rgba(0, 0, 0, 0.2)',\r\n        boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n        position: 'absolute',\r\n        top: 90,\r\n        left: 0,\r\n        margin: 1,\r\n        padding: 16,\r\n        minWidth: 240,\r\n        width: 'max-content',\r\n        zIndex: 9,\r\n        display: 'grid',\r\n        gridTemplateColumns: 'auto auto 1fr',\r\n\r\n        '& .image-name-input': {\r\n          extend: controlStyle()['.form-control'],\r\n          gridColumnStart: '1',\r\n          gridColumnEnd: 'span 3',\r\n\r\n          '& + button': {\r\n            extend: btnStyle()['.btn-primary'],\r\n          },\r\n        },\r\n\r\n        '& #image-name-field': {\r\n          width: '100%',\r\n        },\r\n\r\n        '& button': {\r\n          marginLeft: 0,\r\n          marginTop: 16,\r\n\r\n          '& ~ button': {\r\n            marginLeft: 8,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .replace-failed-video': {\r\n        position: 'absolute',\r\n        right: 43,\r\n        bottom: 30,\r\n        padding: '13px 5px',\r\n        border: 'none',\r\n      },\r\n\r\n      '& .replace-failed-video:hover': {\r\n        background: '#e1dfdd',\r\n      },\r\n\r\n      '& button.glyphicon-remove': {\r\n        extend: floatButtonStyle().floatButton,\r\n        position: 'absolute',\r\n        top: 'unset',\r\n        right: 5,\r\n        bottom: 31,\r\n        fontFamily: iconFontFamily,\r\n        fontSize: 16,\r\n        lineHeight: 1,\r\n        float: 'right',\r\n        borderRadius: 0,\r\n\r\n        '&:before': {\r\n          content: '\"\\\\E711\"',\r\n        },\r\n\r\n        '&.circular-hover': {\r\n          backgroundColor: `${palette.white}d4`,\r\n          padding: 0,\r\n          borderRadius: 0,\r\n          height: 32,\r\n          width: 32,\r\n          right: 0,\r\n          bottom: 36,\r\n        },\r\n\r\n        '&.circular-hover:hover': {\r\n          backgroundColor: `${palette.themeDarkAlt}ff`,\r\n          '&:before': {\r\n            color: palette.white,\r\n          },\r\n        },\r\n      },\r\n\r\n      '& .image-delete.glyphicon.glyphicon-remove': {\r\n        display: 'inline',\r\n      },\r\n\r\n      '& .image-info-section': {\r\n        display: 'flex',\r\n        justifyContent: 'center',\r\n        width: '100%',\r\n        '& .image-id': {\r\n          fontWeight: 'inherit',\r\n          padding: 0,\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .image-picker': {\r\n      background: 'none',\r\n      border: 'none',\r\n      margin: '16px 0',\r\n      padding: 0,\r\n\r\n      '& .existing-images': {\r\n        display: 'flex',\r\n        flexWrap: 'wrap',\r\n        height: 'auto',\r\n        justifyContent: 'space-between',\r\n\r\n        '& .existing-image-container': {\r\n          display: 'inline-flex',\r\n          margin: '0 0 24px 0',\r\n          paddingBottom: 20,\r\n\r\n          '& .image-section-wrapper': {\r\n            display: 'flex',\r\n            flexDirection: 'column',\r\n            justifyContent: 'center',\r\n            height: 202,\r\n            width: 202,\r\n\r\n            '& .image-section': {\r\n              position: 'relative',\r\n\r\n              '& .image-dimensions': {\r\n                display: 'none',\r\n              },\r\n\r\n              '& button.existing-image': {\r\n                border: '1px solid transparent',\r\n\r\n                '&:before': {\r\n                  fontFamily: iconFontFamily,\r\n                  fontSize: 18,\r\n                  position: 'absolute',\r\n                  right: 5,\r\n                  top: 5,\r\n                },\r\n\r\n                '& img': {\r\n                  margin: 0,\r\n                  maxHeight: 200,\r\n                  maxWidth: 200,\r\n                },\r\n              },\r\n\r\n              '&:active button.existing-image': {\r\n                border: `1px solid ${palette.themePrimary}`,\r\n\r\n                '&:before': {\r\n                  color: palette.themePrimary,\r\n                  content: '\"\\\\ECCB\"',\r\n                },\r\n              },\r\n\r\n              '&:focus button.existing-image': {\r\n                border: `1px solid ${palette.neutralSecondary}`,\r\n              },\r\n\r\n              '&:hover button.existing-image': {\r\n                border: `1px solid ${palette.neutralPrimary}`,\r\n\r\n                '&:before': {\r\n                  color: palette.neutralPrimary,\r\n                  content: '\"\\\\ECCA\"',\r\n                },\r\n              },\r\n\r\n              '& button.glyphicon-remove': {\r\n                extend: floatButtonStyle().floatButton,\r\n                position: 'absolute',\r\n                top: 'unset',\r\n                right: 1,\r\n                bottom: 1,\r\n                fontFamily: iconFontFamily,\r\n                fontSize: 16,\r\n                lineHeight: 1,\r\n                float: 'right',\r\n\r\n                '&:before': {\r\n                  content: '\"\\\\E711\"',\r\n                },\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .image-name-section': {\r\n            bottom: 0,\r\n            left: 0,\r\n            position: 'absolute',\r\n            display: 'flex',\r\n            justifyContent: 'center',\r\n            width: '100%',\r\n\r\n            '& .image-name': {\r\n              position: 'relative',\r\n              left: 0,\r\n              bottom: 0,\r\n              width: 'auto',\r\n              whiteSpace: 'nowrap',\r\n              overflow: 'hidden',\r\n              textOverflow: 'ellipsis',\r\n            },\r\n\r\n            '& .glyphicon-pencil': {\r\n              border: 'none',\r\n              background: 'none',\r\n              color: palette.themeDark,\r\n              display: 'inline',\r\n              fontFamily: iconFontFamily,\r\n              paddingLeft: 8,\r\n              position: 'relative',\r\n              top: 'unset',\r\n              right: 'unset',\r\n\r\n              '&:before': {\r\n                content: '\"\\\\E70F\"',\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .image-name-container': {\r\n            background: palette.white,\r\n            border: 'rgba(0, 0, 0, 0.2)',\r\n            boxShadow: '0px 0px 6px rgba(0, 0, 0, 0.2)',\r\n            left: 0,\r\n            margin: 1,\r\n            padding: 16,\r\n            width: 220,\r\n            zIndex: 9,\r\n\r\n            '& .image-name-input': {\r\n              extend: controlStyle()['.form-control'],\r\n\r\n              '& + button': {\r\n                extend: btnStyle()['.btn-primary'],\r\n              },\r\n            },\r\n\r\n            '& #image-name-field': {\r\n              width: '100%',\r\n            },\r\n\r\n            '& button': {\r\n              marginLeft: 0,\r\n              marginTop: 16,\r\n\r\n              '& ~ button': {\r\n                marginLeft: 8,\r\n              },\r\n            },\r\n          },\r\n\r\n          '& .image-delete.glyphicon.glyphicon-remove': {\r\n            display: 'inline',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .ba-pagination': {\r\n      display: 'block',\r\n      textAlign: 'center',\r\n    },\r\n\r\n    '& .choose-file-description': {\r\n      borderTop: `1px solid ${palette.neutralSecondary}`,\r\n      paddingTop: 32,\r\n    },\r\n\r\n    '& .edit-url-description': {\r\n      paddingTop: 16,\r\n    },\r\n\r\n    '& .file-picker-react-wrapper': {\r\n      margin: 0,\r\n      padding: '14px 0 0 0',\r\n      width: '100%',\r\n\r\n      '& .file-picker-btn': {\r\n        extend: btnStyle()['.btn-default'],\r\n        display: 'inline-block',\r\n        float: 'none',\r\n        marginLeft: 0,\r\n\r\n        '& ~ .file-text': {\r\n          display: 'inline-block',\r\n          border: 'none',\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .file-drag-container': {\r\n      position: 'relative',\r\n      width: '100%',\r\n      height: '190px',\r\n      marginTop: '8px',\r\n      overflow: 'hidden',\r\n\r\n      '& .file-picker-react-wrapper': {\r\n        position: 'absolute',\r\n        left: '50%',\r\n        top: '112px',\r\n        zIndex: '1',\r\n        transform: 'translateX(-49px)',\r\n      },\r\n\r\n      '& .file-picker-react-wrapper.disabled': {\r\n        display: 'none',\r\n      },\r\n    },\r\n\r\n    '& .add-image-button-bar, & .image-edit-actions': {\r\n      borderTop: '1px solid #EDEBE9',\r\n      bottom: 0,\r\n      margin: '0 -16px',\r\n      padding: '16px',\r\n      position: 'fixed',\r\n      width: '100%',\r\n\r\n      '& button ~ button': {\r\n        marginLeft: 12,\r\n      },\r\n    },\r\n\r\n    '& .image-cropper-in-edit': {\r\n      margin: 0,\r\n      padding: 0,\r\n    },\r\n\r\n    '& .edit-preview-section': {\r\n      display: 'flex',\r\n\r\n      '& .edit-section': {\r\n        display: 'flex',\r\n        flexDirection: 'column',\r\n        justifyContent: 'center',\r\n      },\r\n    },\r\n\r\n    '& > .error': {\r\n      color: '#A80000',\r\n      fontSize: 12,\r\n      margin: '4px 0 0 0',\r\n    },\r\n\r\n    '& .HelpTopic, & .a': {\r\n      color: '#106ebe',\r\n      textDecoration: 'underline',\r\n    },\r\n  },\r\n});\r\n\r\nexport const getEditImageStyle = (_, { iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  editImageStyle: {\r\n    '& .image-edit-content .edit-image-title': {\r\n      fontSize: 14,\r\n      fontFamily: '\"Segoe UI\"',\r\n      fontWeight: '400',\r\n      fontStyle: 'normal',\r\n    },\r\n    '& .image-edit-content .close-dialog-button': {\r\n      top: 10,\r\n      right: 5,\r\n    },\r\n    '& .image-edit-content .image-preview-crop-description': {\r\n      fontSize: 12,\r\n      margin: '10px 0',\r\n    },\r\n    '& .image-edit-content .image-cropper-in-edit': {\r\n      padding: 5,\r\n      marginTop: 30,\r\n    },\r\n    '& .image-edit-content .image-cropper-in-edit .image-cropper-ratio-label': {\r\n      fontSize: 12,\r\n      margin: '10px 0 5px 0',\r\n      width: '100%',\r\n      fontWeight: '700',\r\n      textAlign: 'center',\r\n    },\r\n    '& .image-edit-content .image-replace-description': {\r\n      fontSize: 12,\r\n      margin: '10px 0',\r\n    },\r\n    '& .image-edit-content .preview-section': {\r\n      border: '1px solid #CCCCCC',\r\n    },\r\n    '& .image-edit-content .image-edit-actions': {\r\n      marginTop: 40,\r\n    },\r\n    '& .edit-image-content-container': {\r\n      minWidth: 1350,\r\n      width: 1350,\r\n    },\r\n    ...getCommonPreviewContainerStyles(),\r\n    ...addEditCommonStyle({ iconFontFamily }),\r\n    ...paginationStyle({ iconFontFamily }),\r\n    ...panelStyle(),\r\n    ...editImageCommonStyle(),\r\n  },\r\n});\r\n\r\nexport const getAddImageStyle = (_, { iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  addImageStyle: {\r\n    '& .video-inactive': {\r\n      paddingTop: 60,\r\n    },\r\n    '& .video-inactive:hover': {\r\n      cursor: 'not-allowed',\r\n    },\r\n    '& .add-image-content': {\r\n      fontSize: 12,\r\n      position: 'relative',\r\n      height: '100%',\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n    },\r\n    ['& .image-selector-for-thumbnail .user-image-picker-container .image-picker-container,' +\r\n    '& .image-selector-for-thumbnail .stock-image-picker-container .image-picker-container']: {\r\n      maxHeight: '50vh',\r\n      maxWidth: '60vw',\r\n    },\r\n    ['& .user-image-picker-container, .stock-image-picker-container, .image-suggestion-picker-container' +\r\n    ', .image-suggestion-picker-container > .react-block-ui-none, .image-suggestion-picker-container > .react-block-ui-none > .react-block-ui-none, .image-suggestion-picker-container > .react-block-ui-none > .react-block-ui']: {\r\n      flexGrow: 1,\r\n      overflow: 'auto',\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n    },\r\n    '& .social-media-container': {\r\n      flexGrow: 1,\r\n      overflow: 'auto',\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      alignItems: 'center',\r\n      '& .suggestion-error-invalid': {\r\n        marginTop: 16,\r\n        textAlign: 'center',\r\n        color: 'red',\r\n      },\r\n      '& .suggestion-error img': {\r\n        marginLeft: 129,\r\n        marginBottom: 24,\r\n      },\r\n      '& .desc': {\r\n        width: '100%',\r\n      },\r\n    },\r\n    '& .add-image-content .disable-mouse': {\r\n      pointerEvents: 'none',\r\n    },\r\n    '& .add-image-content .add-image-label': {\r\n      marginBottom: 15,\r\n      fontSize: 14,\r\n      fontFamily: '\"Segoe UI\"',\r\n      fontWeight: '400',\r\n      fontStyle: 'normal',\r\n    },\r\n    '& .add-image-description': {\r\n      marginBottom: 20,\r\n      paddingBottom: 32,\r\n      borderBottom: `1px solid ${palette.neutralSecondary}`,\r\n    },\r\n    '& .add-image-content .add-image-description': {\r\n      marginBottom: 5,\r\n    },\r\n    '& .add-image-content .search-box-container': {\r\n      width: '45%',\r\n      float: 'left',\r\n    },\r\n    '& .add-image-content .search-box-container .search-box__input-group .search-box__input.form-control': {\r\n      borderRadius: '0',\r\n    },\r\n    '& .add-image-content .search-box-container .search-box__input-group .search-box__icon': {\r\n      fontSize: 12,\r\n    },\r\n    '& .add-image-content .add-image-button-bar': {\r\n      marginTop: 15,\r\n    },\r\n    '& .add-image-content .dropdown-selector-container': {\r\n      float: 'right',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector': {\r\n      position: 'relative',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle': {\r\n      borderRadius: '0',\r\n      minWidth: 190,\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector button.dropdown-toggle .icon-right.glyphicon-triangle-bottom': {\r\n      paddingTop: 3,\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-content': {\r\n      border: 'none',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .empty-message': {\r\n      position: 'absolute',\r\n      padding: '5px 10px',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item': {\r\n      padding: '5px 10px',\r\n      margin: '0',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item:hover': {\r\n      cursor: 'pointer',\r\n      backgroundColor: '#f5f5f5',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item.selected': {\r\n      background: '#E7F0F6',\r\n    },\r\n    '& .add-image-content .dropdown-selector-container .ba-dropdown-selector .ba-list-selector .list-selector-item .item-actions': {\r\n      float: 'right',\r\n    },\r\n    '& .add-image-content .sort-by-label': {\r\n      paddingTop: 9,\r\n      paddingRight: 5,\r\n      float: 'right',\r\n    },\r\n    '& .add-image-content .image-picker': {\r\n      marginTop: 15,\r\n      marginBottom: 5,\r\n      backgroundColor: '#f4f4f4',\r\n      padding: 15,\r\n      border: '1px solid #bbb',\r\n    },\r\n    '& .add-image-content .image-picker .existing-images': {\r\n      overflowY: 'auto',\r\n      height: 400,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container': {\r\n      position: 'relative',\r\n      display: 'inline-block',\r\n      padding: '0',\r\n      margin: 10,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container:hover .image-dimensions, .add-image-content .image-picker .existing-images .existing-image-container:hover .image-edit.glyphicon.glyphicon-pencil, .add-image-content .image-picker .existing-images .existing-image-container:hover .image-delete.glyphicon.glyphicon-remove': {\r\n      display: 'inline',\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .existing-image': {\r\n      display: 'inline-block',\r\n      position: 'relative',\r\n      cursor: 'pointer',\r\n      border: 'none',\r\n      background: 'none',\r\n      padding: '0',\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .existing-image img': {\r\n      margin: 15,\r\n      width: 225,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-dimensions': {\r\n      display: 'none',\r\n      position: 'absolute',\r\n      bottom: 15,\r\n      left: 15,\r\n      textIndent: 5,\r\n      color: 'white',\r\n      backgroundColor: 'rgba(27,27,27,0.616)',\r\n      width: 225,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-name-container': {\r\n      position: 'absolute',\r\n      left: 15,\r\n      bottom: '0',\r\n      marginBottom: -15,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-name-container input': {\r\n      width: 100,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-name-container button': {\r\n      marginLeft: 3,\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-name-container [role=alert]': {\r\n      position: 'absolute',\r\n    },\r\n    '& .add-image-content .image-picker .existing-images .existing-image-container .image-name': {\r\n      position: 'absolute',\r\n      width: 225,\r\n      left: 15,\r\n      bottom: '0',\r\n      marginBottom: -5,\r\n      textAlign: 'center',\r\n      textOverflow: 'ellipsis',\r\n      overflow: 'hidden',\r\n      whiteSpace: 'nowrap',\r\n    },\r\n    '& .existing-image-container .upload-progress': {\r\n      display: 'flex',\r\n      justifyContent: 'center',\r\n      alignItems: 'center',\r\n      flexDirection: 'column',\r\n    },\r\n    '& .add-image-content .file-picker-react-wrapper': {\r\n      marginTop: 5,\r\n      marginBottom: 5,\r\n    },\r\n    '& .add-image-content .pagination-control-container': {\r\n      marginBottom: 10,\r\n    },\r\n    '& .add-image-content .pagination-control-container .ba-pagination>*': {\r\n      display: 'inline',\r\n    },\r\n    '& .add-image-content .pagination-control-container .pager-input': {\r\n      border: '1px solid #BBB',\r\n      width: 25,\r\n      padding: '0 3px',\r\n      marginRight: 5,\r\n    },\r\n    '& .add-image-content .pagination-control-container .btn.btn-default': {\r\n      border: 'none',\r\n    },\r\n    '& .add-image-content .pagination-control-container .btn.btn-default:disabled': {\r\n      backgroundColor: 'inherit',\r\n    },\r\n    '& .add-image-content .pagination-control-container .btn.btn-default:disabled .glyphicon': {\r\n      color: '#a2a2a2',\r\n    },\r\n    '& .add-image-content .pagination-control-container span': {\r\n      marginRight: 5,\r\n    },\r\n    '& .add-image-content .existing-opt-in-disclaimer': {\r\n      marginTop: 15,\r\n\r\n      '& .middle-info.btn-link': {\r\n        paddingRight: 0,\r\n      },\r\n\r\n      '& .btn-link': {\r\n        color: palette.themePrimary,\r\n      },\r\n    },\r\n    '& .add-image-button': {\r\n      margin: '10px 0',\r\n      background: '#008272',\r\n    },\r\n    '& .panel-body > .react-block-ui-none, .panel-body > .react-block-ui': {\r\n      height: '100%',\r\n    },\r\n    '& .add-image-content-container': {\r\n      width: 1059,\r\n      height: '100%',\r\n      '&.image-selector-for-thumbnail': {\r\n        width: '100%',\r\n      },\r\n    },\r\n\r\n    '& .image-suggestion-picker-container': {\r\n      '& + div > div > div, .react-block-ui > div:last-child > div > div': {\r\n        flexDirection: 'column',\r\n      },\r\n      '& + div .blocker-image, .react-block-ui > div:last-child > div > div > .blocker-image': {\r\n        margin: '0 auto 8px auto !important',\r\n      },\r\n    },\r\n    '& .image-suggestion-picker-container > div > .subdomain-fields': {\r\n      marginTop: 16,\r\n      '& .divider': {\r\n        display: 'inline-block',\r\n        marginLeft: 10,\r\n        marginRight: 10,\r\n        fontSize: 14,\r\n        lineHeight: '20px',\r\n      },\r\n    },\r\n    '& .image-suggestion-picker-container > div > .suggestion-error': {\r\n      marginTop: 16,\r\n      display: 'inline-block',\r\n      marginLeft: 271,\r\n      fontSize: 14,\r\n      lineHeight: '20px',\r\n      '& img': {\r\n        marginLeft: 129,\r\n        marginBottom: 24,\r\n      },\r\n      '& .suggestion-error-invalid': {\r\n        marginTop: 16,\r\n        color: 'red',\r\n      },\r\n    },\r\n\r\n    ...addEditCommonStyle({ iconFontFamily }),\r\n    ...paginationStyle({ iconFontFamily }),\r\n    ...panelStyle(),\r\n    '& .add-video-content-container .upload-choice-group': {\r\n      marginTop: -4,\r\n      '& .ms-Label': {\r\n        fontWeight: 400,\r\n        marginBottom: 6,\r\n      },\r\n    },\r\n    '& .add-video-content-container .ms-ChoiceField:first-child': {\r\n      marginTop: 26,\r\n    },\r\n    '& .add-video-content-container .ms-ChoiceField:nth-child(2)': {\r\n      marginTop: 10,\r\n    },\r\n    '& .add-video-content-container .ms-ChoiceField-field': {\r\n      padding: 0,\r\n      fontWeight: 400,\r\n    },\r\n    '& .add-video-content-container .upload-local-file-container': {\r\n      display: 'flex',\r\n      alignItems: 'flex-start',\r\n      marginTop: 20,\r\n      marginLeft: 26,\r\n    },\r\n    '& .add-video-content-container .upload-progress-container': {\r\n      marginLeft: 26,\r\n      paddingTop: 4,\r\n      '& .bar-upload-progress': {\r\n        width: 400,\r\n      },\r\n      '& .bar-upload-progress-text': {\r\n        marginTop: -10,\r\n      },\r\n    },\r\n    '& .add-video-content-container .cancel-upload-button': {\r\n      marginLeft: 26,\r\n    },\r\n    '& .add-video-content-container .file-picker-input': {\r\n      display: 'inline-block',\r\n      width: 400,\r\n    },\r\n    '& .add-video-content-container .file-picker-container': {\r\n      display: 'inline-block',\r\n      marginLeft: 8,\r\n      '& .file-picker-react-wrapper': {\r\n        padding: 0,\r\n      },\r\n    },\r\n    '& .add-video-content-container .image-url-container': {\r\n      background: palette.white,\r\n      width: 500,\r\n      display: 'flex',\r\n      marginTop: 20,\r\n      marginLeft: 26,\r\n      '& .image-url-input': {\r\n        extend: controlStyle()['.form-control'],\r\n        width: 400,\r\n        display: 'inline-block',\r\n      },\r\n\r\n      '& #image-url-field, #image-description-field': {\r\n        width: '100%',\r\n      },\r\n\r\n      '& .image-url-button': {\r\n        extend: btnStyle()['.btn-default'],\r\n        display: 'inline-block',\r\n        marginLeft: 8,\r\n        width: 130,\r\n      },\r\n    },\r\n  },\r\n  '@global': {\r\n    '.popover-content': {\r\n      overflow: 'auto',\r\n      'max-height': '500px',\r\n    },\r\n  },\r\n});\r\n\r\nexport const getStockPhotoFilterStyle = (components, { palette: themePalette = {} }) => ({\r\n  filterContainer: {\r\n    display: 'flex',\r\n    alignItems: 'center',\r\n    justifyContent: 'space-between',\r\n    '& > .predicate-list': {\r\n      paddingLeft: 0,\r\n    },\r\n    '& .add-filter-button': {\r\n      background: 'transparent',\r\n      marginLeft: 0,\r\n      '&:focus': {\r\n        background: 'transparent',\r\n      },\r\n      '&:focus:after': {\r\n        border: 0,\r\n      },\r\n    },\r\n    '& .filter-bar-button': {\r\n      height: '56px',\r\n      border: 0,\r\n      '&:focus:after': {\r\n        border: 0,\r\n      },\r\n      '& .iconba': {\r\n        color: themePalette.themePrimary,\r\n      },\r\n    },\r\n    '& .btn:focus': {\r\n      outline: '1px solid',\r\n    },\r\n    '& .selector-placeholder.labels-selector': predicateValueEditorStyle.selector({ palette: themePalette }),\r\n  },\r\n});\r\n\r\nexport const getCircleProgressStyle = () => ({\r\n  circle: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    '& .radial-progress-text': {\r\n      textAlign: 'center',\r\n      display: 'block',\r\n      color: 'white',\r\n      fontSize: 10,\r\n      fontWeight: 600,\r\n    },\r\n  },\r\n});\r\n","// todo: [4183561] should update to use palette provided by theme provider\r\nexport const palette = {\r\n  neutralLight: '#edebe9',\r\n  neutralLighter: '#f3f2f1',\r\n  neutralPrimary: '#323130',\r\n  neutralQuaternaryAlt: '#e1dfdd',\r\n  neutralSecondary: '#605e5c',\r\n  neutralSecondaryAlt: '#8a8886',\r\n  neutralTertiary: '#a19f9d',\r\n  themeDark: '#005a9e',\r\n  themeDarkAlt: '#106ebe',\r\n  themeDarker: '#004578',\r\n  themePrimary: '#0078d4',\r\n  white: '#ffffff',\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__313__;","module.exports = __WEBPACK_EXTERNAL_MODULE__79__;","export { MultiLineEllipsisText } from './src/multi-line-ellipsis-text';\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class MultiLineEllipsisText extends React.PureComponent {\r\n  constructor(props, context) {\r\n    super(props, context);\r\n\r\n    this.state = {\r\n      processedText: '',\r\n    };\r\n\r\n    this.hiddenTextRef = React.createRef();\r\n    this.containerRef = React.createRef();\r\n  }\r\n\r\n  componentDidMount() {\r\n    this.processText();\r\n  }\r\n\r\n  componentDidUpdate() {\r\n    this.processText();\r\n  }\r\n\r\n  processText = _.debounce(() => {\r\n    if (!this.hiddenTextRef || !this.hiddenTextRef.current) {\r\n      return;\r\n    }\r\n\r\n    this.hiddenTextRef.current.style.maxWidth = `${this.containerRef.current.clientWidth}px`;\r\n    this.hiddenTextRef.current.style.position = 'absolute';\r\n\r\n    const wordArray = this.props.text.split(' ');\r\n    let newText = `${wordArray.join(' ')}`;\r\n    this.hiddenTextRef.current.innerText = newText;\r\n\r\n    while (this.hiddenTextRef.current.scrollHeight > this.containerRef.current.offsetHeight) {\r\n      wordArray.pop();\r\n      newText = `${wordArray.join(' ')}...`;\r\n\r\n      if (this.hiddenTextRef.current.innerText === newText) {\r\n        break;\r\n      }\r\n\r\n      this.hiddenTextRef.current.innerText = newText;\r\n    }\r\n\r\n    this.setState({\r\n      processedText: `${newText}`,\r\n    });\r\n  }, 100);\r\n\r\n  render() {\r\n    return (\r\n      <div\r\n        className={`multi-line-ellipsis-text-component ${this.props.className}`}\r\n        style={this.props.style}\r\n        ref={this.containerRef}\r\n      >\r\n        <div\r\n          className=\"multi-line-hidden-text\"\r\n          style={{ opacity: 0, zIndex: -2 }}\r\n          ref={this.hiddenTextRef}\r\n        />\r\n        <div className=\"multi-line-processed-text\">\r\n          {this.state.processedText}\r\n        </div>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nMultiLineEllipsisText.propTypes = {\r\n  text: PropTypes.string,\r\n  className: PropTypes.string,\r\n  style: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\r\n};\r\n\r\nMultiLineEllipsisText.defaultProps = {\r\n  className: undefined,\r\n  style: undefined,\r\n  text: '',\r\n};\r\n","export { Toggle } from './src/toggle';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport _ from 'underscore';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\n\r\n/*  eslint-disable jsx-a11y/no-noninteractive-tabindex */\r\nexport class Toggle extends React.PureComponent {\r\n  static propTypes = {\r\n    checked: PropTypes.bool,\r\n    className: PropTypes.string,\r\n    disabled: PropTypes.bool,\r\n    id: PropTypes.string,\r\n    name: PropTypes.string,\r\n    label: PropTypes.string,\r\n    onChange: PropTypes.func.isRequired,\r\n  }\r\n\r\n  static defaultProps = {\r\n    checked: false,\r\n    className: 'toggle',\r\n    label: 'toggle',\r\n    disabled: false,\r\n    id: null,\r\n    name: null,\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    this.props = props;\r\n    this.state = { isChecked: props.checked };\r\n  }\r\n\r\n  // if checked updated externally, update the state\r\n  componentDidUpdate(prevProps) {\r\n    if (this.props.checked !== prevProps.checked\r\n      || this.props.checked !== this.state.isChecked) {\r\n      // eslint-disable-next-line react/no-did-update-set-state\r\n      this.setState({ isChecked: this.props.checked });\r\n    }\r\n  }\r\n\r\n  onInputChange = ({ target: { checked } }) => this.props.onChange(checked);\r\n\r\n  onChange = () => {\r\n    this.setState(\r\n      state => ({ isChecked: !state.isChecked }),\r\n      () => this.props.onChange(this.state.isChecked)\r\n    );\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      name, disabled, className, label,\r\n    } = this.props;\r\n    const { id = _.uniqueId('toggle-') } = this.props;\r\n    return (\r\n      <label className={classnames('switch', className)} htmlFor={id}>\r\n        <input\r\n          type=\"checkbox\"\r\n          id={id}\r\n          name={name}\r\n          checked={this.state.isChecked}\r\n          disabled={disabled}\r\n          onChange={this.onInputChange}\r\n        />\r\n        <span\r\n          className=\"slider round\"\r\n          tabIndex=\"0\"\r\n          role=\"switch\"\r\n          aria-checked={this.state.isChecked}\r\n          aria-label={label}\r\n          onKeyDown={event => submitEvent(this.onChange)(event, event)}\r\n        />\r\n      </label>\r\n    );\r\n  }\r\n}\r\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n  try {\n    var info = gen[key](arg);\n    var value = info.value;\n  } catch (error) {\n    reject(error);\n    return;\n  }\n\n  if (info.done) {\n    resolve(value);\n  } else {\n    Promise.resolve(value).then(_next, _throw);\n  }\n}\n\nexport default function _asyncToGenerator(fn) {\n  return function () {\n    var self = this,\n        args = arguments;\n    return new Promise(function (resolve, reject) {\n      var gen = fn.apply(self, args);\n\n      function _next(value) {\n        asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n      }\n\n      function _throw(err) {\n        asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n      }\n\n      _next(undefined);\n    });\n  };\n}","module.exports = __WEBPACK_EXTERNAL_MODULE__111__;","module.exports = __WEBPACK_EXTERNAL_MODULE__138__;","export { ComparedDateRangePicker } from './src/compared-date-range-picker';\r\nexport * from './src/prop-types';\r\nexport * from './src/common/ranges';\r\n","/* eslint-disable no-bitwise */\r\n/* eslint-disable max-len */\r\nimport React from 'react';\r\nimport classNames from 'classnames';\r\nimport _ from 'underscore';\r\nimport uuid from 'uuid/v4';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport Media from 'react-media';\r\nimport { Overlay, Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { getCivilDateToday, compareCivilDate, getDaysOfARange, RANGES, isRangeValid, isTheSameRange } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { WithApplyAndCloseButton } from '@bingads-webui-react/hoc-with-apply-close-button';\r\nimport { FocusLock } from '@bingads-webui-react/focus-lock';\r\nimport {\r\n  QuickDateLeftRightPicker, getXTimesAgoDate,\r\n  getRangeIndexWithDefaultType, getNthPeriodWithRangeType\r\n} from '@bingads-webui-react/quick-date-left-right-picker';\r\nimport { ComparedDateRangeCalendar } from './compared-date-range-calendar';\r\nimport { defaultSpecificRanges } from './common/default-specific-ranges';\r\nimport { getSelectedRange, formatMonthDayYear, getComparedTypeFromRange } from './common/date-util';\r\nimport { ComparedOptions } from './common/compared-options';\r\nimport { ComparedDateRangePickerPropTypes, ComparedDateRangePickerDefaultProps } from './prop-types';\r\n\r\nconst i18nMap = {\r\n  apply: _TL_('Apply'),\r\n  close: _TL_('Close'),\r\n  compare: _TL_('Compare to: '),\r\n  defaultAriaLabel: _TL_('Select a date range'),\r\n};\r\nconst yesterday = getCivilDateToday().plus({ days: -1 });\r\nconst midDash = selectedRange => `${selectedRange && selectedRange.start ? ' - ' : ''}`;\r\nconst getDisplaySelectedDate = (i18n, selectedRange, timeZone, dateFormat) =>\r\n  `${formatMonthDayYear(selectedRange.start, i18n, timeZone, dateFormat)}${midDash(selectedRange)}${formatMonthDayYear(selectedRange.end, i18n, timeZone, dateFormat)}`;\r\nconst getDisplaySelectedDateWithType = (i18n, selectedType, selectedRange, timeZone, dateFormat) =>\r\n  `${selectedType ? selectedType.text : ''}(${getDisplaySelectedDate(i18n, selectedRange, timeZone, dateFormat)})`;\r\nconst getMainDatePickerDateDisplay = (i18n, selectedType, selectedRange, timeZone, dateFormat) =>\r\n  `${selectedType ? selectedType.text : ''}${selectedType ? ':' : ''} ${getDisplaySelectedDate(i18n, selectedRange, timeZone, dateFormat)}`;\r\n\r\nconst getXTimesAgoMainDatePickerDateDisplay = (i18n, selectedType, selectedRange, rangeIndex, timeZone, dateFormat) =>\r\n  `${selectedType ? getXTimesAgoDate(i18n, selectedType, rangeIndex) : ''}${selectedType ? ':' : ''} ${getDisplaySelectedDate(i18n, selectedRange, timeZone, dateFormat)}`;\r\n\r\nlet globalEvent = null;\r\n\r\nexport class ComparedDateRangePicker extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    const todayObj = this.props.i18n.getToday({ timeZone: props.timeZone });\r\n    this.inputRef = React.createRef();\r\n    this.today = new CivilDate(todayObj.year, todayObj.month, todayObj.day);\r\n    this.minDate = this.props.minDate || this.today.plus({ years: -3 });\r\n    this.maxDate = this.props.maxDate || this.today;\r\n    this.specificRanges = props.specificRanges.length ? props.specificRanges\r\n      : defaultSpecificRanges(props.i18n, props.timeZone, this.minDate);\r\n    let preSelectedRange;\r\n    let needUpdateInFirstTime = false;\r\n    if (!props.selectedRange || !props.selectedRange.start || !props.selectedRange.end) {\r\n      preSelectedRange = { start: yesterday, end: yesterday };\r\n      needUpdateInFirstTime = true;\r\n    } else {\r\n      preSelectedRange = props.selectedRange;\r\n    }\r\n    let selectedRange;\r\n    const rangeType = _.find(this.specificRanges, range => range.rangeId === props.rangeId);\r\n    const { rangeDays } = props;\r\n    let { rangeIndex = getRangeIndexWithDefaultType(rangeType) } = props;\r\n    if (props.shouldShowQuickLeftRightPicker && props.rangeIndex && props.rangeId !== RANGES.Custom) {\r\n      // Fix the selectedRange & the rangeIndex\r\n      const rangeWithIndex = getNthPeriodWithRangeType({ rangeId: props.rangeId }, rangeIndex, this.minDate, this.maxDate, rangeDays);\r\n      const { rangeIndex: cRangeIndex, range } = rangeWithIndex;\r\n      selectedRange = range;\r\n      rangeIndex = cRangeIndex;\r\n    } else {\r\n      selectedRange = getSelectedRange(preSelectedRange, this.specificRanges, props.rangeId);\r\n    }\r\n\r\n    // update the comparedOption according to the comparedTypeKey\r\n    const comparedOption =\r\n      _.find(ComparedOptions, option => option.keyToExport === props.comparedTypeKey);\r\n    const selectedComparedRange = props.comparedTypeKey && props.comparedTypeKey !== 'customPeriod' && comparedOption ?\r\n      comparedOption.get(selectedRange, props.rangeId) : props.selectedComparedRange;\r\n    if (needUpdateInFirstTime) {\r\n      props.onPickDateRanges({\r\n        selectedRange,\r\n        selectedComparedRange,\r\n        comparedOption,\r\n        rangeType: _.find(this.specificRanges, range => range.rangeId === RANGES.Yesterday),\r\n      });\r\n    }\r\n    let needUpdateBecauseOfCorrection = false;\r\n    needUpdateBecauseOfCorrection = ((!!props.selectedRange.start ^ !!selectedRange.start) ||\r\n      (!!props.selectedRange.start && !!selectedRange.start && compareCivilDate(props.selectedRange.start, selectedRange.start) !== 0))\r\n      || ((!!props.selectedRange.end ^ !!selectedRange.end) ||\r\n        (!!props.selectedRange.end && !!selectedRange.end && compareCivilDate(props.selectedRange.end, selectedRange.end) !== 0))\r\n      || ((!!props.selectedComparedRange.start ^ !!selectedComparedRange.start) ||\r\n        (!!props.selectedComparedRange.start && !!selectedComparedRange.start && compareCivilDate(props.selectedComparedRange.start, selectedComparedRange.start) !== 0))\r\n      || ((!!props.selectedComparedRange.end ^ !!selectedComparedRange.end) ||\r\n        (!!props.selectedComparedRange.end && !!selectedComparedRange.end && compareCivilDate(props.selectedComparedRange.end, selectedComparedRange.end) !== 0));\r\n    if (!needUpdateInFirstTime && needUpdateBecauseOfCorrection) {\r\n      props.onPickDateRanges({\r\n        selectedRange,\r\n        selectedComparedRange,\r\n        comparedOption,\r\n        rangeType,\r\n        rangeIndex,\r\n        rangeDays,\r\n      });\r\n    }\r\n    if (this.props.dateRangeLogger) {\r\n      this.props.dateRangeLogger({\r\n        method: 'constructor',\r\n        rangeType,\r\n        selectedRangeStart: selectedRange.start.toString(),\r\n        selectedRangeEnd: selectedRange.end.toString(),\r\n        selectedComparedRangeStart: selectedComparedRange.start ?\r\n          selectedComparedRange.start.toString() :\r\n          null,\r\n        selectedComparedRangeEnd: selectedComparedRange.end ?\r\n          selectedComparedRange.end.toString() :\r\n          null,\r\n        rangeIndex,\r\n        rangeDays,\r\n      });\r\n    }\r\n    this.state = {\r\n      dialogVisible: false,\r\n      comparedOn: !!props.comparedTypeKey,\r\n      rangeType,\r\n      selectedRange,\r\n      selectedComparedRange,\r\n      comparedOption,\r\n      rangeIndex,\r\n      rangeDays,\r\n    };\r\n    this.isToggleChecked = !!props.comparedTypeKey;\r\n  }\r\n  onQuickApply = ({\r\n    selectedRange,\r\n    selectedComparedRange,\r\n    rangeId,\r\n    rangeIndex,\r\n  }) => {\r\n    // debounce the global date update\r\n    if (globalEvent) {\r\n      // use the globalEvent for the new date picker DOM\r\n      clearTimeout(globalEvent);\r\n    }\r\n\r\n    const ranges = this.specificRanges;\r\n    const rangeType = _.find(ranges, range => range.rangeId === rangeId);\r\n    const {\r\n      comparedOption,\r\n      rangeDays,\r\n    } = this.state;\r\n\r\n    if ((!isRangeValid(selectedComparedRange)) && this.state.comparedOn !== false) {\r\n      this.setState(() => ({\r\n        rangeType,\r\n        selectedComparedRange,\r\n        selectedRange,\r\n        rangeIndex,\r\n        comparedOn: false,\r\n      }));\r\n      // for turning off the compared mode, we don't do the debounce\r\n      if (this.props.onPickDateRanges) {\r\n        this.props.onPickDateRanges({\r\n          selectedRange,\r\n          selectedComparedRange,\r\n          comparedOption,\r\n          rangeType,\r\n          rangeIndex,\r\n          rangeDays,\r\n        });\r\n      }\r\n      // switchCompared should be after onPickDateRanges\r\n      this.props.onSwitchCompare({ isChecked: false });\r\n    } else {\r\n      this.setState(() => ({\r\n        rangeType,\r\n        selectedComparedRange,\r\n        selectedRange,\r\n        rangeIndex,\r\n      }));\r\n      globalEvent = setTimeout(() => {\r\n        if (this.props.onPickDateRanges) {\r\n          this.props.onPickDateRanges({\r\n            selectedRange,\r\n            selectedComparedRange,\r\n            comparedOption,\r\n            rangeType,\r\n            rangeIndex,\r\n            rangeDays,\r\n          });\r\n        }\r\n      }, 250);\r\n    }\r\n\r\n    this.onDismiss();\r\n\r\n    // Should not debounce logging operation\r\n    if (this.props.dateRangeLogger) {\r\n      this.props.dateRangeLogger({\r\n        method: 'onQuickApply',\r\n        rangeType,\r\n        selectedRangeStart: selectedRange.start.toString(),\r\n        selectedRangeEnd: selectedRange.end.toString(),\r\n        selectedComparedRangeStart: selectedComparedRange.start ?\r\n          selectedComparedRange.start.toString() :\r\n          null,\r\n        selectedComparedRangeEnd: selectedComparedRange.end ?\r\n          selectedComparedRange.end.toString() :\r\n          null,\r\n        rangeIndex,\r\n        rangeDays,\r\n      });\r\n    }\r\n  }\r\n  onApply = ({\r\n    selectedRange,\r\n    selectedComparedRange,\r\n    comparedOption,\r\n    rangeId,\r\n  }) => {\r\n    const ranges = this.specificRanges;\r\n    const rangeType = _.find(ranges, range => range.rangeId === rangeId);\r\n    let { rangeIndex } = this.state;\r\n    const rangeDays = getDaysOfARange(selectedRange);\r\n\r\n    if (this.props.shouldShowQuickLeftRightPicker) {\r\n      // Check if we switch to the new range Type, or reselect the same Type\r\n      const currentRangeId = this.state.rangeType && this.state.rangeType.rangeId;\r\n      if (rangeId !== currentRangeId) {\r\n        rangeIndex = getRangeIndexWithDefaultType(rangeType);\r\n      } else if (rangeId !== RANGES.Custom) {\r\n        const selectedSpecificRange = _.find(this.specificRanges, range => range.rangeId === rangeId);\r\n        if (selectedSpecificRange && isTheSameRange(selectedRange, selectedSpecificRange.range)) {\r\n          rangeIndex = getRangeIndexWithDefaultType(rangeType);\r\n        }\r\n      }\r\n    }\r\n\r\n    this.setState({\r\n      rangeType,\r\n      selectedRange,\r\n      selectedComparedRange,\r\n      comparedOption,\r\n      rangeIndex,\r\n      rangeDays,\r\n    });\r\n    if (this.props.dateRangeLogger) {\r\n      this.props.dateRangeLogger({\r\n        method: 'onApply',\r\n        rangeType,\r\n        selectedRangeStart: selectedRange.start.toString(),\r\n        selectedRangeEnd: selectedRange.end.toString(),\r\n        selectedComparedRangeStart: selectedComparedRange.start ?\r\n          selectedComparedRange.start.toString() :\r\n          null,\r\n        selectedComparedRangeEnd: selectedComparedRange.end ?\r\n          selectedComparedRange.end.toString() :\r\n          null,\r\n        rangeIndex,\r\n        rangeDays,\r\n      });\r\n    }\r\n    this.onDismiss();\r\n\r\n    if (this.props.onPickDateRanges) {\r\n      this.props.onPickDateRanges({\r\n        selectedRange,\r\n        selectedComparedRange,\r\n        comparedOption,\r\n        rangeType,\r\n        rangeIndex,\r\n        rangeDays,\r\n      });\r\n    }\r\n    if (this.isToggleChecked !== this.state.comparedOn) {\r\n      this.setState({ comparedOn: this.isToggleChecked });\r\n      this.props.onSwitchCompare({ isChecked: this.isToggleChecked });\r\n    }\r\n  }\r\n  onDismiss = () => {\r\n    this.setState({ dialogVisible: false });\r\n  }\r\n  onInputClick = () => {\r\n    this.setState(preState => ({ dialogVisible: !preState.dialogVisible }));\r\n  }\r\n  onSwitchCompare = ({ isChecked }) => {\r\n    this.isToggleChecked = isChecked;\r\n  }\r\n  render() {\r\n    const {\r\n      disableCompare,\r\n      displayType,\r\n      isMainDatePicker,\r\n      i18n,\r\n      relativeDropdown,\r\n      timeZone,\r\n      dateFormat,\r\n      isMonthRangePicker,\r\n      isAriaLabelTranslated,\r\n      shouldShowQuickLeftRightPicker,\r\n    } = this.props;\r\n\r\n    const {\r\n      rangeType,\r\n      selectedComparedRange,\r\n      selectedRange,\r\n      comparedOn,\r\n      dialogVisible,\r\n      rangeIndex,\r\n      rangeDays,\r\n    } = this.state;\r\n    this.isToggleChecked = comparedOn;\r\n    const shouldShowComparedInInput = !disableCompare && comparedOn && selectedComparedRange && selectedComparedRange.start && selectedComparedRange.end;\r\n\r\n    this.ComparedDateRangeCalendarWithApplyAndClose = sizeClass =>\r\n      WithApplyAndCloseButton({\r\n        onApply: this.onApply,\r\n        onDismiss: this.onDismiss,\r\n        applyText: this.props.i18n.getString(i18nMap.apply),\r\n        closeText: this.props.i18n.getString(i18nMap.close),\r\n        className: classNames(\r\n          'compared-date-range-picker-dialog', sizeClass,\r\n          shouldShowComparedInInput ? 'double-row' : 'single-row'\r\n        ),\r\n      })(ComparedDateRangeCalendar);\r\n\r\n    const ComparedCalendar = (sizeClass) => {\r\n      // eslint-disable-next-line max-len\r\n      const ComparedDateRangeCalendarWithApplyAndClose = this.ComparedDateRangeCalendarWithApplyAndClose(sizeClass);\r\n\r\n      return (\r\n        <ComparedDateRangeCalendarWithApplyAndClose\r\n          disableCompare={disableCompare}\r\n          i18n={i18n}\r\n          onPickDateRanges={this.onApply}\r\n          onSwitchCompare={this.onSwitchCompare}\r\n          selectedRange={selectedRange}\r\n          selectedComparedRange={selectedComparedRange}\r\n          selectedRangeId={rangeType && rangeType.rangeId} // propagate the selected rangeId to the calendar\r\n          specificRanges={this.specificRanges}\r\n          timeZone={timeZone}\r\n          dateFormat={dateFormat}\r\n          today={this.today}\r\n          minDate={this.minDate}\r\n          maxDate={this.maxDate}\r\n          isMonthRangePicker={isMonthRangePicker}\r\n          isAriaLabelTranslated={isAriaLabelTranslated}\r\n          dateRangeLogger={this.props.dateRangeLogger}\r\n        />\r\n      );\r\n    };\r\n    const ResponsiveComparedCalendar = (\r\n      <Media query={{ maxHeight: 699 }}>\r\n        {matches => (\r\n          ComparedCalendar(matches ? 'smallCalendar' : 'largeCalendar')\r\n        )}\r\n      </Media>\r\n    );\r\n\r\n    let displaySelectedDate = '';\r\n    if (isMainDatePicker) {\r\n      displaySelectedDate = shouldShowQuickLeftRightPicker ? getXTimesAgoMainDatePickerDateDisplay(i18n, rangeType, selectedRange, rangeIndex, timeZone, dateFormat) :\r\n        getMainDatePickerDateDisplay(i18n, rangeType, selectedRange, timeZone, dateFormat);\r\n    } else {\r\n      displaySelectedDate = displayType ?\r\n        getDisplaySelectedDateWithType(i18n, rangeType, selectedRange, timeZone, dateFormat) :\r\n        getDisplaySelectedDate(i18n, selectedRange, timeZone, dateFormat);\r\n    }\r\n\r\n    const campaignUICalendar = (\r\n      <Overlay\r\n        className=\"date-picker-modal\"\r\n        show={this.state.dialogVisible}\r\n        onHide={this.onDismiss}\r\n        animation={false}\r\n        rootClose\r\n        placement=\"bottom\"\r\n        container={this}\r\n        target={this}\r\n      >\r\n        <FocusLock\r\n          onExit={this.onDismiss}\r\n          focusFirstItemOnMount\r\n        >\r\n          {ResponsiveComparedCalendar}\r\n        </FocusLock>\r\n      </Overlay>\r\n    );\r\n\r\n    const ariaLabelProp = (!this.props.ariaLabelledBy && !this.props.ariaLabel)\r\n      ? { 'aria-label': i18n.getString(i18nMap.defaultAriaLabel) }\r\n      : _.omit({\r\n        'aria-labelledby': this.props.ariaLabelledBy,\r\n        'aria-label': this.props.ariaLabel,\r\n      }, value => !value);\r\n\r\n    // Use this unique suffix to avoid duplicate id if add 2 component into one page.\r\n    const uniqueSuffix = `${uuid().substring(0, 8)}`;\r\n    return (\r\n      <div className=\"compared-date-range-picker\">\r\n        <div className=\"compared-date-range-picker-input\">\r\n          <button\r\n            className={classNames(\r\n              'range-display',\r\n              dialogVisible ? 'dialog-visible' : 'dialog-invisible',\r\n              shouldShowComparedInInput ? 'double-row' : 'single-row'\r\n            )}\r\n            onClick={this.onInputClick}\r\n            value={displaySelectedDate}\r\n            readOnly\r\n            ref={this.inputRef}\r\n            {...ariaLabelProp}\r\n            aria-haspopup\r\n            aria-expanded={this.state.dialogVisible}\r\n            aria-describedby={`selected-row-${uniqueSuffix} compared-row-${uniqueSuffix}`}\r\n          >\r\n            <div className=\"selected-row\" id={`selected-row-${uniqueSuffix}`}>\r\n              {displaySelectedDate}\r\n            </div>\r\n            {shouldShowComparedInInput && (\r\n              <div className=\"compared-row\" id={`compared-row-${uniqueSuffix}`}>\r\n                {`${i18n.getString(i18nMap.compare)}${getDisplaySelectedDate(i18n, selectedComparedRange, timeZone, dateFormat)}`}\r\n              </div>\r\n            )}\r\n          </button>\r\n          <Glyphicon\r\n            glyph=\"ba-Calendar\"\r\n            onClick={this.onInputClick}\r\n          />\r\n          {shouldShowQuickLeftRightPicker &&\r\n            (<QuickDateLeftRightPicker\r\n              shouldShowComparedInInput={shouldShowComparedInInput}\r\n              onPickDateRanges={this.onQuickApply}\r\n              rangeType={rangeType}\r\n              selectedRange={selectedRange}\r\n              rangeIndex={rangeIndex}\r\n              minDate={this.minDate}\r\n              maxDate={this.maxDate}\r\n              rangeDays={rangeDays}\r\n              comparedOption={getComparedTypeFromRange({\r\n                range: selectedRange,\r\n                comparedRange: selectedComparedRange,\r\n                selectedRangeId: rangeType && rangeType.rangeId,\r\n              })}\r\n              selectedComparedRange={selectedComparedRange}\r\n              dateRangeLogger={this.props.dateRangeLogger}\r\n            />)}\r\n        </div>\r\n        {relativeDropdown ?\r\n          <Overlay\r\n            show={this.state.dialogVisible}\r\n            onHide={this.onDismiss}\r\n            animation={false}\r\n            rootClose\r\n            placement=\"right\"\r\n            container={this}\r\n          >\r\n            <div id=\"overlayContainer\">\r\n              <div className=\"date-picker-modal overlay-dialog\">\r\n                <div className=\"compared-date-range-picker-dialog\">\r\n                  <FocusLock\r\n                    onExit={this.onDismiss}\r\n                    focusFirstItemOnMount\r\n                  >\r\n                    {ComparedCalendar()}\r\n                  </FocusLock>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </Overlay>\r\n          :\r\n          campaignUICalendar\r\n        }\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nComparedDateRangePicker.propTypes = ComparedDateRangePickerPropTypes;\r\nComparedDateRangePicker.defaultProps = ComparedDateRangePickerDefaultProps;\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__214__;","module.exports = __WEBPACK_EXTERNAL_MODULE__216__;","module.exports = __WEBPACK_EXTERNAL_MODULE__218__;","module.exports = __WEBPACK_EXTERNAL_MODULE__219__;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport classNames from 'classnames';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { compareCivilDate, getCivilDateToday } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { DoubleMonthCalendar } from './component/double-month-calendar';\r\nimport { SpecificRange } from './component/specific-select-range';\r\nimport { SpecificCompareType } from './component/specific-compare-type';\r\nimport { RangeDisplayAndToggle } from './component/compare-toggle';\r\nimport { ComparedOptions, ComparedType } from './common/compared-options';\r\nimport { DateRangeContainer } from './component/date-range-container';\r\nimport {\r\n  isRangeValid,\r\n  getComparedTypeFromRange,\r\n  getComparedRangeFromType,\r\n  getRangeOnSelectDate,\r\n} from './common/date-util';\r\nimport { RANGES } from './common/ranges';\r\n\r\nconst CalendarStatus = {\r\n  Initial: 0,\r\n  Start: 1,\r\n  End: 2,\r\n  CompareStart: 3,\r\n};\r\nconst InputBoxIndex = {\r\n  selectStart: 0,\r\n  selectEnd: 1,\r\n  compareStart: 2,\r\n  compareEnd: 3,\r\n};\r\nconst yesterday = getCivilDateToday().plus({ days: -1 });\r\nconst defaultComparedRange = { start: undefined, end: undefined };\r\n\r\nconst isDateInvalid = date => _.isNaN(_.get(date, 'year'))\r\n  || _.isNaN(_.get(date, 'month'))\r\n  || _.isNaN(_.get(date, 'day'));\r\n\r\nexport class ComparedDateRangeCalendar extends React.PureComponent {\r\n  static defaultProps = {\r\n    minDate: undefined,\r\n    maxDate: undefined,\r\n    onSwitchCompare: _.noop,\r\n    selectedRange: {\r\n      start: yesterday,\r\n      end: yesterday,\r\n    },\r\n    selectedComparedRange: defaultComparedRange,\r\n    isMonthRangePicker: false,\r\n    isAriaLabelTranslated: false,\r\n    selectedRangeId: undefined,\r\n    dateRangeLogger: () => {},\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    if (props.minDate && props.maxDate && compareCivilDate(props.minDate, props.maxDate) > 0) {\r\n      throw new Error('minDate should be earlier than maxDate');\r\n    }\r\n    const selectedRangeId = props.selectedRangeId || this.findIdFromSpecificRanges(props.selectedRange) || -1;\r\n    this.state = {\r\n      selectedRange: props.selectedRange,\r\n      selectedComparedRange: !props.disableCompare ? props.selectedComparedRange : {},\r\n      calendarStatus: CalendarStatus.Initial,\r\n      isCompareEnabled: !props.disableCompare,\r\n      isCompareOn: !props.disableCompare && isRangeValid(props.selectedComparedRange),\r\n      comparedOption: getComparedTypeFromRange({\r\n        range: props.selectedRange,\r\n        comparedRange: props.selectedComparedRange,\r\n        selectedRangeId,\r\n      }),\r\n      selectedRangeId,\r\n    };\r\n  }\r\n\r\n  onClickSpecificRange = (rangeId) => {\r\n    const { comparedOption } = this.state;\r\n    let { isCompareOn } = this.state;\r\n    const { range } = _.find(this.props.specificRanges, r => r.rangeId === rangeId);\r\n    const selectedRange = isRangeValid(range) ? range : this.state.selectedRange;\r\n    if (rangeId === RANGES.EntireTime) {\r\n      this.onSwitchCompare(false);\r\n      isCompareOn = false;\r\n    }\r\n    this.setState({\r\n      selectedRange,\r\n      selectedRangeId: rangeId,\r\n    });\r\n\r\n    if (!isCompareOn && isRangeValid(range)) {\r\n      this.props.onPickDateRanges({\r\n        selectedRange,\r\n        selectedComparedRange: defaultComparedRange,\r\n        comparedOption,\r\n        rangeId,\r\n      });\r\n      return;\r\n    }\r\n\r\n    this.setState({\r\n      calendarStatus: CalendarStatus.Initial,\r\n    });\r\n\r\n    if (isCompareOn && comparedOption.type !== ComparedType.Custom) {\r\n      this.setState({\r\n        selectedComparedRange: getComparedRangeFromType({\r\n          range: selectedRange,\r\n          type: comparedOption.type,\r\n          selectedRangeId: rangeId,\r\n        }),\r\n      });\r\n    }\r\n  }\r\n\r\n  onSelectDate = (date) => {\r\n    const {\r\n      isCompareOn,\r\n      calendarStatus,\r\n      selectedRange,\r\n      selectedComparedRange,\r\n    } = this.state;\r\n\r\n    if (calendarStatus === CalendarStatus.Initial) {\r\n      this.setStateForRangeChange(getRangeOnSelectDate({\r\n        start: date,\r\n        end: selectedRange.end > date ? selectedRange.end : null,\r\n        isMonthRangePicker: this.props.isMonthRangePicker,\r\n        minDate: this.props.minDate,\r\n        maxDate: this.props.maxDate,\r\n      }));\r\n    }\r\n    if (calendarStatus === CalendarStatus.Start) {\r\n      this.setStateForRangeChange(getRangeOnSelectDate({\r\n        start: selectedRange.start,\r\n        end: date,\r\n        isMonthRangePicker: this.props.isMonthRangePicker,\r\n        minDate: this.props.minDate,\r\n        maxDate: this.props.maxDate,\r\n      }));\r\n    }\r\n    if (calendarStatus === CalendarStatus.End && isCompareOn) {\r\n      this.setState({\r\n        selectedComparedRange: getRangeOnSelectDate({\r\n          start: date,\r\n          end: selectedComparedRange.end > date ? selectedComparedRange.end : null,\r\n        }),\r\n      });\r\n    }\r\n    if (calendarStatus === CalendarStatus.CompareStart && isCompareOn) {\r\n      this.setState({\r\n        selectedComparedRange: getRangeOnSelectDate({\r\n          start: selectedComparedRange.start,\r\n          end: date,\r\n        }),\r\n      });\r\n    }\r\n\r\n    this.setState(state => ({\r\n      calendarStatus: this.getNextStatus(state),\r\n    }));\r\n  }\r\n\r\n  onSwitchCompare = (isChecked) => {\r\n    const { selectedRangeId } = this.state;\r\n\r\n    if (isChecked) {\r\n      this.setState({\r\n        selectedComparedRange: getComparedRangeFromType({\r\n          range: this.state.selectedRange,\r\n          type: ComparedType.LastPeriod,\r\n          selectedRangeId,\r\n        }),\r\n        comparedOption:\r\n          _.find(ComparedOptions, option => option.type === ComparedType.LastPeriod),\r\n        isCompareOn: true,\r\n      });\r\n    } else {\r\n      this.setState({\r\n        selectedComparedRange: defaultComparedRange,\r\n        isCompareOn: false,\r\n      });\r\n    }\r\n    this.props.onSwitchCompare({ isChecked });\r\n  }\r\n\r\n  onChangeComparedType = (typeId) => {\r\n    const { selectedRangeId } = this.state;\r\n    const selectedOption = _.find(ComparedOptions, option => option.type === typeId);\r\n    this.setState({\r\n      comparedOption: selectedOption,\r\n    });\r\n\r\n    if (selectedOption.type === ComparedType.Custom) {\r\n      this.setState({\r\n        calendarStatus: CalendarStatus.End,\r\n      });\r\n    } else {\r\n      this.setState({\r\n        calendarStatus: CalendarStatus.Initial,\r\n        selectedComparedRange: getComparedRangeFromType({\r\n          range: this.state.selectedRange,\r\n          type: selectedOption.type,\r\n          selectedRangeId,\r\n        }),\r\n      });\r\n    }\r\n  }\r\n\r\n  onRangeInputChange = index => (date) => {\r\n    const { minDate, maxDate } = this.props;\r\n    let civilDate = date;\r\n\r\n    if (minDate && compareCivilDate(civilDate, minDate) < 0) {\r\n      civilDate = minDate;\r\n    } else if (maxDate && compareCivilDate(civilDate, maxDate) > 0) {\r\n      civilDate = maxDate;\r\n    }\r\n\r\n    const { selectedRange, selectedComparedRange } = this.state;\r\n\r\n    if (index === 0 && compareCivilDate(selectedRange.start, civilDate) !== 0) {\r\n      const range = {\r\n        start: civilDate,\r\n        end: compareCivilDate(selectedRange.end, civilDate) > 0 ? selectedRange.end : civilDate,\r\n      };\r\n      this.setStateForRangeChange(range);\r\n      this.setState({\r\n        calendarStatus: CalendarStatus.Start,\r\n      });\r\n    } else if (index === 1 && compareCivilDate(selectedRange.end, civilDate) !== 0) {\r\n      const start1 = compareCivilDate(selectedRange.start, civilDate) < 0 ?\r\n        selectedRange.start : civilDate;\r\n      const range = {\r\n        start: start1,\r\n        end: civilDate,\r\n      };\r\n      this.setStateForRangeChange(range);\r\n      this.setState(state => ({\r\n        calendarStatus: (state.isCompareOn &&\r\n          state.comparedOption && state.comparedOption.type === ComparedType.Custom) ?\r\n          CalendarStatus.End :\r\n          CalendarStatus.Initial,\r\n      }));\r\n    } else if (index === 2 &&\r\n      compareCivilDate(selectedComparedRange.start, civilDate) !== 0) {\r\n      this.setState(state => ({\r\n        selectedComparedRange: {\r\n          start: civilDate,\r\n          end: compareCivilDate(state.selectedComparedRange.end, civilDate) > 0 ?\r\n            state.selectedComparedRange.end :\r\n            civilDate,\r\n        },\r\n        comparedOption:\r\n          _.find(ComparedOptions, option => option.type === ComparedType.Custom),\r\n        calendarStatus: CalendarStatus.CompareStart,\r\n      }));\r\n    } else if (index === 3 &&\r\n      compareCivilDate(selectedComparedRange.end, civilDate) !== 0) {\r\n      this.setState(state => ({\r\n        selectedComparedRange: {\r\n          start: compareCivilDate(state.selectedComparedRange.start, civilDate) < 0 ?\r\n            state.selectedComparedRange.start :\r\n            civilDate,\r\n          end: civilDate,\r\n        },\r\n        comparedOption:\r\n          _.find(ComparedOptions, option => option.type === ComparedType.Custom),\r\n        calendarStatus: CalendarStatus.Initial,\r\n      }));\r\n    }\r\n  }\r\n\r\n  componentDidMount() {\r\n    // log the impression on mount\r\n    if (this.props.dateRangeLogger) {\r\n      this.props.dateRangeLogger({\r\n        method: 'comparedDateRangePickerImpression',\r\n      });\r\n    }\r\n  }\r\n\r\n  onInputFocus = (index) => {\r\n    this.setState({\r\n      calendarStatus: index,\r\n    });\r\n  }\r\n\r\n  setStateForRangeChange(range) {\r\n    if (isDateInvalid(range.start) || isDateInvalid(range.end)) {\r\n      return;\r\n    }\r\n    this.setState({\r\n      selectedRange: range,\r\n    });\r\n    const selectedRangeId = this.findIdFromSpecificRanges(range);\r\n    this.setState({\r\n      selectedRangeId,\r\n    });\r\n\r\n    const { isCompareOn, comparedOption } = this.state;\r\n    if (isCompareOn && comparedOption && comparedOption.type !== ComparedType.Custom) {\r\n      this.setState({\r\n        selectedComparedRange: getComparedRangeFromType({\r\n          range,\r\n          type: comparedOption.type,\r\n          selectedRangeId,\r\n        }),\r\n      });\r\n    }\r\n  }\r\n\r\n  getNextStatus(state) {\r\n    if ((!state.isCompareOn && state.calendarStatus === CalendarStatus.Start) ||\r\n      (state.isCompareOn && state.calendarStatus === CalendarStatus.CompareStart) ||\r\n      (state.isCompareOn &&\r\n        state.calendarStatus === CalendarStatus.Start &&\r\n        state.comparedOption && state.comparedOption.type !== ComparedType.Custom)) {\r\n      return CalendarStatus.Initial;\r\n    }\r\n\r\n    return state.calendarStatus + 1;\r\n  }\r\n\r\n  findIdFromSpecificRanges = (selectedRange) => {\r\n    const specificRange = _.find(\r\n      this.props.specificRanges,\r\n      r =>\r\n        r.range.start && r.range.end &&\r\n        selectedRange.start &&\r\n        selectedRange.end &&\r\n        compareCivilDate(r.range.start, selectedRange.start) === 0 &&\r\n        compareCivilDate(r.range.end, selectedRange.end) === 0\r\n    );\r\n    return specificRange ? specificRange.rangeId : _.find(this.props.specificRanges, r => r.key === 'Custom').rangeId;\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      selectedRange,\r\n      selectedComparedRange,\r\n      isCompareEnabled,\r\n      isCompareOn,\r\n      comparedOption,\r\n      selectedRangeId,\r\n      calendarStatus,\r\n    } = this.state;\r\n\r\n    const withCompareClassName = isCompareOn ? 'compare' : 'compare-off';\r\n    const leftPartClassName = classNames('left-part', withCompareClassName);\r\n\r\n    return (\r\n      <div className=\"compared-date-range-calendar\">\r\n        <div className={leftPartClassName}>\r\n          <div className=\"range-primary\">\r\n            <DateRangeContainer\r\n              dateRange={selectedRange}\r\n              onStartInputChange={this.onRangeInputChange(InputBoxIndex.selectStart)}\r\n              onEndInputChange={this.onRangeInputChange(InputBoxIndex.selectEnd)}\r\n              i18n={this.props.i18n}\r\n              minDate={this.props.minDate}\r\n              maxDate={this.props.maxDate}\r\n              timeZone={this.props.timeZone}\r\n              dateFormat={this.props.dateFormat}\r\n              highlightInputIndex={calendarStatus > 1 ? -1 : calendarStatus}\r\n              onInputFocus={i => this.onInputFocus(i)}\r\n              startDateAriaLabel={this.props.i18n.getString(_TL_('Custom start date'))}\r\n              endDateAriaLabel={this.props.i18n.getString(_TL_('Custom end date'))}\r\n              isMonthRangePicker={this.props.isMonthRangePicker}\r\n            />\r\n            <SpecificRange\r\n              i18n={this.props.i18n}\r\n              onClickSpecificRange={this.onClickSpecificRange}\r\n              selectedRangeId={selectedRangeId}\r\n              specificRanges={this.props.specificRanges}\r\n            />\r\n          </div>\r\n          {isCompareOn && ((\r\n            <div className=\"range-compare\">\r\n              <DateRangeContainer\r\n                onChangeSelectOption={this.onChangeComparedType}\r\n                selectedOption={comparedOption}\r\n                dateRange={selectedComparedRange}\r\n                onStartInputChange={this.onRangeInputChange(InputBoxIndex.compareStart)}\r\n                onEndInputChange={this.onRangeInputChange(InputBoxIndex.compareEnd)}\r\n                i18n={this.props.i18n}\r\n                minDate={this.props.minDate}\r\n                maxDate={this.props.maxDate}\r\n                timeZone={this.props.timeZone}\r\n                dateFormat={this.props.dateFormat}\r\n                highlightInputIndex={calendarStatus < 2 ? -1 : calendarStatus % 2}\r\n                onInputFocus={i => this.onInputFocus(i + 2)}\r\n                startDateAriaLabel={this.props.i18n.getString(_TL_('Custom compared start date'))}\r\n                endDateAriaLabel={this.props.i18n.getString(_TL_('Custom compared end date'))}\r\n              />\r\n              <SpecificCompareType\r\n                onChangeSelectOption={this.onChangeComparedType}\r\n                selectedOption={comparedOption}\r\n                i18n={this.props.i18n}\r\n              />\r\n            </div>))}\r\n        </div>\r\n        <div className=\"divider\" />\r\n        <div className=\"customize-range-select\">\r\n          <RangeDisplayAndToggle\r\n            i18n={this.props.i18n}\r\n            selectedDateRange={selectedRange}\r\n            selectedComparedDateRange={selectedComparedRange}\r\n            specificRangeId={selectedRangeId}\r\n            specificRanges={this.props.specificRanges}\r\n            onRangeInputChange={this.onRangeInputChange}\r\n            onChangeComparedType={this.onChangeComparedType}\r\n            onSwitchCompare={this.onSwitchCompare}\r\n            isCompareEnabled={isCompareEnabled}\r\n            isCompareOn={isCompareOn}\r\n            selectedOption={comparedOption}\r\n            highlightInputIndex={calendarStatus}\r\n            minDate={this.props.minDate}\r\n            maxDate={this.props.maxDate}\r\n            onInputFocus={this.onInputFocus}\r\n            timeZone={this.props.timeZone}\r\n          />\r\n          <div className=\"calendar\">\r\n            <DoubleMonthCalendar\r\n              selectedRanges={_.compact([\r\n                selectedRange,\r\n                isRangeValid(selectedComparedRange) ? selectedComparedRange : null,\r\n              ])}\r\n              onSelectDateCallback={this.onSelectDate}\r\n              minDate={this.props.minDate}\r\n              maxDate={this.props.maxDate}\r\n              today={this.props.today}\r\n              i18n={this.props.i18n}\r\n              isMonthRangePicker={this.props.isMonthRangePicker}\r\n              isAriaLabelTranslated={this.props.isAriaLabelTranslated}\r\n            />\r\n          </div>\r\n          <div className=\"apply-and-close\">\r\n            {this.props.renderApply({\r\n              selectedRange,\r\n              selectedComparedRange: isCompareOn && selectedRangeId !== RANGES.EntireTime\r\n                ? selectedComparedRange : defaultComparedRange,\r\n              comparedOption,\r\n              rangeId: selectedRangeId,\r\n            })}\r\n            {this.props.renderDismiss()}\r\n          </div>\r\n        </div>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nComparedDateRangeCalendar.propTypes = {\r\n  dateRangeLogger: PropTypes.func,\r\n  minDate: PropTypes.instanceOf(CivilDate),\r\n  maxDate: PropTypes.instanceOf(CivilDate),\r\n  today: PropTypes.instanceOf(CivilDate).isRequired,\r\n  selectedRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  timeZone: PropTypes.string.isRequired,\r\n  dateFormat: PropTypes.string.isRequired,\r\n  selectedComparedRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  specificRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    rangeId: PropTypes.number,\r\n    key: PropTypes.string,\r\n    range: PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    }),\r\n  })).isRequired,\r\n  onPickDateRanges: PropTypes.func.isRequired,\r\n  onSwitchCompare: PropTypes.func,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseCivilDate: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  disableCompare: PropTypes.bool.isRequired,\r\n  renderApply: PropTypes.func.isRequired,\r\n  renderDismiss: PropTypes.func.isRequired,\r\n  isMonthRangePicker: PropTypes.bool,\r\n  isAriaLabelTranslated: PropTypes.bool,\r\n  selectedRangeId: PropTypes.number,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport { compareCivilDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { SingleMonthCalendar } from '@bingads-webui-react/single-month-calendar';\r\n\r\nexport class DoubleMonthCalendar extends React.Component {\r\n  static defaultProps = {\r\n    minDate: undefined,\r\n    maxDate: undefined,\r\n    isMonthRangePicker: false,\r\n    isAriaLabelTranslated: false,\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    const [selectedDateRange] = this.props.selectedRanges;\r\n    const leftNavigatedDate = props.isMonthRangePicker\r\n      ? new CivilDate(selectedDateRange.start.year === selectedDateRange.end.year\r\n        ? selectedDateRange.start.year - 1\r\n        : selectedDateRange.start.year, 1, 1)\r\n      : new CivilDate(\r\n        selectedDateRange.end.year,\r\n        selectedDateRange.end.month - 1,\r\n        15\r\n      );\r\n    this.state = {\r\n      leftNavigatedDate,\r\n    };\r\n  }\r\n\r\n  shouldComponentUpdate(nextProps, nextState) {\r\n    if (nextProps.selectedRanges.length !== this.props.selectedRanges.length ||\r\n      !nextProps.selectedRanges[0].start ||\r\n      !this.props.selectedRanges[0].start ||\r\n      !nextProps.selectedRanges[0].end ||\r\n      !this.props.selectedRanges[0].end ||\r\n      compareCivilDate(\r\n        nextProps.selectedRanges[0].start,\r\n        this.props.selectedRanges[0].start\r\n      ) !== 0 ||\r\n      compareCivilDate(nextProps.selectedRanges[0].end, this.props.selectedRanges[0].end) !== 0 ||\r\n      (nextProps.selectedRanges.length === 2 &&\r\n        (\r\n          !nextProps.selectedRanges[1].start ||\r\n          !this.props.selectedRanges[1].start ||\r\n          !nextProps.selectedRanges[1].end ||\r\n          !this.props.selectedRanges[1].end ||\r\n          compareCivilDate(\r\n            nextProps.selectedRanges[1].start,\r\n            this.props.selectedRanges[1].start\r\n          ) !== 0 ||\r\n          compareCivilDate(\r\n            nextProps.selectedRanges[1].end,\r\n            this.props.selectedRanges[1].end\r\n          ) !== 0)) ||\r\n      compareCivilDate(nextProps.today, this.props.today) !== 0 ||\r\n      nextState.leftNavigatedDate !== this.state.leftNavigatedDate\r\n    ) {\r\n      return true;\r\n    }\r\n\r\n    return false;\r\n  }\r\n\r\n  onNavigateStartMonthDate = (date) => {\r\n    this.setState({\r\n      leftNavigatedDate: date,\r\n    });\r\n  }\r\n  onNavigateEndMonthDate = (date) => {\r\n    if (this.props.isMonthRangePicker) {\r\n      this.setState({\r\n        leftNavigatedDate: date.plus({ years: -1 }),\r\n      });\r\n      return;\r\n    }\r\n    this.setState({\r\n      leftNavigatedDate: date.plus({ months: -1 }),\r\n    });\r\n  }\r\n\r\n  onSelectDate = (date) => {\r\n    this.props.onSelectDateCallback(date);\r\n  }\r\n\r\n  render() {\r\n    const { leftNavigatedDate } = this.state;\r\n    const {\r\n      minDate,\r\n      maxDate,\r\n      selectedRanges,\r\n      today,\r\n      i18n,\r\n      isMonthRangePicker,\r\n    } = this.props;\r\n    return (\r\n      <div className=\"double-month-calendar\">\r\n        <div className=\"left-calendar\">\r\n          <SingleMonthCalendar\r\n            minDate={minDate}\r\n            maxDate={maxDate}\r\n            today={today}\r\n            onSelectDate={this.onSelectDate}\r\n            selectedRanges={selectedRanges}\r\n            navigatedDate={leftNavigatedDate}\r\n            onNavigateDate={this.onNavigateStartMonthDate}\r\n            isRightNavigateVisible={false}\r\n            i18n={i18n}\r\n            isMonthRangePicker={isMonthRangePicker}\r\n          />\r\n        </div>\r\n        <div className=\"divider\" />\r\n        <div className=\"right-calendar\">\r\n          <SingleMonthCalendar\r\n            minDate={minDate}\r\n            maxDate={maxDate}\r\n            today={today}\r\n            onSelectDate={this.onSelectDate}\r\n            selectedRanges={selectedRanges}\r\n            navigatedDate={isMonthRangePicker\r\n              ? new CivilDate(leftNavigatedDate.year + 1, leftNavigatedDate.month, 1)\r\n              : new CivilDate(leftNavigatedDate.year, leftNavigatedDate.month + 1, 15)}\r\n            onNavigateDate={this.onNavigateEndMonthDate}\r\n            isLeftNavigateVisible={false}\r\n            i18n={i18n}\r\n            isMonthRangePicker={isMonthRangePicker}\r\n            isAriaLabelTranslated={this.props.isAriaLabelTranslated}\r\n          />\r\n        </div>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nDoubleMonthCalendar.propTypes = {\r\n  minDate: PropTypes.instanceOf(CivilDate),\r\n  maxDate: PropTypes.instanceOf(CivilDate),\r\n  today: PropTypes.instanceOf(CivilDate).isRequired,\r\n  selectedRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  })).isRequired,\r\n  onSelectDateCallback: PropTypes.func.isRequired,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    getFirstDayOfWeek: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  isMonthRangePicker: PropTypes.bool,\r\n  isAriaLabelTranslated: PropTypes.bool,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__222__;","import React from 'react';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport PropTypes from 'prop-types';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\n\r\nexport class SpecificRange extends React.PureComponent {\r\n  static defaultProps = {\r\n    selectedRangeId: null,\r\n    onClickSpecificRange: undefined,\r\n  }\r\n\r\n  render() {\r\n    return (\r\n      <ol className=\"specific-part specific-range-select\" role=\"listbox\" aria-label={this.props.i18n.getString(_TL_('date options'))} >\r\n        {\r\n          this.props.specificRanges.map(range => (\r\n            <li\r\n              role=\"option\"\r\n              key={range.key}\r\n              onClick={() => this.props.onClickSpecificRange(range.rangeId)}\r\n              onKeyDown={event =>\r\n                submitEvent(this.props.onClickSpecificRange)(event, range.rangeId)}\r\n              className={this.props.selectedRangeId === range.rangeId ? 'selected' : ''}\r\n              data-value={range.key}\r\n              tabIndex=\"0\"\r\n              aria-selected={this.props.selectedRangeId === range.rangeId}\r\n            >\r\n              { range.text}\r\n            </li>\r\n          ))\r\n        }\r\n      </ol >\r\n    );\r\n  }\r\n}\r\n\r\nSpecificRange.propTypes = {\r\n  specificRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    rangeId: PropTypes.number,\r\n    key: PropTypes.string,\r\n    range: PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    }),\r\n  })).isRequired,\r\n  onClickSpecificRange: PropTypes.func,\r\n  selectedRangeId: PropTypes.number,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\nimport { ComparedOptions } from '../common/compared-options';\r\n\r\nexport class SpecificCompareType extends React.PureComponent {\r\n  static defaultProps = {\r\n    selectedOption: null,\r\n    onChangeSelectOption: undefined,\r\n  }\r\n\r\n  render() {\r\n    return (\r\n      <ol className=\"specific-part specific-type-select\" role=\"presentation\">\r\n        {ComparedOptions.map(option => (\r\n          <li\r\n            key={option.type}\r\n            onClick={() => this.props.onChangeSelectOption(option.type)}\r\n            onKeyDown={event => submitEvent(this.props.onChangeSelectOption)(event, option.type)}\r\n            className={this.props.selectedOption.type === option.type ? 'selected' : ''}\r\n            data-value={option.keyToExport}\r\n            // eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\r\n            role=\"button\"\r\n            tabIndex=\"0\"\r\n          >\r\n            {this.props.i18n.getString(option.textToShow)}\r\n          </li>\r\n        ))}\r\n      </ol>\r\n    );\r\n  }\r\n}\r\n\r\nSpecificCompareType.propTypes = {\r\n  onChangeSelectOption: PropTypes.func,\r\n  selectedOption: PropTypes.shape({\r\n    type: PropTypes.number,\r\n    keyToExport: PropTypes.string,\r\n    textToShow: PropTypes.string,\r\n    textToExport: PropTypes.string,\r\n    get: PropTypes.func,\r\n  }),\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n};\r\n","import { getLastMonth } from './date-util';\r\n\r\nconst i18nMap = {\r\n  LastPeriodShowText: _TL_('Last period'),\r\n  LastMonthShowText: _TL_('Last month'),\r\n  LastYearShowText: _TL_('Last year'),\r\n  CustomShowText: _TL_('Custom'),\r\n};\r\n\r\nexport const ComparedType = {\r\n  LastPeriod: 0,\r\n  LastMonth: 1,\r\n  LastYear: 2,\r\n  Custom: 3,\r\n};\r\nexport const ComparedOptions = [\r\n  {\r\n    type: ComparedType.LastPeriod,\r\n    textToShow: i18nMap.LastPeriodShowText,\r\n    textToExport: 'Previous period',\r\n    keyToExport: 'previousPeriod',\r\n    get: (range, specificRangeId) => {\r\n      switch (specificRangeId) {\r\n        // this week\r\n        case 7:\r\n        case 8:\r\n          return ({\r\n            start: range.start.plus({ days: -7 }),\r\n            end: range.end.plus({ days: -7 }),\r\n          });\r\n        // this month\r\n        case 10:\r\n          return ({\r\n            start: getLastMonth(range.start),\r\n            end: getLastMonth(range.end),\r\n          });\r\n        default: {\r\n          const t2 = new Date(range.end.year, range.end.month - 1, range.end.day).getTime();\r\n          const t1 = new Date(range.start.year, range.start.month - 1, range.start.day).getTime();\r\n          // eslint-disable-next-line radix\r\n          const difference = parseInt((t2 - t1) / (24 * 3600 * 1000));\r\n          return ({\r\n            start: range.start.plus({ days: -1 - difference }),\r\n            end: range.start.plus({ days: -1 }),\r\n          });\r\n        }\r\n      }\r\n    },\r\n  }, {\r\n    type: ComparedType.LastMonth,\r\n    textToShow: i18nMap.LastMonthShowText,\r\n    textToExport: 'Last month',\r\n    keyToExport: 'lastMonth',\r\n    get: range => ({\r\n      start: getLastMonth(range.start),\r\n      end: getLastMonth(range.end),\r\n    }),\r\n  }, {\r\n    type: ComparedType.LastYear,\r\n    textToShow: i18nMap.LastYearShowText,\r\n    textToExport: 'Same period last year',\r\n    keyToExport: 'samePeriodLastYear',\r\n    get: range => ({\r\n      start: range.start.plus({ years: -1 }),\r\n      end: range.end.plus({ years: -1 }),\r\n    }),\r\n  }, {\r\n    type: ComparedType.Custom,\r\n    textToShow: i18nMap.CustomShowText,\r\n    textToExport: 'Custom',\r\n    keyToExport: 'customPeriod',\r\n    get: () => ({\r\n      start: undefined,\r\n      end: undefined,\r\n    }),\r\n  },\r\n];\r\n","import { compareCivilDate, getCivilDateDayOfWeek,\r\n  getCivilDateMonthStart, getCivilDateMonthEnd } from '@bingads-webui-universal/temporal-utitlities';\r\nimport _ from 'underscore';\r\nimport { ComparedOptions } from './compared-options';\r\n\r\nexport const getLastMonth = (date) => {\r\n  let lastMonthDate = date.plus({ months: -1 });\r\n  if (lastMonthDate.day !== date.day) {\r\n    lastMonthDate = lastMonthDate.plus({ days: -lastMonthDate.day });\r\n  }\r\n  return lastMonthDate;\r\n};\r\n\r\nexport const getThisMonday = date => (getCivilDateDayOfWeek(date) === 0 ?\r\n  date.plus({ days: -6 }) :\r\n  date.plus({ days: -getCivilDateDayOfWeek(date) + 1 }));\r\n\r\nexport const formatMonthDayYear = (date, i18n, timeZone, dateFormat = 'M/d/yyyy') =>\r\n  `${date ? i18n.formatCivilDate(date, { raw: dateFormat, timeZone }) : ''}`;\r\n\r\nexport const getSelectedRange = (selectedRange, specificRanges, specificRngeId) => {\r\n  if (!specificRngeId || specificRngeId === 4) {\r\n    return selectedRange;\r\n  }\r\n  const selectedSpecificRange = _.find(specificRanges, range => range.rangeId === specificRngeId);\r\n  return selectedSpecificRange ? selectedSpecificRange.range : selectedRange;\r\n};\r\n\r\nexport const isRangeValid = range =>\r\n  Boolean(range.start && range.end && compareCivilDate(range.start, range.end) <= 0);\r\n\r\nexport const getComparedTypeFromRange = ({ range, comparedRange, selectedRangeId }) => {\r\n  if (isRangeValid(range) && isRangeValid(comparedRange)) {\r\n    const option = _.find(\r\n      ComparedOptions,\r\n      (op) => {\r\n        const ran = op.get(range, selectedRangeId);\r\n        return ran.start && ran.end && comparedRange.start && comparedRange.end\r\n          && compareCivilDate(ran.start, comparedRange.start) === 0\r\n          && compareCivilDate(ran.end, comparedRange.end) === 0;\r\n      }\r\n    );\r\n    return option || ComparedOptions[3];\r\n  }\r\n\r\n  return ComparedOptions[3];\r\n};\r\n\r\nexport const getComparedRangeFromType = ({ range, type, selectedRangeId }) =>\r\n  _.find(ComparedOptions, option => option.type === type).get(range, selectedRangeId);\r\n\r\nexport const getStartDate = ({\r\n  date,\r\n  isMonthRangePicker,\r\n  minDate,\r\n}) => {\r\n  if (isMonthRangePicker) {\r\n    const monthStart = getCivilDateMonthStart(date);\r\n    return minDate && compareCivilDate(monthStart, minDate) < 0\r\n      ? minDate\r\n      : monthStart;\r\n  }\r\n  return date;\r\n};\r\n\r\nexport const getEndDate = ({\r\n  date,\r\n  isMonthRangePicker,\r\n  maxDate,\r\n}) => {\r\n  if (isMonthRangePicker) {\r\n    const monthEnd = getCivilDateMonthEnd(date);\r\n    return maxDate && compareCivilDate(monthEnd, maxDate) > 0\r\n      ? maxDate\r\n      : monthEnd;\r\n  }\r\n  return date;\r\n};\r\n\r\nexport const getRangeOnSelectDate = ({\r\n  start,\r\n  end,\r\n  isMonthRangePicker = false,\r\n  maxDate,\r\n  minDate,\r\n}) => {\r\n  if (!end) {\r\n    return {\r\n      start: getStartDate({ date: start, isMonthRangePicker, minDate }),\r\n      end: getEndDate({ date: start, isMonthRangePicker, maxDate }),\r\n    };\r\n  }\r\n\r\n  if (end < start) {\r\n    return {\r\n      start: getStartDate({ date: end, isMonthRangePicker, minDate }),\r\n      end: getEndDate({ date: start, isMonthRangePicker, maxDate }),\r\n    };\r\n  }\r\n\r\n  return {\r\n    start: getStartDate({ date: start, isMonthRangePicker, minDate }),\r\n    end: getEndDate({ date: end, isMonthRangePicker, maxDate }),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { compareCivilDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { Toggle } from '@bingads-webui-react/toggle';\r\n\r\nconst i18nMap = {\r\n  selected: _TL_('Selected'),\r\n  compared: _TL_('Compare'),\r\n  compareLabel: _TL_('Compared date ranges'),\r\n  on: _TL_('On'),\r\n  off: _TL_('Off'),\r\n};\r\n\r\nexport class RangeDisplayAndToggle extends React.Component {\r\n  /*  eslint-disable jsx-a11y/label-has-for */\r\n  /*  label is for toggle not input */\r\n\r\n  static defaultProps = {\r\n    specificRangeId: -1,\r\n    selectedDateRange: { start: undefined, end: undefined },\r\n    selectedComparedDateRange: { start: undefined, end: undefined },\r\n    onSwitchCompare: undefined,\r\n    selectedOption: undefined,\r\n    highlightInputIndex: -1,\r\n  }\r\n\r\n  shouldComponentUpdate(nextProps) {\r\n    if (\r\n      !nextProps.selectedDateRange.start ||\r\n      !this.props.selectedDateRange.start ||\r\n      !nextProps.selectedDateRange.end ||\r\n      !this.props.selectedDateRange.end ||\r\n      compareCivilDate(\r\n        nextProps.selectedDateRange.start,\r\n        this.props.selectedDateRange.start\r\n      ) !== 0 ||\r\n      compareCivilDate(nextProps.selectedDateRange.end, this.props.selectedDateRange.end) !== 0 ||\r\n      nextProps.specificRangeId !== this.props.specificRangeId ||\r\n      nextProps.highlightInputIndex !== this.props.specificRangeId ||\r\n      nextProps.selectedOption !== this.props.selectedOption ||\r\n      nextProps.isCompareOn !== this.props.isCompareOn ||\r\n      (nextProps.isCompareOn &&\r\n        (!this.props.selectedComparedDateRange.start ||\r\n        !this.props.selectedComparedDateRange.end ||\r\n        !nextProps.selectedComparedDateRange.start ||\r\n        !nextProps.selectedComparedDateRange.end)) ||\r\n      (nextProps.isCompareOn &&\r\n        compareCivilDate(\r\n          nextProps.selectedComparedDateRange.start,\r\n          this.props.selectedComparedDateRange.start\r\n        ) !== 0) ||\r\n      (nextProps.isCompareOn\r\n      && compareCivilDate(\r\n        nextProps.selectedComparedDateRange.end,\r\n        this.props.selectedComparedDateRange.end\r\n      ) !== 0)) {\r\n      return true;\r\n    }\r\n\r\n    return false;\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      specificRanges,\r\n      specificRangeId,\r\n      i18n,\r\n      isCompareEnabled,\r\n      isCompareOn,\r\n    } = this.props;\r\n    const selectedRange = specificRangeId !== -1 ?\r\n      _.filter(specificRanges, range => range.rangeId === specificRangeId)[0] : null;\r\n    const label = `${i18n.getString(i18nMap.selected)}${selectedRange ?\r\n      `: ${selectedRange.text}` : ''}`;\r\n    const marker = isCompareOn ? i18n.getString(i18nMap.on) : i18n.getString(i18nMap.off);\r\n    return (\r\n      <div className=\"toggle-part\" style={isCompareEnabled ? {} : { visibility: 'hidden' }}>\r\n        <label htmlFor=\"compared-toggle\" className=\"compared-toggle-label\">{this.props.i18n.getString(i18nMap.compared)}</label>\r\n        <Toggle\r\n          id=\"compared-toggle\"\r\n          name=\"compared-toggle\"\r\n          label={i18n.getString(i18nMap.compareLabel)}\r\n          className=\"compared-toggle toggle\"\r\n          onChange={this.props.onSwitchCompare}\r\n          checked={this.props.isCompareOn}\r\n          tabIndex=\"0\"\r\n          i18n={i18n}\r\n        />\r\n        <label htmlFor=\"compared-toggle\" className=\"on-off-marker\">{marker}</label>\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nRangeDisplayAndToggle.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  selectedDateRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  selectedComparedDateRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  specificRangeId: PropTypes.number,\r\n  specificRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    key: PropTypes.string,\r\n    range: PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    }),\r\n  })).isRequired,\r\n  onSwitchCompare: PropTypes.func,\r\n  isCompareEnabled: PropTypes.bool.isRequired,\r\n  isCompareOn: PropTypes.bool.isRequired,\r\n  selectedOption: PropTypes.shape({\r\n    type: PropTypes.number,\r\n    keyToExport: PropTypes.string,\r\n    textToShow: PropTypes.string,\r\n    textToExport: PropTypes.string,\r\n    get: PropTypes.func,\r\n  }),\r\n  highlightInputIndex: PropTypes.number,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__228__;","import React from 'react';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport PropTypes from 'prop-types';\r\nimport { compareCivilDate, getCivilDateMonthStart, getCivilDateMonthEnd } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { DateRange } from './date-range';\r\nimport { formatMonthDayYear } from '../common/date-util';\r\n\r\nconst getCivelDateFromValue = (value, i18n, dateFormat = 'M/d/yyyy') => {\r\n  const parsedCivilDate = i18n.parseCivilDate(value, { raw: dateFormat });\r\n\r\n  return parsedCivilDate ?\r\n    new CivilDate(parsedCivilDate.year, parsedCivilDate.month, parsedCivilDate.day) :\r\n    undefined;\r\n};\r\n\r\nexport class DateRangeContainer extends React.Component {\r\n  static defaultProps = {\r\n    label: '',\r\n    dateRange: null,\r\n    onChangeSelectOption: null,\r\n    onStartInputChange: null,\r\n    onEndInputChange: null,\r\n    selectedOption: undefined,\r\n    highlightInputIndex: -1,\r\n    isMonthRangePicker: false,\r\n  };\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    const {\r\n      i18n,\r\n      timeZone,\r\n      dateFormat,\r\n      dateRange,\r\n    } = props;\r\n    this.state = ({\r\n      start: formatMonthDayYear(dateRange.start, i18n, timeZone, dateFormat),\r\n      end: formatMonthDayYear(dateRange.end, i18n, timeZone, dateFormat),\r\n      prevPropsDateRange: props.dateRange,\r\n    });\r\n  }\r\n\r\n  static getDerivedStateFromProps(nextProps, prevState) {\r\n    const {\r\n      i18n,\r\n      timeZone,\r\n      dateFormat,\r\n      dateRange,\r\n    } = nextProps;\r\n    if (nextProps.dateRange !== prevState.prevPropsDateRange) {\r\n      return {\r\n        start: formatMonthDayYear(dateRange.start, i18n, timeZone, dateFormat),\r\n        end: formatMonthDayYear(dateRange.end, i18n, timeZone, dateFormat),\r\n        prevPropsDateRange: dateRange,\r\n      };\r\n    }\r\n    return null;\r\n  }\r\n\r\n  shouldComponentUpdate(nextProps, nextState) {\r\n    if (nextState.start !== this.state.start ||\r\n      nextState.end !== this.state.end ||\r\n      nextProps.highlightInputIndex !== this.props.highlightInputIndex ||\r\n      nextProps.selectedOption !== this.props.selectedOption ||\r\n      !nextProps.dateRange.start ||\r\n      !nextProps.dateRange.end ||\r\n      !this.props.dateRange.start ||\r\n      !this.props.dateRange.end ||\r\n      compareCivilDate(nextProps.dateRange.start, this.props.dateRange.start) !== 0 ||\r\n      compareCivilDate(nextProps.dateRange.end, this.props.dateRange.end) !== 0) {\r\n      return true;\r\n    }\r\n\r\n    return false;\r\n  }\r\n\r\n  onStartInputChange = (value) => {\r\n    this.setState({ start: value });\r\n  }\r\n\r\n  onEndInputChange = (value) => {\r\n    this.setState({ end: value });\r\n  }\r\n\r\n  onStartChangeComplete = (event) => {\r\n    const {\r\n      i18n,\r\n      timeZone,\r\n      dateFormat,\r\n      dateRange,\r\n      isMonthRangePicker,\r\n    } = this.props;\r\n    const { value } = event.target;\r\n    const civilDate = getCivelDateFromValue(value, i18n, dateFormat);\r\n\r\n    if (civilDate) {\r\n      this.props.onStartInputChange(isMonthRangePicker\r\n        ? getCivilDateMonthStart(civilDate)\r\n        : civilDate);\r\n    } else {\r\n      // invalid input, just roll back to last props\r\n      this.setState({\r\n        start: formatMonthDayYear(dateRange.start, i18n, timeZone, dateFormat),\r\n      });\r\n    }\r\n  }\r\n\r\n  onEndChangeComplete = (event) => {\r\n    const {\r\n      i18n,\r\n      timeZone,\r\n      dateFormat,\r\n      dateRange,\r\n      isMonthRangePicker,\r\n    } = this.props;\r\n    const { value } = event.target;\r\n    const civilDate = getCivelDateFromValue(value, i18n, dateFormat);\r\n\r\n    if (civilDate) {\r\n      this.props.onEndInputChange(isMonthRangePicker\r\n        ? getCivilDateMonthEnd(civilDate)\r\n        : civilDate);\r\n    } else {\r\n      // invalid input, just roll back to last props\r\n      this.setState({\r\n        end: formatMonthDayYear(dateRange.end, i18n, timeZone, dateFormat),\r\n      });\r\n    }\r\n  }\r\n\r\n  render() {\r\n    return (\r\n      <DateRange\r\n        label={this.props.label}\r\n        start={this.state.start}\r\n        end={this.state.end}\r\n        highlightInputIndex={this.props.highlightInputIndex}\r\n        onChangeSelectOption={e => this.props.onChangeSelectOption(Number(e.target.value))}\r\n        onStartInputChange={e => this.onStartInputChange(e.target.value)}\r\n        onEndInputChange={e => this.onEndInputChange(e.target.value)}\r\n        onStartChangeComplete={this.onStartChangeComplete}\r\n        onEndChangeComplete={this.onEndChangeComplete}\r\n        selectedOption={this.props.selectedOption}\r\n        i18n={this.props.i18n}\r\n        onInputFocus={this.props.onInputFocus}\r\n        startDateAriaLabel={this.props.startDateAriaLabel}\r\n        endDateAriaLabel={this.props.endDateAriaLabel}\r\n      />\r\n    );\r\n  }\r\n}\r\n\r\nDateRangeContainer.propTypes = {\r\n  label: PropTypes.string,\r\n  dateRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  onChangeSelectOption: PropTypes.func,\r\n  onStartInputChange: PropTypes.func,\r\n  onEndInputChange: PropTypes.func,\r\n  timeZone: PropTypes.string.isRequired,\r\n  dateFormat: PropTypes.string.isRequired,\r\n  selectedOption: PropTypes.shape({\r\n    type: PropTypes.number,\r\n    keyToExport: PropTypes.string,\r\n    textToShow: PropTypes.string,\r\n    textToExport: PropTypes.string,\r\n    get: PropTypes.func,\r\n  }),\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  highlightInputIndex: PropTypes.number,\r\n  onInputFocus: PropTypes.func.isRequired,\r\n  startDateAriaLabel: PropTypes.string.isRequired,\r\n  endDateAriaLabel: PropTypes.string.isRequired,\r\n  isMonthRangePicker: PropTypes.bool,\r\n};\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { ComparedOptions } from '../common/compared-options';\r\n\r\nexport class DateRange extends React.PureComponent {\r\n  static defaultProps = {\r\n    label: '',\r\n    start: '',\r\n    end: '',\r\n    onChangeSelectOption: null,\r\n    onStartInputChange: null,\r\n    onEndInputChange: null,\r\n    onStartChangeComplete: null,\r\n    onEndChangeComplete: null,\r\n    selectedOption: undefined,\r\n    highlightInputIndex: -1,\r\n  }\r\n\r\n  constructor(props) {\r\n    super(props);\r\n    this.startRef = React.createRef();\r\n    this.endRef = React.createRef();\r\n  }\r\n\r\n  componentDidUpdate() {\r\n    if (this.props.highlightInputIndex !== 0) {\r\n      this.startRef.current.blur();\r\n    }\r\n\r\n    if (this.props.highlightInputIndex !== 1) {\r\n      this.endRef.current.blur();\r\n    }\r\n  }\r\n\r\n  onStartInputKeyDown = (event) => {\r\n    if (event.keyCode === 13) {\r\n      this.onStartChangeDone(event);\r\n    }\r\n  }\r\n\r\n  onEndInputKeyDown = (event) => {\r\n    if (event.keyCode === 13) {\r\n      this.onEndChangeDone(event);\r\n    }\r\n  }\r\n\r\n  onStartChangeDone = (event) => {\r\n    this.props.onStartChangeComplete(event);\r\n  }\r\n\r\n  onEndChangeDone = (event) => {\r\n    this.props.onEndChangeComplete(event);\r\n  }\r\n\r\n  render() {\r\n    return (\r\n      <div className=\"date-range\">\r\n        {(!this.props.selectedOption || _.size(ComparedOptions) < 1) && (<span className=\"date-range-label\">{this.props.label}</span>)}\r\n        {this.props.selectedOption && _.size(ComparedOptions) >= 1 && (\r\n        <select\r\n          className=\"date-range-label\"\r\n          onChange={this.props.onChangeSelectOption}\r\n          value={this.props.selectedOption.type}\r\n        >\r\n          {_.map(ComparedOptions, (option, key) =>\r\n            (\r\n              <option key={key} value={option.type}>\r\n                {this.props.i18n.getString(option.textToShow)}\r\n              </option>\r\n            ))}\r\n        </select>)}\r\n        <input\r\n          type=\"text\"\r\n          className={classNames('start', { highlight: this.props.highlightInputIndex === 0 })}\r\n          value={this.props.start}\r\n          onKeyDown={this.onStartInputKeyDown}\r\n          onChange={this.props.onStartInputChange}\r\n          onBlur={this.onStartChangeDone}\r\n          onFocus={() => this.props.onInputFocus(0)}\r\n          ref={this.startRef}\r\n          aria-label={this.props.startDateAriaLabel}\r\n        />\r\n        <p> - </p>\r\n        <input\r\n          type=\"text\"\r\n          className={classNames('end', { highlight: this.props.highlightInputIndex === 1 })}\r\n          value={this.props.end}\r\n          onKeyDown={this.onEndInputKeyDown}\r\n          onChange={this.props.onEndInputChange}\r\n          onBlur={this.onEndChangeDone}\r\n          onFocus={() => this.props.onInputFocus(1)}\r\n          ref={this.endRef}\r\n          aria-label={this.props.endDateAriaLabel}\r\n        />\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nDateRange.propTypes = {\r\n  label: PropTypes.string,\r\n  onChangeSelectOption: PropTypes.func,\r\n  onStartInputChange: PropTypes.func,\r\n  onEndInputChange: PropTypes.func,\r\n  onStartChangeComplete: PropTypes.func,\r\n  onEndChangeComplete: PropTypes.func,\r\n  selectedOption: PropTypes.shape({\r\n    type: PropTypes.number,\r\n    keyToExport: PropTypes.string,\r\n    textToShow: PropTypes.string,\r\n    textToExport: PropTypes.string,\r\n    get: PropTypes.func,\r\n  }),\r\n  start: PropTypes.string,\r\n  end: PropTypes.string,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  highlightInputIndex: PropTypes.number,\r\n  onInputFocus: PropTypes.func.isRequired,\r\n  startDateAriaLabel: PropTypes.string.isRequired,\r\n  endDateAriaLabel: PropTypes.string.isRequired,\r\n};\r\n","import { CivilDate } from 'tc39-proposal-temporal';\r\nimport {\r\n  getCivilDateDayOfWeek,\r\n  getCivilDateMonthStart,\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\nimport { getThisMonday } from './date-util';\r\n\r\nexport const RANGES = {\r\n  Yesterday: 1,\r\n  Last7Days: 2,\r\n  Today: 3,\r\n  Custom: 4,\r\n  Last30Days: 5,\r\n  Last14Days: 6,\r\n  ThisWeek: 7,\r\n  ThisWeekMon: 8,\r\n  LastWeek: 9,\r\n  ThisMonth: 10,\r\n  LastMonth: 11,\r\n  Last3Months: 12,\r\n  Last6Months: 13,\r\n  LastWeekMon: 14,\r\n  ThisYear: 15,\r\n  LastYear: 16,\r\n  EntireTimeLast18Months: 17,\r\n  EntireTimeLast5Years: 18,\r\n  EntireTime: 22,\r\n};\r\n\r\nconst i18nMap = {\r\n  Today: _TL_('Today'),\r\n  Custom: _TL_('Custom'),\r\n  Yesterday: _TL_('Yesterday'),\r\n  ThisWeek: _TL_('This week (Sun - Today)'),\r\n  ThisWeekMon: _TL_('This week (Mon - Today)'),\r\n  Last7Days: _TL_('Last 7 days'),\r\n  LastWeek: _TL_('Last week (Sun - Sat)'),\r\n  LastWeekMon: _TL_('Last week (Mon - Sun)'),\r\n  Last14Days: _TL_('Last 14 days'),\r\n  ThisMonth: _TL_('This month'),\r\n  LastMonth: _TL_('Last month'),\r\n  Last30Days: _TL_('Last 30 days'),\r\n  Last3Months: _TL_('Last 3 months'),\r\n  Last6Months: _TL_('Last 6 months'),\r\n  LastYear: _TL_('Last year'),\r\n  LastPeriod: _TL_('Last period'),\r\n  ThisYear: _TL_('This year'),\r\n  EntireTime: _TL_('Entire time'),\r\n};\r\n\r\nexport const getEntireTime = (i18n, range) => ({\r\n  rangeId: RANGES.EntireTime,\r\n  key: 'EntireTime',\r\n  text: i18n.getString(i18nMap.EntireTime),\r\n  range,\r\n});\r\n\r\nexport const getAllDateRanges = ({\r\n  i18n,\r\n  timeZone = 'US/Pacific',\r\n  minDate,\r\n  maxDate,\r\n}) => {\r\n  const todayObj = i18n.getToday({ timeZone });\r\n  const today = new CivilDate(todayObj.year, todayObj.month, todayObj.day);\r\n  const yesterday = today.plus({ days: -1 });\r\n  const thisSunday = today.plus({ days: -getCivilDateDayOfWeek(today) });\r\n  const thisMonday = getThisMonday(today);\r\n  const last7day = today.plus({ days: -7 });\r\n  const last14day = today.plus({ days: -14 });\r\n  const last30day = today.plus({ days: -30 });\r\n  const lastMonday = today.plus({ days: -getCivilDateDayOfWeek(today) - 6 });\r\n  const lastSunday = today.plus({ days: -getCivilDateDayOfWeek(today) - 7 });\r\n  const lastSaturday = today.plus({ days: -getCivilDateDayOfWeek(today) - 1 });\r\n  const thisMonthFirstDay = getCivilDateMonthStart(today);\r\n  const lastMonthlastDay = thisMonthFirstDay.plus({ days: -1 });\r\n  const last3MonthsFirstDay = thisMonthFirstDay.plus({ months: -3 });\r\n  const last6MonthsFirstDay = thisMonthFirstDay.plus({ months: -6 });\r\n  const last18MonthsFirstDay = thisMonthFirstDay.plus({ years: -1, months: -6 });\r\n  const lastMonthFirstDay = getCivilDateMonthStart(lastMonthlastDay);\r\n  const thisYearFirstDay = new CivilDate(today.year, 1, 1);\r\n  const lastYearFirstDay = thisYearFirstDay.plus({ years: -1 });\r\n  const lastYearLastDay = thisYearFirstDay.plus({ days: -1 });\r\n  const last5Years = today.plus({ years: -5 });\r\n\r\n  const minSupportDay = minDate || today.plus({ years: -3 });\r\n  const maxSupportDay = maxDate || today;\r\n\r\n  return [\r\n    {\r\n      rangeId: RANGES.Custom, key: 'Custom', text: i18n.getString(i18nMap.Custom), range: { start: undefined, end: undefined },\r\n    },\r\n    {\r\n      rangeId: RANGES.Today, key: 'Today', text: i18n.getString(i18nMap.Today), range: { start: today, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.Yesterday, key: 'Yesterday', text: i18n.getString(i18nMap.Yesterday), range: { start: yesterday, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisWeek, key: 'ThisWeek', text: i18n.getString(i18nMap.ThisWeek), range: { start: thisSunday, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisWeekMon, key: 'ThisWeekMon', text: i18n.getString(i18nMap.ThisWeekMon), range: { start: thisMonday, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last7Days, key: 'Last7Days', text: i18n.getString(i18nMap.Last7Days), range: { start: last7day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastWeek, key: 'LastWeek', text: i18n.getString(i18nMap.LastWeek), range: { start: lastSunday, end: lastSaturday },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastWeekMon, key: 'LastWeekMon', text: i18n.getString(i18nMap.LastWeekMon), range: { start: lastMonday, end: thisSunday },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last14Days, key: 'Last14Days', text: i18n.getString(i18nMap.Last14Days), range: { start: last14day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisMonth, key: 'ThisMonth', text: i18n.getString(i18nMap.ThisMonth), range: { start: thisMonthFirstDay, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastMonth, key: 'LastMonth', text: i18n.getString(i18nMap.LastMonth), range: { start: lastMonthFirstDay, end: lastMonthlastDay },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last3Months, key: 'Last3Months', text: i18n.getString(i18nMap.Last3Months), range: { start: last3MonthsFirstDay, end: lastMonthlastDay },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last6Months, key: 'Last6Months', text: i18n.getString(i18nMap.Last6Months), range: { start: last6MonthsFirstDay, end: lastMonthlastDay },\r\n    },\r\n    {\r\n      rangeId: RANGES.Last30Days, key: 'Last30Days', text: i18n.getString(i18nMap.Last30Days), range: { start: last30day, end: yesterday },\r\n    },\r\n    {\r\n      rangeId: RANGES.ThisYear, key: 'ThisYear', text: i18n.getString(i18nMap.ThisYear), range: { start: thisYearFirstDay, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.LastYear, key: 'LastYear', text: i18n.getString(i18nMap.LastYear), range: { start: lastYearFirstDay, end: lastYearLastDay },\r\n    },\r\n    {\r\n      rangeId: RANGES.EntireTimeLast18Months, key: 'EntireTimeLast18Months', text: i18n.getString(i18nMap.EntireTime), range: { start: last18MonthsFirstDay, end: today },\r\n    },\r\n    {\r\n      rangeId: RANGES.EntireTimeLast5Years, key: 'EntireTimeLast5Years', text: i18n.getString(i18nMap.EntireTime), range: { start: last5Years, end: today },\r\n    },\r\n    getEntireTime(i18n, { start: minSupportDay, end: maxSupportDay }),\r\n  ].map((x) => {\r\n    const { range } = x;\r\n    if (range.start < minSupportDay) {\r\n      range.start = minSupportDay;\r\n    }\r\n    if (range.end < minSupportDay) {\r\n      range.end = minSupportDay;\r\n    }\r\n    return x;\r\n  });\r\n};\r\n\r\nexport const getSpecificDateRanges = ({\r\n  i18n,\r\n  timeZone = 'US/Pacific',\r\n  minDate,\r\n  maxDate,\r\n  rangeIds,\r\n}) => getAllDateRanges({\r\n  i18n,\r\n  timeZone,\r\n  minDate,\r\n  maxDate,\r\n}).filter(({ rangeId }) => rangeIds.indexOf(rangeId) > -1);\r\n","import { RANGES, getSpecificDateRanges } from './ranges';\r\n\r\nexport const defaultSpecificRanges = (i18n, timeZone, minDate) => {\r\n  const rangeIds = [\r\n    RANGES.Custom,\r\n    RANGES.Today,\r\n    RANGES.Yesterday,\r\n    RANGES.ThisWeek,\r\n    RANGES.ThisWeekMon,\r\n    RANGES.Last7Days,\r\n    RANGES.LastWeek,\r\n    RANGES.LastWeekMon,\r\n    RANGES.Last14Days,\r\n    RANGES.ThisMonth,\r\n    RANGES.LastMonth,\r\n    RANGES.Last30Days,\r\n    RANGES.EntireTime,\r\n  ];\r\n\r\n  return getSpecificDateRanges({\r\n    i18n,\r\n    timeZone,\r\n    minDate,\r\n    rangeIds,\r\n  });\r\n};\r\n","import PropTypes from 'prop-types';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport _ from 'underscore';\r\n\r\nexport const ComparedDateRangePickerPropTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    formatCivilDate: PropTypes.func.isRequired,\r\n    getToday: PropTypes.func.isRequired,\r\n    getDayOfWeek: PropTypes.func.isRequired,\r\n    getFirstDayOfWeek: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  selectedRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  selectedComparedRange: PropTypes.shape({\r\n    start: PropTypes.instanceOf(CivilDate),\r\n    end: PropTypes.instanceOf(CivilDate),\r\n  }),\r\n  specificRanges: PropTypes.arrayOf(PropTypes.shape({\r\n    key: PropTypes.string,\r\n    range: PropTypes.shape({\r\n      start: PropTypes.instanceOf(CivilDate),\r\n      end: PropTypes.instanceOf(CivilDate),\r\n    }),\r\n  })),\r\n  timeZone: PropTypes.string,\r\n  dateFormat: PropTypes.string,\r\n  comparedTypeKey: PropTypes.string,\r\n  rangeId: PropTypes.number,\r\n  rangeIndex: PropTypes.number,\r\n  rangeDays: PropTypes.number,\r\n  onPickDateRanges: PropTypes.func,\r\n  onSwitchCompare: PropTypes.func,\r\n  minDate: PropTypes.instanceOf(CivilDate),\r\n  maxDate: PropTypes.instanceOf(CivilDate),\r\n  disableCompare: PropTypes.bool,\r\n  displayType: PropTypes.bool,\r\n  isMainDatePicker: PropTypes.bool,\r\n  relativeDropdown: PropTypes.bool,\r\n  dateRangeLogger: PropTypes.func,\r\n  isMonthRangePicker: PropTypes.bool,\r\n  ariaLabel: PropTypes.string,\r\n  ariaLabelledBy: PropTypes.string,\r\n  shouldShowQuickLeftRightPicker: PropTypes.bool,\r\n};\r\n\r\nexport const ComparedDateRangePickerDefaultProps = {\r\n  selectedRange: { start: undefined, end: undefined },\r\n  selectedComparedRange: { start: undefined, end: undefined },\r\n  onPickDateRanges: _.noop,\r\n  onSwitchCompare: _.noop,\r\n  minDate: undefined,\r\n  maxDate: undefined,\r\n  specificRanges: [],\r\n  timeZone: 'US/Pacific',\r\n  dateFormat: 'M/d/yyyy',\r\n  rangeId: undefined,\r\n  rangeIndex: undefined,\r\n  rangeDays: undefined,\r\n  comparedTypeKey: undefined,\r\n  disableCompare: false,\r\n  displayType: false,\r\n  isMainDatePicker: false,\r\n  relativeDropdown: false,\r\n  dateRangeLogger: _.noop,\r\n  isMonthRangePicker: false,\r\n  ariaLabel: undefined,\r\n  ariaLabelledBy: undefined,\r\n  shouldShowQuickLeftRightPicker: false,\r\n};\r\n","export * from './src/time-zone-converter';\r\n","/* eslint camelcase: 0 */\r\nimport _ from 'underscore';\r\nimport { get } from '@bingads-webui-universal/primitive-utilities';\r\nimport timeZoneMetadata from '../metadata';\r\n\r\n/**\r\n * Convert legacy Number type time zone (Enum value) to String type time zone (Enum name)\r\n * @param {Number} legacyTimeZone - the legacy time zone used in JS code\r\n * @returns {String} String type time zone\r\n */\r\nexport function fromLegacyTimeZone(legacyTimeZone) {\r\n  return _.findKey(timeZoneMetadata, ({ legacy }) => legacy === legacyTimeZone);\r\n}\r\n\r\n/**\r\n * Convert String type time zone (Enum name) to legacy Number type time zone (Enum value)\r\n * @param {String} timeZone - the String type time zone\r\n * @returns {Number} Number type time zone\r\n */\r\nexport function toLegacyTimeZone(timeZone) {\r\n  return get(timeZoneMetadata[timeZone], 'legacy');\r\n}\r\n\r\n/**\r\n * Convert String type time zone to IANA tz data time zone used in @bingads-webui/i18n-model\r\n * @param {String} timeZone - the String type time zone\r\n * @returns {String} String type time zone\r\n */\r\nexport function toIANATimeZone(timeZone) {\r\n  // only return first IANA time zone, leave other ones for future usage\r\n  return get(timeZoneMetadata[timeZone], 'iana[0]');\r\n}\r\n\r\n/**\r\n * Get String type time zone's UTC offset\r\n * This offset is defined by BingAdsApps, which doesn't consider Daylight Saving Time\r\n * @param {String} timeZone - the String type time zone\r\n * @returns {String} Readable UTC offset\r\n */\r\nexport function getUTCOffsetWithoutDST(timeZone) {\r\n  return get(timeZoneMetadata[timeZone], 'offset');\r\n}\r\n\r\n/**\r\n * Get all supported time zones\r\n * @returns {String[]} all time zones\r\n */\r\nexport const allTimeZones = _.keys(timeZoneMetadata);\r\n","/* eslint-env node */\r\n\r\n// same as enum TimeZone defined in\r\n//   \\\\AdsAppUI\\private\\UI\\Common\\Microsoft.AdCenter.UI.Advertiser.BusinessEntities\r\n//     \\Common\\Enums\\Enums.cs\r\n// For iana-tz-data, see\r\n//   https://en.wikipedia.org/wiki/List_of_tz_database_time_zones\r\n//   https://github.com/eggert/tz\r\n//   https://www.iana.org/time-zones/repository/tz-link.html\r\n//   http://www.unicode.org/repos/cldr/trunk/common/bcp47/timezone.xml\r\n// There're several mismatched time zones between ours and iana ones,\r\n// that's because we prefer capital, but iana prefers largest city\r\n// offset is defined by ourselves, which doesn't consider Daylight Saving Time\r\nmodule.exports = {\r\n  AbuDhabiMuscat: {\r\n    legacy: 32,\r\n    offset: '+04:00',\r\n    // Abu Dhabi is missing in iana-tz-data, use Asia/Dubai for Abu Dhabi (United Arab Emirates)\r\n    iana: ['Asia/Dubai', 'Asia/Muscat'],\r\n  },\r\n  Adelaide: {\r\n    legacy: 11,\r\n    offset: '+09:30',\r\n    // Australia/Adelaide has UTC offset +09:30/+10:30\r\n    iana: ['Australia/Adelaide'],\r\n  },\r\n  Alaska: {\r\n    legacy: 72,\r\n    offset: '-09:00',\r\n    // Australia/Adelaide has UTC offset -09:00/-08:00\r\n    iana: ['US/Alaska'],\r\n  },\r\n  Almaty_Novosibirsk: {\r\n    legacy: 25,\r\n    offset: '+06:00',\r\n    // Asia/Almaty has UTC offset +06:00/+06:00\r\n    // Asia/Novosibirsk has +07:00/+07:00\r\n    iana: ['Asia/Almaty', 'Asia/Novosibirsk'],\r\n  },\r\n  AmsterdamBerlinBernRomeStockholmVienna: {\r\n    legacy: 48,\r\n    offset: '+01:00',\r\n    // Bern is missing in iana-tz-data, use Europe/Zurich for Bern (Switzerland)\r\n    // All these iana time zone has UTC offset +01:00/+02:00\r\n    iana: ['Europe/Amsterdam', 'Europe/Berlin', 'Europe/Zurich', 'Europe/Rome', 'Europe/Stockholm', 'Europe/Vienna'],\r\n  },\r\n  Arizona: {\r\n    legacy: 68,\r\n    offset: '-07:00',\r\n    iana: ['US/Arizona'],\r\n  },\r\n  AstanaDhaka: {\r\n    legacy: 24,\r\n    offset: '+06:00',\r\n    // Astana is missing in iana-tz-data, use Asia/Almaty for Astana (Kazakhstan)\r\n    iana: ['Asia/Almaty', 'Asia/Dhaka'],\r\n  },\r\n  AthensIslandanbulMinsk: {\r\n    legacy: 43,\r\n    offset: '+02:00',\r\n    // Islandanbul should be misspelled Istanbul\r\n    // Europe/Athens has UTC offset +02:00/+03:00\r\n    // other 2 have UTC offset +03:00/+03:00\r\n    iana: ['Europe/Athens', 'Europe/Istanbul', 'Europe/Minsk'],\r\n  },\r\n  AtlanticTimeCanada: {\r\n    legacy: 58,\r\n    offset: '-04:00',\r\n    // Canada/Atlantic has UTC offset -04:00/-03:00\r\n    iana: ['Canada/Atlantic'],\r\n  },\r\n  AucklandWellington: {\r\n    legacy: 3,\r\n    offset: '+12:00',\r\n    // Wellington is missing in iana-tz-data, use NZ for Wellington (New Zealand)\r\n    // Both these iana time zones have UTC offset +12:00/+13:00\r\n    iana: ['Pacific/Auckland', 'NZ'],\r\n  },\r\n  Azores: {\r\n    legacy: 51,\r\n    offset: '-01:00',\r\n    // Atlantic/Azores has UTC offset -01:00/+00:00\r\n    iana: ['Atlantic/Azores'],\r\n  },\r\n  Baghdad: {\r\n    legacy: 37,\r\n    offset: '+03:00',\r\n    iana: ['Asia/Baghdad'],\r\n  },\r\n  BakuTbilisiYerevan: {\r\n    legacy: 31,\r\n    offset: '+04:00',\r\n    iana: ['Asia/Baku', 'Asia/Tbilisi', 'Asia/Yerevan'],\r\n  },\r\n  BangkokHanoiJakarta: {\r\n    legacy: 21,\r\n    offset: '+07:00',\r\n    // Hanoi is missing in iana-tz-data, use Asia/Ho_Chi_Minh for Hanoi (Vietnam)\r\n    iana: ['Asia/Bangkok', 'Asia/Ho_Chi_Minh', 'Asia/Jakarta'],\r\n  },\r\n  BeijingChongqingHongKongUrumqi: {\r\n    legacy: 19,\r\n    offset: '+08:00',\r\n    // Beijing is missing in iana-tz-data, use PRC for Beijing (China)\r\n    // Asia/Urumqi has UTC offset +06:00/+06:00\r\n    iana: ['PRC', 'Asia/Chongqing', 'Asia/Hong_Kong', 'Asia/Urumqi'],\r\n  },\r\n  BelgradeBratislavaBudapestLjubljanaPrague: {\r\n    legacy: 47,\r\n    offset: '+01:00',\r\n    // All these iana time zones have UTC offset +01:00/+02:00\r\n    iana: ['Europe/Belgrade', 'Europe/Bratislava', 'Europe/Budapest', 'Europe/Ljubljana', 'Europe/Prague'],\r\n  },\r\n  BogotaLimaQuito: {\r\n    legacy: 61,\r\n    offset: '-05:00',\r\n    // Quito is missing in iana-tz-data, use America/Guayaquil for Quito (Ecuador)\r\n    iana: ['America/Bogota', 'America/Lima', 'America/Guayaquil'],\r\n  },\r\n  Brasilia: {\r\n    legacy: 54,\r\n    offset: '-03:00',\r\n    // Brasília is missing in iana-tz-data, use Brazil/East for Brasília (Brazil)\r\n    // Brazil has several time zones, see: https://en.wikipedia.org/wiki/Time_in_Brazil\r\n    // Brazil/East has UTC offset -03:00/-02:00\r\n    iana: ['Brazil/East'],\r\n  },\r\n  Brisbane: {\r\n    legacy: 9,\r\n    offset: '+10:00',\r\n    iana: ['Australia/Brisbane'],\r\n  },\r\n  BrusselsCopenhagenMadridParis: {\r\n    legacy: 46,\r\n    offset: '+01:00',\r\n    // All these iana time zones have UTC offset +01:00/+02:00\r\n    iana: ['Europe/Brussels', 'Europe/Copenhagen', 'Europe/Madrid', 'Europe/Paris'],\r\n  },\r\n  Bucharest: {\r\n    legacy: 42,\r\n    offset: '+02:00',\r\n    // Europe/Bucharest has UTC offset +02:00/+03:00\r\n    iana: ['Europe/Bucharest'],\r\n  },\r\n  BuenosAiresGeorgetown: {\r\n    legacy: 55,\r\n    offset: '-03:00',\r\n    // Georgetown is missing in iana-tz-data, use America/Guyana for Georgetown (Guyana)\r\n    // America/Guyana has UTC offset -04:00/-04:00\r\n    iana: ['America/Buenos_Aires', 'America/Guyana'],\r\n  },\r\n  Cairo: {\r\n    legacy: 41,\r\n    offset: '+02:00',\r\n    iana: ['Africa/Cairo'],\r\n  },\r\n  CanberraMelbourneSydney: {\r\n    legacy: 8,\r\n    offset: '+10:00',\r\n    // All these iana time zones have UTC offset +10:00/+11:00\r\n    iana: ['Australia/Canberra', 'Australia/Melbourne', 'Australia/Sydney'],\r\n  },\r\n  CapeVerdeIsland: {\r\n    legacy: 52,\r\n    offset: '-01:00',\r\n    iana: ['Atlantic/Cape_Verde'],\r\n  },\r\n  CaracasLaPaz: {\r\n    legacy: 59,\r\n    offset: '-04:00',\r\n    iana: ['America/Caracas', 'America/La_Paz'],\r\n  },\r\n  CasablancaMonrovia: {\r\n    legacy: 49,\r\n    offset: '+00:00',\r\n    // Africa/Casablanca has UTC offset +00:00/+01:00\r\n    iana: ['Africa/Casablanca', 'Africa/Monrovia'],\r\n  },\r\n  CentralAmerica: {\r\n    legacy: 64,\r\n    offset: '-06:00',\r\n    // US/Central has UTC offset -06:00/-05:00\r\n    iana: ['US/Central'],\r\n  },\r\n  CentralTimeUSCanada: {\r\n    legacy: 65,\r\n    offset: '-06:00',\r\n    // US/Central is duplicated with CentralAmerica\r\n    // Both these iana time zones have UTC offset -06:00/-05:00\r\n    iana: ['US/Central', 'Canada/Central'],\r\n  },\r\n  ChennaiKolkataMumbaiNewDelhi: {\r\n    legacy: 27,\r\n    offset: '+05:30',\r\n    // India has only one time zone\r\n    // see: https://en.wikipedia.org/wiki/Time_in_India\r\n    iana: ['Asia/Kolkata'],\r\n  },\r\n  ChihuahuaLaPazMazatlan: {\r\n    legacy: 69,\r\n    offset: '-07:00',\r\n    // LaPaz alrady covered by CaracasLaPaz\r\n    // America/La_Paz has UTC offset -04:00/-04:00\r\n    // other 2 have UTC offset -07:00/-06:00\r\n    iana: ['America/Chihuahua', 'America/La_Paz', 'America/Mazatlan'],\r\n  },\r\n  Darwin: {\r\n    legacy: 10,\r\n    offset: '+09:30',\r\n    iana: ['Australia/Darwin'],\r\n  },\r\n  EasternTimeUSCanada: {\r\n    legacy: 62,\r\n    offset: '-05:00',\r\n    // Both these iana time zones have UTC offset -05:00/-04:00\r\n    iana: ['US/Eastern', 'Canada/Eastern'],\r\n  },\r\n  Ekaterinburg: {\r\n    legacy: 29,\r\n    offset: '+05:00',\r\n    // Ekaterinburg should be misspelled Yekaterinburg\r\n    iana: ['Asia/Yekaterinburg'],\r\n  },\r\n  FijiKamchatkaMarshallIsland: {\r\n    legacy: 2,\r\n    offset: '+12:00',\r\n    // Marshall Islands is missing in iana-tz-data, use Pacific/Majuro for Marshall Islands\r\n    // Pacific/Fiji has UTC offset +12:00/+13:00\r\n    iana: ['Pacific/Fiji', 'Asia/Kamchatka', 'Pacific/Majuro'],\r\n  },\r\n  Greenland: {\r\n    legacy: 56,\r\n    offset: '-03:00',\r\n    // Greenland is missing in iana-tz-data, use America/Godthab for Greenland\r\n    // America/Godthab has UTC offset -03:00/-02:00\r\n    iana: ['America/Godthab'],\r\n  },\r\n  GreenwichMeanTimeDublinEdinburghLisbonLondon: {\r\n    legacy: 50,\r\n    offset: '+00:00',\r\n    // Edinburgh is missing in iana-tz-data, use GB for Edinburgh (Great British)\r\n    // Europe/Dublin, GB, Europe/Lisbon and Europe/London have UTC offset +00:00/+01:00\r\n    iana: ['GMT', 'Europe/Dublin', 'GB', 'Europe/Lisbon', 'Europe/London'],\r\n  },\r\n  GuadalajaraMexicoCityMonterrey: {\r\n    legacy: 66,\r\n    offset: '-06:00',\r\n    // Guadalajara is missing in iana-tz-data, use Mexico/General for Guadalajara (Mexico)\r\n    // All these iana time zones have UTC offset -06:00/-05:00\r\n    iana: ['Mexico/General', 'America/Mexico_City', 'America/Monterrey'],\r\n  },\r\n  GuamPortMoresby: {\r\n    legacy: 7,\r\n    offset: '+10:00',\r\n    iana: ['Pacific/Guam', 'Pacific/Port_Moresby'],\r\n  },\r\n  HararePretoria: {\r\n    legacy: 40,\r\n    offset: '+02:00',\r\n    // Pretoria is missing in iana-tz-data, use Africa/Johannesburg for Pretoria (South Africa)\r\n    iana: ['Africa/Harare', 'Africa/Johannesburg'],\r\n  },\r\n  Hawaii: {\r\n    legacy: 73,\r\n    offset: '-10:00',\r\n    iana: ['US/Hawaii'],\r\n  },\r\n  HelsinkiKyivRigaSofiaTallinnVilnius: {\r\n    legacy: 39,\r\n    offset: '+02:00',\r\n    // Kyiv is also translated as Kiev\r\n    // All these iana time zones have UTC offset +02:00/+03:00\r\n    iana: ['Europe/Helsinki', 'Europe/Kiev', 'Europe/Riga', 'Europe/Sofia', 'Europe/Tallinn', 'Europe/Vilnius'],\r\n  },\r\n  Hobart: {\r\n    legacy: 6,\r\n    offset: '+10:00',\r\n    // Australia/Hobart has UTC offset +10:00/+11:00\r\n    iana: ['Australia/Hobart'],\r\n  },\r\n  IndianaEast: {\r\n    legacy: 63,\r\n    offset: '-05:00',\r\n    // US/East-Indiana has UTC offset -05:00/-04:00\r\n    iana: ['US/East-Indiana'],\r\n  },\r\n  InternationalDateLineWest: {\r\n    legacy: 75,\r\n    offset: '-12:00',\r\n    iana: ['Etc/GMT+12'],\r\n  },\r\n  IrkutskUlaanBataar: {\r\n    legacy: 18,\r\n    offset: '+08:00',\r\n    iana: ['Asia/Irkutsk', 'Asia/Ulaanbaatar'],\r\n  },\r\n  IslandamabadKarachiTashkent: {\r\n    legacy: 28,\r\n    offset: '+05:00',\r\n    // Islandamabad is misspelled Islamabad\r\n    // Islamabad is missing in iana-tz-data, use Etc/GMT-5 for Islamabad (Pakistan)\r\n    iana: ['Etc/GMT-5', 'Asia/Karachi', 'Asia/Tashkent'],\r\n  },\r\n  Jerusalem: {\r\n    legacy: 38,\r\n    offset: '+02:00',\r\n    // Asia/Jerusalem has UTC offset +02:00/+03:00\r\n    iana: ['Asia/Jerusalem'],\r\n  },\r\n  Kabul: {\r\n    legacy: 30,\r\n    offset: '+04:30',\r\n    iana: ['Asia/Kabul'],\r\n  },\r\n  Kathmandu: {\r\n    legacy: 26,\r\n    offset: '+05:45',\r\n    iana: ['Asia/Kathmandu'],\r\n  },\r\n  Krasnoyarsk: {\r\n    legacy: 20,\r\n    offset: '+07:00',\r\n    iana: ['Asia/Krasnoyarsk'],\r\n  },\r\n  KualaLumpurSingapore: {\r\n    legacy: 17,\r\n    offset: '+08:00',\r\n    iana: ['Asia/Kuala_Lumpur', 'Asia/Singapore'],\r\n  },\r\n  KuwaitRiyadh: {\r\n    legacy: 36,\r\n    offset: '+03:00',\r\n    iana: ['Asia/Kuwait', 'Asia/Riyadh'],\r\n  },\r\n  MagadanSolomonIslandNewCaledonia: {\r\n    legacy: 4,\r\n    offset: '+11:00',\r\n    // Solomon Islands is missing in iana-tz-data, use Pacific/Guadalcanal for Solomon Islands\r\n    // New Caledonia is missing in iana-tz-data, use Pacific/Noumea for New Caledonia\r\n    iana: ['Asia/Magadan', 'Pacific/Guadalcanal', 'Pacific/Noumea'],\r\n  },\r\n  MidAtlantic: {\r\n    legacy: 53,\r\n    offset: '-02:00',\r\n    iana: ['America/Noronha'],\r\n  },\r\n  MidwayIslandand_Samoa: {\r\n    legacy: 74,\r\n    offset: '-11:00',\r\n    iana: ['Pacific/Midway', 'Pacific/Samoa'],\r\n  },\r\n  MoscowStPetersburgVolgograd: {\r\n    legacy: 35,\r\n    offset: '+03:00',\r\n    // Saint Petersburg is missing in iana-tz-data, use W-SU for Saint Petersburg (Russia)\r\n    iana: ['Europe/Moscow', 'W-SU', 'Europe/Volgograd'],\r\n  },\r\n  MountainTime_US_Canada: {\r\n    legacy: 70,\r\n    offset: '-07:00',\r\n    // Both these iana time zones have UTC offset -07:00/-06:00\r\n    iana: ['US/Mountain', 'Canada/Mountain'],\r\n  },\r\n  Nairobi: {\r\n    legacy: 34,\r\n    offset: '+03:00',\r\n    iana: ['Africa/Nairobi'],\r\n  },\r\n  Newfoundland: {\r\n    legacy: 57,\r\n    offset: '-03:30',\r\n    // Canada/Newfoundland has UTC offset -03:30/-02:30\r\n    iana: ['Canada/Newfoundland'],\r\n  },\r\n  None: {\r\n    legacy: 0,\r\n    offset: '+00:00',\r\n    iana: ['UTC'],\r\n  },\r\n  Nukualofa: {\r\n    legacy: 1,\r\n    offset: '+13:00',\r\n    // Nukuʻalofa is missing in iana-tz-data, use Pacific/Tongatapu for Nukuʻalofa (Tonga)\r\n    // Pacific/Tongatapu has UTC offset +13:00/+14:00\r\n    iana: ['Pacific/Tongatapu'],\r\n  },\r\n  OsakaSapporoTokyo: {\r\n    legacy: 14,\r\n    offset: '+09:00',\r\n    // Japan uses same time zone in mainland\r\n    iana: ['Japan'],\r\n  },\r\n  PacificTimeUSCanadaTijuana: {\r\n    legacy: 71,\r\n    offset: '-08:00',\r\n    // All these iana time zones have UTC offset -08:00/-07:00\r\n    iana: ['US/Pacific', 'Canada/Pacific', 'America/Tijuana'],\r\n  },\r\n  Perth: {\r\n    legacy: 16,\r\n    offset: '+08:00',\r\n    iana: ['Australia/Perth'],\r\n  },\r\n  Rangoon: {\r\n    legacy: 22,\r\n    offset: '+06:30',\r\n    iana: ['Asia/Rangoon'],\r\n  },\r\n  Santiago: {\r\n    legacy: 60,\r\n    offset: '-03:00',\r\n    // Pacific/Tongatapu has UTC offset -04:00/-03:00\r\n    iana: ['America/Santiago'],\r\n  },\r\n  SarajevoSkopjeWarsawZagreb: {\r\n    legacy: 45,\r\n    offset: '+01:00',\r\n    // All these iana time zones have UTC offset +01:00/+02:00\r\n    iana: ['Europe/Sarajevo', 'Europe/Skopje', 'Europe/Warsaw', 'Europe/Zagreb'],\r\n  },\r\n  Saskatchewan: {\r\n    legacy: 67,\r\n    offset: '-06:00',\r\n    iana: ['Canada/Saskatchewan'],\r\n  },\r\n  Seoul: {\r\n    legacy: 13,\r\n    offset: '+09:00',\r\n    iana: ['Asia/Seoul'],\r\n  },\r\n  SriJayawardenepura: {\r\n    legacy: 23,\r\n    offset: '+06:00',\r\n    // Sri Jayawardenepura Kotte is missing in iana-tz-data\r\n    // use Asia/Colombo for Sri Jayawardenepura Kotte (Sri Lanka)\r\n    // Asia/Colombo has UTC offset +05:30/+05:30\r\n    iana: ['Asia/Colombo'],\r\n  },\r\n  Taipei: {\r\n    legacy: 15,\r\n    offset: '+08:00',\r\n    iana: ['Asia/Taipei'],\r\n  },\r\n  Tehran: {\r\n    legacy: 33,\r\n    offset: '+03:30',\r\n    // Asia/Tehran has UTC offset +03:30/+04:30\r\n    iana: ['Asia/Tehran'],\r\n  },\r\n  Vladivostok: {\r\n    legacy: 5,\r\n    offset: '+10:00',\r\n    iana: ['Asia/Vladivostok'],\r\n  },\r\n  WestCentralAfrica: {\r\n    legacy: 44,\r\n    offset: '+01:00',\r\n    // West Central Africa is missing in iana-tz-data, use Africa/Lagos for West Central Africa\r\n    // see https://www.timeanddate.com/time/map/\r\n    iana: ['Africa/Lagos'],\r\n  },\r\n  Yakutsk: {\r\n    legacy: 12,\r\n    offset: '+09:00',\r\n    iana: ['Asia/Yakutsk'],\r\n  },\r\n};\r\n","export * from './src/controls';\r\n","import React from 'react';\r\nimport { ContextualMenu, initializeIcons } from '@fluentui/react';\r\n\r\ninitializeIcons();\r\n\r\nconst ContextualMenuDropdown = props => (\r\n  <ContextualMenu {...props} />\r\n);\r\n\r\nexport * from '@fluentui/react';\r\nexport { ContextualMenuDropdown as ContextualMenu };\r\n","export * from './src/index';\r\n","export { FilePicker, ImageFilePicker, VideoFilePicker } from './file-picker-view';\r\n\r\nexport {\r\n  baseItemBoxProgressStyles,\r\n  UploadPreviewWithCustomPreview,\r\n  UploadPreview,\r\n  SimpleImagePreview,\r\n  defaultUploadProgressBoundary,\r\n  updateProgress,\r\n  updateFilePreviewArrayUploadProgress,\r\n  generatePreviewArray,\r\n  UploadProgress,\r\n} from './upload-progress-view';\r\n\r\nexport {\r\n  parseFileName,\r\n  readFileAsDataURLAsync,\r\n  validateImageAsync,\r\n  validateVideoAsync,\r\n  MaximumImageFileSizeMB,\r\n  MaximumVideoFileSizeMB,\r\n  allowedVideoFileExtensions,\r\n} from './utils';\r\n","export { FilePicker } from './file-picker';\r\nexport { ImageFilePicker } from './image-file-picker';\r\nexport { VideoFilePicker } from './video-file-picker';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\n\r\nimport { FileDragger } from '@bingads-webui-campaign-react/file-dragger';\r\nimport { FilePicker as BackboneFilePicker } from '@bingads-webui/file-picker';\r\nimport { BackboneInstanceWrapper } from '@bingads-webui-react/backbone-instance-wrapper';\r\nimport { parseFileName } from '../utils/parse-file';\r\n\r\nexport class FilePicker extends React.PureComponent {\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    const {\r\n      i18n,\r\n      enableMultiple,\r\n      allowedFileExtensions,\r\n      showExtensionError,\r\n    } = props;\r\n    const filePickerOptions = {\r\n      allowedFileExtensions,\r\n      i18n,\r\n      isNative: false,\r\n      displayFilePath: 'filename',\r\n      enableMultiple,\r\n    };\r\n\r\n    this.filePicker = new BackboneFilePicker(filePickerOptions);\r\n\r\n    this.filePicker.on('validated', this.readFile);\r\n    this.filePicker.on('error.extension', () => { showExtensionError(); });\r\n\r\n    this.filePicker.render();\r\n    this.filePicker.$('.remove-file').remove();\r\n    this.filePicker.$('.file-text').hide();\r\n\r\n    this.state = {\r\n      isFileDraging: false,\r\n    };\r\n  }\r\n\r\n  readFile = (fileObjects) => {\r\n    const {\r\n      onFileRead,\r\n      showErrors,\r\n      onFileSelected,\r\n      maximumFileSizeMB,\r\n      isReachFileSizeLimit,\r\n      getReachFileSizeLimitErrorMessage,\r\n    } = this.props;\r\n\r\n    const selectedFiles = !_.isUndefined(fileObjects) && fileObjects.length > 0 ? fileObjects :\r\n      this.filePicker.fileObjects;\r\n\r\n    if (selectedFiles) {\r\n      const selectedFilesCount = selectedFiles.length;\r\n      let fileIndex;\r\n      const errorArr = [];\r\n\r\n      for (fileIndex = 0; fileIndex < selectedFilesCount; fileIndex += 1) {\r\n        const fileObj = selectedFiles[fileIndex];\r\n        const fileSizeMB = (fileObj.size / 1024 / 1024).toFixed(3);\r\n        let reachLimit;\r\n\r\n        if (isReachFileSizeLimit) {\r\n          const { ext } = parseFileName(fileObj.name);\r\n          reachLimit = isReachFileSizeLimit({ ext, fileSizeMB });\r\n        } else {\r\n          reachLimit = maximumFileSizeMB > 0 && fileSizeMB > maximumFileSizeMB;\r\n        }\r\n\r\n        if (reachLimit) {\r\n          errorArr.push(getReachFileSizeLimitErrorMessage(_.extend({\r\n            fileSizeMB,\r\n          }, !isReachFileSizeLimit && { maximumFileSizeMB })));\r\n\r\n          break;\r\n        }\r\n      }\r\n\r\n      if (_.isEmpty(errorArr)) {\r\n        if (_.isFunction(onFileSelected)) {\r\n          onFileSelected(selectedFiles);\r\n        }\r\n\r\n        return onFileRead(selectedFiles);\r\n      }\r\n\r\n      showErrors(errorArr);\r\n    } // else no media picked, so do nothing\r\n\r\n    return ''; // for testability\r\n  };\r\n\r\n  handleDraging = (isDraging) => {\r\n    this.setState({\r\n      isFileDraging: isDraging,\r\n    });\r\n  };\r\n\r\n  render() {\r\n    const {\r\n      i18n,\r\n      enableDrag,\r\n      hideDescription,\r\n      allowedFileExtensions,\r\n      showExtensionError,\r\n      fileDraggerLabel,\r\n      fileDraggerTip,\r\n      fileDraggerDropDescription,\r\n      useLargeStyling,\r\n    } = this.props;\r\n\r\n    const {\r\n      isFileDraging,\r\n    } = this.state;\r\n\r\n    const fileButton = (\r\n      <div className={`file-picker-react-wrapper ${isFileDraging ? 'disabled' : ''}`}>\r\n        <BackboneInstanceWrapper\r\n          instance={this.filePicker}\r\n        />\r\n      </div>\r\n    );\r\n\r\n    return (\r\n      <div className=\"file-picker-container\">\r\n        {!hideDescription &&\r\n          <div className=\"choose-file-description\">\r\n            { i18n.getString('ImageExperience_Choose_File_Description') }\r\n          </div>\r\n        }\r\n        {\r\n          !enableDrag ?\r\n            <div className=\"file-picker-react-wrapper\">\r\n              <BackboneInstanceWrapper\r\n                instance={this.filePicker}\r\n              />\r\n            </div> :\r\n            <div className=\"file-drag-container\">\r\n              <FileDragger\r\n                onReadFile={this.readFile}\r\n                allowedFileExtension={allowedFileExtensions}\r\n                onInvalidExtension={showExtensionError}\r\n                label={fileDraggerLabel}\r\n                description={fileDraggerTip}\r\n                dropDescription={fileDraggerDropDescription}\r\n                dragging={this.handleDraging}\r\n                i18n={i18n}\r\n                fileButton={fileButton}\r\n                useLargeStyling={useLargeStyling}\r\n              />\r\n            </div>\r\n          }\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nFilePicker.propTypes = {\r\n  onFileRead: PropTypes.func.isRequired,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseDecimal: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  showErrors: PropTypes.func.isRequired,\r\n  enableMultiple: PropTypes.bool,\r\n  enableDrag: PropTypes.bool,\r\n  hideDescription: PropTypes.bool,\r\n  fileDraggerLabel: PropTypes.string,\r\n  fileDraggerTip: PropTypes.string,\r\n  fileDraggerDropDescription: PropTypes.string,\r\n  onFileSelected: PropTypes.func,\r\n  allowedFileExtensions: PropTypes.arrayOf(PropTypes.string),\r\n  showExtensionError: PropTypes.func,\r\n\r\n  maximumFileSizeMB: PropTypes.number,\r\n  isReachFileSizeLimit: PropTypes.func,\r\n  getReachFileSizeLimitErrorMessage: PropTypes.func,\r\n  useLargeStyling: PropTypes.bool,\r\n};\r\n\r\nFilePicker.defaultProps = {\r\n  enableMultiple: false,\r\n  enableDrag: false,\r\n  hideDescription: false,\r\n  onFileSelected: _.noop(),\r\n  allowedFileExtensions: [],\r\n  showExtensionError: _.noop,\r\n\r\n  fileDraggerLabel: '',\r\n  fileDraggerTip: '',\r\n  fileDraggerDropDescription: '',\r\n\r\n  // below two are conflict and isReachFileSizeLimit takes higher priority\r\n  isReachFileSizeLimit: undefined,\r\n  maximumFileSizeMB: undefined,\r\n  getReachFileSizeLimitErrorMessage: _.noop,\r\n  useLargeStyling: false,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1321__;","export const parseFileName = (nameWithExtension) => {\r\n  let nameWithoutExt = null;\r\n  let ext = null;\r\n\r\n  if (nameWithExtension) {\r\n    const index = nameWithExtension.lastIndexOf('.');\r\n    if (index > 0) {\r\n      nameWithoutExt = nameWithExtension.slice(0, index);\r\n      ext = nameWithExtension.slice(index);\r\n    } else {\r\n      nameWithoutExt = nameWithExtension;\r\n      ext = '';\r\n    }\r\n  }\r\n\r\n  return {\r\n    nameWithoutExt,\r\n    ext,\r\n  };\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Promise from 'bluebird';\r\nimport _ from 'underscore';\r\nimport { LearnMoreLink } from '@bingads-webui-campaign-react/help';\r\n\r\nimport { FilePicker } from './file-picker';\r\nimport { readFileAsDataURLAsync } from '../utils/read-file';\r\nimport { MaximumImageFileSizeMB } from '../utils/constants';\r\n\r\n// Refer to https://docs.microsoft.com/en-us/azure/media-services/latest/encode-media-encoder-standard-formats-reference\r\nconst defaultAllowedImageExtensions = ['.png', '.jpg', '.jpeg', '.gif'];\r\n\r\n// to reuse existing test coverage, still keep class format\r\nexport class ImageFilePicker extends React.PureComponent {\r\n  onFileReadInternal = (selectedFiles) => {\r\n    const { onFileRead } = this.props;\r\n\r\n    return Promise.map(\r\n      selectedFiles,\r\n      fileObj => readFileAsDataURLAsync(fileObj)\r\n    ).then((imageSources) => {\r\n      onFileRead(imageSources, selectedFiles);\r\n    });\r\n  };\r\n\r\n  getReachFileSizeLimitErrorMessage = ({ fileSizeMB, maximumFileSizeMB }) => {\r\n    const { enableMultiple, i18n } = this.props;\r\n    let errorMsg;\r\n\r\n    if (enableMultiple) {\r\n      errorMsg = i18n.getString('ImageExperience_MultipleUpload_FileSize_TooBig', {\r\n        maximumFileSize: maximumFileSizeMB,\r\n      });\r\n    } else {\r\n      errorMsg = i18n.getString('ImageExperience_FileSize_Too_Big_Template', {\r\n        fileSize: fileSizeMB,\r\n        maximumFileSize: maximumFileSizeMB,\r\n      });\r\n    }\r\n\r\n    return errorMsg;\r\n  };\r\n\r\n  showExtensionError = () => {\r\n    const {\r\n      i18n, showErrors, enableMultiple, isMultimediaAd, isAudienceAd,\r\n    } = this.props;\r\n\r\n    let errorLinkText;\r\n    let errorTopic;\r\n\r\n    if (isMultimediaAd) {\r\n      errorLinkText = i18n.getString(_TL_('About multimedia ads'));\r\n      errorTopic = 'app54810';\r\n    } else if (isAudienceAd) {\r\n      errorLinkText = i18n.getString('ImageExperience_BestPracticeHelp');\r\n      errorTopic = 'app54718';\r\n    } else {\r\n      errorLinkText = i18n.getString(_TL_('About image guidelines and policies'));\r\n      errorTopic = 'app54718';\r\n    }\r\n\r\n    showErrors([\r\n      <span>\r\n        {i18n.getString(`ImageExperience_${enableMultiple ? 'MultipleUpload_' : ''}Error_MediaFormatNotSupported`)}\r\n        <LearnMoreLink\r\n          linkText={errorLinkText}\r\n          topic={errorTopic}\r\n        />\r\n      </span>,\r\n    ]);\r\n  };\r\n\r\n  render() {\r\n    const {\r\n      onFileRead, minimumSize, maxUploadNum, ...rest\r\n    } = this.props;\r\n    const { i18n } = rest;\r\n    let fileDraggerTip = maxUploadNum >= 0 ? i18n.getString('ImageExperience_Drag_File_Maximum_Upload_Num', { maxCount: maxUploadNum }) : '';\r\n    if (!_.isUndefined(minimumSize) && _.isArray(minimumSize) && minimumSize.length > 1) {\r\n      if (fileDraggerTip) {\r\n        fileDraggerTip += ' ';\r\n      }\r\n      fileDraggerTip += i18n.getString('ImageExperience_Drag_File_Minimum_Size_Tip', { width: minimumSize[0], height: minimumSize[1] });\r\n    }\r\n\r\n    return (\r\n      <FilePicker\r\n        allowedFileExtensions={defaultAllowedImageExtensions}\r\n        onFileRead={this.onFileReadInternal}\r\n        maximumFileSizeMB={MaximumImageFileSizeMB}\r\n        getReachFileSizeLimitErrorMessage={this.getReachFileSizeLimitErrorMessage}\r\n        onInvalidExtension={this.onInvalidExtension}\r\n        showExtensionError={this.showExtensionError}\r\n        fileDraggerLabel={i18n.getString('ImageExperience_Drag_File_Description')}\r\n        fileDraggerTip={fileDraggerTip}\r\n        fileDraggerDropDescription={i18n.getString('ImageExperience_Drop_Image_Description')}\r\n        {...rest}\r\n      />\r\n    );\r\n  }\r\n}\r\n\r\nImageFilePicker.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseDecimal: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  onFileRead: PropTypes.func.isRequired,\r\n  isMultimediaAd: PropTypes.bool,\r\n  isAudienceAd: PropTypes.bool,\r\n  showErrors: PropTypes.func.isRequired,\r\n  minimumSize: PropTypes.arrayOf(PropTypes.number),\r\n  maxUploadNum: PropTypes.number,\r\n  enableMultiple: PropTypes.bool,\r\n};\r\n\r\nImageFilePicker.defaultProps = {\r\n  isMultimediaAd: false,\r\n  isAudienceAd: false,\r\n  minimumSize: [],\r\n  maxUploadNum: -1,\r\n  enableMultiple: false,\r\n};\r\n","import Promise from 'bluebird';\r\n\r\nexport const readFileAsDataURLAsync = file => new Promise((resolve, reject) => {\r\n  const reader = new FileReader();\r\n\r\n  reader.addEventListener('load', (e) => {\r\n    resolve(e.target.result);\r\n  });\r\n\r\n  reader.onerror = reject;\r\n\r\n  reader.readAsDataURL(file);\r\n});\r\n","export const MaximumImageFileSizeMB = 50;\r\nexport const MaximumVideoFileSizeMB = 1e4;\r\n\r\n// Refer to https://docs.microsoft.com/en-us/azure/media-services/latest/encode-media-encoder-standard-formats-reference\r\n// Plus some additional video formats supported by Xandr confirmed by Weiyuan to work with AMS\r\nexport const allowedVideoFileExtensions = [\r\n  '.flv',\r\n  '.mxf',\r\n  '.gxf',\r\n  '.ts',\r\n  '.ps',\r\n  '.3gp',\r\n  '.3gpp',\r\n  '.mpg',\r\n  '.wmv',\r\n  '.asf',\r\n  '.avi',\r\n  '.mp4',\r\n  '.m4a',\r\n  '.m4v',\r\n  '.isma',\r\n  '.ismv',\r\n  '.dvr-ms',\r\n  '.mkv',\r\n  '.wav',\r\n  '.mov',\r\n  '.vob',\r\n  '.ogv',\r\n  '.qt',\r\n  '.mpv',\r\n  '.m2v',\r\n  '.3g2',\r\n  '.swf',\r\n  '.mpeg',\r\n  '.mpe',\r\n];\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { LearnMoreLink } from '@bingads-webui-campaign-react/help';\r\n\r\nimport { FilePicker } from './file-picker';\r\nimport { MaximumVideoFileSizeMB, allowedVideoFileExtensions } from '../utils/constants';\r\n\r\n// to reuse existing test coverage, still keep class format\r\nexport class VideoFilePicker extends React.PureComponent {\r\n  onFileReadInternal = (selectedFiles) => {\r\n    const { onFileRead, enableMultiple } = this.props;\r\n\r\n    return onFileRead(enableMultiple ? selectedFiles: _.first(selectedFiles));\r\n  };\r\n\r\n\r\n  getReachFileSizeLimitErrorMessage = () => {\r\n    const { i18n } = this.props;\r\n\r\n    return i18n.getString(\r\n      'ImageExperience_Video_FileSize_Too_Big_Template',\r\n      {\r\n        maximumFileSize: MaximumVideoFileSizeMB / 1000,\r\n      }\r\n    );\r\n  };\r\n\r\n  showExtensionError = () => {\r\n    const {\r\n      i18n, showErrors, enableMultiple,\r\n    } = this.props;\r\n\r\n    const errorLinkText = i18n.getString('ImageExperience_BestPracticeHelp_Video');\r\n    const errorTopic = 'app54794';\r\n\r\n    showErrors([\r\n      <span>\r\n        {i18n.getString(`ImageExperience_${enableMultiple ? 'MultipleUpload_' : ''}Error_MediaFormatNotSupported`)}\r\n        <LearnMoreLink\r\n          linkText={errorLinkText}\r\n          topic={errorTopic}\r\n        />\r\n      </span>,\r\n    ]);\r\n  };\r\n\r\n  render() {\r\n    const { onFileRead, enableMultiple, ...rest } = this.props;\r\n\r\n    return (\r\n      <FilePicker\r\n        allowedFileExtensions={allowedVideoFileExtensions}\r\n        enableMultiple={enableMultiple}\r\n        onFileRead={this.onFileReadInternal}\r\n        isVideo\r\n        maximumFileSize={MaximumVideoFileSizeMB}\r\n        hideDescription\r\n        getReachFileSizeLimitErrorMessage={this.getReachFileSizeLimitErrorMessage}\r\n        showExtensionError={this.showExtensionError}\r\n        {...rest}\r\n      />\r\n    );\r\n  }\r\n}\r\n\r\nVideoFilePicker.propTypes = {\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseDecimal: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  enableMultiple: PropTypes.bool,\r\n  onFileRead: PropTypes.func,\r\n  showErrors: PropTypes.func.isRequired,\r\n};\r\n\r\nVideoFilePicker.defaultProps = {\r\n  enableMultiple: false,\r\n  onFileRead: _.noop,\r\n};\r\n","export {\r\n  UploadPreviewWithCustomPreview,\r\n  UploadPreview,\r\n  SimpleImagePreview,\r\n} from './upload-assets-preview';\r\n\r\nexport {\r\n  UploadProgress,\r\n} from './upload-progress-control';\r\n\r\nexport {\r\n  defaultUploadProgressBoundary,\r\n  updateProgress,\r\n  updateFilePreviewArrayUploadProgress,\r\n  generatePreviewArray,\r\n} from './progress-helpers';\r\n\r\nexport { baseStyles as baseItemBoxProgressStyles } from './styles/upload-assets-preview-style';\r\n","import React, { useContext, useCallback, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { Progress } from '@bingads-webui-react/progress';\r\n\r\nimport { uploadPreviewStyle } from './styles/upload-assets-preview-style';\r\n\r\nexport const UploadPreviewWithCustomPreview = ({\r\n  assetList,\r\n  maxUploadNum,\r\n  PreviewComponent,\r\n  customClasses,\r\n  showTitle,\r\n}) => {\r\n  const classes = useDefaultStyles(uploadPreviewStyle);\r\n  const i18n = useContext(I18nContext);\r\n\r\n  const getFileSize = useCallback((fileSize) => {\r\n    let size = fileSize;\r\n    let fileSizeStr = '';\r\n    if ((fileSize / 1024) < 1024) {\r\n      size = fileSize / 1024;\r\n      fileSizeStr = i18n.getString(_TL_('{{fileSize}} KB'), { fileSize: size.toFixed(2) });\r\n    } else {\r\n      size = fileSize / 1024 / 1024;\r\n      fileSizeStr = i18n.getString(_TL_('{{fileSize}} MB'), { fileSize: size.toFixed(2) });\r\n    }\r\n\r\n    return fileSizeStr;\r\n  }, [i18n]);\r\n\r\n  const normalInfoBox = item => (\r\n    <div className={classnames('normal-info-box', customClasses.normalInfoBox)}>\r\n      <div className={classes.progressBox}>\r\n        <div className={classnames(classes.progressLine, 'progress-line')}>\r\n          <Progress\r\n            progressPercentage={item.progress}\r\n          />\r\n        </div>\r\n        <div\r\n          className={classnames(\r\n            classes.statusIcon,\r\n            'status-icon',\r\n            item.progress === 1 ? `${classes.completeIcon} complete-icon` :\r\n            `${classes.ongoingIcon} ongoing-icon`\r\n          )}\r\n        />\r\n      </div>\r\n      <div className={classnames(classes.imageSize, 'file-size')}>{getFileSize(item.size)}</div>\r\n    </div>\r\n  );\r\n\r\n  const errorInfoBox = () => (\r\n    <div className={classnames('error-info-box', customClasses.errorInfoBox)}>\r\n      <div\r\n        className={classnames(\r\n            classes.statusIcon,\r\n            classes.errorIcon,\r\n            'status-icon',\r\n            'error-icon'\r\n          )}\r\n      />\r\n      <div className={classnames(classes.errorMsg, 'error-msg')}>{i18n.getString(_TL_('Upload failed. Maximum limit reached.'))}</div>\r\n    </div>\r\n  );\r\n\r\n  const uploadTitle = i18n.getString(_TL_('Uploading {{uploadingNum}} files...'), { uploadingNum: maxUploadNum ? Math.min(maxUploadNum, assetList.length) : assetList.length });\r\n\r\n  const previewComponentClasses = useMemo(() => ({\r\n    imageContent: classnames(classes.imageContent, customClasses.imageContent),\r\n    imageContentText: classnames(customClasses.imageContentText),\r\n  }), [customClasses, classes]);\r\n\r\n  return (\r\n    assetList && assetList.length > 0 ?\r\n      <div className={classnames('upload-preview-container', classes.uploadPreviewContainer)} aria-label={uploadTitle}>\r\n        {\r\n          showTitle && (\r\n            <div className={classes.uploadTitle}>\r\n              {uploadTitle}\r\n            </div>\r\n          )\r\n        }\r\n        <div className={classes.imagePreviewContainer}>\r\n          {\r\n            assetList.map((item, index) => {\r\n              const exceedMaxUploadNum = maxUploadNum && index >= maxUploadNum;\r\n              const { progress, ...rest } = item;\r\n\r\n              return (\r\n                <div\r\n                  className={classnames(\r\n                    customClasses.imageItemBox || classes.imageItemBox,\r\n                    (index + 1) % 3 === 0 ? classes.imageItemBoxRight : '',\r\n                    exceedMaxUploadNum ? classes.imageItemErrBox : ''\r\n                    )}\r\n                  key={item.name}\r\n                >\r\n                  <PreviewComponent\r\n                    className={previewComponentClasses.imageContent}\r\n                    alt={i18n.getString(_TL_('Uploading file'))}\r\n                    {...rest}\r\n                  />\r\n                  <div className={classnames(classes.imageName, customClasses.imageName)}>{item.name}</div>\r\n                  {\r\n                    exceedMaxUploadNum ? errorInfoBox() : normalInfoBox(item)\r\n                  }\r\n                </div>\r\n              );\r\n            })\r\n          }\r\n        </div>\r\n      </div> : null\r\n  );\r\n};\r\nUploadPreviewWithCustomPreview.propTypes = {\r\n  assetList: PropTypes.arrayOf(PropTypes.shape({\r\n    url: PropTypes.string,\r\n    progress: PropTypes.number,\r\n    name: PropTypes.string,\r\n    size: PropTypes.number,\r\n  })).isRequired,\r\n  maxUploadNum: PropTypes.number,\r\n  PreviewComponent: PropTypes.func.isRequired,\r\n  customClasses: PropTypes.shape({}),\r\n  showTitle: PropTypes.bool,\r\n};\r\n\r\nUploadPreviewWithCustomPreview.defaultProps = {\r\n  customClasses: {},\r\n  showTitle: true,\r\n  maxUploadNum: undefined,\r\n};\r\n\r\nexport const SimpleImagePreview = ({ className, url, alt }) => (\r\n  <img className={className} src={url} alt={alt} />\r\n);\r\n\r\nSimpleImagePreview.propTypes = {\r\n  className: PropTypes.string.isRequired,\r\n  url: PropTypes.string.isRequired,\r\n  alt: PropTypes.string.isRequired,\r\n};\r\n\r\nexport const UploadPreview = props => (\r\n  <UploadPreviewWithCustomPreview\r\n    {...props}\r\n    PreviewComponent={SimpleImagePreview}\r\n  />\r\n);\r\n","export const baseStyles = {\r\n  imageItemBox: {\r\n    marginBottom: '16px',\r\n    marginRight: '16px',\r\n    width: '298px',\r\n    height: '274px',\r\n    borderRadius: '4px',\r\n    boxShadow: '0px 0.3px 0.9px rgba(0, 0, 0, 0.1), 0px 1.6px 3.6px rgba(0, 0, 0, 0.13)',\r\n    overflow: 'hidden',\r\n  },\r\n  imageContent: {\r\n    width: '100%',\r\n    height: '200px',\r\n    objectFit: 'contain',\r\n  },\r\n};\r\n\r\nexport const uploadPreviewStyle = (_, { palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  uploadPreviewContainer: {\r\n    width: '100%',\r\n  },\r\n  uploadTitle: {\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '14px',\r\n    lineHeight: '20px',\r\n    color: palette.neutralSecondary,\r\n    textAlign: 'center',\r\n  },\r\n  imagePreviewContainer: {\r\n    marginTop: '16px',\r\n    width: '100%',\r\n    display: 'flex',\r\n    flexWrap: 'wrap',\r\n    maxHeight: '637px',\r\n    overflowY: 'scroll',\r\n    scrollBar: 'none',\r\n    '&::-webkit-scrollbar': {\r\n      width: '0',\r\n      display: 'none',\r\n    },\r\n  },\r\n  imageItemBox: {\r\n    ...baseStyles.imageItemBox,\r\n    backgroundColor: palette.neutralLighterAlt,\r\n  },\r\n  imageItemBoxRight: {\r\n    marginRight: '0',\r\n  },\r\n  imageItemErrBox: {\r\n    backgroundColor: '#FDE7E9', // hardcoded; not exported from fluent/theme package, but is used by fluent ui (see Messaging Colors)\r\n    position: 'relative',\r\n  },\r\n  imageContent: {\r\n    ...baseStyles.imageContent,\r\n  },\r\n  imageName: {\r\n    marginTop: '12px',\r\n    marginLeft: '18px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '14px',\r\n    lineHeight: '20px',\r\n    color: palette.neutralPrimary,\r\n    width: '206px',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n    textOverflow: 'ellipsis',\r\n  },\r\n  progressBox: {\r\n    margin: '0 18px',\r\n    display: 'flex',\r\n    justifyContent: 'space-between',\r\n  },\r\n  progressLine: {\r\n    marginTop: '8px',\r\n    width: '206px',\r\n    height: '2px',\r\n    backgroundColor: palette.neutralLight,\r\n    overflow: 'hidden',\r\n  },\r\n  statusIcon: {\r\n    fontFamily: iconFontFamily,\r\n    lineHeight: '16px',\r\n    fontSize: 16,\r\n    verticalAlign: 'middle',\r\n  },\r\n  completeIcon: {\r\n    color: palette.green,\r\n    display: 'block',\r\n    '&:before': {\r\n      content: '\"\\\\EC61\"',\r\n    },\r\n    transition: 'all 0.6s ease',\r\n  },\r\n  ongoingIcon: {\r\n    color: palette.themePrimary,\r\n    '&:before': {\r\n      content: '\"\\\\E898\"',\r\n    },\r\n  },\r\n  errorIcon: {\r\n    position: 'absolute',\r\n    bottom: '32px',\r\n    right: '18px',\r\n    color: '#A80000', // hardcoded; not exported from fluent/theme package, but is used by fluent ui (see Messaging Colors)\r\n    '&:before': {\r\n      content: '\"\\\\EA39\"',\r\n    },\r\n  },\r\n  errorMsg: {\r\n    marginTop: '8px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#A80000', // hardcoded; not exported from fluent/theme package, but is used by fluent ui (see Messaging Colors)\r\n    marginLeft: '18px',\r\n  },\r\n  imageSize: {\r\n    marginTop: '2px',\r\n    marginLeft: '18px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n  },\r\n});\r\n","/* eslint-disable max-len */\r\nimport React from 'react';\r\nimport { mapObject, constant } from 'underscore';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { Progress, RadialProgress } from '@bingads-webui-react/progress';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getCircleProgressStyle } from '@bingads-webui-campaign/shared-image-experience-styles';\r\n\r\nconst BarUploadProgress = (props) => {\r\n  const uploadProcessText = `${((100 * props.uploadedBytes) / props.totalBytes).toFixed(1)} %`;\r\n\r\n  return (\r\n    <div className=\"upload-progress-container\">\r\n      <Progress\r\n        className=\"bar-upload-progress\"\r\n        progressPercentage={props.uploadedBytes / props.totalBytes}\r\n      />\r\n      <div className=\"bar-upload-progress-text\">{uploadProcessText}</div>\r\n    </div>);\r\n};\r\n\r\nconst CircleUploadProgress = withDefaultStyles(props =>\r\n  (\r\n    <div className={props.classes.circle}>\r\n      <RadialProgress\r\n        progressPercentage={props.uploadedBytes / props.totalBytes}\r\n        size={44}\r\n        stroke=\"#0078d4\"\r\n        strokeWidth={4}\r\n      />\r\n    </div>\r\n  ), getCircleProgressStyle);\r\n\r\nexport const UploadProgress = (props) => {\r\n  switch (props.type) {\r\n    case 'bar':\r\n      return <BarUploadProgress {...props} />;\r\n    case 'circle':\r\n      return <CircleUploadProgress {...props} />;\r\n    default:\r\n      return null;\r\n  }\r\n};\r\n\r\nUploadProgress.propTypes = {\r\n  totalBytes: PropTypes.number.isRequired,\r\n  uploadedBytes: PropTypes.number.isRequired,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n    parseDecimal: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  type: PropTypes.string,\r\n};\r\n\r\nBarUploadProgress.propTypes = UploadProgress.propTypes;\r\nCircleUploadProgress.propTypes = {\r\n  ...UploadProgress.propTypes,\r\n  classes: PropTypes.shape(mapObject(\r\n    getCircleProgressStyle(),\r\n    constant(PropTypes.string.isRequired)\r\n  )).isRequired,\r\n};\r\n\r\nUploadProgress.defaultProps = {\r\n  type: 'bar',\r\n};\r\n","import { map } from 'underscore';\r\n\r\n// for uploading image during crud-ad workflow, there are additional\r\n// async operations needed after the asset upload to MT is complete\r\n// so the default boundary on the progress bar is set to 80% to account\r\n// for the additional time needed to process the image for crud-ad\r\nexport const defaultUploadProgressBoundary = 0.8;\r\n\r\n/**\r\n * Helper to update the state of the progress bar based on current upload progress\r\n * @param {function} setProgress - function to update progress of files being uploaded\r\n * @param {number} index - index of the image being uploading within the array of images\r\n * to be uploaded\r\n * @param {number} uploadProgressBoundary - custom upload progress boundary for use in cases\r\n * where the amount of processing happening after upload to MT is complete is different than\r\n * default case used by crud-ad workflow. 1 is 100% (show full progress bar when upload is done).\r\n * @returns {function} event handler function which will take an event with loaded/total properties\r\n * and update progress based on the loaded state\r\n */\r\nexport const updateProgress = ({ setProgress, index, uploadProgressBoundary }) => (evt) => {\r\n  const boundary = uploadProgressBoundary || defaultUploadProgressBoundary;\r\n  const progress = (evt.loaded / evt.total) * boundary;\r\n\r\n  setProgress(index, progress);\r\n};\r\n\r\n/**\r\n * Helper to update the progress of files in the array of files to be uploaded. Returns\r\n * a function which can directly be passed into setState if maintaining previewImageArr\r\n * via class component state.\r\n * @param {number} index - index of the file being uploading within the array of files\r\n * to be uploaded\r\n * @param {number} progress - current progress of uploading.\r\n * @returns {function} takes array of files to be uploaded as argument, will update the\r\n * progress of the file specified by index in the upload preview array\r\n */\r\nexport const updateFilePreviewArrayUploadProgress = (index, progress) => ({ previewArr }) => {\r\n  const newPreviewArr = map(previewArr, (previous, i) => {\r\n    if (i === index) {\r\n      return {\r\n        ...previous,\r\n        progress,\r\n      };\r\n    }\r\n    return previous;\r\n  });\r\n\r\n  return { previewArr: newPreviewArr };\r\n};\r\n\r\n/**\r\n * Helper to generate an array of files to be uploaded with properties used by the\r\n * upload progress UI.\r\n * @param {array} selectedFiles - array containing file objects\r\n * @param {array} fileSources - array of file data encoded as string.\r\n * @param {array} parsedInfos - array of object containing parsed info of each file.\r\n * @returns {array} array of files to be uploaded with properties\r\n * url (file data encoded), progress (0 for now, will be updated as file starts uploading),\r\n * size, name\r\n */\r\nexport const generatePreviewArray = ({ files = [], fileSources, customizedOptions = [] }) => {\r\n  const previewArr = map(fileSources, (source, index) => {\r\n    const uploadInfo = {\r\n      url: source,\r\n      progress: 0,\r\n      size: files[index] ? files[index].size : 0,\r\n      name: files[index] ? files[index].name : '',\r\n      ...(customizedOptions[index] || {}),\r\n    };\r\n    return uploadInfo;\r\n  });\r\n\r\n  return previewArr;\r\n};\r\n","export {\r\n  allowedVideoFileExtensions,\r\n  MaximumImageFileSizeMB,\r\n  MaximumVideoFileSizeMB,\r\n} from './constants';\r\nexport { parseFileName } from './parse-file';\r\nexport { readFileAsDataURLAsync } from './read-file';\r\nexport { validateImageAsync, validateVideoAsync } from './validate-file';\r\n","import { validateImageSyncAsyncWithDimensionParams } from '@bingads-webui-campaign/image-experience-utils';\r\n\r\n// Put all validations in this package along with the view\r\nexport const validateImageAsync = ({\r\n  imageSource,\r\n  minimumWidth,\r\n  minimumHeight,\r\n}) => validateImageSyncAsyncWithDimensionParams({\r\n  imageSource,\r\n  minimumWidth,\r\n  minimumHeight,\r\n});\r\n\r\n// currently there is no client side check, so here leave an empty interface\r\nexport const validateVideoAsync = () => Promise.resolve(true);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__559__;","module.exports = __WEBPACK_EXTERNAL_MODULE__603__;","module.exports = __WEBPACK_EXTERNAL_MODULE__604__;","module.exports = __WEBPACK_EXTERNAL_MODULE__843__;","module.exports = __WEBPACK_EXTERNAL_MODULE__897__;","import React from 'react';\r\nimport Proptypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport { AdPreview } from '@bingads-webui-adlibrary/ad-preview';\r\nimport {\r\n  Avatar,\r\n  Card,\r\n  CardFooter,\r\n  CardHeader,\r\n  CardPreview,\r\n  Text,\r\n} from '@fluentui/react-components';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nconst getStyles = () => ({\r\n  cardContainer: {\r\n    width: '358px',\r\n    fontStyle: 'normal',\r\n    '& h3': {\r\n      margin: '0',\r\n    },\r\n    '& .title': {\r\n      fontWeight: '600',\r\n      fontSize: '14px',\r\n      lineHeight: '20px',\r\n      color: '#242424',\r\n    },\r\n    '& .subtitle': {\r\n      fontWeight: '400',\r\n      fontSize: '12px',\r\n      lineHeight: '16px',\r\n      color: '#616161',\r\n    },\r\n  },\r\n  cardPreviewContainer: {\r\n    width: '358px',\r\n    overflow: 'hidden',\r\n    backgroundImage: 'linear-gradient(44.24deg, rgba(66, 62, 55, 0.33) 0%, rgba(241, 238, 230, 0.6) 100%)',\r\n    display: 'flex',\r\n    justifyContent: 'center',\r\n    alignItems: 'center',\r\n    marginLeft: '-12px',\r\n    paddingTop: '24px',\r\n    paddingBottom: '24px',\r\n  },\r\n  linkContainer: {\r\n    width: '114px',\r\n    height: '32px',\r\n    borderRadius: '4px',\r\n    backgroundImage: 'linear-gradient(0deg, #FFFFFF, #FFFFFF), linear-gradient(0deg, #D1D1D1, #D1D1D1)',\r\n    border: '1px solid #D1D1D1',\r\n    padding: '5px 0px 2px 0px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '14px',\r\n    fontWeight: 600,\r\n    lineHeight: '20px',\r\n    letterSpacing: '0em',\r\n    textAlign: 'center',\r\n    color: '#242424 !important',\r\n  },\r\n});\r\n\r\nconst getFirstImageDataFromJsonAsset = (assetJson) => {\r\n  const imageData = {};\r\n  const imageAsset = JSON.parse(assetJson)[0];\r\n  imageData.url = imageAsset.AssetUrl;\r\n  imageData.width = imageAsset.Width ? imageAsset.Width : 0;\r\n  imageData.height = imageAsset.Height ? imageAsset.Height : 0;\r\n  return imageData;\r\n};\r\n\r\nconst UnStyledAdResultCard = (props) => {\r\n  const {\r\n    AdId: adId,\r\n    AdvertiserName: advertiserName,\r\n    Title: title,\r\n    Description: description,\r\n    DisplayUrl: displayUrl,\r\n    DestinationUrl: destinationUrl,\r\n    AssetJson: assetJson,\r\n    searchConfig,\r\n  } = props;\r\n  const classes = useDefaultStyles(getStyles);\r\n\r\n  const adData = {\r\n    shortHeadline: title,\r\n    longHeadline: title,\r\n    description,\r\n    displayUrl,\r\n    url: destinationUrl,\r\n  };\r\n\r\n  const imageData = assetJson\r\n    ? getFirstImageDataFromJsonAsset(assetJson)\r\n    : null;\r\n\r\n  const adPreviewImage = adData !== null\r\n    ? <AdPreview image={imageData} adData={adData} adId={adId} />\r\n    : null;\r\n\r\n  return (\r\n    <Card className={classes.cardContainer}>\r\n      <CardHeader\r\n        image={<Avatar name={`${advertiserName}`} shape=\"square\" color=\"colorful\" />}\r\n        header={<h3 className=\"title\">{`${advertiserName}`}</h3>}\r\n        description={<Text className=\"subtitle\">Advertiser</Text>}\r\n      />\r\n      <div className={classes.cardPreviewContainer}>\r\n        <CardPreview>\r\n          {adPreviewImage}\r\n        </CardPreview>\r\n      </div>\r\n      {\r\n        description.length > 16 && (\r\n          <p>{description}</p>\r\n        )\r\n      }\r\n      <CardFooter>\r\n        <Link\r\n          className={classes.linkContainer}\r\n          to={`/ad/${adId}`}\r\n          state={searchConfig}\r\n        >\r\n          View ad details\r\n        </Link>\r\n      </CardFooter>\r\n    </Card>\r\n  );\r\n};\r\n\r\nUnStyledAdResultCard.propTypes = {\r\n  AdId: Proptypes.number.isRequired,\r\n  AdvertiserName: Proptypes.string.isRequired,\r\n  Title: Proptypes.string.isRequired,\r\n  Description: Proptypes.string.isRequired,\r\n  DisplayUrl: Proptypes.string.isRequired,\r\n  DestinationUrl: Proptypes.string.isRequired,\r\n  AssetJson: Proptypes.string.isRequired,\r\n  searchConfig: Proptypes.shape({}),\r\n};\r\n\r\nUnStyledAdResultCard.defaultProps = {\r\n  searchConfig: null,\r\n};\r\n\r\nexport const AdResultCard = UnStyledAdResultCard;\r\n","const DEFAULT_AD_PAGE_SIZE = 12;\r\nconst ICON_FILL_COLOR = 'rgba(40, 134, 222, 1)';\r\n\r\nexport {\r\n  DEFAULT_AD_PAGE_SIZE,\r\n  ICON_FILL_COLOR,\r\n};\r\n","import React from 'react';\r\nimport Proptypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport {\r\n  Avatar,\r\n  Card,\r\n  CardFooter,\r\n  CardHeader,\r\n  Text,\r\n} from '@fluentui/react-components';\r\nimport { CheckmarkCircle16Filled } from '@fluentui/react-icons';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { TooltipHost } from '@fluentui/react/lib/Tooltip';\r\nimport { ICON_FILL_COLOR } from './utils/constants';\r\n\r\nconst getStyles = () => ({\r\n  cardContainer: {\r\n    width: '358px',\r\n  },\r\n  cardTitle: {\r\n    fontWeight: '600',\r\n    fontSize: '14px',\r\n    lineHeight: '20px',\r\n    color: '#242424',\r\n  },\r\n  cardSubtitle: {\r\n    fontWeight: '400',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#616161',\r\n  },\r\n  cardFooter: {\r\n    marginTop: '36px',\r\n    '& .advertiser-link-container': {\r\n      width: '93px',\r\n      height: '32px',\r\n      color: '#242424 !important',\r\n      padding: '5px 0px 2px 0px',\r\n      border: '1px solid #D1D1D1',\r\n      borderRadius: '4px',\r\n      fontWeight: 600,\r\n      letterSpacing: '0em',\r\n      textAlign: 'center',\r\n    },\r\n  },\r\n  tooltip: {\r\n    marginLeft: '5px',\r\n    position: 'relative',\r\n    top: '2px',\r\n  },\r\n});\r\n\r\n// eslint-disable-next-line react/prop-types\r\nconst Header = ({ classes, name, isVerified }) => {\r\n  const Content = () => (\r\n    <span>\r\n      Learn more about Microsoft's Advertiser Identity Verification Program <a href=\"https://help.ads.microsoft.com/#apex/ads/en/60151/-1\" target=\"_blank\" rel=\"noopener noreferrer\">here</a>\r\n    </span>\r\n  );\r\n  return (\r\n    <>\r\n      <Text className={classes.cardTitle}>\r\n        {name}\r\n      </Text>\r\n      { isVerified ?\r\n        <span className={classes.tooltip}>\r\n          <TooltipHost\r\n            content={<Content />}\r\n          >\r\n            <CheckmarkCircle16Filled\r\n              tabIndex={0}\r\n              id={name}\r\n              primaryFill={ICON_FILL_COLOR}\r\n              aria-labelledby={`${name} verified`}\r\n              aria-label={name}\r\n            />\r\n          </TooltipHost>\r\n        </span> : null}\r\n    </>\r\n  );\r\n};\r\n\r\nconst UnStyledAdvertiserResultCard = (props) => {\r\n  const {\r\n    AdvertiserId: id,\r\n    AdvertiserName: name,\r\n    AdvertiserCountry: country,\r\n    IsVerified: isVerified,\r\n    searchConfig,\r\n  } = props;\r\n  const classes = useDefaultStyles(getStyles);\r\n  const updatedSearchConfig = { ...searchConfig, t: 'advertisers' };\r\n\r\n  return (\r\n    <Card className={classes.cardContainer}>\r\n      <CardHeader\r\n        image={<Avatar name={name} shape=\"square\" color=\"colorful\" size={48} />}\r\n        header={<Header classes={classes} name={name} isVerified={isVerified} />}\r\n        description={<Text className={classes.cardSubtitle}>{`Advertiser | ${country}`}</Text>}\r\n      />\r\n      <CardFooter className={classes.cardFooter}>\r\n        <Link\r\n          className=\"advertiser-link-container\"\r\n          to={`/advertiser/${id}`}\r\n          state={updatedSearchConfig}\r\n          aria-describedby=\"see_all_ads\"\r\n        >\r\n          See all ads\r\n        </Link>\r\n      </CardFooter>\r\n    </Card>\r\n  );\r\n};\r\n\r\nUnStyledAdvertiserResultCard.propTypes = {\r\n  AdvertiserId: Proptypes.string.isRequired,\r\n  AdvertiserName: Proptypes.string.isRequired,\r\n  AdvertiserCountry: Proptypes.string.isRequired,\r\n  IsVerified: Proptypes.bool.isRequired,\r\n  searchConfig: Proptypes.shape({}),\r\n};\r\n\r\nUnStyledAdvertiserResultCard.defaultProps = {\r\n  searchConfig: null,\r\n};\r\n\r\nexport const AdvertiserResultCard = UnStyledAdvertiserResultCard;\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport { compose } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Button } from '@fluentui/react-components';\r\nimport { ArrowLeft20Filled } from '@fluentui/react-icons';\r\n\r\nconst getStyles = () => ({\r\n  backwardButtonContainer: {\r\n    width: '649px',\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    justifyContent: 'flex-start',\r\n    '@media (max-width: 1250px)': {\r\n      width: '445px',\r\n    },\r\n  },\r\n  backwardButton: {\r\n    padding: '3px 0px',\r\n  },\r\n});\r\n\r\nconst UnStyledBackButton = (props) => {\r\n  const {\r\n    classes,\r\n    onBackButtonClick,\r\n  } = props;\r\n\r\n  return (\r\n    <div className={classnames('back-button', classes.backwardButtonContainer)}>\r\n      <Button\r\n        className={classes.backwardButton}\r\n        appearance=\"subtle\"\r\n        icon={<ArrowLeft20Filled />}\r\n        onClick={onBackButtonClick}\r\n      >\r\n        Back to search results\r\n      </Button>\r\n    </div>\r\n  );\r\n};\r\n\r\nUnStyledBackButton.propTypes = {\r\n  classes: PropTypes.shape({\r\n    backwardButtonContainer: PropTypes.string.isRequired,\r\n    backwardButton: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  onBackButtonClick: PropTypes.func.isRequired,\r\n};\r\n\r\nexport const BackButton = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledBackButton);\r\n","import React, { useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {\r\n  Button,\r\n  Dropdown,\r\n  Option,\r\n  Text,\r\n} from '@fluentui/react-components';\r\nimport {\r\n  ChevronLeft24Regular,\r\n  ChevronRight24Regular,\r\n  ChevronDoubleLeftRegular,\r\n  ChevronDoubleRightRegular,\r\n} from '@fluentui/react-icons';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nconst getStyles = () => ({\r\n  paginationWrapper: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    justifyContent: 'center',\r\n    alignItems: 'center',\r\n    gap: '12px',\r\n    '& button': {\r\n      minWidth: 'fit-content',\r\n      padding: '0px',\r\n    },\r\n    '& .unsized-icon': {\r\n      width: '24px',\r\n      height: '24px',\r\n    },\r\n  },\r\n  pageDropdown: {\r\n    border: '1px solid #B3B3B3',\r\n    textOverflow: 'ellipsis',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n    minWidth: '70px',\r\n    borderRadius: '2px',\r\n    '& button': {\r\n      padding: '5px 4px 5px 8px',\r\n    },\r\n  },\r\n});\r\n\r\nconst UnStyledPagination = ({\r\n  totalPage,\r\n  currentPage,\r\n  onPageChange,\r\n}) => {\r\n  const classes = useDefaultStyles(getStyles);\r\n  const handleFirst = useCallback(() => {\r\n    if (currentPage !== 1) {\r\n      onPageChange(1);\r\n    }\r\n  }, [currentPage, onPageChange]);\r\n\r\n  const handlePrev = useCallback(() => {\r\n    if (currentPage > 1) {\r\n      onPageChange(currentPage - 1);\r\n    }\r\n  }, [currentPage, onPageChange]);\r\n\r\n  const handleNext = useCallback(() => {\r\n    if (currentPage < totalPage) {\r\n      onPageChange(currentPage + 1);\r\n    }\r\n  }, [currentPage, onPageChange, totalPage]);\r\n\r\n  const handleLast = useCallback(() => {\r\n    if (currentPage !== totalPage) {\r\n      onPageChange(totalPage);\r\n    }\r\n  }, [currentPage, onPageChange, totalPage]);\r\n\r\n  const handlePageSelect = (ev, data) => {\r\n    onPageChange(Number(data.optionValue));\r\n  };\r\n\r\n  const pageOptions = Array.from({ length: totalPage }, (_, i) => i + 1).map(page => (\r\n    <Option key={page}>{page.toString()}</Option>\r\n  ));\r\n\r\n  return (\r\n    <div className={classes.paginationWrapper}>\r\n      <Button\r\n        onClick={handleFirst}\r\n        disabledFocusable={currentPage === 1}\r\n        shape=\"square\"\r\n        appearance=\"transparent\"\r\n        aria-label=\"First page button\"\r\n      >\r\n        <ChevronDoubleLeftRegular className=\"unsized-icon\" />\r\n      </Button>\r\n      <Button\r\n        onClick={handlePrev}\r\n        disabledFocusable={currentPage === 1}\r\n        shape=\"square\"\r\n        appearance=\"transparent\"\r\n        aria-label=\"Previous page button\"\r\n      >\r\n        <ChevronLeft24Regular />\r\n      </Button>\r\n      <Dropdown\r\n        className={classes.pageDropdown}\r\n        value={currentPage.toString()}\r\n        selectedOptions={[currentPage.toString()]}\r\n        onOptionSelect={handlePageSelect}\r\n        aria-label=\"Page dropdown\"\r\n      >\r\n        {pageOptions}\r\n      </Dropdown>\r\n      <Text>{` of ${totalPage}`}</Text>\r\n      <Button\r\n        onClick={handleNext}\r\n        disabledFocusable={currentPage === totalPage}\r\n        shape=\"square\"\r\n        appearance=\"transparent\"\r\n        aria-label=\"Next page\"\r\n      >\r\n        <ChevronRight24Regular />\r\n      </Button>\r\n      <Button\r\n        onClick={handleLast}\r\n        disabledFocusable={currentPage === totalPage}\r\n        shape=\"square\"\r\n        appearance=\"transparent\"\r\n        aria-label=\"Last page\"\r\n      >\r\n        <ChevronDoubleRightRegular className=\"unsized-icon\" />\r\n      </Button>\r\n    </div>\r\n  );\r\n};\r\n\r\nUnStyledPagination.propTypes = {\r\n  totalPage: PropTypes.number.isRequired,\r\n  currentPage: PropTypes.number.isRequired,\r\n  onPageChange: PropTypes.func.isRequired,\r\n};\r\n\r\nexport const Pagination = UnStyledPagination;\r\n","const countryList = [\r\n  {\r\n    key: 'All',\r\n    value: 'All countries',\r\n    code: '-1',\r\n  },\r\n  {\r\n    key: 'Austria',\r\n    value: 'Austria',\r\n    code: '10',\r\n  },\r\n  {\r\n    key: 'Belgium',\r\n    value: 'Belgium',\r\n    code: '14',\r\n  },\r\n  {\r\n    key: 'Bulgaria',\r\n    value: 'Bulgaria',\r\n    code: '26',\r\n  },\r\n  {\r\n    key: 'Croatia',\r\n    value: 'Croatia',\r\n    code: '49',\r\n  },\r\n  {\r\n    key: 'Cyprus',\r\n    value: 'Republic of Cyprus',\r\n    code: '207',\r\n  },\r\n  {\r\n    key: 'Czech',\r\n    value: 'Czech Republic',\r\n    code: '51',\r\n  },\r\n  {\r\n    key: 'Denmark',\r\n    value: 'Denmark',\r\n    code: '53',\r\n  },\r\n  {\r\n    key: 'Estonia',\r\n    value: 'Estonia',\r\n    code: '61',\r\n  },\r\n  {\r\n    key: 'Finland',\r\n    value: 'Finland',\r\n    code: '65',\r\n  },\r\n  {\r\n    key: 'France',\r\n    value: 'France',\r\n    code: '66',\r\n  },\r\n  {\r\n    key: 'Germany',\r\n    value: 'Germany',\r\n    code: '72',\r\n  },\r\n  {\r\n    key: 'Greece',\r\n    value: 'Greece',\r\n    code: '76',\r\n  },\r\n  {\r\n    key: 'Hungary',\r\n    value: 'Hungary',\r\n    code: '88',\r\n  },\r\n  {\r\n    key: 'Iceland',\r\n    value: 'Iceland',\r\n    code: '89',\r\n  },\r\n  {\r\n    key: 'Ireland',\r\n    value: 'Ireland',\r\n    code: '92',\r\n  },\r\n  {\r\n    key: 'Italy',\r\n    value: 'Italy',\r\n    code: '93',\r\n  },\r\n  {\r\n    key: 'Latvia',\r\n    value: 'Latvia',\r\n    code: '104',\r\n  },\r\n  {\r\n    key: 'Liechtenstein',\r\n    value: 'Liechtenstein',\r\n    code: '107',\r\n  },\r\n  {\r\n    key: 'Lithuania',\r\n    value: 'Lithuania',\r\n    code: '108',\r\n  },\r\n  {\r\n    key: 'Luxembourg',\r\n    value: 'Luxembourg',\r\n    code: '109',\r\n  },\r\n  {\r\n    key: 'Malta',\r\n    value: 'Malta',\r\n    code: '115',\r\n  },\r\n  {\r\n    key: 'Netherlands',\r\n    value: 'Netherlands',\r\n    code: '129',\r\n  },\r\n  {\r\n    key: 'Norway',\r\n    value: 'Norway',\r\n    code: '139',\r\n  },\r\n  {\r\n    key: 'Poland',\r\n    value: 'Poland',\r\n    code: '151',\r\n  },\r\n  {\r\n    key: 'Portugal',\r\n    value: 'Portugal',\r\n    code: '152',\r\n  },\r\n  {\r\n    key: 'Romania',\r\n    value: 'Romania',\r\n    code: '226',\r\n  },\r\n  {\r\n    key: 'Slovakia',\r\n    value: 'Slovakia',\r\n    code: '165',\r\n  },\r\n  {\r\n    key: 'Slovenia',\r\n    value: 'Slovenia',\r\n    code: '167',\r\n  },\r\n  {\r\n    key: 'Spain',\r\n    value: 'Spain',\r\n    code: '170',\r\n  },\r\n  {\r\n    key: 'Sweden',\r\n    value: 'Sweden',\r\n    code: '175',\r\n  },\r\n];\r\n\r\nconst countryCodeMap = {\r\n  Austria: '10',\r\n  Belgium: '14',\r\n  Bulgaria: '26',\r\n  Croatia: '49',\r\n  'Republic of Cyprus': '207',\r\n  'Czech Republic': '51',\r\n  Denmark: '53',\r\n  Estonia: '61',\r\n  Finland: '65',\r\n  France: '66',\r\n  Germany: '72',\r\n  Greece: '76',\r\n  Hungary: '88',\r\n  Ireland: '92',\r\n  Italy: '93',\r\n  Latvia: '104',\r\n  Lithuania: '108',\r\n  Luxembourg: '109',\r\n  Malta: '115',\r\n  Netherlands: '129',\r\n  Poland: '151',\r\n  Portugal: '152',\r\n  Romania: '226',\r\n  Slovakia: '165',\r\n  Slovenia: '167',\r\n  Spain: '170',\r\n  Sweden: '175',\r\n  Iceland: '89',\r\n  Liechtenstein: '107',\r\n  Norway: '139',\r\n};\r\n\r\nexport {\r\n  countryList,\r\n  countryCodeMap,\r\n};\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { memo, useCallback, useEffect, useMemo, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { compose, object, omit } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport {\r\n  Dropdown,\r\n  Option,\r\n  OptionGroup,\r\n  Label,\r\n} from '@fluentui/react-components';\r\nimport { countryList, countryCodeMap } from './config';\r\n\r\nconst getStyles = () => ({\r\n  filterItem: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    gap: '4px',\r\n  },\r\n  filterItemLabel: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '600',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#605E5C',\r\n  },\r\n  filterItemDropdown: {\r\n    border: '1px solid #B3B3B3',\r\n    textOverflow: 'ellipsis',\r\n    overflow: 'hidden',\r\n    whiteSpace: 'nowrap',\r\n    width: '259px',\r\n  },\r\n});\r\n\r\nconst UnStyledCountryFilter = memo((props) => {\r\n  const {\r\n    classes,\r\n    countryCodeList,\r\n    searchParams,\r\n    setSearchParams,\r\n  } = props;\r\n\r\n  const [allSelected, setAllSelected] = useState(false);\r\n\r\n  useEffect(() => {\r\n    if (countryCodeList.length === 0) {\r\n      setAllSelected(true);\r\n    }\r\n  }, []);\r\n\r\n  const onCountrySelect = useCallback((ev, data) => {\r\n    let newSearchParams = object([...searchParams]);\r\n    const { selectedOptions } = data;\r\n    if (data.optionValue === 'All countries') {\r\n      setAllSelected(!allSelected);\r\n      setSearchParams(omit(newSearchParams, 'ctrs'));\r\n      return;\r\n    }\r\n    setAllSelected(false);\r\n    const selectedCountryCodes = selectedOptions.map((countryName) => {\r\n      const countryCode = countryCodeMap[countryName];\r\n      return countryCode;\r\n    }).filter(code => code !== undefined);\r\n    const selectedCountryCodesString = selectedCountryCodes.join(',');\r\n\r\n    if (selectedCountryCodesString !== '') {\r\n      newSearchParams.ctrs = selectedCountryCodesString;\r\n    } else {\r\n      newSearchParams = omit(newSearchParams, 'ctrs');\r\n    }\r\n\r\n    setSearchParams(newSearchParams);\r\n  }, [allSelected, searchParams, setSearchParams]);\r\n\r\n  const countryOptions = useMemo(() => countryList.map(country => (\r\n    <Option key={country.code}>\r\n      {country.value}\r\n    </Option>\r\n  )), [allSelected]);\r\n\r\n  const selectedCountries = allSelected ? ['All countries'] : countryCodeList.map((countryCode) => {\r\n    const country = countryList.find(c => c.code === countryCode);\r\n    return country ? country.value : null;\r\n  });\r\n\r\n  const displayString = allSelected ? 'All countries' : selectedCountries.join(', ');\r\n\r\n  return (\r\n    <div className={classes.filterItem}>\r\n      <Label className={classes.filterItemLabel} aria-labelledby=\"Country\">Country</Label>\r\n      <Dropdown\r\n        className={classes.filterItemDropdown}\r\n        selectedOptions={selectedCountries}\r\n        value={displayString}\r\n        multiselect\r\n        onOptionSelect={onCountrySelect}\r\n        positioning=\"below\"\r\n        aria-label=\"Country dropdown\"\r\n      >\r\n        <OptionGroup label=\"Select countries\">\r\n          { countryOptions }\r\n        </OptionGroup>\r\n      </Dropdown>\r\n    </div>\r\n  );\r\n}, (prevProps, nextProps) => prevProps.selectedCountries === nextProps.selectedCountries\r\n&& prevProps.searchParams === nextProps.searchParams);\r\n\r\nUnStyledCountryFilter.propTypes = {\r\n  classes: PropTypes.shape({\r\n    filterItem: PropTypes.string.isRequired,\r\n    filterItemLabel: PropTypes.string.isRequired,\r\n    filterItemDropdown: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  countryCodeList: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n  searchParams: PropTypes.shape({\r\n    get: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  setSearchParams: PropTypes.func.isRequired,\r\n};\r\n\r\nexport const CountryFilter = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledCountryFilter);\r\n","import {\r\n  getCivilDateToday,\r\n  getCivilDateDayOfWeek,\r\n  getCivilDateMonthStart,\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\nimport { modelI18nMock } from '@bingads-webui-test/i18n-mock';\r\nimport { CivilDate } from 'tc39-proposal-temporal';\r\nimport './styles/date-range-picker.less';\r\n\r\nconst today = getCivilDateToday();\r\nconst yesterday = today.plus({ days: -1 });\r\nconst thisSunday = today.plus({ days: -getCivilDateDayOfWeek(today) });\r\nconst lastSunday = today.plus({ days: -getCivilDateDayOfWeek(today) - 7 });\r\nconst lastSaturday = today.plus({ days: -getCivilDateDayOfWeek(today) - 1 });\r\nconst thisMonthFirstDay = getCivilDateMonthStart(today);\r\nconst lastMonthlastDay = thisMonthFirstDay.plus({ days: -1 });\r\nconst lastMonthFirstDay = getCivilDateMonthStart(lastMonthlastDay);\r\nconst specificRanges = [\r\n  {\r\n    rangeId: 1, key: 'Custom', text: 'Custom', range: { start: undefined, end: undefined },\r\n  },\r\n  {\r\n    rangeId: 2, key: 'Today', text: 'Today', range: { start: today, end: today },\r\n  },\r\n  {\r\n    rangeId: 3, key: 'Yesterday', text: 'Yesterday', range: { start: yesterday, end: yesterday },\r\n  },\r\n  {\r\n    rangeId: 4, key: 'ThisWeek', text: 'This Week', range: { start: thisSunday, end: today },\r\n  },\r\n  {\r\n    rangeId: 5, key: 'LastWeek', text: 'Last Week', range: { start: lastSunday, end: lastSaturday },\r\n  },\r\n  {\r\n    rangeId: 6, key: 'ThisMonth', text: 'This Month', range: { start: thisMonthFirstDay, end: today },\r\n  },\r\n  {\r\n    rangeId: 7, key: 'LastMonth', text: 'Last Month', range: { start: lastMonthFirstDay, end: lastMonthlastDay },\r\n  },\r\n  {\r\n    rangeId: 8, key: 'Any', text: 'Any', range: { start: today.plus({ years: -1 }), end: today },\r\n  },\r\n];\r\n\r\nconst componentStrings = {\r\n  selected: 'Selection: ',\r\n  compared: 'Compared',\r\n  apply: 'Apply',\r\n  close: 'Close',\r\n  Today: 'Today',\r\n  Custom: 'Custom',\r\n  Yesterday: 'Yesterday',\r\n  ThisWeek: 'This week',\r\n  LastWeek: 'Last week',\r\n  ThisMonth: 'This month',\r\n  LastMonth: 'Last month',\r\n  LastYear: 'Last year',\r\n  LastPeriod: 'Last period',\r\n  Any: 'Any',\r\n};\r\n\r\n// TODO: Replace the mock with real i18n\r\nconst i18nMock = modelI18nMock({ dictionary: componentStrings });\r\ni18nMock.getString = key => key;\r\nconst date = i18nMock.getToday();\r\nconst getToday = () => new CivilDate(date.year, date.month, date.day);\r\ni18nMock.getToday = getToday;\r\n\r\nexport {\r\n  today,\r\n  yesterday,\r\n  thisSunday,\r\n  lastSunday,\r\n  lastSaturday,\r\n  thisMonthFirstDay,\r\n  lastMonthlastDay,\r\n  lastMonthFirstDay,\r\n  specificRanges,\r\n  i18nMock,\r\n};\r\n","import { CivilDate } from 'tc39-proposal-temporal';\r\n\r\nconst convertISOStringToCivilDate = (isoString) => {\r\n  const date = isoString.split('-');\r\n  return new CivilDate(date[0], date[1], date[2]);\r\n};\r\n\r\nexport {\r\n  convertISOStringToCivilDate,\r\n};\r\n","import React from 'react';\r\nimport Proptypes from 'prop-types';\r\nimport { ComparedDateRangePicker } from '@bingads-webui-react/compared-date-range-picker';\r\nimport { today, specificRanges, i18nMock } from './date-range-config';\r\nimport { convertISOStringToCivilDate } from './date-range-utils';\r\n\r\nexport const DateRangePicker = (props) => {\r\n  const {\r\n    startDate,\r\n    endDate,\r\n    onPickDateRanges,\r\n  } = props;\r\n\r\n  const startCivilDate = startDate !== '' ? convertISOStringToCivilDate(startDate) : today.plus({ years: -1 });\r\n  const endCivilDate = endDate !== '' ? convertISOStringToCivilDate(endDate) : today;\r\n\r\n  return (\r\n    <ComparedDateRangePicker\r\n      i18n={i18nMock}\r\n      disableCompare\r\n      selectedRange={{ start: startCivilDate, end: endCivilDate }}\r\n      specificRanges={specificRanges}\r\n      onPickDateRanges={onPickDateRanges}\r\n      minDate={today.plus({ years: -1 })}\r\n      maxDate={today}\r\n    />\r\n  );\r\n};\r\n\r\nDateRangePicker.propTypes = {\r\n  startDate: Proptypes.string,\r\n  endDate: Proptypes.string,\r\n  onPickDateRanges: Proptypes.func.isRequired,\r\n};\r\n\r\nDateRangePicker.defaultProps = {\r\n  startDate: '',\r\n  endDate: '',\r\n};\r\n","import React, { useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { compose, object, omit } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport {\r\n  Label,\r\n} from '@fluentui/react-components';\r\nimport { DateRangePicker } from '../date-range-picker';\r\n\r\nconst getStyles = () => ({\r\n  filterItem: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    gap: '4px',\r\n  },\r\n  filterItemLabel: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '600',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#605E5C',\r\n  },\r\n});\r\n\r\nconst UnStyledDateRangeFilter = (props) => {\r\n  const {\r\n    classes,\r\n    startDate,\r\n    endDate,\r\n    searchParams,\r\n    setSearchParams,\r\n  } = props;\r\n\r\n  const onPickDateRanges = useCallback((data) => {\r\n    let newSearchParams = object([...searchParams]);\r\n    if (data.rangeType.rangeId === 8) {\r\n      newSearchParams = omit(newSearchParams, 'start', 'end');\r\n    } else {\r\n      newSearchParams.start = data.selectedRange.start.toString();\r\n      newSearchParams.end = data.selectedRange.end.toString();\r\n    }\r\n    setSearchParams(newSearchParams);\r\n  }, [searchParams, setSearchParams]);\r\n\r\n  return (\r\n    <div className={classes.filterItem}>\r\n      <Label className={classes.filterItemLabel}>Date</Label>\r\n      <DateRangePicker\r\n        startDate={startDate}\r\n        endDate={endDate}\r\n        onPickDateRanges={onPickDateRanges}\r\n      />\r\n    </div>\r\n  );\r\n};\r\n\r\nUnStyledDateRangeFilter.propTypes = {\r\n  classes: PropTypes.shape({\r\n    filterItem: PropTypes.string.isRequired,\r\n    filterItemLabel: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n};\r\n\r\nexport const DateRangeFilter = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledDateRangeFilter);\r\n","import React, { useCallback, useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { compose, object, omit } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Search20Regular } from '@fluentui/react-icons';\r\nimport { Input } from '@fluentui/react-components';\r\n\r\nconst getStyles = () => ({\r\n  filterItem: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    gap: '4px',\r\n  },\r\n  filterItemLabel: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '600',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#605E5C',\r\n  },\r\n});\r\n\r\nconst UnStyledExtraInputFilter = (props) => {\r\n  const {\r\n    classes,\r\n    adQueryInput,\r\n    searchParams,\r\n    setSearchParams,\r\n  } = props;\r\n\r\n  const [searchText, setSearchText] = useState(adQueryInput);\r\n\r\n  const onInputChange = useCallback((ev, data) => {\r\n    setSearchText(data.value);\r\n  }, [setSearchText]);\r\n\r\n  const onInputKeyDown = useCallback((ev) => {\r\n    if (ev.key === 'Enter') {\r\n      if (searchText !== '') {\r\n        let newSearchParams = object([...searchParams]);\r\n        newSearchParams.aq = searchText;\r\n        newSearchParams = omit(newSearchParams, 'page');\r\n        setSearchParams(newSearchParams);\r\n      } else {\r\n        setSearchParams({});\r\n      }\r\n    }\r\n  }, [searchText, searchParams, setSearchParams]);\r\n\r\n  useEffect(() => {\r\n    setSearchText(adQueryInput);\r\n  }, [adQueryInput]);\r\n\r\n  return (\r\n    <div className={classes.filterItem}>\r\n      <Input\r\n        placeholder=\"Ad content\"\r\n        type=\"text\"\r\n        contentBefore={<Search20Regular />}\r\n        value={searchText}\r\n        onChange={onInputChange}\r\n        onKeyDown={onInputKeyDown}\r\n      />\r\n    </div>\r\n  );\r\n};\r\n\r\nUnStyledExtraInputFilter.propTypes = {\r\n  classes: PropTypes.shape({\r\n    filterItem: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n};\r\n\r\nexport const ExtraInputFilter = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledExtraInputFilter);\r\n","import React from 'react';\r\nimport { Spinner } from '@fluentui/react-components';\r\n\r\nconst FallbackSpinner = () => (\r\n  <div style={{\r\n      height: '100vh',\r\n      display: 'flex',\r\n      alignItems: 'center',\r\n      justifyContent: 'center',\r\n    }}\r\n  >\r\n    <Spinner size=\"extra-large\" />\r\n  </div>\r\n);\r\n\r\nexport {\r\n  FallbackSpinner\r\n};\r\n","import React from 'react';\r\nimport { compose } from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Button } from '@fluentui/react-components';\r\nimport {\r\n  Skeleton,\r\n  SkeletonItem,\r\n} from '@fluentui/react-skeleton';\r\n\r\nconst getStyles = () => ({\r\n  resultWrapper: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    flexWrap: 'wrap',\r\n    marginTop: '36px',\r\n    gap: '24px',\r\n  },\r\n  cardWrapper: {\r\n    backgroundColor: '#fff',\r\n    width: '358px',\r\n    height: '360px',\r\n  },\r\n  headerRow: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    padding: '12px',\r\n  },\r\n  headerText: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    marginLeft: '12px',\r\n    '& .title': {\r\n      width: '183px',\r\n    },\r\n    '& .subTitle': {\r\n      width: '100px',\r\n      marginTop: '12px',\r\n    },\r\n  },\r\n  previewRow: {\r\n    width: '100%',\r\n    height: '209px',\r\n    '& .preview': {\r\n      height: '100%',\r\n    },\r\n  },\r\n  footerRow: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    padding: '12px',\r\n    '& .description': {\r\n      width: '100%',\r\n    },\r\n    '& .adButton': {\r\n      marginTop: '12px',\r\n      width: 'fit-content',\r\n    },\r\n  },\r\n});\r\n\r\nconst AdResultShimmer = ({ classes }) => (\r\n  <div className={classes.cardWrapper} >\r\n    <Skeleton animation=\"wave\">\r\n      <div className={classes.headerRow}>\r\n        <SkeletonItem shape=\"circle\" size={36} />\r\n        <div className={classes.headerText}>\r\n          <SkeletonItem className=\"title\" shape=\"square\" size={12} />\r\n          <SkeletonItem className=\"subTitle\" shape=\"square\" size={12} />\r\n        </div>\r\n      </div>\r\n      <div className={classes.previewRow}>\r\n        <SkeletonItem className=\"preview\" shape=\"square\" size={209} />\r\n      </div>\r\n      <div className={classes.footerRow}>\r\n        <SkeletonItem className=\"description\" shape=\"square\" size={12} />\r\n        <Button className=\"adButton\" appearance=\"primary\" disabled disabledFocusable>\r\n          View ad details\r\n        </Button>\r\n      </div>\r\n    </Skeleton>\r\n  </div>\r\n);\r\n\r\nconst UnStyledAdResultLoadingEffect = ({ classes }) => {\r\n  const adResultShimmers = [...Array(6)].map((_, index) => (\r\n    // eslint-disable-next-line react/no-array-index-key\r\n    <AdResultShimmer key={index} classes={classes} />\r\n  ));\r\n\r\n  return (\r\n    <div className={classes.resultWrapper}>\r\n      { adResultShimmers }\r\n    </div>\r\n  );\r\n};\r\n\r\nexport const AdResultLoadingEffect = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledAdResultLoadingEffect);\r\n","import React from 'react';\r\nimport { compose } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Button } from '@fluentui/react-components';\r\nimport {\r\n  Skeleton,\r\n  SkeletonItem,\r\n} from '@fluentui/react-skeleton';\r\n\r\nconst getStyles = () => ({\r\n  resultWrapper: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    flexWrap: 'wrap',\r\n    marginTop: '36px',\r\n    gap: '24px',\r\n  },\r\n  cardWrapper: {\r\n    backgroundColor: '#fff',\r\n    width: '358px',\r\n    height: '164px',\r\n  },\r\n  headerRow: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    padding: '12px',\r\n  },\r\n  headerText: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    marginLeft: '12px',\r\n    '& .title': {\r\n      width: '183px',\r\n    },\r\n    '& .subTitle': {\r\n      width: '100px',\r\n      marginTop: '12px',\r\n    },\r\n  },\r\n  previewRow: {\r\n    width: '100%',\r\n    height: '209px',\r\n    '& .preview': {\r\n      height: '100%',\r\n    },\r\n  },\r\n  footerRow: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    padding: '12px',\r\n    marginTop: '24px',\r\n    '& .description': {\r\n      width: '100%',\r\n    },\r\n    '& .adButton': {\r\n      marginTop: '12px',\r\n      width: 'fit-content',\r\n    },\r\n  },\r\n});\r\n\r\nconst AdvertiserResultShimmer = ({ classes }) => (\r\n  <div className={classes.cardWrapper} >\r\n    <Skeleton animation=\"wave\">\r\n      <div className={classes.headerRow}>\r\n        <SkeletonItem shape=\"circle\" size={36} />\r\n        <div className={classes.headerText}>\r\n          <SkeletonItem className=\"title\" shape=\"square\" size={12} />\r\n          <SkeletonItem className=\"subTitle\" shape=\"square\" size={12} />\r\n        </div>\r\n      </div>\r\n      <div className={classes.footerRow}>\r\n        <SkeletonItem className=\"description\" shape=\"square\" size={12} />\r\n        <Button className=\"adButton\" appearance=\"primary\" disabled disabledFocusable>\r\n          See all ads\r\n        </Button>\r\n      </div>\r\n    </Skeleton>\r\n  </div>\r\n);\r\n\r\nconst UnStyledAdvertiserResultLoadingEffect = ({ classes }) => {\r\n  const adResultShimmers = [...Array(12)].map((_, index) => (\r\n    // eslint-disable-next-line react/no-array-index-key\r\n    <AdvertiserResultShimmer key={index} classes={classes} />\r\n  ));\r\n\r\n  return (\r\n    <div className={classes.resultWrapper}>\r\n      { adResultShimmers }\r\n    </div>\r\n  );\r\n};\r\n\r\nexport const AdvertiserResultLoadingEffect = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledAdvertiserResultLoadingEffect);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Text, Image } from '@fluentui/react-components';\r\nimport { compose } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport ErrorImg from '../../assets/restricted.svg';\r\n\r\nconst getStyles = () => ({\r\n  errorWrapperOuter: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    justifyContent: 'center',\r\n  },\r\n  errorWrapperInner: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    justifyContent: 'center',\r\n    marginTop: '100px',\r\n    '& .first-row': {\r\n      marginTop: '24px',\r\n      fontWeight: '400',\r\n      fontSize: '24px',\r\n      lineHeight: '36px',\r\n      '& b': {\r\n        fontWeight: '600',\r\n      },\r\n    },\r\n    '& .second-row': {\r\n      marginTop: '8px',\r\n      fontWeight: '400',\r\n      fontSize: '16px',\r\n      lineHeight: '22px',\r\n    },\r\n  },\r\n});\r\n\r\nconst UnStyledErrorMessage500 = ({ classes }) => (\r\n  <div className={classes.errorWrapperOuter}>\r\n    <div className={classes.errorWrapperInner}>\r\n      <Image src={ErrorImg} height=\"200\" width=\"222\" />\r\n      <Text className=\"first-row\">Service use limits exceeded or service temporarily unavailable.</Text>\r\n      <Text className=\"second-row\">Please wait and try your request again in a few minutes.</Text>\r\n    </div>\r\n  </div>\r\n);\r\n\r\nUnStyledErrorMessage500.propTypes = {\r\n  classes: PropTypes.shape({\r\n    errorWrapperOuter: PropTypes.string.isRequired,\r\n    errorWrapperInner: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n};\r\n\r\nexport const ErrorMessage500 = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledErrorMessage500);\r\n","function capitalizeFirstLetter(string) {\r\n  return string.charAt(0).toUpperCase() + string.slice(1);\r\n}\r\n\r\nfunction buildGetAdvertisersQueryString({\r\n  top = 12,\r\n  skip = 0,\r\n  searchText = '',\r\n}) {\r\n  const params = new URLSearchParams({\r\n    top,\r\n    skip,\r\n    searchText,\r\n  });\r\n\r\n  return params.toString();\r\n}\r\n\r\nconst convertPercentageToNumber = (percentage) => {\r\n  const percentageNumber = Number(percentage.replace('%', ''));\r\n  return percentageNumber;\r\n};\r\n\r\nfunction buildGetAdsQueryString({\r\n  top = 12,\r\n  skip = 0,\r\n  startDate = '',\r\n  endDate = '',\r\n  countryCodeList = [],\r\n  advertiserId = '',\r\n  searchText = '',\r\n}) {\r\n  const params = new URLSearchParams();\r\n\r\n  params.append('top', top);\r\n  params.append('skip', skip);\r\n\r\n  if (startDate) {\r\n    params.append('startDate', `'${startDate}'`);\r\n  }\r\n\r\n  if (endDate) {\r\n    params.append('endDate', `'${endDate}'`);\r\n  }\r\n\r\n  if (countryCodeList.length > 0) {\r\n    params.append('countryCodes', `'${countryCodeList.join(',')}'`);\r\n  }\r\n\r\n  if (advertiserId) {\r\n    params.append('advertiserId', advertiserId);\r\n  }\r\n\r\n  if (searchText) {\r\n    params.append('searchText', searchText);\r\n  }\r\n\r\n  return params.toString();\r\n}\r\n\r\nexport {\r\n  capitalizeFirstLetter,\r\n  convertPercentageToNumber,\r\n  buildGetAdvertisersQueryString,\r\n  buildGetAdsQueryString,\r\n};\r\n","export * from './src/index';\r\nexport * from './src/utils/utils';\r\n","import { AdPlacementsGroupType } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nimport { imageExtensionTemplates } from './image-extension/index';\r\nimport { msanImageAdTemplates } from './msan-image-ad';\r\nimport { perfMaxTemplates } from './perf-max-ad';\r\nimport { searchImageAdTemplates } from './search-image-ad';\r\nimport { streamlinedSignupTemplates } from './streamlined-signup';\r\nimport { adLibraryTemplates } from './ad-library';\r\n\r\nexport const GroupTypeTemplatesMapping = {\r\n  [AdPlacementsGroupType.imageExtension]: imageExtensionTemplates,\r\n  [AdPlacementsGroupType.msanImageAd]: msanImageAdTemplates,\r\n  [AdPlacementsGroupType.perfMax]: perfMaxTemplates,\r\n  [AdPlacementsGroupType.searchImageAd]: searchImageAdTemplates,\r\n  [AdPlacementsGroupType.streamlinedSignup]: streamlinedSignupTemplates,\r\n  [AdPlacementsGroupType.adLibrary]: adLibraryTemplates,\r\n};\r\n","import image191100AudienceWide from './image-191-100-audience-wide';\r\nimport image178100EdgeSingle from './image-178-100-edge-single';\r\nimport image178100BingDesktop from './image-178-100-bing-desktop';\r\nimport image172100EdgeMedium from './image-172-100-edge-medium';\r\nimport image169100MSNSingle from './image-169-100-msn-single';\r\nimport image155100MSNMedium from './image-155-100-msn-medium';\r\nimport image150100MSNInArticle from './image-150-100-msn-in-article';\r\nimport image133100MSNSmall from './image-133-100-msn-small';\r\nimport image11AudienceSquare from './image-1-1-audience-square';\r\nimport image093100MSNDouble from './image-093-100-msn-double';\r\n\r\n\r\nexport const imageExtensionTemplates = [\r\n  image191100AudienceWide,\r\n  image178100EdgeSingle,\r\n  image178100BingDesktop,\r\n  image172100EdgeMedium,\r\n  image169100MSNSingle,\r\n  image155100MSNMedium,\r\n  image150100MSNInArticle,\r\n  image133100MSNSmall,\r\n  image11AudienceSquare,\r\n  image093100MSNDouble,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceWide191100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 200,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Wide Image'),\r\n    stringKey: _TL_('1.91 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showAdditionalDisclaimer: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 18,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceWide191100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst edgeSingle178100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.78,\r\n  type: 'Image178x100',\r\n  associationType: 'ImageMedia178X100',\r\n  imagePreviewHeight: 350,\r\n  minimumRequirements: 0,\r\n  minSize: [624, 350],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Edge single carousel'),\r\n    stringKey: _TL_('1.78 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showGradient: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      height: 73,\r\n      fontSize: 28,\r\n      lineHeight: '33.99px',\r\n      width: 590,\r\n      marginBottom: 20,\r\n      '& .multi-line-processed-text': {\r\n        position: 'absolute',\r\n        bottom: 30,\r\n      },\r\n    },\r\n    previewContent: {\r\n      '&:hover': {\r\n        '& .short-headline': {\r\n          textDecoration: 'underline',\r\n        },\r\n      },\r\n      width: 624,\r\n      height: 350,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default edgeSingle178100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst bingDesktop178100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.78,\r\n  type: 'BingSingleImage',\r\n  associationType: 'ImageMedia178X100',\r\n  imagePreviewHeight: 45,\r\n  minimumRequirements: 0,\r\n  minSize: [624, 350],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing desktop single-image extension'),\r\n    stringKey: _TL_('1.78 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showImage: true,\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 608,\r\n      height: 110,\r\n      padding: 3,\r\n    },\r\n    imageContainer: {\r\n      float: 'right',\r\n      transform: 'translate(20px,20px)',\r\n      width: '100px',\r\n      height: '75px',\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      margin: '4px 8px 0px 8px',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '20px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktop178100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst edgeMedium172100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.72,\r\n  type: 'Image172x100',\r\n  associationType: 'ImageMedia172X100',\r\n  imagePreviewHeight: 174,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 174],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Edge medium headline'),\r\n    stringKey: _TL_('1.72 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showLongHeadline: true,\r\n    showGradient: true,\r\n    showMultipleLineLongHeadline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    longHeadline: {\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    previewContent: {\r\n      height: 250,\r\n      backgroundColor: 'rgb(46, 46, 46)',\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, rgb(46, 46, 46) 100%)',\r\n        marginTop: -279,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default edgeMedium172100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnSingle169100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.69,\r\n  type: 'Image169x100',\r\n  associationType: 'ImageMedia169X100',\r\n  imagePreviewHeight: 368,\r\n  minimumRequirements: 0,\r\n  minSize: [622, 368],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN single carousel'),\r\n    stringKey: _TL_('1.69 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showLongHeadline: true,\r\n    showGradient: true,\r\n    showMultipleLineLongHeadline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    longHeadline: {\r\n      color: 'white',\r\n      height: 80,\r\n      width: 575,\r\n      fontSize: 28,\r\n      lineHeight: 1.214,\r\n    },\r\n    previewContent: {\r\n      width: 622,\r\n      height: 368,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnSingle169100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnMedium155100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.55,\r\n  type: 'Image155x100',\r\n  associationType: 'ImageMedia155X100',\r\n  imagePreviewHeight: 194,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 194],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN medium headline'),\r\n    stringKey: _TL_('1.55 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showLongHeadline: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    textContainer: {\r\n      padding: '15px 13px',\r\n      color: '#333',\r\n      height: 98,\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnMedium155100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnInArticle150100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.50,\r\n  type: 'Image150x100',\r\n  associationType: 'ImageMedia15X10',\r\n  imagePreviewHeight: 200,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 200],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN in-article ad'),\r\n    stringKey: _TL_('1.5 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 15,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnInArticle150100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnSmall133100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.33,\r\n  type: 'Image133x100',\r\n  associationType: 'ImageMedia133X100',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [100, 75],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN small headline'),\r\n    stringKey: _TL_('1.33 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 100,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 52,\r\n      overflow: 'hidden',\r\n      margin: '4px 8px 0 8px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnSmall133100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceSquare11Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 300],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Audience Network square image'),\r\n    stringKey: _TL_('1.33 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 80,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 45,\r\n      overflow: 'hidden',\r\n      margin: '8px 8px 0 8px',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceSquare11Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnDouble094100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 0.93,\r\n  type: 'Image93x100',\r\n  associationType: 'ImageMedia93X100',\r\n  imagePreviewHeight: 333,\r\n  minimumRequirements: 0,\r\n  minSize: [311, 333],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN double carousel'),\r\n    stringKey: _TL_('0.93 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n    showGradient: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      height: 54,\r\n      fontSize: 20,\r\n      lineHeight: 1.3,\r\n      width: 280,\r\n      paddingBottom: 5,\r\n    },\r\n    previewContent: {\r\n      '&:hover': {\r\n        '& .short-headline': {\r\n          textDecoration: 'underline',\r\n        },\r\n      },\r\n      width: 310,\r\n      height: 333,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnDouble094100Raw;\r\n","import image191100AudienceWide from './image-191-100-audience-wide';\r\nimport image178100EdgeSingle from './image-178-100-edge-single';\r\nimport image150100MSNInArticle from './image-150-100-msn-in-article';\r\nimport image133100MSNSmall from './image-133-100-msn-small';\r\nimport image11AudienceSquare from './image-1-1-audience-square';\r\nimport textOutlookWeb from './text-outlook-web';\r\nimport textOutlookMobile from './text-outlook-mobile';\r\n\r\nexport const msanImageAdTemplates = [\r\n  image191100AudienceWide,\r\n  image178100EdgeSingle,\r\n  image150100MSNInArticle,\r\n  image133100MSNSmall,\r\n  image11AudienceSquare,\r\n  textOutlookWeb,\r\n  textOutlookMobile,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceWide191100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 200,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Wide Image'),\r\n    stringKey: _TL_('1.91 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showAdditionalDisclaimer: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      width: 382,\r\n      height: 360,\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 18,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceWide191100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst edgeSingle178100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.78,\r\n  type: 'Image178x100',\r\n  associationType: 'ImageMedia178X100',\r\n  imagePreviewHeight: 350,\r\n  minimumRequirements: 0,\r\n  minSize: [624, 350],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft edge single carousel'),\r\n    stringKey: _TL_('1.78 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showGradient: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      height: 73,\r\n      fontSize: 28,\r\n      lineHeight: '33.99px',\r\n      width: 590,\r\n      marginBottom: 20,\r\n      '& .multi-line-processed-text': {\r\n        position: 'absolute',\r\n        bottom: 30,\r\n      },\r\n    },\r\n    previewContent: {\r\n      '&:hover': {\r\n        '& .short-headline': {\r\n          textDecoration: 'underline',\r\n        },\r\n      },\r\n      width: 624,\r\n      height: 350,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default edgeSingle178100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnInArticle150100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.50,\r\n  type: 'Image150x100',\r\n  associationType: 'ImageMedia15X10',\r\n  imagePreviewHeight: 200,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 200],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN in-article ad'),\r\n    stringKey: _TL_('1.5 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      width: 300,\r\n      height: 360,\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 15,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnInArticle150100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnSmall133100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.33,\r\n  type: 'Image133x100',\r\n  associationType: 'ImageMedia133X100',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [100, 75],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN small headline'),\r\n    stringKey: _TL_('1.33 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 100,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 52,\r\n      overflow: 'hidden',\r\n      margin: '4px 8px 0 8px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnSmall133100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceSquare11Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 300],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Square Image'),\r\n    stringKey: _TL_('1 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 80,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 45,\r\n      overflow: 'hidden',\r\n      margin: '8px 8px 0 8px',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceSquare11Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst textOutlookWeb = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'outlook_text_web',\r\n  type: 'TextOutlookWeb',\r\n  associationType: 'TextOutlookWeb',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Web desktop outlook'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showBusinessName: true,\r\n    showBusinessNameFirst: true,\r\n    showAdsLabel: true,\r\n    showPreHeadlineDivider: true,\r\n    showPostHeadlineDivider: true,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '1px solid #C8C8C8',\r\n      boxShadow: 'none',\r\n      minWidth: 500,\r\n      borderRadius: 0,\r\n    },\r\n    adsLabel: {\r\n      backgroundColor: 'blue',\r\n      borderRadius: 4,\r\n      height: 13,\r\n      verticalAlign: 'middle',\r\n      padding: '0 4px',\r\n      width: 'auto',\r\n      display: 'inline-block',\r\n      position: 'static',\r\n      margin: '0 4px 0 0',\r\n      fontSize: 10,\r\n      color: 'white',\r\n    },\r\n    businessNameWithAds: {\r\n      display: 'inline-block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      marginTop: 0,\r\n      marginRight: 40,\r\n      verticalAlign: 'middle',\r\n    },\r\n    imageContainer: {\r\n      display: 'inline-block',\r\n    },\r\n    textContainer: {\r\n      display: 'inline-block',\r\n    },\r\n    preHeadlineDivider: {\r\n      border: 'solid gray',\r\n      display: 'inline-block',\r\n      padding: '2px',\r\n      transform: 'rotate(45deg) translateY(-3px)',\r\n      borderWidth: '0 1.5px 1.5px 0',\r\n      marginRight: 10,\r\n    },\r\n    shortHeadline: {\r\n      display: 'inline-block',\r\n      color: 'blue',\r\n      padding: 4,\r\n    },\r\n    postHeadlineDivider: {\r\n      display: 'inline-block',\r\n      padding: 4,\r\n      color: 'gray',\r\n      '&:after': {\r\n        content: '\"*\"',\r\n      },\r\n    },\r\n    descriptionParent: {\r\n      display: 'inline-block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      padding: 4,\r\n    },\r\n    description: {\r\n      display: 'inline-block',\r\n    },\r\n  },\r\n};\r\n\r\nexport default textOutlookWeb;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst textOutlookMobile = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'outlook_text_mobile',\r\n  type: 'TextOutlookMobile',\r\n  associationType: 'TextOutlookMobile',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Mobile web Outlook'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showBusinessName: true,\r\n    showBusinessNameFirst: true,\r\n    showAdsLabelWithBusinessName: true,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '1px solid #C8C8C8',\r\n      boxShadow: 'none',\r\n      width: 340,\r\n      height: 80,\r\n      padding: '5px 10px 5px 15px',\r\n    },\r\n    businessNameWithAds: {\r\n      display: 'block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      fontSize: 20,\r\n      maxWidth: 300,\r\n      verticalAlign: 'middle',\r\n      lineHeight: '30px',\r\n      marginTop: 0,\r\n      '& .adslabel': {\r\n        backgroundColor: 'blue',\r\n        borderRadius: 4,\r\n        height: 15,\r\n        verticalAlign: 'middle',\r\n        padding: '0 4px',\r\n        width: 'auto',\r\n        display: 'inline-block',\r\n        position: 'static',\r\n        margin: '0 4px 0 0',\r\n        fontSize: 10,\r\n        color: 'white',\r\n        lineHeight: '15px',\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      display: 'block',\r\n      fontSize: 13,\r\n      marginTop: 2,\r\n      lineHeight: '19.5px',\r\n    },\r\n    descriptionParent: {\r\n      display: 'block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      fontSize: 13,\r\n      marginTop: 2,\r\n      lineHeight: '19.5px',\r\n    },\r\n    description: {\r\n      display: 'inline-block',\r\n    },\r\n  },\r\n};\r\n\r\nexport default textOutlookMobile;\r\n","import image178100EdgeSingle from './image-178-100-edge-single';\r\nimport image191100AudienceWide from './image-191-100-audience-wide';\r\nimport image11AudienceSquare from './image-1-1-audience-square';\r\nimport image11MMASquare from './image-1-1-mma-square';\r\nimport image12MMAVertical from './image-1-2-mma-vertical';\r\nimport image41MMAWide from './image-4-1-mma-wide';\r\nimport image133100MSNSmall from './image-133-100-msn-small';\r\nimport image150100MSNInArticle from './image-150-100-msn-in-article';\r\nimport image191100MMALandscape from './image-191-100-mma-landscape';\r\nimport textBing from './text-bing';\r\nimport textBingDesktop from './text-bing-desktop';\r\nimport textBingMobile from './text-bing-mobile';\r\nimport textOutlookWeb from './text-outlook-web';\r\nimport textOutlookMobile from './text-outlook-mobile';\r\n\r\nexport const perfMaxTemplates = [\r\n  image191100AudienceWide,\r\n  image178100EdgeSingle,\r\n  image150100MSNInArticle,\r\n  image11AudienceSquare,\r\n  image133100MSNSmall,\r\n  image41MMAWide,\r\n  image191100MMALandscape,\r\n  image11MMASquare,\r\n  image12MMAVertical,\r\n  textBing,\r\n  textBingDesktop,\r\n  textBingMobile,\r\n  textOutlookMobile,\r\n  textOutlookWeb,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst edgeSingle178100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.78,\r\n  key: 'edge_178x100',\r\n  type: 'Image178x100',\r\n  associationType: 'ImageMedia178X100',\r\n  imagePreviewHeight: 350,\r\n  minimumRequirements: 0,\r\n  minSize: [624, 350],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Edge single carousel'),\r\n    stringKey: _TL_('1.78:1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showGradient: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      height: 73,\r\n      fontSize: 28,\r\n      lineHeight: '33.99px',\r\n      width: 590,\r\n      marginBottom: 20,\r\n      '& .multi-line-processed-text': {\r\n        position: 'absolute',\r\n        bottom: 30,\r\n      },\r\n    },\r\n    previewContent: {\r\n      '&:hover': {\r\n        '& .short-headline': {\r\n          textDecoration: 'underline',\r\n        },\r\n      },\r\n      width: 624,\r\n      height: 350,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default edgeSingle178100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceWide191100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'msan_191x100',\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 200,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Wide Image'),\r\n    stringKey: _TL_('1.91:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showAdditionalDisclaimer: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n      maxWidth: 330,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 18,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceWide191100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceSquare11Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'msan_1x1',\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 300],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Audience Network square image'),\r\n    stringKey: _TL_('1:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 80,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 45,\r\n      overflow: 'hidden',\r\n      margin: '8px 8px 0 8px',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceSquare11Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image11MMASquareRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'mma_1x1',\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 400,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [470, 470],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Square image'),\r\n    stringKey: _TL_('1:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showGradient: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    description: {\r\n      color: 'white',\r\n      bottom: 8,\r\n      fontSize: 14,\r\n      position: 'relative',\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      height: 400,\r\n      width: 400,\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      bottom: 20,\r\n      position: 'relative',\r\n      fontSize: 24,\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      bottom: 18,\r\n      position: 'relative',\r\n    },\r\n    textContainer: {\r\n      left: 0,\r\n      position: 'absolute',\r\n      lineHeight: 1.1,\r\n      paddingLeft: 32,\r\n      bottom: 25,\r\n      fontSize: 10,\r\n    },\r\n    gradient: {\r\n      backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n      width: '100%',\r\n      height: 400,\r\n      display: 'block',\r\n      position: 'absolute',\r\n    },\r\n    actionButton: {\r\n      padding: '6px 16px 8px 16px',\r\n      position: 'relative',\r\n    },\r\n  },\r\n};\r\n\r\nexport default image11MMASquareRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image12MmaVerticalRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'mma_1x2',\r\n  aspectRatio: 0.5,\r\n  type: 'Image1x2',\r\n  associationType: 'ImageMedia1x2',\r\n  imagePreviewHeight: 400,\r\n  isRequired: true,\r\n  minimumRequirements: 0,\r\n  minSize: [470, 940],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Vertical image'),\r\n    stringKey: _TL_('1:2'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      backgroundColor: 'white',\r\n    },\r\n    gradient: {\r\n      backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n      width: '100%',\r\n      height: 400,\r\n      display: 'block',\r\n      position: 'absolute',\r\n    },\r\n    description: {\r\n      color: 'white',\r\n      bottom: 5,\r\n      position: 'relative',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      height: 400,\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      position: 'relative',\r\n      color: 'white',\r\n      bottom: 20,\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      bottom: 15,\r\n      position: 'relative',\r\n    },\r\n    actionButton: {\r\n      padding: '5px 16px 6px 16px',\r\n      position: 'relative',\r\n      top: 5,\r\n      fontSize: 14,\r\n      borderRadius: 3,\r\n    },\r\n    textContainer: {\r\n      left: 0,\r\n      position: 'absolute',\r\n      lineHeight: 1.1,\r\n      paddingLeft: 32,\r\n      bottom: 25,\r\n      fontSize: 10,\r\n    },\r\n  },\r\n};\r\n\r\nexport default image12MmaVerticalRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image41MmaWideRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'mma_4x1',\r\n  aspectRatio: 4,\r\n  type: 'Image4x1',\r\n  associationType: 'ImageMedia4x1',\r\n  imagePreviewHeight: 152,\r\n  isRequired: true,\r\n  minimumRequirements: 0,\r\n  minSize: [608, 152],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Wide image'),\r\n    stringKey: _TL_('4:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showGradient: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      right: '0%',\r\n      backgroundColor: 'white',\r\n    },\r\n    description: {\r\n      color: 'white',\r\n      bottom: 5,\r\n      position: 'relative',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      lineHeight: '16px',\r\n      position: 'relative',\r\n      color: 'white',\r\n      paddingBottom: 5,\r\n      fontWeight: 200,\r\n      bottom: 15,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 0,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n      paddingLeft: 32,\r\n    },\r\n    finalUrl: {\r\n      color: 'white',\r\n      bottom: 10,\r\n      position: 'relative',\r\n      fontSize: 10,\r\n    },\r\n    actionButton: {\r\n      color: '#666',\r\n      opacity: '70%',\r\n      padding: '7px 16px 8px 16px',\r\n      position: 'relative',\r\n      backgroundColor: '#EEE',\r\n    },\r\n  },\r\n};\r\n\r\nexport default image41MmaWideRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnSmall133100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'msan_133x100',\r\n  aspectRatio: 1.33,\r\n  type: 'Image133x100',\r\n  associationType: 'ImageMedia133X100',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [100, 75],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN small headline'),\r\n    stringKey: _TL_('1.33:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 100,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 52,\r\n      overflow: 'hidden',\r\n      margin: '4px 8px 0 8px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnSmall133100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnInArticle150100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'msan_150x100',\r\n  aspectRatio: 1.50,\r\n  type: 'Image150x100',\r\n  associationType: 'ImageMedia15X10',\r\n  imagePreviewHeight: 200,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 200],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN in-article ad'),\r\n    stringKey: _TL_('1.5:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showShortHeadlineMultiline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showMultipleDescription: true,\r\n    showUrlMultiline: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n      maxWidth: 250,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 15,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnInArticle150100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image191100MmaLandscapeRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'mma_191x100',\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 244,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Landscape Image Multimedia Ad'),\r\n    stringKey: _TL_('1.91:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      backgroundColor: 'white',\r\n    },\r\n    description: {\r\n      color: 'black',\r\n      maxWidth: 250,\r\n      wordWrap: 'break-word',\r\n      paddingRight: 16,\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      fontWeight: 200,\r\n      marginBottom: 8,\r\n      paddingBottom: 5,\r\n      color: 'black',\r\n    },\r\n    textContainer: {\r\n      padding: '8px 20px 20px 20px',\r\n      maxWidth: '-webkit-fill-available',\r\n      width: 466,\r\n      lineHeight: 1.1,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      marginBottom: 8,\r\n    },\r\n    actionButton: {\r\n      right: 15,\r\n      bottom: 15,\r\n      padding: '6px 16px 8px 16px',\r\n      fontSize: 16,\r\n      fontWeight: 'bold',\r\n      borderRadius: 32,\r\n    },\r\n  },\r\n};\r\n\r\nexport default image191100MmaLandscapeRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst bingDesktopTextRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'bing_text',\r\n  type: 'BingText',\r\n  associationType: 'BingText',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing search ad'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showAdsLabelInlineWithDescription: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: 'none',\r\n      boxShadow: 'none',\r\n      width: 608,\r\n      height: 110,\r\n      padding: '8px 16px',\r\n    },\r\n    adsLabel: {\r\n      border: '1px solid #ddd',\r\n      padding: '0 2px',\r\n      fontSize: 11,\r\n      fontWeight: 600,\r\n      lineHeight: 1,\r\n      borderRadius: 6,\r\n      margin: '0 4px 0 0',\r\n      display: 'inline',\r\n      color: '#767676',\r\n      opacity: '100%',\r\n      position: 'static',\r\n      maxHeight: 16,\r\n    },\r\n    textContainer: {\r\n      margin: '4px 8px 0px 8px',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '20px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      display: 'inline-block',\r\n      fontSize: '13px',\r\n      flexGrow: 1,\r\n    },\r\n    descriptionParent: {\r\n      display: 'flex',\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktopTextRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nimport { bingDesktopHeaderImage } from './media/bing-desktop-header';\r\n\r\nconst bingDesktopTextRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'bing_text_desktop',\r\n  type: 'BingTextDesktop',\r\n  associationType: 'BingTextDesktop',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing search ad'),\r\n    stringKey: _TL_(''),\r\n    headerImageAlt: _TL_('Header Image'),\r\n  },\r\n  previewSettings: {\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showAdsLabelInlineWithDescription: true,\r\n    showHeaderImage: true,\r\n    headerImage: bingDesktopHeaderImage,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: 'none',\r\n      boxShadow: 'none',\r\n      width: 530,\r\n      height: 110,\r\n      padding: '8px 16px',\r\n    },\r\n    adsLabel: {\r\n      border: '1px solid #ddd',\r\n      padding: '0 2px',\r\n      fontSize: 11,\r\n      fontWeight: 600,\r\n      lineHeight: 1,\r\n      borderRadius: 6,\r\n      margin: '0 4px 0 0',\r\n      display: 'inline',\r\n      color: '#767676',\r\n      opacity: '100%',\r\n      position: 'static',\r\n      maxHeight: 16,\r\n    },\r\n    textContainer: {\r\n      margin: '4px 8px 0px 8px',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '20px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n      display: 'inline-block',\r\n      flexGrow: 1,\r\n    },\r\n    descriptionParent: {\r\n      display: 'flex',\r\n    },\r\n    headerImage: {\r\n      height: 100,\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktopTextRaw;\r\n","export const bingDesktopHeaderImage = 'data:image/png;base64,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';\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst bingDesktopTextRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'bing_text_mobile',\r\n  type: 'BingTextMobile',\r\n  associationType: 'BingTextMobile',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing search ad'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showAdsLabelInlineWithDescription: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    placementContainer: {\r\n      border: '5px solid #605e5c',\r\n      position: 'relative',\r\n      borderBottom: 'none',\r\n      borderRadius: '40px 40px 0 0',\r\n      width: 700,\r\n    },\r\n    adsLabel: {\r\n      border: '1px solid #ddd',\r\n      padding: '0 2px',\r\n      fontSize: 11,\r\n      fontWeight: 600,\r\n      lineHeight: 1,\r\n      borderRadius: 6,\r\n      margin: '0 4px 0 0',\r\n      display: 'inline',\r\n      color: '#767676',\r\n      opacity: '100%',\r\n      position: 'static',\r\n      maxHeight: 16,\r\n    },\r\n    cardParent: {\r\n      margin: '45px 15px 0 15px',\r\n      borderBottom: 'none',\r\n      borderRadius: 0,\r\n      paddingBottom: 1,\r\n      '&:before': {\r\n        top: 20,\r\n        left: '50%',\r\n        border: '5px solid #605e5c',\r\n        content: '\"\"',\r\n        position: 'absolute',\r\n        borderRadius: 5,\r\n      },\r\n    },\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 608,\r\n      height: 110,\r\n      padding: '8px 16px',\r\n    },\r\n    textContainer: {\r\n      margin: '4px 8px 0px 8px',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '20px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n      display: 'inline-block',\r\n      flexGrow: 1,\r\n    },\r\n    descriptionParent: {\r\n      display: 'flex',\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktopTextRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst textOutlookWeb = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'outlook_text_web',\r\n  type: 'TextOutlookWeb',\r\n  associationType: 'TextOutlookWeb',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Web desktop outlook'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showBusinessName: true,\r\n    showBusinessNameFirst: true,\r\n    showAdsLabel: true,\r\n    showPreHeadlineDivider: true,\r\n    showPostHeadlineDivider: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '1px solid #C8C8C8',\r\n      boxShadow: 'none',\r\n      minWidth: 500,\r\n      borderRadius: 0,\r\n    },\r\n    adsLabel: {\r\n      backgroundColor: 'blue',\r\n      borderRadius: 4,\r\n      height: 13,\r\n      verticalAlign: 'middle',\r\n      padding: '0 4px',\r\n      width: 'auto',\r\n      display: 'inline-block',\r\n      position: 'static',\r\n      margin: '0 4px 0 0',\r\n      fontSize: 10,\r\n      color: 'white',\r\n    },\r\n    businessNameWithAds: {\r\n      display: 'inline-block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      marginTop: 0,\r\n      marginRight: 40,\r\n      verticalAlign: 'middle',\r\n    },\r\n    imageContainer: {\r\n      display: 'inline-block',\r\n    },\r\n    textContainer: {\r\n      display: 'inline-block',\r\n    },\r\n    preHeadlineDivider: {\r\n      border: 'solid gray',\r\n      display: 'inline-block',\r\n      padding: '2px',\r\n      transform: 'rotate(45deg) translateY(-3px)',\r\n      borderWidth: '0 1.5px 1.5px 0',\r\n      marginRight: 10,\r\n    },\r\n    shortHeadline: {\r\n      display: 'inline-block',\r\n      color: 'blue',\r\n      padding: 4,\r\n    },\r\n    postHeadlineDivider: {\r\n      display: 'inline-block',\r\n      padding: 4,\r\n      color: 'gray',\r\n      '&:after': {\r\n        content: '\"*\"',\r\n      },\r\n    },\r\n    descriptionParent: {\r\n      display: 'inline-block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      padding: 4,\r\n    },\r\n    description: {\r\n      display: 'inline-block',\r\n    },\r\n  },\r\n};\r\n\r\nexport default textOutlookWeb;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst textOutlookMobile = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'outlook_text_mobile',\r\n  type: 'TextOutlookMobile',\r\n  associationType: 'TextOutlookMobile',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Mobile web Outlook'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showBusinessName: true,\r\n    showBusinessNameFirst: true,\r\n    showAdsLabelWithBusinessName: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '1px solid #C8C8C8',\r\n      boxShadow: 'none',\r\n      width: 340,\r\n      height: 80,\r\n      padding: '5px 10px 5px 15px',\r\n    },\r\n    businessNameWithAds: {\r\n      display: 'block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      fontSize: 20,\r\n      maxWidth: 300,\r\n      verticalAlign: 'middle',\r\n      lineHeight: '30px',\r\n      marginTop: 0,\r\n      '& .adslabel': {\r\n        backgroundColor: 'blue',\r\n        borderRadius: 4,\r\n        height: 15,\r\n        verticalAlign: 'middle',\r\n        padding: '0 4px',\r\n        width: 'auto',\r\n        display: 'inline-block',\r\n        position: 'static',\r\n        margin: '0 4px 0 0',\r\n        fontSize: 10,\r\n        color: 'white',\r\n        lineHeight: '15px',\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      display: 'block',\r\n      fontSize: 13,\r\n      marginTop: 2,\r\n      lineHeight: '19.5px',\r\n    },\r\n    descriptionParent: {\r\n      display: 'block',\r\n      color: 'black',\r\n      textDecoration: 'none',\r\n      fontSize: 13,\r\n      marginTop: 2,\r\n      lineHeight: '19.5px',\r\n    },\r\n    description: {\r\n      display: 'inline-block',\r\n    },\r\n  },\r\n};\r\n\r\nexport default textOutlookMobile;\r\n","import image191100MmaLandscape from './image-191-100-mma-landscape';\r\nimport image11MmaSquare from './image-1-1-mma-square';\r\nimport image41MmaWide from './image-4-1-mma-wide';\r\nimport image12MmaVertical from './image-1-2-mma-vertical';\r\n\r\nexport const searchImageAdTemplates = [\r\n  image41MmaWide,\r\n  image191100MmaLandscape,\r\n  image11MmaSquare,\r\n  image12MmaVertical,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image191100MmaLandscapeRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 244,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Landscape Image Multimedia Ad'),\r\n    stringKey: _TL_('1.91 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      backgroundColor: 'white',\r\n    },\r\n    description: {\r\n      color: 'black',\r\n      maxWidth: 250,\r\n      wordWrap: 'break-word',\r\n      paddingRight: 16,\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      borderRadius: 0,\r\n      boxShadow: 'none',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      fontWeight: 200,\r\n      marginBottom: 8,\r\n      paddingBottom: 5,\r\n      color: 'black',\r\n    },\r\n    textContainer: {\r\n      padding: '8px 20px 20px 20px',\r\n      maxWidth: '-webkit-fill-available',\r\n      width: 466,\r\n      lineHeight: 1.1,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      marginBottom: 8,\r\n    },\r\n    actionButton: {\r\n      right: 15,\r\n      bottom: 15,\r\n      padding: '6px 16px 8px 16px',\r\n      fontSize: 16,\r\n      fontWeight: 'bold',\r\n      borderRadius: 32,\r\n    },\r\n  },\r\n};\r\n\r\nexport default image191100MmaLandscapeRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image11MMASquareRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 400,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [470, 470],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Square Image Multimedia Ad'),\r\n    stringKey: _TL_('1 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showImageGradient: true,\r\n  },\r\n  styleOverrides: {\r\n    description: {\r\n      color: 'white',\r\n      bottom: 8,\r\n      fontSize: 14,\r\n      position: 'relative',\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      height: 400,\r\n      width: 400,\r\n      borderRadius: 0,\r\n      boxShadow: 'none',\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      bottom: 20,\r\n      position: 'relative',\r\n      fontSize: 24,\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      bottom: 18,\r\n      position: 'relative',\r\n    },\r\n    textContainer: {\r\n      left: 0,\r\n      position: 'absolute',\r\n      lineHeight: 1.1,\r\n      paddingLeft: 32,\r\n      bottom: 25,\r\n      fontSize: 10,\r\n    },\r\n    imageGradient: {\r\n      backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n      width: '100%',\r\n      height: 400,\r\n      display: 'block',\r\n      position: 'absolute',\r\n    },\r\n    actionButton: {\r\n      padding: '6px 16px 8px 16px',\r\n      position: 'relative',\r\n    },\r\n  },\r\n};\r\n\r\nexport default image11MMASquareRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image41MmaWideRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 4,\r\n  type: 'Image4x1',\r\n  associationType: 'ImageMedia4x1',\r\n  imagePreviewHeight: 152,\r\n  isRequired: false,\r\n  minimumRequirements: 0,\r\n  minSize: [608, 152],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Wide Image Multimedia Ad'),\r\n    stringKey: _TL_('4 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n    showImageGradient: true,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      right: '0%',\r\n      backgroundColor: 'white',\r\n    },\r\n    description: {\r\n      color: 'white',\r\n      bottom: 5,\r\n      position: 'relative',\r\n      fontSize: 14,\r\n    },\r\n    imageGradient: {\r\n      backgroundImage: 'linear-gradient(to left, transparent 0, black 100%)',\r\n      width: '100%',\r\n      height: 152,\r\n      display: 'block',\r\n      position: 'absolute',\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      borderRadius: 0,\r\n      boxShadow: 'none',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      lineHeight: '16px',\r\n      position: 'relative',\r\n      color: 'white',\r\n      paddingBottom: 5,\r\n      fontWeight: 200,\r\n      bottom: 15,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 0,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n      paddingLeft: 32,\r\n    },\r\n    finalUrl: {\r\n      color: 'white',\r\n      bottom: 10,\r\n      position: 'relative',\r\n      fontSize: 10,\r\n    },\r\n    actionButton: {\r\n      color: '#666',\r\n      opacity: '70%',\r\n      padding: '7px 16px 8px 16px',\r\n      position: 'relative',\r\n      backgroundColor: '#EEE',\r\n    },\r\n  },\r\n};\r\n\r\nexport default image41MmaWideRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image12MmaVerticalRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 0.5,\r\n  type: 'Image1x2',\r\n  associationType: 'ImageMedia1x2',\r\n  imagePreviewHeight: 400,\r\n  isRequired: false,\r\n  minimumRequirements: 0,\r\n  minSize: [470, 940],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Vertical Image Multimedia Ad'),\r\n    stringKey: _TL_('1 : 2'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: true,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: true,\r\n    showAction: true,\r\n    showUrl: true,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      backgroundColor: 'white',\r\n    },\r\n    gradient: {\r\n      backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n      width: '100%',\r\n      height: 400,\r\n      display: 'block',\r\n      position: 'absolute',\r\n    },\r\n    description: {\r\n      color: 'white',\r\n      bottom: 5,\r\n      position: 'relative',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      height: 400,\r\n      borderRadius: 0,\r\n      boxShadow: 'none',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 24,\r\n      position: 'relative',\r\n      color: 'white',\r\n      bottom: 20,\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 10,\r\n      bottom: 15,\r\n      position: 'relative',\r\n    },\r\n    actionButton: {\r\n      padding: '5px 16px 6px 16px',\r\n      position: 'relative',\r\n      top: 5,\r\n      fontSize: 14,\r\n      borderRadius: 3,\r\n    },\r\n    textContainer: {\r\n      left: 0,\r\n      position: 'absolute',\r\n      lineHeight: 1.1,\r\n      paddingLeft: 32,\r\n      bottom: 25,\r\n      fontSize: 10,\r\n    },\r\n  },\r\n};\r\n\r\nexport default image12MmaVerticalRaw;\r\n","import textBing from './text-bing';\r\nimport image191100AudienceWide from './image-191-100-audience-wide';\r\nimport image178100EdgeSingle from './image-178-100-edge-single';\r\nimport image150100MSNInArticle from './image-150-100-msn-in-article';\r\nimport image133100MSNSmall from './image-133-100-msn-small';\r\nimport image11AudienceSquare from './image-1-1-audience-square';\r\nimport social11Facebook from './social-1-1-facebook';\r\n\r\nexport const streamlinedSignupTemplates = [\r\n  textBing,\r\n  image191100AudienceWide,\r\n  image178100EdgeSingle,\r\n  image150100MSNInArticle,\r\n  image133100MSNSmall,\r\n  image11AudienceSquare,\r\n  social11Facebook,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst bingDesktopTextRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'bing_text',\r\n  type: 'BingText',\r\n  associationType: 'BingText',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing search ad'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showAdsLabelInlineWithDescription: true,\r\n    showPreviewTypeString: false,\r\n    showPhoneAndAddressDecorator: true,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      width: 380,\r\n      padding: 16,\r\n    },\r\n    adsLabel: {\r\n      border: '1px solid #ddd',\r\n      padding: '0 2px',\r\n      fontSize: 11,\r\n      fontWeight: 600,\r\n      lineHeight: 1,\r\n      borderRadius: 6,\r\n      margin: '0 4px 0 0',\r\n      display: 'inline',\r\n      color: '#767676',\r\n      opacity: '100%',\r\n      position: 'static',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '20px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n      color: '#001BA0',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      display: 'inline-block',\r\n      fontSize: '13px',\r\n      flexGrow: 1,\r\n    },\r\n    descriptionParent: {\r\n      display: 'flex',\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktopTextRaw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceWide191100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 200,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Wide Image'),\r\n    stringKey: _TL_('1.91 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showShortHeadlineMultiline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      width: 382,\r\n      height: 360,\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 18,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceWide191100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst edgeSingle178100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.78,\r\n  type: 'Image178x100',\r\n  associationType: 'ImageMedia178X100',\r\n  imagePreviewHeight: 350,\r\n  minimumRequirements: 0,\r\n  minSize: [624, 350],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft edge single carousel'),\r\n    stringKey: _TL_('1.78 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showGradient: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      '& .business-name': {\r\n        fontSize: 11,\r\n        lineHeight: '1.364',\r\n        overflow: 'hidden',\r\n        textOverflow: 'ellipsis',\r\n      },\r\n      '& .adslabel': {\r\n        fontSize: 10,\r\n        lineHeight: '1.364',\r\n        margin: '0 5px 0 0',\r\n        background: 'transparent',\r\n        borderRadius: 4,\r\n        color: '#fff',\r\n        fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n        fontWeight: 400,\r\n        padding: '.8px 4px',\r\n        border: '.5px solid hsla(0,0%,100%,.3)',\r\n        opacity: 0.7,\r\n      },\r\n    },\r\n    shortHeadline: {\r\n      color: 'white',\r\n      height: 73,\r\n      fontSize: 28,\r\n      lineHeight: '33.99px',\r\n      width: 590,\r\n      marginBottom: 20,\r\n      '& .multi-line-processed-text': {\r\n        position: 'absolute',\r\n        bottom: 30,\r\n      },\r\n    },\r\n    previewContent: {\r\n      '&:hover': {\r\n        '& .short-headline': {\r\n          textDecoration: 'underline',\r\n        },\r\n      },\r\n      width: 624,\r\n      height: 350,\r\n    },\r\n    textContainer: {\r\n      position: 'absolute',\r\n      color: '#bebebe',\r\n      bottom: 25,\r\n      left: 20,\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    gradient: {\r\n      '&:after': {\r\n        display: 'block',\r\n        position: 'relative',\r\n        backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n        marginTop: -250,\r\n        height: 280,\r\n        width: '100%',\r\n        content: '\\'\\'',\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nexport default edgeSingle178100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnInArticle150100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.50,\r\n  type: 'Image150x100',\r\n  associationType: 'ImageMedia15X10',\r\n  imagePreviewHeight: 200,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 200],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN in-article ad'),\r\n    stringKey: _TL_('1.5 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showDescription: true,\r\n    showShortHeadlineMultiline: true,\r\n    showMultipleDescription: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    description: {\r\n      height: 45,\r\n      margin: '5px 0 10px 0',\r\n      fontSize: 14,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n      width: 300,\r\n      height: 360,\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 15,\r\n      lineHeight: '1.2',\r\n      height: 60,\r\n      position: 'relative',\r\n      top: -6,\r\n      color: '#207697',\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n    },\r\n    textContainer: {\r\n      padding: '10px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnInArticle150100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst msnSmall133100Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1.33,\r\n  type: 'Image133x100',\r\n  associationType: 'ImageMedia133X100',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [100, 75],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('MSN small headline'),\r\n    stringKey: _TL_('1.33 : 1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 100,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 52,\r\n      overflow: 'hidden',\r\n      margin: '4px 8px 0 8px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default msnSmall133100Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst audienceSquare11Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 75,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 300],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Microsoft Audience Network Square Image'),\r\n    stringKey: _TL_('1 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: true,\r\n    showBusinessName: true,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: true,\r\n  },\r\n  styleOverrides: {\r\n    businessNameWithAds: {\r\n      padding: '1px 0',\r\n      marginTop: 9,\r\n      '& .adslabel': {\r\n        border: '.5px solid #78718a',\r\n        color: '#78718a',\r\n        fontSize: 10,\r\n        fontWeight: 400,\r\n        lineHeight: '13.64px',\r\n        textDecorationThickness: 'auto',\r\n        textSizeAdjust: '100%',\r\n        borderRadius: '4px',\r\n        background: '#fff',\r\n        padding: '.8px 4px',\r\n        margin: '0 5px 0 0',\r\n      },\r\n      '& .business-name': {\r\n        color: '#333',\r\n        fontSize: 11,\r\n        lineHeight: '15.004px',\r\n        padding: '1px 0',\r\n      },\r\n    },\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: 300,\r\n      height: 90,\r\n      padding: 0,\r\n    },\r\n    imageContainer: {\r\n      float: 'left',\r\n      transform: 'none',\r\n      width: 80,\r\n      height: 75,\r\n      margin: '8px',\r\n    },\r\n    textContainer: {\r\n      color: '#333',\r\n      fontSize: 10,\r\n      lineHeight: '16px',\r\n    },\r\n    shortHeadline: {\r\n      fontWeight: 600,\r\n      fontSize: 13,\r\n      lineHeight: 1.384,\r\n      height: 45,\r\n      overflow: 'hidden',\r\n      margin: '8px 8px 0 8px',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '14px',\r\n      height: '20px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      fontSize: '13px',\r\n    },\r\n  },\r\n};\r\n\r\nexport default audienceSquare11Raw;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst facebook11Raw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'facebook_image_11',\r\n  aspectRatio: 1,\r\n  type: 'Image1x1',\r\n  associationType: 'SquareImageMedia',\r\n  imagePreviewHeight: 266,\r\n  minimumRequirements: 0,\r\n  minSize: [300, 300],\r\n  hideHeaderButtons: true,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Facebook'),\r\n    stringKey: _TL_('1 : 1'),\r\n    disclaimerMessage: _TL_('This is an example of how your ad could appear on other websites in the Microsoft Audience Network. The final ad format is likely to change to match the look and feel of the website.'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabelWithBusinessName: false,\r\n    showBusinessName: false,\r\n    showImage: true,\r\n    showShortHeadline: true,\r\n    showShortHeadlineMultiline: false,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showPersonaDecorator: true,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: '0.5px solid #ddd',\r\n      width: '266px',\r\n      minHeight: '372px',\r\n      padding: 0,\r\n    },\r\n    textContainer: {\r\n      padding: '8px',\r\n      background: '#f0f2f5',\r\n    },\r\n    shortHeadline: {\r\n      position: 'relative',\r\n      top: '14px',\r\n      overflow: 'hidden',\r\n      height: '13px',\r\n      fontSize: '12px',\r\n      fontWeight: 600,\r\n      color: '#000000',\r\n    },\r\n    finalUrl: {\r\n      position: 'relative',\r\n      top: '-14px',\r\n      overflow: 'hidden',\r\n      height: '12px',\r\n      fontSize: '10px',\r\n      color: '#53565C',\r\n    },\r\n    description: {\r\n      marginTop: '6px',\r\n      fontSize: '12px',\r\n      color: '#333',\r\n    },\r\n  },\r\n};\r\n\r\nexport default facebook11Raw;\r\n","import adLibraryImageAdPreview from '../ad-library/image-191-100-ad-library';\r\nimport adLibraryTextAdPreview from '../ad-library/text-bing';\r\n\r\nexport const adLibraryTemplates = [\r\n  adLibraryImageAdPreview,\r\n  adLibraryTextAdPreview,\r\n];\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst image191100AdsLib = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: '191x100_AdsLib',\r\n  aspectRatio: 1.91,\r\n  type: 'Image191x100',\r\n  associationType: 'LandscapeImageMedia',\r\n  imagePreviewHeight: 150,\r\n  isRequired: true,\r\n  minimumRequirements: 1,\r\n  minSize: [703, 368],\r\n  maxSize: [0, 0],\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Landscape Image Multimedia Ad'),\r\n    stringKey: _TL_('1.91:1'),\r\n  },\r\n  previewSettings: {\r\n    showAdsLabel: false,\r\n    showImage: true,\r\n    showDescription: true,\r\n    showShortHeadline: true,\r\n    showAdditionalDisclaimer: false,\r\n    showAction: false,\r\n    showUrl: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    adsLabel: {\r\n      backgroundColor: 'white',\r\n    },\r\n    description: {\r\n      color: '#605E5C',\r\n      maxWidth: 250,\r\n      wordWrap: 'break-word',\r\n      paddingRight: 16,\r\n      fontSize: 12,\r\n    },\r\n    previewContent: {\r\n      margin: 'auto',\r\n      background: '#fff',\r\n      border: 'solid',\r\n      borderWidth: 'thin',\r\n      color: '#ddd',\r\n    },\r\n    shortHeadline: {\r\n      fontSize: 14,\r\n      fontWeight: 200,\r\n      paddingBottom: 5,\r\n      color: '#207697',\r\n    },\r\n    textContainer: {\r\n      padding: '8px 20px 20px 20px',\r\n      maxWidth: '-webkit-fill-available',\r\n      width: 286,\r\n      lineHeight: 1.1,\r\n    },\r\n    finalUrl: {\r\n      color: 'green',\r\n      fontSize: 12,\r\n      marginBottom: 8,\r\n    },\r\n    actionButton: {\r\n      right: 15,\r\n      bottom: 15,\r\n      padding: '6px 16px 8px 16px',\r\n      fontSize: 16,\r\n      fontWeight: 'bold',\r\n      borderRadius: 32,\r\n    },\r\n  },\r\n};\r\n\r\nexport default image191100AdsLib;\r\n","import { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nconst bingDesktopTextRaw = {\r\n  componentType: AdPlacementsComponentTypes.AdPlacementPreview,\r\n  key: 'bing_text',\r\n  type: 'BingText',\r\n  associationType: 'BingText',\r\n  minimumRequirements: 0,\r\n  localizedText: {\r\n    previewTypeStringKey: _TL_('Bing search ad'),\r\n    stringKey: _TL_(''),\r\n  },\r\n  previewSettings: {\r\n    showLongHeadline: true,\r\n    showDescription: true,\r\n    showUrl: true,\r\n    showMultipleLineLongHeadline: true,\r\n    showUrlMultiline: true,\r\n    showMultipleDescription: true,\r\n    showAdsLabelInlineWithDescription: true,\r\n    showPreviewTypeString: false,\r\n  },\r\n  styleOverrides: {\r\n    previewContent: {\r\n      border: 'none',\r\n      boxShadow: 'none',\r\n      width: 308,\r\n      maxHeight: 260,\r\n      padding: '8px 16px',\r\n      overflow: 'hidden',\r\n    },\r\n    adsLabel: {\r\n      border: '1px solid #ddd',\r\n      padding: '0 2px',\r\n      fontSize: 11,\r\n      fontWeight: 600,\r\n      lineHeight: 1,\r\n      borderRadius: 6,\r\n      margin: '0 4px 0 0',\r\n      display: 'inline',\r\n      color: '#767676',\r\n      opacity: '100%',\r\n      position: 'static',\r\n      maxHeight: 16,\r\n    },\r\n    textContainer: {\r\n      margin: '4px 8px 0px 8px',\r\n    },\r\n    longHeadline: {\r\n      fontWeight: '400',\r\n      fontSize: '14px',\r\n      lineHeight: '24px',\r\n      height: '28px',\r\n      overflow: 'hidden',\r\n    },\r\n    finalUrl: {\r\n      overflow: 'hidden',\r\n      color: '#0b6a0b',\r\n      fontSize: '12px',\r\n      height: '20px',\r\n      marginBottom: '5px',\r\n    },\r\n    description: {\r\n      color: '#333',\r\n      display: 'inline-block',\r\n      fontSize: '12px',\r\n      flexGrow: 1,\r\n      marginBottom: '10px',\r\n    },\r\n    descriptionParent: {\r\n      display: 'flex',\r\n    },\r\n  },\r\n};\r\n\r\nexport default bingDesktopTextRaw;\r\n","import React from 'react';\r\nimport { map, each } from 'underscore';\r\n\r\nimport { AdPlacementsGroupType } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nimport { GroupTypeTemplatesMapping } from '..';\r\n\r\nexport const staticTemplateProperties = [\r\n  'aspectRatio',\r\n  'type',\r\n  'associationType',\r\n  'isRequired',\r\n  'minimumRequirements',\r\n  'minSize',\r\n  'maxSize',\r\n];\r\n\r\nconst getAllAssociationTypesForAdType = (adType) => {\r\n  const templates = GroupTypeTemplatesMapping[adType];\r\n\r\n  return map(templates, ({ associationType }) => associationType);\r\n};\r\n\r\nconst getImageTypeForTemplate = template => template.associationType;\r\n\r\nconst getTemplateTypeForTemplate = template => template.type;\r\n\r\nconst doesTemplateShowImage = template => template.previewSettings.showImage;\r\n\r\nconst doesTemplateHideHeaderButtons = template => template.hideHeaderButtons;\r\n\r\nconst getCarouselTitleForTemplate = (template, groupType, i18n) => {\r\n  const { localizedText, previewSettings } = template;\r\n  let title;\r\n\r\n  const aspectRatio = i18n.getString(localizedText.stringKey);\r\n  const titleTemplate = i18n.getString(_TL_('Ad preview ({{aspectRatio}} aspect ratio)'), { aspectRatio });\r\n\r\n  switch (groupType) {\r\n    case AdPlacementsGroupType.imageExtension:\r\n    case AdPlacementsGroupType.searchImageAd:\r\n    case AdPlacementsGroupType.msanImageAd:\r\n    case AdPlacementsGroupType.streamlinedSignup:\r\n      if (previewSettings.showImage) {\r\n        title = (\r\n          <span className=\"preview-title-string-key\">{titleTemplate}</span>\r\n        );\r\n      } else {\r\n        title = null;\r\n      }\r\n      break;\r\n    case AdPlacementsGroupType.perfMax:\r\n      title = (\r\n        <React.Fragment>\r\n          <span className=\"preview-title-string-key\">{i18n.getString(localizedText.stringKey)}</span>\r\n          <span className=\"preview-title-preview-type\">{i18n.getString(localizedText.previewTypeStringKey)}</span>\r\n        </React.Fragment>);\r\n      break;\r\n    default:\r\n      title = i18n.getString(_TL_('Ad preview'));\r\n      break;\r\n  }\r\n\r\n  return title;\r\n};\r\nconst getMinSizeForTemplate = ({ minSize = [] } = {}) => ({\r\n  minWidth: minSize[0],\r\n  minHeight: minSize[1],\r\n});\r\nconst validateImageSizeForTemplate = (template, image) => {\r\n  const { minWidth = 0, minHeight = 0 } = getMinSizeForTemplate(template);\r\n\r\n  if (image) {\r\n    const widthToCheck = (image.BaseImage && image.BaseImage.CropSettings && image.BaseImage.CropSettings.SourceWidth) || image.Width;\r\n    const heightToCheck = (image.BaseImage && image.BaseImage.CropSettings && image.BaseImage.CropSettings.SourceHeight) || image.Height;\r\n\r\n    return (widthToCheck >= minWidth) && (heightToCheck >= minHeight);\r\n  }\r\n  return false;\r\n};\r\n\r\nconst getCropSettingsInfoFromTemplates = (templates) => {\r\n  const cropSettingsInfo = [];\r\n\r\n  each(templates, (template) => {\r\n    const {\r\n      aspectRatio,\r\n      type,\r\n      associationType,\r\n      minSize,\r\n    } = template;\r\n    cropSettingsInfo.push({\r\n      aspectRatio,\r\n      type,\r\n      associationType,\r\n      minSize,\r\n    });\r\n  });\r\n\r\n  return cropSettingsInfo;\r\n};\r\n\r\nconst getIsRequiredFromTemplate = ({ isRequired }) => isRequired;\r\n\r\n\r\nexport const templateParserUtils = {\r\n  getImageTypeForTemplate,\r\n  getCarouselTitleForTemplate,\r\n  getMinSizeForTemplate,\r\n  validateImageSizeForTemplate,\r\n  getCropSettingsInfoFromTemplates,\r\n  getAllAssociationTypesForAdType,\r\n  getTemplateTypeForTemplate,\r\n  getIsRequiredFromTemplate,\r\n  doesTemplateShowImage,\r\n  doesTemplateHideHeaderButtons,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__113__;","export * from './src/observable';\r\n","import _ from 'underscore';\r\nimport { promisifyObservable } from './promisify-observable';\r\n\r\nclass SubscriptionObserver {\r\n  constructor({\r\n    start = _.noop,\r\n    next = _.noop,\r\n    error = _.noop,\r\n    complete = _.noop,\r\n  }, subscription) {\r\n    this.next = next;\r\n    this.error = error;\r\n    this.complete = complete;\r\n    start(subscription);\r\n    this.subscription = subscription;\r\n  }\r\n\r\n  get closed() {\r\n    return this.subscription.closed;\r\n  }\r\n}\r\n\r\nclass Subscription {\r\n  constructor(observer, subscriber) {\r\n    this.observer = new SubscriptionObserver(observer, this);\r\n    this.unsubscribeCallback = subscriber(this.observer) || _.noop;\r\n    this.isClosed = false;\r\n  }\r\n\r\n  unsubscribe() {\r\n    this.unsubscribeCallback();\r\n    this.isClosed = true;\r\n  }\r\n\r\n  get closed() {\r\n    return this.isClosed;\r\n  }\r\n}\r\n\r\n/**\r\n * A minimum implementation of https://github.com/tc39/proposal-observable\r\n */\r\nexport class Observable {\r\n  constructor(subscriber) {\r\n    this.subscriber = subscriber;\r\n  }\r\n\r\n  subscribe(observer) {\r\n    return new Subscription(observer, this.subscriber);\r\n  }\r\n\r\n  toPromise() {\r\n    return promisifyObservable(this);\r\n  }\r\n}\r\n","import Promise from 'bluebird';\r\n\r\nexport function promisifyObservable(observable) {\r\n  return new Promise((resolve, reject) => {\r\n    const subscription = observable.subscribe({\r\n      next: (data) => {\r\n        resolve(data);\r\n        if (subscription) {\r\n          subscription.unsubscribe();\r\n        }\r\n      },\r\n      error: (err) => {\r\n        reject(err);\r\n        if (subscription) {\r\n          subscription.unsubscribe();\r\n        }\r\n      },\r\n    });\r\n  });\r\n}\r\n","export * from './src/index';\r\n","export { ImageModelPropTypes } from './image-model-proptypes';\r\n","import PropTypes from 'prop-types';\r\n\r\nexport const ImageModelPropTypes = PropTypes.shape({\r\n  FinalSrc: PropTypes.string,\r\n  Src: PropTypes.string,\r\n  Width: PropTypes.number,\r\n  Height: PropTypes.number,\r\n  CropSettings: PropTypes.shape({\r\n    SourceX: PropTypes.number,\r\n    SourceY: PropTypes.number,\r\n    SourceWidth: PropTypes.number,\r\n    SourceHeight: PropTypes.number,\r\n  }),\r\n  IsIncluded: PropTypes.bool,\r\n});\r\n","export * from './src/file-dragger';\r\nexport { fileDraggerLegacyString } from './src/i18n/legacy-keys';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport _ from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { fileDraggerStyle } from './file-dragger-style';\r\n\r\nexport class UnStyleFileDragger extends React.PureComponent {\r\n  static propTypes = {\r\n    allowedFileExtension: PropTypes.arrayOf(PropTypes.string.isRequired).isRequired,\r\n    onInvalidExtension: PropTypes.func.isRequired,\r\n    onReadFile: PropTypes.func.isRequired,\r\n    i18n: PropTypes.shape({\r\n      getString: PropTypes.func.isRequired,\r\n      parseDecimal: PropTypes.func.isRequired,\r\n    }).isRequired,\r\n    dragging: PropTypes.func,\r\n    label: PropTypes.string,\r\n    description: PropTypes.string,\r\n    dropDescription: PropTypes.string,\r\n    classes: PropTypes.shape(_.mapObject(\r\n      fileDraggerStyle({}, {}),\r\n      _.constant(PropTypes.string.isRequired)\r\n    )).isRequired,\r\n    // eslint-disable-next-line react/forbid-prop-types\r\n    fileButton: PropTypes.any,\r\n    useLargeStyling: PropTypes.bool,\r\n  };\r\n\r\n  static defaultProps = {\r\n    label: '',\r\n    description: '',\r\n    dropDescription: '',\r\n    dragging: () => {},\r\n    fileButton: null,\r\n    useLargeStyling: false,\r\n  };\r\n\r\n  constructor(props) {\r\n    super(props);\r\n\r\n    this.state = {\r\n      isDraging: false,\r\n    };\r\n  }\r\n  onDragOver = (e) => {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n\r\n    if (!this.state.isDraging) {\r\n      this.handleDraging(true);\r\n    }\r\n  };\r\n\r\n  onDrop = (e) => {\r\n    const { onReadFile } = this.props;\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n\r\n    const dragFiles = e.dataTransfer.files;\r\n    const valideExtensionFile = [];\r\n\r\n    for (let i = 0; i < dragFiles.length; i += 1) {\r\n      const file = dragFiles[i];\r\n      if (this.validateExtension(file)) {\r\n        valideExtensionFile.push(file);\r\n      }\r\n    }\r\n\r\n    if (valideExtensionFile.length > 0) {\r\n      onReadFile(valideExtensionFile);\r\n    }\r\n\r\n    this.handleDraging(false);\r\n  };\r\n\r\n  onDragLeave = (e) => {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n\r\n    if (this.state.isDraging) {\r\n      this.handleDraging(false);\r\n    }\r\n  };\r\n\r\n  handleDraging = (isDraging) => {\r\n    const { dragging } = this.props;\r\n    if (dragging) {\r\n      dragging(isDraging);\r\n    }\r\n\r\n    this.setState({\r\n      isDraging,\r\n    });\r\n  };\r\n\r\n  validateExtension = (file) => {\r\n    const { allowedFileExtension, onInvalidExtension } = this.props;\r\n\r\n    const extension = file.type.split('/').pop();\r\n    const fileType = `.${extension}`;\r\n\r\n    if (allowedFileExtension.indexOf(fileType) === -1) {\r\n      onInvalidExtension();\r\n      return false;\r\n    }\r\n\r\n    return true;\r\n  };\r\n\r\n  render() {\r\n    const { isDraging } = this.state;\r\n    const {\r\n      label, description, dropDescription, classes, fileButton, useLargeStyling,\r\n    } = this.props;\r\n\r\n    const {\r\n      fileSelectedWrapper,\r\n      fileSelectedIcon,\r\n      fileSelectedText,\r\n      fileDraggerRoot,\r\n      largeFileDraggerRoot,\r\n      fileDefaultWrapper,\r\n      largeFileDefaultWrapper,\r\n      fileUploadIcon,\r\n      fileUploadText,\r\n      fileUploadTip,\r\n      fileUploadButton,\r\n      largeFileUploadButton,\r\n      icon,\r\n    } = classes;\r\n\r\n    return (\r\n      <div\r\n        className={classnames(classes.fileDragWrapper, 'file-drag-wrapper')}\r\n        aria-label={label}\r\n        onDragOver={this.onDragOver}\r\n        onDrop={this.onDrop}\r\n        onDragLeave={this.onDragLeave}\r\n      >\r\n        {\r\n          isDraging ?\r\n            <div className={classnames(fileSelectedWrapper, 'file-dragger-wrapper')}>\r\n              <div className={classnames(fileSelectedIcon, 'file-dragger-icon')}>\r\n                {/* todo: upgrade to font Task 3945732 */}\r\n                <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2048 2048\" fill=\"#0078D4\">\r\n                  <path d=\"M960 0q133 0 255 34t230 96 194 150 150 195 97 229 34 256q0 133-34 255t-96 230-150 194-195 150-229 97-256 34q-133 0-255-34t-230-96-194-150-150-195-97-229T0 960q0-133 34-255t96-230 150-194 195-150 229-97T960 0zm0 1792q115 0 221-30t198-84 169-130 130-168 84-199 30-221q0-115-30-221t-84-198-130-169-168-130-199-84-221-30q-115 0-221 30t-198 84-169 130-130 168-84 199-30 221q0 115 30 221t84 198 130 169 168 130 199 84 221 30zm0-1311l430 434-92 90-274-278v681H896V727l-274 278-92-90 430-434z\" />\r\n                </svg>\r\n              </div>\r\n              { dropDescription &&\r\n                <div className={classnames(fileSelectedText, 'file-dragger-text')}>{dropDescription}</div>\r\n              }\r\n            </div>\r\n          :\r\n            <div className={classnames(useLargeStyling ? largeFileDraggerRoot : fileDraggerRoot, 'file-dragger')}>\r\n              <div className={classnames(useLargeStyling ? largeFileDefaultWrapper : fileDefaultWrapper, 'file-default-wrapper')}>\r\n                <div className={classnames(fileUploadIcon, 'file-upload-icon')}>\r\n                  <span className={classnames('iconba', 'iconba-OpenFile', icon)} />\r\n                </div>\r\n                { label &&\r\n                  <div className={classnames(fileUploadText, 'file-upload-text')}>{label}</div>\r\n                }\r\n                { description &&\r\n                  <div className={classnames(fileUploadTip, 'file-upload-tip')}>{description}</div>\r\n                }\r\n              </div>\r\n              {\r\n                fileButton && (\r\n                  <div className={classnames(useLargeStyling ? largeFileUploadButton : fileUploadButton, 'file-upload-button')}>\r\n                    {fileButton}\r\n                  </div>\r\n                )\r\n              }\r\n            </div>\r\n        }\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nexport const FileDragger = withDefaultStyles(UnStyleFileDragger, fileDraggerStyle);\r\n","export const fileDraggerStyle = ((_, { palette = {} }) => ({\r\n  fileDragWrapper: {\r\n    width: '100%',\r\n    height: '190px',\r\n  },\r\n\r\n  fileDraggerRoot: {\r\n    width: '100%',\r\n    height: '100%',\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    border: '1px dashed #BBB',\r\n    borderRadius: '12px',\r\n    flexWrap: 'nowrap',\r\n  },\r\n\r\n  largeFileDraggerRoot: {\r\n    width: '100%',\r\n    height: '100%',\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    paddingTop: '32px',\r\n    border: '1px dashed #BBB',\r\n    borderRadius: '12px',\r\n    textAlign: 'center',\r\n  },\r\n\r\n  fileUploadButton: {\r\n    flexGrow: 0,\r\n    flexShrink: 0,\r\n    paddingTop: 34,\r\n    paddingRight: 14,\r\n  },\r\n\r\n  largeFileUploadButton: {\r\n    flexGrow: 0,\r\n    flexShrink: 0,\r\n    paddingTop: 5,\r\n  },\r\n\r\n  fileDefaultWrapper: {\r\n    flexGrow: 1,\r\n    flexShrink: 1,\r\n  },\r\n\r\n  largeFileDefaultWrapper: {\r\n    flexShrink: 1,\r\n  },\r\n\r\n  fileUploadIcon: {\r\n    width: '28px',\r\n    height: '28px',\r\n    margin: 'auto',\r\n  },\r\n\r\n  icon: {\r\n    fontSize: '28px',\r\n    color: palette.neutralTertiary,\r\n  },\r\n\r\n  fileUploadText: {\r\n    marginTop: '8px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '14px',\r\n    lineHeight: '16px',\r\n    color: '#484644',\r\n  },\r\n\r\n  fileUploadTip: {\r\n    marginTop: '8px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '12px',\r\n    lineHeight: '14px',\r\n    color: palette.neutralSecondary,\r\n  },\r\n\r\n  fileSelectedWrapper: {\r\n    width: '100%',\r\n    height: '100%',\r\n    background: 'rgba(239, 246, 252, 0.5)',\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    justifyContent: 'center',\r\n    border: '1px dashed #005A9E',\r\n    borderRadius: '12px',\r\n  },\r\n\r\n  fileSelectedIcon: {\r\n    width: '36px',\r\n    height: '36px',\r\n    pointerEvents: 'none',\r\n    color: palette.blue,\r\n  },\r\n\r\n  fileSelectedText: {\r\n    marginTop: '8px',\r\n    fontFamily: 'Segoe UI',\r\n    fontSize: '14px',\r\n    lineHeight: '16px',\r\n    color: '#484644',\r\n    pointerEvents: 'none',\r\n  },\r\n}));\r\n","export const fileDraggerLegacyString = {\r\n  ImageExperience_Drag_File_Description: _TL_('Upload or drag and drop your images here'),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__24__;","export { version } from './package.json';\r\nexport * from './src/controls';\r\n","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {\r\n  Accordion,\r\n  Alert,\r\n  FormControl,\r\n  ControlLabel,\r\n  Button as BsButton,\r\n  Radio,\r\n  Checkbox,\r\n  Glyphicon as BsGlyphicon,\r\n  Dropdown,\r\n  DropdownButton,\r\n  MenuItem,\r\n  Modal,\r\n  Carousel as BsCarousel,\r\n  Overlay,\r\n  OverlayTrigger,\r\n  Tooltip,\r\n  Popover,\r\n  Navbar as BsNavbar,\r\n  Nav,\r\n  NavDropdown as UnstyledNavDropdown,\r\n  NavItem,\r\n  Tabs,\r\n  Tab,\r\n  Image,\r\n} from 'react-bootstrap';\r\n\r\nconst Button = React.forwardRef((props, ref) => {\r\n  const { btnStyle, className, ...other } = props;\r\n  let bsStyle = btnStyle;\r\n  let btnClasses = className;\r\n\r\n  // For CommandBar button style, add btn-command class\r\n  if (btnStyle === 'command') {\r\n    const btnClass = ['btn-command'];\r\n\r\n    btnClass.push(btnClasses);\r\n    btnClasses = className ? btnClass.join(' ') : btnClass.join('');\r\n    bsStyle = 'default';\r\n  }\r\n\r\n  return (<BsButton {...other} bsStyle={bsStyle} className={btnClasses} ref={ref} />);\r\n});\r\n\r\nButton.propTypes = {\r\n  btnStyle: PropTypes.string,\r\n  className: PropTypes.string,\r\n};\r\n\r\nButton.defaultProps = {\r\n  btnStyle: undefined,\r\n  className: undefined,\r\n};\r\n\r\nconst Glyphicon = React.forwardRef((props, ref) => {\r\n  const {\r\n    iconStyle,\r\n    className,\r\n    glyph,\r\n    bsClass,\r\n    ...other\r\n  } = props;\r\n  let iconGlyph = glyph;\r\n  let iconBsClass = bsClass;\r\n  let iconClasses = className;\r\n\r\n  // For bingads specific icons (such as ba-chart), trim ba- in glyph prop and add custom bsClass\r\n  if (iconGlyph && iconGlyph.indexOf('ba-') === 0) {\r\n    const bsClasses = ['iconba'];\r\n\r\n    bsClasses.push(iconBsClass);\r\n    iconBsClass = bsClasses.join(' ');\r\n    iconGlyph = iconGlyph.substr(3);\r\n  }\r\n\r\n  if (iconStyle) {\r\n    const iconClass = ['icon-'];\r\n    iconClass[0] += iconStyle;\r\n\r\n    iconClass.push(iconClasses);\r\n    iconClasses = className ? iconClass.join(' ') : iconClass.join('');\r\n  } else {\r\n    iconClasses = className;\r\n  }\r\n\r\n  if (iconClasses) {\r\n    iconClasses = iconClasses.trim();\r\n  }\r\n\r\n  return (\r\n    <BsGlyphicon\r\n      {...other}\r\n      bsClass={iconBsClass}\r\n      className={iconClasses}\r\n      glyph={iconGlyph}\r\n      ref={ref}\r\n    />\r\n  );\r\n});\r\n\r\nGlyphicon.propTypes = {\r\n  bsClass: PropTypes.string,\r\n  className: PropTypes.string,\r\n  glyph: PropTypes.string.isRequired,\r\n  iconStyle: PropTypes.string,\r\n};\r\n\r\nGlyphicon.defaultProps = {\r\n  bsClass: undefined,\r\n  className: undefined,\r\n  iconStyle: undefined,\r\n};\r\n\r\nconst Input = React.forwardRef((props, ref) => {\r\n  const { isStatic, staticDisplay, ...rest } = props;\r\n  return isStatic ?\r\n    <FormControl.Static\r\n      componentClass=\"span\"\r\n      {...rest}\r\n      type={rest.type}\r\n      ref={ref}\r\n    >\r\n      {staticDisplay(props.value)}\r\n    </FormControl.Static> :\r\n    <FormControl\r\n      {...rest}\r\n      type={rest.type}\r\n      ref={ref}\r\n    />;\r\n});\r\n\r\nInput.propTypes = {\r\n  isStatic: PropTypes.bool,\r\n  staticDisplay: PropTypes.func,\r\n  type: PropTypes.string,\r\n  value: PropTypes.string,\r\n};\r\n\r\nInput.defaultProps = {\r\n  isStatic: false,\r\n  staticDisplay: _.identity,\r\n  type: 'text',\r\n  value: undefined,\r\n};\r\n\r\nconst Navbar = React.forwardRef((props, ref) => {\r\n  const { navStyle, className, ...other } = props;\r\n  let navClasses = className;\r\n\r\n  if (navStyle === 'default') {\r\n    const navClass = ['default-toolbar'];\r\n    navClass.push(navClasses);\r\n    navClasses = className ? navClass.join(' ') : navClass.join('');\r\n  }\r\n\r\n  if (navStyle === 'primary') {\r\n    const navClass = ['primary-toolbar'];\r\n    navClass.push(navClasses);\r\n    navClasses = className ? navClass.join(' ') : navClass.join('');\r\n  }\r\n\r\n  return (\r\n    <BsNavbar {...other} className={navClasses} ref={ref}>\r\n      {props.children}\r\n    </BsNavbar>\r\n  );\r\n});\r\n\r\nNavbar.propTypes = {\r\n  children: PropTypes.node,\r\n  className: PropTypes.string,\r\n  navStyle: PropTypes.string,\r\n};\r\n\r\nNavbar.defaultProps = {\r\n  children: null,\r\n  className: undefined,\r\n  navStyle: 'default',\r\n};\r\n\r\nNavbar.Brand = BsNavbar.Brand;\r\n\r\nclass Carousel extends React.Component {\r\n  constructor(props) {\r\n    super(props);\r\n    this.carouselRef = React.createRef();\r\n  }\r\n\r\n  handlePause = (e) => {\r\n    e.preventDefault();\r\n    this.carouselRef.current.pause();\r\n  }\r\n\r\n  handlePlay = (e) => {\r\n    e.preventDefault();\r\n    this.carouselRef.current.play();\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      controls,\r\n      showPrevNextControls,\r\n      InjectedControls, ...other\r\n    } = this.props;\r\n    let carouselControls = '';\r\n\r\n    if (!controls) {\r\n      carouselControls = ' hidden';\r\n    }\r\n\r\n    return (\r\n      <div className=\"carousel-wrapper\">\r\n        <BsCarousel ref={this.carouselRef} controls={showPrevNextControls} {...other}>\r\n          {this.props.children}\r\n        </BsCarousel>\r\n        <div className={`carousel-controls${carouselControls}`}>\r\n          <button id=\"playButton\" onClick={this.handlePlay}>Play</button>\r\n          <button id=\"pauseButton\" onClick={this.handlePause}>Pause</button>\r\n        </div>\r\n        {\r\n          InjectedControls ?\r\n            <>\r\n              {InjectedControls}\r\n            </>\r\n            : null\r\n        }\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nCarousel.propTypes = {\r\n  children: PropTypes.node,\r\n  controls: PropTypes.bool,\r\n  showPrevNextControls: PropTypes.bool,\r\n  InjectedControls: PropTypes.element,\r\n};\r\n\r\nCarousel.defaultProps = {\r\n  children: null,\r\n  controls: true,\r\n  showPrevNextControls: true,\r\n  InjectedControls: null,\r\n};\r\n\r\nCarousel.Caption = BsCarousel.Caption;\r\nCarousel.Item = BsCarousel.Item;\r\n\r\nexport {\r\n  Accordion,\r\n  Alert,\r\n  ControlLabel as Label,\r\n  Button,\r\n  Radio,\r\n  Input,\r\n  Checkbox,\r\n  Glyphicon,\r\n  Dropdown,\r\n  DropdownButton,\r\n  MenuItem,\r\n  Modal,\r\n  Carousel,\r\n  Overlay,\r\n  OverlayTrigger,\r\n  Tooltip,\r\n  Popover,\r\n  Navbar,\r\n  Nav,\r\n  UnstyledNavDropdown as NavDropdown,\r\n  NavItem,\r\n  Tabs,\r\n  Tab,\r\n  Image,\r\n};\r\n\r\nexport const Select = React.forwardRef((props, ref) => (<FormControl {...props} componentClass=\"select\" ref={ref} />));\r\n\r\nexport const TextArea = React.forwardRef((props, ref) => (<FormControl {...props} componentClass=\"textarea\" ref={ref} />));\r\n","export * from './src/index';\r\n","export {\r\n  convertAspectRatioDecimalToRatio,\r\n  convertAspectRatioToDecimal,\r\n  getOriginalImageAspectRatio,\r\n  getAllowedAspectRatio,\r\n  getAspectRatio,\r\n  getResizeImageHeight,\r\n} from './aspect-ratio-config';\r\n\r\nexport {\r\n  EffectChoiceKey,\r\n  EffectChoiceOrder,\r\n  MTSmartEffect,\r\n  EffectChoiceMtSmartEffectMapping,\r\n} from './effect-options-config';\r\n\r\nexport { getEditorTitle } from './editor-title';\r\n","/* eslint-disable no-confusing-arrow */\r\nimport _ from 'underscore';\r\n\r\nexport const aspectRatioConfig = {\r\n  Image191x100: {\r\n    aspectRatio: 1.91,\r\n    aspectRatioAsRatio: '191:100',\r\n    type: 'Image191x100',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1.91 : 1 aspect ratio') : _TL_('Edit image: 1.91 : 1 aspect ratio'),\r\n  },\r\n  Image4x1: {\r\n    aspectRatio: 4,\r\n    aspectRatioAsRatio: '4:1',\r\n    type: 'Image4x1',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 4 : 1 aspect ratio') : _TL_('Edit image: 4 : 1 aspect ratio'),\r\n  },\r\n  Image1x1: {\r\n    aspectRatio: 1,\r\n    aspectRatioAsRatio: '1:1',\r\n    type: 'Image1x1',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1 : 1 aspect ratio') : _TL_('Edit image: 1 : 1 aspect ratio'),\r\n  },\r\n  Image1x2: {\r\n    aspectRatio: 0.5,\r\n    aspectRatioAsRatio: '1:2',\r\n    type: 'Image1x2',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1 : 2 aspect ratio') : _TL_('Edit image: 1 : 2 aspect ratio'),\r\n  },\r\n  Image178x100: {\r\n    aspectRatio: 1.78,\r\n    aspectRatioAsRatio: '178:100',\r\n    type: 'Image178x100',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1.78 : 1 aspect ratio') : _TL_('Edit image: 1.78 : 1 aspect ratio'),\r\n  },\r\n  Image150x100: {\r\n    aspectRatio: 1.5,\r\n    aspectRatioAsRatio: '150:100',\r\n    type: 'Image150x100',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1.5 : 1 aspect ratio') : _TL_('Edit image: 1.5 : 1 aspect ratio'),\r\n  },\r\n  Image133x100: {\r\n    aspectRatio: 1.33,\r\n    aspectRatioAsRatio: '133:100',\r\n    type: 'Image133x100',\r\n    editorTitle: isLogo => isLogo ?\r\n      _TL_('Edit logo: 1.33 : 1 aspect ratio') : _TL_('Edit image: 1.33 : 1 aspect ratio'),\r\n  },\r\n};\r\nconst getRatio = (width, height) => width / height;\r\n\r\nexport const getOriginalImageAspectRatio = (baseImage) => {\r\n  if (baseImage && baseImage.Width > 0 && baseImage.Height > 0) {\r\n    return getRatio(baseImage.Width, baseImage.Height);\r\n  }\r\n\r\n  return null;\r\n};\r\n\r\nexport const getAllowedAspectRatio = (baseImage) => {\r\n  if (baseImage && baseImage.Type) {\r\n    return aspectRatioConfig[baseImage.Type].aspectRatio;\r\n  }\r\n\r\n  return 0;\r\n};\r\n\r\n// if type is passed, use type as aspect ratio,\r\n// otherwise calculate based on existing width, height info\r\nexport const getAspectRatio = (baseImage, cropSettings) => {\r\n  const allowedAspectRatio = getAllowedAspectRatio(baseImage);\r\n\r\n  // respect existing aspect ratio info if any\r\n  if (allowedAspectRatio > 0) {\r\n    return allowedAspectRatio;\r\n  }\r\n\r\n  // if no defined aspect ratio, use existing crop box to compute ratio\r\n  if (cropSettings && cropSettings.SourceWidth > 0 && cropSettings.SourceHeight > 0) {\r\n    return getRatio(cropSettings.SourceWidth, cropSettings.SourceHeight);\r\n  }\r\n\r\n  // lastly use original image to compute ratio\r\n  return getOriginalImageAspectRatio(baseImage);\r\n};\r\n\r\n// use maxHeight as default height. If scaling width exceeds maxWidth, use maxWidth as default width\r\nexport const getResizeImageHeight = ({\r\n  aspectRatio,\r\n  maxWidth,\r\n  maxHeight,\r\n}) => {\r\n  if (aspectRatio > 0 && maxWidth > 0 && maxHeight > 0) {\r\n    let height = maxHeight;\r\n\r\n    if (height * aspectRatio > maxWidth) {\r\n      height = Math.round(maxWidth / aspectRatio);\r\n    }\r\n\r\n    return height;\r\n  }\r\n\r\n  return undefined;\r\n};\r\n\r\nexport const convertAspectRatioDecimalToRatio = (aspectRatioAsDecimal) => {\r\n  const { aspectRatioAsRatio } =\r\n    _.find(aspectRatioConfig, ({ aspectRatio }) => aspectRatio === aspectRatioAsDecimal) || {};\r\n\r\n  return aspectRatioAsRatio;\r\n};\r\n\r\nexport const convertAspectRatioToDecimal = (aspectRatioRatio) => {\r\n  const { aspectRatio } =\r\n    _.find(aspectRatioConfig, ({ aspectRatioAsRatio }) => aspectRatioRatio === aspectRatioAsRatio)\r\n    || {};\r\n\r\n  return aspectRatio ? `${aspectRatio}` : undefined;\r\n};\r\n","export const EffectChoiceKey = {\r\n  None: 'None',\r\n  DesignerEffects: 'DesignerEffects',\r\n  BackgroundBlur: 'BackgroundBlur',\r\n  BackgroundSolidColor: 'BackgroundSolidColor',\r\n};\r\n\r\nexport const EffectChoiceOrder = {\r\n  [EffectChoiceKey.None]: 0,\r\n  [EffectChoiceKey.DesignerEffects]: 1,\r\n  [EffectChoiceKey.BackgroundBlur]: 2,\r\n  [EffectChoiceKey.BackgroundSolidColor]: 3,\r\n};\r\n\r\nexport const MTSmartEffect = {\r\n  Blur: 'bg_blur',\r\n  BackgroundColorSwap: 'bg_color',\r\n  SmartCrop: 'smart_crop',\r\n  DesignerEffects: 'design_ideas',\r\n};\r\n\r\nexport const EffectChoiceMtSmartEffectMapping = {\r\n  [EffectChoiceKey.BackgroundBlur]: MTSmartEffect.Blur,\r\n  [EffectChoiceKey.BackgroundSolidColor]: MTSmartEffect.BackgroundColorSwap,\r\n  [EffectChoiceKey.DesignerEffects]: MTSmartEffect.DesignerEffects,\r\n};\r\n","import { aspectRatioConfig } from './aspect-ratio-config';\r\n\r\nexport const getEditorTitle = (i18n, imageType, isLogo = false) => {\r\n  let titleKey = isLogo ?\r\n    _TL_('Edit logo') : _TL_('Edit image');\r\n  let subTitle = null;\r\n\r\n  if (imageType) {\r\n    titleKey = aspectRatioConfig[imageType].editorTitle(isLogo);\r\n    subTitle = isLogo ?\r\n      i18n.getString(_TL_('Choose how your logo will look with this ad placement.')) :\r\n      i18n.getString(_TL_('Choose how your image will look with this ad placement.'));\r\n  }\r\n\r\n  return [i18n.getString(titleKey), subTitle];\r\n};\r\n","export * from './src/index';\r\n","export {\r\n  serializeImageAssetMetadata,\r\n  deserializeImageAssetMetadata,\r\n} from './image-metadata';\r\n","import _ from 'underscore';\r\nimport { EffectChoiceKey } from '@bingads-webui-campaign/media-common-utils';\r\nimport { stringifySync, parseSync } from '@bingads-webui/safe-json';\r\nimport { extractInfoForSerialization, extractInfoForDeserialization } from './validate-schema';\r\n\r\nconst convertStateToMetadata = ({\r\n  effectSettings,\r\n} = {}) => {\r\n  const {\r\n    effectKey,\r\n    /* Should not save URL related stuff since it may expire anytime. */\r\n    // effectSrc,\r\n    effectOptions = {},\r\n  } = effectSettings || {};\r\n  const processEffect = effectKey && effectKey !== EffectChoiceKey.None;\r\n\r\n  if (!processEffect) {\r\n    return null;\r\n  }\r\n\r\n  const metaObject = extractInfoForSerialization({\r\n    obj: {\r\n      effectSettings: {\r\n        effectKey,\r\n        effectOptions,\r\n      },\r\n    },\r\n    effectKey,\r\n  });\r\n\r\n  return metaObject;\r\n};\r\n\r\n/*\r\n * Attention: this is serialized and saved in db,\r\n * so need to consider backward compatibility when upgrading.\r\n */\r\nconst buildImageAssetMetadataToSave = (assetModel) => {\r\n  const metaObject = {};\r\n\r\n  const placementMeta = convertStateToMetadata(assetModel);\r\n\r\n  if (!_.isEmpty(placementMeta)) {\r\n    _.extend(metaObject, placementMeta);\r\n  }\r\n\r\n  return metaObject;\r\n};\r\n\r\n// metadata is coupled with image content.\r\n// if we have same images with different metadata, this is not supported by MT asset entity.\r\nexport const serializeImageAssetMetadata = (assetModel, isBulkUpsert = true) => {\r\n  if (_.isEmpty(assetModel)) {\r\n    return '';\r\n  }\r\n\r\n  const metaObject = buildImageAssetMetadataToSave(assetModel);\r\n\r\n  if (_.isEmpty(metaObject)) {\r\n    return '';\r\n  }\r\n\r\n  const serialized = stringifySync(metaObject);\r\n\r\n  return isBulkUpsert\r\n    ? serialized.replace(/,/g, encodeURIComponent(',')) // Comma is reserved in bulk upsert call\r\n    : serialized;\r\n};\r\n\r\nexport const deserializeImageAssetMetadata = (metaString) => {\r\n  if (metaString) {\r\n    const decoded = metaString.replace(new RegExp(encodeURIComponent(','), 'g'), ',');\r\n    const metaObj = parseSync(decoded);\r\n\r\n    if (!_.isEmpty(metaObj)) {\r\n      const model = extractInfoForDeserialization({ obj: metaObj });\r\n\r\n      return model;\r\n    }\r\n  }\r\n\r\n  return null;\r\n};\r\n","import _ from 'underscore';\r\nimport { ConfiguredValidators } from './property-validators/index';\r\nimport { imageAssetSerializeSchema, imageAssetDeserializeSchema } from './image-metadata-schema';\r\n\r\nconst validateProperty = ({\r\n  propertyValue,\r\n  propertySchema,\r\n  effectKey,\r\n}) => {\r\n  let result = true;\r\n  let ignoreInvalidProperty = false;\r\n\r\n  if (_.isUndefined(propertyValue)) {\r\n    result = !!propertySchema.nullable;\r\n  } else {\r\n    for (let i = 0; i < ConfiguredValidators.length; i += 1) {\r\n      const ValidatorClass = ConfiguredValidators[i];\r\n      const instance = new ValidatorClass(propertySchema);\r\n      const childResult = instance.validate(propertyValue, effectKey);\r\n\r\n      // once there is failure by validator that could not ignore error, break\r\n      if (!childResult && !instance.config.ignoreInvalidProperty) {\r\n        result = false;\r\n        ignoreInvalidProperty = false;\r\n\r\n        break;\r\n      }\r\n\r\n      // if validatior is configured to ignore error, continue rest validations regardless of result\r\n      if (!childResult && instance.config.ignoreInvalidProperty) {\r\n        result = false;\r\n        ignoreInvalidProperty = true;\r\n      }\r\n    }\r\n  }\r\n\r\n  return {\r\n    result,\r\n    ignoreInvalidProperty,\r\n  };\r\n};\r\n\r\n// Return true if all values including nested are null/undefined\r\n// e.g. For value: { a: { b: null }}, it returns true\r\nconst shouldFilterOut = (value) => {\r\n  if (_.isObject(value)) {\r\n    const hasValidKey = _.some(value, val => !shouldFilterOut(val));\r\n\r\n    return !hasValidKey;\r\n  }\r\n\r\n  return _.isNull(value) || _.isUndefined(value);\r\n};\r\n\r\nconst processObjectWithSchema = ({\r\n  obj,\r\n  schema,\r\n  validatePropertyFunc,\r\n}) => {\r\n  const { result, ignoreInvalidProperty } = validatePropertyFunc({\r\n    propertyValue: obj,\r\n    propertySchema: schema,\r\n  });\r\n\r\n  if (!result && !ignoreInvalidProperty) {\r\n    throw new Error(`Validate property ${schema.name || schema.alias} failed`);\r\n  }\r\n\r\n  // if ignoreInvalidProperty is true, return an empty value so it can be filtered out.\r\n  if (!result) {\r\n    return null;\r\n  }\r\n\r\n  if (_.isObject(obj)) {\r\n    return _.reduce(obj, (memo, val, key) => {\r\n      const childkeySchema = schema.properties[key];\r\n      const newKey = childkeySchema.alias;\r\n\r\n      if (!newKey) {\r\n        throw new Error(`Unsupported! please add metadata to schema for key: ${key}`);\r\n      }\r\n\r\n      const newValue = processObjectWithSchema({\r\n        obj: val,\r\n        schema: childkeySchema,\r\n        validatePropertyFunc,\r\n      });\r\n\r\n      if (shouldFilterOut(newValue)) {\r\n        if (!childkeySchema.nullable) {\r\n          throw new Error(`the value for key ${key} is empty, but from schema, nullable is not allowed`);\r\n        }\r\n\r\n        return memo;\r\n      }\r\n\r\n      return {\r\n        ...memo,\r\n        [newKey]: newValue,\r\n      };\r\n    }, {});\r\n  }\r\n\r\n  return obj;\r\n};\r\n\r\nexport const extractInfoForSerialization = ({ obj, effectKey }) =>\r\n  processObjectWithSchema({\r\n    obj,\r\n    schema: imageAssetSerializeSchema,\r\n    validatePropertyFunc: options => validateProperty({ ...options, effectKey }),\r\n  });\r\n\r\nexport const extractInfoForDeserialization = ({ obj }) =>\r\n  processObjectWithSchema({\r\n    obj,\r\n    schema: imageAssetDeserializeSchema,\r\n    validatePropertyFunc: () => ({ result: true }), // no validators\r\n  });\r\n","import { TypeValidator } from './type-validator';\r\nimport { EnumValidator } from './enum-validator';\r\nimport { CustomValidator } from './custom-validator';\r\nimport { EffectKeyValidator } from './effect-key-validator';\r\n\r\nexport const ConfiguredValidators = [\r\n  TypeValidator,\r\n  EnumValidator,\r\n  CustomValidator,\r\n  EffectKeyValidator,\r\n];\r\n","import _ from 'underscore';\r\nimport { BaseValidator } from './base-validator';\r\n\r\nconst validateObject = val => _.isObject(val);\r\nconst validateNumber = (val, propertySchema) => {\r\n  const num = Number(val);\r\n\r\n  if (_.isNaN(num)) {\r\n    return false;\r\n  }\r\n\r\n  const { minimum, maximum } = propertySchema;\r\n\r\n  return (_.isUndefined(minimum) || num >= minimum)\r\n    && (_.isUndefined(minimum) || num <= maximum);\r\n};\r\nconst validateString = val => _.isString(val) && val.length > 0;\r\n\r\nconst TypeValidateConfig = {\r\n  object: validateObject,\r\n  number: validateNumber,\r\n  string: validateString,\r\n};\r\n\r\nexport class TypeValidator extends BaseValidator {\r\n  constructor(propertySchema) {\r\n    super(propertySchema);\r\n\r\n    const { type, minimum, maximum } = propertySchema;\r\n\r\n    this.type = type;\r\n    this.minimum = minimum;\r\n    this.maximum = maximum;\r\n  }\r\n\r\n  get requiredField() {\r\n    return 'type';\r\n  }\r\n\r\n  internalValidate(propertyValue) {\r\n    const validateFunc = TypeValidateConfig[this.type];\r\n\r\n    if (!validateFunc) {\r\n      throw new Error(`There are no configured validateFunc for this type: ${this.type}`);\r\n    }\r\n\r\n    return validateFunc(propertyValue, this.propertySchema);\r\n  }\r\n}\r\n","import _ from 'underscore';\r\n\r\nexport class BaseValidator {\r\n  constructor(propertySchema) {\r\n    this.propertySchema = propertySchema;\r\n  }\r\n\r\n  get requiredField() {\r\n    throw new Error('requiredField Not implemented');\r\n  }\r\n\r\n  get config() {\r\n    return {\r\n      ignoreInvalidProperty: false,\r\n    };\r\n  }\r\n\r\n  internalValidate() {\r\n    throw new Error('internalValidate Not implemented');\r\n  }\r\n\r\n  enableCheck() {\r\n    return !_.isUndefined(this.propertySchema[this.requiredField]);\r\n  }\r\n\r\n  validate(...args) {\r\n    if (this.enableCheck()) {\r\n      return this.internalValidate(...args);\r\n    }\r\n\r\n    return true;\r\n  }\r\n}\r\n","import _ from 'underscore';\r\nimport { BaseValidator } from './base-validator';\r\n\r\nexport class EnumValidator extends BaseValidator {\r\n  constructor(propertySchema) {\r\n    super(propertySchema);\r\n\r\n    this.enum = propertySchema.enum;\r\n  }\r\n\r\n  get requiredField() {\r\n    return 'enum';\r\n  }\r\n\r\n  internalValidate(propertyValue) {\r\n    return _.contains(this.enum, propertyValue);\r\n  }\r\n}\r\n","import _ from 'underscore';\r\nimport { BaseValidator } from './base-validator';\r\nimport { validateColor } from './custom/validate-color';\r\n\r\nconst RegistedHandlers = {\r\n  color: validateColor,\r\n};\r\n\r\nexport class CustomValidator extends BaseValidator {\r\n  constructor(propertySchema) {\r\n    super(propertySchema);\r\n\r\n    const { custom } = propertySchema;\r\n\r\n    if (_.isString(custom)) {\r\n      this.validateFunc = RegistedHandlers[custom];\r\n    }\r\n  }\r\n\r\n  get requiredField() {\r\n    return 'custom';\r\n  }\r\n\r\n  internalValidate(propertyValue) {\r\n    if (!this.validateFunc) {\r\n      throw new Error('Invalid value for custom key');\r\n    }\r\n\r\n    return this.validateFunc(propertyValue);\r\n  }\r\n}\r\n","import _ from 'underscore';\r\n\r\nconst validateBeam = (str) => {\r\n  const num = Number(str);\r\n\r\n  if (_.isNaN(num)) {\r\n    return false;\r\n  }\r\n\r\n  return num >= 0 && num <= 255;\r\n};\r\n\r\nexport function validateColor(propertyValue) {\r\n  const beams = propertyValue.split(',');\r\n  if (_.size(beams) !== 3) {\r\n    return false;\r\n  }\r\n\r\n  return _.every(beams, validateBeam);\r\n}\r\n","import _ from 'underscore';\r\nimport { BaseValidator } from './base-validator';\r\n\r\nexport class EffectKeyValidator extends BaseValidator {\r\n  constructor(propertySchema) {\r\n    super(propertySchema);\r\n\r\n    this.effectKey = propertySchema.effectKey;\r\n  }\r\n\r\n  get requiredField() {\r\n    return 'effectKey';\r\n  }\r\n\r\n  get config() {\r\n    return {\r\n      ignoreInvalidProperty: true,\r\n    };\r\n  }\r\n\r\n  internalValidate(propertyValue, effectKey) {\r\n    return _.contains(this.effectKey, effectKey);\r\n  }\r\n}\r\n","import _ from 'underscore';\r\nimport { EffectChoiceKey } from '@bingads-webui-campaign/media-common-utils';\r\n\r\n/*\r\nExample valid model:\r\n{\r\n  effectSettings: {\r\n    effectKey: 'xxx',\r\n    effectOptions: {\r\n      backgroundBlur: 30,\r\n      backgroundColor: '91, 113, 129',\r\n      designerEffect: '',\r\n    },\r\n  },\r\n}\r\n*/\r\n// used when serializing\r\nexport const imageAssetSerializeSchema = {\r\n  type: 'object',\r\n  name: 'ImageAssetSerializeSchema',\r\n  properties: {\r\n    effectSettings: {\r\n      type: 'object',\r\n      alias: 'effect',\r\n      nullable: false,\r\n      properties: {\r\n        effectKey: {\r\n          type: 'string',\r\n          alias: 'key',\r\n          name: 'EffectKey',\r\n          nullable: false,\r\n          enum: [\r\n            EffectChoiceKey.DesignerEffects,\r\n            EffectChoiceKey.BackgroundBlur,\r\n            EffectChoiceKey.BackgroundSolidColor,\r\n          ],\r\n        },\r\n        effectOptions: {\r\n          type: 'object',\r\n          alias: 'ops',\r\n          name: 'EffectOptions',\r\n          nullable: false,\r\n          properties: {\r\n            designerEffect: {\r\n              type: 'string',\r\n              alias: 'dsgEft',\r\n              name: 'DesignerEffectName',\r\n              effectKey: [EffectChoiceKey.DesignerEffects],\r\n              nullable: true,\r\n            },\r\n            backgroundBlur: {\r\n              type: 'number',\r\n              alias: 'bgBlur',\r\n              name: 'BackgroundBlurAmount',\r\n              minimum: 1,\r\n              maximum: 100,\r\n              effectKey: [EffectChoiceKey.BackgroundBlur],\r\n              nullable: true,\r\n            },\r\n            backgroundColor: {\r\n              type: 'string',\r\n              alias: 'bgColor',\r\n              name: 'BackgroundColorValue',\r\n              custom: 'color',\r\n              effectKey: [EffectChoiceKey.BackgroundSolidColor],\r\n              nullable: true,\r\n            },\r\n          },\r\n        },\r\n      },\r\n    },\r\n  },\r\n};\r\n\r\nconst invertSchemaAlias = schemaProperties =>\r\n  _.reduce(schemaProperties, (memo, val, key) => {\r\n    const newKey = val.alias;\r\n    const newVal = { alias: key };\r\n    if (val.properties) {\r\n      newVal.properties = invertSchemaAlias(val.properties);\r\n    }\r\n\r\n    return {\r\n      ...memo,\r\n      [newKey]: newVal,\r\n    };\r\n  }, {});\r\n\r\nexport const imageAssetDeserializeSchema = {\r\n  type: 'object',\r\n  name: 'ImageAssetDeserializeSchema',\r\n  properties: invertSchemaAlias(imageAssetSerializeSchema.properties),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__6__;","export * from './src/with-apply-and-close-button-hoc';\r\n","import React from 'react';\r\nimport { extend } from 'underscore';\r\nimport { submitEvent } from '@bingads-webui-universal/accessibility-helper';\r\n\r\nexport const WithApplyAndCloseButton = ({\r\n  onApply,\r\n  onDismiss,\r\n  applyText,\r\n  closeText,\r\n  className,\r\n}) => {\r\n  const renderApply = data => (\r\n    <button\r\n      type=\"button\"\r\n      onClick={() => onApply(data)}\r\n      onKeyDown={event =>\r\n        submitEvent(onApply)(event, extend({ isKeyboardEvent: true }, data))}\r\n      className=\"btn btn-primary\"\r\n    >\r\n      {applyText}\r\n    </button>\r\n  );\r\n  const renderDismiss = data => (\r\n    <button\r\n      type=\"button\"\r\n      onClick={() => onDismiss(data)}\r\n      onKeyDown={event =>\r\n        submitEvent(onDismiss)(event, extend({ isKeyboardEvent: true }, data))}\r\n      className=\"btn btn-default\"\r\n    >\r\n      {closeText}\r\n    </button>\r\n  );\r\n\r\n  return Base => props => (\r\n    <div className={className}>\r\n      <Base renderApply={renderApply} renderDismiss={renderDismiss} {...props} />\r\n    </div>\r\n  );\r\n};\r\n","export { submitEvent } from './src/event-wrappers';\r\n","import { keyCode as KEY_CODES } from '@bingads-webui/keycode';\r\n\r\nexport const wrapKeyDownEvent = availablekeys => handler => ({ keyCode }, ...params) => {\r\n  if (keyCode in availablekeys) {\r\n    handler(...params);\r\n  }\r\n};\r\n\r\nexport const submitEvent = wrapKeyDownEvent({ [KEY_CODES.Enter]: null, [KEY_CODES.Space]: null });\r\n","export * from './src/index';\r\n","export const AdPlacementsGroupType = {\r\n  searchImageAd: 'searchImageAd',\r\n  msanImageAd: 'msanImageAd',\r\n  imageExtension: 'imageExtension',\r\n  perfMax: 'perfMax',\r\n  streamlinedSignup: 'streamlinedSignup',\r\n  adLibrary: 'adLibrary',\r\n};\r\n\r\nexport const AdPlacementsComponentTypes = {\r\n  AdPlacementPreview: 'AdPlacementPreview',\r\n};\r\n","export * from './src/index';\r\n","import React, { useMemo } from 'react';\r\nimport _ from 'underscore';\r\nimport { AdPlacementsComponentTypes } from '@bingads-webui-campaign-react/ad-placement-consts';\r\n\r\nimport { templateParserUtils } from '@bingads-webui-campaign-react/ad-placement-templates';\r\n\r\nimport { AdPlacementPreview, AdPlacementPreviewPropTypes } from './ad-placement-preview';\r\n\r\nconst { getImageTypeForTemplate } = templateParserUtils;\r\n\r\nconst AdPlacementsViewMapping = {\r\n  [AdPlacementsComponentTypes.AdPlacementPreview]: AdPlacementPreview,\r\n};\r\n\r\nconst AdPlacementsViewPropsMapping = {\r\n  [AdPlacementsComponentTypes.AdPlacementPreview]: _.keys(AdPlacementPreviewPropTypes.propTypes),\r\n};\r\n\r\nexport const getAdPlacementElement = ({\r\n  template,\r\n  templateTransformerFunc,\r\n  i18n,\r\n}) => {\r\n  const { componentType } = template;\r\n  const Component = AdPlacementsViewMapping[componentType];\r\n  const componentPropKeys = AdPlacementsViewPropsMapping[componentType];\r\n\r\n  return {\r\n    AdPlacementElement: ({\r\n      // eslint-disable-next-line react/prop-types\r\n      adData,\r\n      // eslint-disable-next-line react/prop-types\r\n      imagesToDisplay,\r\n      // eslint-disable-next-line react/prop-types\r\n      decoratorsData,\r\n    }) => {\r\n      // eslint-disable-next-line react/prop-types\r\n      const imageForTemplate = useMemo(() => _.find(imagesToDisplay, ({ associationType }) => associationType.toLowerCase() === getImageTypeForTemplate(template).toLowerCase()), [imagesToDisplay]);\r\n\r\n      const transformedTemplate = useMemo(() => templateTransformerFunc({\r\n        adData,\r\n        decoratorsData,\r\n        template,\r\n        i18n,\r\n      }), [adData, decoratorsData]);\r\n\r\n      const componentProps = _.pick(transformedTemplate, componentPropKeys);\r\n\r\n      return (\r\n        <Component\r\n          image={imageForTemplate}\r\n          {...componentProps}\r\n        />\r\n      );\r\n    },\r\n  };\r\n};\r\n","import React from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { AdPlacementCardPreview, AdPlacementCardPropTypes } from './ad-placement-card-preview';\r\nimport { getPlacementStyles } from './styles/ad-placement-preview';\r\n\r\nexport const AdPlacementPreviewPropTypes = {\r\n  propTypes: {\r\n    children: PropTypes.node,\r\n    styleOverrides: PropTypes.shape({}),\r\n    showHeaderImage: PropTypes.bool,\r\n    headerImage: PropTypes.string,\r\n    headerImageAlt: PropTypes.string,\r\n    ...AdPlacementCardPropTypes.propTypes,\r\n  },\r\n  defaultProps: {\r\n    children: null,\r\n    styleOverrides: {},\r\n    showHeaderImage: false,\r\n    headerImage: '',\r\n    headerImageAlt: '',\r\n    ...AdPlacementCardPropTypes.defaultProps,\r\n  },\r\n};\r\n\r\nexport const AdPlacementPreview = (props) => {\r\n  const {\r\n    styleOverrides,\r\n    children,\r\n    showHeaderImage,\r\n    headerImage,\r\n    headerImageAlt,\r\n    image,\r\n    showImage,\r\n  } = props;\r\n\r\n  const isIncluded = showImage ? image && image.isIncluded : true;\r\n\r\n  const classes = useDefaultStyles(getPlacementStyles({ styleOverrides, isIncluded }));\r\n\r\n  const cardProps = _.pick(\r\n    props,\r\n    _.keys(AdPlacementCardPropTypes.propTypes)\r\n  );\r\n\r\n  return (\r\n    <div className=\"ad-placement-preview\">\r\n      <div className={classnames('new-responsive-ad-preview-container', classes.placementContainer)}>\r\n        <div className={classnames('card-parent', classes.cardParent)}>\r\n          {\r\n            showHeaderImage &&\r\n            <div className={classnames('header-image', classes.headerImage)}>\r\n              <img src={headerImage} alt={headerImageAlt} />\r\n            </div>\r\n          }\r\n          <AdPlacementCardPreview {...cardProps} />\r\n        </div>\r\n        {children}\r\n      </div>\r\n    </div>\r\n  );\r\n};\r\n\r\nAdPlacementPreview.propTypes = {\r\n  ...AdPlacementPreviewPropTypes.propTypes,\r\n};\r\n\r\nAdPlacementPreview.defaultProps = {\r\n  ...AdPlacementPreviewPropTypes.defaultProps,\r\n};\r\n","import _ from 'underscore';\r\nimport React, { useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { ImageModelPropTypes } from '@bingads-webui-campaign/image-experience-proptypes';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { withI18nConsumer } from '@bingads-webui-react/i18n-context';\r\n\r\nimport {\r\n  AdsLabel,\r\n  BoostDiscover,\r\n  BoostWindows,\r\n  BusinessNameWithAds,\r\n  CallToAction,\r\n  ContactDecorator,\r\n  Description,\r\n  FinalUrl,\r\n  LongHeadline,\r\n  PersonaDecorator,\r\n  ShortHeadline,\r\n  CroppedImageView,\r\n} from './decorators/index';\r\nimport { getPlacementCardStyles } from './styles/ad-placement-card-preview';\r\n\r\nexport const AdPlacementCardPropTypes = {\r\n  propTypes: {\r\n    // data props\r\n    hotspots: PropTypes.arrayOf(PropTypes.shape({\r\n      title: PropTypes.string,\r\n      desc: PropTypes.string,\r\n      actionText: PropTypes.string,\r\n      uri: PropTypes.string,\r\n    })),\r\n    image: ImageModelPropTypes,\r\n    logo: ImageModelPropTypes,\r\n    previewTexts: PropTypes.shape({\r\n      shortHeadline: PropTypes.string,\r\n      longHeadline: PropTypes.string,\r\n      description: PropTypes.string,\r\n      businessName: PropTypes.string,\r\n      url: PropTypes.string,\r\n      callToAction: PropTypes.string,\r\n      displayUrl: PropTypes.string,\r\n    }).isRequired,\r\n    decoratorsData: PropTypes.shape({}),\r\n    styleOverrides: PropTypes.shape({}),\r\n\r\n    // rendering props\r\n    aspectRatio: PropTypes.number,\r\n    dismissText: PropTypes.string,\r\n    imagePreviewHeight: PropTypes.number,\r\n    logoHeight: PropTypes.number,\r\n    previewTypeStringKey: PropTypes.string.isRequired,\r\n    disclaimerMessage: PropTypes.string,\r\n\r\n    // toggle props\r\n    showAction: PropTypes.bool,\r\n    showAdditionalDisclaimer: PropTypes.bool,\r\n    showAdsLabel: PropTypes.bool,\r\n    showAdsLabelInlineWithDescription: PropTypes.bool,\r\n    showAdsLabelWithBusinessName: PropTypes.bool,\r\n    showBoostDiscover: PropTypes.bool,\r\n    showBoostWindows: PropTypes.bool,\r\n    showBusinessNameFirst: PropTypes.bool,\r\n    showBusinessName: PropTypes.bool,\r\n    showDescription: PropTypes.bool,\r\n    showGradient: PropTypes.bool,\r\n    showHotspots: PropTypes.bool,\r\n    showImage: PropTypes.bool,\r\n    showImageGradient: PropTypes.bool,\r\n    showLogo: PropTypes.bool,\r\n    showLongHeadline: PropTypes.bool,\r\n    showMultipleDescription: PropTypes.bool,\r\n    showMultipleLineLongHeadline: PropTypes.bool,\r\n    showPreHeadlineDivider: PropTypes.bool,\r\n    showPreviewTypeString: PropTypes.bool,\r\n    showPostHeadlineDivider: PropTypes.bool,\r\n    showShortHeadline: PropTypes.bool,\r\n    showShortHeadlineMultiline: PropTypes.bool,\r\n    showUrl: PropTypes.bool,\r\n    showUrlMultiline: PropTypes.bool,\r\n    showPersonaDecorator: PropTypes.bool,\r\n    showPhoneAndAddressDecorator: PropTypes.bool,\r\n  },\r\n  defaultProps: {\r\n    image: null,\r\n    hotspots: [],\r\n    logo: null,\r\n    decoratorsData: {},\r\n\r\n    dismissText: '',\r\n    logoHeight: 24,\r\n    aspectRatio: 1,\r\n    imagePreviewHeight: 150,\r\n    disclaimerMessage: '',\r\n\r\n    showAction: false,\r\n    showAdditionalDisclaimer: false,\r\n    showAdsLabel: false,\r\n    showAdsLabelInlineWithDescription: false,\r\n    showAdsLabelWithBusinessName: false,\r\n    showBoostDiscover: false,\r\n    showBoostWindows: false,\r\n    showBusinessNameFirst: false,\r\n    showBusinessName: false,\r\n    showDescription: false,\r\n    showGradient: false,\r\n    showHotspots: false,\r\n    showImage: false,\r\n    showImageGradient: false,\r\n    showLogo: false,\r\n    showLongHeadline: false,\r\n    showMultipleDescription: false,\r\n    showMultipleLineLongHeadline: false,\r\n    showPreHeadlineDivider: false,\r\n    showPreviewTypeString: true,\r\n    showPostHeadlineDivider: false,\r\n    showShortHeadline: false,\r\n    showShortHeadlineMultiline: false,\r\n    showUrl: false,\r\n    showUrlMultiline: false,\r\n  },\r\n};\r\n\r\nclass UnstyledAdPlacementCardPreview extends React.PureComponent {\r\n  constructor(props, context) {\r\n    super(props, context);\r\n\r\n    this.multiLineTextRefs = [\r\n      React.createRef(),\r\n      React.createRef(),\r\n      React.createRef(),\r\n    ];\r\n  }\r\n\r\n  componentDidUpdate() {\r\n    this.multiLineTextRefs.forEach((ref) => {\r\n      if (ref.current) {\r\n        ref.current.processText();\r\n      }\r\n    });\r\n  }\r\n\r\n  render() {\r\n    const {\r\n      showAdditionalDisclaimer,\r\n      showAdsLabelWithBusinessName,\r\n      showShortHeadlineMultiline,\r\n      showMultipleLineLongHeadline,\r\n      showUrlMultiline,\r\n      showImage,\r\n      disclaimerMessage,\r\n      dismissText,\r\n      showHotspots,\r\n      hotspots,\r\n      previewTexts,\r\n      decoratorsData,\r\n      logo,\r\n      showLogo,\r\n      showMultipleDescription,\r\n      classes,\r\n      showBoostDiscover,\r\n      showBoostWindows,\r\n      showGradient,\r\n      showImageGradient,\r\n      showPreviewTypeString,\r\n      previewTypeStringKey,\r\n      styleOverrides,\r\n    } = this.props;\r\n    const srcForCroppedImageView = showImage && this.props.image.FinalSrc;\r\n\r\n    return (\r\n      <div className=\"ad-placement-card-preview\">\r\n        <a\r\n          className={classnames('responsive-ad-preview-content', classes.previewContent)}\r\n          target=\"_blank\"\r\n          rel=\"noopener noreferrer\"\r\n          href={previewTexts.url}\r\n        >\r\n          {\r\n            this.props.showPersonaDecorator &&\r\n            <PersonaDecorator\r\n              data={\r\n                _.defaults(decoratorsData.persona, {\r\n                  sponsoredText: this.props.i18n.getString(_TL_('Sponsored')),\r\n                })\r\n              }\r\n              styleOverrides={styleOverrides}\r\n            />\r\n          }\r\n          <div className={classnames('image-container', classes.imageContainer, showGradient ? classes.gradient : '')}>\r\n            {\r\n                this.props.showAdsLabel &&\r\n                <AdsLabel\r\n                  adsLabelText={this.props.i18n.getString(_TL_('Ad'))}\r\n                  styleOverrides={styleOverrides}\r\n                />\r\n            }\r\n            {\r\n              showImageGradient &&\r\n              <div className={classnames('gradient', classes.imageGradient)} />\r\n            }\r\n            {\r\n              showImage &&\r\n              <CroppedImageView\r\n                resizeImageHeight={this.props.imagePreviewHeight}\r\n                src={srcForCroppedImageView}\r\n                originalWidth={this.props.image.Width}\r\n                originalHeight={this.props.image.Height}\r\n                SourceX={this.props.image.CropSettings.SourceX}\r\n                SourceY={this.props.image.CropSettings.SourceY}\r\n                SourceWidth={this.props.image.CropSettings.SourceWidth}\r\n                SourceHeight={this.props.image.CropSettings.SourceHeight}\r\n                aspectRatio={this.props.aspectRatio}\r\n              />\r\n            }\r\n          </div>\r\n          {\r\n            showBoostDiscover &&\r\n            <BoostDiscover text={this.props.i18n.getString(_TL_('Discover'))} styleOverrides={styleOverrides} />\r\n          }\r\n          {\r\n            showBoostWindows &&\r\n            <BoostWindows\r\n              welcomeText={this.props.i18n.getString(_TL_('Welcome back. Dismiss the lock screen to sign back into Windows.'))}\r\n              timeText={this.props.i18n.getString(_TL_('10:36'))}\r\n              dateText={this.props.i18n.getString(_TL_('Tuesday, October 18'))}\r\n              styleOverrides={styleOverrides}\r\n            />\r\n          }\r\n          {showLogo && logo &&\r\n            <div className=\"logo-container\">\r\n              <CroppedImageView\r\n                resizeImageHeight={this.props.logoHeight}\r\n                src={logo.Src}\r\n                originalWidth={logo.Width}\r\n                originalHeight={logo.Height}\r\n                SourceX={logo.CropSettings.SourceX}\r\n                SourceY={logo.CropSettings.SourceY}\r\n                SourceWidth={logo.CropSettings.SourceWidth}\r\n                SourceHeight={logo.CropSettings.SourceHeight}\r\n                aspectRatio={1}\r\n              />\r\n            </div>\r\n          }\r\n\r\n          {\r\n            showHotspots &&\r\n            hotspots.map((hotspot, index) => (\r\n              // eslint-disable-next-line react/no-array-index-key\r\n              <div className={`hotspot${index}`} key={`${hotspot.title}${index}`}>\r\n                <div className=\"hotspot-title\" >{hotspot.title}</div>\r\n                <div className=\"hotspot-action\" >{hotspot.actionText}</div>\r\n              </div>\r\n            ))\r\n          }\r\n\r\n          <div className={classnames('text-container-apl', classes.textContainer)}>\r\n            {\r\n                this.props.showBusinessNameFirst && this.props.showBusinessName &&\r\n                <BusinessNameWithAds\r\n                  showLabel={showAdsLabelWithBusinessName}\r\n                  i18n={this.props.i18n}\r\n                  businessName={previewTexts.businessName}\r\n                  styleOverrides={styleOverrides}\r\n                />\r\n            }\r\n            {\r\n              this.props.showPreHeadlineDivider &&\r\n              <div className={classnames('pre-headline-divider', classes.preHeadlineDivider)} />\r\n            }\r\n            {\r\n                this.props.showShortHeadline &&\r\n                (\r\n                  <ShortHeadline\r\n                    ref={this.multiLineTextRefs[0]}\r\n                    showShortHeadlineMultiline={showShortHeadlineMultiline}\r\n                    styleOverrides={styleOverrides}\r\n                    shortHeadline={previewTexts.shortHeadline}\r\n                  />\r\n                )\r\n              }\r\n            {\r\n                this.props.showLongHeadline &&\r\n                (\r\n                  <LongHeadline\r\n                    ref={this.multiLineTextRefs[1]}\r\n                    showMultipleLineLongHeadline={showMultipleLineLongHeadline}\r\n                    styleOverrides={styleOverrides}\r\n                    longHeadline={previewTexts.longHeadline}\r\n                  />\r\n                )\r\n            }\r\n            {\r\n              this.props.showPostHeadlineDivider &&\r\n              <div className={classnames('post-headline-divider', classes.postHeadlineDivider)} />\r\n            }\r\n            {\r\n                this.props.showUrl &&\r\n                (\r\n                  <FinalUrl\r\n                    ref={this.multiLineTextRefs[1]}\r\n                    showUrlMultiline={showUrlMultiline}\r\n                    styleOverrides={styleOverrides}\r\n                    finalUrl={previewTexts.url}\r\n                    displayUrl={previewTexts.displayUrl}\r\n                  />\r\n                )\r\n            }\r\n            {\r\n                this.props.showDescription &&\r\n                (\r\n                  <Description\r\n                    ref={this.multiLineTextRefs[2]}\r\n                    showMultipleDescription={showMultipleDescription}\r\n                    showAdsLabel={this.props.showAdsLabelInlineWithDescription}\r\n                    adsLabelText={this.props.i18n.getString(_TL_('Ad'))}\r\n                    styleOverrides={styleOverrides}\r\n                    description={previewTexts.description}\r\n                  />\r\n                )\r\n              }\r\n            {\r\n                this.props.showBusinessName && !this.props.showBusinessNameFirst &&\r\n                <BusinessNameWithAds\r\n                  showLabel={showAdsLabelWithBusinessName}\r\n                  i18n={this.props.i18n}\r\n                  businessName={previewTexts.businessName}\r\n                  styleOverrides={styleOverrides}\r\n                />\r\n            }\r\n            {\r\n                this.props.showAction &&\r\n                previewTexts.callToAction &&\r\n                <CallToAction\r\n                  actionText={previewTexts.callToAction.replace(/([A-Z])/g, ' $1')}\r\n                  dismissText={dismissText}\r\n                  styleOverrides={styleOverrides}\r\n                />\r\n            }\r\n            {\r\n                this.props.showPhoneAndAddressDecorator &&\r\n                <ContactDecorator\r\n                  data={decoratorsData.phoneAndAddress}\r\n                  styleOverrides={styleOverrides}\r\n                />\r\n            }\r\n          </div>\r\n        </a>\r\n        {\r\n          showPreviewTypeString &&\r\n          <div className={classnames('preview-string', classes.previewTypeString)} >\r\n            {previewTypeStringKey}\r\n          </div>\r\n        }\r\n        {\r\n          showAdditionalDisclaimer &&\r\n          <div className={classnames('additional-disclaimer-message', classes.additionalDisclaimer)}>\r\n            {disclaimerMessage}\r\n          </div>\r\n        }\r\n      </div>\r\n    );\r\n  }\r\n}\r\n\r\nUnstyledAdPlacementCardPreview.propTypes = {\r\n  classes: PropTypes.shape({}).isRequired,\r\n  ...AdPlacementCardPropTypes.propTypes,\r\n};\r\n\r\nUnstyledAdPlacementCardPreview.defaultProps = {\r\n  ...AdPlacementCardPropTypes.defaultProps,\r\n};\r\n\r\nexport const AdPlacementCardPreview = (props) => {\r\n  const { styleOverrides } = props;\r\n  // eslint-disable-next-line arrow-body-style\r\n  const StyledComponent = useMemo(() => {\r\n    return withI18nConsumer(withDefaultStyles(UnstyledAdPlacementCardPreview, getPlacementCardStyles({ styleOverrides })));\r\n  }, [styleOverrides]);\r\n\r\n  return (\r\n    <StyledComponent\r\n      {...props}\r\n    />\r\n  );\r\n};\r\n\r\n// just the prop for the Component combining HOCs\r\n// see UnstyledAdPlacementCardPreview for actual component props\r\nAdPlacementCardPreview.propTypes = {\r\n  styleOverrides: PropTypes.shape({}).isRequired,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__115__;","export { AdsLabel } from './ads-label';\r\nexport { BoostDiscover, BoostWindows } from './boost';\r\nexport { BusinessNameWithAds } from './business-name-with-ads';\r\nexport { CallToAction } from './call-to-action';\r\nexport { PersonaDecorator } from './persona';\r\nexport { ContactDecorator } from './contact';\r\nexport {\r\n  Description,\r\n  FinalUrl,\r\n  LongHeadline,\r\n  ShortHeadline,\r\n} from './text-container';\r\nexport { CroppedImageView } from '@bingads-webui-campaign-react/cropped-image-view';\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getAdsLabelStyles } from './styles/ads-label';\r\n\r\nexport const AdsLabel = ({\r\n  adsLabelText,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getAdsLabelStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('ads-label', classes.adsLabel)}>\r\n      {adsLabelText}\r\n    </div>\r\n  );\r\n};\r\n\r\nAdsLabel.propTypes = {\r\n  adsLabelText: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nAdsLabel.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n","/* eslint-disable arrow-body-style */\r\n\r\nimport _ from 'underscore';\r\n\r\nexport const getAdsLabelStyles = ({ styleOverrides }) => (e, { palette = {} }) => {\r\n  return {\r\n    adsLabel: _.extend({\r\n      color: palette.black,\r\n      margin: 7,\r\n      opacity: '90%',\r\n      padding: '1.2px 6px 1.8px 6px',\r\n      position: 'absolute',\r\n      fontSize: 11,\r\n      borderRadius: 5,\r\n      backgroundColor: palette.white,\r\n    }, styleOverrides.adsLabel),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getBoostStyles } from './styles/boost';\r\n\r\nexport const BoostDiscover = ({\r\n  text,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getBoostStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('hardcode-discover', classes.boostDiscover)}>\r\n      {text}\r\n    </div>\r\n  );\r\n};\r\n\r\nBoostDiscover.propTypes = {\r\n  text: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nBoostDiscover.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nexport const BoostWindows = ({\r\n  welcomeText,\r\n  timeText,\r\n  dateText,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getBoostStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('hardcode-time', classes.boostWindows)} >\r\n      <div className=\"welcome\" >{welcomeText}</div>\r\n      <div className=\"time\" >{timeText}</div>\r\n      <div className=\"date\" >{dateText}</div>\r\n    </div>\r\n  );\r\n};\r\n\r\nBoostWindows.propTypes = {\r\n  welcomeText: PropTypes.string.isRequired,\r\n  timeText: PropTypes.string.isRequired,\r\n  dateText: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nBoostWindows.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\n","/* eslint-disable arrow-body-style */\r\nimport _ from 'underscore';\r\n\r\nexport const getBoostStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    boostDiscover: _.extend({\r\n      position: 'absolute',\r\n      left: 0,\r\n      top: 0,\r\n      width: '100%',\r\n      fontSize: 16,\r\n      color: 'black',\r\n      borderBottom: '1px solid #C8C8C8',\r\n      paddingLeft: 10,\r\n    }, styleOverrides.boostDiscover),\r\n    boostWindows: _.extend({\r\n      flexDirection: 'column',\r\n      alignItems: 'center',\r\n      position: 'absolute',\r\n      display: 'flex',\r\n      justifyContent: 'space-between',\r\n      top: 20,\r\n      left: '50%',\r\n      color: 'white',\r\n      transform: 'translate(-50%)',\r\n      '& .welcome': {\r\n        marginBottom: 10,\r\n      },\r\n      '& .time': {\r\n        fontSize: 40,\r\n      },\r\n    }, styleOverrides.boostWindows),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getBusinessNameWithAdsStyles } from './styles/business-name-with-ads';\r\n\r\nexport const BusinessNameWithAds = ({\r\n  businessName,\r\n  i18n,\r\n  onlyIcon,\r\n  showLabel,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getBusinessNameWithAdsStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('business-name-with-ads', classes.businessNameWithAds)}>\r\n      {\r\n        showLabel &&\r\n        <span className=\"adslabel\">\r\n          {i18n.getString(_TL_('Ad'))}\r\n        </span>\r\n      }\r\n      { !onlyIcon &&\r\n        <span className=\"business-name\">\r\n          {businessName}\r\n        </span>\r\n      }\r\n    </div>\r\n  );\r\n};\r\n\r\nBusinessNameWithAds.propTypes = {\r\n  businessName: PropTypes.string.isRequired,\r\n  i18n: PropTypes.shape({\r\n    getString: PropTypes.func.isRequired,\r\n  }).isRequired,\r\n  onlyIcon: PropTypes.bool,\r\n  showLabel: PropTypes.bool,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nBusinessNameWithAds.defaultProps = {\r\n  onlyIcon: false,\r\n  showLabel: false,\r\n  styleOverrides: {},\r\n};\r\n","/* eslint-disable arrow-body-style */\r\n\r\nimport _ from 'underscore';\r\n\r\nexport const getBusinessNameWithAdsStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    businessNameWithAds: _.extend({\r\n      marginTop: 9,\r\n      padding: '1px 0',\r\n      overflow: 'hidden',\r\n      textOverflow: 'ellipsis',\r\n      whiteSpace: 'nowrap',\r\n    }, styleOverrides.businessNameWithAds),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getCallToActionStyles } from './styles/call-to-action';\r\n\r\nexport const CallToAction = ({\r\n  actionText,\r\n  dismissText,\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getCallToActionStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <React.Fragment>\r\n      <button className={classnames('action-button', classes.actionButton)}>\r\n        {actionText}\r\n      </button>\r\n      {\r\n        dismissText &&\r\n        <button className={classnames('dismiss-button', classes.dismissButton)}>\r\n          {dismissText}\r\n        </button>\r\n      }\r\n    </React.Fragment>\r\n  );\r\n};\r\n\r\nCallToAction.propTypes = {\r\n  actionText: PropTypes.string.isRequired,\r\n  dismissText: PropTypes.string,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nCallToAction.defaultProps = {\r\n  dismissText: '',\r\n  styleOverrides: {},\r\n};\r\n","/* eslint-disable arrow-body-style */\r\n\r\nimport _ from 'underscore';\r\n\r\nexport const getCallToActionStyles = ({ styleOverrides }) => (e, { palette = {} }) => {\r\n  return {\r\n    actionButton: _.extend({\r\n      color: palette.white,\r\n      border: 'none',\r\n      opacity: '90%',\r\n      position: 'absolute',\r\n      fontSize: '16px',\r\n      fontWeight: 'bold',\r\n      borderRadius: 32,\r\n      backgroundColor: '#a19f9d',\r\n    }, styleOverrides.actionButton),\r\n    dismissButton: _.extend({\r\n    }, styleOverrides.dismissButton),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getPersonaDecoratorStyles } from './styles/persona';\r\n\r\nexport const PersonaDecorator = ({\r\n  data: {\r\n    name,\r\n    picture,\r\n    sponsoredText,\r\n  },\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getPersonaDecoratorStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('persona-container', classes.container)}>\r\n      <img className={classnames('persona-picture', classes.picture)} src={picture} alt={name} />\r\n      <div>\r\n        <div className={classnames('persona-name', classes.nameLabel)}>{name}</div>\r\n        <div className={classnames('persona-sponsored', classes.sponsoredLabel)}>{sponsoredText}</div>\r\n      </div>\r\n    </div>\r\n  );\r\n};\r\n\r\nPersonaDecorator.propTypes = {\r\n  data: PropTypes.shape({\r\n    name: PropTypes.string.isRequired,\r\n    picture: PropTypes.string.isRequired,\r\n    sponsoredText: PropTypes.string.isRequired,\r\n  }).isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nPersonaDecorator.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n","/* eslint-disable arrow-body-style */\r\n\r\nimport _ from 'underscore';\r\n\r\nexport const getPersonaDecoratorStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    container: _.extend({\r\n      display: 'flex',\r\n      alignItems: 'center',\r\n      gap: '8px',\r\n      padding: '8px',\r\n    }, styleOverrides.personaDecoratorContainer),\r\n    picture: _.extend({\r\n      width: '32px',\r\n      height: '32px',\r\n      borderRadius: '50%',\r\n    }, styleOverrides.personaDecoratorPicture),\r\n    nameLabel: _.extend({\r\n      fontSize: '12px',\r\n      lineHeight: '16px',\r\n      fontWeight: 'bold',\r\n      color: '#323130',\r\n    }, styleOverrides.personaDecoratorNameLabel),\r\n    sponsoredLabel: _.extend({\r\n      fontSize: '10px',\r\n      color: '#323130',\r\n    }, styleOverrides.personaDecoratorSponsoredLabel),\r\n  };\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getContactDecoratorStyles } from './styles/contact';\r\n\r\nimport locationIcon from './assets/contact-address-icon.svg';\r\nimport phoneIcon from './assets/contact-phone-icon.svg';\r\n\r\nexport const ContactDecorator = ({\r\n  data: {\r\n    phone,\r\n    address,\r\n  },\r\n  styleOverrides,\r\n}) => {\r\n  const classes = useDefaultStyles(getContactDecoratorStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('address-and-phone-container', classes.container)}>\r\n      {\r\n        address &&\r\n        <div className={classnames('address-section', classes.section)}>\r\n          <img className={classnames('address-icon', classes.icon)} alt=\"\" src={locationIcon} />\r\n          <span className={classnames('address-label', classes.addressLabel)}>{address}</span>\r\n        </div>\r\n      }\r\n      { phone &&\r\n        <div className={classnames('phone-section', classes.section)}>\r\n          {\r\n            !address &&\r\n            <img className={classnames('phone-icon', classes.icon)} alt=\"\" src={phoneIcon} />\r\n          }\r\n          <div className={classnames('phone-label', classes.phoneLabel)}>{phone}</div>\r\n        </div>\r\n      }\r\n    </div>\r\n  );\r\n};\r\n\r\nContactDecorator.propTypes = {\r\n  data: PropTypes.shape({\r\n    phone: PropTypes.string,\r\n    address: PropTypes.string,\r\n  }),\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nContactDecorator.defaultProps = {\r\n  data: {},\r\n  styleOverrides: {},\r\n};\r\n","/* eslint-disable arrow-body-style */\r\n\r\nimport _ from 'underscore';\r\n\r\nexport const getContactDecoratorStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    container: _.extend({\r\n      display: 'flex',\r\n      gap: '8px',\r\n      alignItems: 'center',\r\n      marginTop: '8px',\r\n    }, styleOverrides.phoneAndAddressDecoratorContainer),\r\n    section: _.extend({\r\n      display: 'flex',\r\n      alignItems: 'center',\r\n      gap: '4px',\r\n    }, styleOverrides.phoneAndAddressDecoratorSection),\r\n    addressLabel: _.extend({\r\n      fontSize: '13px',\r\n      lineHeight: '16px',\r\n      color: '#001BA0',\r\n    }, styleOverrides.phoneAndAddressDecoratorAddressLabel),\r\n    phoneLabel: _.extend({\r\n      fontSize: '13px',\r\n      lineHeight: '16px',\r\n      color: '#605e5c',\r\n    }, styleOverrides.phoneAndAddressDecoratorPhoneLabel),\r\n    icon: _.extend({\r\n      display: 'inline-block',\r\n      height: '16px',\r\n      width: '16px',\r\n      verticalAlign: 'text-top',\r\n    }, styleOverrides.phoneAndAddressDecoratorIcon),\r\n  };\r\n};\r\n","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/contact-address-icon.26b44770.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/contact-phone-icon.e52b55d6.svg\";","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { MultiLineEllipsisText } from '@bingads-webui-react/multiline-ellipsis';\r\n\r\nimport { AdsLabel } from './ads-label';\r\n\r\nimport { getDescriptionStyles } from './styles/description';\r\nimport { getFinalUrlStyles } from './styles/final-url';\r\nimport { getLongHeadlineStyles } from './styles/long-headline';\r\nimport { getShortHeadlineStyles } from './styles/short-headline';\r\n\r\nconst TextContainer = React.forwardRef(({\r\n  className,\r\n  showMultiline,\r\n  text,\r\n}, ref) => (\r\n  showMultiline ?\r\n    <MultiLineEllipsisText\r\n      ref={ref}\r\n      className={className}\r\n      text={text}\r\n    /> : (\r\n      <div className={className}>\r\n        {text}\r\n      </div>\r\n    )\r\n));\r\n\r\nTextContainer.propTypes = {\r\n  className: PropTypes.string.isRequired,\r\n  showMultiline: PropTypes.bool.isRequired,\r\n  text: PropTypes.string.isRequired,\r\n};\r\n\r\nexport const Description = React.forwardRef(({\r\n  styleOverrides,\r\n  showMultipleDescription,\r\n  description,\r\n  showAdsLabel,\r\n  adsLabelText,\r\n}, ref) => {\r\n  const classes = useDefaultStyles(getDescriptionStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <div className={classnames('description-parent', classes.descriptionParent)}>\r\n      {\r\n        showAdsLabel &&\r\n        <AdsLabel\r\n          adsLabelText={adsLabelText}\r\n          styleOverrides={styleOverrides}\r\n        />\r\n      }\r\n      <TextContainer\r\n        ref={ref}\r\n        showMultiline={showMultipleDescription}\r\n        className={classnames('description', classes.description)}\r\n        text={description}\r\n      />\r\n    </div>\r\n  );\r\n});\r\n\r\nDescription.propTypes = {\r\n  showMultipleDescription: PropTypes.bool.isRequired,\r\n  description: PropTypes.string.isRequired,\r\n  showAdsLabel: PropTypes.bool,\r\n  adsLabelText: PropTypes.string,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nDescription.defaultProps = {\r\n  styleOverrides: {},\r\n  showAdsLabel: false,\r\n  adsLabelText: '',\r\n};\r\n\r\n\r\nexport const FinalUrl = React.forwardRef(({\r\n  styleOverrides,\r\n  showUrlMultiline,\r\n  finalUrl,\r\n  displayUrl,\r\n}, ref) => {\r\n  const classes = useDefaultStyles(getFinalUrlStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <TextContainer\r\n      ref={ref}\r\n      showMultiline={showUrlMultiline}\r\n      className={classnames('final-url', classes.finalUrl)}\r\n      text={displayUrl || finalUrl}\r\n    />\r\n  );\r\n});\r\n\r\nFinalUrl.propTypes = {\r\n  showUrlMultiline: PropTypes.bool.isRequired,\r\n  finalUrl: PropTypes.string.isRequired,\r\n  displayUrl: PropTypes.string,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nFinalUrl.defaultProps = {\r\n  displayUrl: null,\r\n  styleOverrides: {},\r\n};\r\n\r\nexport const LongHeadline = React.forwardRef(({\r\n  styleOverrides,\r\n  showMultipleLineLongHeadline,\r\n  longHeadline,\r\n}, ref) => {\r\n  const classes = useDefaultStyles(getLongHeadlineStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <TextContainer\r\n      ref={ref}\r\n      showMultiline={showMultipleLineLongHeadline}\r\n      className={classnames('long-headline', classes.longHeadline)}\r\n      text={longHeadline}\r\n    />\r\n  );\r\n});\r\n\r\nLongHeadline.propTypes = {\r\n  showMultipleLineLongHeadline: PropTypes.bool.isRequired,\r\n  longHeadline: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nLongHeadline.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n\r\nexport const ShortHeadline = React.forwardRef(({\r\n  styleOverrides,\r\n  showShortHeadlineMultiline,\r\n  shortHeadline,\r\n}, ref) => {\r\n  const classes = useDefaultStyles(getShortHeadlineStyles({ styleOverrides }));\r\n\r\n  return (\r\n    <TextContainer\r\n      ref={ref}\r\n      showMultiline={showShortHeadlineMultiline}\r\n      className={classnames('short-headline', classes.shortHeadline)}\r\n      text={shortHeadline}\r\n    />\r\n  );\r\n});\r\n\r\nShortHeadline.propTypes = {\r\n  showShortHeadlineMultiline: PropTypes.bool.isRequired,\r\n  shortHeadline: PropTypes.string.isRequired,\r\n  styleOverrides: PropTypes.shape({}),\r\n};\r\n\r\nShortHeadline.defaultProps = {\r\n  styleOverrides: {},\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__132__;","/* eslint-disable arrow-body-style */\r\nimport _ from 'underscore';\r\n\r\nexport const getDescriptionStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    description: _.extend({\r\n    }, styleOverrides.description),\r\n    descriptionParent: _.extend({\r\n    }, styleOverrides.descriptionParent),\r\n  };\r\n};\r\n","/* eslint-disable arrow-body-style */\r\nimport _ from 'underscore';\r\n\r\nexport const getFinalUrlStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    finalUrl: _.extend({\r\n    }, styleOverrides.finalUrl),\r\n  };\r\n};\r\n","/* eslint-disable arrow-body-style */\r\nimport _ from 'underscore';\r\n\r\nexport const getLongHeadlineStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    longHeadline: _.extend({\r\n    }, styleOverrides.longHeadline),\r\n  };\r\n};\r\n","/* eslint-disable arrow-body-style */\r\nimport _ from 'underscore';\r\n\r\nexport const getShortHeadlineStyles = ({ styleOverrides }) => () => {\r\n  return {\r\n    shortHeadline: _.extend({\r\n      fontWeight: 200,\r\n      paddingBottom: '5px',\r\n    }, styleOverrides.shortHeadline),\r\n  };\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__137__;","import _ from 'underscore';\r\n\r\nexport const getPlacementCardStyles = ({ styleOverrides }) => () => {\r\n  const overrides = _.pick(styleOverrides, [\r\n    'adsLabel',\r\n    'gradient',\r\n    'imageContainer',\r\n    'imageGradient',\r\n    'previewContent',\r\n    'previewTypeString',\r\n    'textContainer',\r\n    'preHeadlineDivider',\r\n    'postHeadlineDivider',\r\n    'additionalDisclaimer',\r\n  ]);\r\n\r\n  return {\r\n    gradient: _.extend({\r\n    }, overrides.gradient),\r\n    imageContainer: _.extend({}, overrides.imageContainer),\r\n    imageGradient: _.extend({\r\n    }, overrides.imageGradient),\r\n    previewContent: _.extend({\r\n      display: 'block',\r\n      position: 'relative',\r\n      boxSizing: 'content-box',\r\n      overflow: 'hidden',\r\n      boxShadow: '0px 0.511px 1.533px rgb(0 0 0 / 10%), 0px 2.72533px 6.132px rgb(0 0 0 / 13%)',\r\n      borderRadius: 5.11,\r\n      background: '#fff',\r\n      margin: 'auto',\r\n      top: 0,\r\n    }, overrides.previewContent),\r\n    previewTypeString: _.extend({\r\n      left: 0,\r\n      width: '100%',\r\n      position: 'absolute',\r\n      textAlign: 'center',\r\n      paddingTop: 12,\r\n      fontSize: '14px',\r\n      bottom: 40,\r\n      lineHeight: '20px',\r\n    }, overrides.previewTypeString),\r\n    textContainer: _.extend({\r\n      fontSize: '10px',\r\n      lineHeight: '16px',\r\n    }, overrides.textContainer),\r\n    preHeadlineDivider: _.extend({}, overrides.preHeadlineDivider),\r\n    postHeadlineDivider: _.extend({}, overrides.postHeadlineDivider),\r\n    additionalDisclaimer: _.extend({\r\n      fontSize: 12,\r\n      lineHeight: '20px',\r\n      textAlign: 'left',\r\n      bottom: 0,\r\n      padding: '0 24px',\r\n      position: 'absolute',\r\n      width: '100%',\r\n      left: 0,\r\n    }, overrides.additionalDisclaimer),\r\n  };\r\n};\r\n","import _ from 'underscore';\r\n\r\nexport const getPlacementStyles = ({ styleOverrides, isIncluded }) => () => {\r\n  const overrides = _.pick(styleOverrides, 'placementContainer', 'headerImage', 'cardParent');\r\n\r\n  return {\r\n    placementContainer: _.extend({\r\n      flexGrow: 1,\r\n      display: 'flex',\r\n      flexDirection: 'column',\r\n      alignItems: 'center',\r\n      opacity: isIncluded ? '100%' : '50%',\r\n    }, overrides.placementContainer),\r\n    cardParent: _.extend({\r\n    }, overrides.cardParent),\r\n    headerImage: _.extend({\r\n    }, overrides.headerImage),\r\n  };\r\n};\r\n","export * from './src/index';\r\n","export { getCommonPreviewContainerStyles } from './common-preview-container-styles';\r\nexport { getCrudAdImagePreviewStyles } from './crud-ad-image-preview-styles';\r\nexport { getMsanPreviewStyles } from './msan-preview-styles';\r\n","// originally from image-experience/imageCommonStyles, so common across legacy UI and ui-next\r\n\r\nexport const getCommonPreviewContainerStyles = () => ({\r\n  '& .new-responsive-ad-preview-container': {\r\n    fontFamily: '\"Segoe UI\",\"Segoe WP\",Arial,Sans-Serif',\r\n    fontSize: 10,\r\n    height: 620,\r\n    position: 'relative',\r\n  },\r\n  '& .new-responsive-ad-preview-container .responsive-ad-preview-content': {\r\n    boxSizing: 'unset',\r\n    position: 'absolute',\r\n    top: '47%',\r\n    left: '50%',\r\n    transform: 'translate(-50%, -50%)',\r\n    margin: '0',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .preview-type-string': {\r\n    position: 'absolute',\r\n    bottom: 75,\r\n    fontSize: 12,\r\n    textAlign: 'center',\r\n    width: '100%',\r\n  },\r\n  '& .preview-section': {\r\n    border: '1px solid #C8C8C8',\r\n    padding: '20px 24px',\r\n\r\n    '& .preview-section-title': {\r\n      fontSize: 18,\r\n      fontWeight: 'normal',\r\n      lineHeight: '24px',\r\n    },\r\n  },\r\n  '& .disclaimer-info, & .additional-disclaimer': {\r\n    fontSize: 12,\r\n    lineHeight: '20px',\r\n    textAlign: 'left',\r\n  },\r\n  '& .disclaimer-info': {\r\n    padding: '0 24px 20px 24px',\r\n  },\r\n\r\n  '& .additional-disclaimer': {\r\n    bottom: 0,\r\n    padding: '0 24px',\r\n  },\r\n\r\n  '& .panel-content': {\r\n    '@media screen and (max-width: 1400px)': {\r\n      maxWidth: '90%',\r\n    },\r\n  },\r\n});\r\n","// originally from crud-ad-style in ui-next/common-styles\r\n\r\nexport const getCrudAdImagePreviewStyles = (_, { palette = {}, iconFontFamily = 'MsAds MDL2 Assets' }) => ({\r\n  '& .new-preview-carousel-container': {\r\n    border: '1px solid #C8C8C8',\r\n    margin: 0,\r\n    width: '100%',\r\n    minWidth: 669,\r\n\r\n    '& .preview-header': {\r\n      display: 'flex',\r\n      flexDirection: 'row',\r\n      alignItems: 'center',\r\n\r\n      '& .ad-preview-title.with-additional-tag': {\r\n        marginRight: 8,\r\n        display: 'inline-block',\r\n        flexGrow: 0,\r\n      },\r\n\r\n      '& .flex-grow': {\r\n        flexGrow: 1,\r\n      },\r\n\r\n      '& .ad-preview-actions.inline-title': {\r\n        display: 'inline-block',\r\n        flexGrow: 0,\r\n        marginRight: 16,\r\n      },\r\n    },\r\n\r\n    '& .ad-preview-title': {\r\n      fontSize: 18,\r\n      fontWeight: 'normal',\r\n      lineHeight: '24px',\r\n      margin: '20px 24px 16px 24px',\r\n      '&.with-additional-tag': {\r\n        marginRight: 8,\r\n        display: 'inline-block',\r\n      },\r\n    },\r\n\r\n    '& .ad-preview-actions': {\r\n      textAlign: 'center',\r\n\r\n      '& span.action-label': {\r\n        fontSize: 16,\r\n        lineHeight: 2,\r\n        marginRight: 16,\r\n      },\r\n    },\r\n\r\n    '& .carousel-inner': {\r\n      paddingBottom: 64,\r\n      '& > .item.active': {\r\n        paddingLeft: 24,\r\n        paddingRight: 24,\r\n      },\r\n    },\r\n\r\n    '& ol.carousel-indicators': {\r\n      position: 'absolute',\r\n      bottom: 0,\r\n      left: 0,\r\n      margin: '20px 24px',\r\n      width: 'auto',\r\n\r\n      '& li': {\r\n        background: 'none',\r\n        border: '1px solid #605E5C',\r\n        borderRadius: 10,\r\n        margin: '0 10px 0 0',\r\n        height: 10,\r\n        width: 10,\r\n      },\r\n\r\n      '& li.active': {\r\n        background: palette.themePrimary,\r\n        border: `1px solid ${palette.themePrimary}`,\r\n      },\r\n    },\r\n\r\n    '& .carousel-controls': {\r\n      display: 'none',\r\n    },\r\n\r\n    '& .carousel-control': {\r\n      color: palette.themePrimary,\r\n      position: 'absolute',\r\n      left: 'auto',\r\n      top: 'auto',\r\n      right: 0,\r\n      bottom: 0,\r\n      height: 32,\r\n      width: 20,\r\n      margin: '20px 24px',\r\n      textShadow: 'none',\r\n\r\n      '&:focus': {\r\n        outline: `1px solid ${palette.neutralSecondary}`,\r\n      },\r\n\r\n      '&.left': {\r\n        marginRight: 76,\r\n      },\r\n\r\n      '& .glyphicon-chevron-left, & .glyphicon-chevron-right': {\r\n        fontFamily: iconFontFamily,\r\n        position: 'relative',\r\n        top: 'auto',\r\n        right: 'auto',\r\n        bottom: 'auto',\r\n        left: 'auto',\r\n        margin: 0,\r\n        fontSize: 16,\r\n        lineHeight: 1,\r\n        verticalAlign: 0,\r\n      },\r\n    },\r\n\r\n    '& .new-carousel-navigation': {\r\n      '& .carousel-control.left': {\r\n        position: 'absolute',\r\n        left: 0,\r\n        marginLeft: 15,\r\n        bottom: -7,\r\n      },\r\n      '& .carousel-control.right': {\r\n        position: 'absolute',\r\n        left: 0,\r\n        marginLeft: 155,\r\n        bottom: -7,\r\n      },\r\n      '& .carousel-indicators': {\r\n        left: 20,\r\n      },\r\n    },\r\n\r\n    '& .new-responsive-ad-preview-container': {\r\n      height: 500,\r\n      overflow: 'hidden',\r\n\r\n      '& .responsive-ad-preview-content': {\r\n        border: '1px solid #C8C8C8',\r\n\r\n        '& .ad-logo': {\r\n          width: 'auto',\r\n          padding: '0 4px',\r\n          marginRight: 4,\r\n\r\n          '& p': {\r\n            margin: 0,\r\n            position: 'relative',\r\n            top: 0,\r\n          },\r\n        },\r\n\r\n        '& .business-name': {\r\n          height: 'auto',\r\n          padding: 0,\r\n        },\r\n      },\r\n\r\n      '& .preview-type-string': {\r\n        bottom: 50,\r\n        fontSize: 14,\r\n        lineHeight: '20px',\r\n        paddingTop: 12,\r\n      },\r\n\r\n      '& .video-ad-preview-type-name': {\r\n        fontSize: 22,\r\n        position: 'absolute',\r\n        bottom: 20,\r\n        transform: 'translateX(-50%)',\r\n        left: '50%',\r\n      },\r\n    },\r\n\r\n    '& .new-responsive-ad-preview-container.preview-16-9-homepage, & .new-responsive-ad-preview-container.preview-16-9-infopane': {\r\n      '& .responsive-video-ad-preview-content': {\r\n        boxShadow: '0px 1.6px 3.6px rgba(0, 0, 0, 0.13), 0px 0px 2.9px rgba(0, 0, 0, 0.11)',\r\n      },\r\n      '& .responsive-ad-preview-content': {\r\n        '& > div > div:nth-child(3)': {\r\n          color: 'white',\r\n          '& i': {\r\n            marginTop: 12,\r\n            marginBottom: 12,\r\n          },\r\n          '& i:first-child': {\r\n            marginLeft: 16,\r\n          },\r\n          '& i:last-child': {\r\n            marginRight: 16,\r\n          },\r\n          '& .ms-Slider-container': {\r\n            marginLeft: 16,\r\n            marginRight: 16,\r\n          },\r\n        },\r\n      },\r\n      '& .video-ad-preview-shadow': {\r\n        background: 'linear-gradient(transparent, black)',\r\n        position: 'absolute',\r\n        bottom: 0,\r\n        height: 150,\r\n        width: '100%',\r\n        pointerEvents: 'none',\r\n        transition: 'opacity 0.3s',\r\n      },\r\n      // Video control styles\r\n      '& video::-webkit-media-controls-panel': {\r\n        background: '0 0',\r\n      },\r\n      '& video::-webkit-media-controls-fullscreen-button': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .text-container': {\r\n        position: 'absolute',\r\n        marginBottom: 50,\r\n        color: 'white',\r\n        '& .long-headline .multi-line-processed-text': {\r\n          fontSize: 28,\r\n          lineHeight: '34px',\r\n        },\r\n        '& .business-name-with-ads': {\r\n          marginTop: 13,\r\n          '& .adslabel': {\r\n            fontSize: 10,\r\n            borderRadius: '4px',\r\n            background: '#107C10',\r\n            height: 16,\r\n            padding: '2px 4px 2px 4px',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .new-responsive-ad-preview-container.preview-16-9-inarticlead': {\r\n      '& .responsive-video-ad-preview-content': {\r\n        boxShadow: '0px 1.6px 3.6px rgba(0, 0, 0, 0.13), 0px 0px 2.9px rgba(0, 0, 0, 0.11)',\r\n      },\r\n      '& .responsive-ad-preview-content': {\r\n        '& > div > div:nth-child(3)': {\r\n          color: 'white',\r\n          '& i': {\r\n            marginTop: 12,\r\n            marginBottom: 12,\r\n          },\r\n          '& i:first-child': {\r\n            marginLeft: 16,\r\n          },\r\n          '& i:last-child': {\r\n            marginRight: 16,\r\n          },\r\n          '& .ms-Slider-container': {\r\n            marginLeft: 16,\r\n            marginRight: 16,\r\n          },\r\n        },\r\n      },\r\n      // Video control styles\r\n      '& video::-webkit-media-controls-current-time-display, & video::-webkit-media-controls-time-remaining-display, & video::-webkit-media-controls-fullscreen-button': {\r\n        display: 'none',\r\n      },\r\n\r\n      '& .text-container': {\r\n        padding: 8,\r\n        '& .long-headline ': {\r\n          '& .multi-line-processed-text': {\r\n            fontSize: 14,\r\n            lineHeight: '20px',\r\n            color: '#2B2B2B',\r\n          },\r\n        },\r\n        '& .business-name-with-ads': {\r\n          position: 'absolute',\r\n          bottom: 8,\r\n          '& .adslabel': {\r\n            fontSize: 10,\r\n            borderRadius: '4px',\r\n            background: '#107C10',\r\n            height: 16,\r\n            padding: '2px 4px 2px 4px',\r\n          },\r\n          '& .business-name': {\r\n            color: '#555555',\r\n          },\r\n        },\r\n      },\r\n    },\r\n\r\n    '& .disclaimer-info, & .additional-disclaimer': {\r\n      fontSize: 12,\r\n      lineHeight: '20px',\r\n      textAlign: 'left',\r\n    },\r\n\r\n    '& .disclaimer-info': {\r\n      padding: '0 24px 20px 24px',\r\n    },\r\n\r\n    '& .additional-disclaimer': {\r\n      bottom: 0,\r\n      padding: '0 24px',\r\n    },\r\n\r\n    '& button.view-placements': {\r\n      position: 'absolute',\r\n      right: 20,\r\n      bottom: 70,\r\n    },\r\n    '& button.view-placements .iconba': {\r\n      top: 1,\r\n      fontSize: 16,\r\n    },\r\n  },\r\n});\r\n","// originally from edit-image-common-style in ui-next/common-styles\r\n\r\nexport const getMsanPreviewStyles = () => ({\r\n  '& .new-responsive-ad-preview-container .additional-disclaimer': {\r\n    position: 'absolute',\r\n    bottom: 35,\r\n    fontSize: 12,\r\n    textAlign: 'center',\r\n    width: '100%',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container': {\r\n    bottom: 25,\r\n    left: 20,\r\n    fontSize: 10,\r\n    lineHeight: '16px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .long-headline': {\r\n    overflow: 'hidden',\r\n    fontWeight: '200',\r\n    paddingBottom: 1,\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .short-headline': {\r\n    fontWeight: '200',\r\n    fontSize: 20,\r\n    paddingBottom: 5,\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .business-name-with-ads': {\r\n    marginTop: 9,\r\n    padding: '1px 0',\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n  },\r\n  '& .new-responsive-ad-preview-container .text-container .business-name-with-ads .business-name': {\r\n    fontSize: 11,\r\n    lineHeight: '1.364',\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container, .new-responsive-ad-preview-container .edge-single-carousel .text-container, .new-responsive-ad-preview-container .msn-double-carousel .text-container, .new-responsive-ad-preview-container .edge-medium-headline .text-container': {\r\n    position: 'absolute',\r\n    color: '#bebebe',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .long-headline, .new-responsive-ad-preview-container .edge-medium-carousel .text-container .long-headline': {\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-single-carousel .text-container .short-headline, .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline, .new-responsive-ad-preview-container .edge-medium-headline .text-container .short-headline': {\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel .gradient::after': {\r\n    display: 'block',\r\n    position: 'relative',\r\n    backgroundImage: 'linear-gradient(to bottom, transparent 0, black 100%)',\r\n    marginTop: -250,\r\n    height: 280,\r\n    width: '100%',\r\n    content: '\\'\\'',\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .gradient::after': {\r\n    display: 'block',\r\n    position: 'relative',\r\n    backgroundImage: 'linear-gradient(to bottom, transparent 0, rgb(46, 46, 46) 100%)',\r\n    marginTop: -279,\r\n    height: 280,\r\n    width: '100%',\r\n    content: '\\'\\'',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover, .new-responsive-ad-preview-container .edge-single-carousel:hover, .new-responsive-ad-preview-container .msn-double-carousel:hover, .new-responsive-ad-preview-container .edge-medium-headline:hover': {\r\n    cursor: 'pointer',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .long-headline, .new-responsive-ad-preview-container .msn-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .edge-single-carousel:hover .short-headline, .new-responsive-ad-preview-container .msn-double-carousel:hover .short-headline': {\r\n    textDecoration: 'underline',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-single-carousel:hover .gradient::after, .new-responsive-ad-preview-container .msn-double-carousel:hover .gradient::after, .new-responsive-ad-preview-container .edge-medium-headline:hover .gradient::after': {\r\n    marginTop: -450,\r\n    height: 480,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide, .new-responsive-ad-preview-container .msn-medium-headline, .new-responsive-ad-preview-container .msn-in-article, .new-responsive-ad-preview-container .msn-small-headline, .new-responsive-ad-preview-container .audience-network-square-image, .new-responsive-ad-preview-container .mobile-web-outlook': {\r\n    margin: 'auto',\r\n    background: '#fff',\r\n    border: 'solid',\r\n    borderWidth: 'thin',\r\n    color: '#ddd',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container, .new-responsive-ad-preview-container .msn-medium-headline .text-container, .new-responsive-ad-preview-container .msn-in-article .text-container, .new-responsive-ad-preview-container .msn-small-headline .text-container, .new-responsive-ad-preview-container .audience-network-square-image .text-container, .new-responsive-ad-preview-container .mobile-web-outlook .text-container': {\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-medium-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-in-article .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .msn-small-headline .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .audience-network-square-image .text-container .business-name-with-ads .business-name, .new-responsive-ad-preview-container .mobile-web-outlook .text-container .business-name-with-ads .business-name': {\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel': {\r\n    width: 622,\r\n    height: 368,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline': {\r\n    width: 575,\r\n    height: 80,\r\n    fontSize: 28,\r\n    lineHeight: '1.214',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-single-carousel .text-container .long-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel': {\r\n    width: 624,\r\n    height: 350,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline': {\r\n    height: 73,\r\n    fontSize: 28,\r\n    lineHeight: '33.99px',\r\n    width: 590,\r\n    marginBottom: 20,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-single-carousel .text-container .long-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel': {\r\n    width: 310,\r\n    height: 333,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline': {\r\n    fontSize: 20,\r\n    lineHeight: '1.3',\r\n    height: 54,\r\n    width: 280,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-double-carousel .text-container .short-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide': {\r\n    width: 382,\r\n    height: 364,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container': {\r\n    padding: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .long-headline': {\r\n    fontSize: 18,\r\n    lineHeight: '1.2',\r\n    height: 60,\r\n    position: 'relative',\r\n    top: -6,\r\n    color: '#207697',\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-wide .text-container .description': {\r\n    height: 45,\r\n    margin: '5px 0 10px 0',\r\n    fontSize: 14,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article': {\r\n    width: 300,\r\n    height: 364,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container': {\r\n    height: 98,\r\n    padding: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container .long-headline': {\r\n    fontSize: 15,\r\n    lineHeight: '1.2',\r\n    height: 60,\r\n    position: 'relative',\r\n    top: -6,\r\n    overflow: 'hidden',\r\n    color: '#207697',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-in-article .text-container .description': {\r\n    height: 45,\r\n    margin: '5px 0 10px 0',\r\n    fontSize: 14,\r\n    color: '#333',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline': {\r\n    width: 300,\r\n    height: 296,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline .text-container': {\r\n    height: 98,\r\n    padding: '15px 13px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-medium-headline .text-container .long-headline': {\r\n    fontSize: 15,\r\n    lineHeight: '1.467',\r\n    height: 47,\r\n    position: 'relative',\r\n    top: -6,\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .text-container .long-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline': {\r\n    width: 300,\r\n    height: 304,\r\n    backgroundColor: 'rgb(46, 46, 46)',\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .text-container .short-headline .multi-line-processed-text': {\r\n    position: 'absolute',\r\n    bottom: 30,\r\n  },\r\n  '& .new-responsive-ad-preview-container .edge-medium-headline .text-container .long-headline': {\r\n    fontSize: 20,\r\n    lineHeight: '1.3',\r\n    height: 54,\r\n    color: 'white',\r\n    width: 280,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image': {\r\n    width: 300,\r\n    height: 90,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image .image-container': {\r\n    float: 'left',\r\n    transform: 'none',\r\n    width: 80,\r\n    height: 75,\r\n    margin: 8,\r\n  },\r\n  '& .new-responsive-ad-preview-container .audience-network-square-image .short-headline': {\r\n    fontWeight: '600',\r\n    fontSize: 13,\r\n    lineHeight: '1.384',\r\n    height: 45,\r\n    margin: '8px 8px 0 8px',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline': {\r\n    width: 300,\r\n    height: 90,\r\n    padding: 3,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline .image-container': {\r\n    float: 'left',\r\n    transform: 'none',\r\n    width: 100,\r\n    height: 75,\r\n    margin: 8,\r\n  },\r\n  '& .new-responsive-ad-preview-container .msn-small-headline .long-headline': {\r\n    fontWeight: '600',\r\n    fontSize: 13,\r\n    lineHeight: '1.384',\r\n    height: 52,\r\n    margin: '4px 8px 0 8px',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook': {\r\n    margin: '25px auto 0 auto',\r\n    background: '#fff',\r\n    border: 'solid',\r\n    borderWidth: 'thin',\r\n    color: '#ddd',\r\n    height: 25,\r\n    width: 800,\r\n    marginTop: 25,\r\n    paddingLeft: 25,\r\n    whiteSpace: 'nowrap',\r\n    overflow: 'hidden',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo, .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow, .new-responsive-ad-preview-container .web-desktop-outlook .short-headline, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator, .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .business-name': {\r\n    display: 'inline-block',\r\n    padding: 4,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo': {\r\n    verticalAlign: 'middle',\r\n    backgroundColor: 'blue',\r\n    width: 20,\r\n    borderRadius: 4,\r\n    height: 13,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .ad-logo p': {\r\n    position: 'absolute',\r\n    top: 3,\r\n    fontSize: 10,\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .business-name': {\r\n    marginRight: 40,\r\n    color: 'black',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .down-arrow': {\r\n    border: 'solid gray',\r\n    borderWidth: '0 1.5px 1.5px 0',\r\n    display: 'inline-block',\r\n    padding: 2,\r\n    transform: 'rotate(45deg) translateY(-3px)',\r\n    W: 'rotate(45deg) translateY(-3px)',\r\n    marginRight: 10,\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .short-headline': {\r\n    color: 'blue',\r\n  },\r\n  '& .new-responsive-ad-preview-container .web-desktop-outlook .description, .new-responsive-ad-preview-container .web-desktop-outlook .description-separator': {\r\n    color: 'gray',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook': {\r\n    width: 340,\r\n    height: 80,\r\n    padding: '5px 10px 5px 15px',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo, .new-responsive-ad-preview-container .mobile-web-outlook .business-name': {\r\n    display: 'inline-block',\r\n    padding: 4,\r\n    height: 30,\r\n    fontSize: 20,\r\n    verticalAlign: 'middle',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo': {\r\n    verticalAlign: 'middle',\r\n    backgroundColor: '#006ed4',\r\n    width: 20,\r\n    borderRadius: 4,\r\n    height: 15,\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .ad-logo p': {\r\n    position: 'absolute',\r\n    top: 11.5,\r\n    fontSize: 10,\r\n    color: 'white',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .business-name': {\r\n    color: 'black',\r\n    paddingTop: 6,\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .short-headline': {\r\n    color: '#1081d9',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .description': {\r\n    color: 'gray',\r\n    padding: '0',\r\n  },\r\n  '& .new-responsive-ad-preview-container .mobile-web-outlook .description, .new-responsive-ad-preview-container .mobile-web-outlook .short-headline': {\r\n    fontSize: 13,\r\n    overflow: 'hidden',\r\n    textOverflow: 'ellipsis',\r\n    whiteSpace: 'nowrap',\r\n    marginTop: 2,\r\n  },\r\n});\r\n"],"sourceRoot":""}