{"version":3,"file":"w3m-modal-e943cdec.mjs","sources":["../node_modules/@reown/appkit-controllers/dist/esm/src/controllers/TooltipController.js","../node_modules/@reown/appkit-controllers/dist/esm/src/utils/ModalUtil.js","../node_modules/@reown/appkit-ui/dist/esm/src/components/wui-card/styles.js","../node_modules/@reown/appkit-ui/dist/esm/src/components/wui-card/index.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-alertbar/styles.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-alertbar/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-alertbar/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-alertbar/index.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-icon-link/styles.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-icon-link/index.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-select/styles.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-select/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-header/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-header/index.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-snackbar/styles.js","../node_modules/@reown/appkit-ui/dist/esm/src/composites/wui-snackbar/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-snackbar/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-snackbar/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-tooltip/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/partials/w3m-tooltip/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/modal/w3m-router/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/modal/w3m-router/index.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/modal/w3m-modal/styles.js","../node_modules/@reown/appkit-scaffold-ui/dist/esm/src/modal/w3m-modal/index.js"],"sourcesContent":["import { proxy, subscribe as sub } from 'valtio/vanilla';\nimport { subscribeKey as subKey } from 'valtio/vanilla/utils';\nimport { withErrorBoundary } from '../utils/withErrorBoundary.js';\n// -- State --------------------------------------------- //\nconst state = proxy({\n    message: '',\n    open: false,\n    triggerRect: {\n        width: 0,\n        height: 0,\n        top: 0,\n        left: 0\n    },\n    variant: 'shade'\n});\n// -- Controller ---------------------------------------- //\nconst controller = {\n    state,\n    subscribe(callback) {\n        return sub(state, () => callback(state));\n    },\n    subscribeKey(key, callback) {\n        return subKey(state, key, callback);\n    },\n    showTooltip({ message, triggerRect, variant }) {\n        state.open = true;\n        state.message = message;\n        state.triggerRect = triggerRect;\n        state.variant = variant;\n    },\n    hide() {\n        state.open = false;\n        state.message = '';\n        state.triggerRect = {\n            width: 0,\n            height: 0,\n            top: 0,\n            left: 0\n        };\n    }\n};\n// Export the controller wrapped with our error boundary\nexport const TooltipController = withErrorBoundary(controller);\n//# sourceMappingURL=TooltipController.js.map","import { ModalController } from '../controllers/ModalController.js';\nimport { RouterController } from '../controllers/RouterController.js';\nimport { SIWXUtil } from './SIWXUtil.js';\nexport const ModalUtil = {\n    isUnsupportedChainView() {\n        return (RouterController.state.view === 'UnsupportedChain' ||\n            (RouterController.state.view === 'SwitchNetwork' &&\n                RouterController.state.history.includes('UnsupportedChain')));\n    },\n    async safeClose() {\n        if (this.isUnsupportedChainView()) {\n            ModalController.shake();\n            return;\n        }\n        const isSIWXCloseDisabled = await SIWXUtil.isSIWXCloseDisabled();\n        if (isSIWXCloseDisabled) {\n            ModalController.shake();\n            return;\n        }\n        ModalController.close();\n    }\n};\n//# sourceMappingURL=ModalUtil.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    display: block;\n    border-radius: clamp(0px, var(--wui-border-radius-l), 44px);\n    box-shadow: 0 0 0 1px var(--wui-color-gray-glass-005);\n    background-color: var(--wui-color-modal-bg);\n    overflow: hidden;\n  }\n\n  :host([data-embedded='true']) {\n    box-shadow:\n      0 0 0 1px var(--wui-color-gray-glass-005),\n      0px 4px 12px 4px var(--w3m-card-embedded-shadow-color);\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { resetStyles } from '../../utils/ThemeUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiCard = class WuiCard extends LitElement {\n    render() {\n        return html `<slot></slot>`;\n    }\n};\nWuiCard.styles = [resetStyles, styles];\nWuiCard = __decorate([\n    customElement('wui-card')\n], WuiCard);\nexport { WuiCard };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: var(--wui-spacing-s);\n    border-radius: var(--wui-border-radius-s);\n    border: 1px solid var(--wui-color-dark-glass-100);\n    box-sizing: border-box;\n    background-color: var(--wui-color-bg-325);\n    box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.25);\n  }\n\n  wui-flex {\n    width: 100%;\n  }\n\n  wui-text {\n    word-break: break-word;\n    flex: 1;\n  }\n\n  .close {\n    cursor: pointer;\n  }\n\n  .icon-box {\n    height: 40px;\n    width: 40px;\n    border-radius: var(--wui-border-radius-3xs);\n    background-color: var(--local-icon-bg-value);\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { AlertController } from '@reown/appkit-controllers';\nimport '../../components/wui-icon/index.js';\nimport '../../components/wui-text/index.js';\nimport '../../layout/wui-flex/index.js';\nimport { resetStyles } from '../../utils/ThemeUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiAlertBar = class WuiAlertBar extends LitElement {\n    constructor() {\n        super(...arguments);\n        this.message = '';\n        this.backgroundColor = 'accent-100';\n        this.iconColor = 'accent-100';\n        this.icon = 'info';\n    }\n    render() {\n        this.style.cssText = `\n      --local-icon-bg-value: var(--wui-color-${this.backgroundColor});\n   `;\n        return html `\n      <wui-flex flexDirection=\"row\" justifyContent=\"space-between\" alignItems=\"center\">\n        <wui-flex columnGap=\"xs\" flexDirection=\"row\" alignItems=\"center\">\n          <wui-flex\n            flexDirection=\"row\"\n            alignItems=\"center\"\n            justifyContent=\"center\"\n            class=\"icon-box\"\n          >\n            <wui-icon color=${this.iconColor} size=\"md\" name=${this.icon}></wui-icon>\n          </wui-flex>\n          <wui-text variant=\"small-500\" color=\"bg-350\" data-testid=\"wui-alertbar-text\"\n            >${this.message}</wui-text\n          >\n        </wui-flex>\n        <wui-icon\n          class=\"close\"\n          color=\"bg-350\"\n          size=\"sm\"\n          name=\"close\"\n          @click=${this.onClose}\n        ></wui-icon>\n      </wui-flex>\n    `;\n    }\n    onClose() {\n        AlertController.close();\n    }\n};\nWuiAlertBar.styles = [resetStyles, styles];\n__decorate([\n    property()\n], WuiAlertBar.prototype, \"message\", void 0);\n__decorate([\n    property()\n], WuiAlertBar.prototype, \"backgroundColor\", void 0);\n__decorate([\n    property()\n], WuiAlertBar.prototype, \"iconColor\", void 0);\n__decorate([\n    property()\n], WuiAlertBar.prototype, \"icon\", void 0);\nWuiAlertBar = __decorate([\n    customElement('wui-alertbar')\n], WuiAlertBar);\nexport { WuiAlertBar };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    display: block;\n    position: absolute;\n    top: var(--wui-spacing-s);\n    left: var(--wui-spacing-l);\n    right: var(--wui-spacing-l);\n    opacity: 0;\n    pointer-events: none;\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { state } from 'lit/decorators.js';\nimport { AlertController } from '@reown/appkit-controllers';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-alertbar';\nimport styles from './styles.js';\nexport const presets = {\n    info: {\n        backgroundColor: 'fg-350',\n        iconColor: 'fg-325',\n        icon: 'info'\n    },\n    success: {\n        backgroundColor: 'success-glass-reown-020',\n        iconColor: 'success-125',\n        icon: 'checkmark'\n    },\n    warning: {\n        backgroundColor: 'warning-glass-reown-020',\n        iconColor: 'warning-100',\n        icon: 'warningCircle'\n    },\n    error: {\n        backgroundColor: 'error-glass-reown-020',\n        iconColor: 'error-125',\n        icon: 'exclamationTriangle'\n    }\n};\nlet W3mAlertBar = class W3mAlertBar extends LitElement {\n    constructor() {\n        super();\n        this.unsubscribe = [];\n        this.open = AlertController.state.open;\n        this.onOpen(true);\n        this.unsubscribe.push(AlertController.subscribeKey('open', val => {\n            this.open = val;\n            this.onOpen(false);\n        }));\n    }\n    disconnectedCallback() {\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n    }\n    render() {\n        const { message, variant } = AlertController.state;\n        const preset = presets[variant];\n        return html `\n      <wui-alertbar\n        message=${message}\n        backgroundColor=${preset?.backgroundColor}\n        iconColor=${preset?.iconColor}\n        icon=${preset?.icon}\n      ></wui-alertbar>\n    `;\n    }\n    onOpen(isMounted) {\n        if (this.open) {\n            this.animate([\n                { opacity: 0, transform: 'scale(0.85)' },\n                { opacity: 1, transform: 'scale(1)' }\n            ], {\n                duration: 150,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n            this.style.cssText = `pointer-events: auto`;\n        }\n        else if (!isMounted) {\n            this.animate([\n                { opacity: 1, transform: 'scale(1)' },\n                { opacity: 0, transform: 'scale(0.85)' }\n            ], {\n                duration: 150,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n            this.style.cssText = `pointer-events: none`;\n        }\n    }\n};\nW3mAlertBar.styles = styles;\n__decorate([\n    state()\n], W3mAlertBar.prototype, \"open\", void 0);\nW3mAlertBar = __decorate([\n    customElement('w3m-alertbar')\n], W3mAlertBar);\nexport { W3mAlertBar };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  button {\n    border-radius: var(--local-border-radius);\n    color: var(--wui-color-fg-100);\n    padding: var(--local-padding);\n  }\n\n  @media (max-width: 700px) {\n    button {\n      padding: var(--wui-spacing-s);\n    }\n  }\n\n  button > wui-icon {\n    pointer-events: none;\n  }\n\n  button:disabled > wui-icon {\n    color: var(--wui-color-bg-300) !important;\n  }\n\n  button:disabled {\n    background-color: transparent;\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport '../../components/wui-icon/index.js';\nimport { colorStyles, elementStyles, resetStyles } from '../../utils/ThemeUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiIconLink = class WuiIconLink extends LitElement {\n    constructor() {\n        super(...arguments);\n        this.size = 'md';\n        this.disabled = false;\n        this.icon = 'copy';\n        this.iconColor = 'inherit';\n    }\n    render() {\n        const borderRadius = this.size === 'lg' ? '--wui-border-radius-xs' : '--wui-border-radius-xxs';\n        const padding = this.size === 'lg' ? '--wui-spacing-1xs' : '--wui-spacing-2xs';\n        this.style.cssText = `\n    --local-border-radius: var(${borderRadius});\n    --local-padding: var(${padding});\n`;\n        return html `\n      <button ?disabled=${this.disabled}>\n        <wui-icon color=${this.iconColor} size=${this.size} name=${this.icon}></wui-icon>\n      </button>\n    `;\n    }\n};\nWuiIconLink.styles = [resetStyles, elementStyles, colorStyles, styles];\n__decorate([\n    property()\n], WuiIconLink.prototype, \"size\", void 0);\n__decorate([\n    property({ type: Boolean })\n], WuiIconLink.prototype, \"disabled\", void 0);\n__decorate([\n    property()\n], WuiIconLink.prototype, \"icon\", void 0);\n__decorate([\n    property()\n], WuiIconLink.prototype, \"iconColor\", void 0);\nWuiIconLink = __decorate([\n    customElement('wui-icon-link')\n], WuiIconLink);\nexport { WuiIconLink };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  button {\n    display: block;\n    display: flex;\n    align-items: center;\n    padding: var(--wui-spacing-xxs);\n    gap: var(--wui-spacing-xxs);\n    transition: all var(--wui-ease-out-power-1) var(--wui-duration-md);\n    border-radius: var(--wui-border-radius-xxs);\n  }\n\n  wui-image {\n    border-radius: 100%;\n    width: var(--wui-spacing-xl);\n    height: var(--wui-spacing-xl);\n  }\n\n  wui-icon-box {\n    width: var(--wui-spacing-xl);\n    height: var(--wui-spacing-xl);\n  }\n\n  button:hover {\n    background-color: var(--wui-color-gray-glass-002);\n  }\n\n  button:active {\n    background-color: var(--wui-color-gray-glass-005);\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport '../../components/wui-icon/index.js';\nimport '../../components/wui-image/index.js';\nimport '../../composites/wui-icon-box/index.js';\nimport { colorStyles, elementStyles, resetStyles } from '../../utils/ThemeUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiSelect = class WuiSelect extends LitElement {\n    constructor() {\n        super(...arguments);\n        this.imageSrc = '';\n    }\n    render() {\n        return html `<button>\n      ${this.imageTemplate()}\n      <wui-icon size=\"xs\" color=\"fg-200\" name=\"chevronBottom\"></wui-icon>\n    </button>`;\n    }\n    imageTemplate() {\n        if (this.imageSrc) {\n            return html `<wui-image src=${this.imageSrc} alt=\"select visual\"></wui-image>`;\n        }\n        return html `<wui-icon-box\n      size=\"xxs\"\n      iconColor=\"fg-200\"\n      backgroundColor=\"fg-100\"\n      background=\"opaque\"\n      icon=\"networkPlaceholder\"\n    ></wui-icon-box>`;\n    }\n};\nWuiSelect.styles = [resetStyles, elementStyles, colorStyles, styles];\n__decorate([\n    property()\n], WuiSelect.prototype, \"imageSrc\", void 0);\nWuiSelect = __decorate([\n    customElement('wui-select')\n], WuiSelect);\nexport { WuiSelect };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    height: 64px;\n  }\n\n  wui-text {\n    text-transform: capitalize;\n  }\n\n  wui-flex.w3m-header-title {\n    transform: translateY(0);\n    opacity: 1;\n  }\n\n  wui-flex.w3m-header-title[view-direction='prev'] {\n    animation:\n      slide-down-out 120ms forwards var(--wui-ease-out-power-2),\n      slide-down-in 120ms forwards var(--wui-ease-out-power-2);\n    animation-delay: 0ms, 200ms;\n  }\n\n  wui-flex.w3m-header-title[view-direction='next'] {\n    animation:\n      slide-up-out 120ms forwards var(--wui-ease-out-power-2),\n      slide-up-in 120ms forwards var(--wui-ease-out-power-2);\n    animation-delay: 0ms, 200ms;\n  }\n\n  wui-icon-link[data-hidden='true'] {\n    opacity: 0 !important;\n    pointer-events: none;\n  }\n\n  @keyframes slide-up-out {\n    from {\n      transform: translateY(0px);\n      opacity: 1;\n    }\n    to {\n      transform: translateY(3px);\n      opacity: 0;\n    }\n  }\n\n  @keyframes slide-up-in {\n    from {\n      transform: translateY(-3px);\n      opacity: 0;\n    }\n    to {\n      transform: translateY(0);\n      opacity: 1;\n    }\n  }\n\n  @keyframes slide-down-out {\n    from {\n      transform: translateY(0px);\n      opacity: 1;\n    }\n    to {\n      transform: translateY(-3px);\n      opacity: 0;\n    }\n  }\n\n  @keyframes slide-down-in {\n    from {\n      transform: translateY(3px);\n      opacity: 0;\n    }\n    to {\n      transform: translateY(0);\n      opacity: 1;\n    }\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { AccountController, AssetController, AssetUtil, ChainController, ConnectorController, EventsController, ModalUtil, OptionsController, RouterController } from '@reown/appkit-controllers';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon-link';\nimport '@reown/appkit-ui/wui-select';\nimport '@reown/appkit-ui/wui-tag';\nimport '@reown/appkit-ui/wui-text';\nimport { ConstantsUtil } from '../../utils/ConstantsUtil.js';\nimport styles from './styles.js';\nconst BETA_SCREENS = ['SmartSessionList'];\nfunction headings() {\n    const connectorName = RouterController.state.data?.connector?.name;\n    const walletName = RouterController.state.data?.wallet?.name;\n    const networkName = RouterController.state.data?.network?.name;\n    const name = walletName ?? connectorName;\n    const connectors = ConnectorController.getConnectors();\n    const isEmail = connectors.length === 1 && connectors[0]?.id === 'w3m-email';\n    return {\n        Connect: `Connect ${isEmail ? 'Email' : ''} Wallet`,\n        Create: 'Create Wallet',\n        ChooseAccountName: undefined,\n        Account: undefined,\n        AccountSettings: undefined,\n        AllWallets: 'All Wallets',\n        ApproveTransaction: 'Approve Transaction',\n        BuyInProgress: 'Buy',\n        ConnectingExternal: name ?? 'Connect Wallet',\n        ConnectingWalletConnect: name ?? 'WalletConnect',\n        ConnectingWalletConnectBasic: 'WalletConnect',\n        ConnectingSiwe: 'Sign In',\n        Convert: 'Convert',\n        ConvertSelectToken: 'Select token',\n        ConvertPreview: 'Preview convert',\n        Downloads: name ? `Get ${name}` : 'Downloads',\n        EmailLogin: 'Email Login',\n        EmailVerifyOtp: 'Confirm Email',\n        EmailVerifyDevice: 'Register Device',\n        GetWallet: 'Get a wallet',\n        Networks: 'Choose Network',\n        OnRampProviders: 'Choose Provider',\n        OnRampActivity: 'Activity',\n        OnRampTokenSelect: 'Select Token',\n        OnRampFiatSelect: 'Select Currency',\n        Pay: 'How you pay',\n        Profile: undefined,\n        SwitchNetwork: networkName ?? 'Switch Network',\n        SwitchAddress: 'Switch Address',\n        Transactions: 'Activity',\n        UnsupportedChain: 'Switch Network',\n        UpgradeEmailWallet: 'Upgrade your Wallet',\n        UpdateEmailWallet: 'Edit Email',\n        UpdateEmailPrimaryOtp: 'Confirm Current Email',\n        UpdateEmailSecondaryOtp: 'Confirm New Email',\n        WhatIsABuy: 'What is Buy?',\n        RegisterAccountName: 'Choose name',\n        RegisterAccountNameSuccess: '',\n        WalletReceive: 'Receive',\n        WalletCompatibleNetworks: 'Compatible Networks',\n        Swap: 'Swap',\n        SwapSelectToken: 'Select token',\n        SwapPreview: 'Preview swap',\n        WalletSend: 'Send',\n        WalletSendPreview: 'Review send',\n        WalletSendSelectToken: 'Select Token',\n        WhatIsANetwork: 'What is a network?',\n        WhatIsAWallet: 'What is a wallet?',\n        ConnectWallets: 'Connect wallet',\n        ConnectSocials: 'All socials',\n        ConnectingSocial: AccountController.state.socialProvider\n            ? AccountController.state.socialProvider\n            : 'Connect Social',\n        ConnectingMultiChain: 'Select chain',\n        ConnectingFarcaster: 'Farcaster',\n        SwitchActiveChain: 'Switch chain',\n        SmartSessionCreated: undefined,\n        SmartSessionList: 'Smart Sessions',\n        SIWXSignMessage: 'Sign In',\n        PayLoading: 'Payment in progress'\n    };\n}\nlet W3mHeader = class W3mHeader extends LitElement {\n    constructor() {\n        super();\n        this.unsubscribe = [];\n        this.heading = headings()[RouterController.state.view];\n        this.network = ChainController.state.activeCaipNetwork;\n        this.networkImage = AssetUtil.getNetworkImage(this.network);\n        this.showBack = false;\n        this.prevHistoryLength = 1;\n        this.view = RouterController.state.view;\n        this.viewDirection = '';\n        this.headerText = headings()[RouterController.state.view];\n        this.unsubscribe.push(AssetController.subscribeNetworkImages(() => {\n            this.networkImage = AssetUtil.getNetworkImage(this.network);\n        }), RouterController.subscribeKey('view', val => {\n            setTimeout(() => {\n                this.view = val;\n                this.headerText = headings()[val];\n            }, ConstantsUtil.ANIMATION_DURATIONS.HeaderText);\n            this.onViewChange();\n            this.onHistoryChange();\n        }), ChainController.subscribeKey('activeCaipNetwork', val => {\n            this.network = val;\n            this.networkImage = AssetUtil.getNetworkImage(this.network);\n        }));\n    }\n    disconnectCallback() {\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n    }\n    render() {\n        return html `\n      <wui-flex .padding=${this.getPadding()} justifyContent=\"space-between\" alignItems=\"center\">\n        ${this.leftHeaderTemplate()} ${this.titleTemplate()} ${this.rightHeaderTemplate()}\n      </wui-flex>\n    `;\n    }\n    onWalletHelp() {\n        EventsController.sendEvent({ type: 'track', event: 'CLICK_WALLET_HELP' });\n        RouterController.push('WhatIsAWallet');\n    }\n    async onClose() {\n        await ModalUtil.safeClose();\n    }\n    rightHeaderTemplate() {\n        const isSmartSessionsEnabled = OptionsController?.state?.features?.smartSessions;\n        if (RouterController.state.view !== 'Account' || !isSmartSessionsEnabled) {\n            return this.closeButtonTemplate();\n        }\n        return html `<wui-flex>\n      <wui-icon-link\n        icon=\"clock\"\n        @click=${() => RouterController.push('SmartSessionList')}\n        data-testid=\"w3m-header-smart-sessions\"\n      ></wui-icon-link>\n      ${this.closeButtonTemplate()}\n    </wui-flex> `;\n    }\n    closeButtonTemplate() {\n        return html `\n      <wui-icon-link\n        icon=\"close\"\n        @click=${this.onClose.bind(this)}\n        data-testid=\"w3m-header-close\"\n      ></wui-icon-link>\n    `;\n    }\n    titleTemplate() {\n        const isBeta = BETA_SCREENS.includes(this.view);\n        return html `\n      <wui-flex\n        view-direction=\"${this.viewDirection}\"\n        class=\"w3m-header-title\"\n        alignItems=\"center\"\n        gap=\"xs\"\n      >\n        <wui-text variant=\"paragraph-700\" color=\"fg-100\" data-testid=\"w3m-header-text\"\n          >${this.headerText}</wui-text\n        >\n        ${isBeta ? html `<wui-tag variant=\"main\">Beta</wui-tag>` : null}\n      </wui-flex>\n    `;\n    }\n    leftHeaderTemplate() {\n        const { view } = RouterController.state;\n        const isConnectHelp = view === 'Connect';\n        const isEmbeddedEnable = OptionsController.state.enableEmbedded;\n        const isApproveTransaction = view === 'ApproveTransaction';\n        const isConnectingSIWEView = view === 'ConnectingSiwe';\n        const isAccountView = view === 'Account';\n        const enableNetworkSwitch = OptionsController.state.enableNetworkSwitch;\n        const shouldHideBack = isApproveTransaction || isConnectingSIWEView || (isConnectHelp && isEmbeddedEnable);\n        if (isAccountView && enableNetworkSwitch) {\n            return html `<wui-select\n        id=\"dynamic\"\n        data-testid=\"w3m-account-select-network\"\n        active-network=${ifDefined(this.network?.name)}\n        @click=${this.onNetworks.bind(this)}\n        imageSrc=${ifDefined(this.networkImage)}\n      ></wui-select>`;\n        }\n        if (this.showBack && !shouldHideBack) {\n            return html `<wui-icon-link\n        data-testid=\"header-back\"\n        id=\"dynamic\"\n        icon=\"chevronLeft\"\n        @click=${this.onGoBack.bind(this)}\n      ></wui-icon-link>`;\n        }\n        return html `<wui-icon-link\n      data-hidden=${!isConnectHelp}\n      id=\"dynamic\"\n      icon=\"helpCircle\"\n      @click=${this.onWalletHelp.bind(this)}\n    ></wui-icon-link>`;\n    }\n    onNetworks() {\n        if (this.isAllowedNetworkSwitch()) {\n            EventsController.sendEvent({ type: 'track', event: 'CLICK_NETWORKS' });\n            RouterController.push('Networks');\n        }\n    }\n    isAllowedNetworkSwitch() {\n        const requestedCaipNetworks = ChainController.getAllRequestedCaipNetworks();\n        const isMultiNetwork = requestedCaipNetworks ? requestedCaipNetworks.length > 1 : false;\n        const isValidNetwork = requestedCaipNetworks?.find(({ id }) => id === this.network?.id);\n        return isMultiNetwork || !isValidNetwork;\n    }\n    getPadding() {\n        if (this.heading) {\n            return ['l', '2l', 'l', '2l'];\n        }\n        return ['0', '2l', '0', '2l'];\n    }\n    onViewChange() {\n        const { history } = RouterController.state;\n        let direction = ConstantsUtil.VIEW_DIRECTION.Next;\n        if (history.length < this.prevHistoryLength) {\n            direction = ConstantsUtil.VIEW_DIRECTION.Prev;\n        }\n        this.prevHistoryLength = history.length;\n        this.viewDirection = direction;\n    }\n    async onHistoryChange() {\n        const { history } = RouterController.state;\n        const buttonEl = this.shadowRoot?.querySelector('#dynamic');\n        if (history.length > 1 && !this.showBack && buttonEl) {\n            await buttonEl.animate([{ opacity: 1 }, { opacity: 0 }], {\n                duration: 200,\n                fill: 'forwards',\n                easing: 'ease'\n            }).finished;\n            this.showBack = true;\n            buttonEl.animate([{ opacity: 0 }, { opacity: 1 }], {\n                duration: 200,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n        }\n        else if (history.length <= 1 && this.showBack && buttonEl) {\n            await buttonEl.animate([{ opacity: 1 }, { opacity: 0 }], {\n                duration: 200,\n                fill: 'forwards',\n                easing: 'ease'\n            }).finished;\n            this.showBack = false;\n            buttonEl.animate([{ opacity: 0 }, { opacity: 1 }], {\n                duration: 200,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n        }\n    }\n    onGoBack() {\n        RouterController.goBack();\n    }\n};\nW3mHeader.styles = styles;\n__decorate([\n    state()\n], W3mHeader.prototype, \"heading\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"network\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"networkImage\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"showBack\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"prevHistoryLength\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"view\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"viewDirection\", void 0);\n__decorate([\n    state()\n], W3mHeader.prototype, \"headerText\", void 0);\nW3mHeader = __decorate([\n    customElement('w3m-header')\n], W3mHeader);\nexport { W3mHeader };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    display: flex;\n    column-gap: var(--wui-spacing-s);\n    align-items: center;\n    padding: var(--wui-spacing-xs) var(--wui-spacing-m) var(--wui-spacing-xs) var(--wui-spacing-xs);\n    border-radius: var(--wui-border-radius-s);\n    border: 1px solid var(--wui-color-gray-glass-005);\n    box-sizing: border-box;\n    background-color: var(--wui-color-bg-175);\n    box-shadow:\n      0px 14px 64px -4px rgba(0, 0, 0, 0.15),\n      0px 8px 22px -6px rgba(0, 0, 0, 0.15);\n\n    max-width: 300px;\n  }\n\n  :host wui-loading-spinner {\n    margin-left: var(--wui-spacing-3xs);\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport '../../components/wui-icon/index.js';\nimport '../../components/wui-loading-spinner/index.js';\nimport '../../components/wui-text/index.js';\nimport { resetStyles } from '../../utils/ThemeUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport '../wui-icon-box/index.js';\nimport styles from './styles.js';\nlet WuiSnackbar = class WuiSnackbar extends LitElement {\n    constructor() {\n        super(...arguments);\n        this.backgroundColor = 'accent-100';\n        this.iconColor = 'accent-100';\n        this.icon = 'checkmark';\n        this.message = '';\n        this.loading = false;\n        this.iconType = 'default';\n    }\n    render() {\n        return html `\n      ${this.templateIcon()}\n      <wui-text variant=\"paragraph-500\" color=\"fg-100\" data-testid=\"wui-snackbar-message\"\n        >${this.message}</wui-text\n      >\n    `;\n    }\n    templateIcon() {\n        if (this.loading) {\n            return html `<wui-loading-spinner size=\"md\" color=\"accent-100\"></wui-loading-spinner>`;\n        }\n        if (this.iconType === 'default') {\n            return html `<wui-icon size=\"xl\" color=${this.iconColor} name=${this.icon}></wui-icon>`;\n        }\n        return html `<wui-icon-box\n      size=\"sm\"\n      iconSize=\"xs\"\n      iconColor=${this.iconColor}\n      backgroundColor=${this.backgroundColor}\n      icon=${this.icon}\n      background=\"opaque\"\n    ></wui-icon-box>`;\n    }\n};\nWuiSnackbar.styles = [resetStyles, styles];\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"backgroundColor\", void 0);\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"iconColor\", void 0);\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"icon\", void 0);\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"message\", void 0);\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"loading\", void 0);\n__decorate([\n    property()\n], WuiSnackbar.prototype, \"iconType\", void 0);\nWuiSnackbar = __decorate([\n    customElement('wui-snackbar')\n], WuiSnackbar);\nexport { WuiSnackbar };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    display: block;\n    position: absolute;\n    opacity: 0;\n    pointer-events: none;\n    top: 11px;\n    left: 50%;\n    width: max-content;\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { state } from 'lit/decorators.js';\nimport { SnackController } from '@reown/appkit-controllers';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-snackbar';\nimport styles from './styles.js';\nconst presets = {\n    loading: undefined,\n    success: {\n        backgroundColor: 'success-100',\n        iconColor: 'success-100',\n        icon: 'checkmark'\n    },\n    error: {\n        backgroundColor: 'error-100',\n        iconColor: 'error-100',\n        icon: 'close'\n    }\n};\nlet W3mSnackBar = class W3mSnackBar extends LitElement {\n    constructor() {\n        super();\n        this.unsubscribe = [];\n        this.timeout = undefined;\n        this.open = SnackController.state.open;\n        this.unsubscribe.push(SnackController.subscribeKey('open', val => {\n            this.open = val;\n            this.onOpen();\n        }));\n    }\n    disconnectedCallback() {\n        clearTimeout(this.timeout);\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n    }\n    render() {\n        const { message, variant, svg } = SnackController.state;\n        const preset = presets[variant];\n        const { icon, iconColor } = svg ?? preset ?? {};\n        return html `\n      <wui-snackbar\n        message=${message}\n        backgroundColor=${preset?.backgroundColor}\n        iconColor=${iconColor}\n        icon=${icon}\n        .loading=${variant === 'loading'}\n      ></wui-snackbar>\n    `;\n    }\n    onOpen() {\n        clearTimeout(this.timeout);\n        if (this.open) {\n            this.animate([\n                { opacity: 0, transform: 'translateX(-50%) scale(0.85)' },\n                { opacity: 1, transform: 'translateX(-50%) scale(1)' }\n            ], {\n                duration: 150,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n            if (this.timeout) {\n                clearTimeout(this.timeout);\n            }\n            if (SnackController.state.autoClose) {\n                this.timeout = setTimeout(() => SnackController.hide(), 2500);\n            }\n        }\n        else {\n            this.animate([\n                { opacity: 1, transform: 'translateX(-50%) scale(1)' },\n                { opacity: 0, transform: 'translateX(-50%) scale(0.85)' }\n            ], {\n                duration: 150,\n                fill: 'forwards',\n                easing: 'ease'\n            });\n        }\n    }\n};\nW3mSnackBar.styles = styles;\n__decorate([\n    state()\n], W3mSnackBar.prototype, \"open\", void 0);\nW3mSnackBar = __decorate([\n    customElement('w3m-snackbar')\n], W3mSnackBar);\nexport { W3mSnackBar };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    pointer-events: none;\n  }\n\n  :host > wui-flex {\n    display: var(--w3m-tooltip-display);\n    opacity: var(--w3m-tooltip-opacity);\n    padding: 9px var(--wui-spacing-s) 10px var(--wui-spacing-s);\n    border-radius: var(--wui-border-radius-xxs);\n    color: var(--wui-color-bg-100);\n    position: fixed;\n    top: var(--w3m-tooltip-top);\n    left: var(--w3m-tooltip-left);\n    transform: translate(calc(-50% + var(--w3m-tooltip-parent-width)), calc(-100% - 8px));\n    max-width: calc(var(--w3m-modal-width) - var(--wui-spacing-xl));\n    transition: opacity 0.2s var(--wui-ease-out-power-2);\n    will-change: opacity;\n  }\n\n  :host([data-variant='shade']) > wui-flex {\n    background-color: var(--wui-color-bg-150);\n    border: 1px solid var(--wui-color-gray-glass-005);\n  }\n\n  :host([data-variant='shade']) > wui-flex > wui-text {\n    color: var(--wui-color-fg-150);\n  }\n\n  :host([data-variant='fill']) > wui-flex {\n    background-color: var(--wui-color-fg-100);\n    border: none;\n  }\n\n  wui-icon {\n    position: absolute;\n    width: 12px !important;\n    height: 4px !important;\n    color: var(--wui-color-bg-150);\n  }\n\n  wui-icon[data-placement='top'] {\n    bottom: 0px;\n    left: 50%;\n    transform: translate(-50%, 95%);\n  }\n\n  wui-icon[data-placement='bottom'] {\n    top: 0;\n    left: 50%;\n    transform: translate(-50%, -95%) rotate(180deg);\n  }\n\n  wui-icon[data-placement='right'] {\n    top: 50%;\n    left: 0;\n    transform: translate(-65%, -50%) rotate(90deg);\n  }\n\n  wui-icon[data-placement='left'] {\n    top: 50%;\n    right: 0%;\n    transform: translate(65%, -50%) rotate(270deg);\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { state } from 'lit/decorators.js';\nimport { TooltipController } from '@reown/appkit-controllers';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport styles from './styles.js';\nlet W3mTooltip = class W3mTooltip extends LitElement {\n    constructor() {\n        super();\n        this.unsubscribe = [];\n        this.open = TooltipController.state.open;\n        this.message = TooltipController.state.message;\n        this.triggerRect = TooltipController.state.triggerRect;\n        this.variant = TooltipController.state.variant;\n        this.unsubscribe.push(...[\n            TooltipController.subscribe(newState => {\n                this.open = newState.open;\n                this.message = newState.message;\n                this.triggerRect = newState.triggerRect;\n                this.variant = newState.variant;\n            })\n        ]);\n    }\n    disconnectedCallback() {\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n    }\n    render() {\n        this.dataset['variant'] = this.variant;\n        const topValue = this.triggerRect.top;\n        const leftValue = this.triggerRect.left;\n        this.style.cssText = `\n    --w3m-tooltip-top: ${topValue}px;\n    --w3m-tooltip-left: ${leftValue}px;\n    --w3m-tooltip-parent-width: ${this.triggerRect.width / 2}px;\n    --w3m-tooltip-display: ${this.open ? 'flex' : 'none'};\n    --w3m-tooltip-opacity: ${this.open ? 1 : 0};\n    `;\n        return html `<wui-flex>\n      <wui-icon data-placement=\"top\" color=\"fg-100\" size=\"inherit\" name=\"cursor\"></wui-icon>\n      <wui-text color=\"inherit\" variant=\"small-500\">${this.message}</wui-text>\n    </wui-flex>`;\n    }\n};\nW3mTooltip.styles = [styles];\n__decorate([\n    state()\n], W3mTooltip.prototype, \"open\", void 0);\n__decorate([\n    state()\n], W3mTooltip.prototype, \"message\", void 0);\n__decorate([\n    state()\n], W3mTooltip.prototype, \"triggerRect\", void 0);\n__decorate([\n    state()\n], W3mTooltip.prototype, \"variant\", void 0);\nW3mTooltip = __decorate([\n    customElement('w3m-tooltip'),\n    customElement('w3m-tooltip')\n], W3mTooltip);\nexport { W3mTooltip };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    --prev-height: 0px;\n    --new-height: 0px;\n    display: block;\n  }\n\n  div.w3m-router-container {\n    transform: translateY(0);\n    opacity: 1;\n  }\n\n  div.w3m-router-container[view-direction='prev'] {\n    animation:\n      slide-left-out 150ms forwards ease,\n      slide-left-in 150ms forwards ease;\n    animation-delay: 0ms, 200ms;\n  }\n\n  div.w3m-router-container[view-direction='next'] {\n    animation:\n      slide-right-out 150ms forwards ease,\n      slide-right-in 150ms forwards ease;\n    animation-delay: 0ms, 200ms;\n  }\n\n  @keyframes slide-left-out {\n    from {\n      transform: translateX(0px);\n      opacity: 1;\n    }\n    to {\n      transform: translateX(10px);\n      opacity: 0;\n    }\n  }\n\n  @keyframes slide-left-in {\n    from {\n      transform: translateX(-10px);\n      opacity: 0;\n    }\n    to {\n      transform: translateX(0);\n      opacity: 1;\n    }\n  }\n\n  @keyframes slide-right-out {\n    from {\n      transform: translateX(0px);\n      opacity: 1;\n    }\n    to {\n      transform: translateX(-10px);\n      opacity: 0;\n    }\n  }\n\n  @keyframes slide-right-in {\n    from {\n      transform: translateX(10px);\n      opacity: 0;\n    }\n    to {\n      transform: translateX(0);\n      opacity: 1;\n    }\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { state } from 'lit/decorators.js';\nimport { RouterController, TooltipController } from '@reown/appkit-controllers';\nimport { customElement } from '@reown/appkit-ui';\nimport { ConstantsUtil } from '../../utils/ConstantsUtil.js';\nimport styles from './styles.js';\nlet W3mRouter = class W3mRouter extends LitElement {\n    constructor() {\n        super();\n        this.resizeObserver = undefined;\n        this.prevHeight = '0px';\n        this.prevHistoryLength = 1;\n        this.unsubscribe = [];\n        this.view = RouterController.state.view;\n        this.viewDirection = '';\n        this.unsubscribe.push(RouterController.subscribeKey('view', val => this.onViewChange(val)));\n    }\n    firstUpdated() {\n        this.resizeObserver = new ResizeObserver(([content]) => {\n            const height = `${content?.contentRect.height}px`;\n            if (this.prevHeight !== '0px') {\n                this.style.setProperty('--prev-height', this.prevHeight);\n                this.style.setProperty('--new-height', height);\n                this.style.animation = 'w3m-view-height 150ms forwards ease';\n                this.style.height = 'auto';\n            }\n            setTimeout(() => {\n                this.prevHeight = height;\n                this.style.animation = 'unset';\n            }, ConstantsUtil.ANIMATION_DURATIONS.ModalHeight);\n        });\n        this.resizeObserver?.observe(this.getWrapper());\n    }\n    disconnectedCallback() {\n        this.resizeObserver?.unobserve(this.getWrapper());\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n    }\n    render() {\n        return html `<div class=\"w3m-router-container\" view-direction=\"${this.viewDirection}\">\n      ${this.viewTemplate()}\n    </div>`;\n    }\n    viewTemplate() {\n        switch (this.view) {\n            case 'AccountSettings':\n                return html `<w3m-account-settings-view></w3m-account-settings-view>`;\n            case 'Account':\n                return html `<w3m-account-view></w3m-account-view>`;\n            case 'AllWallets':\n                return html `<w3m-all-wallets-view></w3m-all-wallets-view>`;\n            case 'ApproveTransaction':\n                return html `<w3m-approve-transaction-view></w3m-approve-transaction-view>`;\n            case 'BuyInProgress':\n                return html `<w3m-buy-in-progress-view></w3m-buy-in-progress-view>`;\n            case 'ChooseAccountName':\n                return html `<w3m-choose-account-name-view></w3m-choose-account-name-view>`;\n            case 'Connect':\n                return html `<w3m-connect-view></w3m-connect-view>`;\n            case 'Create':\n                return html `<w3m-connect-view walletGuide=\"explore\"></w3m-connect-view>`;\n            case 'ConnectingWalletConnect':\n                return html `<w3m-connecting-wc-view></w3m-connecting-wc-view>`;\n            case 'ConnectingWalletConnectBasic':\n                return html `<w3m-connecting-wc-basic-view></w3m-connecting-wc-basic-view>`;\n            case 'ConnectingExternal':\n                return html `<w3m-connecting-external-view></w3m-connecting-external-view>`;\n            case 'ConnectingSiwe':\n                return html `<w3m-connecting-siwe-view></w3m-connecting-siwe-view>`;\n            case 'ConnectWallets':\n                return html `<w3m-connect-wallets-view></w3m-connect-wallets-view>`;\n            case 'ConnectSocials':\n                return html `<w3m-connect-socials-view></w3m-connect-socials-view>`;\n            case 'ConnectingSocial':\n                return html `<w3m-connecting-social-view></w3m-connecting-social-view>`;\n            case 'Downloads':\n                return html `<w3m-downloads-view></w3m-downloads-view>`;\n            case 'EmailLogin':\n                return html `<w3m-email-login-view></w3m-email-login-view>`;\n            case 'EmailVerifyOtp':\n                return html `<w3m-email-verify-otp-view></w3m-email-verify-otp-view>`;\n            case 'EmailVerifyDevice':\n                return html `<w3m-email-verify-device-view></w3m-email-verify-device-view>`;\n            case 'GetWallet':\n                return html `<w3m-get-wallet-view></w3m-get-wallet-view>`;\n            case 'Networks':\n                return html `<w3m-networks-view></w3m-networks-view>`;\n            case 'SwitchNetwork':\n                return html `<w3m-network-switch-view></w3m-network-switch-view>`;\n            case 'Profile':\n                return html `<w3m-profile-view></w3m-profile-view>`;\n            case 'SwitchAddress':\n                return html `<w3m-switch-address-view></w3m-switch-address-view>`;\n            case 'Transactions':\n                return html `<w3m-transactions-view></w3m-transactions-view>`;\n            case 'OnRampProviders':\n                return html `<w3m-onramp-providers-view></w3m-onramp-providers-view>`;\n            case 'OnRampActivity':\n                return html `<w3m-onramp-activity-view></w3m-onramp-activity-view>`;\n            case 'OnRampTokenSelect':\n                return html `<w3m-onramp-token-select-view></w3m-onramp-token-select-view>`;\n            case 'OnRampFiatSelect':\n                return html `<w3m-onramp-fiat-select-view></w3m-onramp-fiat-select-view>`;\n            case 'UpgradeEmailWallet':\n                return html `<w3m-upgrade-wallet-view></w3m-upgrade-wallet-view>`;\n            case 'UpdateEmailWallet':\n                return html `<w3m-update-email-wallet-view></w3m-update-email-wallet-view>`;\n            case 'UpdateEmailPrimaryOtp':\n                return html `<w3m-update-email-primary-otp-view></w3m-update-email-primary-otp-view>`;\n            case 'UpdateEmailSecondaryOtp':\n                return html `<w3m-update-email-secondary-otp-view></w3m-update-email-secondary-otp-view>`;\n            case 'UnsupportedChain':\n                return html `<w3m-unsupported-chain-view></w3m-unsupported-chain-view>`;\n            case 'Swap':\n                return html `<w3m-swap-view></w3m-swap-view>`;\n            case 'SwapSelectToken':\n                return html `<w3m-swap-select-token-view></w3m-swap-select-token-view>`;\n            case 'SwapPreview':\n                return html `<w3m-swap-preview-view></w3m-swap-preview-view>`;\n            case 'WalletSend':\n                return html `<w3m-wallet-send-view></w3m-wallet-send-view>`;\n            case 'WalletSendSelectToken':\n                return html `<w3m-wallet-send-select-token-view></w3m-wallet-send-select-token-view>`;\n            case 'WalletSendPreview':\n                return html `<w3m-wallet-send-preview-view></w3m-wallet-send-preview-view>`;\n            case 'WhatIsABuy':\n                return html `<w3m-what-is-a-buy-view></w3m-what-is-a-buy-view>`;\n            case 'WalletReceive':\n                return html `<w3m-wallet-receive-view></w3m-wallet-receive-view>`;\n            case 'WalletCompatibleNetworks':\n                return html `<w3m-wallet-compatible-networks-view></w3m-wallet-compatible-networks-view>`;\n            case 'WhatIsAWallet':\n                return html `<w3m-what-is-a-wallet-view></w3m-what-is-a-wallet-view>`;\n            case 'ConnectingMultiChain':\n                return html `<w3m-connecting-multi-chain-view></w3m-connecting-multi-chain-view>`;\n            case 'WhatIsANetwork':\n                return html `<w3m-what-is-a-network-view></w3m-what-is-a-network-view>`;\n            case 'ConnectingFarcaster':\n                return html `<w3m-connecting-farcaster-view></w3m-connecting-farcaster-view>`;\n            case 'SwitchActiveChain':\n                return html `<w3m-switch-active-chain-view></w3m-switch-active-chain-view>`;\n            case 'RegisterAccountName':\n                return html `<w3m-register-account-name-view></w3m-register-account-name-view>`;\n            case 'RegisterAccountNameSuccess':\n                return html `<w3m-register-account-name-success-view></w3m-register-account-name-success-view>`;\n            case 'SmartSessionCreated':\n                return html `<w3m-smart-session-created-view></w3m-smart-session-created-view>`;\n            case 'SmartSessionList':\n                return html `<w3m-smart-session-list-view></w3m-smart-session-list-view>`;\n            case 'SIWXSignMessage':\n                return html `<w3m-siwx-sign-message-view></w3m-siwx-sign-message-view>`;\n            case 'Pay':\n                return html `<w3m-pay-view></w3m-pay-view>`;\n            case 'PayLoading':\n                return html `<w3m-pay-loading-view></w3m-pay-loading-view>`;\n            default:\n                return html `<w3m-connect-view></w3m-connect-view>`;\n        }\n    }\n    onViewChange(newView) {\n        TooltipController.hide();\n        let direction = ConstantsUtil.VIEW_DIRECTION.Next;\n        const { history } = RouterController.state;\n        if (history.length < this.prevHistoryLength) {\n            direction = ConstantsUtil.VIEW_DIRECTION.Prev;\n        }\n        this.prevHistoryLength = history.length;\n        this.viewDirection = direction;\n        setTimeout(() => {\n            this.view = newView;\n        }, ConstantsUtil.ANIMATION_DURATIONS.ViewTransition);\n    }\n    getWrapper() {\n        return this.shadowRoot?.querySelector('div');\n    }\n};\nW3mRouter.styles = styles;\n__decorate([\n    state()\n], W3mRouter.prototype, \"view\", void 0);\n__decorate([\n    state()\n], W3mRouter.prototype, \"viewDirection\", void 0);\nW3mRouter = __decorate([\n    customElement('w3m-router')\n], W3mRouter);\nexport { W3mRouter };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n  :host {\n    z-index: var(--w3m-z-index);\n    display: block;\n    backface-visibility: hidden;\n    will-change: opacity;\n    position: fixed;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    pointer-events: none;\n    opacity: 0;\n    background-color: var(--wui-cover);\n    transition: opacity 0.2s var(--wui-ease-out-power-2);\n    will-change: opacity;\n  }\n\n  :host(.open) {\n    opacity: 1;\n  }\n\n  :host(.appkit-modal) {\n    position: relative;\n    pointer-events: unset;\n    background: none;\n    width: 100%;\n    opacity: 1;\n  }\n\n  wui-card {\n    max-width: var(--w3m-modal-width);\n    width: 100%;\n    position: relative;\n    animation: zoom-in 0.2s var(--wui-ease-out-power-2);\n    animation-fill-mode: backwards;\n    outline: none;\n    transition:\n      border-radius var(--wui-duration-lg) var(--wui-ease-out-power-1),\n      background-color var(--wui-duration-lg) var(--wui-ease-out-power-1);\n    will-change: border-radius, background-color;\n  }\n\n  :host(.appkit-modal) wui-card {\n    max-width: 400px;\n  }\n\n  wui-card[shake='true'] {\n    animation:\n      zoom-in 0.2s var(--wui-ease-out-power-2),\n      w3m-shake 0.5s var(--wui-ease-out-power-2);\n  }\n\n  wui-flex {\n    overflow-x: hidden;\n    overflow-y: auto;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 100%;\n    height: 100%;\n  }\n\n  @media (max-height: 700px) and (min-width: 431px) {\n    wui-flex {\n      align-items: flex-start;\n    }\n\n    wui-card {\n      margin: var(--wui-spacing-xxl) 0px;\n    }\n  }\n\n  @media (max-width: 430px) {\n    wui-flex {\n      align-items: flex-end;\n    }\n\n    wui-card {\n      max-width: 100%;\n      border-bottom-left-radius: var(--local-border-bottom-mobile-radius);\n      border-bottom-right-radius: var(--local-border-bottom-mobile-radius);\n      border-bottom: none;\n      animation: slide-in 0.2s var(--wui-ease-out-power-2);\n    }\n\n    wui-card[shake='true'] {\n      animation:\n        slide-in 0.2s var(--wui-ease-out-power-2),\n        w3m-shake 0.5s var(--wui-ease-out-power-2);\n    }\n  }\n\n  @keyframes zoom-in {\n    0% {\n      transform: scale(0.95) translateY(0);\n    }\n    100% {\n      transform: scale(1) translateY(0);\n    }\n  }\n\n  @keyframes slide-in {\n    0% {\n      transform: scale(1) translateY(50px);\n    }\n    100% {\n      transform: scale(1) translateY(0);\n    }\n  }\n\n  @keyframes w3m-shake {\n    0% {\n      transform: scale(1) rotate(0deg);\n    }\n    20% {\n      transform: scale(1) rotate(-1deg);\n    }\n    40% {\n      transform: scale(1) rotate(1.5deg);\n    }\n    60% {\n      transform: scale(1) rotate(-1.5deg);\n    }\n    80% {\n      transform: scale(1) rotate(1deg);\n    }\n    100% {\n      transform: scale(1) rotate(0deg);\n    }\n  }\n\n  @keyframes w3m-view-height {\n    from {\n      height: var(--prev-height);\n    }\n    to {\n      height: var(--new-height);\n    }\n  }\n`;\n//# sourceMappingURL=styles.js.map","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { LitElement, html } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { ConstantsUtil as CommonConstantsUtil } from '@reown/appkit-common';\nimport { ApiController, ChainController, ConnectorController, CoreHelperUtil, ModalController, ModalUtil, OptionsController, RouterController, SIWXUtil, SnackController, ThemeController } from '@reown/appkit-controllers';\nimport { UiHelperUtil, customElement, initializeTheming } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-card';\nimport '@reown/appkit-ui/wui-flex';\nimport '../../partials/w3m-alertbar/index.js';\nimport '../../partials/w3m-header/index.js';\nimport '../../partials/w3m-snackbar/index.js';\nimport '../../partials/w3m-tooltip/index.js';\nimport '../w3m-router/index.js';\nimport styles from './styles.js';\nconst SCROLL_LOCK = 'scroll-lock';\nexport class W3mModalBase extends LitElement {\n    constructor() {\n        super();\n        this.unsubscribe = [];\n        this.abortController = undefined;\n        this.hasPrefetched = false;\n        this.enableEmbedded = OptionsController.state.enableEmbedded;\n        this.open = ModalController.state.open;\n        this.caipAddress = ChainController.state.activeCaipAddress;\n        this.caipNetwork = ChainController.state.activeCaipNetwork;\n        this.shake = ModalController.state.shake;\n        this.filterByNamespace = ConnectorController.state.filterByNamespace;\n        this.initializeTheming();\n        ApiController.prefetchAnalyticsConfig();\n        this.unsubscribe.push(...[\n            ModalController.subscribeKey('open', val => (val ? this.onOpen() : this.onClose())),\n            ModalController.subscribeKey('shake', val => (this.shake = val)),\n            ChainController.subscribeKey('activeCaipNetwork', val => this.onNewNetwork(val)),\n            ChainController.subscribeKey('activeCaipAddress', val => this.onNewAddress(val)),\n            OptionsController.subscribeKey('enableEmbedded', val => (this.enableEmbedded = val)),\n            ConnectorController.subscribeKey('filterByNamespace', val => {\n                if (this.filterByNamespace !== val && !ChainController.getAccountData(val)?.caipAddress) {\n                    ApiController.fetchRecommendedWallets();\n                    this.filterByNamespace = val;\n                }\n            })\n        ]);\n    }\n    firstUpdated() {\n        if (this.caipAddress) {\n            if (this.enableEmbedded) {\n                ModalController.close();\n                this.prefetch();\n                return;\n            }\n            this.onNewAddress(this.caipAddress);\n        }\n        if (this.open) {\n            this.onOpen();\n        }\n        if (this.enableEmbedded) {\n            this.prefetch();\n        }\n    }\n    disconnectedCallback() {\n        this.unsubscribe.forEach(unsubscribe => unsubscribe());\n        this.onRemoveKeyboardListener();\n    }\n    render() {\n        this.style.cssText = `\n      --local-border-bottom-mobile-radius: ${this.enableEmbedded ? 'clamp(0px, var(--wui-border-radius-l), 44px)' : '0px'};\n    `;\n        if (this.enableEmbedded) {\n            return html `${this.contentTemplate()}\n        <w3m-tooltip></w3m-tooltip> `;\n        }\n        return this.open\n            ? html `\n          <wui-flex @click=${this.onOverlayClick.bind(this)} data-testid=\"w3m-modal-overlay\">\n            ${this.contentTemplate()}\n          </wui-flex>\n          <w3m-tooltip></w3m-tooltip>\n        `\n            : null;\n    }\n    contentTemplate() {\n        return html ` <wui-card\n      shake=\"${this.shake}\"\n      data-embedded=\"${ifDefined(this.enableEmbedded)}\"\n      role=\"alertdialog\"\n      aria-modal=\"true\"\n      tabindex=\"0\"\n      data-testid=\"w3m-modal-card\"\n    >\n      <w3m-header></w3m-header>\n      <w3m-router></w3m-router>\n      <w3m-snackbar></w3m-snackbar>\n      <w3m-alertbar></w3m-alertbar>\n    </wui-card>`;\n    }\n    async onOverlayClick(event) {\n        if (event.target === event.currentTarget) {\n            await this.handleClose();\n        }\n    }\n    async handleClose() {\n        await ModalUtil.safeClose();\n    }\n    initializeTheming() {\n        const { themeVariables, themeMode } = ThemeController.state;\n        const defaultThemeMode = UiHelperUtil.getColorTheme(themeMode);\n        initializeTheming(themeVariables, defaultThemeMode);\n    }\n    onClose() {\n        this.open = false;\n        this.classList.remove('open');\n        this.onScrollUnlock();\n        SnackController.hide();\n        this.onRemoveKeyboardListener();\n    }\n    onOpen() {\n        this.open = true;\n        this.classList.add('open');\n        this.onScrollLock();\n        this.onAddKeyboardListener();\n    }\n    onScrollLock() {\n        const styleTag = document.createElement('style');\n        styleTag.dataset['w3m'] = SCROLL_LOCK;\n        styleTag.textContent = `\n      body {\n        touch-action: none;\n        overflow: hidden;\n        overscroll-behavior: contain;\n      }\n      w3m-modal {\n        pointer-events: auto;\n      }\n    `;\n        document.head.appendChild(styleTag);\n    }\n    onScrollUnlock() {\n        const styleTag = document.head.querySelector(`style[data-w3m=\"${SCROLL_LOCK}\"]`);\n        if (styleTag) {\n            styleTag.remove();\n        }\n    }\n    onAddKeyboardListener() {\n        this.abortController = new AbortController();\n        const card = this.shadowRoot?.querySelector('wui-card');\n        card?.focus();\n        window.addEventListener('keydown', event => {\n            if (event.key === 'Escape') {\n                this.handleClose();\n            }\n            else if (event.key === 'Tab') {\n                const { tagName } = event.target;\n                if (tagName && !tagName.includes('W3M-') && !tagName.includes('WUI-')) {\n                    card?.focus();\n                }\n            }\n        }, this.abortController);\n    }\n    onRemoveKeyboardListener() {\n        this.abortController?.abort();\n        this.abortController = undefined;\n    }\n    async onNewAddress(caipAddress) {\n        const isSwitchingNamespace = ChainController.state.isSwitchingNamespace;\n        const nextConnected = CoreHelperUtil.getPlainAddress(caipAddress);\n        const isDisconnectedInSameNamespace = !nextConnected && !isSwitchingNamespace;\n        const isSwitchingNamespaceAndConnected = isSwitchingNamespace && nextConnected;\n        if (isDisconnectedInSameNamespace) {\n            ModalController.close();\n        }\n        else if (isSwitchingNamespaceAndConnected) {\n            RouterController.goBack();\n        }\n        await SIWXUtil.initializeIfEnabled();\n        this.caipAddress = caipAddress;\n        ChainController.setIsSwitchingNamespace(false);\n    }\n    onNewNetwork(nextCaipNetwork) {\n        const prevCaipNetwork = this.caipNetwork;\n        const prevCaipNetworkId = prevCaipNetwork?.caipNetworkId?.toString();\n        const prevChainNamespace = prevCaipNetwork?.chainNamespace;\n        const nextNetworkId = nextCaipNetwork?.caipNetworkId?.toString();\n        const nextChainNamespace = nextCaipNetwork?.chainNamespace;\n        const networkIdChanged = prevCaipNetworkId !== nextNetworkId;\n        const namespaceChanged = prevChainNamespace !== nextChainNamespace;\n        const isNetworkChangedInSameNamespace = networkIdChanged && !namespaceChanged;\n        const wasUnsupportedNetwork = prevCaipNetwork?.name === CommonConstantsUtil.UNSUPPORTED_NETWORK_NAME;\n        const isConnectingExternal = RouterController.state.view === 'ConnectingExternal';\n        const isNotConnected = !ChainController.getAccountData(nextCaipNetwork?.chainNamespace)\n            ?.caipAddress;\n        const isUnsupportedNetworkScreen = RouterController.state.view === 'UnsupportedChain';\n        const isModalOpen = ModalController.state.open;\n        let shouldGoBack = false;\n        if (isModalOpen && !isConnectingExternal) {\n            if (isNotConnected) {\n                if (networkIdChanged) {\n                    shouldGoBack = true;\n                }\n            }\n            else if (isUnsupportedNetworkScreen) {\n                shouldGoBack = true;\n            }\n            else if (isNetworkChangedInSameNamespace && !wasUnsupportedNetwork) {\n                shouldGoBack = true;\n            }\n        }\n        if (shouldGoBack && RouterController.state.view !== 'SIWXSignMessage') {\n            RouterController.goBack();\n        }\n        this.caipNetwork = nextCaipNetwork;\n    }\n    prefetch() {\n        if (!this.hasPrefetched) {\n            ApiController.prefetch();\n            ApiController.fetchWalletsByPage({ page: 1 });\n            this.hasPrefetched = true;\n        }\n    }\n}\nW3mModalBase.styles = styles;\n__decorate([\n    property({ type: Boolean })\n], W3mModalBase.prototype, \"enableEmbedded\", void 0);\n__decorate([\n    state()\n], W3mModalBase.prototype, \"open\", void 0);\n__decorate([\n    state()\n], W3mModalBase.prototype, \"caipAddress\", void 0);\n__decorate([\n    state()\n], W3mModalBase.prototype, \"caipNetwork\", void 0);\n__decorate([\n    state()\n], W3mModalBase.prototype, \"shake\", void 0);\n__decorate([\n    state()\n], W3mModalBase.prototype, \"filterByNamespace\", void 0);\nlet W3mModal = class W3mModal extends W3mModalBase {\n};\nW3mModal = __decorate([\n    customElement('w3m-modal')\n], W3mModal);\nexport { W3mModal };\nlet AppKitModal = class AppKitModal extends W3mModalBase {\n};\nAppKitModal = __decorate([\n    customElement('appkit-modal')\n], AppKitModal);\nexport { AppKitModal };\n//# sourceMappingURL=index.js.map"],"names":["sub","subKey","css","__decorate","this","r","i","WuiCard","LitElement","html","styles","WuiAlertBar","property","presets","W3mAlertBar","state","WuiIconLink","WuiSelect","W3mHeader","ifDefined","WuiSnackbar","W3mSnackBar","W3mTooltip","W3mRouter","CommonConstantsUtil","W3mModal","AppKitModal"],"mappings":"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KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eAAOA;AAAAA,MACX,KAAK;AACD,eA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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]}