{"version":3,"file":"ShopifyPage-BBrZpKqr.js","sources":["../../../node_modules/@shopify/css-utilities/build/esm/variation-name.mjs","../../../node_modules/@shopify/polaris/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../node_modules/@shopify/polaris/node_modules/tslib/tslib.es6.js","../../../node_modules/lodash/_listCacheClear.js","../../../node_modules/lodash/eq.js","../../../node_modules/lodash/_assocIndexOf.js","../../../node_modules/lodash/_listCacheDelete.js","../../../node_modules/lodash/_listCacheGet.js","../../../node_modules/lodash/_listCacheHas.js","../../../node_modules/lodash/_listCacheSet.js","../../../node_modules/lodash/_ListCache.js","../../../node_modules/lodash/_stackClear.js","../../../node_modules/lodash/_stackDelete.js","../../../node_modules/lodash/_stackGet.js","../../../node_modules/lodash/_stackHas.js","../../../node_modules/lodash/_freeGlobal.js","../../../node_modules/lodash/_root.js","../../../node_modules/lodash/_Symbol.js","../../../node_modules/lodash/_getRawTag.js","../../../node_modules/lodash/_objectToString.js","../../../node_modules/lodash/_baseGetTag.js","../../../node_modules/lodash/isObject.js","../../../node_modules/lodash/isFunction.js","../../../node_modules/lodash/_coreJsData.js","../../../node_modules/lodash/_isMasked.js","../../../node_modules/lodash/_toSource.js","../../../node_modules/lodash/_baseIsNative.js","../../../node_modules/lodash/_getValue.js","../../../node_modules/lodash/_getNative.js","../../../node_modules/lodash/_Map.js","../../../node_modules/lodash/_nativeCreate.js","../../../node_modules/lodash/_hashClear.js","../../../node_modules/lodash/_hashDelete.js","../../../node_modules/lodash/_hashGet.js","../../../node_modules/lodash/_hashHas.js","../../../node_modules/lodash/_hashSet.js","../../../node_modules/lodash/_Hash.js","../../../node_modules/lodash/_mapCacheClear.js","../../../node_modules/lodash/_isKeyable.js","../../../node_modules/lodash/_getMapData.js","../../../node_modules/lodash/_mapCacheDelete.js","../../../node_modules/lodash/_mapCacheGet.js","../../../node_modules/lodash/_mapCacheHas.js","../../../node_modules/lodash/_mapCacheSet.js","../../../node_modules/lodash/_MapCache.js","../../../node_modules/lodash/_stackSet.js","../../../node_modules/lodash/_Stack.js","../../../node_modules/lodash/_setCacheAdd.js","../../../node_modules/lodash/_setCacheHas.js","../../../node_modules/lodash/_SetCache.js","../../../node_modules/lodash/_arraySome.js","../../../node_modules/lodash/_cacheHas.js","../../../node_modules/lodash/_equalArrays.js","../../../node_modules/lodash/_Uint8Array.js","../../../node_modules/lodash/_mapToArray.js","../../../node_modules/lodash/_setToArray.js","../../../node_modules/lodash/_equalByTag.js","../../../node_modules/lodash/_arrayPush.js","../../../node_modules/lodash/isArray.js","../../../node_modules/lodash/_baseGetAllKeys.js","../../../node_modules/lodash/_arrayFilter.js","../../../node_modules/lodash/stubArray.js","../../../node_modules/lodash/_getSymbols.js","../../../node_modules/lodash/_baseTimes.js","../../../node_modules/lodash/isObjectLike.js","../../../node_modules/lodash/_baseIsArguments.js","../../../node_modules/lodash/isArguments.js","../../../node_modules/lodash/stubFalse.js","../../../node_modules/lodash/isBuffer.js","../../../node_modules/lodash/_isIndex.js","../../../node_modules/lodash/isLength.js","../../../node_modules/lodash/_baseIsTypedArray.js","../../../node_modules/lodash/_baseUnary.js","../../../node_modules/lodash/_nodeUtil.js","../../../node_modules/lodash/isTypedArray.js","../../../node_modules/lodash/_arrayLikeKeys.js","../../../node_modules/lodash/_isPrototype.js","../../../node_modules/lodash/_overArg.js","../../../node_modules/lodash/_nativeKeys.js","../../../node_modules/lodash/_baseKeys.js","../../../node_modules/lodash/isArrayLike.js","../../../node_modules/lodash/keys.js","../../../node_modules/lodash/_getAllKeys.js","../../../node_modules/lodash/_equalObjects.js","../../../node_modules/lodash/_DataView.js","../../../node_modules/lodash/_Promise.js","../../../node_modules/lodash/_Set.js","../../../node_modules/lodash/_WeakMap.js","../../../node_modules/lodash/_getTag.js","../../../node_modules/lodash/_baseIsEqualDeep.js","../../../node_modules/lodash/_baseIsEqual.js","../../../node_modules/lodash/isEqual.js","../../../node_modules/@shopify/polaris-tokens/dist/index.esm.js","../../../node_modules/@shopify/javascript-utilities/math.js","../../../node_modules/lodash/now.js","../../../node_modules/lodash/_trimmedEndIndex.js","../../../node_modules/lodash/_baseTrim.js","../../../node_modules/lodash/isSymbol.js","../../../node_modules/lodash/toNumber.js","../../../node_modules/lodash/debounce.js","../../../node_modules/@shopify/javascript-utilities/geometry.js","../../../node_modules/@shopify/javascript-utilities/feature-detect.js","../../../node_modules/@shopify/javascript-utilities/events.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/util/env.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/util/collection.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Error/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Error/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Error/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/constants.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/merge.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/uuid.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/helper.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Print/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Print/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Print/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/validator.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/MessageTransport.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/util/shared.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/redirect.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/print.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/Hooks.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/Client.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/client/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Button/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Button/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Button/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/type-validate.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/utils.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/button.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Scanner/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Scanner/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Scanner/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/scanner.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Cart/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Cart/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Cart/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/cart.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ContextualSaveBar/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/contextualSaveBar.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/FeedbackModal/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/feedbackModal.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Fullscreen/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/fullscreen.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/LeaveConfirmation/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/leaveConfirmation.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Loading/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Loading/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Loading/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/loading.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/buttonHelper.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/safe-redirect.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/modal.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/AuthCode/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ButtonGroup/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ButtonGroup/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Toast/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Toast/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Toast/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Flash/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Flash/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Features/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Features/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Features/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/ModalContent/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/ModalContent/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Modal/ModalContent/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/History/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/History/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/History/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/Redirect/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/Redirect/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Navigation/Redirect/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ResourcePicker/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ResourcePicker/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/ResourcePicker/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/SessionToken/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/buttonGroupHelper.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/TitleBar/types.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/TitleBar/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/TitleBar/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Share/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/actions.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Pos/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/MarketingExternalActivityTopBar/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/Performance/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/actions/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/navigation.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/print.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/buttonGroup.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/resourcePicker.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/toast.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/titleBar.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/link.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/menu.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/actions/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/validator.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/validate/index.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/development.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/production.js","../../../node_modules/@shopify/polaris/node_modules/@shopify/app-bridge/index.js","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/alert_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/arrow-down_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/arrow-left_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/arrow-right_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/arrow-up_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/billing-statement-dollar_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/calendar_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/cancel-small_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/card-reader-chip_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/caret-down_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/caret-up_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/chevron-down_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/chevron-left_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/chevron-right_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/chevron-up_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-alert_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-alert_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-cancel_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-chevron-down_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-chevron-left_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-chevron-right_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-chevron-up_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-disable_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-disabled_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-information_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-plus_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-plus-outline_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/circle-tick_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/conversation_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/customers_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/delete_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/dispute_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/drag-drop_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/duplicate_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/email_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/embed_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/enable-selection_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/export_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/external_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/external-small_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/flag_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/home_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/horizontal-dots_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/import_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/log-out_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/minus_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/mobile-cancel_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/mobile-hamburger_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/note_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/note_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/notification_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/online-store_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/orders_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/orders_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/payments_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/plus_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/print_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/products_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/profile_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/question-mark_major_twotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/receipt_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/refresh_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/report_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/risk_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/save_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/search_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/select_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/tick-small_minor.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/tools_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/transaction_major_monotone.svg.mjs","../../../node_modules/@shopify/polaris-icons/dist/icons/polaris/view_minor.svg.mjs","../../../node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/react-is/index.js","../../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../node_modules/@shopify/react-compose/build/esm/index.mjs","../../../node_modules/@shopify/javascript-utilities/dom.js","../../../node_modules/@shopify/javascript-utilities/other.js","../../../node_modules/@shopify/javascript-utilities/focus.js","../../../node_modules/@shopify/javascript-utilities/fastdom.js","../../../node_modules/dom-helpers/class/hasClass.js","../../../node_modules/dom-helpers/class/addClass.js","../../../node_modules/dom-helpers/class/removeClass.js","../../../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../../../node_modules/react-transition-group/Transition.js","../../../node_modules/react-transition-group/CSSTransition.js","../../../node_modules/react-transition-group/utils/ChildMapping.js","../../../node_modules/react-transition-group/TransitionGroup.js","../../../node_modules/react-transition-group/ReplaceTransition.js","../../../node_modules/react-transition-group/index.js","../../../node_modules/@shopify/javascript-utilities/dates.js","../../../node_modules/@shopify/polaris/index.es.js","../../../node_modules/@shopify/app-bridge-react/dist/index.js","../../../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/config.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/TransitionGroupContext.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/utils/reflow.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/Transition.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/utils/ChildMapping.js","../../../node_modules/react-toastify/node_modules/react-transition-group/esm/TransitionGroup.js","../../../node_modules/react-toastify/esm/react-toastify.js","../../../app/javascript/components/ChangelogModal.jsx","../../../node_modules/rc-util/es/pickAttrs.js","../../../node_modules/antd/es/alert/style/index.js","../../../node_modules/antd/es/alert/Alert.js","../../../node_modules/antd/es/alert/ErrorBoundary.js","../../../node_modules/antd/es/alert/index.js","../../../app/javascript/components/UsageBanner.jsx","../../../app/javascript/components/ShopifyPage.jsx"],"sourcesContent":["export function variationName(name, value) {\n var valuePortion = typeof value === 'number' ? String(value) : \"\".concat(value[0].toUpperCase()).concat(value.substring(1));\n return \"\".concat(name).concat(valuePortion);\n}","'use strict';\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\n\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = getPrototypeOf && getPrototypeOf(Object);\n\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components\n\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n if (!REACT_STATICS[key] && !KNOWN_STATICS[key] && (!blacklist || !blacklist[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n try { // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n\n return targetComponent;\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\n","export const colorPurpleText = 'rgb(80, 73, 90)';\nexport const colorPurpleDarker = 'rgb(35, 0, 81)';\nexport const colorPurpleDark = 'rgb(80, 36, 143)';\nexport const colorPurple = 'rgb(156, 106, 222)';\nexport const colorPurpleLight = 'rgb(227, 208, 255)';\nexport const colorPurpleLighter = 'rgb(246, 240, 253)';\nexport const colorIndigoText = 'rgb(62, 65, 85)';\nexport const colorIndigoDarker = 'rgb(0, 6, 57)';\nexport const colorIndigoDark = 'rgb(32, 46, 120)';\nexport const colorIndigo = 'rgb(92, 106, 196)';\nexport const colorIndigoLight = 'rgb(179, 188, 245)';\nexport const colorIndigoLighter = 'rgb(244, 245, 250)';\nexport const colorBlueText = 'rgb(62, 78, 87)';\nexport const colorBlueDarker = 'rgb(0, 20, 41)';\nexport const colorBlueDark = 'rgb(8, 78, 138)';\nexport const colorBlue = 'rgb(0, 111, 187)';\nexport const colorBlueLight = 'rgb(180, 225, 250)';\nexport const colorBlueLighter = 'rgb(235, 245, 250)';\nexport const colorTealText = 'rgb(64, 83, 82)';\nexport const colorTealDarker = 'rgb(0, 49, 53)';\nexport const colorTealDark = 'rgb(0, 132, 142)';\nexport const colorTeal = 'rgb(71, 193, 191)';\nexport const colorTealLight = 'rgb(183, 236, 236)';\nexport const colorTealLighter = 'rgb(224, 245, 245)';\nexport const colorGreenText = 'rgb(65, 79, 62)';\nexport const colorGreenDarker = 'rgb(23, 54, 48)';\nexport const colorGreenDark = 'rgb(16, 128, 67)';\nexport const colorGreen = 'rgb(80, 184, 60)';\nexport const colorGreenLight = 'rgb(187, 229, 179)';\nexport const colorGreenLighter = 'rgb(227, 241, 223)';\nexport const colorYellowText = 'rgb(89, 81, 48)';\nexport const colorYellowDarker = 'rgb(87, 59, 0)';\nexport const colorYellowDark = 'rgb(138, 97, 22)';\nexport const colorYellow = 'rgb(238, 194, 0)';\nexport const colorYellowLight = 'rgb(255, 234, 138)';\nexport const colorYellowLighter = 'rgb(252, 241, 205)';\nexport const colorOrangeText = 'rgb(89, 68, 48)';\nexport const colorOrangeDarker = 'rgb(74, 21, 4)';\nexport const colorOrangeDark = 'rgb(192, 87, 23)';\nexport const colorOrange = 'rgb(244, 147, 66)';\nexport const colorOrangeLight = 'rgb(255, 197, 139)';\nexport const colorOrangeLighter = 'rgb(252, 235, 219)';\nexport const colorRedText = 'rgb(88, 60, 53)';\nexport const colorRedDarker = 'rgb(51, 1, 1)';\nexport const colorRedDark = 'rgb(191, 7, 17)';\nexport const colorRed = 'rgb(222, 54, 24)';\nexport const colorRedLight = 'rgb(254, 173, 154)';\nexport const colorRedLighter = 'rgb(251, 234, 229)';\nexport const colorInk = 'rgb(33, 43, 54)';\nexport const colorInkLight = 'rgb(69, 79, 91)';\nexport const colorInkLighter = 'rgb(99, 115, 129)';\nexport const colorInkLightest = 'rgb(145, 158, 171)';\nexport const colorSkyDark = 'rgb(196, 205, 213)';\nexport const colorSky = 'rgb(223, 227, 232)';\nexport const colorSkyLight = 'rgb(244, 246, 248)';\nexport const colorSkyLighter = 'rgb(249, 250, 251)';\nexport const colorBlack = 'rgb(0, 0, 0)';\nexport const colorWhite = 'rgb(255, 255, 255)';\nexport const durationNone = 0;\nexport const durationFast = 100;\nexport const durationBase = 200;\nexport const durationSlow = 300;\nexport const durationSlower = 400;\nexport const durationSlowest = 500;\nexport const spacingNone = 0;\nexport const spacingExtraTight = '4px';\nexport const spacingTight = '8px';\nexport const spacingBaseTight = '12px';\nexport const spacingBase = '16px';\nexport const spacingLoose = '20px';\nexport const spacingExtraLoose = '32px';\nexport const fontStackBase = \"-apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif\";\nexport const fontStackMonospace = \"Monaco, Consolas, 'Lucida Console', monospace\";\n\n// When this package shipped only CJS, bundlers applied some cjs-to-esm interop\n// dark magic that meant you could access content from index.common.js from an\n// esm file in many ways.\n// The following were all valid ways to access tokens:\n//\n// import {colorInk as namedImport} from '@shopify/polaris-tokens'\n// import * as namespaceImport from '@shopify/polaris-tokens'\n// import defaultImport from '@shopify/polaris-tokens'\n// console.log(colorInk, namespaceImport.colorInk, defaultImport.colorInk)\n//\n// In order to avoid adding this esm file being a breaking change, we must\n// provide a default export to maintain compatibility.\n// This is a deprecated way of accessing tokens. Consumers should use either\n// named imports (`import {colorInk}`) or a namespace import\n// (`import * as tokens`).\n// This default export should be removed in polaris-tokens v3 if we don't\n// remove this file entirely.\nexport default {\n colorPurpleText,\n colorPurpleDarker,\n colorPurpleDark,\n colorPurple,\n colorPurpleLight,\n colorPurpleLighter,\n colorIndigoText,\n colorIndigoDarker,\n colorIndigoDark,\n colorIndigo,\n colorIndigoLight,\n colorIndigoLighter,\n colorBlueText,\n colorBlueDarker,\n colorBlueDark,\n colorBlue,\n colorBlueLight,\n colorBlueLighter,\n colorTealText,\n colorTealDarker,\n colorTealDark,\n colorTeal,\n colorTealLight,\n colorTealLighter,\n colorGreenText,\n colorGreenDarker,\n colorGreenDark,\n colorGreen,\n colorGreenLight,\n colorGreenLighter,\n colorYellowText,\n colorYellowDarker,\n colorYellowDark,\n colorYellow,\n colorYellowLight,\n colorYellowLighter,\n colorOrangeText,\n colorOrangeDarker,\n colorOrangeDark,\n colorOrange,\n colorOrangeLight,\n colorOrangeLighter,\n colorRedText,\n colorRedDarker,\n colorRedDark,\n colorRed,\n colorRedLight,\n colorRedLighter,\n colorInk,\n colorInkLight,\n colorInkLighter,\n colorInkLightest,\n colorSkyDark,\n colorSky,\n colorSkyLight,\n colorSkyLighter,\n colorBlack,\n colorWhite,\n durationNone,\n durationFast,\n durationBase,\n durationSlow,\n durationSlower,\n durationSlowest,\n spacingNone,\n spacingExtraTight,\n spacingTight,\n spacingBaseTight,\n spacingBase,\n spacingLoose,\n spacingExtraLoose,\n fontStackBase,\n fontStackMonospace,\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction clamp(num, min, max) {\n return Math.max(min, Math.min(max, num));\n}\nexports.clamp = clamp;\n","var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Rect = /** @class */ (function () {\n function Rect(_a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.top, top = _c === void 0 ? 0 : _c, _d = _b.left, left = _d === void 0 ? 0 : _d, _e = _b.width, width = _e === void 0 ? 0 : _e, _f = _b.height, height = _f === void 0 ? 0 : _f;\n this.top = top;\n this.left = left;\n this.width = width;\n this.height = height;\n }\n Object.defineProperty(Rect, \"zero\", {\n get: function () {\n return new Rect();\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Rect.prototype, \"center\", {\n get: function () {\n return {\n x: this.left + (this.width / 2),\n y: this.top + (this.height / 2),\n };\n },\n enumerable: true,\n configurable: true\n });\n return Rect;\n}());\nexports.Rect = Rect;\nfunction getRectForNode(node) {\n if (!(node instanceof Element)) {\n return new Rect({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n }\n var rect = node.getBoundingClientRect();\n return new Rect({\n top: rect.top,\n left: rect.left,\n width: rect.width,\n height: rect.height,\n });\n}\nexports.getRectForNode = getRectForNode;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/*\nhttps://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection\n*/\nvar noop = function () { return undefined; };\nvar supportsPassive = null;\nfunction supportsEventListenerPassiveOption() {\n if (supportsPassive !== null) {\n return supportsPassive;\n }\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function () { supportsPassive = true; },\n });\n document.addEventListener('test', noop, opts);\n }\n catch (error) {\n supportsPassive = false;\n }\n document.removeEventListener('test', noop);\n return supportsPassive;\n}\nexports.supportsEventListenerPassiveOption = supportsEventListenerPassiveOption;\nvar supportsOnce = null;\nfunction supportsEventListenerOnceOption() {\n if (supportsOnce !== null) {\n return supportsOnce;\n }\n try {\n var opts = Object.defineProperty({}, 'once', {\n get: function () { supportsOnce = true; },\n });\n document.addEventListener('test', noop, opts);\n }\n catch (error) {\n supportsOnce = false;\n }\n document.removeEventListener('test', noop);\n return supportsOnce;\n}\nexports.supportsEventListenerOnceOption = supportsEventListenerOnceOption;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar feature_detect_1 = require(\"./feature-detect\");\nfunction addEventListener(target, eventName, handler, options) {\n if (options === void 0) { options = {}; }\n var wrappedHandler = !feature_detect_1.supportsEventListenerOnceOption() && options.once\n ? once(target, eventName, handler)\n : handler;\n if (feature_detect_1.supportsEventListenerPassiveOption() || feature_detect_1.supportsEventListenerOnceOption()) {\n var addListener = target.addEventListener;\n return addListener.call(target, eventName, handler, options);\n }\n return target.addEventListener(eventName, wrappedHandler, options.capture);\n}\nexports.addEventListener = addEventListener;\nfunction removeEventListener(target, eventName, handler, capture) {\n return target.removeEventListener(eventName, handler, capture);\n}\nexports.removeEventListener = removeEventListener;\nfunction once(target, eventName, handler) {\n return function selfRemovingHandler(event) {\n handler.call(event.currentTarget, event);\n target.removeEventListener(eventName, handler);\n };\n}\n","\"use strict\";\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isFrameless = exports.isDevelopmentClient = exports.isProduction = exports.isDevelopment = exports.isClient = exports.isServer = void 0;\nexports.isServer = typeof window === 'undefined';\nexports.isClient = !exports.isServer;\nexports.isDevelopment = typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'development';\nexports.isProduction = !exports.isDevelopment;\nexports.isDevelopmentClient = exports.isDevelopment && exports.isClient;\nexports.isFrameless = exports.isClient && ((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.indexOf(' Frameless ')) > 0;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LifecycleHook = exports.MessageType = exports.PermissionType = void 0;\n/**\n * @internal\n */\nvar PermissionType;\n(function (PermissionType) {\n PermissionType[\"Dispatch\"] = \"Dispatch\";\n PermissionType[\"Subscribe\"] = \"Subscribe\";\n})(PermissionType = exports.PermissionType || (exports.PermissionType = {}));\n/**\n * @internal\n */\nvar MessageType;\n(function (MessageType) {\n MessageType[\"GetState\"] = \"getState\";\n MessageType[\"Dispatch\"] = \"dispatch\";\n MessageType[\"Subscribe\"] = \"subscribe\";\n MessageType[\"Unsubscribe\"] = \"unsubscribe\";\n})(MessageType = exports.MessageType || (exports.MessageType = {}));\n/**\n *\n * There are two types of hooks: `LifecycleHook.DispatchAction` and `LifecycleHook.UpdateAction`.\n *\n * @remarks\n * `DispatchAction` hooks are run when an action is dispatched with the `.dispatch()` function:\n *\n * ```js\n * const toastNotice = Toast.create(app, {message: 'Product saved'});\n * toastNotice.dispatch(Toast.Action.SHOW);\n * ```\n *\n * `UpdateAction` hooks are run when an action is updated, using the `.set()` function:\n *\n * ```js\n * toastNotice.set({message: 'Product could not be saved', isError: true});\n * ```\n *\n * @public\n */\nvar LifecycleHook;\n(function (LifecycleHook) {\n LifecycleHook[\"UpdateAction\"] = \"UpdateAction\";\n LifecycleHook[\"DispatchAction\"] = \"DispatchAction\";\n})(LifecycleHook = exports.LifecycleHook || (exports.LifecycleHook = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.removeFromCollection = exports.addAndRemoveFromCollection = void 0;\n/**\n * Add an item to a collection, return a function that can then be used to\n * remove the item from the collection. Optionally accepting a callback that is\n * invoked when the item is removed from the collection.\n *\n * @internal\n */\nfunction addAndRemoveFromCollection(collection, item, then) {\n collection.push(item);\n return function () {\n return removeFromCollection(collection, item, then);\n };\n}\nexports.addAndRemoveFromCollection = addAndRemoveFromCollection;\n/**\n * Remove the item from the collection. Optionally accepting a callback that is\n * invoked when the item is removed from the collection.\n *\n * @internal\n */\nfunction removeFromCollection(collection, item, then) {\n var idx = collection.findIndex(function (i) { return i === item; });\n if (idx >= 0) {\n collection.splice(idx, 1);\n if (then) {\n then(item);\n }\n return true;\n }\n return false;\n}\nexports.removeFromCollection = removeFromCollection;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ComponentType = exports.Group = void 0;\n/**\n * Various action groups.\n * @public\n */\nvar Group;\n(function (Group) {\n Group[\"AuthCode\"] = \"AuthCode\";\n Group[\"Button\"] = \"Button\";\n Group[\"ButtonGroup\"] = \"ButtonGroup\";\n Group[\"Cart\"] = \"Cart\";\n Group[\"ContextualSaveBar\"] = \"ContextualSaveBar\";\n Group[\"Error\"] = \"Error\";\n Group[\"Features\"] = \"Features\";\n Group[\"FeedbackModal\"] = \"FeedbackModal\";\n Group[\"Fullscreen\"] = \"Fullscreen\";\n Group[\"LeaveConfirmation\"] = \"LeaveConfirmation\";\n Group[\"Link\"] = \"Link\";\n Group[\"Loading\"] = \"Loading\";\n Group[\"Menu\"] = \"Menu\";\n Group[\"Modal\"] = \"Modal\";\n Group[\"Navigation\"] = \"Navigation\";\n Group[\"Performance\"] = \"Performance\";\n Group[\"Pos\"] = \"Pos\";\n Group[\"Print\"] = \"Print\";\n Group[\"ResourcePicker\"] = \"Resource_Picker\";\n Group[\"Scanner\"] = \"Scanner\";\n Group[\"SessionToken\"] = \"SessionToken\";\n Group[\"Share\"] = \"Share\";\n Group[\"TitleBar\"] = \"TitleBar\";\n Group[\"Toast\"] = \"Toast\";\n Group[\"MarketingExternalActivityTopBar\"] = \"MarketingExternalActivityTopBar\";\n})(Group = exports.Group || (exports.Group = {}));\n/**\n * @internal\n */\nvar ComponentType;\n(function (ComponentType) {\n ComponentType[\"Button\"] = \"Button\";\n ComponentType[\"ButtonGroup\"] = \"ButtonGroup\";\n})(ComponentType = exports.ComponentType || (exports.ComponentType = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AppActionType = exports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"INVALID_ACTION\"] = \"INVALID_ACTION\";\n Action[\"INVALID_ACTION_TYPE\"] = \"INVALID_ACTION_TYPE\";\n Action[\"INVALID_OPTIONS\"] = \"INVALID_OPTIONS\";\n Action[\"INVALID_PAYLOAD\"] = \"INVALID_PAYLOAD\";\n Action[\"UNEXPECTED_ACTION\"] = \"UNEXPECTED_ACTION\";\n Action[\"PERSISTENCE\"] = \"PERSISTENCE\";\n Action[\"UNSUPPORTED_OPERATION\"] = \"UNSUPPORTED_OPERATION\";\n Action[\"NETWORK\"] = \"NETWORK\";\n Action[\"PERMISSION\"] = \"PERMISSION\";\n})(Action = exports.Action || (exports.Action = {}));\n// Errors triggered in response to an action\nvar ActionType;\n(function (ActionType) {\n ActionType[\"INVALID_ACTION\"] = \"APP::ERROR::INVALID_ACTION\";\n ActionType[\"INVALID_ACTION_TYPE\"] = \"APP::ERROR::INVALID_ACTION_TYPE\";\n ActionType[\"INVALID_PAYLOAD\"] = \"APP::ERROR::INVALID_PAYLOAD\";\n ActionType[\"INVALID_OPTIONS\"] = \"APP::ERROR::INVALID_OPTIONS\";\n ActionType[\"UNEXPECTED_ACTION\"] = \"APP::ERROR::UNEXPECTED_ACTION\";\n ActionType[\"PERSISTENCE\"] = \"APP::ERROR::PERSISTENCE\";\n ActionType[\"UNSUPPORTED_OPERATION\"] = \"APP::ERROR::UNSUPPORTED_OPERATION\";\n ActionType[\"NETWORK\"] = \"APP::ERROR::NETWORK\";\n ActionType[\"PERMISSION\"] = \"APP::ERROR::PERMISSION\";\n ActionType[\"FAILED_AUTHENTICATION\"] = \"APP::ERROR::FAILED_AUTHENTICATION\";\n ActionType[\"INVALID_ORIGIN\"] = \"APP::ERROR::INVALID_ORIGIN\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n// Errors thrown in response to app setup\nvar AppActionType;\n(function (AppActionType) {\n AppActionType[\"INVALID_CONFIG\"] = \"APP::ERROR::INVALID_CONFIG\";\n AppActionType[\"MISSING_CONFIG\"] = \"APP::APP_ERROR::MISSING_CONFIG\";\n AppActionType[\"MISSING_APP_BRIDGE_MIDDLEWARE\"] = \"APP::APP_ERROR::MISSING_APP_BRIDGE_MIDDLEWARE\";\n AppActionType[\"WINDOW_UNDEFINED\"] = \"APP::APP_ERROR::WINDOW_UNDEFINED\";\n AppActionType[\"MISSING_LOCAL_ORIGIN\"] = \"APP::APP_ERROR::MISSING_LOCAL_ORIGIN\";\n AppActionType[\"MISSING_HOST_PROVIDER\"] = \"APP::APP_ERROR::MISSING_HOST_PROVIDER\";\n AppActionType[\"MISSING_ROUTER_CONTEXT\"] = \"APP::APP_ERROR::MISSING_ROUTER_CONTEXT\";\n AppActionType[\"MISSING_HISTORY_BLOCK\"] = \"APP::APP_ERROR::MISSING_HISTORY_BLOCK\";\n})(AppActionType = exports.AppActionType || (exports.AppActionType = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.throwError = exports.fromAction = exports.AppBridgeError = exports.invalidOriginAction = exports.isErrorEventName = exports.permissionAction = exports.networkAction = exports.persistenceAction = exports.unsupportedOperationAction = exports.unexpectedAction = exports.invalidAction = exports.invalidActionType = exports.invalidPayload = exports.Message = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction errorActionWrapperWithId(type, action, message) {\n var castPayload = action.payload;\n return helper_1.actionWrapper({\n type: type,\n group: types_1.Group.Error,\n payload: {\n action: action,\n message: message,\n type: type,\n id: castPayload && castPayload.id ? castPayload.id : undefined,\n },\n });\n}\nvar Message;\n(function (Message) {\n Message[\"MISSING_PAYLOAD\"] = \"Missing payload\";\n Message[\"INVALID_PAYLOAD_ID\"] = \"Id in payload is missing or invalid\";\n})(Message = exports.Message || (exports.Message = {}));\nfunction invalidPayload(action, message) {\n return errorActionWrapperWithId(types_2.ActionType.INVALID_PAYLOAD, action, message || \"The action's payload is missing required properties or has invalid properties\");\n}\nexports.invalidPayload = invalidPayload;\nfunction invalidActionType(action, message) {\n return helper_1.actionWrapper({\n group: types_1.Group.Error,\n payload: {\n action: action,\n message: message || 'The action type is invalid or unsupported',\n type: types_2.ActionType.INVALID_ACTION_TYPE,\n },\n type: types_2.ActionType.INVALID_ACTION_TYPE,\n });\n}\nexports.invalidActionType = invalidActionType;\nfunction invalidAction(action, message) {\n return helper_1.actionWrapper({\n group: types_1.Group.Error,\n payload: {\n action: action,\n message: message || \"The action's has missing/invalid values for `group`, `type` or `version`\",\n type: types_2.ActionType.INVALID_ACTION,\n },\n type: types_2.ActionType.INVALID_ACTION,\n });\n}\nexports.invalidAction = invalidAction;\nfunction unexpectedAction(action, message) {\n return helper_1.actionWrapper({\n group: types_1.Group.Error,\n payload: {\n action: action,\n message: message || 'Action cannot be called at this time',\n type: types_2.ActionType.UNEXPECTED_ACTION,\n },\n type: types_2.ActionType.UNEXPECTED_ACTION,\n });\n}\nexports.unexpectedAction = unexpectedAction;\nfunction unsupportedOperationAction(action, message) {\n return errorActionWrapperWithId(types_2.ActionType.UNSUPPORTED_OPERATION, action, message || 'The action type is unsupported');\n}\nexports.unsupportedOperationAction = unsupportedOperationAction;\nfunction persistenceAction(action, message) {\n return errorActionWrapperWithId(types_2.ActionType.PERSISTENCE, action, message || 'Action cannot be persisted on server');\n}\nexports.persistenceAction = persistenceAction;\nfunction networkAction(action, message) {\n return errorActionWrapperWithId(types_2.ActionType.NETWORK, action, message || 'Network error');\n}\nexports.networkAction = networkAction;\nfunction permissionAction(action, message) {\n return errorActionWrapperWithId(types_2.ActionType.PERMISSION, action, message || 'Action is not permitted');\n}\nexports.permissionAction = permissionAction;\nfunction isErrorEventName(eventName) {\n var match = helper_1.findMatchInEnum(types_2.Action, eventName);\n return typeof match === 'string';\n}\nexports.isErrorEventName = isErrorEventName;\nfunction invalidOriginAction(message) {\n return helper_1.actionWrapper({\n group: types_1.Group.Error,\n payload: {\n message: message,\n type: types_2.ActionType.INVALID_ORIGIN,\n },\n type: types_2.ActionType.INVALID_ORIGIN,\n });\n}\nexports.invalidOriginAction = invalidOriginAction;\nvar AppBridgeError = /** @class */ (function () {\n function AppBridgeError(message) {\n this.name = 'AppBridgeError';\n this.message = message;\n if (typeof Error.captureStackTrace === 'function') {\n Error.captureStackTrace(this, this.constructor);\n }\n else {\n this.stack = new Error(this.message).stack;\n }\n }\n return AppBridgeError;\n}());\nexports.AppBridgeError = AppBridgeError;\nAppBridgeError.prototype = Object.create(Error.prototype);\nfunction fromAction(message, type, action) {\n var errorMessage = message ? type + \": \" + message : type;\n var error = new AppBridgeError(errorMessage);\n error.action = action;\n error.type = type;\n return error;\n}\nexports.fromAction = fromAction;\nfunction throwError() {\n var type = arguments[0];\n var message;\n var action;\n if (typeof arguments[1] === 'string') {\n message = arguments[1];\n }\n else {\n action = arguments[1];\n message = arguments[2] || '';\n }\n throw fromAction(message, type, action);\n}\nexports.throwError = throwError;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SEPARATOR = exports.PREFIX = void 0;\nexports.PREFIX = 'APP';\nexports.SEPARATOR = '::';\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/**\n * Returns a deeply merged object with properties from the 2 provided objects\n * @remarks - Only deeply merge objects. The second argument overrides the\n * first if it is provided as `null`, `undefined` or an array.\n * @public\n * */\nfunction mergeProps(obj, newObj) {\n if (newObj == null) {\n return newObj;\n }\n // If setting to a different prototype or a non-object or non-array, don't merge any props\n if (typeof obj === 'undefined' ||\n !Object.getPrototypeOf(obj).isPrototypeOf(newObj) ||\n (newObj.constructor.name !== 'Object' && newObj.constructor.name !== 'Array')) {\n return newObj;\n }\n var clone = {};\n Object.keys(newObj).forEach(function (key) {\n var exists = obj.hasOwnProperty(key);\n if (!exists) {\n clone[key] = newObj[key];\n }\n else if (typeof obj[key] === 'object' && !Array.isArray(obj[key])) {\n clone[key] = mergeProps(obj[key], newObj[key]);\n }\n else {\n clone[key] = newObj[key];\n }\n });\n // Copy old props that are not present in new object only if this is a simple object\n Object.keys(obj).forEach(function (key) {\n var exists = newObj.hasOwnProperty(key);\n if (!exists) {\n clone[key] = obj[key];\n }\n });\n // Set prototype of cloned object to match original\n Object.setPrototypeOf(clone, Object.getPrototypeOf(obj));\n return clone;\n}\nexports.default = mergeProps;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateUuid = void 0;\n/**\n * Convert a number or array of integers to a string of padded hex octets.\n */\nfunction asHex(value) {\n return Array.from(value)\n .map(function (i) { return (\"00\" + i.toString(16)).slice(-2); })\n .join('');\n}\n/**\n * Attempt to securely generate random bytes/\n */\nfunction getRandomBytes(size) {\n // SPRNG\n if (typeof Uint8Array === 'function' && typeof window === 'object' && window.crypto) {\n var buffer = new Uint8Array(size);\n var randomValues = window.crypto.getRandomValues(buffer);\n if (randomValues) {\n return randomValues;\n }\n }\n // Insecure random\n return Array.from(new Array(size), function () { return (Math.random() * 255) | 0; });\n}\n/**\n * Generate a RFC4122-compliant v4 UUID.\n *\n * @see http://www.ietf.org/rfc/rfc4122.txt\n */\nfunction generateUuid() {\n var version = 64;\n var clockSeqHiAndReserved = getRandomBytes(1);\n var timeHiAndVersion = getRandomBytes(2);\n clockSeqHiAndReserved[0] &= 63 | 128;\n // tslint:disable-next-line:binary-expression-operand-order\n timeHiAndVersion[0] &= 15 | version;\n return [\n asHex(getRandomBytes(4)),\n '-',\n asHex(getRandomBytes(2)),\n '-',\n asHex(timeHiAndVersion),\n '-',\n asHex(clockSeqHiAndReserved),\n asHex(getRandomBytes(1)),\n '-',\n asHex(getRandomBytes(6)),\n ].join('');\n}\nexports.generateUuid = generateUuid;\n// Default\nexports.default = generateUuid;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonSnakeCaseGroup = exports.findMatchInEnum = exports.forEachInEnum = exports.getMergedProps = exports.updateActionFromPayload = exports.ActionSetWithChildren = exports.ActionSet = exports.isValidOptionalString = exports.isValidOptionalNumber = exports.getEventNameSpace = exports.getVersion = exports.actionWrapper = void 0;\nvar types_1 = require(\"../client/types\");\nvar collection_1 = require(\"../util/collection\");\nvar Error_1 = require(\"./Error\");\nvar constants_1 = require(\"./constants\");\nvar merge_1 = __importDefault(require(\"./merge\"));\nvar types_2 = require(\"./types\");\nvar uuid_1 = __importDefault(require(\"./uuid\"));\nvar packageJson = require('../package.json');\nfunction actionWrapper(action) {\n return __assign(__assign({}, action), { version: getVersion(), clientInterface: {\n name: packageJson.name,\n version: getVersion(),\n } });\n}\nexports.actionWrapper = actionWrapper;\nfunction getVersion() {\n return packageJson.version;\n}\nexports.getVersion = getVersion;\n/**\n * Returns full event name with prefix, group, subgroups and type formatted with separators\n * @internal\n * */\nfunction getEventNameSpace(group, eventName, component) {\n var eventNameSpace = groupToEventNameSpace(group);\n if (component) {\n var subgroups_1 = component.subgroups, type = component.type;\n if (subgroups_1 && subgroups_1.length > 0) {\n eventNameSpace += eventNameSpace.length > 0 ? constants_1.SEPARATOR : '';\n subgroups_1.forEach(function (subgroup, index) {\n eventNameSpace += \"\" + subgroup.toUpperCase() + (index < subgroups_1.length - 1 ? constants_1.SEPARATOR : '');\n });\n }\n if (type !== group && type) {\n eventNameSpace += \"\" + (eventNameSpace.length > 0 ? constants_1.SEPARATOR : '') + type.toUpperCase();\n }\n }\n if (eventNameSpace) {\n eventNameSpace += \"\" + (eventNameSpace.length > 0 ? constants_1.SEPARATOR : '') + eventName.toUpperCase();\n }\n return \"\" + constants_1.PREFIX + constants_1.SEPARATOR + eventNameSpace;\n}\nexports.getEventNameSpace = getEventNameSpace;\nfunction isValidOptionalNumber(value) {\n return value === null || value === undefined || typeof value === 'number';\n}\nexports.isValidOptionalNumber = isValidOptionalNumber;\nfunction isValidOptionalString(value) {\n return value === null || value === undefined || typeof value === 'string';\n}\nexports.isValidOptionalString = isValidOptionalString;\nvar ActionSet = /** @class */ (function () {\n function ActionSet(app, type, group, id) {\n var _this = this;\n this.app = app;\n this.type = type;\n this.group = group;\n this.subgroups = [];\n this.subscriptions = [];\n if (!app) {\n Error_1.throwError(Error_1.ActionType.INVALID_OPTIONS, 'Missing required `app`');\n }\n this.id = id || uuid_1.default();\n this.defaultGroup = group;\n var defaultSet = this.set;\n this.set = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (!_this.app.hooks) {\n return defaultSet.apply(_this, args);\n }\n return (_a = _this.app.hooks).run.apply(_a, __spreadArrays([types_1.LifecycleHook.UpdateAction, defaultSet, _this], args));\n };\n }\n ActionSet.prototype.set = function () {\n var _ = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _[_i] = arguments[_i];\n }\n };\n Object.defineProperty(ActionSet.prototype, \"component\", {\n get: function () {\n return {\n id: this.id,\n subgroups: this.subgroups,\n type: this.type,\n };\n },\n enumerable: false,\n configurable: true\n });\n ActionSet.prototype.updateSubscription = function (subscriptionToRemove, group, subgroups) {\n var eventType = subscriptionToRemove.eventType, callback = subscriptionToRemove.callback, component = subscriptionToRemove.component;\n var currentIndex;\n currentIndex = this.subscriptions.findIndex(function (subscription) { return subscription === subscriptionToRemove; });\n if (currentIndex >= 0) {\n this.subscriptions[currentIndex].unsubscribe();\n }\n else {\n currentIndex = undefined;\n }\n this.group = group;\n this.subgroups = subgroups;\n Object.assign(component, { subgroups: this.subgroups });\n return this.subscribe(eventType, callback, component, currentIndex);\n };\n ActionSet.prototype.error = function (callback) {\n var _this = this;\n var subscriptionIndices = [];\n forEachInEnum(Error_1.Action, function (eventNameSpace) {\n // Keep track of subscription index so we can call unsubscribe later\n // This ensure it will continue to work even when the subscription has been updated\n subscriptionIndices.push(_this.subscriptions.length);\n _this.subscribe(eventNameSpace, callback);\n });\n return function () {\n var subscriptionsToRemove = subscriptionIndices.map(function (index) { return _this.subscriptions[index]; });\n subscriptionsToRemove.forEach(function (toRemove) {\n collection_1.removeFromCollection(_this.subscriptions, toRemove, function (removed) {\n removed.unsubscribe();\n });\n });\n };\n };\n ActionSet.prototype.subscribe = function (eventName, callback, component, currentIndex) {\n var _this = this;\n var eventComponent = component || this.component;\n var eventType = eventName.toUpperCase();\n var boundedCallback = typeof currentIndex === 'number' ? callback : callback.bind(this);\n var eventNameSpace;\n if (Error_1.isErrorEventName(eventName)) {\n eventNameSpace = getEventNameSpace(types_2.Group.Error, eventName, __assign(__assign({}, eventComponent), { type: '' }));\n }\n else {\n eventNameSpace = getEventNameSpace(this.group, eventName, eventComponent);\n }\n var unsubscribe = this.app.subscribe(eventNameSpace, boundedCallback, component ? component.id : this.id);\n var subscription = {\n eventType: eventType,\n unsubscribe: unsubscribe,\n callback: boundedCallback,\n component: eventComponent,\n updateSubscribe: function (group, subgroups) {\n return _this.updateSubscription.call(_this, subscription, group, subgroups);\n },\n };\n if (typeof currentIndex === 'number' &&\n currentIndex >= 0 &&\n currentIndex < this.subscriptions.length) {\n this.subscriptions[currentIndex] = subscription;\n }\n else {\n this.subscriptions.push(subscription);\n }\n return unsubscribe;\n };\n ActionSet.prototype.unsubscribe = function (resetOnly) {\n if (resetOnly === void 0) { resetOnly = false; }\n unsubscribeActions(this.subscriptions, this.defaultGroup, resetOnly);\n return this;\n };\n return ActionSet;\n}());\nexports.ActionSet = ActionSet;\nvar ActionSetWithChildren = /** @class */ (function (_super) {\n __extends(ActionSetWithChildren, _super);\n function ActionSetWithChildren() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.children = [];\n return _this;\n }\n ActionSetWithChildren.prototype.unsubscribe = function (unsubscribeChildren, resetParentOnly) {\n if (unsubscribeChildren === void 0) { unsubscribeChildren = true; }\n if (resetParentOnly === void 0) { resetParentOnly = false; }\n unsubscribeActions(this.subscriptions, this.defaultGroup, resetParentOnly);\n this.children.forEach(function (child) {\n if (ActionSetWithChildren.prototype.isPrototypeOf(child)) {\n child.unsubscribe(unsubscribeChildren, !unsubscribeChildren);\n }\n else {\n child.unsubscribe(!unsubscribeChildren);\n }\n });\n return this;\n };\n ActionSetWithChildren.prototype.getChild = function (id) {\n var childIndex = this.children.findIndex(function (child) { return child.id === id; });\n return childIndex >= 0 ? this.children[childIndex] : undefined;\n };\n ActionSetWithChildren.prototype.getChildIndex = function (id) {\n return this.children.findIndex(function (child) { return child.id === id; });\n };\n ActionSetWithChildren.prototype.getChildSubscriptions = function (id, eventType) {\n return this.subscriptions.filter(function (sub) { return sub.component.id === id && (!eventType || eventType === sub.eventType); });\n };\n ActionSetWithChildren.prototype.addChild = function (child, group, subgroups) {\n var _this = this;\n var subscriptions = child.subscriptions;\n var existingChild = this.getChild(child.id);\n // Add child if it doesn't already exist\n if (!existingChild) {\n this.children.push(child);\n }\n if (!subscriptions || (group === child.group && subgroups === child.subgroups)) {\n return this;\n }\n subscriptions.forEach(function (subscription) {\n var updateSubscribe = subscription.updateSubscribe;\n updateSubscribe(group, subgroups);\n });\n // Update child's group and subgroups\n Object.assign(child, { group: group, subgroups: subgroups });\n // Update child's children subscriptions\n if (ActionSetWithChildren.prototype.isPrototypeOf(child)) {\n child.children.forEach(function (c) { return _this.addChild(c, group, subgroups); });\n }\n return this;\n };\n ActionSetWithChildren.prototype.removeChild = function (id) {\n var _this = this;\n collection_1.removeFromCollection(this.children, this.getChild(id), function () {\n var toBeRemoved = _this.subscriptions.filter(function (subs) { return subs.component.id === id; });\n toBeRemoved.forEach(function (toRemove) {\n collection_1.removeFromCollection(_this.subscriptions, toRemove, function (removed) {\n removed.unsubscribe();\n });\n });\n });\n return this;\n };\n ActionSetWithChildren.prototype.subscribeToChild = function (child, eventName, callback) {\n var _this = this;\n var boundedCallback = callback.bind(this);\n if (eventName instanceof Array) {\n eventName.forEach(function (e) { return _this.subscribeToChild(child, e, callback); });\n return this;\n }\n if (typeof eventName !== 'string') {\n return this;\n }\n var eventType = eventName.toUpperCase();\n var currentSubscriptions = this.getChildSubscriptions(child.id, eventType);\n if (currentSubscriptions.length > 0) {\n // Subscription is already there, simply update it\n currentSubscriptions.forEach(function (subs) { return subs.updateSubscribe(_this.group, child.subgroups); });\n }\n else {\n var childComponent = {\n id: child.id,\n subgroups: child.subgroups,\n type: child.type,\n };\n this.subscribe(eventType, boundedCallback, childComponent);\n }\n return this;\n };\n ActionSetWithChildren.prototype.getUpdatedChildActions = function (newActions, currentActions) {\n if (newActions.length === 0) {\n while (currentActions.length > 0) {\n var action = currentActions.pop();\n if (!action) {\n break;\n }\n this.removeChild(action.id);\n }\n return undefined;\n }\n // Only allow unique actions\n var uniqueActions = newActions.filter(function (action, index, actionsArr) { return index === actionsArr.indexOf(action); });\n var newActionIds = uniqueActions.map(function (action) { return action.id; });\n // Remove unused actions\n var unusedActions = currentActions.filter(function (action) {\n return newActionIds.indexOf(action.id) < 0;\n });\n while (unusedActions.length > 0) {\n var action = unusedActions.pop();\n if (!action) {\n break;\n }\n this.removeChild(action.id);\n }\n return uniqueActions;\n };\n return ActionSetWithChildren;\n}(ActionSet));\nexports.ActionSetWithChildren = ActionSetWithChildren;\nfunction unsubscribeActions(subscriptions, defaultGroup, reassign) {\n if (reassign === void 0) { reassign = false; }\n subscriptions.forEach(function (subscription) {\n if (reassign) {\n var updateSubscribe = subscription.updateSubscribe;\n // TODO: Support cases where we don't wipe out group and subgroups to defaults\n updateSubscribe(defaultGroup, []);\n }\n else {\n var unsubscribe = subscription.unsubscribe;\n unsubscribe();\n }\n });\n if (!reassign) {\n subscriptions.length = 0;\n }\n}\nfunction updateActionFromPayload(action, newProps) {\n var id = action.id;\n if (id === newProps.id) {\n // Merge new properties\n Object.assign(action, getMergedProps(action, newProps));\n return true;\n }\n return false;\n}\nexports.updateActionFromPayload = updateActionFromPayload;\nfunction getMergedProps(props, newProps) {\n var merged = merge_1.default(props, newProps);\n if (!merged) {\n // tslint:disable-next-line:prefer-object-spread\n var cloned = Object.assign(props, newProps);\n return cloned;\n }\n return merged;\n}\nexports.getMergedProps = getMergedProps;\nfunction forEachInEnum(types, callback) {\n Object.keys(types).forEach(function (key) {\n callback(types[key]);\n });\n}\nexports.forEachInEnum = forEachInEnum;\nfunction findMatchInEnum(types, lookup) {\n var match = Object.keys(types).find(function (key) {\n return lookup === types[key];\n });\n return match ? types[match] : undefined;\n}\nexports.findMatchInEnum = findMatchInEnum;\nfunction camelCaseToSnakeCase(value) {\n return value.replace(/([A-Z])/g, function (matcher, _val, index) {\n return \"\" + (index !== 0 ? '_' : '') + matcher[0].toLowerCase();\n });\n}\nexports.NonSnakeCaseGroup = [\n types_2.Group.AuthCode,\n types_2.Group.Button,\n types_2.Group.ButtonGroup,\n types_2.Group.Cart,\n types_2.Group.Error,\n types_2.Group.Features,\n types_2.Group.Fullscreen,\n types_2.Group.Link,\n types_2.Group.Loading,\n types_2.Group.Menu,\n types_2.Group.Modal,\n types_2.Group.Navigation,\n types_2.Group.Pos,\n types_2.Group.Print,\n types_2.Group.ResourcePicker,\n types_2.Group.Scanner,\n types_2.Group.SessionToken,\n types_2.Group.Share,\n types_2.Group.TitleBar,\n types_2.Group.Toast,\n];\n/**\n * Maps the group name to its event name\n * @internal\n * @remarks - This method is necessary for the new pattern of using snake case\n * which makes it more readable and easier to reconstruct the group from an event name.\n * Example: `ContextualSaveBar` becomes `CONTEXTUAL_SAVE_BAR`\n * */\nfunction groupToEventNameSpace(group) {\n if (exports.NonSnakeCaseGroup.includes(group)) {\n return group.toUpperCase();\n }\n return camelCaseToSnakeCase(group).toUpperCase();\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"APP\"] = \"APP::PRINT::APP\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"APP\"] = \"APP\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.app = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction app() {\n return helper_1.actionWrapper({\n group: types_1.Group.Print,\n type: types_2.ActionType.APP,\n });\n}\nexports.app = app;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isAppMessage = exports.isPermitted = exports.getPermissionKey = exports.isFromApp = exports.isAppBridgeAction = void 0;\nvar types_1 = require(\"../client/types\");\nvar constants_1 = require(\"./constants\");\nvar helper_1 = require(\"./helper\");\n/**\n * Predicate to determine if an action is an App Bridge action.\n * @public\n */\nfunction isAppBridgeAction(action) {\n return (action instanceof Object &&\n action.hasOwnProperty('type') &&\n action.type.toString().startsWith(constants_1.PREFIX));\n}\nexports.isAppBridgeAction = isAppBridgeAction;\n/**\n * Predicate to determine if an action originated from an application.\n * @internal\n */\nfunction isFromApp(action) {\n if (typeof action !== 'object' || typeof action.source !== 'object') {\n return false;\n }\n return typeof action.source.apiKey === 'string';\n}\nexports.isFromApp = isFromApp;\n/**\n * Returns the action type without the prefix and group\n * @internal\n */\nfunction getPermissionKey(type) {\n return type.replace(new RegExp(\"^\" + constants_1.PREFIX + constants_1.SEPARATOR + \"\\\\w+\" + constants_1.SEPARATOR), '');\n}\nexports.getPermissionKey = getPermissionKey;\n/**\n * Predicate to determine if an action is permitted\n * @internal\n */\nfunction isPermitted(features, _a, permissionType) {\n var group = _a.group, type = _a.type;\n if (!group || !features.hasOwnProperty(group)) {\n return false;\n }\n var feature = features[group];\n if (!feature) {\n return false;\n }\n var actionType = getPermissionKey(type);\n return feature[actionType] ? feature[actionType][permissionType] === true : false;\n}\nexports.isPermitted = isPermitted;\n/**\n * Predicate to determine if an event originated from an application.\n * @internal\n */\nfunction isAppMessage(event) {\n if (typeof event !== 'object' || !event.data || typeof event.data !== 'object') {\n return false;\n }\n var data = event.data;\n return data.hasOwnProperty('type') && helper_1.findMatchInEnum(types_1.MessageType, data.type) !== undefined;\n}\nexports.isAppMessage = isAppMessage;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createTransportListener = exports.fromWindow = exports.fromFrame = exports.Context = void 0;\nvar Error_1 = require(\"./actions/Error\");\nvar validator_1 = require(\"./actions/validator\");\nvar types_1 = require(\"./client/types\");\nvar collection_1 = require(\"./util/collection\");\nvar env_1 = require(\"./util/env\");\nvar Context;\n(function (Context) {\n Context[\"Modal\"] = \"Modal\";\n Context[\"Main\"] = \"Main\";\n})(Context = exports.Context || (exports.Context = {}));\n/**\n * Create a MessageTransport from an IFrame.\n * @remarks\n * Used on the host-side to create a postMessage MessageTransport.\n * @beta\n */\nfunction fromFrame(frame, localOrigin, context) {\n var handlers = [];\n if (typeof frame === 'undefined' || !frame.ownerDocument || !frame.ownerDocument.defaultView) {\n throw Error_1.fromAction('App frame is undefined', Error_1.AppActionType.WINDOW_UNDEFINED);\n }\n var parent = frame.ownerDocument.defaultView;\n parent.addEventListener('message', function (event) {\n if (!validator_1.isAppMessage(event)) {\n return;\n }\n if (event.origin !== localOrigin) {\n var contentWindow = frame.contentWindow;\n if (contentWindow) {\n var errorMessage = \"Message origin '\" + event.origin + \"' does not match app origin '\" + localOrigin + \"'.\";\n var payload = Error_1.invalidOriginAction(errorMessage);\n var message = {\n type: 'dispatch',\n payload: payload,\n };\n contentWindow.postMessage(message, event.origin);\n }\n return;\n }\n for (var _i = 0, handlers_1 = handlers; _i < handlers_1.length; _i++) {\n var handler = handlers_1[_i];\n handler(event);\n }\n });\n return {\n context: context,\n localOrigin: localOrigin,\n frameWindow: frame.contentWindow,\n hostFrame: parent,\n dispatch: function (message) {\n var contentWindow = frame.contentWindow;\n if (contentWindow) {\n contentWindow.postMessage(message, localOrigin);\n }\n },\n subscribe: function (handler) {\n return collection_1.addAndRemoveFromCollection(handlers, handler);\n },\n };\n}\nexports.fromFrame = fromFrame;\n/**\n * Create a MessageTransport from a parent window.\n * @remarks\n * Used on the client-side to create a postMessage MessageTransport.\n * @internalremarks\n * In frameless mode, message should be dispatched via SmartWebView.handleMessage instead of postMessage.\n * @beta\n */\nfunction fromWindow(contentWindow, localOrigin) {\n var handlers = [];\n if (typeof window !== undefined) {\n window.addEventListener('message', function (event) {\n if ((window === contentWindow && !env_1.isFrameless) ||\n event.source !== contentWindow ||\n !(validator_1.isAppBridgeAction(event.data.payload) || validator_1.isAppMessage(event))) {\n return;\n }\n for (var _i = 0, handlers_2 = handlers; _i < handlers_2.length; _i++) {\n var handler = handlers_2[_i];\n handler(event);\n }\n });\n }\n return {\n localOrigin: localOrigin,\n hostFrame: contentWindow,\n dispatch: function (message) {\n if (!message.source || !message.source.shopOrigin) {\n return;\n }\n if (env_1.isFrameless && window && window.SmartWebView) {\n window.SmartWebView.handleMessage('frameless://fromClient', JSON.stringify(message));\n return;\n }\n var messageOrigin = \"https://\" + message.source.shopOrigin;\n contentWindow.postMessage(message, messageOrigin);\n },\n subscribe: function (handler) {\n return collection_1.addAndRemoveFromCollection(handlers, handler);\n },\n };\n}\nexports.fromWindow = fromWindow;\nfunction createTransportListener() {\n var listeners = [];\n var actionListeners = {};\n function createSubscribeHandler(dispatcher) {\n function subscribe() {\n if (arguments.length < 2) {\n // eslint-disable-next-line prefer-rest-params\n return collection_1.addAndRemoveFromCollection(listeners, { callback: arguments[0] });\n }\n // eslint-disable-next-line prefer-rest-params\n var _a = Array.from(arguments), type = _a[0], callback = _a[1], id = _a[2];\n var actionCallback = { callback: callback, id: id };\n var payload = { type: type, id: id };\n if (!Object.prototype.hasOwnProperty.call(actionListeners, type)) {\n actionListeners[type] = [];\n }\n if (dispatcher) {\n dispatcher(types_1.MessageType.Subscribe, payload);\n }\n return collection_1.addAndRemoveFromCollection(actionListeners[type], actionCallback, function () {\n if (dispatcher) {\n dispatcher(types_1.MessageType.Unsubscribe, payload);\n }\n });\n }\n return subscribe;\n }\n return {\n createSubscribeHandler: createSubscribeHandler,\n handleMessage: function (message) {\n listeners.forEach(function (listener) { return listener.callback(message); });\n },\n handleActionDispatch: function (_a) {\n var type = _a.type, payload = _a.payload;\n var hasCallback = false;\n if (Object.prototype.hasOwnProperty.call(actionListeners, type)) {\n for (var _i = 0, _b = actionListeners[type]; _i < _b.length; _i++) {\n var listener = _b[_i];\n var id = listener.id, callback = listener.callback;\n var matchId = payload && payload.id === id;\n if (matchId || !id) {\n callback(payload);\n hasCallback = true;\n }\n }\n }\n return hasCallback;\n },\n };\n}\nexports.createTransportListener = createTransportListener;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.serverAppBridge = void 0;\nvar Error_1 = require(\"../actions/Error\");\nvar noop = function () { };\n/**\n * @internal\n */\nexports.serverAppBridge = {\n dispatch: function () {\n return {};\n },\n error: function () {\n return noop;\n },\n featuresAvailable: function () {\n return Promise.reject(Error_1.fromAction('Feature detection is only available on the client side.', Error_1.AppActionType.WINDOW_UNDEFINED));\n },\n getState: function () {\n return Promise.reject(Error_1.fromAction('State is only available on the client side.', Error_1.AppActionType.WINDOW_UNDEFINED));\n },\n localOrigin: '',\n subscribe: function () {\n return noop;\n },\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getWindow = exports.getLocation = exports.redirect = exports.shouldRedirect = void 0;\nfunction shouldRedirect(frame) {\n return frame === window;\n}\nexports.shouldRedirect = shouldRedirect;\nfunction redirect(url) {\n var location = getLocation();\n if (!location) {\n return;\n }\n location.assign(url);\n}\nexports.redirect = redirect;\nfunction getLocation() {\n return hasWindow() ? window.location : undefined;\n}\nexports.getLocation = getLocation;\nfunction getWindow() {\n return hasWindow() ? window : undefined;\n}\nexports.getWindow = getWindow;\nfunction hasWindow() {\n return typeof window !== 'undefined';\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleAppPrint = void 0;\nvar redirect_1 = require(\"./redirect\");\nfunction isRunningOniOS() {\n return navigator.userAgent.indexOf('iOS') >= 0;\n}\nfunction createHiddenInput() {\n var currentWindow = redirect_1.getWindow();\n if (!currentWindow || !currentWindow.document || !currentWindow.document.body) {\n return;\n }\n var inputElement = window.document.createElement('input');\n inputElement.style.display = 'none';\n window.document.body.appendChild(inputElement);\n return inputElement;\n}\nfunction printWindow() {\n if (!redirect_1.getWindow()) {\n return;\n }\n // @ts-ignore: Fixed in TypeScript 2.8.2\n window.print();\n}\nfunction handleMobileAppPrint() {\n var input = createHiddenInput();\n if (!input) {\n return;\n }\n input.select();\n printWindow();\n input.remove();\n}\nfunction handleAppPrint() {\n if (isRunningOniOS()) {\n handleMobileAppPrint();\n }\n else {\n printWindow();\n }\n}\nexports.handleAppPrint = handleAppPrint;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar collection_1 = require(\"../util/collection\");\n/**\n * Shopify App Bridge can be extended with hooks, which run when actions are dispatched and updated.\n * Hooks are middleware functions that can modify or cancel actions.\n *\n * The [validation middleware](../validate/README.md) is implemented using hooks.\n *\n * @remarks\n * Here’s an example hook that modifies all Toast show actions to have a duration of five seconds.\n *\n * ```ts\n * import createApp, {LifecycleHook, DispatchActionHook} from '@shopify/app-bridge';\n * import {Toast} from '@shopify/app-bridge/actions'\n *\n * const app = createApp({apiKey: API_KEY, shopOrigin: SHOP_ORIGIN});\n *\n * function makeToastsFiveSeconds: DispatchActionHook(next) {\n * return function(action){\n * if(action.type === Toast.ActionType.SHOW) {\n * const modifiedAction = {\n * ...action,\n * payload: {\n * ...action.payload,\n * duration: 5000,\n * },\n * };\n * return next(modifiedAction);\n * } else {\n * // don’t modify non-Toast actions\n * return next(action);\n * }\n * }\n * }\n *\n * app.hooks.set(LifecycleHook.DispatchAction, makeToastsFiveSeconds);\n * ```\n *\n * The hook function `makeToastsFiveSeconds()` takes a `next()` function as its argument.\n * The hook function returns an anonymous function, which takes the action being dispatched as its argument.\n *\n * To modify an action, call `next()` with the modified action, as in the example.\n * To cancel an action, don’t call `next()`, and the action will not be dispatched.\n */\nvar Hooks = /** @class */ (function () {\n function Hooks() {\n this.map = {};\n }\n Hooks.prototype.set = function (hook, handler) {\n if (!this.map.hasOwnProperty(hook)) {\n this.map[hook] = [];\n }\n var value = { handler: handler, remove: function () { } };\n var remove = collection_1.addAndRemoveFromCollection(this.map[hook], value);\n value = { handler: handler, remove: remove };\n return remove;\n };\n Hooks.prototype.get = function (hook) {\n var value = this.map[hook];\n return value ? value.map(function (val) { return val.handler; }) : undefined;\n };\n Hooks.prototype.run = function (hook, final, context) {\n var initialArgs = [];\n for (var _i = 3; _i < arguments.length; _i++) {\n initialArgs[_i - 3] = arguments[_i];\n }\n var index = 0;\n var handlers = this.get(hook) || [];\n function handler() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var childHandler = handlers[index++];\n if (childHandler) {\n return childHandler(handler).apply(context, args);\n }\n return final.apply(context, args);\n }\n return handler.apply(context, initialArgs);\n };\n return Hooks;\n}());\nexports.default = Hooks;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createApp = exports.createAppWrapper = exports.createClientApp = exports.getShopOrigin = exports.getUrlParams = exports.WINDOW_UNDEFINED_MESSAGE = void 0;\nvar helper_1 = require(\"../actions/helper\");\nvar Error_1 = require(\"../actions/Error\");\nvar Print_1 = require(\"../actions/Print\");\nvar MessageTransport_1 = require(\"../MessageTransport\");\nvar shared_1 = require(\"../util/shared\");\nvar env_1 = require(\"../util/env\");\nvar print_1 = require(\"./print\");\nvar redirect_1 = require(\"./redirect\");\nvar types_1 = require(\"./types\");\nvar Hooks_1 = __importDefault(require(\"./Hooks\"));\nexports.WINDOW_UNDEFINED_MESSAGE = 'window is not defined. Running an app outside a browser is not supported';\nfunction redirectHandler(hostFrame, config) {\n var apiKey = config.apiKey, shopOrigin = config.shopOrigin, _a = config.forceRedirect, forceRedirect = _a === void 0 ? !env_1.isDevelopmentClient : _a;\n var location = redirect_1.getLocation();\n if (env_1.isFrameless ||\n !location ||\n !apiKey ||\n !shopOrigin ||\n !forceRedirect ||\n !redirect_1.shouldRedirect(hostFrame)) {\n return;\n }\n var url = \"https://\" + shopOrigin + \"/admin/apps/\" + apiKey + location.pathname + (location.search || '');\n redirect_1.redirect(url);\n}\nfunction appSetUp(app) {\n app.subscribe(Print_1.ActionType.APP, print_1.handleAppPrint);\n}\n/**\n * Extracts the query parameters from the current URL.\n * @deprecated This function has been deprecated.\n * @public\n */\nfunction getUrlParams() {\n var params = {};\n var location = redirect_1.getLocation();\n if (!location) {\n return params;\n }\n var hashes = location.search.slice(location.search.indexOf('?') + 1).split('&');\n return hashes.reduce(function (acc, hash) {\n var _a;\n var _b = hash.split('='), key = _b[0], val = _b[1];\n return __assign(__assign({}, acc), (_a = {}, _a[decodeURIComponent(key)] = decodeURIComponent(val), _a));\n }, params);\n}\nexports.getUrlParams = getUrlParams;\n/**\n * Extracts the `shop` query parameter from the current URL.\n * @deprecated This function has been deprecated, see {@link https://help.shopify.com/api/embedded-apps/shop-origin}\n * @public\n */\nfunction getShopOrigin() {\n var params = getUrlParams();\n return params.shop;\n}\nexports.getShopOrigin = getShopOrigin;\n/**\n * @internal\n */\nexports.createClientApp = function (transport, middlewares) {\n if (middlewares === void 0) { middlewares = []; }\n var getStateListeners = [];\n var transportListener = MessageTransport_1.createTransportListener();\n var handler = function (event) {\n var message = event.data;\n var type = message.type, payload = message.payload;\n switch (type) {\n case 'getState':\n var resolvers = getStateListeners.splice(0);\n resolvers.forEach(function (resolver) { return resolver(payload); });\n break;\n case 'dispatch':\n transportListener.handleMessage(payload);\n var hasCallback = transportListener.handleActionDispatch(payload);\n if (hasCallback) {\n return;\n }\n // Throw an error if there are no subscriptions to this error\n var errorType = helper_1.findMatchInEnum(Error_1.ActionType, payload.type);\n if (errorType) {\n Error_1.throwError(errorType, payload);\n }\n break;\n default:\n // Silently swallow unknown actions\n }\n };\n transport.subscribe(handler);\n return function (config) {\n if (!config.shopOrigin) {\n throw Error_1.fromAction('shopOrigin must be provided', Error_1.AppActionType.INVALID_CONFIG);\n }\n var protocol = /^https?:\\/\\//;\n if (protocol.test(config.shopOrigin)) {\n var message = \"shopOrigin should not include protocol, please use: \" + config.shopOrigin.replace(protocol, '');\n throw Error_1.fromAction(message, Error_1.AppActionType.INVALID_CONFIG);\n }\n if (!config.apiKey) {\n throw Error_1.fromAction('apiKey must be provided', Error_1.AppActionType.INVALID_CONFIG);\n }\n var dispatcher = createDispatcher(transport, config);\n var subscribe = transportListener.createSubscribeHandler(dispatcher);\n // It is possible to initialize an app multiple times\n // Therefore we need to clear subscriptions to be safe\n dispatcher(types_1.MessageType.Unsubscribe);\n function dispatch(action) {\n dispatcher(types_1.MessageType.Dispatch, action);\n return action;\n }\n redirectHandler(transport.hostFrame, config);\n var hooks = new Hooks_1.default();\n var app = {\n localOrigin: transport.localOrigin,\n hooks: hooks,\n dispatch: function (action) {\n if (!app.hooks) {\n return dispatch(action);\n }\n return app.hooks.run(types_1.LifecycleHook.DispatchAction, dispatch, app, action);\n },\n featuresAvailable: function (features) {\n return app.getState('features').then(function (state) {\n if (features) {\n Object.keys(state).forEach(function (feature) {\n if (!features.includes(feature)) {\n delete state[feature];\n }\n });\n }\n return state;\n });\n },\n getState: function (query) {\n return new Promise(function (resolve) {\n getStateListeners.push(resolve);\n dispatcher(types_1.MessageType.GetState);\n }).then(function (state) {\n if (query) {\n return query.split('.').reduce(function (value, key) {\n if (typeof state !== 'object' || Array.isArray(state)) {\n return undefined;\n }\n value = state[key];\n state = value;\n return value;\n }, undefined);\n }\n return state;\n });\n },\n subscribe: subscribe,\n error: function (listener, id) {\n var unsubscribeCb = [];\n helper_1.forEachInEnum(Error_1.ActionType, function (eventNameSpace) {\n unsubscribeCb.push(subscribe(eventNameSpace, listener, id));\n });\n return function () {\n unsubscribeCb.forEach(function (unsubscribe) { return unsubscribe(); });\n };\n },\n };\n for (var _i = 0, middlewares_1 = middlewares; _i < middlewares_1.length; _i++) {\n var middleware = middlewares_1[_i];\n middleware(hooks, app);\n }\n appSetUp(app);\n return app;\n };\n};\n/**\n * @public\n */\nfunction createAppWrapper(frame, localOrigin, middleware) {\n if (middleware === void 0) { middleware = []; }\n if (!frame) {\n throw Error_1.fromAction(exports.WINDOW_UNDEFINED_MESSAGE, Error_1.AppActionType.WINDOW_UNDEFINED);\n }\n var location = redirect_1.getLocation();\n var origin = localOrigin || (location && location.origin);\n if (!origin) {\n throw Error_1.fromAction('local origin cannot be blank', Error_1.AppActionType.MISSING_LOCAL_ORIGIN);\n }\n var transport = MessageTransport_1.fromWindow(frame, origin);\n var appCreator = exports.createClientApp(transport, middleware);\n return appCreator;\n}\nexports.createAppWrapper = createAppWrapper;\n/**\n * Creates your application instance.\n * @param config - Both `apiKey` and `shopOrigin` are required.\n * @remarks\n * You will need to store `shopOrigin` during the authentication process and then retrieve it for the code to work properly. To learn more about this process, see {@link https://help.shopify.com/api/embedded-apps/shop-origin | Getting and storing the shop origin}.\n * @public\n */\nfunction createApp(config) {\n var currentWindow = redirect_1.getWindow();\n if (!currentWindow) {\n return shared_1.serverAppBridge;\n }\n return createAppWrapper(currentWindow.top)(config);\n}\nexports.createApp = createApp;\nfunction createDispatcher(transport, config) {\n return function (type, payload) {\n transport.dispatch({\n payload: payload,\n source: config,\n type: type,\n });\n };\n}\n/**\n * {@inheritdocs createApp}\n * @public\n */\nexports.default = createApp;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Client_1 = require(\"./Client\");\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./Client\"), exports);\nexports.default = Client_1.createClientApp;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Style = exports.Icon = exports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"CLICK\"] = \"CLICK\";\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"CLICK\"] = \"APP::BUTTON::CLICK\";\n ActionType[\"UPDATE\"] = \"APP::BUTTON::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Icon;\n(function (Icon) {\n Icon[\"Print\"] = \"print\";\n})(Icon = exports.Icon || (exports.Icon = {}));\nvar Style;\n(function (Style) {\n Style[\"Danger\"] = \"danger\";\n})(Style = exports.Style || (exports.Style = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Button = exports.isValidButtonProps = exports.update = exports.clickButton = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction clickButton(group, component, payload) {\n var id = component.id;\n var action = helper_1.getEventNameSpace(group, types_2.Action.CLICK, component);\n var buttonPayload = {\n id: id,\n payload: payload,\n };\n return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });\n}\nexports.clickButton = clickButton;\nfunction update(group, component, props) {\n var id = component.id;\n var label = props.label;\n var action = helper_1.getEventNameSpace(group, types_2.Action.UPDATE, component);\n var buttonPayload = __assign(__assign({}, props), { id: id,\n label: label });\n return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });\n}\nexports.update = update;\nfunction isValidButtonProps(button) {\n return typeof button.id === 'string' && typeof button.label === 'string';\n}\nexports.isValidButtonProps = isValidButtonProps;\nvar Button = /** @class */ (function (_super) {\n __extends(Button, _super);\n function Button(app, options) {\n var _this = _super.call(this, app, types_1.ComponentType.Button, types_1.Group.Button) || this;\n _this.disabled = false;\n _this.loading = false;\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(Button.prototype, \"options\", {\n get: function () {\n return {\n disabled: this.disabled,\n icon: this.icon,\n label: this.label,\n style: this.style,\n loading: this.loading,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Button.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n Button.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var label = mergedOptions.label, disabled = mergedOptions.disabled, icon = mergedOptions.icon, style = mergedOptions.style, loading = mergedOptions.loading;\n this.label = label;\n this.disabled = Boolean(disabled);\n this.icon = icon;\n this.style = style;\n this.loading = Boolean(loading);\n if (shouldUpdate) {\n this.dispatch(types_2.Action.UPDATE);\n }\n return this;\n };\n Button.prototype.dispatch = function (action, payload) {\n switch (action) {\n case types_2.Action.CLICK:\n this.app.dispatch(clickButton(this.group, this.component, payload));\n break;\n case types_2.Action.UPDATE:\n var updateAction = update(this.group, this.component, this.payload);\n this.app.dispatch(updateAction);\n break;\n }\n return this;\n };\n return Button;\n}(helper_1.ActionSet));\nexports.Button = Button;\nfunction create(app, options) {\n return new Button(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validate = exports.composeSchemas = exports.makeOptional = exports.oneOf = exports.matchesObject = exports.matchesArray = exports.matchesEnum = exports.matchesPositiveNumber = exports.matchesPositiveInteger = exports.matchesString = exports.matchesBoolean = void 0;\nvar TYPE_ERROR = 'type_error_expected';\nfunction constructErrors(value, error, options) {\n if (options === void 0) { options = { message: undefined }; }\n return [\n {\n value: value,\n error: error,\n message: typeof options.message === 'function' ? options.message(error, value) : options.message,\n },\n ];\n}\nfunction getErrors(obj, validator, key) {\n var value = key ? obj[key] : obj;\n var path = key ? \"['\" + key + \"']\" : undefined;\n var error = validator(value);\n if (!error) {\n return;\n }\n return error.map(function (o) { return (__assign(__assign({}, o), { path: \"\" + (path || '') + (o.path || '') || undefined })); });\n}\nfunction matchesBoolean(options) {\n return function (value) {\n return typeof value === 'boolean'\n ? undefined\n : constructErrors(value, TYPE_ERROR + \"_boolean\", options);\n };\n}\nexports.matchesBoolean = matchesBoolean;\nfunction matchesString(options) {\n return function (value) {\n return typeof value === 'string' ? undefined : constructErrors(value, TYPE_ERROR + \"_string\", options);\n };\n}\nexports.matchesString = matchesString;\nfunction matchesPositiveInteger(options) {\n return function (value) {\n return !Number.isInteger(value) || value < 0\n ? constructErrors(value, TYPE_ERROR + \"_integer\", options)\n : undefined;\n };\n}\nexports.matchesPositiveInteger = matchesPositiveInteger;\nfunction matchesPositiveNumber(options) {\n return function (value) {\n return Number.isNaN(value) || !Number.isFinite(value) || value < 0\n ? constructErrors(value, TYPE_ERROR + \"_number\", options)\n : undefined;\n };\n}\nexports.matchesPositiveNumber = matchesPositiveNumber;\n/**\n * Returns a validator that matches values in the given enum\n * @param type - enum to use for match values\n * @public\n */\nfunction matchesEnum(types, options) {\n return function (value) {\n var values = Object.keys(types).map(function (key) { return types[key]; });\n var message = (options && options.message) || \"expected:\" + values.map(function (val) { return \"`\" + val + \"`\"; }).join(' or ');\n return values.includes(value)\n ? undefined\n : constructErrors(value, 'invalid_enum_value', __assign(__assign({}, options), { message: message }));\n };\n}\nexports.matchesEnum = matchesEnum;\nfunction matchesArray(validator, options) {\n return function (value) {\n if (!Array.isArray(value)) {\n return constructErrors(value, TYPE_ERROR + \"_array\", options);\n }\n if (!validator) {\n return;\n }\n var errors = [];\n value.forEach(function (val, key) {\n var objectError = validator(val);\n if (objectError) {\n errors = errors.concat(objectError.map(function (error) { return (__assign(__assign({}, error), { path: \"['\" + key + \"']\" + (error.path || '') })); }));\n }\n });\n return errors.length ? errors : undefined;\n };\n}\nexports.matchesArray = matchesArray;\nfunction matchesObject(schema, options) {\n return function (val) {\n if (typeof val !== 'object' || !val || Array.isArray(val)) {\n return constructErrors(val, TYPE_ERROR + \"_object\", options);\n }\n var flattened = Object.keys(schema).reduce(function (acc, key) {\n return __spreadArrays(acc, (getErrors(val, schema[key], key) || []));\n }, []);\n return flattened.length ? flattened : undefined;\n };\n}\nexports.matchesObject = matchesObject;\nfunction oneOf() {\n var validators = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n validators[_i] = arguments[_i];\n }\n return function (val) {\n var errors = [];\n for (var _i = 0, validators_1 = validators; _i < validators_1.length; _i++) {\n var validator = validators_1[_i];\n var result = validator(val);\n if (result == null)\n return result;\n errors.push.apply(errors, result);\n }\n return errors;\n };\n}\nexports.oneOf = oneOf;\nfunction makeOptional(validator) {\n return function (value) {\n if (value === undefined || value === null) {\n return undefined;\n }\n return validator(value);\n };\n}\nexports.makeOptional = makeOptional;\nfunction composeSchemas() {\n var validators = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n validators[_i] = arguments[_i];\n }\n return function (val) {\n var error;\n var i = 0;\n var len = validators.length;\n while (!error && i < len) {\n error = validators[i](val);\n if (error) {\n return error;\n }\n i++;\n }\n };\n}\nexports.composeSchemas = composeSchemas;\nfunction validate(obj, validator) {\n return getErrors(obj, validator);\n}\nexports.validate = validate;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mixedAppClientCheck = exports.relativePathSchema = exports.relativeUrlSchema = exports.isValidRelativePath = exports.actionMessage = exports.createActionValidator = void 0;\nvar type_validate_1 = require(\"./type-validate\");\nfunction createActionValidator(type, payloadSchema, payloadRequired, idRequired) {\n if (payloadSchema === void 0) { payloadSchema = undefined; }\n if (payloadRequired === void 0) { payloadRequired = false; }\n if (idRequired === void 0) { idRequired = false; }\n var idSchema = type_validate_1.matchesObject({\n id: idRequired ? type_validate_1.matchesString() : type_validate_1.makeOptional(type_validate_1.matchesString()),\n });\n var schema = payloadSchema ? type_validate_1.composeSchemas(idSchema, payloadSchema) : idSchema;\n return type_validate_1.matchesObject({\n type: type_validate_1.matchesEnum(type, {\n message: function (_, val) { return \"The action type `\" + val + \"` is invalid or unsupported\"; },\n }),\n payload: payloadRequired ? schema : type_validate_1.makeOptional(schema),\n });\n}\nexports.createActionValidator = createActionValidator;\nfunction actionMessage(errors) {\n return errors\n .map(function (err) {\n var path = err.path, error = err.error, message = err.message, value = err.value;\n var valueStr = typeof value === 'object' ? JSON.stringify(value) : value;\n return \"`\" + error + \"` thrown for\" + (path ? \" path: \" + path + \" and\" : '') + \" value: `\" + valueStr + \"`\" + (message ? \" with message: \" + message : '');\n })\n .join(' | ');\n}\nexports.actionMessage = actionMessage;\nfunction isValidRelativePath(path) {\n return typeof path === 'string' && (path === '' || path.startsWith('/'));\n}\nexports.isValidRelativePath = isValidRelativePath;\nexports.relativeUrlSchema = type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {\n return isValidRelativePath(value)\n ? undefined\n : [{ error: 'invalid_relative_path', value: value, message: 'expected string to start with `/`' }];\n});\nexports.relativePathSchema = type_validate_1.matchesObject({\n path: exports.relativeUrlSchema,\n});\nfunction mixedAppClientCheck(window) {\n window.addEventListener('DOMContentLoaded', function () {\n if (!window.hasOwnProperty('ShopifyApp')) {\n return;\n }\n console.error(\"%cException Detected \\uD83D\\uDEAB\\n\\n%cAn instance of the EASDK client was detected while initializing Shopify App Bridge. Using Shopify App Bridge and the EASDK simultaneously is not supported.\\n\\nIf you're migrating an existing app that was built with the shopify_app gem, then the EASDK client might have been included in the home page view template. In this case, remove it from your app before initializing Shopify App Bridge again.\", 'font-size: large;', 'font-size: normal;');\n }, { once: true });\n}\nexports.mixedAppClientCheck = mixedAppClientCheck;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.buttonSchemaWithId = exports.buttonSchema = void 0;\nvar Button_1 = require(\"../../actions/Button\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Button_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nexports.buttonSchema = type_validate_1.matchesObject({\n disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n label: type_validate_1.matchesString(),\n style: type_validate_1.makeOptional(type_validate_1.matchesEnum(Button_1.Style)),\n icon: type_validate_1.makeOptional(type_validate_1.matchesEnum(Button_1.Icon)),\n loading: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n});\nexports.buttonSchemaWithId = type_validate_1.composeSchemas(type_validate_1.matchesObject({\n id: type_validate_1.matchesString(),\n}), exports.buttonSchema);\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.buttonSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(Button_1.ActionType, action.type === Button_1.ActionType.UPDATE ? exports.buttonSchema : undefined, true, true);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\n/**\n * Action Types for the Features group\n * @public\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"OPEN_CAMERA\"] = \"APP::SCANNER::OPEN::CAMERA\";\n ActionType[\"CAPTURE\"] = \"APP::SCANNER::CAPTURE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n/**\n * Actions available to the Features group\n * @public\n */\nvar Action;\n(function (Action) {\n Action[\"OPEN_CAMERA\"] = \"OPEN::CAMERA\";\n Action[\"CAPTURE\"] = \"CAPTURE\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.capture = exports.openCamera = exports.create = exports.Scanner = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\n/**\n * A set of Actions for displaying a Camera Scanner component\n * @public\n */\nvar Scanner = /** @class */ (function (_super) {\n __extends(Scanner, _super);\n function Scanner(app, options) {\n return _super.call(this, app, types_1.Group.Scanner, types_1.Group.Scanner, options ? options.id : undefined) || this;\n }\n /**\n * @public\n */\n Scanner.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.OPEN_CAMERA:\n this.dispatchScannerAction(types_2.ActionType.OPEN_CAMERA);\n break;\n }\n return this;\n };\n /**\n * @internal\n */\n Scanner.prototype.dispatchScannerAction = function (type) {\n this.app.dispatch(helper_1.actionWrapper({\n type: type,\n group: types_1.Group.Scanner,\n payload: {\n id: this.id,\n },\n }));\n };\n return Scanner;\n}(helper_1.ActionSet));\nexports.Scanner = Scanner;\n/**\n * @public\n */\nfunction create(app, options) {\n return new Scanner(app, options);\n}\nexports.create = create;\nfunction openCamera() {\n return helper_1.actionWrapper({\n group: types_1.Group.Scanner,\n type: types_2.ActionType.OPEN_CAMERA,\n });\n}\nexports.openCamera = openCamera;\nfunction capture(payload) {\n return helper_1.actionWrapper({\n group: types_1.Group.Scanner,\n type: types_2.ActionType.CAPTURE,\n payload: payload,\n });\n}\nexports.capture = capture;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar Scanner_1 = require(\"../../actions/Scanner\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Scanner_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nfunction validateAction(action) {\n return type_validate_1.validate(action, utils_1.createActionValidator(Scanner_1.ActionType));\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"FETCH\"] = \"APP::CART::FETCH\";\n ActionType[\"UPDATE\"] = \"APP::CART::UPDATE\";\n ActionType[\"SET_CUSTOMER\"] = \"APP::CART::SET_CUSTOMER\";\n ActionType[\"REMOVE_CUSTOMER\"] = \"APP::CART::REMOVE_CUSTOMER\";\n ActionType[\"ADD_CUSTOMER_ADDRESS\"] = \"APP::CART::ADD_CUSTOMER_ADDRESS\";\n ActionType[\"UPDATE_CUSTOMER_ADDRESS\"] = \"APP::CART::UPDATE_CUSTOMER_ADDRESS\";\n ActionType[\"SET_DISCOUNT\"] = \"APP::CART::SET_DISCOUNT\";\n ActionType[\"REMOVE_DISCOUNT\"] = \"APP::CART::REMOVE_DISCOUNT\";\n ActionType[\"SET_PROPERTIES\"] = \"APP::CART::SET_PROPERTIES\";\n ActionType[\"REMOVE_PROPERTIES\"] = \"APP::CART::REMOVE_PROPERTIES\";\n ActionType[\"CLEAR\"] = \"APP::CART::CLEAR\";\n ActionType[\"ADD_LINE_ITEM\"] = \"APP::CART::ADD_LINE_ITEM\";\n ActionType[\"UPDATE_LINE_ITEM\"] = \"APP::CART::UPDATE_LINE_ITEM\";\n ActionType[\"REMOVE_LINE_ITEM\"] = \"APP::CART::REMOVE_LINE_ITEM\";\n ActionType[\"SET_LINE_ITEM_DISCOUNT\"] = \"APP::CART::SET_LINE_ITEM_DISCOUNT\";\n ActionType[\"REMOVE_LINE_ITEM_DISCOUNT\"] = \"APP::CART::REMOVE_LINE_ITEM_DISCOUNT\";\n ActionType[\"SET_LINE_ITEM_PROPERTIES\"] = \"APP::CART::SET_LINE_ITEM_PROPERTIES\";\n ActionType[\"REMOVE_LINE_ITEM_PROPERTIES\"] = \"APP::CART::REMOVE_LINE_ITEM_PROPERTIES\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"FETCH\"] = \"FETCH\";\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"SET_CUSTOMER\"] = \"SET_CUSTOMER\";\n Action[\"REMOVE_CUSTOMER\"] = \"REMOVE_CUSTOMER\";\n Action[\"ADD_CUSTOMER_ADDRESS\"] = \"ADD_CUSTOMER_ADDRESS\";\n Action[\"UPDATE_CUSTOMER_ADDRESS\"] = \"UPDATE_CUSTOMER_ADDRESS\";\n Action[\"SET_DISCOUNT\"] = \"SET_DISCOUNT\";\n Action[\"REMOVE_DISCOUNT\"] = \"REMOVE_DISCOUNT\";\n Action[\"SET_PROPERTIES\"] = \"SET_PROPERTIES\";\n Action[\"REMOVE_PROPERTIES\"] = \"REMOVE_PROPERTIES\";\n Action[\"CLEAR\"] = \"CLEAR\";\n Action[\"ADD_LINE_ITEM\"] = \"ADD_LINE_ITEM\";\n Action[\"UPDATE_LINE_ITEM\"] = \"UPDATE_LINE_ITEM\";\n Action[\"REMOVE_LINE_ITEM\"] = \"REMOVE_LINE_ITEM\";\n Action[\"SET_LINE_ITEM_DISCOUNT\"] = \"SET_LINE_ITEM_DISCOUNT\";\n Action[\"REMOVE_LINE_ITEM_DISCOUNT\"] = \"REMOVE_LINE_ITEM_DISCOUNT\";\n Action[\"SET_LINE_ITEM_PROPERTIES\"] = \"SET_LINE_ITEM_PROPERTIES\";\n Action[\"REMOVE_LINE_ITEM_PROPERTIES\"] = \"REMOVE_LINE_ITEM_PROPERTIES\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Cart = exports.setLineItemProperties = exports.removeLineItemDiscount = exports.setLineItemDiscount = exports.removeLineItem = exports.updateLineItem = exports.addLineItem = exports.removeProperties = exports.setProperties = exports.setDiscount = exports.updateCustomerAddress = exports.addCustomerAddress = exports.setCustomer = exports.update = exports.fetch = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\n/**\n * Cart action\n * @internal\n */\nfunction createCartAction(type, payload) {\n if (payload === void 0) { payload = {}; }\n return helper_1.actionWrapper({\n group: types_1.Group.Cart,\n type: type,\n payload: payload,\n });\n}\nfunction fetch() {\n return createCartAction(types_2.ActionType.FETCH);\n}\nexports.fetch = fetch;\nfunction update(payload) {\n return createCartAction(types_2.ActionType.UPDATE, payload);\n}\nexports.update = update;\nfunction setCustomer(payload) {\n return createCartAction(types_2.ActionType.SET_CUSTOMER, payload);\n}\nexports.setCustomer = setCustomer;\nfunction addCustomerAddress(payload) {\n return createCartAction(types_2.ActionType.ADD_CUSTOMER_ADDRESS, payload);\n}\nexports.addCustomerAddress = addCustomerAddress;\nfunction updateCustomerAddress(payload) {\n return createCartAction(types_2.ActionType.UPDATE_CUSTOMER_ADDRESS, payload);\n}\nexports.updateCustomerAddress = updateCustomerAddress;\nfunction setDiscount(payload) {\n return createCartAction(types_2.ActionType.SET_DISCOUNT, payload);\n}\nexports.setDiscount = setDiscount;\nfunction setProperties(payload) {\n return createCartAction(types_2.ActionType.SET_PROPERTIES, payload);\n}\nexports.setProperties = setProperties;\nfunction removeProperties(payload) {\n return createCartAction(types_2.ActionType.REMOVE_PROPERTIES, payload);\n}\nexports.removeProperties = removeProperties;\nfunction addLineItem(payload) {\n return createCartAction(types_2.ActionType.ADD_LINE_ITEM, payload);\n}\nexports.addLineItem = addLineItem;\nfunction updateLineItem(payload) {\n return createCartAction(types_2.ActionType.UPDATE_LINE_ITEM, payload);\n}\nexports.updateLineItem = updateLineItem;\nfunction removeLineItem(payload) {\n return createCartAction(types_2.ActionType.REMOVE_LINE_ITEM, payload);\n}\nexports.removeLineItem = removeLineItem;\nfunction setLineItemDiscount(payload) {\n return createCartAction(types_2.ActionType.SET_LINE_ITEM_DISCOUNT, payload);\n}\nexports.setLineItemDiscount = setLineItemDiscount;\nfunction removeLineItemDiscount(payload) {\n return createCartAction(types_2.ActionType.REMOVE_LINE_ITEM_DISCOUNT, payload);\n}\nexports.removeLineItemDiscount = removeLineItemDiscount;\nfunction setLineItemProperties(payload) {\n return createCartAction(types_2.ActionType.SET_LINE_ITEM_PROPERTIES, payload);\n}\nexports.setLineItemProperties = setLineItemProperties;\n/**\n * Cart\n */\nvar Cart = /** @class */ (function (_super) {\n __extends(Cart, _super);\n function Cart(app, options) {\n return _super.call(this, app, types_1.Group.Cart, types_1.Group.Cart, options ? options.id : undefined) || this;\n }\n Cart.prototype.dispatch = function (action, payload) {\n switch (action) {\n case types_2.Action.FETCH:\n this.dispatchCartAction(types_2.ActionType.FETCH);\n break;\n case types_2.Action.UPDATE:\n this.dispatchCartAction(types_2.ActionType.UPDATE, payload);\n break;\n case types_2.Action.SET_CUSTOMER:\n this.dispatchCartAction(types_2.ActionType.SET_CUSTOMER, payload);\n break;\n case types_2.Action.REMOVE_CUSTOMER:\n this.dispatchCartAction(types_2.ActionType.REMOVE_CUSTOMER, payload);\n break;\n case types_2.Action.ADD_CUSTOMER_ADDRESS:\n this.dispatchCartAction(types_2.ActionType.ADD_CUSTOMER_ADDRESS, payload);\n break;\n case types_2.Action.UPDATE_CUSTOMER_ADDRESS:\n this.dispatchCartAction(types_2.ActionType.UPDATE_CUSTOMER_ADDRESS, payload);\n break;\n case types_2.Action.SET_DISCOUNT:\n this.dispatchCartAction(types_2.ActionType.SET_DISCOUNT, payload);\n break;\n case types_2.Action.REMOVE_DISCOUNT:\n this.dispatchCartAction(types_2.ActionType.REMOVE_DISCOUNT, payload);\n break;\n case types_2.Action.SET_PROPERTIES:\n this.dispatchCartAction(types_2.ActionType.SET_PROPERTIES, payload);\n break;\n case types_2.Action.REMOVE_PROPERTIES:\n this.dispatchCartAction(types_2.ActionType.REMOVE_PROPERTIES, payload);\n break;\n case types_2.Action.CLEAR:\n this.dispatchCartAction(types_2.ActionType.CLEAR, payload);\n break;\n case types_2.Action.ADD_LINE_ITEM:\n this.dispatchCartAction(types_2.ActionType.ADD_LINE_ITEM, payload);\n break;\n case types_2.Action.UPDATE_LINE_ITEM:\n this.dispatchCartAction(types_2.ActionType.UPDATE_LINE_ITEM, payload);\n break;\n case types_2.Action.REMOVE_LINE_ITEM:\n this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM, payload);\n break;\n case types_2.Action.SET_LINE_ITEM_DISCOUNT:\n this.dispatchCartAction(types_2.ActionType.SET_LINE_ITEM_DISCOUNT, payload);\n break;\n case types_2.Action.REMOVE_LINE_ITEM_DISCOUNT:\n this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM_DISCOUNT, payload);\n break;\n case types_2.Action.SET_LINE_ITEM_PROPERTIES:\n this.dispatchCartAction(types_2.ActionType.SET_LINE_ITEM_PROPERTIES, payload);\n break;\n case types_2.Action.REMOVE_LINE_ITEM_PROPERTIES:\n this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM_PROPERTIES, payload);\n break;\n }\n return this;\n };\n Cart.prototype.dispatchCartAction = function (type, payload) {\n this.app.dispatch(createCartAction(type, __assign(__assign({}, payload), { id: this.id })));\n };\n return Cart;\n}(helper_1.ActionSet));\nexports.Cart = Cart;\nfunction create(app, options) {\n return new Cart(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar Cart_1 = require(\"../../actions/Cart\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Cart_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar addressSchema = type_validate_1.matchesObject({\n address1: type_validate_1.makeOptional(type_validate_1.matchesString()),\n address2: type_validate_1.makeOptional(type_validate_1.matchesString()),\n city: type_validate_1.makeOptional(type_validate_1.matchesString()),\n company: type_validate_1.makeOptional(type_validate_1.matchesString()),\n firstName: type_validate_1.makeOptional(type_validate_1.matchesString()),\n lastName: type_validate_1.makeOptional(type_validate_1.matchesString()),\n phone: type_validate_1.makeOptional(type_validate_1.matchesString()),\n province: type_validate_1.makeOptional(type_validate_1.matchesString()),\n country: type_validate_1.makeOptional(type_validate_1.matchesString()),\n zip: type_validate_1.makeOptional(type_validate_1.matchesString()),\n name: type_validate_1.makeOptional(type_validate_1.matchesString()),\n provinceCode: type_validate_1.makeOptional(type_validate_1.matchesString()),\n countryCode: type_validate_1.makeOptional(type_validate_1.matchesString()),\n});\nvar discountSchema = type_validate_1.matchesObject({\n amount: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),\n discountDescription: type_validate_1.makeOptional(type_validate_1.matchesString()),\n type: type_validate_1.makeOptional(type_validate_1.matchesString()),\n discountCode: type_validate_1.makeOptional(type_validate_1.matchesString()),\n});\nvar discountAmount = type_validate_1.matchesObject({\n amount: type_validate_1.matchesPositiveNumber(),\n discountDescription: type_validate_1.makeOptional(type_validate_1.matchesString()),\n type: type_validate_1.makeOptional(type_validate_1.matchesString()),\n});\nvar discountCode = type_validate_1.matchesObject({\n discountCode: type_validate_1.matchesString(),\n});\nvar lineItemSchema = type_validate_1.matchesObject({\n price: type_validate_1.makeOptional(type_validate_1.matchesPositiveNumber()),\n quantity: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),\n title: type_validate_1.makeOptional(type_validate_1.matchesString()),\n variantId: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),\n discount: type_validate_1.makeOptional(discountAmount),\n taxable: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n});\nvar updateLineItemSchema = type_validate_1.matchesObject({\n quantity: type_validate_1.matchesPositiveInteger(),\n});\nvar customerSchema = type_validate_1.matchesObject({\n id: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),\n email: type_validate_1.makeOptional(type_validate_1.matchesString()),\n firstName: type_validate_1.makeOptional(type_validate_1.matchesString()),\n lastName: type_validate_1.makeOptional(type_validate_1.matchesString()),\n note: type_validate_1.makeOptional(type_validate_1.matchesString()),\n addresses: type_validate_1.makeOptional(type_validate_1.matchesArray(addressSchema)),\n});\nvar noteSchema = type_validate_1.matchesObject({\n name: type_validate_1.matchesString(),\n value: type_validate_1.matchesString(),\n});\nvar cartSchema = type_validate_1.matchesObject({\n cartDiscount: type_validate_1.makeOptional(discountSchema),\n customer: type_validate_1.makeOptional(customerSchema),\n grandTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),\n lineItems: type_validate_1.makeOptional(type_validate_1.matchesArray(lineItemSchema)),\n noteAttributes: type_validate_1.makeOptional(type_validate_1.matchesArray(noteSchema)),\n subTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),\n taxTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),\n});\nvar propertiesSchema = type_validate_1.composeSchemas(type_validate_1.matchesObject({}), function (value) {\n var validator = type_validate_1.matchesString();\n var schema = Object.keys(value).reduce(function (acc, key) {\n acc[key] = validator;\n return acc;\n }, {});\n return type_validate_1.validate(value, type_validate_1.matchesObject(schema));\n});\nvar matchesStringArray = type_validate_1.matchesArray(type_validate_1.matchesString());\nfunction createDataValidator(data) {\n return utils_1.createActionValidator(Cart_1.ActionType, data ? type_validate_1.matchesObject({ data: data }) : undefined, true, true);\n}\nfunction createDataValidatorWithIndex(data) {\n var indexSchema = type_validate_1.matchesObject({ index: type_validate_1.matchesPositiveInteger() });\n if (data) {\n var dataSchema = type_validate_1.matchesObject({ data: data });\n return utils_1.createActionValidator(Cart_1.ActionType, type_validate_1.composeSchemas(indexSchema, dataSchema), true, true);\n }\n return utils_1.createActionValidator(Cart_1.ActionType, indexSchema, true, true);\n}\nfunction getDiscountSchema(data) {\n if (data.amount) {\n return discountAmount;\n }\n return discountCode;\n}\nfunction validateAction(action) {\n switch (action.type) {\n case Cart_1.ActionType.UPDATE:\n return type_validate_1.validate(action, createDataValidator(cartSchema));\n case Cart_1.ActionType.SET_CUSTOMER:\n return type_validate_1.validate(action, createDataValidator(customerSchema));\n case Cart_1.ActionType.ADD_CUSTOMER_ADDRESS:\n return type_validate_1.validate(action, createDataValidator(addressSchema));\n case Cart_1.ActionType.UPDATE_CUSTOMER_ADDRESS:\n return type_validate_1.validate(action, createDataValidatorWithIndex(addressSchema));\n case Cart_1.ActionType.SET_DISCOUNT:\n return type_validate_1.validate(action, createDataValidator(getDiscountSchema(action.payload.data)));\n case Cart_1.ActionType.SET_PROPERTIES:\n return type_validate_1.validate(action, createDataValidator(propertiesSchema));\n case Cart_1.ActionType.REMOVE_PROPERTIES:\n return type_validate_1.validate(action, createDataValidator(matchesStringArray));\n case Cart_1.ActionType.ADD_LINE_ITEM:\n return type_validate_1.validate(action, createDataValidator(lineItemSchema));\n case Cart_1.ActionType.UPDATE_LINE_ITEM:\n return type_validate_1.validate(action, createDataValidatorWithIndex(updateLineItemSchema));\n case Cart_1.ActionType.REMOVE_LINE_ITEM:\n return type_validate_1.validate(action, createDataValidatorWithIndex());\n case Cart_1.ActionType.SET_LINE_ITEM_DISCOUNT:\n return type_validate_1.validate(action, createDataValidatorWithIndex(discountAmount));\n case Cart_1.ActionType.REMOVE_LINE_ITEM_DISCOUNT:\n return type_validate_1.validate(action, createDataValidatorWithIndex());\n case Cart_1.ActionType.SET_LINE_ITEM_PROPERTIES:\n return type_validate_1.validate(action, createDataValidatorWithIndex(propertiesSchema));\n case Cart_1.ActionType.REMOVE_LINE_ITEM_PROPERTIES:\n return type_validate_1.validate(action, createDataValidatorWithIndex(matchesStringArray));\n case Cart_1.ActionType.FETCH:\n case Cart_1.ActionType.REMOVE_CUSTOMER:\n case Cart_1.ActionType.REMOVE_DISCOUNT:\n case Cart_1.ActionType.CLEAR:\n default:\n return type_validate_1.validate(action, utils_1.createActionValidator(Cart_1.ActionType, undefined, false, true));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ContextualSaveBar = exports.discard = exports.save = exports.hide = exports.show = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\n/**\n * ContextualSaveBar action enum\n */\nvar Action;\n(function (Action) {\n Action[\"DISCARD\"] = \"DISCARD\";\n Action[\"SAVE\"] = \"SAVE\";\n Action[\"SHOW\"] = \"SHOW\";\n Action[\"HIDE\"] = \"HIDE\";\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * ContextualSaveBar action type enum\n * @remarks includes the action prefix and group\n *\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"DISCARD\"] = \"APP::CONTEXTUAL_SAVE_BAR::DISCARD\";\n ActionType[\"SAVE\"] = \"APP::CONTEXTUAL_SAVE_BAR::SAVE\";\n ActionType[\"SHOW\"] = \"APP::CONTEXTUAL_SAVE_BAR::SHOW\";\n ActionType[\"HIDE\"] = \"APP::CONTEXTUAL_SAVE_BAR::HIDE\";\n ActionType[\"UPDATE\"] = \"APP::CONTEXTUAL_SAVE_BAR::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction createContextBarAction(action, payload) {\n return helper_1.actionWrapper({\n group: types_1.Group.ContextualSaveBar,\n type: ActionType[action],\n payload: payload,\n });\n}\nfunction show(payload) {\n return createContextBarAction(Action.SHOW, payload);\n}\nexports.show = show;\nfunction hide(payload) {\n return createContextBarAction(Action.HIDE, payload);\n}\nexports.hide = hide;\nfunction save(payload) {\n return createContextBarAction(Action.SAVE, payload);\n}\nexports.save = save;\nfunction discard(payload) {\n return createContextBarAction(Action.DISCARD, payload);\n}\nexports.discard = discard;\n/**\n * ContextualSaveBar action set\n */\nvar ContextualSaveBar = /** @class */ (function (_super) {\n __extends(ContextualSaveBar, _super);\n /**\n * Returns a new instance of a ContextualSaveBar action set\n * @param app the client application\n */\n function ContextualSaveBar(app, options) {\n if (options === void 0) { options = {}; }\n var _this = _super.call(this, app, types_1.Group.ContextualSaveBar, types_1.Group.ContextualSaveBar) || this;\n _this.options = options;\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(ContextualSaveBar.prototype, \"payload\", {\n /**\n * Returns the action set payload\n */\n get: function () {\n return __assign({ id: this.id }, this.options);\n },\n enumerable: false,\n configurable: true\n });\n ContextualSaveBar.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n this.options = mergedOptions;\n if (shouldUpdate) {\n this.dispatch(Action.UPDATE);\n }\n return this;\n };\n /**\n * Dispatches a given action with the action set payload\n * @param action the action enum\n * @returns the action set instance\n */\n ContextualSaveBar.prototype.dispatch = function (action) {\n this.app.dispatch(createContextBarAction(action, this.payload));\n return this;\n };\n return ContextualSaveBar;\n}(helper_1.ActionSet));\nexports.ContextualSaveBar = ContextualSaveBar;\n/**\n * Returns a new instance of a ContextualSaveBar action set\n * @param app the client application\n *\n */\nfunction create(app, options) {\n return new ContextualSaveBar(app, options);\n}\nexports.create = create;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.contextSaveBarSchema = void 0;\nvar type_validate_1 = require(\"../type-validate\");\nvar ContextualSaveBar_1 = require(\"../../actions/ContextualSaveBar\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return ContextualSaveBar_1.ActionType; } });\nvar utils_1 = require(\"../utils\");\nexports.contextSaveBarSchema = type_validate_1.makeOptional(type_validate_1.matchesObject({\n fullWidth: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n discardAction: type_validate_1.makeOptional(type_validate_1.matchesObject({\n disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n discardConfirmationModal: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n })),\n saveAction: type_validate_1.makeOptional(type_validate_1.matchesObject({\n disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n })),\n leaveConfirmationDisable: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n}));\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.contextSaveBarSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(ContextualSaveBar_1.ActionType, exports.contextSaveBarSchema);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.FeedbackModal = exports.close = exports.open = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\n/**\n * Action for the Feedback Modal group\n * @public\n */\nvar Action;\n(function (Action) {\n Action[\"OPEN\"] = \"OPEN\";\n Action[\"CLOSE\"] = \"CLOSE\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Action types for the Feedback Modal group\n * @public\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"OPEN\"] = \"APP::FEEDBACK_MODAL::OPEN\";\n ActionType[\"CLOSE\"] = \"APP::FEEDBACK_MODAL::CLOSE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction open(payload) {\n return helper_1.actionWrapper({\n group: types_1.Group.FeedbackModal,\n payload: payload,\n type: ActionType.OPEN,\n });\n}\nexports.open = open;\nfunction close(payload) {\n return helper_1.actionWrapper({\n group: types_1.Group.FeedbackModal,\n payload: payload,\n type: ActionType.CLOSE,\n });\n}\nexports.close = close;\n/**\n * FeedbackModal action set\n */\nvar FeedbackModal = /** @class */ (function (_super) {\n __extends(FeedbackModal, _super);\n /**\n * Returns a new instance of a FeedbackModal action set\n * @param app the client application\n */\n function FeedbackModal(app, options) {\n var _this = _super.call(this, app, types_1.Group.FeedbackModal, types_1.Group.FeedbackModal) || this;\n _this.options = options;\n _this.set(options);\n return _this;\n }\n Object.defineProperty(FeedbackModal.prototype, \"payload\", {\n /**\n * Returns the action set payload\n */\n get: function () {\n return __assign({ id: this.id }, this.options);\n },\n enumerable: false,\n configurable: true\n });\n FeedbackModal.prototype.set = function (options) {\n this.options = helper_1.getMergedProps(this.options, options);\n return this;\n };\n /**\n * Dispatches a given action with the action set payload\n * @param action the action enum\n * @returns the action set instance\n */\n FeedbackModal.prototype.dispatch = function (action) {\n switch (action) {\n case Action.OPEN:\n var openAction = open(this.payload);\n this.app.dispatch(openAction);\n break;\n case Action.CLOSE:\n var closeAction = close(this.payload);\n this.app.dispatch(closeAction);\n break;\n }\n return this;\n };\n return FeedbackModal;\n}(helper_1.ActionSet));\nexports.FeedbackModal = FeedbackModal;\n/**\n * Returns a new instance of a FeedbackModal action set\n * @param app the client application\n */\nfunction create(app, options) {\n return new FeedbackModal(app, options);\n}\nexports.create = create;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.feedbackModalSchema = void 0;\nvar FeedbackModal_1 = require(\"../../actions/FeedbackModal\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return FeedbackModal_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nexports.feedbackModalSchema = type_validate_1.matchesObject({\n formId: type_validate_1.matchesPositiveInteger(),\n});\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.feedbackModalSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n switch (action.type) {\n case FeedbackModal_1.ActionType.OPEN:\n return type_validate_1.validate(action, utils_1.createActionValidator(FeedbackModal_1.ActionType, exports.feedbackModalSchema, true));\n case FeedbackModal_1.ActionType.CLOSE:\n default:\n return type_validate_1.validate(action, utils_1.createActionValidator(FeedbackModal_1.ActionType));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Fullscreen = exports.exit = exports.enter = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\n/**\n * Fullscreen action enum\n * @beta\n */\nvar Action;\n(function (Action) {\n Action[\"ENTER\"] = \"ENTER\";\n Action[\"EXIT\"] = \"EXIT\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Fullscreen action type enum\n * @remarks includes the action prefix and group\n *\n * @beta\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"ENTER\"] = \"APP::FULLSCREEN::ENTER\";\n ActionType[\"EXIT\"] = \"APP::FULLSCREEN::EXIT\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction enter() {\n return helper_1.actionWrapper({\n group: types_1.Group.Fullscreen,\n type: ActionType.ENTER,\n });\n}\nexports.enter = enter;\nfunction exit() {\n return helper_1.actionWrapper({\n group: types_1.Group.Fullscreen,\n type: ActionType.EXIT,\n });\n}\nexports.exit = exit;\n/**\n * Fullscreen action set\n * @beta\n */\nvar Fullscreen = /** @class */ (function (_super) {\n __extends(Fullscreen, _super);\n /**\n * Returns a new instance of a Fullscreen action set\n * @param app the client application\n */\n function Fullscreen(app) {\n return _super.call(this, app, types_1.Group.Fullscreen, types_1.Group.Fullscreen) || this;\n }\n Object.defineProperty(Fullscreen.prototype, \"payload\", {\n /**\n * Returns the action set payload\n */\n get: function () {\n return { id: this.id };\n },\n enumerable: false,\n configurable: true\n });\n /**\n * Dispatches a given action with the action set payload\n * @param action the action enum\n * @returns the action set instance\n */\n Fullscreen.prototype.dispatch = function (action) {\n this.app.dispatch(helper_1.actionWrapper({\n group: this.group,\n type: ActionType[action],\n payload: this.payload,\n }));\n return this;\n };\n return Fullscreen;\n}(helper_1.ActionSet));\nexports.Fullscreen = Fullscreen;\n/**\n * Returns a new instance of a Fullscreen action set\n * @param app the client application\n *\n * @beta\n */\nfunction create(app) {\n return new Fullscreen(app);\n}\nexports.create = create;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar Fullscreen_1 = require(\"../../actions/Fullscreen\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Fullscreen_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\n/**\n * Performs validation for an fullscreen action\n * @param action the action being dispatched\n * @returns undefined or an array of validation errors\n *\n * @beta\n */\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(Fullscreen_1.ActionType);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.LeaveConfirmation = exports.confirm = exports.disable = exports.enable = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\n/**\n * Action for the Leave Confirmation group\n * @public\n */\nvar Action;\n(function (Action) {\n Action[\"ENABLE\"] = \"ENABLE\";\n Action[\"DISABLE\"] = \"DISABLE\";\n Action[\"CONFIRM\"] = \"CONFIRM\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Action types for the Leave Confirmation group\n * @public\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"ENABLE\"] = \"APP::LEAVE_CONFIRMATION::ENABLE\";\n ActionType[\"DISABLE\"] = \"APP::LEAVE_CONFIRMATION::DISABLE\";\n ActionType[\"CONFIRM\"] = \"APP::LEAVE_CONFIRMATION::CONFIRM\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction enable(payload) {\n if (payload === void 0) { payload = {}; }\n return helper_1.actionWrapper({\n group: types_1.Group.LeaveConfirmation,\n payload: payload,\n type: ActionType.ENABLE,\n });\n}\nexports.enable = enable;\nfunction disable(payload) {\n if (payload === void 0) { payload = {}; }\n return helper_1.actionWrapper({\n group: types_1.Group.LeaveConfirmation,\n payload: payload,\n type: ActionType.DISABLE,\n });\n}\nexports.disable = disable;\nfunction confirm(payload) {\n if (payload === void 0) { payload = {}; }\n return helper_1.actionWrapper({\n group: types_1.Group.LeaveConfirmation,\n payload: payload,\n type: ActionType.CONFIRM,\n });\n}\nexports.confirm = confirm;\n/**\n * Leave Confirmation action set\n */\nvar LeaveConfirmation = /** @class */ (function (_super) {\n __extends(LeaveConfirmation, _super);\n /**\n * Returns a new instance of a Leave Confirmation action set\n * @param app the client application\n */\n function LeaveConfirmation(app, options) {\n if (options === void 0) { options = {}; }\n var _this = _super.call(this, app, types_1.Group.LeaveConfirmation, types_1.Group.LeaveConfirmation) || this;\n _this.options = options;\n _this.set(options);\n return _this;\n }\n Object.defineProperty(LeaveConfirmation.prototype, \"payload\", {\n /**\n * Returns the action set payload\n */\n get: function () {\n return __assign({ id: this.id }, this.options);\n },\n enumerable: false,\n configurable: true\n });\n LeaveConfirmation.prototype.set = function (options) {\n this.options = helper_1.getMergedProps(this.options, options);\n return this;\n };\n /**\n * Dispatches a given action with the action set payload\n * @param action the action enum\n * @returns the action set instance\n */\n LeaveConfirmation.prototype.dispatch = function (action) {\n switch (action) {\n case Action.ENABLE:\n var enableAction = enable(this.payload);\n this.app.dispatch(enableAction);\n break;\n case Action.DISABLE:\n var disableAction = disable(this.payload);\n this.app.dispatch(disableAction);\n break;\n case Action.CONFIRM:\n var confirmAction = confirm(this.payload);\n this.app.dispatch(confirmAction);\n break;\n }\n return this;\n };\n return LeaveConfirmation;\n}(helper_1.ActionSet));\nexports.LeaveConfirmation = LeaveConfirmation;\n/**\n * Returns a new instance of a Leave Confirmation action set\n * @param app the client application\n */\nfunction create(app, options) {\n if (options === void 0) { options = {}; }\n return new LeaveConfirmation(app, options);\n}\nexports.create = create;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar LeaveConfirmation_1 = require(\"../../actions/LeaveConfirmation\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return LeaveConfirmation_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(LeaveConfirmation_1.ActionType);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"START\"] = \"APP::LOADING::START\";\n ActionType[\"STOP\"] = \"APP::LOADING::STOP\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"START\"] = \"START\";\n Action[\"STOP\"] = \"STOP\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Loading = exports.stop = exports.start = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction start(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Loading,\n type: types_2.ActionType.START,\n });\n}\nexports.start = start;\nfunction stop(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Loading,\n type: types_2.ActionType.STOP,\n });\n}\nexports.stop = stop;\nvar Loading = /** @class */ (function (_super) {\n __extends(Loading, _super);\n function Loading(app) {\n return _super.call(this, app, types_1.Group.Loading, types_1.Group.Loading) || this;\n }\n Object.defineProperty(Loading.prototype, \"payload\", {\n get: function () {\n return { id: this.id };\n },\n enumerable: false,\n configurable: true\n });\n Loading.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.START:\n this.app.dispatch(start(this.payload));\n break;\n case types_2.Action.STOP:\n this.app.dispatch(stop(this.payload));\n break;\n }\n return this;\n };\n return Loading;\n}(helper_1.ActionSet));\nexports.Loading = Loading;\nfunction create(app) {\n return new Loading(app);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar Loading_1 = require(\"../../actions/Loading\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Loading_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(Loading_1.ActionType);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSingleButton = void 0;\nvar Button_1 = require(\"./Button\");\nfunction getSingleButton(action, button, subgroups, updateCb) {\n action.addChild(button, action.group, subgroups);\n action.subscribeToChild(button, Button_1.Action.UPDATE, updateCb);\n return button.payload;\n}\nexports.getSingleButton = getSingleButton;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Size = exports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"OPEN\"] = \"OPEN\";\n Action[\"CLOSE\"] = \"CLOSE\";\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"UPDATE_SIZE\"] = \"UPDATE_SIZE\";\n Action[\"UPDATE_CONTENT\"] = \"CONTENT::UPDATE\";\n Action[\"DATA\"] = \"DATA\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Action types for the Modal group\n * @public\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"OPEN\"] = \"APP::MODAL::OPEN\";\n ActionType[\"CLOSE\"] = \"APP::MODAL::CLOSE\";\n ActionType[\"UPDATE\"] = \"APP::MODAL::UPDATE\";\n ActionType[\"UPDATE_CONTENT\"] = \"APP::MODAL::CONTENT::UPDATE\";\n ActionType[\"FOOTER_BUTTON_CLICK\"] = \"APP::MODAL::FOOTER::BUTTON::CLICK\";\n ActionType[\"FOOTER_BUTTON_UPDATE\"] = \"APP::MODAL::FOOTER::BUTTON::UPDATE\";\n ActionType[\"UPDATE_SIZE\"] = \"APP::MODAL::UPDATE_SIZE\";\n ActionType[\"DATA\"] = \"APP::MODAL::DATA\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n/**\n * Options available to the Modal `size` param\n * @public\n */\nvar Size;\n(function (Size) {\n /** Small modal size */\n Size[\"Small\"] = \"small\";\n /** Medium modal size */\n Size[\"Medium\"] = \"medium\";\n /** Large modal size (wider than medium) */\n Size[\"Large\"] = \"large\";\n /** @deprecated as of 1.6.5 */\n Size[\"Full\"] = \"full\";\n /**\n * @deprecated as of 1.12.x\n * @remarks\n * This option has been removed in favour of the `setUpModalAutoSizing` utility.\n * See `app-bridge-utils` package for more information\n */\n Size[\"Auto\"] = \"auto\";\n})(Size = exports.Size || (exports.Size = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ModalIframe = exports.ModalMessage = exports.Modal = exports.isMessageModal = exports.isIframeModal = exports.data = exports.update = exports.clickFooterButton = exports.updateModalSize = exports.closeModal = exports.openModal = void 0;\nvar buttonHelper_1 = require(\"../buttonHelper\");\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar Button_1 = require(\"../Button\");\nvar types_2 = require(\"./types\");\nvar FOOTER_BUTTON_PROPS = {\n group: types_1.Group.Modal,\n subgroups: ['Footer'],\n type: types_1.ComponentType.Button,\n};\nfunction openModal(modalPayload) {\n return helper_1.actionWrapper({\n group: types_1.Group.Modal,\n payload: modalPayload,\n type: types_2.ActionType.OPEN,\n });\n}\nexports.openModal = openModal;\nfunction closeModal(modalClosePayload) {\n return helper_1.actionWrapper({\n group: types_1.Group.Modal,\n payload: modalClosePayload,\n type: types_2.ActionType.CLOSE,\n });\n}\nexports.closeModal = closeModal;\n/**\n * Action creator for modal update size action\n * @internal\n */\nfunction updateModalSize(updateSizePayload) {\n return helper_1.actionWrapper({\n group: types_1.Group.Modal,\n payload: updateSizePayload,\n type: types_2.ActionType.UPDATE_SIZE,\n });\n}\nexports.updateModalSize = updateModalSize;\nfunction clickFooterButton(id, payload) {\n var component = __assign({ id: id }, FOOTER_BUTTON_PROPS);\n return Button_1.clickButton(types_1.Group.Modal, component, payload);\n}\nexports.clickFooterButton = clickFooterButton;\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Modal,\n type: types_2.ActionType.UPDATE,\n });\n}\nexports.update = update;\nfunction data(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Modal,\n type: types_2.ActionType.DATA,\n });\n}\nexports.data = data;\nfunction isIframeModal(options) {\n return (typeof options.url === 'string' ||\n typeof options.path === 'string');\n}\nexports.isIframeModal = isIframeModal;\nfunction isMessageModal(options) {\n return typeof options.message === 'string';\n}\nexports.isMessageModal = isMessageModal;\nvar Modal = /** @class */ (function (_super) {\n __extends(Modal, _super);\n function Modal() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.size = types_2.Size.Small;\n return _this;\n }\n Object.defineProperty(Modal.prototype, \"footer\", {\n get: function () {\n if (!this.footerPrimary && !this.footerSecondary) {\n return undefined;\n }\n return {\n buttons: {\n primary: this.footerPrimary,\n secondary: this.footerSecondary,\n },\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Modal.prototype, \"footerOptions\", {\n get: function () {\n if (!this.footerPrimaryOptions && !this.footerSecondaryOptions) {\n return undefined;\n }\n return {\n buttons: {\n primary: this.footerPrimaryOptions,\n secondary: this.footerSecondaryOptions,\n },\n };\n },\n enumerable: false,\n configurable: true\n });\n Modal.prototype.close = function () {\n this.app.dispatch(closeModal({ id: this.id }));\n };\n Modal.prototype.setFooterPrimaryButton = function (newOptions, updateCb) {\n var _this = this;\n var subgroups = FOOTER_BUTTON_PROPS.subgroups;\n this.footerPrimaryOptions = this.getChildButton(newOptions, this.footerPrimaryOptions);\n this.footerPrimary = this.footerPrimaryOptions\n ? buttonHelper_1.getSingleButton(this, this.footerPrimaryOptions, subgroups, function (newPayload) {\n _this.updatePrimaryFooterButton(newPayload, updateCb);\n })\n : undefined;\n };\n Modal.prototype.setFooterSecondaryButtons = function (newOptions, updateCb) {\n var _this = this;\n var subgroups = FOOTER_BUTTON_PROPS.subgroups;\n var newButtons = newOptions || [];\n var currentOptions = (this.footerOptions && this.footerOptions.buttons.secondary) || [];\n this.footerSecondaryOptions = this.getUpdatedChildActions(newButtons, currentOptions);\n this.footerSecondary = this.footerSecondaryOptions\n ? this.footerSecondaryOptions.map(function (action) {\n return buttonHelper_1.getSingleButton(_this, action, subgroups, function (newPayload) {\n _this.updateSecondaryFooterButton(newPayload, updateCb);\n });\n })\n : undefined;\n };\n Modal.prototype.getChildButton = function (newAction, currentAction) {\n var newButtons = newAction ? [newAction] : [];\n var currentButtons = currentAction ? [currentAction] : [];\n var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);\n return updatedButton ? updatedButton[0] : undefined;\n };\n Modal.prototype.updatePrimaryFooterButton = function (newPayload, updateCb) {\n if (!this.footer || !this.footer.buttons.primary) {\n return;\n }\n if (helper_1.updateActionFromPayload(this.footer.buttons.primary, newPayload)) {\n updateCb();\n }\n };\n Modal.prototype.updateSecondaryFooterButton = function (newPayload, updateCb) {\n if (!this.footer || !this.footer.buttons || !this.footer.buttons.secondary) {\n return;\n }\n var updated;\n for (var _i = 0, _a = this.footer.buttons.secondary; _i < _a.length; _i++) {\n var action = _a[_i];\n updated = helper_1.updateActionFromPayload(action, newPayload);\n if (updated) {\n break;\n }\n }\n if (updated) {\n updateCb();\n }\n };\n return Modal;\n}(helper_1.ActionSetWithChildren));\nexports.Modal = Modal;\nvar ModalMessage = /** @class */ (function (_super) {\n __extends(ModalMessage, _super);\n function ModalMessage(app, options) {\n var _this = _super.call(this, app, types_1.Group.Modal, types_1.Group.Modal) || this;\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(ModalMessage.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { footer: this.footer, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ModalMessage.prototype, \"options\", {\n get: function () {\n return {\n footer: this.footerOptions,\n message: this.message,\n size: this.size,\n title: this.title,\n };\n },\n enumerable: false,\n configurable: true\n });\n ModalMessage.prototype.set = function (options, shouldUpdate) {\n var _this = this;\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var title = mergedOptions.title, footer = mergedOptions.footer, message = mergedOptions.message, size = mergedOptions.size;\n this.title = title;\n this.message = message;\n this.size = size;\n this.setFooterPrimaryButton(footer ? footer.buttons.primary : undefined, function () {\n _this.dispatch(types_2.Action.UPDATE);\n });\n this.setFooterSecondaryButtons(footer ? footer.buttons.secondary : undefined, function () {\n _this.dispatch(types_2.Action.UPDATE);\n });\n if (shouldUpdate) {\n this.dispatch(types_2.Action.UPDATE);\n }\n return this;\n };\n ModalMessage.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.OPEN:\n this.app.dispatch(openModal(this.payload));\n break;\n case types_2.Action.CLOSE:\n this.close();\n break;\n case types_2.Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n return ModalMessage;\n}(Modal));\nexports.ModalMessage = ModalMessage;\nvar ModalIframe = /** @class */ (function (_super) {\n __extends(ModalIframe, _super);\n function ModalIframe(app, options) {\n var _this = _super.call(this, app, types_1.Group.Modal, types_1.Group.Modal) || this;\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(ModalIframe.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { footer: this.footer, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ModalIframe.prototype, \"options\", {\n get: function () {\n return {\n footer: this.footerOptions,\n path: this.path,\n size: this.size,\n title: this.title,\n url: this.url,\n loading: this.loading,\n };\n },\n enumerable: false,\n configurable: true\n });\n ModalIframe.prototype.set = function (options, shouldUpdate) {\n var _this = this;\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var title = mergedOptions.title, footer = mergedOptions.footer, path = mergedOptions.path, url = mergedOptions.url, size = mergedOptions.size, loading = mergedOptions.loading;\n this.title = title;\n this.url = url;\n this.path = path;\n this.size = size;\n this.loading = loading;\n this.setFooterPrimaryButton(footer ? footer.buttons.primary : undefined, function () {\n _this.dispatch(types_2.Action.UPDATE);\n });\n this.setFooterSecondaryButtons(footer ? footer.buttons.secondary : undefined, function () {\n _this.dispatch(types_2.Action.UPDATE);\n });\n if (shouldUpdate) {\n this.dispatch(types_2.Action.UPDATE);\n }\n return this;\n };\n ModalIframe.prototype.dispatch = function (action, payload) {\n switch (action) {\n case types_2.Action.OPEN:\n this.app.dispatch(openModal(this.payload));\n break;\n case types_2.Action.CLOSE:\n this.close();\n break;\n case types_2.Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n case types_2.Action.DATA:\n this.app.dispatch(data(payload || {}));\n break;\n }\n return this;\n };\n return ModalIframe;\n}(Modal));\nexports.ModalIframe = ModalIframe;\nexports.create = function (app, options) {\n if (isIframeModal(options)) {\n return new ModalIframe(app, options);\n }\n return new ModalMessage(app, options);\n};\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.makeSafe = exports.isSafe = void 0;\nvar FILE_URI_MATCH = /\\/\\/\\//;\nvar INVALID_RELATIVE_URL = /[/\\\\][/\\\\]/;\nvar VALID_PROTOCOLS = ['https:', 'http:'];\nvar DUMMY_HOSTNAME = 'http://test.com';\nfunction isSafe(redirectUrl, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.allowedDomains, allowedDomains = _c === void 0 ? [] : _c, _d = _b.subdomains, subdomains = _d === void 0 ? [] : _d, matchPath = _b.matchPath, requireAbsolute = _b.requireAbsolute, requireSSL = _b.requireSSL;\n if (FILE_URI_MATCH.test(redirectUrl)) {\n return false;\n }\n if (redirectUrl.startsWith('/')) {\n if (allowedDomains.length > 0 || subdomains.length > 0 || requireAbsolute || requireSSL) {\n return false;\n }\n if (matchPath) {\n // Creating a new URL expands the pathname in case of things like `/a/../b`\n return pathMatches(new URL(redirectUrl, DUMMY_HOSTNAME), redirectUrl, matchPath);\n }\n return !INVALID_RELATIVE_URL.test(redirectUrl);\n }\n var url;\n try {\n url = new URL(redirectUrl);\n }\n catch (error) {\n return false;\n }\n if (!VALID_PROTOCOLS.includes(url.protocol)) {\n return false;\n }\n if (requireSSL && url.protocol !== 'https:') {\n return false;\n }\n if (url.username || url.password) {\n return false;\n }\n if (matchPath && !pathMatches(url, redirectUrl, matchPath)) {\n return false;\n }\n if (!hostIsValid(url, allowedDomains, subdomains)) {\n return false;\n }\n return true;\n}\nexports.isSafe = isSafe;\nfunction hostIsValid(url, allowedDomains, subdomains) {\n if (!subdomains.every(function (subdomain) { return subdomain.startsWith('.'); })) {\n throw new TypeError('Subdomains must begin with .');\n }\n var hostname = url.hostname;\n return ((allowedDomains.length === 0 && subdomains.length === 0) ||\n allowedDomains.includes(hostname) ||\n subdomains.some(function (subdomain) { return hostname.endsWith(subdomain); }));\n}\nfunction pathMatches(url, originalUrl, matcher) {\n var pathname = url.pathname;\n // Gets just the unresolve pathname, i.e., `http://foo.com/a/../b => /a/../b\n var originalPathname = originalUrl.replace(url.origin, '').split('?')[0];\n return typeof matcher === 'string'\n ? pathname === matcher && originalPathname === matcher\n : matcher.test(pathname) && matcher.test(originalPathname);\n}\nfunction makeSafe(url, fallback, options) {\n return isSafe(url, options) ? encodeURI(url) : fallback;\n}\nexports.makeSafe = makeSafe;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = void 0;\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar Modal_1 = require(\"../../actions/Modal\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Modal_1.ActionType; } });\nvar Button_1 = require(\"../../actions/Button\");\nvar safe_redirect_1 = require(\"../safe-redirect\");\nvar button_1 = require(\"./button\");\nfunction matchesSafeOrigin(value, localOrigin) {\n var hostName;\n try {\n hostName = new URL(localOrigin).hostname;\n }\n catch (error) {\n return [\n {\n error: 'invalid_app_origin',\n value: localOrigin,\n message: \"Provided value for app origin: `\" + localOrigin + \"` is invalid\",\n },\n ];\n }\n var isSafeSrc = safe_redirect_1.isSafe(value, {\n requireAbsolute: true,\n requireSSL: true,\n allowedDomains: [hostName],\n });\n if (!isSafeSrc) {\n return [\n {\n error: 'not_matching_app_origin',\n value: value,\n message: \"Provided URL origin does not match app origin `\" + hostName + \"`\",\n },\n ];\n }\n}\nfunction matchesSize() {\n return function (value) {\n var values = [Modal_1.Size.Small, Modal_1.Size.Medium, Modal_1.Size.Large];\n if (values.includes(value)) {\n return;\n }\n var message = \"expected:\" + values.map(function (val) { return \"`\" + val + \"`\"; }).join(' or ');\n if (value === Modal_1.Size.Full) {\n message += \". Size `\" + value + \"` is deprecated as of version 1.6.5 and will fall back to size `medium`\";\n }\n if (value === Modal_1.Size.Auto) {\n message += \". Size `\" + value + \"` is deprecated as of version 1.12.x and will fall back to size `medium`. Use the `setUpModalAutoSizing` utility from `app-bridge-utils` instead\";\n }\n return [\n {\n error: 'invalid_enum_value',\n value: value,\n message: message,\n },\n ];\n };\n}\nfunction getModalSchema(props, localOrigin) {\n if (props === void 0) { props = {}; }\n var baseModalSchema = type_validate_1.matchesObject({\n title: type_validate_1.makeOptional(type_validate_1.matchesString()),\n footer: type_validate_1.makeOptional(type_validate_1.matchesObject({\n buttons: type_validate_1.matchesObject({\n primary: type_validate_1.makeOptional(button_1.buttonSchemaWithId),\n secondary: type_validate_1.makeOptional(type_validate_1.matchesArray(button_1.buttonSchemaWithId)),\n }),\n })),\n size: type_validate_1.makeOptional(matchesSize()),\n });\n if (Modal_1.isIframeModal(props)) {\n if (props.url) {\n var urlSchema = type_validate_1.matchesObject({\n url: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {\n return value.startsWith('https://')\n ? undefined\n : [\n {\n error: 'invalid_secure_url',\n value: value,\n message: 'expected string to start with `https://`',\n },\n ];\n }, function (value) { return (localOrigin ? matchesSafeOrigin(value, localOrigin) : undefined); }),\n });\n return type_validate_1.composeSchemas(baseModalSchema, urlSchema);\n }\n return type_validate_1.composeSchemas(baseModalSchema, utils_1.relativePathSchema);\n }\n return type_validate_1.composeSchemas(baseModalSchema, type_validate_1.matchesObject({ message: type_validate_1.matchesString() }));\n}\nfunction validateProps(props, localOrigin) {\n return type_validate_1.validate(props, getModalSchema(props, localOrigin));\n}\nexports.validateProps = validateProps;\nfunction validateAction(action, localOrigin) {\n var schema = getModalSchema(action.payload, localOrigin);\n switch (action.type) {\n case Modal_1.ActionType.OPEN:\n case Modal_1.ActionType.UPDATE:\n return type_validate_1.validate(action, utils_1.createActionValidator(Modal_1.ActionType, schema, true, action.type === Modal_1.ActionType.UPDATE));\n case Modal_1.ActionType.FOOTER_BUTTON_CLICK:\n return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.CLICK }));\n case Modal_1.ActionType.FOOTER_BUTTON_UPDATE:\n return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.UPDATE }));\n case Modal_1.ActionType.CLOSE:\n default:\n return type_validate_1.validate(action, utils_1.createActionValidator(Modal_1.ActionType));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.respond = exports.request = exports.Action = exports.ActionType = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar ActionType;\n(function (ActionType) {\n ActionType[\"REQUEST\"] = \"APP::AUTH_CODE::REQUEST\";\n ActionType[\"RESPOND\"] = \"APP::AUTH_CODE::RESPOND\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"REQUEST\"] = \"REQUEST\";\n Action[\"RESPOND\"] = \"RESPOND\";\n})(Action = exports.Action || (exports.Action = {}));\nfunction request(id) {\n return helper_1.actionWrapper({\n group: types_1.Group.AuthCode,\n type: ActionType.REQUEST,\n payload: { id: id },\n });\n}\nexports.request = request;\nfunction respond(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.AuthCode,\n type: ActionType.RESPOND,\n });\n}\nexports.respond = respond;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::BUTTONGROUP::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ButtonGroup = exports.isGroupedButtonPayload = exports.isGroupedButton = exports.update = void 0;\nvar buttonHelper_1 = require(\"../buttonHelper\");\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction update(group, component, props) {\n return buttonActionWrapper(group, component, types_2.Action.UPDATE, props);\n}\nexports.update = update;\nfunction isGroupedButton(options) {\n var castOptions = options;\n return castOptions.buttons && castOptions.buttons.length > 0 && castOptions.label !== undefined;\n}\nexports.isGroupedButton = isGroupedButton;\nfunction isGroupedButtonPayload(payload) {\n var castOptions = payload;\n return (Array.isArray(castOptions.buttons) &&\n typeof castOptions.id === 'string' &&\n typeof castOptions.label === 'string');\n}\nexports.isGroupedButtonPayload = isGroupedButtonPayload;\nvar ButtonGroup = /** @class */ (function (_super) {\n __extends(ButtonGroup, _super);\n function ButtonGroup(app, options) {\n var _this = _super.call(this, app, types_1.ComponentType.ButtonGroup, types_1.Group.ButtonGroup) || this;\n _this.disabled = false;\n _this.buttonsOptions = [];\n _this.buttons = [];\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(ButtonGroup.prototype, \"options\", {\n get: function () {\n return {\n buttons: this.buttonsOptions,\n disabled: this.disabled,\n label: this.label,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ButtonGroup.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { buttons: this.buttons, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n ButtonGroup.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var label = mergedOptions.label, disabled = mergedOptions.disabled, buttons = mergedOptions.buttons;\n this.label = label;\n this.disabled = Boolean(disabled);\n this.buttons = this.getButtons(buttons);\n if (shouldUpdate) {\n this.dispatch(types_2.Action.UPDATE);\n }\n return this;\n };\n ButtonGroup.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.UPDATE:\n var updateAction = update(this.group, this.component, this.payload);\n this.app.dispatch(updateAction);\n break;\n }\n return this;\n };\n ButtonGroup.prototype.updateButtons = function (newPayload) {\n if (!this.buttons || this.buttons.length === 0) {\n return;\n }\n var updated;\n for (var _i = 0, _a = this.buttons; _i < _a.length; _i++) {\n var action = _a[_i];\n updated = helper_1.updateActionFromPayload(action, newPayload);\n if (updated) {\n break;\n }\n }\n if (updated) {\n this.dispatch(types_2.Action.UPDATE);\n }\n };\n ButtonGroup.prototype.getSingleButton = function (button) {\n return buttonHelper_1.getSingleButton(this, button, this.subgroups, this.updateButtons);\n };\n ButtonGroup.prototype.getButtons = function (buttonOptions) {\n var _this = this;\n var buttons = [];\n if (!buttonOptions) {\n return [];\n }\n buttonOptions.forEach(function (button) {\n var singleButton = buttonHelper_1.getSingleButton(_this, button, _this.subgroups, _this.updateButtons);\n buttons.push(singleButton);\n });\n this.buttonsOptions = buttonOptions;\n return buttons;\n };\n return ButtonGroup;\n}(helper_1.ActionSetWithChildren));\nexports.ButtonGroup = ButtonGroup;\nfunction create(app, options) {\n return new ButtonGroup(app, options);\n}\nexports.create = create;\nfunction buttonActionWrapper(group, component, eventName, props, payload) {\n var id = component.id;\n var label = props.label;\n var action = helper_1.getEventNameSpace(group, eventName, component);\n var buttonPayload = __assign(__assign({}, props), { id: id,\n label: label,\n payload: payload });\n return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });\n}\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"SHOW\"] = \"APP::TOAST::SHOW\";\n ActionType[\"CLEAR\"] = \"APP::TOAST::CLEAR\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"SHOW\"] = \"SHOW\";\n Action[\"CLEAR\"] = \"CLEAR\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Toast = exports.clear = exports.show = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction show(toastMessage) {\n return helper_1.actionWrapper({\n group: types_1.Group.Toast,\n payload: toastMessage,\n type: types_2.ActionType.SHOW,\n });\n}\nexports.show = show;\nfunction clear(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Toast,\n type: types_2.ActionType.CLEAR,\n });\n}\nexports.clear = clear;\nvar Toast = /** @class */ (function (_super) {\n __extends(Toast, _super);\n function Toast(app, options) {\n var _this = _super.call(this, app, types_1.Group.Toast, types_1.Group.Toast) || this;\n _this.message = '';\n _this.duration = 5000;\n _this.set(options);\n return _this;\n }\n Object.defineProperty(Toast.prototype, \"options\", {\n get: function () {\n return {\n duration: this.duration,\n isError: this.isError,\n message: this.message,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Toast.prototype, \"payload\", {\n get: function () {\n return __assign({ id: this.id }, this.options);\n },\n enumerable: false,\n configurable: true\n });\n Toast.prototype.set = function (options) {\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var message = mergedOptions.message, duration = mergedOptions.duration, isError = mergedOptions.isError;\n this.message = message;\n this.duration = duration;\n this.isError = isError;\n return this;\n };\n Toast.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.SHOW:\n var openAction = show(this.payload);\n this.app.dispatch(openAction);\n break;\n case types_2.Action.CLEAR:\n this.app.dispatch(clear({ id: this.id }));\n break;\n }\n return this;\n };\n return Toast;\n}(helper_1.ActionSet));\nexports.Toast = Toast;\nfunction create(app, options) {\n return new Toast(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Flash = void 0;\nvar Toast_1 = require(\"../Toast\");\nvar Toast_2 = require(\"../Toast\");\nObject.defineProperty(exports, \"clear\", { enumerable: true, get: function () { return Toast_2.clear; } });\nObject.defineProperty(exports, \"show\", { enumerable: true, get: function () { return Toast_2.show; } });\nvar Flash = /** @class */ (function (_super) {\n __extends(Flash, _super);\n function Flash() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Flash;\n}(Toast_1.Toast));\nexports.Flash = Flash;\nfunction create(app, options) {\n return new Flash(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"../Toast/types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\n/**\n * Action Types for the Features group\n * @public\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::FEATURES::UPDATE\";\n ActionType[\"REQUEST\"] = \"APP::FEATURES::REQUEST\";\n ActionType[\"REQUEST_UPDATE\"] = \"APP::FEATURES::REQUEST::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n/**\n * Actions available to the Features group\n * @public\n */\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"REQUEST\"] = \"REQUEST\";\n Action[\"REQUEST_UPDATE\"] = \"REQUEST::UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Features = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\n/**\n * A set of Actions for Updating, Requesting Features of AppBridge\n * @public\n */\nvar Features = /** @class */ (function (_super) {\n __extends(Features, _super);\n function Features(app, options) {\n return _super.call(this, app, types_1.Group.Features, types_1.Group.Features, options ? options.id : undefined) || this;\n }\n /**\n * @public\n */\n Features.prototype.dispatch = function (action, payload) {\n switch (action) {\n case types_2.Action.REQUEST:\n this.dispatchFeaturesAction(types_2.ActionType.REQUEST, payload);\n break;\n }\n return this;\n };\n /**\n * @internal\n */\n Features.prototype.dispatchFeaturesAction = function (type, payload) {\n this.app.dispatch(helper_1.actionWrapper({\n group: types_1.Group.Features,\n type: type,\n payload: __assign(__assign({}, (payload || {})), { id: this.id }),\n }));\n };\n return Features;\n}(helper_1.ActionSet));\nexports.Features = Features;\n/**\n * @public\n */\nfunction create(app, options) {\n return new Features(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"LOADING\"] = \"LOADING\";\n Action[\"LOADED\"] = \"LOADED\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ModalContent = void 0;\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar types_2 = require(\"../types\");\nvar types_3 = require(\"./types\");\n/**\n * A set of Actions for updating the modal component\n * @public\n */\nvar ModalContent = /** @class */ (function (_super) {\n __extends(ModalContent, _super);\n function ModalContent(app, options) {\n return _super.call(this, app, types_1.Group.Modal, types_1.Group.Modal, options ? options.id : undefined) || this;\n }\n ModalContent.prototype.loaded = function () {\n this.dispatch(types_3.Action.LOADED);\n };\n ModalContent.prototype.loading = function () {\n this.dispatch(types_3.Action.LOADING);\n };\n /**\n * @private\n */\n ModalContent.prototype.dispatch = function (action) {\n switch (action) {\n case types_3.Action.LOADED:\n this.dispatchModalAction(types_2.ActionType.UPDATE_CONTENT, { loading: false });\n break;\n case types_3.Action.LOADING:\n this.dispatchModalAction(types_2.ActionType.UPDATE_CONTENT, { loading: true });\n break;\n }\n return this;\n };\n /**\n * @internal\n */\n ModalContent.prototype.dispatchModalAction = function (type, payload) {\n return __awaiter(this, void 0, void 0, function () {\n var updateAction;\n return __generator(this, function (_a) {\n updateAction = helper_1.actionWrapper({\n type: type,\n group: types_1.Group.Modal,\n payload: __assign({}, payload),\n });\n this.app.dispatch(updateAction);\n return [2 /*return*/];\n });\n });\n };\n return ModalContent;\n}(helper_1.ActionSet));\nexports.ModalContent = ModalContent;\n/**\n * @public\n */\nfunction create(app, options) {\n return new ModalContent(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = exports.ActionType = void 0;\nvar ActionType;\n(function (ActionType) {\n ActionType[\"PUSH\"] = \"APP::NAVIGATION::HISTORY::PUSH\";\n ActionType[\"REPLACE\"] = \"APP::NAVIGATION::HISTORY::REPLACE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"PUSH\"] = \"PUSH\";\n Action[\"REPLACE\"] = \"REPLACE\";\n})(Action = exports.Action || (exports.Action = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.History = exports.replace = exports.push = void 0;\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar types_2 = require(\"./types\");\nfunction push(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.PUSH,\n });\n}\nexports.push = push;\nfunction replace(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.REPLACE,\n });\n}\nexports.replace = replace;\nvar History = /** @class */ (function (_super) {\n __extends(History, _super);\n function History(app) {\n return _super.call(this, app, 'History', types_1.Group.Navigation) || this;\n }\n Object.defineProperty(History.prototype, \"payload\", {\n get: function () {\n return { id: this.id };\n },\n enumerable: false,\n configurable: true\n });\n History.prototype.dispatch = function (type, path) {\n var payload = __assign(__assign({}, this.payload), { path: path });\n switch (type) {\n case types_2.Action.PUSH:\n this.app.dispatch(push(payload));\n break;\n case types_2.Action.REPLACE:\n this.app.dispatch(replace(payload));\n break;\n }\n return this;\n };\n return History;\n}(helper_1.ActionSet));\nexports.History = History;\nfunction create(app) {\n return new History(app);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ResourceType = exports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"ADMIN_PATH\"] = \"ADMIN::PATH\";\n Action[\"ADMIN_SECTION\"] = \"ADMIN::SECTION\";\n Action[\"REMOTE\"] = \"REMOTE\";\n Action[\"APP\"] = \"APP\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"ADMIN_SECTION\"] = \"APP::NAVIGATION::REDIRECT::ADMIN::SECTION\";\n ActionType[\"ADMIN_PATH\"] = \"APP::NAVIGATION::REDIRECT::ADMIN::PATH\";\n ActionType[\"REMOTE\"] = \"APP::NAVIGATION::REDIRECT::REMOTE\";\n ActionType[\"APP\"] = \"APP::NAVIGATION::REDIRECT::APP\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar ResourceType;\n(function (ResourceType) {\n ResourceType[\"Product\"] = \"products\";\n ResourceType[\"Collection\"] = \"collections\";\n ResourceType[\"Order\"] = \"orders\";\n ResourceType[\"Customer\"] = \"customers\";\n ResourceType[\"Discount\"] = \"discounts\";\n})(ResourceType = exports.ResourceType || (exports.ResourceType = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Redirect = exports.isRemotePayload = exports.isAdminSectionPayload = exports.isAdminPathPayload = exports.isAppPayload = exports.toDestination = exports.toApp = exports.toRemote = exports.toAdminSection = exports.toAdminPath = exports.isProductVariantCreateResourcePayload = exports.isProductVariantResourcePayload = exports.isCreateResourcePayload = exports.isResourcePayload = void 0;\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar types_2 = require(\"./types\");\nfunction isResourcePayload(resource) {\n // tslint:disable-next-line:no-boolean-literal-compare\n return typeof resource.id === 'string';\n}\nexports.isResourcePayload = isResourcePayload;\nfunction isCreateResourcePayload(resource) {\n // tslint:disable-next-line:no-boolean-literal-compare\n return resource.create === true;\n}\nexports.isCreateResourcePayload = isCreateResourcePayload;\nfunction isProductVariantResourcePayload(resource) {\n var castResource = resource;\n // tslint:disable-next-line:no-boolean-literal-compare\n return castResource.id !== undefined && castResource.variant !== undefined;\n}\nexports.isProductVariantResourcePayload = isProductVariantResourcePayload;\nfunction isProductVariantCreateResourcePayload(resource) {\n if (!isProductVariantResourcePayload(resource)) {\n return false;\n }\n return isCreateResourcePayload(resource.variant);\n}\nexports.isProductVariantCreateResourcePayload = isProductVariantCreateResourcePayload;\nfunction toAdminPath(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.ADMIN_PATH,\n });\n}\nexports.toAdminPath = toAdminPath;\nfunction toAdminSection(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.ADMIN_SECTION,\n });\n}\nexports.toAdminSection = toAdminSection;\nfunction toRemote(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.REMOTE,\n });\n}\nexports.toRemote = toRemote;\nfunction toApp(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Navigation,\n type: types_2.ActionType.APP,\n });\n}\nexports.toApp = toApp;\nfunction toDestination(action, payload, id) {\n switch (action) {\n case types_2.Action.APP:\n var appPayload = isAppPayload(payload) ? payload : { path: payload };\n return toApp(__assign({ id: id }, appPayload));\n case types_2.Action.ADMIN_PATH:\n var adminPathPayload = isAdminPathPayload(payload) ? payload : { path: payload };\n return toAdminPath(__assign({ id: id }, adminPathPayload));\n case types_2.Action.ADMIN_SECTION:\n var adminSectionPayload = isAdminSectionPayload(payload)\n ? payload\n : { section: payload };\n return toAdminSection(__assign({ id: id }, adminSectionPayload));\n case types_2.Action.REMOTE:\n var remotePayload = isRemotePayload(payload) ? payload : { url: payload };\n return toRemote(__assign({ id: id }, remotePayload));\n }\n}\nexports.toDestination = toDestination;\nfunction isAppPayload(payload) {\n return typeof payload === 'object' && payload.hasOwnProperty('path');\n}\nexports.isAppPayload = isAppPayload;\nfunction isAdminPathPayload(payload) {\n return typeof payload === 'object' && payload.hasOwnProperty('path');\n}\nexports.isAdminPathPayload = isAdminPathPayload;\nfunction isAdminSectionPayload(payload) {\n return (typeof payload === 'object' &&\n typeof payload.section === 'object' &&\n payload.section.hasOwnProperty('name'));\n}\nexports.isAdminSectionPayload = isAdminSectionPayload;\nfunction isRemotePayload(payload) {\n return typeof payload === 'object' && payload.hasOwnProperty('url');\n}\nexports.isRemotePayload = isRemotePayload;\nvar Redirect = /** @class */ (function (_super) {\n __extends(Redirect, _super);\n function Redirect(app) {\n return _super.call(this, app, 'Redirect', types_1.Group.Navigation) || this;\n }\n Object.defineProperty(Redirect.prototype, \"payload\", {\n get: function () {\n return { id: this.id };\n },\n enumerable: false,\n configurable: true\n });\n Redirect.prototype.dispatch = function (action, payload) {\n var redirectAction = toDestination(action, payload, this.payload.id);\n this.app.dispatch(redirectAction);\n return this;\n };\n return Redirect;\n}(helper_1.ActionSet));\nexports.Redirect = Redirect;\nfunction create(app) {\n return new Redirect(app);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionVerb = exports.ResourceType = exports.ProductStatus = exports.ProductVariantInventoryManagement = exports.ProductVariantInventoryPolicy = exports.WeightUnit = exports.FulfillmentServiceType = exports.CollectionSortOrder = exports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"OPEN\"] = \"OPEN\";\n Action[\"SELECT\"] = \"SELECT\";\n Action[\"CLOSE\"] = \"CLOSE\";\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"CANCEL\"] = \"CANCEL\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"OPEN\"] = \"APP::RESOURCE_PICKER::OPEN\";\n ActionType[\"SELECT\"] = \"APP::RESOURCE_PICKER::SELECT\";\n ActionType[\"CLOSE\"] = \"APP::RESOURCE_PICKER::CLOSE\";\n ActionType[\"UPDATE\"] = \"APP::RESOURCE_PICKER::UPDATE\";\n ActionType[\"CANCEL\"] = \"APP::RESOURCE_PICKER::CANCEL\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar CollectionSortOrder;\n(function (CollectionSortOrder) {\n CollectionSortOrder[\"Manual\"] = \"MANUAL\";\n CollectionSortOrder[\"BestSelling\"] = \"BEST_SELLING\";\n CollectionSortOrder[\"AlphaAsc\"] = \"ALPHA_ASC\";\n CollectionSortOrder[\"AlphaDesc\"] = \"ALPHA_DESC\";\n CollectionSortOrder[\"PriceDesc\"] = \"PRICE_DESC\";\n CollectionSortOrder[\"PriceAsc\"] = \"PRICE_ASC\";\n CollectionSortOrder[\"CreatedDesc\"] = \"CREATED_DESC\";\n CollectionSortOrder[\"Created\"] = \"CREATED\";\n})(CollectionSortOrder = exports.CollectionSortOrder || (exports.CollectionSortOrder = {}));\nvar FulfillmentServiceType;\n(function (FulfillmentServiceType) {\n FulfillmentServiceType[\"GiftCard\"] = \"GIFT_CARD\";\n FulfillmentServiceType[\"Manual\"] = \"MANUAL\";\n FulfillmentServiceType[\"ThirdParty\"] = \"THIRD_PARTY\";\n})(FulfillmentServiceType = exports.FulfillmentServiceType || (exports.FulfillmentServiceType = {}));\nvar WeightUnit;\n(function (WeightUnit) {\n WeightUnit[\"Kilograms\"] = \"KILOGRAMS\";\n WeightUnit[\"Grams\"] = \"GRAMS\";\n WeightUnit[\"Pounds\"] = \"POUNDS\";\n WeightUnit[\"Ounces\"] = \"OUNCES\";\n})(WeightUnit = exports.WeightUnit || (exports.WeightUnit = {}));\nvar ProductVariantInventoryPolicy;\n(function (ProductVariantInventoryPolicy) {\n ProductVariantInventoryPolicy[\"Deny\"] = \"DENY\";\n ProductVariantInventoryPolicy[\"Continue\"] = \"CONTINUE\";\n})(ProductVariantInventoryPolicy = exports.ProductVariantInventoryPolicy || (exports.ProductVariantInventoryPolicy = {}));\nvar ProductVariantInventoryManagement;\n(function (ProductVariantInventoryManagement) {\n ProductVariantInventoryManagement[\"Shopify\"] = \"SHOPIFY\";\n ProductVariantInventoryManagement[\"NotManaged\"] = \"NOT_MANAGED\";\n ProductVariantInventoryManagement[\"FulfillmentService\"] = \"FULFILLMENT_SERVICE\";\n})(ProductVariantInventoryManagement = exports.ProductVariantInventoryManagement || (exports.ProductVariantInventoryManagement = {}));\nvar ProductStatus;\n(function (ProductStatus) {\n ProductStatus[\"Active\"] = \"ACTIVE\";\n ProductStatus[\"Archived\"] = \"ARCHIVED\";\n ProductStatus[\"Draft\"] = \"DRAFT\";\n})(ProductStatus = exports.ProductStatus || (exports.ProductStatus = {}));\nvar ResourceType;\n(function (ResourceType) {\n ResourceType[\"Product\"] = \"product\";\n ResourceType[\"ProductVariant\"] = \"variant\";\n ResourceType[\"Collection\"] = \"collection\";\n})(ResourceType = exports.ResourceType || (exports.ResourceType = {}));\nvar ActionVerb;\n(function (ActionVerb) {\n ActionVerb[\"Add\"] = \"add\";\n ActionVerb[\"Select\"] = \"select\";\n})(ActionVerb = exports.ActionVerb || (exports.ActionVerb = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ResourcePicker = exports.update = exports.close = exports.cancel = exports.open = exports.select = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nfunction select(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.ResourcePicker,\n type: types_2.ActionType.SELECT,\n });\n}\nexports.select = select;\nfunction open(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.ResourcePicker,\n type: types_2.ActionType.OPEN,\n });\n}\nexports.open = open;\nfunction cancel(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.ResourcePicker,\n type: types_2.ActionType.CANCEL,\n });\n}\nexports.cancel = cancel;\nfunction close(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.ResourcePicker,\n type: types_2.ActionType.CANCEL,\n });\n}\nexports.close = close;\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.ResourcePicker,\n type: types_2.ActionType.UPDATE,\n });\n}\nexports.update = update;\nvar ResourcePicker = /** @class */ (function (_super) {\n __extends(ResourcePicker, _super);\n function ResourcePicker(app, options, resourceType) {\n var _this = _super.call(this, app, types_1.Group.ResourcePicker, types_1.Group.ResourcePicker) || this;\n _this.initialSelectionIds = [];\n _this.selection = [];\n _this.resourceType = resourceType;\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(ResourcePicker.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { id: this.id, resourceType: this.resourceType });\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ResourcePicker.prototype, \"options\", {\n get: function () {\n var options = {\n initialQuery: this.initialQuery,\n selectMultiple: this.selectMultiple,\n initialSelectionIds: this.initialSelectionIds,\n showHidden: this.showHidden,\n actionVerb: this.actionVerb,\n };\n if (this.resourceType === types_2.ResourceType.Product) {\n var productOptions = __assign(__assign({}, options), { showVariants: this.showVariants, showDraft: this.showDraft, showArchived: this.showArchived, showDraftBadge: this.showDraftBadge, showArchivedBadge: this.showArchivedBadge });\n return productOptions;\n }\n return options;\n },\n enumerable: false,\n configurable: true\n });\n ResourcePicker.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var initialQuery = mergedOptions.initialQuery, _a = mergedOptions.initialSelectionIds, initialSelectionIds = _a === void 0 ? [] : _a, _b = mergedOptions.showHidden, showHidden = _b === void 0 ? true : _b, _c = mergedOptions.showVariants, showVariants = _c === void 0 ? true : _c, _d = mergedOptions.showDraft, showDraft = _d === void 0 ? true : _d, _e = mergedOptions.showArchived, showArchived = _e === void 0 ? true : _e, _f = mergedOptions.showDraftBadge, showDraftBadge = _f === void 0 ? false : _f, _g = mergedOptions.showArchivedBadge, showArchivedBadge = _g === void 0 ? false : _g, _h = mergedOptions.selectMultiple, selectMultiple = _h === void 0 ? true : _h, _j = mergedOptions.actionVerb, actionVerb = _j === void 0 ? types_2.ActionVerb.Add : _j;\n this.initialQuery = initialQuery;\n this.initialSelectionIds = initialSelectionIds;\n this.showHidden = showHidden;\n this.showVariants = showVariants;\n this.showDraft = showDraft;\n this.showArchived = showArchived;\n this.showDraftBadge = showDraftBadge;\n this.showArchivedBadge = showArchivedBadge;\n this.selectMultiple = selectMultiple;\n this.actionVerb = actionVerb;\n if (shouldUpdate) {\n this.update();\n }\n return this;\n };\n ResourcePicker.prototype.dispatch = function (action, selection) {\n if (action === types_2.Action.OPEN) {\n this.open();\n }\n else if (action === types_2.Action.UPDATE) {\n this.update();\n }\n else if (action === types_2.Action.CLOSE || action === types_2.Action.CANCEL) {\n this.cancel();\n }\n else if (action === types_2.Action.SELECT) {\n this.selection = selection;\n this.app.dispatch(select({ id: this.id, selection: this.selection }));\n }\n return this;\n };\n ResourcePicker.prototype.update = function () {\n this.app.dispatch(update(this.payload));\n };\n ResourcePicker.prototype.open = function () {\n this.app.dispatch(open(this.payload));\n };\n ResourcePicker.prototype.cancel = function () {\n this.app.dispatch(cancel({ id: this.id }));\n };\n ResourcePicker.prototype.close = function () {\n this.cancel();\n };\n return ResourcePicker;\n}(helper_1.ActionSet));\nexports.ResourcePicker = ResourcePicker;\nexports.create = function (app, baseOptions) {\n var resourceType = baseOptions.resourceType, _a = baseOptions.options, options = _a === void 0 ? {} : _a;\n return new ResourcePicker(app, options, resourceType);\n};\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.respond = exports.request = exports.Action = exports.ActionType = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar ActionType;\n(function (ActionType) {\n ActionType[\"REQUEST\"] = \"APP::SESSION_TOKEN::REQUEST\";\n ActionType[\"RESPOND\"] = \"APP::SESSION_TOKEN::RESPOND\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"REQUEST\"] = \"REQUEST\";\n Action[\"RESPOND\"] = \"RESPOND\";\n})(Action = exports.Action || (exports.Action = {}));\nfunction request() {\n return helper_1.actionWrapper({\n group: types_1.Group.SessionToken,\n type: ActionType.REQUEST,\n });\n}\nexports.request = request;\nfunction respond(sessionToken) {\n return helper_1.actionWrapper({\n payload: sessionToken,\n group: types_1.Group.SessionToken,\n type: ActionType.RESPOND,\n });\n}\nexports.respond = respond;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getGroupedButton = void 0;\nvar ButtonGroup_1 = require(\"./ButtonGroup\");\nfunction getGroupedButton(action, button, subgroups, updateCb) {\n action.addChild(button, action.group, subgroups);\n var id = button.id, label = button.label, disabled = button.disabled, buttons = button.buttons;\n action.subscribeToChild(button, ButtonGroup_1.Action.UPDATE, updateCb);\n return { id: id, label: label, buttons: buttons, disabled: disabled };\n}\nexports.getGroupedButton = getGroupedButton;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.Action = void 0;\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::TITLEBAR::UPDATE\";\n ActionType[\"BUTTON_CLICK\"] = \"APP::TITLEBAR::BUTTONS::BUTTON::CLICK\";\n ActionType[\"BUTTON_UPDATE\"] = \"APP::TITLEBAR::BUTTONS::BUTTON::UPDATE\";\n ActionType[\"BUTTON_GROUP_UPDATE\"] = \"APP::TITLEBAR::BUTTONS::BUTTONGROUP::UPDATE\";\n ActionType[\"BREADCRUMBS_CLICK\"] = \"APP::TITLEBAR::BREADCRUMBS::BUTTON::CLICK\";\n ActionType[\"BREADCRUMBS_UPDATE\"] = \"APP::TITLEBAR::BREADCRUMBS::BUTTON::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.TitleBar = exports.update = exports.clickBreadcrumb = exports.clickActionButton = void 0;\nvar Button_1 = require(\"../Button\");\nvar ButtonGroup_1 = require(\"../ButtonGroup\");\nvar buttonGroupHelper_1 = require(\"../buttonGroupHelper\");\nvar buttonHelper_1 = require(\"../buttonHelper\");\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar types_2 = require(\"./types\");\nvar TITLEBAR_BUTTON_PROPS = {\n group: types_1.Group.TitleBar,\n subgroups: ['Buttons'],\n};\nvar BREADCRUMB_BUTTON_PROPS = {\n group: types_1.Group.TitleBar,\n subgroups: ['Breadcrumbs'],\n type: types_1.ComponentType.Button,\n};\nfunction clickActionButton(id, payload) {\n var type = types_1.ComponentType.Button;\n var component = __assign({ id: id, type: type }, TITLEBAR_BUTTON_PROPS);\n return Button_1.clickButton(types_1.Group.TitleBar, component, payload);\n}\nexports.clickActionButton = clickActionButton;\nfunction clickBreadcrumb(id, payload) {\n var component = __assign({ id: id }, BREADCRUMB_BUTTON_PROPS);\n return Button_1.clickButton(types_1.Group.TitleBar, component, payload);\n}\nexports.clickBreadcrumb = clickBreadcrumb;\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.TitleBar,\n type: types_2.ActionType.UPDATE,\n });\n}\nexports.update = update;\nvar TitleBar = /** @class */ (function (_super) {\n __extends(TitleBar, _super);\n function TitleBar(app, options) {\n var _this = _super.call(this, app, types_1.Group.TitleBar, types_1.Group.TitleBar) || this;\n // Trigger 'update' on creation\n _this.set(options);\n return _this;\n }\n Object.defineProperty(TitleBar.prototype, \"buttons\", {\n get: function () {\n if (!this.primary && !this.secondary) {\n return undefined;\n }\n return {\n primary: this.primary,\n secondary: this.secondary,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TitleBar.prototype, \"buttonsOptions\", {\n get: function () {\n if (!this.primaryOptions && !this.secondaryOptions) {\n return undefined;\n }\n return {\n primary: this.primaryOptions,\n secondary: this.secondaryOptions,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TitleBar.prototype, \"options\", {\n get: function () {\n return {\n breadcrumbs: this.breadcrumbsOption,\n buttons: this.buttonsOptions,\n title: this.title,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TitleBar.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { breadcrumbs: this.breadcrumb, buttons: this.buttons, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n TitleBar.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var title = mergedOptions.title, buttons = mergedOptions.buttons, breadcrumbs = mergedOptions.breadcrumbs;\n this.title = title;\n this.setBreadcrumbs(breadcrumbs);\n this.setPrimaryButton(buttons ? buttons.primary : undefined);\n this.setSecondaryButton(buttons ? buttons.secondary : undefined);\n if (shouldUpdate) {\n this.dispatch(types_2.Action.UPDATE);\n }\n return this;\n };\n TitleBar.prototype.dispatch = function (action) {\n switch (action) {\n case types_2.Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n TitleBar.prototype.getButton = function (button, subgroups, updateCb) {\n if (button instanceof ButtonGroup_1.ButtonGroup) {\n return buttonGroupHelper_1.getGroupedButton(this, button, subgroups, updateCb);\n }\n return buttonHelper_1.getSingleButton(this, button, subgroups, updateCb);\n };\n TitleBar.prototype.updatePrimaryButton = function (newPayload) {\n if (!this.primary) {\n return;\n }\n if (helper_1.updateActionFromPayload(this.primary, newPayload)) {\n this.dispatch(types_2.Action.UPDATE);\n }\n };\n TitleBar.prototype.updateSecondaryButtons = function (newPayload) {\n if (!this.secondary) {\n return;\n }\n var buttonToUpdate = this.secondary.find(function (action) { return action.id === newPayload.id; });\n if (!buttonToUpdate) {\n return;\n }\n var updated = false;\n if (ButtonGroup_1.isGroupedButtonPayload(newPayload)) {\n updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);\n }\n else {\n updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);\n }\n if (updated) {\n this.dispatch(types_2.Action.UPDATE);\n }\n };\n TitleBar.prototype.updateBreadcrumbButton = function (newPayload) {\n if (!this.breadcrumb) {\n return;\n }\n if (helper_1.updateActionFromPayload(this.breadcrumb, newPayload)) {\n this.dispatch(types_2.Action.UPDATE);\n }\n };\n TitleBar.prototype.setPrimaryButton = function (newOptions) {\n this.primaryOptions = this.getChildButton(newOptions, this.primaryOptions);\n this.primary = this.primaryOptions\n ? this.getButton(this.primaryOptions, TITLEBAR_BUTTON_PROPS.subgroups, this.updatePrimaryButton)\n : undefined;\n };\n TitleBar.prototype.setSecondaryButton = function (newOptions) {\n var _this = this;\n var newButtons = newOptions || [];\n var currentButtons = this.secondaryOptions || [];\n this.secondaryOptions = this.getUpdatedChildActions(newButtons, currentButtons);\n this.secondary = this.secondaryOptions\n ? this.secondaryOptions.map(function (action) {\n return _this.getButton(action, TITLEBAR_BUTTON_PROPS.subgroups, _this.updateSecondaryButtons);\n })\n : undefined;\n };\n TitleBar.prototype.setBreadcrumbs = function (breadcrumb) {\n this.breadcrumbsOption = this.getChildButton(breadcrumb, this.breadcrumbsOption);\n this.breadcrumb = this.breadcrumbsOption\n ? this.getButton(this.breadcrumbsOption, BREADCRUMB_BUTTON_PROPS.subgroups, this.updateBreadcrumbButton)\n : undefined;\n };\n TitleBar.prototype.getChildButton = function (newAction, currentAction) {\n var newButtons = newAction ? [newAction] : [];\n var currentButtons = currentAction ? [currentAction] : [];\n var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);\n return updatedButton ? updatedButton[0] : undefined;\n };\n return TitleBar;\n}(helper_1.ActionSetWithChildren));\nexports.TitleBar = TitleBar;\nfunction create(app, options) {\n return new TitleBar(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.close = exports.show = exports.create = exports.Share = exports.Action = exports.ActionType = void 0;\nvar types_1 = require(\"../types\");\nvar helper_1 = require(\"../helper\");\n/**\n * Types\n */\n/**\n * @public\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"SHOW\"] = \"APP::SHARE::SHOW\";\n ActionType[\"CLOSE\"] = \"APP::SHARE::CLOSE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\n/**\n * @public\n */\nvar Action;\n(function (Action) {\n Action[\"SHOW\"] = \"SHOW\";\n Action[\"CLOSE\"] = \"CLOSE\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Action\n */\n/**\n * A set of actions for displaying a Share Sheet component\n * @public\n */\nvar Share = /** @class */ (function (_super) {\n __extends(Share, _super);\n function Share(app) {\n return _super.call(this, app, types_1.Group.Share, types_1.Group.Share) || this;\n }\n /**\n * @public\n */\n Share.prototype.dispatch = function (action, payload) {\n switch (action) {\n case Action.SHOW:\n this.dispatchShareAction(ActionType.SHOW, payload);\n break;\n default:\n throw \"Action: \" + action + \" not supported\";\n }\n return this;\n };\n /**\n * @internal\n */\n Share.prototype.dispatchShareAction = function (actionType, payload) {\n this.app.dispatch(helper_1.actionWrapper({\n type: actionType,\n group: types_1.Group.Share,\n payload: __assign({ id: this.id }, payload),\n }));\n };\n return Share;\n}(helper_1.ActionSet));\nexports.Share = Share;\n/**\n * @public\n */\nfunction create(app) {\n return new Share(app);\n}\nexports.create = create;\nfunction show() {\n return helper_1.actionWrapper({\n group: types_1.Group.Share,\n type: ActionType.SHOW,\n });\n}\nexports.show = show;\nfunction close() {\n return helper_1.actionWrapper({\n group: types_1.Group.Share,\n type: ActionType.CLOSE,\n });\n}\nexports.close = close;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.AppLink = exports.update = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar Redirect_1 = require(\"../../Navigation/Redirect\");\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::LINK::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction update(updatePayload) {\n return helper_1.actionWrapper({\n group: types_1.Group.Link,\n type: ActionType.UPDATE,\n payload: updatePayload,\n });\n}\nexports.update = update;\nvar AppLink = /** @class */ (function (_super) {\n __extends(AppLink, _super);\n function AppLink(app, options) {\n var _this = _super.call(this, app, types_1.Group.Link, types_1.Group.Link) || this;\n _this.label = '';\n _this.destination = '';\n _this.set(options, false);\n return _this;\n }\n Object.defineProperty(AppLink.prototype, \"options\", {\n get: function () {\n var _a = this, label = _a.label, destination = _a.destination;\n return {\n label: label,\n destination: destination,\n redirectType: Redirect_1.Action.APP,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(AppLink.prototype, \"payload\", {\n get: function () {\n var _a = this.options, label = _a.label, destination = _a.destination, redirectType = _a.redirectType;\n var path = destination;\n return {\n id: this.id,\n label: label,\n destination: { path: path },\n redirectType: redirectType,\n };\n },\n enumerable: false,\n configurable: true\n });\n AppLink.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var _a = helper_1.getMergedProps(this.options, options), label = _a.label, destination = _a.destination;\n this.label = label;\n this.destination = destination;\n if (shouldUpdate) {\n this.dispatch(ActionType.UPDATE);\n }\n return this;\n };\n AppLink.prototype.dispatch = function (action) {\n switch (action) {\n case ActionType.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n return AppLink;\n}(helper_1.ActionSet));\nexports.AppLink = AppLink;\nfunction create(app, options) {\n return new AppLink(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.NavigationMenu = exports.update = exports.ActionType = exports.Action = void 0;\nvar AppLink_1 = require(\"../../Link/AppLink\");\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar SUBGROUPS = ['Navigation_Menu'];\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"LINK_UPDATE\"] = \"LINK::UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::MENU::NAVIGATION_MENU::UPDATE\";\n ActionType[\"LINK_UPDATE\"] = \"APP::MENU::NAVIGATION_MENU::LINK::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Menu,\n type: ActionType.UPDATE,\n });\n}\nexports.update = update;\nvar NavigationMenu = /** @class */ (function (_super) {\n __extends(NavigationMenu, _super);\n function NavigationMenu(app, options) {\n var _this = _super.call(this, app, 'Navigation_Menu', types_1.Group.Menu) || this;\n _this.items = [];\n // Trigger 'update' on creation\n _this.set(options);\n return _this;\n }\n Object.defineProperty(NavigationMenu.prototype, \"options\", {\n get: function () {\n return {\n items: this.itemsOptions,\n active: this.activeOptions,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(NavigationMenu.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { active: this.active, items: this.items, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n NavigationMenu.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var items = mergedOptions.items, active = mergedOptions.active;\n this.setItems(items);\n this.activeOptions = active;\n this.active = active && active.id;\n if (shouldUpdate) {\n this.dispatch(Action.UPDATE);\n }\n return this;\n };\n NavigationMenu.prototype.dispatch = function (action) {\n switch (action) {\n case Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n NavigationMenu.prototype.updateItem = function (newPayload) {\n if (!this.items) {\n return;\n }\n var itemToUpdate = this.items.find(function (action) { return action.id === newPayload.id; });\n if (!itemToUpdate) {\n return;\n }\n if (helper_1.updateActionFromPayload(itemToUpdate, newPayload)) {\n this.dispatch(Action.UPDATE);\n }\n };\n NavigationMenu.prototype.setItems = function (newOptions) {\n var _this = this;\n var newItems = newOptions || [];\n var currentItems = this.itemsOptions || [];\n this.itemsOptions = this.getUpdatedChildActions(newItems, currentItems);\n this.items = this.itemsOptions\n ? this.itemsOptions.map(function (action) {\n _this.addChild(action, _this.group, SUBGROUPS);\n _this.subscribeToChild(action, AppLink_1.Action.UPDATE, _this.updateItem);\n return action.payload;\n })\n : [];\n };\n return NavigationMenu;\n}(helper_1.ActionSetWithChildren));\nexports.NavigationMenu = NavigationMenu;\nfunction create(app, options) {\n return new NavigationMenu(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.ChannelMenu = exports.update = exports.ActionType = exports.Action = void 0;\nvar AppLink_1 = require(\"../../Link/AppLink\");\nvar helper_1 = require(\"../../helper\");\nvar types_1 = require(\"../../types\");\nvar SUBGROUPS = ['Channel_Menu'];\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n Action[\"LINK_UPDATE\"] = \"LINK::UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::MENU::CHANNEL_MENU::UPDATE\";\n ActionType[\"LINK_UPDATE\"] = \"APP::MENU::CHANNEL_MENU::LINK::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.Menu,\n type: ActionType.UPDATE,\n });\n}\nexports.update = update;\nvar ChannelMenu = /** @class */ (function (_super) {\n __extends(ChannelMenu, _super);\n function ChannelMenu(app, options) {\n var _this = _super.call(this, app, 'Channel_Menu', types_1.Group.Menu) || this;\n _this.items = [];\n // Trigger 'update' on creation\n _this.set(options);\n return _this;\n }\n Object.defineProperty(ChannelMenu.prototype, \"options\", {\n get: function () {\n return {\n items: this.itemsOptions,\n active: this.activeOptions,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ChannelMenu.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { active: this.active, items: this.items, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n ChannelMenu.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var items = mergedOptions.items, active = mergedOptions.active;\n this.setItems(items);\n this.activeOptions = active;\n this.active = active && active.id;\n if (shouldUpdate) {\n this.dispatch(Action.UPDATE);\n }\n return this;\n };\n ChannelMenu.prototype.dispatch = function (action) {\n switch (action) {\n case Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n ChannelMenu.prototype.updateItem = function (newPayload) {\n if (!this.items) {\n return;\n }\n var itemToUpdate = this.items.find(function (action) { return action.id === newPayload.id; });\n if (!itemToUpdate) {\n return;\n }\n if (helper_1.updateActionFromPayload(itemToUpdate, newPayload)) {\n this.dispatch(Action.UPDATE);\n }\n };\n ChannelMenu.prototype.setItems = function (newOptions) {\n var _this = this;\n var newItems = newOptions || [];\n var currentItems = this.itemsOptions || [];\n this.itemsOptions = this.getUpdatedChildActions(newItems, currentItems);\n this.items = this.itemsOptions\n ? this.itemsOptions.map(function (action) {\n _this.addChild(action, _this.group, SUBGROUPS);\n _this.subscribeToChild(action, AppLink_1.Action.UPDATE, _this.updateItem);\n return action.payload;\n })\n : [];\n };\n return ChannelMenu;\n}(helper_1.ActionSetWithChildren));\nexports.ChannelMenu = ChannelMenu;\nfunction create(app, options) {\n return new ChannelMenu(app, options);\n}\nexports.create = create;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./actions\"), exports);\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.Pos = exports.close = exports.ActionType = exports.Action = void 0;\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar Action;\n(function (Action) {\n Action[\"CLOSE\"] = \"CLOSE\";\n})(Action = exports.Action || (exports.Action = {}));\n/**\n * Pos action type enum\n * @remarks includes the action prefix and group\n *\n */\nvar ActionType;\n(function (ActionType) {\n ActionType[\"CLOSE\"] = \"APP::POS::CLOSE\";\n ActionType[\"LOCATION_UPDATE\"] = \"APP::POS::LOCATION::UPDATE\";\n ActionType[\"USER_UPDATE\"] = \"APP::POS::USER::UPDATE\";\n ActionType[\"DEVICE_UPDATE\"] = \"APP::POS::DEVICE::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nfunction close() {\n return helper_1.actionWrapper({\n group: types_1.Group.Pos,\n type: ActionType.CLOSE,\n });\n}\nexports.close = close;\nvar Pos = /** @class */ (function (_super) {\n __extends(Pos, _super);\n function Pos(app) {\n return _super.call(this, app, types_1.Group.Pos, types_1.Group.Pos) || this;\n }\n Pos.prototype.dispatch = function (action) {\n switch (action) {\n case ActionType.CLOSE:\n this.app.dispatch(close());\n break;\n }\n return this;\n };\n return Pos;\n}(helper_1.ActionSet));\nexports.Pos = Pos;\nfunction create(app) {\n return new Pos(app);\n}\nexports.create = create;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.create = exports.MarketingExternalActivityTopBar = exports.update = exports.clickActionButton = exports.MarketingActivityStatusBadgeType = exports.ActionType = exports.Action = void 0;\nvar Button_1 = require(\"../Button\");\nvar buttonHelper_1 = require(\"../buttonHelper\");\nvar helper_1 = require(\"../helper\");\nvar types_1 = require(\"../types\");\nvar Action;\n(function (Action) {\n Action[\"UPDATE\"] = \"UPDATE\";\n})(Action = exports.Action || (exports.Action = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"UPDATE\"] = \"APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::UPDATE\";\n ActionType[\"BUTTON_CLICK\"] = \"APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::BUTTONS::BUTTON::CLICK\";\n ActionType[\"BUTTON_UPDATE\"] = \"APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::BUTTONS::BUTTON::UPDATE\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar MarketingActivityStatusBadgeType;\n(function (MarketingActivityStatusBadgeType) {\n MarketingActivityStatusBadgeType[\"Default\"] = \"DEFAULT\";\n MarketingActivityStatusBadgeType[\"Success\"] = \"SUCCESS\";\n MarketingActivityStatusBadgeType[\"Attention\"] = \"ATTENTION\";\n MarketingActivityStatusBadgeType[\"Warning\"] = \"WARNING\";\n MarketingActivityStatusBadgeType[\"Info\"] = \"INFO\";\n})(MarketingActivityStatusBadgeType = exports.MarketingActivityStatusBadgeType || (exports.MarketingActivityStatusBadgeType = {}));\nvar MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS = {\n group: types_1.Group.MarketingExternalActivityTopBar,\n subgroups: ['Buttons'],\n};\nfunction clickActionButton(id, payload) {\n var type = types_1.ComponentType.Button;\n var component = __assign({ id: id, type: type }, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS);\n return Button_1.clickButton(types_1.Group.MarketingExternalActivityTopBar, component, payload);\n}\nexports.clickActionButton = clickActionButton;\nfunction update(payload) {\n return helper_1.actionWrapper({\n payload: payload,\n group: types_1.Group.MarketingExternalActivityTopBar,\n type: ActionType.UPDATE,\n });\n}\nexports.update = update;\nvar MarketingExternalActivityTopBar = /** @class */ (function (_super) {\n __extends(MarketingExternalActivityTopBar, _super);\n function MarketingExternalActivityTopBar(app, options) {\n var _this = _super.call(this, app, types_1.Group.MarketingExternalActivityTopBar, types_1.Group.MarketingExternalActivityTopBar) || this;\n // Trigger 'update' on creation\n _this.set(options);\n return _this;\n }\n Object.defineProperty(MarketingExternalActivityTopBar.prototype, \"buttons\", {\n get: function () {\n if (!this.primary && !this.secondary) {\n return undefined;\n }\n return {\n primary: this.primary,\n secondary: this.secondary,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MarketingExternalActivityTopBar.prototype, \"buttonsOptions\", {\n get: function () {\n if (!this.primaryOptions && !this.secondaryOptions) {\n return undefined;\n }\n return {\n primary: this.primaryOptions,\n secondary: this.secondaryOptions,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MarketingExternalActivityTopBar.prototype, \"options\", {\n get: function () {\n return {\n title: this.title,\n status: this.status,\n saving: this.saving,\n saved: this.saved,\n buttons: this.buttonsOptions,\n };\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MarketingExternalActivityTopBar.prototype, \"payload\", {\n get: function () {\n return __assign(__assign({}, this.options), { buttons: this.buttons, id: this.id });\n },\n enumerable: false,\n configurable: true\n });\n MarketingExternalActivityTopBar.prototype.set = function (options, shouldUpdate) {\n if (shouldUpdate === void 0) { shouldUpdate = true; }\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var title = mergedOptions.title, buttons = mergedOptions.buttons, saved = mergedOptions.saved, saving = mergedOptions.saving, status = mergedOptions.status;\n this.title = title;\n this.saving = saving;\n this.saved = saved;\n this.status = status;\n this.setPrimaryButton(buttons ? buttons.primary : undefined);\n this.setSecondaryButtons(buttons ? buttons.secondary : undefined);\n if (shouldUpdate) {\n this.dispatch(Action.UPDATE);\n }\n return this;\n };\n MarketingExternalActivityTopBar.prototype.dispatch = function (action) {\n switch (action) {\n case Action.UPDATE:\n this.app.dispatch(update(this.payload));\n break;\n }\n return this;\n };\n MarketingExternalActivityTopBar.prototype.getButton = function (button, subgroups, updateCb) {\n return buttonHelper_1.getSingleButton(this, button, subgroups, updateCb);\n };\n MarketingExternalActivityTopBar.prototype.updatePrimaryButton = function (newPayload) {\n if (!this.primary) {\n return;\n }\n if (helper_1.updateActionFromPayload(this.primary, newPayload)) {\n this.dispatch(Action.UPDATE);\n }\n };\n MarketingExternalActivityTopBar.prototype.updateSecondaryButtons = function (newPayload) {\n if (!this.secondary) {\n return;\n }\n var buttonToUpdate = this.secondary.find(function (action) { return action.id === newPayload.id; });\n if (!buttonToUpdate) {\n return;\n }\n var updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);\n if (updated) {\n this.dispatch(Action.UPDATE);\n }\n };\n MarketingExternalActivityTopBar.prototype.setPrimaryButton = function (newOptions) {\n this.primaryOptions = this.getChildButton(newOptions, this.primaryOptions);\n this.primary = this.primaryOptions\n ? this.getButton(this.primaryOptions, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS.subgroups, this.updatePrimaryButton)\n : undefined;\n };\n MarketingExternalActivityTopBar.prototype.setSecondaryButtons = function (newOptions) {\n var _this = this;\n var newButtons = newOptions || [];\n var currentButtons = this.secondaryOptions || [];\n this.secondaryOptions = this.getUpdatedChildActions(newButtons, currentButtons);\n this.secondary = this.secondaryOptions\n ? this.secondaryOptions.map(function (action) {\n return _this.getButton(action, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS.subgroups, _this.updateSecondaryButtons);\n })\n : undefined;\n };\n MarketingExternalActivityTopBar.prototype.updateSaving = function (saving) {\n this.saving = saving;\n this.dispatch(Action.UPDATE);\n };\n MarketingExternalActivityTopBar.prototype.updateSaved = function (saved) {\n this.saved = saved;\n this.dispatch(Action.UPDATE);\n };\n MarketingExternalActivityTopBar.prototype.updateStatus = function (newPayload) {\n this.status = newPayload;\n this.dispatch(Action.UPDATE);\n };\n MarketingExternalActivityTopBar.prototype.getChildButton = function (newAction, currentAction) {\n var newButtons = newAction ? [newAction] : [];\n var currentButtons = currentAction ? [currentAction] : [];\n var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);\n return updatedButton ? updatedButton[0] : undefined;\n };\n return MarketingExternalActivityTopBar;\n}(helper_1.ActionSetWithChildren));\nexports.MarketingExternalActivityTopBar = MarketingExternalActivityTopBar;\nfunction create(app, options) {\n return new MarketingExternalActivityTopBar(app, options);\n}\nexports.create = create;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fullPageLoad = exports.skeletonPageLoad = exports.Action = exports.ActionType = void 0;\nvar types_1 = require(\"../types\");\nvar helper_1 = require(\"../helper\");\nvar ActionType;\n(function (ActionType) {\n ActionType[\"SKELETON_PAGE_LOAD\"] = \"APP::PERFORMANCE::SKELETON_PAGE_LOAD\";\n ActionType[\"FULL_PAGE_LOAD\"] = \"APP::PERFORMANCE::FULL_PAGE_LOAD\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar Action;\n(function (Action) {\n Action[\"SKELETON_PAGE_LOAD\"] = \"SKELETON_PAGE_LOAD\";\n Action[\"FULL_PAGE_LOAD\"] = \"FULL_PAGE_LOAD\";\n})(Action = exports.Action || (exports.Action = {}));\nfunction skeletonPageLoad() {\n return helper_1.actionWrapper({\n group: types_1.Group.Performance,\n type: ActionType.SKELETON_PAGE_LOAD,\n });\n}\nexports.skeletonPageLoad = skeletonPageLoad;\nfunction fullPageLoad() {\n return helper_1.actionWrapper({\n group: types_1.Group.Performance,\n type: ActionType.FULL_PAGE_LOAD,\n });\n}\nexports.fullPageLoad = fullPageLoad;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Performance = exports.Pos = exports.AppLink = exports.ChannelMenu = exports.NavigationMenu = exports.Share = exports.ContextualSaveBar = exports.MarketingExternalActivityTopBar = exports.TitleBar = exports.SessionToken = exports.ResourcePicker = exports.Redirect = exports.Print = exports.ModalContent = exports.Modal = exports.Loading = exports.LeaveConfirmation = exports.History = exports.Toast = exports.Fullscreen = exports.FeedbackModal = exports.Features = exports.Flash = exports.Error = exports.Cart = exports.Scanner = exports.ButtonGroup = exports.Button = exports.AuthCode = void 0;\nvar AuthCode = __importStar(require(\"./AuthCode\"));\nexports.AuthCode = AuthCode;\nvar Button = __importStar(require(\"./Button\"));\nexports.Button = Button;\nvar ButtonGroup = __importStar(require(\"./ButtonGroup\"));\nexports.ButtonGroup = ButtonGroup;\nvar Cart = __importStar(require(\"./Cart\"));\nexports.Cart = Cart;\nvar Error = __importStar(require(\"./Error\"));\nexports.Error = Error;\nvar Flash = __importStar(require(\"./Flash\"));\nexports.Flash = Flash;\nvar Features = __importStar(require(\"./Features\"));\nexports.Features = Features;\nvar FeedbackModal = __importStar(require(\"./FeedbackModal\"));\nexports.FeedbackModal = FeedbackModal;\nvar Fullscreen = __importStar(require(\"./Fullscreen\"));\nexports.Fullscreen = Fullscreen;\nvar LeaveConfirmation = __importStar(require(\"./LeaveConfirmation\"));\nexports.LeaveConfirmation = LeaveConfirmation;\nvar Loading = __importStar(require(\"./Loading\"));\nexports.Loading = Loading;\nvar Modal = __importStar(require(\"./Modal\"));\nexports.Modal = Modal;\nvar ModalContent = __importStar(require(\"./Modal/ModalContent\"));\nexports.ModalContent = ModalContent;\nvar History = __importStar(require(\"./Navigation/History\"));\nexports.History = History;\nvar Redirect = __importStar(require(\"./Navigation/Redirect\"));\nexports.Redirect = Redirect;\nvar Print = __importStar(require(\"./Print\"));\nexports.Print = Print;\nvar ResourcePicker = __importStar(require(\"./ResourcePicker\"));\nexports.ResourcePicker = ResourcePicker;\nvar Scanner = __importStar(require(\"./Scanner\"));\nexports.Scanner = Scanner;\nvar SessionToken = __importStar(require(\"./SessionToken\"));\nexports.SessionToken = SessionToken;\nvar TitleBar = __importStar(require(\"./TitleBar\"));\nexports.TitleBar = TitleBar;\nvar Toast = __importStar(require(\"./Toast\"));\nexports.Toast = Toast;\nvar ContextualSaveBar = __importStar(require(\"./ContextualSaveBar\"));\nexports.ContextualSaveBar = ContextualSaveBar;\nvar Share = __importStar(require(\"./Share\"));\nexports.Share = Share;\nvar NavigationMenu = __importStar(require(\"./Menu/NavigationMenu\"));\nexports.NavigationMenu = NavigationMenu;\nvar ChannelMenu = __importStar(require(\"./Menu/ChannelMenu\"));\nexports.ChannelMenu = ChannelMenu;\nvar AppLink = __importStar(require(\"./Link/AppLink\"));\nexports.AppLink = AppLink;\nvar Pos = __importStar(require(\"./Pos\"));\nexports.Pos = Pos;\nvar MarketingExternalActivityTopBar = __importStar(require(\"./MarketingExternalActivityTopBar\"));\nexports.MarketingExternalActivityTopBar = MarketingExternalActivityTopBar;\nvar Performance = __importStar(require(\"./Performance\"));\nexports.Performance = Performance;\nvar validator_1 = require(\"./validator\");\nObject.defineProperty(exports, \"isAppBridgeAction\", { enumerable: true, get: function () { return validator_1.isAppBridgeAction; } });\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateAction = exports.getSectionSchema = exports.matchesAbsolutePath = void 0;\nvar actions_1 = require(\"../../actions\");\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nfunction matchesAbsolutePath(value) {\n return value.match('^https?://')\n ? undefined\n : [\n {\n value: value,\n error: 'invalid_absolute_url',\n message: 'expected string to start with `https://` or `http://`',\n },\n ];\n}\nexports.matchesAbsolutePath = matchesAbsolutePath;\nfunction getSectionSchema(payload) {\n var isProductVariant = payload &&\n payload.section &&\n payload.section.resource &&\n payload.section.name === actions_1.Redirect.ResourceType.Product;\n var resourceSchema = {\n create: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n id: type_validate_1.makeOptional(type_validate_1.matchesString()),\n };\n var productVariantSchema = __assign(__assign({}, resourceSchema), { variant: type_validate_1.makeOptional(type_validate_1.matchesObject(resourceSchema)) });\n return type_validate_1.matchesObject({\n section: type_validate_1.matchesObject({\n name: type_validate_1.matchesEnum(actions_1.Redirect.ResourceType),\n resource: type_validate_1.makeOptional(type_validate_1.matchesObject(isProductVariant ? productVariantSchema : resourceSchema)),\n }),\n });\n}\nexports.getSectionSchema = getSectionSchema;\nfunction validateAction(action) {\n var newContextSchema = type_validate_1.matchesObject({ newContext: type_validate_1.makeOptional(type_validate_1.matchesBoolean()) });\n var actionType = actions_1.Redirect.ActionType;\n var schema;\n switch (action.type) {\n case actions_1.History.ActionType.PUSH:\n case actions_1.History.ActionType.REPLACE:\n actionType = actions_1.History.ActionType;\n schema = utils_1.relativePathSchema;\n break;\n case actions_1.Redirect.ActionType.APP:\n schema = utils_1.relativePathSchema;\n break;\n case actions_1.Redirect.ActionType.REMOTE:\n schema = type_validate_1.composeSchemas(type_validate_1.matchesObject({\n url: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) { return matchesAbsolutePath(value); }),\n }), newContextSchema);\n break;\n case actions_1.Redirect.ActionType.ADMIN_PATH:\n schema = type_validate_1.composeSchemas(utils_1.relativePathSchema, newContextSchema);\n break;\n case actions_1.Redirect.ActionType.ADMIN_SECTION:\n schema = type_validate_1.composeSchemas(getSectionSchema(action.payload), newContextSchema);\n break;\n }\n return type_validate_1.validate(action, utils_1.createActionValidator(actionType, schema));\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = void 0;\nvar Print_1 = require(\"../../actions/Print\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Print_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nfunction validateAction(action) {\n return type_validate_1.validate(action, utils_1.createActionValidator(Print_1.ActionType));\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.buttonGroupSchema = void 0;\nvar ButtonGroup_1 = require(\"../../actions/ButtonGroup\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return ButtonGroup_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar button_1 = require(\"./button\");\nexports.buttonGroupSchema = type_validate_1.composeSchemas(button_1.buttonSchema, type_validate_1.matchesObject({\n buttons: type_validate_1.matchesArray(type_validate_1.makeOptional(button_1.buttonSchemaWithId)),\n}));\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.buttonGroupSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n var validator = utils_1.createActionValidator(ButtonGroup_1.ActionType, exports.buttonGroupSchema, true, true);\n return type_validate_1.validate(action, validator);\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = void 0;\nvar ResourcePicker_1 = require(\"../../actions/ResourcePicker\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return ResourcePicker_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar resourceSelectionSchema = type_validate_1.matchesArray(type_validate_1.matchesObject({\n id: type_validate_1.matchesString(),\n}));\nvar resourcePickerOptions = type_validate_1.matchesObject({\n initialQuery: type_validate_1.makeOptional(type_validate_1.matchesString()),\n initialSelectionIds: type_validate_1.makeOptional(resourceSelectionSchema),\n selectMultiple: type_validate_1.makeOptional(type_validate_1.oneOf(type_validate_1.matchesBoolean(), type_validate_1.matchesPositiveInteger())),\n showHidden: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n showVariants: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n showDraft: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n showArchived: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n showDraftBadge: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n showArchivedBadge: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n actionVerb: type_validate_1.makeOptional(type_validate_1.matchesEnum(ResourcePicker_1.ActionVerb)),\n});\nvar resourcePickerActionSchema = type_validate_1.matchesObject({\n resourceType: type_validate_1.matchesEnum(ResourcePicker_1.ResourceType),\n options: type_validate_1.makeOptional(resourcePickerOptions),\n});\nvar selectionSchema = type_validate_1.matchesObject({\n selection: resourceSelectionSchema,\n});\nfunction validateProps(props) {\n return type_validate_1.validate(props, resourcePickerOptions);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n switch (action.type) {\n case ResourcePicker_1.ActionType.UPDATE:\n case ResourcePicker_1.ActionType.OPEN:\n return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType, resourcePickerActionSchema, false, true));\n case ResourcePicker_1.ActionType.SELECT:\n return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType, selectionSchema, true, true));\n case ResourcePicker_1.ActionType.CANCEL:\n case ResourcePicker_1.ActionType.CLOSE:\n default:\n return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.toastSchema = void 0;\nvar Toast_1 = require(\"../../actions/Toast\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return Toast_1.ActionType; } });\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nexports.toastSchema = type_validate_1.matchesObject({\n message: type_validate_1.matchesString(),\n duration: type_validate_1.matchesPositiveInteger(),\n isError: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),\n});\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.toastSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n switch (action.type) {\n case Toast_1.ActionType.SHOW:\n return type_validate_1.validate(action, utils_1.createActionValidator(Toast_1.ActionType, exports.toastSchema, true));\n default:\n return type_validate_1.validate(action, utils_1.createActionValidator(Toast_1.ActionType));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.titleBarSchema = void 0;\nvar TitleBar_1 = require(\"../../actions/TitleBar\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return TitleBar_1.ActionType; } });\nvar Button_1 = require(\"../../actions/Button\");\nvar ButtonGroup_1 = require(\"../../actions/ButtonGroup\");\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar button_1 = require(\"./button\");\nvar buttonGroup_1 = require(\"./buttonGroup\");\nvar buttonSchemaWithId = type_validate_1.composeSchemas(button_1.buttonSchema, type_validate_1.matchesObject({\n id: type_validate_1.matchesString(),\n}));\nexports.titleBarSchema = type_validate_1.matchesObject({\n breadcrumbs: type_validate_1.makeOptional(button_1.buttonSchema),\n title: type_validate_1.makeOptional(type_validate_1.matchesString()),\n buttons: type_validate_1.makeOptional(type_validate_1.matchesObject({\n primary: type_validate_1.makeOptional(buttonSchemaWithId),\n secondary: type_validate_1.makeOptional(type_validate_1.matchesArray(type_validate_1.composeSchemas(buttonSchemaWithId, type_validate_1.matchesObject({\n buttons: type_validate_1.makeOptional(type_validate_1.matchesArray(buttonSchemaWithId)),\n })))),\n })),\n});\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.titleBarSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n switch (action.type) {\n default:\n case TitleBar_1.ActionType.UPDATE:\n return type_validate_1.validate(action, utils_1.createActionValidator(TitleBar_1.ActionType, exports.titleBarSchema, true, false));\n case TitleBar_1.ActionType.BUTTON_CLICK:\n case TitleBar_1.ActionType.BREADCRUMBS_CLICK:\n return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.CLICK }));\n case TitleBar_1.ActionType.BUTTON_UPDATE:\n case TitleBar_1.ActionType.BREADCRUMBS_UPDATE:\n return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.UPDATE }));\n case TitleBar_1.ActionType.BUTTON_GROUP_UPDATE:\n return buttonGroup_1.validateAction(__assign(__assign({}, action), { type: ButtonGroup_1.ActionType.UPDATE }));\n }\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionType = exports.validateAction = exports.validateProps = exports.linkActionSchema = exports.linkPropsSchema = void 0;\nvar actions_1 = require(\"../../actions\");\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar AppLink_1 = require(\"../../actions/Link/AppLink\");\nObject.defineProperty(exports, \"ActionType\", { enumerable: true, get: function () { return AppLink_1.ActionType; } });\nvar allowedRedirectTypes;\n(function (allowedRedirectTypes) {\n allowedRedirectTypes[\"APP\"] = \"APP\";\n})(allowedRedirectTypes || (allowedRedirectTypes = {}));\nexports.linkPropsSchema = type_validate_1.matchesObject({\n label: type_validate_1.matchesString(),\n destination: utils_1.relativeUrlSchema,\n redirectType: type_validate_1.matchesEnum(allowedRedirectTypes),\n});\nexports.linkActionSchema = type_validate_1.matchesObject({\n label: type_validate_1.matchesString(),\n destination: utils_1.relativePathSchema,\n redirectType: type_validate_1.matchesEnum(allowedRedirectTypes),\n});\nfunction validateProps(props) {\n return type_validate_1.validate(props, exports.linkPropsSchema);\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n var actionType = actions_1.AppLink.ActionType;\n var schema;\n switch (action.type) {\n case actions_1.AppLink.ActionType.UPDATE:\n actionType = actions_1.AppLink.ActionType;\n schema = exports.linkActionSchema;\n }\n return type_validate_1.validate(action, utils_1.createActionValidator(actionType, schema, true, true));\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateAction = exports.validateProps = void 0;\nvar actions_1 = require(\"../../actions\");\nvar type_validate_1 = require(\"../type-validate\");\nvar utils_1 = require(\"../utils\");\nvar link_1 = require(\"./link\");\nvar linkOptionsValidator = type_validate_1.matchesObject({ id: type_validate_1.matchesString(), options: link_1.linkPropsSchema });\nfunction activeLinkError(value) {\n return [\n {\n error: 'invalid_active_item',\n value: value,\n message: 'expected active item to exist in menu items',\n },\n ];\n}\nfunction getOptionsSchema(options) {\n var baseSchema = type_validate_1.matchesObject({\n items: type_validate_1.makeOptional(type_validate_1.matchesArray(linkOptionsValidator)),\n active: type_validate_1.makeOptional(linkOptionsValidator),\n });\n var items = options.items, active = options.active;\n if (items && active) {\n var activeItemSchema = type_validate_1.matchesObject({\n active: type_validate_1.composeSchemas(linkOptionsValidator, function (value) {\n return items.find(function (item) { return item.id === value.id; }) ? undefined : activeLinkError(value);\n }),\n });\n return type_validate_1.composeSchemas(baseSchema, activeItemSchema);\n }\n return baseSchema;\n}\nfunction getPayloadSchema(payload) {\n var baseSchema = type_validate_1.matchesObject({\n items: type_validate_1.makeOptional(type_validate_1.matchesArray(link_1.linkActionSchema)),\n active: type_validate_1.makeOptional(type_validate_1.matchesString()),\n });\n var items = payload.items, active = payload.active;\n if (items && active) {\n var activeItemSchema = type_validate_1.matchesObject({\n active: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {\n return items.find(function (item) { return item.id === value; })\n ? undefined\n : activeLinkError(value);\n }),\n });\n return type_validate_1.composeSchemas(baseSchema, activeItemSchema);\n }\n return baseSchema;\n}\nfunction validateProps(props) {\n var result = type_validate_1.validate(props, getOptionsSchema(props));\n return result;\n}\nexports.validateProps = validateProps;\nfunction validateAction(action) {\n var actionType = actions_1.NavigationMenu.ActionType;\n if (action.type === actions_1.ChannelMenu.ActionType.LINK_UPDATE ||\n action.type === actions_1.ChannelMenu.ActionType.UPDATE) {\n actionType = actions_1.ChannelMenu.ActionType;\n }\n return type_validate_1.validate(action, utils_1.createActionValidator(actionType, getPayloadSchema(action.payload), true, false));\n}\nexports.validateAction = validateAction;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Link = exports.Menu = exports.TitleBar = exports.Toast = exports.ResourcePicker = exports.Print = exports.Navigation = exports.Modal = exports.Loading = exports.LeaveConfirmation = exports.Fullscreen = exports.FeedbackModal = exports.ContextualSaveBar = exports.Cart = exports.Scanner = exports.ButtonGroup = exports.Button = void 0;\nvar Button = __importStar(require(\"./button\"));\nexports.Button = Button;\nvar Scanner = __importStar(require(\"./scanner\"));\nexports.Scanner = Scanner;\nvar Cart = __importStar(require(\"./cart\"));\nexports.Cart = Cart;\nvar ContextualSaveBar = __importStar(require(\"./contextualSaveBar\"));\nexports.ContextualSaveBar = ContextualSaveBar;\nvar FeedbackModal = __importStar(require(\"./feedbackModal\"));\nexports.FeedbackModal = FeedbackModal;\nvar Fullscreen = __importStar(require(\"./fullscreen\"));\nexports.Fullscreen = Fullscreen;\nvar LeaveConfirmation = __importStar(require(\"./leaveConfirmation\"));\nexports.LeaveConfirmation = LeaveConfirmation;\nvar Loading = __importStar(require(\"./loading\"));\nexports.Loading = Loading;\nvar Modal = __importStar(require(\"./modal\"));\nexports.Modal = Modal;\nvar Navigation = __importStar(require(\"./navigation\"));\nexports.Navigation = Navigation;\nvar Print = __importStar(require(\"./print\"));\nexports.Print = Print;\nvar ButtonGroup = __importStar(require(\"./buttonGroup\"));\nexports.ButtonGroup = ButtonGroup;\nvar ResourcePicker = __importStar(require(\"./resourcePicker\"));\nexports.ResourcePicker = ResourcePicker;\nvar Toast = __importStar(require(\"./toast\"));\nexports.Toast = Toast;\nvar TitleBar = __importStar(require(\"./titleBar\"));\nexports.TitleBar = TitleBar;\nvar Menu = __importStar(require(\"./menu\"));\nexports.Menu = Menu;\nvar Link = __importStar(require(\"./link\"));\nexports.Link = Link;\n","\"use strict\";\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validatorMiddleware = exports.connectValidatorToDispatchHook = exports.connectValidatorToUpdateHook = void 0;\nvar client_1 = require(\"../client\");\nvar types_1 = require(\"../actions/types\");\nvar Error_1 = require(\"../actions/Error\");\nvar helper_1 = require(\"../actions/helper\");\nvar actions_1 = require(\"./actions\");\nvar type_validate_1 = require(\"./type-validate\");\nvar utils_1 = require(\"./utils\");\nfunction updateValidator(localOrigin, group, options) {\n switch (group) {\n case types_1.Group.Button:\n return actions_1.Button.validateProps(options);\n case types_1.Group.ButtonGroup:\n return actions_1.ButtonGroup.validateProps(options);\n case types_1.Group.Modal:\n return actions_1.Modal.validateProps(options, localOrigin);\n case types_1.Group.Menu:\n return actions_1.Menu.validateProps(options);\n case types_1.Group.Link:\n return actions_1.Link.validateProps(options);\n case types_1.Group.TitleBar:\n return actions_1.TitleBar.validateProps(options);\n case types_1.Group.ResourcePicker:\n return actions_1.ResourcePicker.validateProps(options);\n case types_1.Group.Toast:\n return actions_1.Toast.validateProps(options);\n case types_1.Group.ContextualSaveBar:\n return actions_1.ContextualSaveBar.validateProps(options);\n }\n}\nfunction dispatchPayloadValidator(action, localOrigin) {\n switch (action.group) {\n case types_1.Group.Button:\n return actions_1.Button.validateAction(action);\n case types_1.Group.ButtonGroup:\n return actions_1.ButtonGroup.validateAction(action);\n case types_1.Group.Modal:\n return actions_1.Modal.validateAction(action, localOrigin);\n case types_1.Group.Menu:\n return actions_1.Menu.validateAction(action);\n case types_1.Group.TitleBar:\n return actions_1.TitleBar.validateAction(action);\n case types_1.Group.ResourcePicker:\n return actions_1.ResourcePicker.validateAction(action);\n case types_1.Group.Loading:\n return actions_1.Loading.validateAction(action);\n case types_1.Group.Toast:\n return actions_1.Toast.validateAction(action);\n case types_1.Group.Cart:\n return actions_1.Cart.validateAction(action);\n case types_1.Group.Navigation:\n return actions_1.Navigation.validateAction(action);\n case types_1.Group.Print:\n return actions_1.Print.validateAction(action);\n case types_1.Group.Scanner:\n return actions_1.Scanner.validateAction(action);\n case types_1.Group.Fullscreen:\n return actions_1.Fullscreen.validateAction(action);\n case types_1.Group.ContextualSaveBar:\n return actions_1.ContextualSaveBar.validateAction(action);\n case types_1.Group.Link:\n return actions_1.Link.validateAction(action);\n }\n}\nfunction dispatchValidator(action, origin) {\n var errors = type_validate_1.validate(action, type_validate_1.matchesObject({\n group: type_validate_1.matchesEnum(types_1.Group, {\n message: function (_, value) { return \"Unknown or unsupported action group `\" + value + \"`\"; },\n }),\n version: type_validate_1.matchesString(),\n }));\n if (errors) {\n return Error_1.invalidAction(action, utils_1.actionMessage(errors));\n }\n var payloadErrors = dispatchPayloadValidator(action, origin);\n return payloadErrors ? Error_1.invalidPayload(action, utils_1.actionMessage(payloadErrors)) : action;\n}\nexports.connectValidatorToUpdateHook = function (next) {\n return function (options) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n // The group should be staticly set to the default initial group as certain components\n // (ex. Button and ButtonGroup) can be dynamically grouped under a new group (ex. TitleBar)\n // We accept partial options so the validator should be called on merged new and old options\n var mergedOptions = helper_1.getMergedProps(this.options, options);\n var errors = updateValidator(this.app.localOrigin, this.defaultGroup, mergedOptions);\n if (errors) {\n throw Error_1.fromAction(utils_1.actionMessage(errors), Error_1.ActionType.INVALID_OPTIONS);\n }\n return next.apply(void 0, __spreadArrays([options], args));\n };\n};\nexports.connectValidatorToDispatchHook = function (next) {\n return function (action) {\n var finalAction = dispatchValidator(action, this.localOrigin);\n return next(finalAction);\n };\n};\nexports.validatorMiddleware = function (hooks) {\n hooks.set(client_1.LifecycleHook.UpdateAction, exports.connectValidatorToUpdateHook);\n hooks.set(client_1.LifecycleHook.DispatchAction, exports.connectValidatorToDispatchHook);\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar validator_1 = require(\"./validator\");\nexports.default = validator_1.validatorMiddleware;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createApp = void 0;\nvar validate_1 = __importDefault(require(\"./validate\"));\nvar utils_1 = require(\"./validate/utils\");\nvar redirect_1 = require(\"./client/redirect\");\nvar client_1 = require(\"./client\");\nvar shared_1 = require(\"./util/shared\");\n/**\n * Creates your application instance with validator middleware.\n * @param config - Both `apiKey` and `shopOrigin` are required.\n * @remarks\n * Please note that `forceRedirect` only works in production environment (`shopname.myshopify.com/admin`).\n * You will need to store `shopOrigin` during the authentication process and then retrieve it for the code\n * to work properly. To learn more about this process, see\n * {@link https://help.shopify.com/api/embedded-apps/shop-origin | Getting and storing the shop origin}.\n * @public\n */\nfunction createApp(config) {\n var currentWindow = redirect_1.getWindow();\n if (!currentWindow) {\n return shared_1.serverAppBridge;\n }\n utils_1.mixedAppClientCheck(currentWindow);\n return client_1.createAppWrapper(currentWindow.top, currentWindow.location.origin, [validate_1.default])(config);\n}\nexports.createApp = createApp;\nexports.default = createApp;\n__exportStar(require(\"./MessageTransport\"), exports);\n__exportStar(require(\"./client\"), exports);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./MessageTransport\"), exports);\n__exportStar(require(\"./client\"), exports);\nvar production_1 = require(\"./production\");\nObject.defineProperty(exports, \"default\", { enumerable: true, get: function () { return production_1.createApp; } });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar env_1 = require(\"./util/env\");\nvar createApp = env_1.isDevelopment\n ? require('./development').default\n : require('./production').default;\nexports.default = createApp;\n__exportStar(require(\"./MessageTransport\"), exports);\n__exportStar(require(\"./client\"), exports);\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm-1-8h2V6H9v4zm0 4h2v-2H9v2z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgAlertMinor = function SvgAlertMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgAlertMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10.707 17.707l5-5a.999.999 0 1 0-1.414-1.414L11 14.586V3a1 1 0 1 0-2 0v11.586l-3.293-3.293a.999.999 0 1 0-1.414 1.414l5 5a.999.999 0 0 0 1.414 0\",\n fillRule: \"evenodd\"\n});\n\nvar SvgArrowDownMinor = function SvgArrowDownMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgArrowDownMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 9H5.414l3.293-3.293a.999.999 0 1 0-1.414-1.414l-5 5a.999.999 0 0 0 0 1.414l5 5a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414L5.414 11H17a1 1 0 1 0 0-2\",\n fillRule: \"evenodd\"\n});\n\nvar SvgArrowLeftMinor = function SvgArrowLeftMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgArrowLeftMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17.707 9.293l-5-5a.999.999 0 1 0-1.414 1.414L14.586 9H3a1 1 0 1 0 0 2h11.586l-3.293 3.293a.999.999 0 1 0 1.414 1.414l5-5a.999.999 0 0 0 0-1.414\",\n fillRule: \"evenodd\"\n});\n\nvar SvgArrowRightMinor = function SvgArrowRightMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgArrowRightMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M11 17V5.414l3.293 3.293a.999.999 0 1 0 1.414-1.414l-5-5a.999.999 0 0 0-1.414 0l-5 5a.997.997 0 0 0 0 1.414.999.999 0 0 0 1.414 0L9 5.414V17a1 1 0 1 0 2 0\",\n fillRule: \"evenodd\"\n});\n\nvar SvgArrowUpMinor = function SvgArrowUpMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgArrowUpMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 0a1 1 0 1 0 0 2h1v15.132l-1.445-.964a.997.997 0 0 0-1.11 0L13 17.798l-2.445-1.63a.997.997 0 0 0-1.11 0L7 17.798l-2.445-1.63a.997.997 0 0 0-1.11 0L2 17.132V2h1a1 1 0 1 0 0-2H1a1 1 0 0 0-1 1v18a1 1 0 0 0 1.555.832L4 18.202l2.445 1.63a.997.997 0 0 0 1.11 0L10 18.202l2.445 1.63a.997.997 0 0 0 1.11 0L16 18.202l2.445 1.63a1.006 1.006 0 0 0 1.027.05A1 1 0 0 0 20 19V1a1 1 0 0 0-1-1h-2zm-6.977 9c-.026-.001-.649-.04-1.316-.707a.999.999 0 1 0-1.414 1.414A4.491 4.491 0 0 0 9 10.8v.2a1 1 0 1 0 2 0v-.185A2.995 2.995 0 0 0 13 8c0-2.281-1.727-2.712-2.758-2.97C9.127 4.751 9 4.646 9 4c0-.552.448-1 .976-1 .026.001.65.04 1.317.707a.999.999 0 1 0 1.414-1.414A4.506 4.506 0 0 0 11 1.2V1a1 1 0 1 0-2 0v.185A2.993 2.993 0 0 0 7 4c0 2.281 1.726 2.712 2.757 2.97C10.872 7.249 11 7.354 11 8c0 .552-.449 1-.977 1\"\n});\n\nvar SvgBillingStatementDollarMajorMonotone = function SvgBillingStatementDollarMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgBillingStatementDollarMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M4 8h12V6H4v2zm9 4h2v-2h-2v2zm-4 0h2v-2H9v2zm0 4h2v-2H9v2zm-4-4h2v-2H5v2zm0 4h2v-2H5v2zM17 4h-2V3a1 1 0 1 0-2 0v1H7V3a1 1 0 1 0-2 0v1H3a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCalendarMinor = function SvgCalendarMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCalendarMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M11.414 10l4.293-4.293a.999.999 0 1 0-1.414-1.414L10 8.586 5.707 4.293a.999.999 0 1 0-1.414 1.414L8.586 10l-4.293 4.293a.999.999 0 1 0 1.414 1.414L10 11.414l4.293 4.293a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414L11.414 10z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCancelSmallMinor = function SvgCancelSmallMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCancelSmallMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M19 14a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h1v-3a3 3 0 0 1 2-2.82V1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.18A3 3 0 0 1 18 11v3h1zM2 18h16v-2H2v2zm2-7v3h12v-3a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1zm2-3h4V2H6v6zm6 0h2V2h-2v6z\"\n});\n\nvar SvgCardReaderChipMajorMonotone = function SvgCardReaderChipMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCardReaderChipMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M5 8l5 5 5-5z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCaretDownMinor = function SvgCaretDownMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCaretDownMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M15 12l-5-5-5 5z\"\n});\n\nvar SvgCaretUpMinor = function SvgCaretUpMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCaretUpMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 14a.997.997 0 0 1-.707-.293l-5-5a.999.999 0 1 1 1.414-1.414L10 11.586l4.293-4.293a.999.999 0 1 1 1.414 1.414l-5 5A.997.997 0 0 1 10 14\",\n fillRule: \"evenodd\"\n});\n\nvar SvgChevronDownMinor = function SvgChevronDownMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgChevronDownMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M12 16a.997.997 0 0 1-.707-.293l-5-5a.999.999 0 0 1 0-1.414l5-5a.999.999 0 1 1 1.414 1.414L8.414 10l4.293 4.293A.999.999 0 0 1 12 16\",\n fillRule: \"evenodd\"\n});\n\nvar SvgChevronLeftMinor = function SvgChevronLeftMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgChevronLeftMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M8 16a.999.999 0 0 1-.707-1.707L11.586 10 7.293 5.707a.999.999 0 1 1 1.414-1.414l5 5a.999.999 0 0 1 0 1.414l-5 5A.997.997 0 0 1 8 16\",\n fillRule: \"evenodd\"\n});\n\nvar SvgChevronRightMinor = function SvgChevronRightMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgChevronRightMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M15 13a.997.997 0 0 1-.707-.293L10 8.414l-4.293 4.293a.999.999 0 1 1-1.414-1.414l5-5a.999.999 0 0 1 1.414 0l5 5A.999.999 0 0 1 15 13\",\n fillRule: \"evenodd\"\n});\n\nvar SvgChevronUpMinor = function SvgChevronUpMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgChevronUpMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0m0 18c-4.411 0-8-3.589-8-8s3.589-8 8-8 8 3.589 8 8-3.589 8-8 8m0-7a1 1 0 0 0 1-1V6a1 1 0 1 0-2 0v4a1 1 0 0 0 1 1m0 1.9a1.1 1.1 0 1 0 0 2.2 1.1 1.1 0 0 0 0-2.2\"\n});\n\nvar SvgCircleAlertMajorMonotone = function SvgCircleAlertMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleAlertMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"circle\", {\n fill: \"currentColor\",\n cx: 10,\n cy: 10,\n r: 9\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-13a1 1 0 0 0-1 1v4a1 1 0 1 0 2 0V6a1 1 0 0 0-1-1m0 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"\n});\n\nvar SvgCircleAlertMajorTwotone = function SvgCircleAlertMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgCircleAlertMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M14.242 12.829l-1.414 1.414L10 11.413l-2.828 2.83-1.414-1.414 2.828-2.83-2.828-2.827 1.414-1.414L10 8.586l2.828-2.828 1.414 1.414L11.414 10l2.828 2.829zM10 1.999A8 8 0 1 0 10 18a8 8 0 0 0 0-16z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleCancelMinor = function SvgCircleCancelMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleCancelMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 13.414L5.293 8.707l1.414-1.414L10 10.586l3.293-3.293 1.414 1.414L10 13.414zM10 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleChevronDownMinor = function SvgCircleChevronDownMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleChevronDownMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M11.293 5.293l1.414 1.414L9.414 10l3.293 3.293-1.414 1.414L6.586 10l4.707-4.707zM10 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleChevronLeftMinor = function SvgCircleChevronLeftMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleChevronLeftMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M8.707 14.707l-1.414-1.414L10.586 10 7.293 6.707l1.414-1.414L13.414 10l-4.707 4.707zM10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleChevronRightMinor = function SvgCircleChevronRightMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleChevronRightMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M14.707 11.293l-1.414 1.414L10 9.414l-3.293 3.293-1.414-1.414L10 6.586l4.707 4.707zM18 10a8 8 0 1 0-16 0 8 8 0 0 0 16 0z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleChevronUpMinor = function SvgCircleChevronUpMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleChevronUpMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 16a5.961 5.961 0 0 1-3.471-1.115l8.356-8.356A5.961 5.961 0 0 1 16 10c0 3.309-2.691 6-6 6m0-12c1.294 0 2.49.416 3.471 1.115l-8.356 8.356A5.961 5.961 0 0 1 4 10c0-3.309 2.691-6 6-6m0-2c-4.411 0-8 3.589-8 8s3.589 8 8 8 8-3.589 8-8-3.589-8-8-8\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCircleDisableMinor = function SvgCircleDisableMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCircleDisableMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"circle\", {\n fill: \"currentColor\",\n cx: 10,\n cy: 10,\n r: 9\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M2 10c0-1.846.635-3.543 1.688-4.897l11.209 11.209A7.954 7.954 0 0 1 10 18c-4.411 0-8-3.589-8-8m14.312 4.897L5.103 3.688A7.954 7.954 0 0 1 10 2c4.411 0 8 3.589 8 8a7.952 7.952 0 0 1-1.688 4.897M0 10c0 5.514 4.486 10 10 10s10-4.486 10-10S15.514 0 10 0 0 4.486 0 10\"\n});\n\nvar SvgCircleDisabledMajorTwotone = function SvgCircleDisabledMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgCircleDisabledMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"circle\", {\n cx: 10,\n cy: 10,\n r: 9,\n fill: \"currentColor\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0m0 18c-4.411 0-8-3.589-8-8s3.589-8 8-8 8 3.589 8 8-3.589 8-8 8m1-5v-3a1 1 0 0 0-1-1H9a1 1 0 1 0 0 2v3a1 1 0 0 0 1 1h1a1 1 0 1 0 0-2m-1-5.9a1.1 1.1 0 1 0 0-2.2 1.1 1.1 0 0 0 0 2.2\"\n});\n\nvar SvgCircleInformationMajorTwotone = function SvgCircleInformationMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgCircleInformationMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M15 11h-4v4H9v-4H5V9h4V5h2v4h4v2zm-5-9a8 8 0 1 0 0 16 8 8 0 0 0 0-16z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgCirclePlusMinor = function SvgCirclePlusMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCirclePlusMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 2c-4.411 0-8 3.589-8 8s3.589 8 8 8 8-3.589 8-8-3.589-8-8-8zm0 14c-3.309 0-6-2.691-6-6s2.691-6 6-6 6 2.691 6 6-2.691 6-6 6zm3-7h-2V7a1 1 0 1 0-2 0v2H7a1 1 0 1 0 0 2h2v2a1 1 0 1 0 2 0v-2h2a1 1 0 1 0 0-2z\"\n});\n\nvar SvgCirclePlusOutlineMinor = function SvgCirclePlusOutlineMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCirclePlusOutlineMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"circle\", {\n fill: \"currentColor\",\n cx: 10,\n cy: 10,\n r: 9\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m2.293-10.707L9 10.586 7.707 9.293a1 1 0 1 0-1.414 1.414l2 2a.997.997 0 0 0 1.414 0l4-4a1 1 0 1 0-1.414-1.414\"\n});\n\nvar SvgCircleTickMajorTwotone = function SvgCircleTickMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgCircleTickMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M13 11h2V9h-2v2zm-4 0h2V9H9v2zm-4 0h2V9H5v2zm5-9c-4.411 0-8 3.589-8 8 0 1.504.425 2.908 1.15 4.111l-1.069 2.495a1 1 0 0 0 1.314 1.313l2.494-1.069A7.939 7.939 0 0 0 10 18c4.411 0 8-3.589 8-8s-3.589-8-8-8z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgConversationMinor = function SvgConversationMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgConversationMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17.707 15.293a.999.999 0 0 1 .241 1.023l-1 3A.999.999 0 0 1 16 20H4a1 1 0 0 1-.949-.684l-1-3a.999.999 0 0 1 .242-1.023C2.427 15.158 5.635 12 10 12c4.364 0 7.572 3.158 7.707 3.293zM15.28 18l.562-1.687c-.92-.752-3.155-2.313-5.84-2.313-2.704 0-4.928 1.558-5.844 2.31L4.72 18h10.56zM10 2C8.346 2 7 3.346 7 5s1.346 3 3 3 3-1.346 3-3-1.346-3-3-3zm0 8c-2.757 0-5-2.243-5-5s2.243-5 5-5 5 2.243 5 5-2.243 5-5 5z\"\n});\n\nvar SvgCustomersMajorMonotone = function SvgCustomersMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgCustomersMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M16 6H4a1 1 0 1 0 0 2h1v9a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V8h1a1 1 0 1 0 0-2zM9 4a1 1 0 1 1 0-2h2a1 1 0 1 1 0 2H9zm2 12h2V8h-2v8zm-4 0h2V8H7v8z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgDeleteMinor = function SvgDeleteMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgDeleteMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M9 10h2V6H9v4zm0 4h2v-2H9v2zm-7-4c0 4.411 3.589 8 8 8a7.939 7.939 0 0 0 4.111-1.15l2.494 1.069a1 1 0 0 0 1.314-1.313l-1.069-2.495A7.939 7.939 0 0 0 18 10c0-4.411-3.589-8-8-8s-8 3.589-8 8z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgDisputeMinor = function SvgDisputeMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgDisputeMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M19.317 12.052L14 10.28V5a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h5.28l1.772 5.317a.998.998 0 0 0 1.843.13l1.85-3.701 3.703-1.851a1 1 0 0 0-.131-1.843zM2 16a1 1 0 1 0-2 0v1a1 1 0 0 0 1 1h1a1 1 0 1 0 0-2M16 2a1 1 0 1 0 2 0V1a1 1 0 0 0-1-1h-1a1 1 0 1 0 0 2M6 2h1a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m5 0h1a1 1 0 1 0 0-2h-1a1 1 0 1 0 0 2M2 0H1a1 1 0 0 0-1 1v1a1 1 0 1 0 2 0 1 1 0 1 0 0-2M1 8a1 1 0 0 0 1-1V6a1 1 0 1 0-2 0v1a1 1 0 0 0 1 1m0 5a1 1 0 0 0 1-1v-1a1 1 0 1 0-2 0v1a1 1 0 0 0 1 1m13.553 1.105a1.002 1.002 0 0 0-.447.447l-.921 1.841-1.604-4.812 4.813 1.604-1.841.92zM6 12.002V6h6v3.612l-1.683-.561a.998.998 0 1 0-1.265 1.265L9.612 12H6zM7 16H6a1 1 0 1 0 0 2h1a1 1 0 1 0 0-2M17 5a1 1 0 0 0-1 1v1a1 1 0 1 0 2 0V6a1 1 0 0 0-1-1\"\n});\n\nvar SvgDragDropMajorMonotone = function SvgDragDropMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgDragDropMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M8 12h8V4H8v8zm4 4H4V8h2v5a1 1 0 0 0 1 1h5v2zm5-14H7a1 1 0 0 0-1 1v3H3a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3h3a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgDuplicateMinor = function SvgDuplicateMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgDuplicateMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M2 16V5.414l7.293 7.293a.997.997 0 0 0 1.414 0L18 5.414V16H2zM16.586 4L10 10.586 3.414 4h13.172zM19 2H1a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"\n});\n\nvar SvgEmailMajorMonotone = function SvgEmailMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgEmailMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 13a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-3a1 1 0 1 1 2 0v2h12v-2a1 1 0 0 1 1-1zm0-11a1 1 0 0 1 1 1v3a1 1 0 1 1-2 0V4H4v2a1 1 0 1 1-2 0V3a1 1 0 0 1 1-1h14zm.555 7.168a1.001 1.001 0 0 1 0 1.664l-3 2a1 1 0 0 1-1.109-1.664L15.198 10l-1.752-1.168a1 1 0 1 1 1.109-1.664l3 2zM6.832 7.445a1 1 0 0 1-.277 1.387L4.803 10l1.752 1.168a1 1 0 1 1-1.11 1.664l-3-2a1.001 1.001 0 0 1 0-1.664l3-2a1 1 0 0 1 1.387.277zM9 14.001a1 1 0 0 1-.948-1.317l2-6a1 1 0 0 1 1.896.633l-2 6A.999.999 0 0 1 9 14z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgEmbedMinor = function SvgEmbedMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgEmbedMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M9 14.41l-3.71-3.7 1.42-1.42L9 11.59l5.29-5.3 1.42 1.42L9 14.41zM17 2H3c-.55 0-1 .45-1 1v14c0 .55.45 1 1 1h14c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1z\"\n});\n\nvar SvgEnableSelectionMinor = function SvgEnableSelectionMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgEnableSelectionMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M13.707 6.707a.997.997 0 0 1-1.414 0L11 5.414V13a1 1 0 1 1-2 0V5.414L7.707 6.707a.999.999 0 1 1-1.414-1.414l3-3a.999.999 0 0 1 1.414 0l3 3a.999.999 0 0 1 0 1.414zM17 18H3a1 1 0 1 1 0-2h14a1 1 0 1 1 0 2z\"\n});\n\nvar SvgExportMinor = function SvgExportMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgExportMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 2a1 1 0 0 1 1 1v4a1 1 0 1 1-2 0V5.414l-7.293 7.293a.997.997 0 0 1-1.414 0 .999.999 0 0 1 0-1.414L14.586 4H13a1 1 0 1 1 0-2h4zm-4 9a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5a1 1 0 1 1 0 2H4v8h8v-4a1 1 0 0 1 1-1z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgExternalMinor = function SvgExternalMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgExternalMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M13 12a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H6c-.575 0-1-.484-1-1V7a1 1 0 0 1 1-1h1a1 1 0 0 1 0 2v5h5a1 1 0 0 1 1-1zm-2-7h4v4a1 1 0 1 1-2 0v-.586l-2.293 2.293a.999.999 0 1 1-1.414-1.414L11.586 7H11a1 1 0 0 1 0-2z\"\n});\n\nvar SvgExternalSmallMinor = function SvgExternalSmallMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgExternalSmallMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M2 3h11v4h6l-2 4 2 4H8v-4H3\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M16.105 11.447L17.381 14H9v-2h4a1 1 0 0 0 1-1V8h3.38l-1.274 2.552a.993.993 0 0 0 0 .895zM2.69 4H12v6H4.027L2.692 4zm15.43 7l1.774-3.553A1 1 0 0 0 19 6h-5V3c0-.554-.447-1-1-1H2.248L1.976.782a1 1 0 1 0-1.953.434l4 18a1.006 1.006 0 0 0 1.193.76 1 1 0 0 0 .76-1.194L4.47 12H7v3a1 1 0 0 0 1 1h11c.346 0 .67-.18.85-.476a.993.993 0 0 0 .044-.972l-1.775-3.553z\"\n});\n\nvar SvgFlagMajorTwotone = function SvgFlagMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgFlagMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M19.664 8.252l-9-8a1 1 0 0 0-1.328 0L8 1.44V1a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v5.773L.336 8.252a1.001 1.001 0 0 0 1.328 1.496L2 9.449V19a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.449l.336.299a.997.997 0 0 0 1.411-.083 1.001 1.001 0 0 0-.083-1.413zM16 18h-2v-5a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v5H4V7.671l6-5.333 6 5.333V18zm-8 0v-4h4v4H8zM4 2h2v1.218L4 4.996V2z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgHomeMajorMonotone = function SvgHomeMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgHomeMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M6 10a2 2 0 1 1-4.001-.001A2 2 0 0 1 6 10zm6 0a2 2 0 1 1-4.001-.001A2 2 0 0 1 12 10zm6 0a2 2 0 1 1-4.001-.001A2 2 0 0 1 18 10z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgHorizontalDotsMinor = function SvgHorizontalDotsMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgHorizontalDotsMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M9.293 13.707l-3-3a.999.999 0 1 1 1.414-1.414L9 10.586V3a1 1 0 1 1 2 0v7.586l1.293-1.293a.999.999 0 1 1 1.414 1.414l-3 3a.999.999 0 0 1-1.414 0zM17 16a1 1 0 1 1 0 2H3a1 1 0 1 1 0-2h14z\"\n});\n\nvar SvgImportMinor = function SvgImportMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgImportMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 16a1 1 0 1 1 0 2c-4.411 0-8-3.589-8-8s3.589-8 8-8a1 1 0 1 1 0 2c-3.309 0-6 2.691-6 6s2.691 6 6 6zm7.707-6.707a.999.999 0 0 1 0 1.414l-3 3a.997.997 0 0 1-1.414 0 .999.999 0 0 1 0-1.414L14.586 11H10a1 1 0 1 1 0-2h4.586l-1.293-1.293a.999.999 0 1 1 1.414-1.414l3 3z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgLogOutMinor = function SvgLogOutMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgLogOutMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M15 9H5a1 1 0 1 0 0 2h10a1 1 0 1 0 0-2\",\n fillRule: \"evenodd\"\n});\n\nvar SvgMinusMinor = function SvgMinusMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgMinusMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M11.414 10l6.293-6.293a.999.999 0 1 0-1.414-1.414L10 8.586 3.707 2.293a.999.999 0 1 0-1.414 1.414L8.586 10l-6.293 6.293a.999.999 0 1 0 1.414 1.414L10 11.414l6.293 6.293a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414L11.414 10z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgMobileCancelMajorMonotone = function SvgMobileCancelMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgMobileCancelMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M19 11H1a1 1 0 1 1 0-2h18a1 1 0 1 1 0 2zm0-7H1a1 1 0 0 1 0-2h18a1 1 0 1 1 0 2zm0 14H1a1 1 0 0 1 0-2h18a1 1 0 1 1 0 2z\"\n});\n\nvar SvgMobileHamburgerMajorMonotone = function SvgMobileHamburgerMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgMobileHamburgerMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17.707 4.293l-4-4A.997.997 0 0 0 13 0H3a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a.997.997 0 0 0-.293-.707zM16 18H4V2h8.586L16 5.414V18zm-3-5H7a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2m-7-3a1 1 0 0 0 1 1h6a1 1 0 0 0 0-2H7a1 1 0 0 0-1 1m1-3h1a1 1 0 0 0 0-2H7a1 1 0 0 0 0 2\"\n});\n\nvar SvgNoteMajorMonotone = function SvgNoteMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgNoteMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M6 11h8V9H6v2zm0 4h8v-2H6v2zm0-8h4V5H6v2zm9.707-1.707l-3-3A.996.996 0 0 0 12 2H5a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a.997.997 0 0 0-.293-.707z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgNoteMinor = function SvgNoteMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgNoteMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M16 8c0-2.967-2.167-5.432-5-5.91V1a1 1 0 1 0-2 0v1.09C6.167 2.568 4 5.033 4 8c0 2.957 0 4.586-1.707 6.293A1 1 0 0 0 3 16h4.183A2.909 2.909 0 0 0 7 17c0 1.654 1.345 3 3 3s3-1.346 3-3c0-.353-.07-.687-.184-1H17a1 1 0 0 0 .707-1.707C16 12.586 16 10.957 16 8zM5.011 14C6 12.208 6 10.285 6 8c0-2.206 1.794-4 4-4s4 1.794 4 4c0 2.285 0 4.208.989 6H5.011zM11 17a1.001 1.001 0 0 1-2 0 1 1 0 0 1 2 0z\"\n});\n\nvar SvgNotificationMajorMonotone = function SvgNotificationMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgNotificationMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M19 6a3 3 0 1 1-6 0 3 3 0 1 1-6 0 3 3 0 1 1-6 0V5l2-4h14l2 4v1z\",\n fill: \"currentColor\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M16 8c-1.103 0-2-.897-2-2h4c0 1.103-.897 2-2 2zm0 6H4v-4a3.99 3.99 0 0 0 3-1.357A3.99 3.99 0 0 0 10 10a3.99 3.99 0 0 0 3-1.357A3.99 3.99 0 0 0 16 10v4zm-3.281 4H7.281c.357-.702.536-1.434.627-2h4.184c.091.566.27 1.298.627 2zM12 6c0 1.103-.897 2-2 2s-2-.897-2-2h4zM2 6h4c0 1.103-.897 2-2 2s-2-.897-2-2zm1.618-4h12.764l1 2H2.618l1-2zm16.277 2.553l-2-4A1.001 1.001 0 0 0 17 0H3c-.379 0-.725.214-.895.553l-2 4A1.002 1.002 0 0 0 0 5v1c0 1.474.811 2.75 2 3.444V15a1 1 0 0 0 1 1h2.871c-.157.747-.508 1.7-1.318 2.105a1.002 1.002 0 0 0-.527 1.125c.108.451.51.77.974.77h10c.464 0 .866-.319.974-.77a1.002 1.002 0 0 0-.527-1.125c-.801-.4-1.153-1.356-1.313-2.105H17a1 1 0 0 0 1-1V9.444c1.189-.694 2-1.97 2-3.444V5c0-.155-.036-.309-.105-.447z\"\n});\n\nvar SvgOnlineStoreMajorTwotone = function SvgOnlineStoreMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgOnlineStoreMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M2 18h16v-4h-3.382l-.723 1.447c-.17.339-.516.553-.895.553H7c-.379 0-.725-.214-.895-.553L5.382 14H2v4zM19 1a1 1 0 0 1 1 1v17a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h4a1 1 0 0 1 0 2H2v9h4c.379 0 .725.214.895.553L7.618 14h4.764l.723-1.447c.17-.339.516-.553.895-.553h4V3h-3a1 1 0 0 1 0-2h4zM6.293 6.707a.999.999 0 1 1 1.414-1.414L9 6.586V1a1 1 0 0 1 2 0v5.586l1.293-1.293a.999.999 0 1 1 1.414 1.414l-3 3a.997.997 0 0 1-1.414 0l-3-3z\"\n});\n\nvar SvgOrdersMajorMonotone = function SvgOrdersMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgOrdersMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M1 13h5l1 2h6l1-2h5v6H1z\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M2 18v-4h3.382l.723 1.447c.17.339.516.553.895.553h6c.379 0 .725-.214.895-.553L14.618 14H18v4H2zM19 1a1 1 0 0 1 1 1v17a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h4a1 1 0 0 1 0 2H2v9h4c.379 0 .725.214.895.553L7.618 14h4.764l.723-1.447c.17-.339.516-.553.895-.553h4V3h-3a1 1 0 0 1 0-2h4zM6.293 6.707a.999.999 0 1 1 1.414-1.414L9 6.586V1a1 1 0 0 1 2 0v5.586l1.293-1.293a.999.999 0 1 1 1.414 1.414l-3 3a.997.997 0 0 1-1.414 0l-3-3z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgOrdersMajorTwotone = function SvgOrdersMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgOrdersMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M17.815 10A2.996 2.996 0 0 0 15 8H6V6h12v4h-.185zM15 12h-4a1 1 0 0 0-.949.684l-1.74 5.222L2 17.117V6.618l2-1V9a1 1 0 0 0 1 1h10a1.001 1.001 0 0 1 0 2zM6 4h12V2H6v2zm13-4H5a1 1 0 0 0-1 1v2.382L.552 5.105A1 1 0 0 0 0 6v12a1 1 0 0 0 .876.992l8 1a.999.999 0 0 0 1.072-.676L11.72 14H15a2.996 2.996 0 0 0 2.815-2H19a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z\"\n});\n\nvar SvgPaymentsMajorMonotone = function SvgPaymentsMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgPaymentsMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 9h-6V3a1 1 0 1 0-2 0v6H3a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2\",\n fillRule: \"evenodd\"\n});\n\nvar SvgPlusMinor = function SvgPlusMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgPlusMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M14 11h2V9h-2v2zM7 7h6V4H7v3zm0 9h6v-2H7v2zm10-9h-2V3a1 1 0 0 0-1-1H6a1 1 0 0 0-1 1v4H3a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h2v1a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-1h2a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgPrintMinor = function SvgPrintMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgPrintMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M4 7l-3 3 9 9 3-3z\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M19 0h-9c-.265 0-.52.106-.707.293l-9 9a.999.999 0 0 0 0 1.414l9 9a.997.997 0 0 0 1.414 0l9-9A.997.997 0 0 0 20 10V1a1 1 0 0 0-1-1zm-9 17.586L2.414 10 4 8.414 11.586 16 10 17.586zm8-8l-5 5L5.414 7l5-5H18v7.586zM15 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"\n});\n\nvar SvgProductsMajorTwotone = function SvgProductsMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgProductsMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 2c4.411 0 8 3.589 8 8s-3.589 8-8 8-8-3.589-8-8 3.589-8 8-8zm0 3c-1.104 0-2 .897-2 2s.896 2 2 2 2-.897 2-2-.896-2-2-2zm0 10c1.631 0 3.064-.792 3.978-2-.914-1.208-2.347-2-3.978-2-1.631 0-3.064.792-3.978 2 .914 1.208 2.347 2 3.978 2z\"\n});\n\nvar SvgProfileMinor = function SvgProfileMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgProfileMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"circle\", {\n cx: 10,\n cy: 10,\n r: 9,\n fill: \"currentColor\"\n});\n\nvar _ref2 =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0m0 18c-4.411 0-8-3.589-8-8s3.589-8 8-8 8 3.589 8 8-3.589 8-8 8m0-4a1 1 0 1 0 0 2 1 1 0 1 0 0-2m0-10C8.346 4 7 5.346 7 7a1 1 0 1 0 2 0 1.001 1.001 0 1 1 1.591.808C9.58 8.548 9 9.616 9 10.737V11a1 1 0 1 0 2 0v-.263c0-.653.484-1.105.773-1.317A3.013 3.013 0 0 0 13 7c0-1.654-1.346-3-3-3\"\n});\n\nvar SvgQuestionMarkMajorTwotone = function SvgQuestionMarkMajorTwotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref, _ref2);\n};\n\nexport { SvgQuestionMarkMajorTwotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M16 17.132V2H4v15.132l1.445-.964a1 1 0 0 1 1.262.125L8 17.586l1.293-1.293a.997.997 0 0 1 1.414 0L12 17.586l1.293-1.293a.998.998 0 0 1 1.262-.125l1.445.964zM17 0a1 1 0 0 1 1 1v18a1 1 0 0 1-1.555.832l-2.318-1.545-1.42 1.42A.993.993 0 0 1 12 20a.993.993 0 0 1-.707-.293L10 18.414l-1.293 1.293a.999.999 0 0 1-1.414 0l-1.42-1.42-2.318 1.545A1 1 0 0 1 2 19V1a1 1 0 0 1 1-1h14zM7 6a1 1 0 1 1 0-2h6a1 1 0 1 1 0 2H7zm0 8a1 1 0 1 1 0-2h3a1 1 0 1 1 0 2H7zm0-4a1 1 0 1 1 0-2h6a1 1 0 1 1 0 2H7z\"\n});\n\nvar SvgReceiptMajorMonotone = function SvgReceiptMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgReceiptMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 11a1 1 0 0 1 1 1c0 1.654-1.346 3-3 3H5.414l1.293 1.293a.999.999 0 1 1-1.414 1.414l-3-3a.999.999 0 0 1 0-1.414l3-3a.999.999 0 1 1 1.414 1.414L5.414 13H15c.552 0 1-.449 1-1a1 1 0 0 1 1-1zM3 9a1 1 0 0 1-1-1c0-1.654 1.346-3 3-3h9.586l-1.293-1.293a.999.999 0 1 1 1.414-1.414l3 3a.999.999 0 0 1 0 1.414l-3 3a.997.997 0 0 1-1.414 0 .999.999 0 0 1 0-1.414L14.586 7H5c-.552 0-1 .449-1 1a1 1 0 0 1-1 1z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgRefreshMinor = function SvgRefreshMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgRefreshMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 2H3a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zm-4 13h2V8h-2v7zm-4 0h2V5H9v10zm-4 0h2v-4H5v4z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgReportMinor = function SvgReportMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgReportMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M9 12h2V8H9v4zm0 4h2v-2H9v2zm8.895.509l-7-14c-.339-.678-1.451-.678-1.79 0l-7 14A.999.999 0 0 0 3 17.956h14a1.001 1.001 0 0 0 .895-1.447z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgRiskMinor = function SvgRiskMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgRiskMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17 4h-3a1 1 0 1 0 0 2h2v10H4V4h3.586L9 5.414v5.172L7.707 9.293a1 1 0 0 0-1.414 1.414l3 3a.996.996 0 0 0 1.414 0l3-3a1 1 0 0 0-1.414-1.414L11 10.586V5a.997.997 0 0 0-.293-.707l-2-2A.994.994 0 0 0 8 2H3a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1z\"\n});\n\nvar SvgSaveMinor = function SvgSaveMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgSaveMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M8 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8m9.707 4.293l-4.82-4.82A5.968 5.968 0 0 0 14 8 6 6 0 0 0 2 8a6 6 0 0 0 6 6 5.968 5.968 0 0 0 3.473-1.113l4.82 4.82a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414\",\n fillRule: \"evenodd\"\n});\n\nvar SvgSearchMinor = function SvgSearchMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgSearchMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M13 8l-3-3-3 3h6zm-.1 4L10 14.9 7.1 12h5.8z\",\n fillRule: \"evenodd\"\n});\n\nvar SvgSelectMinor = function SvgSelectMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgSelectMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M8.315 13.859l-3.182-3.417a.506.506 0 0 1 0-.684l.643-.683a.437.437 0 0 1 .642 0l2.22 2.393 4.942-5.327a.437.437 0 0 1 .643 0l.643.684a.504.504 0 0 1 0 .683l-5.91 6.35a.437.437 0 0 1-.642 0\"\n});\n\nvar SvgTickSmallMinor = function SvgTickSmallMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgTickSmallMinor as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M15 17.586L13.914 16.5l.793-.793a.999.999 0 1 0-1.414-1.414l-.793.793L11.414 14 14 11.414 17.586 15 15 17.586zM3.437 14.852l1.711 1.711-2.567.856.856-2.567zM4.914 7.5l.793-.793a.999.999 0 1 0-1.414-1.414l-.793.793L2.414 5 5 2.414 8.586 6 6 8.586 4.914 7.5zm12.551-4.965a1.83 1.83 0 0 1 0 2.586L17 5.586 14.414 3l.465-.465a1.83 1.83 0 0 1 2.586 0zM4.415 13L13 4.414 15.586 7 7 15.586 4.414 13zm15.292 1.293L15.414 10l3.465-3.465a3.832 3.832 0 0 0 0-5.414 3.834 3.834 0 0 0-5.414 0L10 4.586 5.707.293a.999.999 0 0 0-1.414 0l-4 4a.999.999 0 0 0 0 1.414L4.586 10l-2.293 2.293a.996.996 0 0 0-.24.391l-2 6a.998.998 0 0 0 1.263 1.264l6-2a.996.996 0 0 0 .391-.24L10 15.413l4.293 4.293a.997.997 0 0 0 1.414 0l4-4a.999.999 0 0 0 0-1.414z\"\n});\n\nvar SvgToolsMajorMonotone = function SvgToolsMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgToolsMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M11.293 8.293L12.586 7H2v11a1 1 0 1 1-2 0V2a1 1 0 1 1 2 0v3h10.586l-1.293-1.293a.999.999 0 1 1 1.414-1.414l2.999 2.999a1 1 0 0 1 0 1.416l-2.999 2.999a.997.997 0 0 1-1.414 0 .999.999 0 0 1 0-1.414zM19 1a1 1 0 0 1 1 1v16a1 1 0 1 1-2 0v-3H7.414l1.293 1.293a.999.999 0 1 1-1.414 1.414l-2.999-2.999a1 1 0 0 1 0-1.416l2.999-2.999a.999.999 0 1 1 1.414 1.414L7.414 13H18V2a1 1 0 0 1 1-1z\"\n});\n\nvar SvgTransactionMajorMonotone = function SvgTransactionMajorMonotone(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgTransactionMajorMonotone as S };\n","import React from 'react';\n\nvar _ref =\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M17.928 9.628C17.836 9.399 15.611 4 9.999 4S2.162 9.399 2.07 9.628a1.017 1.017 0 0 0 0 .744C2.162 10.601 4.387 16 9.999 16s7.837-5.399 7.929-5.628a1.017 1.017 0 0 0 0-.744zM9.999 14a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm0-6A2 2 0 1 0 10 12.001 2 2 0 0 0 10 8z\"\n});\n\nvar SvgViewMinor = function SvgViewMinor(props) {\n return React.createElement(\"svg\", Object.assign({\n viewBox: \"0 0 20 20\"\n }, props), _ref);\n};\n\nexport { SvgViewMinor as S };\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","import hoistStatics from 'hoist-non-react-statics';\nexport default function compose() {\n for (var _len = arguments.length, wrappingFunctions = new Array(_len), _key = 0; _key < _len; _key++) {\n wrappingFunctions[_key] = arguments[_key];\n }\n\n return function wrapComponent(OriginalComponent) {\n var result = wrappingFunctions.reduceRight(function (component, wrappingFunction) {\n return wrappingFunction(component);\n }, OriginalComponent);\n return hoistStatics(result, OriginalComponent);\n };\n}","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction nodeContainsDescendant(rootNode, descendant) {\n if (rootNode === descendant) {\n return true;\n }\n var parent = descendant.parentNode;\n while (parent != null) {\n if (parent === rootNode) {\n return true;\n }\n parent = parent.parentNode;\n }\n return false;\n}\nexports.nodeContainsDescendant = nodeContainsDescendant;\n/* tslint:disable */\n// Polyfill for .matches()\n// https://developer.mozilla.org/en/docs/Web/API/Element/matches\nfunction matches(node, selector) {\n if (node.matches) {\n return node.matches(selector);\n }\n var matches = (node.ownerDocument || document).querySelectorAll(selector);\n var i = matches.length;\n while (--i >= 0 && matches.item(i) !== node) { }\n return i > -1;\n}\nexports.matches = matches;\n;\n// Polyfill for .closest()\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\nfunction closest(node, selector) {\n if (node.closest) {\n return node.closest(selector);\n }\n var matches = document.querySelectorAll(selector);\n var i;\n var el = node;\n do {\n el = el.parentElement;\n i = matches.length;\n while (--i >= 0 && matches.item(i) !== el) {\n continue;\n }\n ;\n } while ((i < 0) && (el));\n return el;\n}\nexports.closest = closest;\n/* tslint:enable */\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// tslint:disable-next-line:no-empty\nfunction noop() { }\nexports.noop = noop;\nfunction createUniqueIDFactory(prefix) {\n var index = 1;\n return function () { return \"\" + prefix + index++; };\n}\nexports.createUniqueIDFactory = createUniqueIDFactory;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar dom_1 = require(\"./dom\");\nexports.FOCUSABLE_SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element, onlyDescendants) {\n if (onlyDescendants === void 0) { onlyDescendants = true; }\n if (!onlyDescendants && dom_1.matches(element, exports.FOCUSABLE_SELECTOR)) {\n return element;\n }\n return element.querySelector(exports.FOCUSABLE_SELECTOR);\n}\nexports.findFirstFocusableNode = findFirstFocusableNode;\nfunction focusFirstFocusableNode(element, onlyDescendants) {\n if (onlyDescendants === void 0) { onlyDescendants = true; }\n var firstFocusable = findFirstFocusableNode(element, onlyDescendants);\n if (firstFocusable) {\n firstFocusable.focus();\n }\n}\nexports.focusFirstFocusableNode = focusFirstFocusableNode;\nfunction findLastFocusableNode(element, onlyDescendants) {\n if (onlyDescendants === void 0) { onlyDescendants = true; }\n if (!onlyDescendants && dom_1.matches(element, exports.FOCUSABLE_SELECTOR)) {\n return element;\n }\n var allFocusable = element.querySelectorAll(exports.FOCUSABLE_SELECTOR);\n return allFocusable[allFocusable.length - 1];\n}\nexports.findLastFocusableNode = findLastFocusableNode;\nfunction focusLastFocusableNode(element, onlyDescendants) {\n if (onlyDescendants === void 0) { onlyDescendants = true; }\n var lastFocusable = findLastFocusableNode(element, onlyDescendants);\n if (lastFocusable) {\n lastFocusable.focus();\n }\n}\nexports.focusLastFocusableNode = focusLastFocusableNode;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// for now we just use rAF but we should use some kind of fastDOM implementation\nfunction read(callback) {\n return requestAnimationFrame(callback);\n}\nexports.read = read;\nfunction write(callback) {\n return requestAnimationFrame(callback);\n}\nexports.write = write;\nfunction clear(taskID) {\n return cancelAnimationFrame(taskID);\n}\nexports.clear = clear;\n","\"use strict\";\n\nexports.__esModule = true;\nexports.default = hasClass;\n\nfunction hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);else return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}\n\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = addClass;\n\nvar _hasClass = _interopRequireDefault(require(\"./hasClass\"));\n\nfunction addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!(0, _hasClass.default)(element, className)) if (typeof element.className === 'string') element.className = element.className + ' ' + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + ' ' + className);\n}\n\nmodule.exports = exports[\"default\"];","'use strict';\n\nfunction replaceClassName(origClass, classToRemove) {\n return origClass.replace(new RegExp('(^|\\\\s)' + classToRemove + '(?:\\\\s|$)', 'g'), '$1').replace(/\\s+/g, ' ').replace(/^\\s*|\\s*$/g, '');\n}\n\nmodule.exports = function removeClass(element, className) {\n if (element.classList) element.classList.remove(className);else if (typeof element.className === 'string') element.className = replaceClassName(element.className, className);else element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));\n};","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nexports.__esModule = true;\nexports.default = exports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = void 0;\n\nvar PropTypes = _interopRequireWildcard(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nvar _PropTypes = require(\"./utils/PropTypes\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = 'unmounted';\nexports.UNMOUNTED = UNMOUNTED;\nvar EXITED = 'exited';\nexports.EXITED = EXITED;\nvar ENTERING = 'entering';\nexports.ENTERING = ENTERING;\nvar ENTERED = 'entered';\nexports.ENTERED = ENTERED;\nvar EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n *
\n Find out about all new & upcoming updates to our app here.\n
\nYou have used all 50 invoices. A usage fee has been charged to your account, but now you can send invoices for unlimited orders for the rest of this billing cycle.
\nYour invoice limit will reset on {usage.resetDate}
\n >\n ) : (\n <>\n You've used {usage.monthlyOrderCount}/50 free invoices on the Pay as you go plan for this billing cycle. Your limit will reset on {usage.resetDate}.\n >\n )}\n >\n )\n\n return (\n <>\n {loading || !usage.heroPlan ? null : (\n\n
\n No invoices found\n
\n\n Invoice Falcon is developed & maintained by 2 developers based out\n of Bangalore, India. 6 months ago, we gave up our full-time jobs\n to build simple, easy-to-use applications for Shopify users, like\n you, worldwide.\n
\n
\n If you enjoy using our application, we'd really appreciate it if\n you could take 1 minute of your time to write a review on the\n Shopify App Store. Your time and words will help us a lot in\n running our business. :)\n