@reown/appkit-cdn 1.6.6-basic-test.3.0 → 1.6.6-basic-test.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/dist/{appkit-QKuZmMgA.js → appkit-hZyGLfr5.js} +570 -1054
  2. package/dist/{appkit-QKuZmMgA.js.map → appkit-hZyGLfr5.js.map} +1 -1
  3. package/dist/appkit.js +8 -8
  4. package/dist/{ccip-DTQod-hH.js → ccip-B6Wvu04X.js} +2 -2
  5. package/dist/{ccip-DTQod-hH.js.map → ccip-B6Wvu04X.js.map} +1 -1
  6. package/dist/{email-BHtY-2Dy.js → email-7OXbz6hc.js} +8 -8
  7. package/dist/{email-BHtY-2Dy.js.map → email-7OXbz6hc.js.map} +1 -1
  8. package/dist/{embedded-wallet-BSIVNePZ.js → embedded-wallet-CWsQPgCa.js} +10 -10
  9. package/dist/{embedded-wallet-BSIVNePZ.js.map → embedded-wallet-CWsQPgCa.js.map} +1 -1
  10. package/dist/{hooks.module-B_SL4e3C.js → hooks.module-4F6xH2-y.js} +2 -2
  11. package/dist/{hooks.module-B_SL4e3C.js.map → hooks.module-4F6xH2-y.js.map} +1 -1
  12. package/dist/{if-defined-rsGAB-1O.js → if-defined-dGSnGaje.js} +2 -2
  13. package/dist/{if-defined-rsGAB-1O.js.map → if-defined-dGSnGaje.js.map} +1 -1
  14. package/dist/{index-PPxE_aJ2.js → index-B7JVTsPu.js} +4 -4
  15. package/dist/{index-PPxE_aJ2.js.map → index-B7JVTsPu.js.map} +1 -1
  16. package/dist/{index-Bzbkp9J1.js → index-BL61_ej1.js} +3 -3
  17. package/dist/{index-Bzbkp9J1.js.map → index-BL61_ej1.js.map} +1 -1
  18. package/dist/{index-UxGgQkhj.js → index-BTN5XFWn.js} +2 -2
  19. package/dist/{index-UxGgQkhj.js.map → index-BTN5XFWn.js.map} +1 -1
  20. package/dist/{index-TJGavkJc.js → index-BYhbfdIT.js} +4 -4
  21. package/dist/{index-TJGavkJc.js.map → index-BYhbfdIT.js.map} +1 -1
  22. package/dist/{index-oHFxrT0W.js → index-BbYzNK-e.js} +3 -3
  23. package/dist/{index-oHFxrT0W.js.map → index-BbYzNK-e.js.map} +1 -1
  24. package/dist/{index-BKPGhBuk.js → index-BduA1I0K.js} +23 -23
  25. package/dist/{index-BKPGhBuk.js.map → index-BduA1I0K.js.map} +1 -1
  26. package/dist/{index-2BB7m0jA.js → index-BgPMLnwu.js} +3 -3
  27. package/dist/{index-2BB7m0jA.js.map → index-BgPMLnwu.js.map} +1 -1
  28. package/dist/{index-BaVc-y5K.js → index-Brwaxkkt.js} +3 -3
  29. package/dist/{index-BaVc-y5K.js.map → index-Brwaxkkt.js.map} +1 -1
  30. package/dist/{index-DgDB5NSF.js → index-C3KSKBRd.js} +4 -4
  31. package/dist/{index-DgDB5NSF.js.map → index-C3KSKBRd.js.map} +1 -1
  32. package/dist/{index-DwxWldFG.js → index-C49v39-_.js} +3 -3
  33. package/dist/{index-DwxWldFG.js.map → index-C49v39-_.js.map} +1 -1
  34. package/dist/{index-CDO9KQE4.js → index-C4H1nkXm.js} +3 -3
  35. package/dist/{index-CDO9KQE4.js.map → index-C4H1nkXm.js.map} +1 -1
  36. package/dist/{index-B6ggk5Ql.js → index-C7DuE4bF.js} +4 -4
  37. package/dist/{index-B6ggk5Ql.js.map → index-C7DuE4bF.js.map} +1 -1
  38. package/dist/{index-C-cKNSdx.js → index-CB1JDQ6y.js} +4 -3
  39. package/dist/{index-C-cKNSdx.js.map → index-CB1JDQ6y.js.map} +1 -1
  40. package/dist/{index-Mg_DgNXz.js → index-CIFWL_Te.js} +4 -4
  41. package/dist/{index-Mg_DgNXz.js.map → index-CIFWL_Te.js.map} +1 -1
  42. package/dist/{index-Dcg9z57Z.js → index-CewBInzg.js} +4 -3
  43. package/dist/{index-Dcg9z57Z.js.map → index-CewBInzg.js.map} +1 -1
  44. package/dist/{index-BCtXT0Yi.js → index-Ch4lVZT8.js} +6 -6
  45. package/dist/{index-BCtXT0Yi.js.map → index-Ch4lVZT8.js.map} +1 -1
  46. package/dist/{index-BIjhOWIU.js → index-ClYdxQHq.js} +4 -4
  47. package/dist/{index-BIjhOWIU.js.map → index-ClYdxQHq.js.map} +1 -1
  48. package/dist/{index-DCLENwVM.js → index-CvV6W9De.js} +42 -3
  49. package/dist/index-CvV6W9De.js.map +1 -0
  50. package/dist/index-CwuY13YQ.js +608 -0
  51. package/dist/index-CwuY13YQ.js.map +1 -0
  52. package/dist/{index-BpZcJPob.js → index-DAEKpLXx.js} +7 -7
  53. package/dist/{index-BpZcJPob.js.map → index-DAEKpLXx.js.map} +1 -1
  54. package/dist/{index-T0OtVHIR.js → index-DFatup-x.js} +3 -3
  55. package/dist/{index-T0OtVHIR.js.map → index-DFatup-x.js.map} +1 -1
  56. package/dist/{index-CPZ4ZWAB.js → index-DQp_pmaP.js} +4 -4
  57. package/dist/{index-CPZ4ZWAB.js.map → index-DQp_pmaP.js.map} +1 -1
  58. package/dist/{index-BTYkf8kt.js → index-DYWDcSOu.js} +3 -3
  59. package/dist/{index-BTYkf8kt.js.map → index-DYWDcSOu.js.map} +1 -1
  60. package/dist/{index-CZizR5X9.js → index-Df5vKTIW.js} +3 -3
  61. package/dist/{index-CZizR5X9.js.map → index-Df5vKTIW.js.map} +1 -1
  62. package/dist/{index-Dl4DYGOg.js → index-DiAf99cR.js} +4 -4
  63. package/dist/{index-Dl4DYGOg.js.map → index-DiAf99cR.js.map} +1 -1
  64. package/dist/{index-CrF1ZhwC.js → index-DmwSb988.js} +5 -5
  65. package/dist/{index-CrF1ZhwC.js.map → index-DmwSb988.js.map} +1 -1
  66. package/dist/{index-DQdtZuhJ.js → index-PNpm0-bd.js} +3 -3
  67. package/dist/{index-DQdtZuhJ.js.map → index-PNpm0-bd.js.map} +1 -1
  68. package/dist/{index-CXzStwuk.js → index-TZpNKUEf.js} +2 -2
  69. package/dist/{index-CXzStwuk.js.map → index-TZpNKUEf.js.map} +1 -1
  70. package/dist/{index-C1wSwK-1.js → index-WNHJ5PXY.js} +3 -3
  71. package/dist/{index-C1wSwK-1.js.map → index-WNHJ5PXY.js.map} +1 -1
  72. package/dist/{index.es-DkCXPJcj.js → index.es-DxdP-k4H.js} +3 -3
  73. package/dist/{index.es-DkCXPJcj.js.map → index.es-DxdP-k4H.js.map} +1 -1
  74. package/dist/{metamask-sdk-6d2bxFIh.js → metamask-sdk-3_VOmd7d.js} +2 -2
  75. package/dist/{metamask-sdk-6d2bxFIh.js.map → metamask-sdk-3_VOmd7d.js.map} +1 -1
  76. package/dist/{native-BqeoGFed.js → native-Ds9cEPoS.js} +2 -2
  77. package/dist/{native-BqeoGFed.js.map → native-Ds9cEPoS.js.map} +1 -1
  78. package/dist/{onramp-D2c5W23B.js → onramp-DAOC8iXd.js} +135 -14
  79. package/dist/onramp-DAOC8iXd.js.map +1 -0
  80. package/dist/{receive-YeWVCtLB.js → receive-C_E76vQZ.js} +6 -6
  81. package/dist/{receive-YeWVCtLB.js.map → receive-C_E76vQZ.js.map} +1 -1
  82. package/dist/{send-DqyIyy1Y.js → send-C92cSKIt.js} +10 -10
  83. package/dist/{send-DqyIyy1Y.js.map → send-C92cSKIt.js.map} +1 -1
  84. package/dist/{socials-vKZheKVM.js → socials-BlllTdW5.js} +10 -10
  85. package/dist/{socials-vKZheKVM.js.map → socials-BlllTdW5.js.map} +1 -1
  86. package/dist/{swaps-D-IM1hIY.js → swaps-BodIZ5Dv.js} +10 -10
  87. package/dist/{swaps-D-IM1hIY.js.map → swaps-BodIZ5Dv.js.map} +1 -1
  88. package/dist/{transactions-B5Ub0omb.js → transactions-DSiHT2Zb.js} +4 -4
  89. package/dist/{transactions-B5Ub0omb.js.map → transactions-DSiHT2Zb.js.map} +1 -1
  90. package/dist/{w3m-modal-CaeqjcO9.js → w3m-modal-Cuv0zBPp.js} +9 -9
  91. package/dist/{w3m-modal-CaeqjcO9.js.map → w3m-modal-Cuv0zBPp.js.map} +1 -1
  92. package/package.json +7 -7
  93. package/dist/index-DCLENwVM.js.map +0 -1
  94. package/dist/index-U2j2cfz9.js +0 -276
  95. package/dist/index-U2j2cfz9.js.map +0 -1
  96. package/dist/onramp-D2c5W23B.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"swaps-D-IM1hIY.js","sources":["../../common/dist/esm/src/utils/InputUtil.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-details/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-details/index.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input-skeleton/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input-skeleton/index.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-view/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-preview-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-preview-view/index.js","../../ui/dist/esm/src/composites/wui-token-list-item/styles.js","../../ui/dist/esm/src/composites/wui-token-list-item/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-select-token-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-select-token-view/index.js"],"sourcesContent":["export const InputUtil = {\n numericInputKeyDown(event, currentValue, onChange) {\n const allowedKeys = [\n 'Backspace',\n 'Meta',\n 'Ctrl',\n 'a',\n 'A',\n 'c',\n 'C',\n 'x',\n 'X',\n 'v',\n 'V',\n 'ArrowLeft',\n 'ArrowRight',\n 'Tab'\n ];\n const controlPressed = event.metaKey || event.ctrlKey;\n const eventKey = event.key;\n const lowercaseEventKey = eventKey.toLocaleLowerCase();\n const selectAll = lowercaseEventKey === 'a';\n const copyKey = lowercaseEventKey === 'c';\n const pasteKey = lowercaseEventKey === 'v';\n const cutKey = lowercaseEventKey === 'x';\n const isComma = eventKey === ',';\n const isDot = eventKey === '.';\n const isNumericKey = eventKey >= '0' && eventKey <= '9';\n if (!controlPressed && (selectAll || copyKey || pasteKey || cutKey)) {\n event.preventDefault();\n }\n if (currentValue === '0' && !isComma && !isDot && eventKey === '0') {\n event.preventDefault();\n }\n if (currentValue === '0' && isNumericKey) {\n onChange(eventKey);\n event.preventDefault();\n }\n if (isComma || isDot) {\n if (!currentValue) {\n onChange('0.');\n event.preventDefault();\n }\n if (currentValue?.includes('.') || currentValue?.includes(',')) {\n event.preventDefault();\n }\n }\n if (!isNumericKey && !allowedKeys.includes(eventKey) && !isDot && !isComma) {\n event.preventDefault();\n }\n }\n};\n//# sourceMappingURL=InputUtil.js.map","import { css } from 'lit';\nexport default css `\n :host {\n width: 100%;\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n cursor: pointer;\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n padding-top: 0px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s);\n padding-left: var(--wui-spacing-s);\n padding-right: var(--wui-spacing-1xs);\n border-radius: calc(var(--wui-border-radius-5xs) + var(--wui-border-radius-4xs));\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-row-title {\n white-space: nowrap;\n }\n\n .details-row.provider-free-row {\n padding-right: var(--wui-spacing-xs);\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 { NumberUtil } from '@reown/appkit-common';\nimport { ChainController, ConstantsUtil, SwapController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport '../w3m-tooltip-trigger/index.js';\nimport '../w3m-tooltip/index.js';\nimport styles from './styles.js';\nconst slippageRate = ConstantsUtil.CONVERT_SLIPPAGE_TOLERANCE;\nlet WuiSwapDetails = class WuiSwapDetails extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.networkName = ChainController.state.activeCaipNetwork?.name;\n this.detailsOpen = false;\n this.sourceToken = SwapController.state.sourceToken;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount;\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.priceImpact = SwapController.state.priceImpact;\n this.maxSlippage = SwapController.state.maxSlippage;\n this.networkTokenSymbol = SwapController.state.networkTokenSymbol;\n this.inputError = SwapController.state.inputError;\n this.unsubscribe.push(...[\n SwapController.subscribe(newState => {\n this.sourceToken = newState.sourceToken;\n this.toToken = newState.toToken;\n this.toTokenAmount = newState.toTokenAmount;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.priceImpact = newState.priceImpact;\n this.maxSlippage = newState.maxSlippage;\n this.sourceTokenPriceInUSD = newState.sourceTokenPriceInUSD;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.inputError = newState.inputError;\n })\n ]);\n }\n render() {\n const minReceivedAmount = this.toTokenAmount && this.maxSlippage\n ? NumberUtil.bigNumber(this.toTokenAmount).minus(this.maxSlippage).toString()\n : null;\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n const toTokenSwappedAmount = this.sourceTokenPriceInUSD && this.toTokenPriceInUSD\n ? (1 / this.toTokenPriceInUSD) * this.sourceTokenPriceInUSD\n : 0;\n return html `\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"1xs\" class=\"details-container\">\n <wui-flex flexDirection=\"column\">\n <button @click=${this.toggleDetails.bind(this)}>\n <wui-flex justifyContent=\"space-between\" .padding=${['0', 'xs', '0', 'xs']}>\n <wui-flex justifyContent=\"flex-start\" flexGrow=\"1\" gap=\"xs\">\n <wui-text variant=\"small-400\" color=\"fg-100\">\n 1 ${this.sourceToken.symbol} =\n ${UiHelperUtil.formatNumberToLocalString(toTokenSwappedAmount, 3)}\n ${this.toToken.symbol}\n </wui-text>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n $${UiHelperUtil.formatNumberToLocalString(this.sourceTokenPriceInUSD)}\n </wui-text>\n </wui-flex>\n <wui-icon name=\"chevronBottom\"></wui-icon>\n </wui-flex>\n </button>\n ${this.detailsOpen\n ? html `\n <wui-flex flexDirection=\"column\" gap=\"xs\" class=\"details-content-container\">\n <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Network cost\n </wui-text>\n <w3m-tooltip-trigger\n text=${`Network cost is paid in ${this.networkTokenSymbol} on the ${this.networkName} network in order to execute transaction.`}\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-100\">\n $${UiHelperUtil.formatNumberToLocalString(this.gasPriceInUSD, 3)}\n </wui-text>\n </wui-flex>\n </wui-flex>\n ${this.priceImpact\n ? html ` <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Price impact\n </wui-text>\n <w3m-tooltip-trigger\n text=\"Price impact reflects the change in market price due to your trade\"\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.priceImpact, 3)}%\n </wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>`\n : null}\n ${this.maxSlippage && this.sourceToken.symbol\n ? html `<wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Max. slippage\n </wui-text>\n <w3m-tooltip-trigger\n text=${`Max slippage sets the minimum amount you must receive for the transaction to proceed. ${minReceivedAmount\n ? `Transaction will be reversed if you receive less than ${UiHelperUtil.formatNumberToLocalString(minReceivedAmount, 6)} ${this.toToken.symbol} due to price changes.`\n : ''}`}\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.maxSlippage, 6)}\n ${this.toToken.symbol} ${slippageRate}%\n </wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>`\n : null}\n <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row provider-free-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Provider fee\n </wui-text>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">0.85%</wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>\n </wui-flex>\n `\n : null}\n </wui-flex>\n </wui-flex>\n `;\n }\n toggleDetails() {\n this.detailsOpen = !this.detailsOpen;\n }\n};\nWuiSwapDetails.styles = [styles];\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"networkName\", void 0);\n__decorate([\n property()\n], WuiSwapDetails.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"priceImpact\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"maxSlippage\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"networkTokenSymbol\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"inputError\", void 0);\nWuiSwapDetails = __decorate([\n customElement('w3m-swap-details')\n], WuiSwapDetails);\nexport { WuiSwapDetails };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n width: 100%;\n }\n\n :host > wui-flex {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-radius: var(--wui-border-radius-s);\n padding: var(--wui-spacing-xl);\n padding-right: var(--wui-spacing-s);\n background-color: var(--wui-color-gray-glass-002);\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-002);\n width: 100%;\n height: 100px;\n box-sizing: border-box;\n position: relative;\n }\n\n wui-shimmer.market-value {\n opacity: 0;\n }\n\n :host > wui-flex > svg.input_mask {\n position: absolute;\n inset: 0;\n z-index: 5;\n }\n\n :host wui-flex .input_mask__border,\n :host wui-flex .input_mask__background {\n transition: fill var(--wui-duration-md) var(--wui-ease-out-power-1);\n will-change: fill;\n }\n\n :host wui-flex .input_mask__border {\n fill: var(--wui-color-gray-glass-020);\n }\n\n :host wui-flex .input_mask__background {\n fill: var(--wui-color-gray-glass-002);\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 {} from '@reown/appkit-core';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-shimmer';\nimport styles from './styles.js';\nlet W3mSwapInputSkeleton = class W3mSwapInputSkeleton extends LitElement {\n constructor() {\n super(...arguments);\n this.target = 'sourceToken';\n }\n render() {\n return html `\n <wui-flex class justifyContent=\"space-between\">\n <wui-flex\n flex=\"1\"\n flexDirection=\"column\"\n alignItems=\"flex-start\"\n justifyContent=\"center\"\n class=\"swap-input\"\n gap=\"xxs\"\n >\n <wui-shimmer width=\"80px\" height=\"40px\" borderRadius=\"xxs\" variant=\"light\"></wui-shimmer>\n </wui-flex>\n ${this.templateTokenSelectButton()}\n </wui-flex>\n `;\n }\n templateTokenSelectButton() {\n return html `\n <wui-flex\n class=\"swap-token-button\"\n flexDirection=\"column\"\n alignItems=\"flex-end\"\n justifyContent=\"center\"\n gap=\"xxs\"\n >\n <wui-shimmer width=\"80px\" height=\"40px\" borderRadius=\"3xl\" variant=\"light\"></wui-shimmer>\n </wui-flex>\n `;\n }\n};\nW3mSwapInputSkeleton.styles = [styles];\n__decorate([\n property()\n], W3mSwapInputSkeleton.prototype, \"target\", void 0);\nW3mSwapInputSkeleton = __decorate([\n customElement('w3m-swap-input-skeleton')\n], W3mSwapInputSkeleton);\nexport { W3mSwapInputSkeleton };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-radius: var(--wui-border-radius-s);\n background-color: var(--wui-color-gray-glass-002);\n padding: var(--wui-spacing-xl);\n padding-right: var(--wui-spacing-s);\n width: 100%;\n height: 100px;\n box-sizing: border-box;\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-002);\n position: relative;\n transition: box-shadow var(--wui-ease-out-power-1) var(--wui-duration-lg);\n will-change: background-color;\n }\n\n :host wui-flex.focus {\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-005);\n }\n\n :host > wui-flex .swap-input,\n :host > wui-flex .swap-token-button {\n z-index: 10;\n }\n\n :host > wui-flex .swap-input {\n -webkit-mask-image: linear-gradient(\n 270deg,\n transparent 0px,\n transparent 8px,\n black 24px,\n black 25px,\n black 32px,\n black 100%\n );\n mask-image: linear-gradient(\n 270deg,\n transparent 0px,\n transparent 8px,\n black 24px,\n black 25px,\n black 32px,\n black 100%\n );\n }\n\n :host > wui-flex .swap-input input {\n background: none;\n border: none;\n height: 42px;\n width: 100%;\n font-size: 32px;\n font-style: normal;\n font-weight: 400;\n line-height: 130%;\n letter-spacing: -1.28px;\n outline: none;\n caret-color: var(--wui-color-accent-100);\n color: var(--wui-color-fg-100);\n padding: 0px;\n }\n\n :host > wui-flex .swap-input input:focus-visible {\n outline: none;\n }\n\n :host > wui-flex .swap-input input::-webkit-outer-spin-button,\n :host > wui-flex .swap-input input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n .max-value-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n color: var(--wui-color-gray-glass-020);\n padding-left: 0px;\n }\n\n .market-value {\n min-height: 18px;\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 { InputUtil, NumberUtil } from '@reown/appkit-common';\nimport { EventsController, RouterController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport styles from './styles.js';\nconst MINIMUM_USD_VALUE_TO_CONVERT = 0.00005;\nlet W3mSwapInput = class W3mSwapInput extends LitElement {\n constructor() {\n super(...arguments);\n this.focused = false;\n this.price = 0;\n this.target = 'sourceToken';\n this.onSetAmount = null;\n this.onSetMaxValue = null;\n }\n render() {\n const marketValue = this.marketValue || '0';\n const isMarketValueGreaterThanZero = NumberUtil.bigNumber(marketValue).isGreaterThan('0');\n return html `\n <wui-flex class=\"${this.focused ? 'focus' : ''}\" justifyContent=\"space-between\">\n <wui-flex\n flex=\"1\"\n flexDirection=\"column\"\n alignItems=\"flex-start\"\n justifyContent=\"center\"\n class=\"swap-input\"\n >\n <input\n data-testid=\"swap-input-${this.target}\"\n @focusin=${() => this.onFocusChange(true)}\n @focusout=${() => this.onFocusChange(false)}\n ?disabled=${this.disabled}\n .value=${this.value}\n @input=${this.dispatchInputChangeEvent}\n @keydown=${this.handleKeydown}\n placeholder=\"0\"\n type=\"text\"\n inputmode=\"decimal\"\n />\n <wui-text class=\"market-value\" variant=\"small-400\" color=\"fg-200\">\n ${isMarketValueGreaterThanZero\n ? `$${UiHelperUtil.formatNumberToLocalString(this.marketValue, 2)}`\n : null}\n </wui-text>\n </wui-flex>\n ${this.templateTokenSelectButton()}\n </wui-flex>\n `;\n }\n handleKeydown(event) {\n return InputUtil.numericInputKeyDown(event, this.value, (value) => this.onSetAmount?.(this.target, value));\n }\n dispatchInputChangeEvent(event) {\n if (!this.onSetAmount) {\n return;\n }\n const value = event.target.value.replace(/[^0-9.]/gu, '');\n if (value === ',' || value === '.') {\n this.onSetAmount(this.target, '0.');\n }\n else if (value.endsWith(',')) {\n this.onSetAmount(this.target, value.replace(',', '.'));\n }\n else {\n this.onSetAmount(this.target, value);\n }\n }\n setMaxValueToInput() {\n this.onSetMaxValue?.(this.target, this.balance);\n }\n templateTokenSelectButton() {\n if (!this.token) {\n return html ` <wui-button\n data-testid=\"swap-select-token-button-${this.target}\"\n class=\"swap-token-button\"\n size=\"md\"\n variant=\"accent\"\n @click=${this.onSelectToken.bind(this)}\n >\n Select token\n </wui-button>`;\n }\n return html `\n <wui-flex\n class=\"swap-token-button\"\n flexDirection=\"column\"\n alignItems=\"flex-end\"\n justifyContent=\"center\"\n gap=\"xxs\"\n >\n <wui-token-button\n data-testid=\"swap-input-token-${this.target}\"\n text=${this.token.symbol}\n imageSrc=${this.token.logoUri}\n @click=${this.onSelectToken.bind(this)}\n >\n </wui-token-button>\n <wui-flex alignItems=\"center\" gap=\"xxs\"> ${this.tokenBalanceTemplate()} </wui-flex>\n </wui-flex>\n `;\n }\n tokenBalanceTemplate() {\n const balanceValueInUSD = NumberUtil.multiply(this.balance, this.price);\n const haveBalance = balanceValueInUSD\n ? balanceValueInUSD?.isGreaterThan(MINIMUM_USD_VALUE_TO_CONVERT)\n : false;\n return html `\n ${haveBalance\n ? html `<wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.balance, 2)}\n </wui-text>`\n : null}\n ${this.target === 'sourceToken' ? this.tokenActionButtonTemplate(haveBalance) : null}\n `;\n }\n tokenActionButtonTemplate(haveBalance) {\n if (haveBalance) {\n return html ` <button class=\"max-value-button\" @click=${this.setMaxValueToInput.bind(this)}>\n <wui-text color=\"accent-100\" variant=\"small-600\">Max</wui-text>\n </button>`;\n }\n return html ` <button class=\"max-value-button\" @click=${this.onBuyToken.bind(this)}>\n <wui-text color=\"accent-100\" variant=\"small-600\">Buy</wui-text>\n </button>`;\n }\n onFocusChange(state) {\n this.focused = state;\n }\n onSelectToken() {\n EventsController.sendEvent({ type: 'track', event: 'CLICK_SELECT_TOKEN_TO_SWAP' });\n RouterController.push('SwapSelectToken', {\n target: this.target\n });\n }\n onBuyToken() {\n RouterController.push('OnRampProviders');\n }\n};\nW3mSwapInput.styles = [styles];\n__decorate([\n property()\n], W3mSwapInput.prototype, \"focused\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"balance\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"value\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"price\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"marketValue\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"disabled\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"target\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"token\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"onSetAmount\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"onSetMaxValue\", void 0);\nW3mSwapInput = __decorate([\n customElement('w3m-swap-input')\n], W3mSwapInput);\nexport { W3mSwapInput };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .action-button {\n width: 100%;\n border-radius: var(--wui-border-radius-xs);\n }\n\n .action-button:disabled {\n border-color: 1px solid var(--wui-color-gray-glass-005);\n }\n\n .swap-inputs-container {\n position: relative;\n }\n\n .replace-tokens-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n gap: var(--wui-spacing-1xs);\n border-radius: var(--wui-border-radius-xs);\n background-color: var(--wui-color-modal-bg-base);\n padding: var(--wui-spacing-xxs);\n }\n\n .replace-tokens-button-container > button {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n padding: var(--wui-spacing-xs);\n border: none;\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\n transition: background-color var(--wui-duration-md) var(--wui-ease-out-power-1);\n will-change: background-color;\n z-index: 20;\n }\n\n .replace-tokens-button-container > button:hover {\n background: var(--wui-color-gray-glass-005);\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n transition: background 0.2s linear;\n }\n\n .details-container > wui-flex > button:hover {\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\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 { NumberUtil } from '@reown/appkit-common';\nimport { AccountController, ChainController, CoreHelperUtil, EventsController, ModalController, RouterController, SwapController } from '@reown/appkit-core';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport { W3mFrameRpcConstants } from '@reown/appkit-wallet/utils';\nimport '../../partials/w3m-swap-details/index.js';\nimport '../../partials/w3m-swap-input-skeleton/index.js';\nimport '../../partials/w3m-swap-input/index.js';\nimport styles from './styles.js';\nlet W3mSwapView = class W3mSwapView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.detailsOpen = false;\n this.caipNetworkId = ChainController.state.activeCaipNetwork?.caipNetworkId;\n this.initialized = SwapController.state.initialized;\n this.loadingQuote = SwapController.state.loadingQuote;\n this.loadingPrices = SwapController.state.loadingPrices;\n this.loadingTransaction = SwapController.state.loadingTransaction;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount;\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount;\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.inputError = SwapController.state.inputError;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.fetchError = SwapController.state.fetchError;\n this.onDebouncedGetSwapCalldata = CoreHelperUtil.debounce(async () => {\n await SwapController.swapTokens();\n }, 200);\n ChainController.subscribeKey('activeCaipNetwork', newCaipNetwork => {\n if (this.caipNetworkId !== newCaipNetwork?.caipNetworkId) {\n this.caipNetworkId = newCaipNetwork?.caipNetworkId;\n SwapController.resetState();\n SwapController.initializeState();\n }\n });\n this.unsubscribe.push(...[\n ModalController.subscribeKey('open', isOpen => {\n if (!isOpen) {\n SwapController.resetState();\n }\n }),\n RouterController.subscribeKey('view', newRoute => {\n if (!newRoute.includes('Swap')) {\n SwapController.resetValues();\n }\n }),\n SwapController.subscribe(newState => {\n this.initialized = newState.initialized;\n this.loadingQuote = newState.loadingQuote;\n this.loadingPrices = newState.loadingPrices;\n this.loadingTransaction = newState.loadingTransaction;\n this.sourceToken = newState.sourceToken;\n this.sourceTokenAmount = newState.sourceTokenAmount;\n this.sourceTokenPriceInUSD = newState.sourceTokenPriceInUSD;\n this.toToken = newState.toToken;\n this.toTokenAmount = newState.toTokenAmount;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.inputError = newState.inputError;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.fetchError = newState.fetchError;\n })\n ]);\n }\n firstUpdated() {\n SwapController.initializeState();\n this.watchTokensAndValues();\n }\n disconnectedCallback() {\n this.unsubscribe.forEach(unsubscribe => unsubscribe?.());\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'l', 'l', 'l']} gap=\"s\">\n ${this.initialized ? this.templateSwap() : this.templateLoading()}\n </wui-flex>\n `;\n }\n watchTokensAndValues() {\n this.interval = setInterval(() => {\n SwapController.getNetworkTokenPrice();\n SwapController.getMyTokensWithBalance();\n SwapController.swapTokens();\n }, 10000);\n }\n templateSwap() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"s\">\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"xs\" class=\"swap-inputs-container\">\n ${this.templateTokenInput('sourceToken', this.sourceToken)}\n ${this.templateTokenInput('toToken', this.toToken)} ${this.templateReplaceTokensButton()}\n </wui-flex>\n ${this.templateDetails()} ${this.templateActionButton()}\n </wui-flex>\n `;\n }\n actionButtonLabel() {\n if (this.fetchError) {\n return 'Swap';\n }\n if (!this.sourceToken || !this.toToken) {\n return 'Select token';\n }\n if (!this.sourceTokenAmount) {\n return 'Enter amount';\n }\n if (this.inputError) {\n return this.inputError;\n }\n return 'Review swap';\n }\n templateReplaceTokensButton() {\n return html `\n <wui-flex class=\"replace-tokens-button-container\">\n <button @click=${this.onSwitchTokens.bind(this)}>\n <wui-icon name=\"recycleHorizontal\" color=\"fg-250\" size=\"lg\"></wui-icon>\n </button>\n </wui-flex>\n `;\n }\n templateLoading() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"l\">\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"xs\" class=\"swap-inputs-container\">\n <w3m-swap-input-skeleton target=\"sourceToken\"></w3m-swap-input-skeleton>\n <w3m-swap-input-skeleton target=\"toToken\"></w3m-swap-input-skeleton>\n ${this.templateReplaceTokensButton()}\n </wui-flex>\n ${this.templateActionButton()}\n </wui-flex>\n `;\n }\n templateTokenInput(target, token) {\n const myToken = SwapController.state.myTokensWithBalance?.find(ct => ct?.address === token?.address);\n const amount = target === 'toToken' ? this.toTokenAmount : this.sourceTokenAmount;\n const price = target === 'toToken' ? this.toTokenPriceInUSD : this.sourceTokenPriceInUSD;\n const marketValue = NumberUtil.parseLocalStringToNumber(amount) * price;\n return html `<w3m-swap-input\n .value=${target === 'toToken' ? this.toTokenAmount : this.sourceTokenAmount}\n .disabled=${target === 'toToken'}\n .onSetAmount=${this.handleChangeAmount.bind(this)}\n target=${target}\n .token=${token}\n .balance=${myToken?.quantity?.numeric}\n .price=${myToken?.price}\n .marketValue=${marketValue}\n .onSetMaxValue=${this.onSetMaxValue.bind(this)}\n ></w3m-swap-input>`;\n }\n onSetMaxValue(target, balance) {\n const token = target === 'sourceToken' ? this.sourceToken : this.toToken;\n const isNetworkToken = token?.address === ChainController.getActiveNetworkTokenAddress();\n let value = '0';\n if (!balance) {\n value = '0';\n this.handleChangeAmount(target, value);\n return;\n }\n if (!this.gasPriceInUSD) {\n value = balance;\n this.handleChangeAmount(target, value);\n return;\n }\n const amountOfTokenGasRequires = NumberUtil.bigNumber(this.gasPriceInUSD.toFixed(5)).dividedBy(this.sourceTokenPriceInUSD);\n const maxValue = isNetworkToken\n ? NumberUtil.bigNumber(balance).minus(amountOfTokenGasRequires)\n : NumberUtil.bigNumber(balance);\n this.handleChangeAmount(target, maxValue.isGreaterThan(0) ? maxValue.toFixed(20) : '0');\n }\n templateDetails() {\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n return html `<w3m-swap-details .detailsOpen=${this.detailsOpen}></w3m-swap-details>`;\n }\n handleChangeAmount(target, value) {\n SwapController.clearError();\n if (target === 'sourceToken') {\n SwapController.setSourceTokenAmount(value);\n }\n else {\n SwapController.setToTokenAmount(value);\n }\n this.onDebouncedGetSwapCalldata();\n }\n templateActionButton() {\n const haveNoTokenSelected = !this.toToken || !this.sourceToken;\n const haveNoAmount = !this.sourceTokenAmount;\n const loading = this.loadingQuote || this.loadingPrices || this.loadingTransaction;\n const disabled = loading || haveNoTokenSelected || haveNoAmount || this.inputError;\n return html ` <wui-flex gap=\"xs\">\n <wui-button\n data-testid=\"swap-action-button\"\n class=\"action-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=${haveNoTokenSelected ? 'neutral' : 'main'}\n .loading=${loading}\n .disabled=${disabled}\n @click=${this.onSwapPreview.bind(this)}\n >\n ${this.actionButtonLabel()}\n </wui-button>\n </wui-flex>`;\n }\n onSwitchTokens() {\n SwapController.switchTokens();\n }\n onSwapPreview() {\n if (this.fetchError) {\n SwapController.swapTokens();\n return;\n }\n EventsController.sendEvent({\n type: 'track',\n event: 'INITIATE_SWAP',\n properties: {\n network: this.caipNetworkId || '',\n swapFromToken: this.sourceToken?.symbol || '',\n swapToToken: this.toToken?.symbol || '',\n swapFromAmount: this.sourceTokenAmount || '',\n swapToAmount: this.toTokenAmount || '',\n isSmartAccount: AccountController.state.preferredAccountType ===\n W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT\n }\n });\n RouterController.push('SwapPreview');\n }\n};\nW3mSwapView.styles = styles;\n__decorate([\n state()\n], W3mSwapView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"caipNetworkId\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"initialized\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingQuote\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingPrices\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"inputError\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"fetchError\", void 0);\nW3mSwapView = __decorate([\n customElement('w3m-swap-view')\n], W3mSwapView);\nexport { W3mSwapView };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n .preview-container,\n .details-container {\n width: 100%;\n }\n\n .token-image {\n width: 24px;\n height: 24px;\n box-shadow: 0 0 0 2px var(--wui-color-gray-glass-005);\n border-radius: 12px;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .token-item {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wui-spacing-xxs);\n padding: var(--wui-spacing-xs);\n height: 40px;\n border: none;\n border-radius: 80px;\n background: var(--wui-color-gray-glass-002);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-002);\n cursor: pointer;\n transition: background 0.2s linear;\n }\n\n .token-item:hover {\n background: var(--wui-color-gray-glass-005);\n }\n\n .preview-token-details-container {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\n }\n\n .action-buttons-container {\n width: 100%;\n gap: var(--wui-spacing-xs);\n }\n\n .action-buttons-container > button {\n display: flex;\n align-items: center;\n justify-content: center;\n background: transparent;\n height: 48px;\n border-radius: var(--wui-border-radius-xs);\n border: none;\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\n }\n\n .action-buttons-container > button:disabled {\n opacity: 0.8;\n cursor: not-allowed;\n }\n\n .action-button > wui-loading-spinner {\n display: inline-block;\n }\n\n .cancel-button:hover,\n .action-button:hover {\n cursor: pointer;\n }\n\n .action-buttons-container > wui-button.cancel-button {\n flex: 2;\n }\n\n .action-buttons-container > wui-button.action-button {\n flex: 4;\n }\n\n .action-buttons-container > button.action-button > wui-text {\n color: white;\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n transition: background 0.2s linear;\n }\n\n .details-container > wui-flex > button:hover {\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\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 { AccountController, ChainController, RouterController, SwapController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport '../../partials/w3m-swap-details/index.js';\nimport styles from './styles.js';\nlet W3mSwapPreviewView = class W3mSwapPreviewView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.detailsOpen = true;\n this.approvalTransaction = SwapController.state.approvalTransaction;\n this.swapTransaction = SwapController.state.swapTransaction;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount ?? '';\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount ?? '';\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.caipNetwork = ChainController.state.activeCaipNetwork;\n this.balanceSymbol = AccountController.state.balanceSymbol;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.inputError = SwapController.state.inputError;\n this.loadingQuote = SwapController.state.loadingQuote;\n this.loadingApprovalTransaction = SwapController.state.loadingApprovalTransaction;\n this.loadingBuildTransaction = SwapController.state.loadingBuildTransaction;\n this.loadingTransaction = SwapController.state.loadingTransaction;\n this.unsubscribe.push(...[\n AccountController.subscribeKey('balanceSymbol', newBalanceSymbol => {\n if (this.balanceSymbol !== newBalanceSymbol) {\n RouterController.goBack();\n }\n }),\n ChainController.subscribeKey('activeCaipNetwork', newCaipNetwork => {\n if (this.caipNetwork !== newCaipNetwork) {\n this.caipNetwork = newCaipNetwork;\n }\n }),\n SwapController.subscribe(newState => {\n this.approvalTransaction = newState.approvalTransaction;\n this.swapTransaction = newState.swapTransaction;\n this.sourceToken = newState.sourceToken;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.toToken = newState.toToken;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.sourceTokenAmount = newState.sourceTokenAmount ?? '';\n this.toTokenAmount = newState.toTokenAmount ?? '';\n this.inputError = newState.inputError;\n if (newState.inputError) {\n RouterController.goBack();\n }\n this.loadingQuote = newState.loadingQuote;\n this.loadingApprovalTransaction = newState.loadingApprovalTransaction;\n this.loadingBuildTransaction = newState.loadingBuildTransaction;\n this.loadingTransaction = newState.loadingTransaction;\n })\n ]);\n }\n firstUpdated() {\n SwapController.getTransaction();\n this.refreshTransaction();\n }\n disconnectedCallback() {\n this.unsubscribe.forEach(unsubscribe => unsubscribe?.());\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'l', 'l', 'l']} gap=\"s\">\n ${this.templateSwap()}\n </wui-flex>\n `;\n }\n refreshTransaction() {\n this.interval = setInterval(() => {\n if (!SwapController.getApprovalLoadingState()) {\n SwapController.getTransaction();\n }\n }, 10000);\n }\n templateSwap() {\n const sourceTokenText = `${UiHelperUtil.formatNumberToLocalString(parseFloat(this.sourceTokenAmount))} ${this.sourceToken?.symbol}`;\n const toTokenText = `${UiHelperUtil.formatNumberToLocalString(parseFloat(this.toTokenAmount))} ${this.toToken?.symbol}`;\n const sourceTokenValue = parseFloat(this.sourceTokenAmount) * this.sourceTokenPriceInUSD;\n const toTokenValue = parseFloat(this.toTokenAmount) * this.toTokenPriceInUSD - (this.gasPriceInUSD || 0);\n const sentPrice = UiHelperUtil.formatNumberToLocalString(sourceTokenValue);\n const receivePrice = UiHelperUtil.formatNumberToLocalString(toTokenValue);\n const loading = this.loadingQuote ||\n this.loadingBuildTransaction ||\n this.loadingTransaction ||\n this.loadingApprovalTransaction;\n return html `\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"l\">\n <wui-flex class=\"preview-container\" flexDirection=\"column\" alignItems=\"flex-start\" gap=\"l\">\n <wui-flex\n class=\"preview-token-details-container\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"l\"\n >\n <wui-flex flexDirection=\"column\" alignItems=\"flex-start\" gap=\"4xs\">\n <wui-text variant=\"small-400\" color=\"fg-150\">Send</wui-text>\n <wui-text variant=\"paragraph-400\" color=\"fg-100\">$${sentPrice}</wui-text>\n </wui-flex>\n <wui-token-button\n flexDirection=\"row-reverse\"\n text=${sourceTokenText}\n imageSrc=${this.sourceToken?.logoUri}\n >\n </wui-token-button>\n </wui-flex>\n <wui-icon name=\"recycleHorizontal\" color=\"fg-200\" size=\"md\"></wui-icon>\n <wui-flex\n class=\"preview-token-details-container\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"l\"\n >\n <wui-flex flexDirection=\"column\" alignItems=\"flex-start\" gap=\"4xs\">\n <wui-text variant=\"small-400\" color=\"fg-150\">Receive</wui-text>\n <wui-text variant=\"paragraph-400\" color=\"fg-100\">$${receivePrice}</wui-text>\n </wui-flex>\n <wui-token-button\n flexDirection=\"row-reverse\"\n text=${toTokenText}\n imageSrc=${this.toToken?.logoUri}\n >\n </wui-token-button>\n </wui-flex>\n </wui-flex>\n\n ${this.templateDetails()}\n\n <wui-flex flexDirection=\"row\" alignItems=\"center\" justifyContent=\"center\" gap=\"xs\">\n <wui-icon size=\"sm\" color=\"fg-200\" name=\"infoCircle\"></wui-icon>\n <wui-text variant=\"small-400\" color=\"fg-200\">Review transaction carefully</wui-text>\n </wui-flex>\n\n <wui-flex\n class=\"action-buttons-container\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"xs\"\n >\n <wui-button\n class=\"cancel-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=\"neutral\"\n @click=${this.onCancelTransaction.bind(this)}\n >\n <wui-text variant=\"paragraph-600\" color=\"fg-200\">Cancel</wui-text>\n </wui-button>\n <wui-button\n class=\"action-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=\"main\"\n ?loading=${loading}\n ?disabled=${loading}\n @click=${this.onSendTransaction.bind(this)}\n >\n <wui-text variant=\"paragraph-600\" color=\"inverse-100\">\n ${this.actionButtonLabel()}\n </wui-text>\n </wui-button>\n </wui-flex>\n </wui-flex>\n `;\n }\n templateDetails() {\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n return html `<w3m-swap-details .detailsOpen=${this.detailsOpen}></w3m-swap-details>`;\n }\n actionButtonLabel() {\n if (this.loadingApprovalTransaction) {\n return 'Approving...';\n }\n if (this.approvalTransaction) {\n return 'Approve';\n }\n return 'Swap';\n }\n onCancelTransaction() {\n RouterController.goBack();\n }\n onSendTransaction() {\n if (this.approvalTransaction) {\n SwapController.sendTransactionForApproval(this.approvalTransaction);\n }\n else {\n SwapController.sendTransactionForSwap(this.swapTransaction);\n }\n }\n};\nW3mSwapPreviewView.styles = styles;\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"approvalTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"swapTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"caipNetwork\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"balanceSymbol\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"inputError\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingQuote\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingApprovalTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingBuildTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingTransaction\", void 0);\nW3mSwapPreviewView = __decorate([\n customElement('w3m-swap-preview-view')\n], W3mSwapPreviewView);\nexport { W3mSwapPreviewView };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n height: 60px;\n min-height: 60px;\n }\n\n :host > wui-flex {\n cursor: pointer;\n height: 100%;\n display: flex;\n column-gap: var(--wui-spacing-s);\n padding: var(--wui-spacing-xs);\n padding-right: var(--wui-spacing-l);\n width: 100%;\n background-color: transparent;\n border-radius: var(--wui-border-radius-xs);\n color: var(--wui-color-fg-250);\n transition:\n background-color var(--wui-ease-out-power-1) var(--wui-duration-lg),\n opacity var(--wui-ease-out-power-1) var(--wui-duration-lg);\n will-change: background-color, opacity;\n }\n\n @media (hover: hover) and (pointer: fine) {\n :host > wui-flex:hover {\n background-color: var(--wui-color-gray-glass-002);\n }\n\n :host > wui-flex:active {\n background-color: var(--wui-color-gray-glass-005);\n }\n }\n\n :host([disabled]) > wui-flex {\n opacity: 0.6;\n }\n\n :host([disabled]) > wui-flex:hover {\n background-color: transparent;\n }\n\n :host > wui-flex > wui-flex {\n flex: 1;\n }\n\n :host > wui-flex > wui-image,\n :host > wui-flex > .token-item-image-placeholder {\n width: 40px;\n max-width: 40px;\n height: 40px;\n border-radius: var(--wui-border-radius-3xl);\n position: relative;\n }\n\n :host > wui-flex > .token-item-image-placeholder {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n :host > wui-flex > wui-image::after,\n :host > wui-flex > .token-item-image-placeholder::after {\n position: absolute;\n content: '';\n inset: 0;\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\n border-radius: var(--wui-border-radius-l);\n }\n\n button > wui-icon-box[data-variant='square-blue'] {\n border-radius: var(--wui-border-radius-3xs);\n position: relative;\n border: none;\n width: 36px;\n height: 36px;\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 { NumberUtil } from '@reown/appkit-common';\nimport '../../components/wui-icon/index.js';\nimport '../../components/wui-image/index.js';\nimport '../../components/wui-text/index.js';\nimport '../../layout/wui-flex/index.js';\nimport { elementStyles, resetStyles } from '../../utils/ThemeUtil.js';\nimport { UiHelperUtil } from '../../utils/UiHelperUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiTokenListItem = class WuiTokenListItem extends LitElement {\n constructor() {\n super();\n this.observer = new IntersectionObserver(() => undefined);\n this.imageSrc = undefined;\n this.name = undefined;\n this.symbol = undefined;\n this.price = undefined;\n this.amount = undefined;\n this.visible = false;\n this.imageError = false;\n this.observer = new IntersectionObserver(entries => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n this.visible = true;\n }\n else {\n this.visible = false;\n }\n });\n }, { threshold: 0.1 });\n }\n firstUpdated() {\n this.observer.observe(this);\n }\n disconnectedCallback() {\n this.observer.disconnect();\n }\n render() {\n if (!this.visible) {\n return null;\n }\n const value = this.amount && this.price ? NumberUtil.multiply(this.price, this.amount)?.toFixed(3) : null;\n return html `\n <wui-flex alignItems=\"center\">\n ${this.visualTemplate()}\n <wui-flex flexDirection=\"column\" gap=\"3xs\">\n <wui-flex justifyContent=\"space-between\">\n <wui-text variant=\"paragraph-500\" color=\"fg-100\" lineClamp=\"1\">${this.name}</wui-text>\n ${value\n ? html `\n <wui-text variant=\"paragraph-500\" color=\"fg-100\">\n $${UiHelperUtil.formatNumberToLocalString(value, 3)}\n </wui-text>\n `\n : null}\n </wui-flex>\n <wui-flex justifyContent=\"space-between\">\n <wui-text variant=\"small-400\" color=\"fg-200\" lineClamp=\"1\">${this.symbol}</wui-text>\n ${this.amount\n ? html `<wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.amount, 4)}\n </wui-text>`\n : null}\n </wui-flex>\n </wui-flex>\n </wui-flex>\n `;\n }\n visualTemplate() {\n if (this.imageError) {\n return html `<wui-flex class=\"token-item-image-placeholder\">\n <wui-icon name=\"image\" color=\"inherit\"></wui-icon>\n </wui-flex>`;\n }\n if (this.imageSrc) {\n return html `<wui-image\n width=\"40\"\n height=\"40\"\n src=${this.imageSrc}\n @onLoadError=${this.imageLoadError}\n ></wui-image>`;\n }\n return null;\n }\n imageLoadError() {\n this.imageError = true;\n }\n};\nWuiTokenListItem.styles = [resetStyles, elementStyles, styles];\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"imageSrc\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"name\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"symbol\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"price\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"amount\", void 0);\n__decorate([\n state()\n], WuiTokenListItem.prototype, \"visible\", void 0);\n__decorate([\n state()\n], WuiTokenListItem.prototype, \"imageError\", void 0);\nWuiTokenListItem = __decorate([\n customElement('wui-token-list-item')\n], WuiTokenListItem);\nexport { WuiTokenListItem };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n --tokens-scroll--top-opacity: 0;\n --tokens-scroll--bottom-opacity: 1;\n --suggested-tokens-scroll--left-opacity: 0;\n --suggested-tokens-scroll--right-opacity: 1;\n }\n\n :host > wui-flex:first-child {\n overflow-y: hidden;\n overflow-x: hidden;\n scrollbar-width: none;\n scrollbar-height: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .suggested-tokens-container {\n overflow-x: auto;\n mask-image: linear-gradient(\n to right,\n rgba(0, 0, 0, calc(1 - var(--suggested-tokens-scroll--left-opacity))) 0px,\n rgba(200, 200, 200, calc(1 - var(--suggested-tokens-scroll--left-opacity))) 1px,\n black 50px,\n black 90px,\n black calc(100% - 90px),\n black calc(100% - 50px),\n rgba(155, 155, 155, calc(1 - var(--suggested-tokens-scroll--right-opacity))) calc(100% - 1px),\n rgba(0, 0, 0, calc(1 - var(--suggested-tokens-scroll--right-opacity))) 100%\n );\n }\n\n .suggested-tokens-container::-webkit-scrollbar {\n display: none;\n }\n\n .tokens-container {\n border-top: 1px solid var(--wui-color-gray-glass-005);\n height: 100%;\n max-height: 390px;\n }\n\n .tokens {\n width: 100%;\n overflow-y: auto;\n mask-image: linear-gradient(\n to bottom,\n rgba(0, 0, 0, calc(1 - var(--tokens-scroll--top-opacity))) 0px,\n rgba(200, 200, 200, calc(1 - var(--tokens-scroll--top-opacity))) 1px,\n black 50px,\n black 90px,\n black calc(100% - 90px),\n black calc(100% - 50px),\n rgba(155, 155, 155, calc(1 - var(--tokens-scroll--bottom-opacity))) calc(100% - 1px),\n rgba(0, 0, 0, calc(1 - var(--tokens-scroll--bottom-opacity))) 100%\n );\n }\n\n .network-search-input,\n .select-network-button {\n height: 40px;\n }\n\n .select-network-button {\n border: none;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: var(--wui-spacing-xs);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005);\n background-color: transparent;\n border-radius: var(--wui-border-radius-xxs);\n padding: var(--wui-spacing-xs);\n align-items: center;\n transition: background-color 0.2s linear;\n }\n\n .select-network-button:hover {\n background-color: var(--wui-color-gray-glass-002);\n }\n\n .select-network-button > wui-image {\n width: 26px;\n height: 26px;\n border-radius: var(--wui-border-radius-xs);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\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, SwapController } from '@reown/appkit-core';\nimport { MathUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-input-text';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport '@reown/appkit-ui/wui-token-list-item';\nimport styles from './styles.js';\nlet W3mSwapSelectTokenView = class W3mSwapSelectTokenView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.targetToken = RouterController.state.data?.target;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount;\n this.toToken = SwapController.state.toToken;\n this.myTokensWithBalance = SwapController.state.myTokensWithBalance;\n this.popularTokens = SwapController.state.popularTokens;\n this.searchValue = '';\n this.unsubscribe.push(...[\n SwapController.subscribe(newState => {\n this.sourceToken = newState.sourceToken;\n this.toToken = newState.toToken;\n this.myTokensWithBalance = newState.myTokensWithBalance;\n })\n ]);\n }\n updated() {\n const suggestedTokensContainer = this.renderRoot?.querySelector('.suggested-tokens-container');\n suggestedTokensContainer?.addEventListener('scroll', this.handleSuggestedTokensScroll.bind(this));\n const tokensList = this.renderRoot?.querySelector('.tokens');\n tokensList?.addEventListener('scroll', this.handleTokenListScroll.bind(this));\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n const suggestedTokensContainer = this.renderRoot?.querySelector('.suggested-tokens-container');\n const tokensList = this.renderRoot?.querySelector('.tokens');\n suggestedTokensContainer?.removeEventListener('scroll', this.handleSuggestedTokensScroll.bind(this));\n tokensList?.removeEventListener('scroll', this.handleTokenListScroll.bind(this));\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"s\">\n ${this.templateSearchInput()} ${this.templateSuggestedTokens()} ${this.templateTokens()}\n </wui-flex>\n `;\n }\n onSelectToken(token) {\n if (this.targetToken === 'sourceToken') {\n SwapController.setSourceToken(token);\n }\n else {\n SwapController.setToToken(token);\n if (this.sourceToken && this.sourceTokenAmount) {\n SwapController.swapTokens();\n }\n }\n RouterController.goBack();\n }\n templateSearchInput() {\n return html `\n <wui-flex .padding=${['3xs', 's', '0', 's']} gap=\"xs\">\n <wui-input-text\n data-testid=\"swap-select-token-search-input\"\n class=\"network-search-input\"\n size=\"sm\"\n placeholder=\"Search token\"\n icon=\"search\"\n .value=${this.searchValue}\n @inputChange=${this.onSearchInputChange.bind(this)}\n ></wui-input-text>\n </wui-flex>\n `;\n }\n templateTokens() {\n const yourTokens = this.myTokensWithBalance ? Object.values(this.myTokensWithBalance) : [];\n const tokens = this.popularTokens ? this.popularTokens : [];\n const filteredYourTokens = this.filterTokensWithText(yourTokens, this.searchValue);\n const filteredTokens = this.filterTokensWithText(tokens, this.searchValue);\n return html `\n <wui-flex class=\"tokens-container\">\n <wui-flex class=\"tokens\" .padding=${['0', 's', 's', 's']} flexDirection=\"column\">\n ${filteredYourTokens?.length > 0\n ? html `\n <wui-flex justifyContent=\"flex-start\" padding=\"s\">\n <wui-text variant=\"paragraph-500\" color=\"fg-200\">Your tokens</wui-text>\n </wui-flex>\n ${filteredYourTokens.map(token => {\n const selected = token.symbol === this.sourceToken?.symbol ||\n token.symbol === this.toToken?.symbol;\n return html `\n <wui-token-list-item\n data-testid=\"swap-select-token-item-${token.symbol}\"\n name=${token.name}\n ?disabled=${selected}\n symbol=${token.symbol}\n price=${token?.price}\n amount=${token?.quantity?.numeric}\n imageSrc=${token.logoUri}\n @click=${() => {\n if (!selected) {\n this.onSelectToken(token);\n }\n }}\n >\n </wui-token-list-item>\n `;\n })}\n `\n : null}\n\n <wui-flex justifyContent=\"flex-start\" padding=\"s\">\n <wui-text variant=\"paragraph-500\" color=\"fg-200\">Tokens</wui-text>\n </wui-flex>\n ${filteredTokens?.length > 0\n ? filteredTokens.map(token => html `\n <wui-token-list-item\n data-testid=\"swap-select-token-item-${token.symbol}\"\n name=${token.name}\n symbol=${token.symbol}\n imageSrc=${token.logoUri}\n @click=${() => this.onSelectToken(token)}\n >\n </wui-token-list-item>\n `)\n : null}\n </wui-flex>\n </wui-flex>\n `;\n }\n templateSuggestedTokens() {\n const tokens = SwapController.state.suggestedTokens\n ? SwapController.state.suggestedTokens.slice(0, 8)\n : null;\n if (!tokens) {\n return null;\n }\n return html `\n <wui-flex class=\"suggested-tokens-container\" .padding=${['0', 's', '0', 's']} gap=\"xs\">\n ${tokens.map(token => html `\n <wui-token-button\n text=${token.symbol}\n imageSrc=${token.logoUri}\n @click=${() => this.onSelectToken(token)}\n >\n </wui-token-button>\n `)}\n </wui-flex>\n `;\n }\n onSearchInputChange(event) {\n this.searchValue = event.detail;\n }\n handleSuggestedTokensScroll() {\n const container = this.renderRoot?.querySelector('.suggested-tokens-container');\n if (!container) {\n return;\n }\n container.style.setProperty('--suggested-tokens-scroll--left-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollLeft).toString());\n container.style.setProperty('--suggested-tokens-scroll--right-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollWidth - container.scrollLeft - container.offsetWidth).toString());\n }\n handleTokenListScroll() {\n const container = this.renderRoot?.querySelector('.tokens');\n if (!container) {\n return;\n }\n container.style.setProperty('--tokens-scroll--top-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollTop).toString());\n container.style.setProperty('--tokens-scroll--bottom-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollHeight - container.scrollTop - container.offsetHeight).toString());\n }\n filterTokensWithText(tokens, text) {\n return tokens.filter(token => `${token.symbol} ${token.name} ${token.address}`.toLowerCase().includes(text.toLowerCase()));\n }\n};\nW3mSwapSelectTokenView.styles = styles;\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"targetToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"myTokensWithBalance\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"popularTokens\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"searchValue\", void 0);\nW3mSwapSelectTokenView = __decorate([\n customElement('w3m-swap-select-token-view')\n], W3mSwapSelectTokenView);\nexport { W3mSwapSelectTokenView };\n//# sourceMappingURL=index.js.map"],"names":["css","__decorate","r","i","WuiSwapDetails","LitElement","html","styles","state","property","W3mSwapInputSkeleton","W3mSwapInput","W3mSwapView","W3mSwapPreviewView","WuiTokenListItem","W3mSwapSelectTokenView"],"mappings":"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"}
1
+ {"version":3,"file":"swaps-BodIZ5Dv.js","sources":["../../common/dist/esm/src/utils/InputUtil.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-details/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-details/index.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input-skeleton/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input-skeleton/index.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input/styles.js","../../scaffold-ui/dist/esm/src/partials/w3m-swap-input/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-view/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-preview-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-preview-view/index.js","../../ui/dist/esm/src/composites/wui-token-list-item/styles.js","../../ui/dist/esm/src/composites/wui-token-list-item/index.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-select-token-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-swap-select-token-view/index.js"],"sourcesContent":["export const InputUtil = {\n numericInputKeyDown(event, currentValue, onChange) {\n const allowedKeys = [\n 'Backspace',\n 'Meta',\n 'Ctrl',\n 'a',\n 'A',\n 'c',\n 'C',\n 'x',\n 'X',\n 'v',\n 'V',\n 'ArrowLeft',\n 'ArrowRight',\n 'Tab'\n ];\n const controlPressed = event.metaKey || event.ctrlKey;\n const eventKey = event.key;\n const lowercaseEventKey = eventKey.toLocaleLowerCase();\n const selectAll = lowercaseEventKey === 'a';\n const copyKey = lowercaseEventKey === 'c';\n const pasteKey = lowercaseEventKey === 'v';\n const cutKey = lowercaseEventKey === 'x';\n const isComma = eventKey === ',';\n const isDot = eventKey === '.';\n const isNumericKey = eventKey >= '0' && eventKey <= '9';\n if (!controlPressed && (selectAll || copyKey || pasteKey || cutKey)) {\n event.preventDefault();\n }\n if (currentValue === '0' && !isComma && !isDot && eventKey === '0') {\n event.preventDefault();\n }\n if (currentValue === '0' && isNumericKey) {\n onChange(eventKey);\n event.preventDefault();\n }\n if (isComma || isDot) {\n if (!currentValue) {\n onChange('0.');\n event.preventDefault();\n }\n if (currentValue?.includes('.') || currentValue?.includes(',')) {\n event.preventDefault();\n }\n }\n if (!isNumericKey && !allowedKeys.includes(eventKey) && !isDot && !isComma) {\n event.preventDefault();\n }\n }\n};\n//# sourceMappingURL=InputUtil.js.map","import { css } from 'lit';\nexport default css `\n :host {\n width: 100%;\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n cursor: pointer;\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n padding-top: 0px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s);\n padding-left: var(--wui-spacing-s);\n padding-right: var(--wui-spacing-1xs);\n border-radius: calc(var(--wui-border-radius-5xs) + var(--wui-border-radius-4xs));\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-row-title {\n white-space: nowrap;\n }\n\n .details-row.provider-free-row {\n padding-right: var(--wui-spacing-xs);\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 { NumberUtil } from '@reown/appkit-common';\nimport { ChainController, ConstantsUtil, SwapController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport '../w3m-tooltip-trigger/index.js';\nimport '../w3m-tooltip/index.js';\nimport styles from './styles.js';\nconst slippageRate = ConstantsUtil.CONVERT_SLIPPAGE_TOLERANCE;\nlet WuiSwapDetails = class WuiSwapDetails extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.networkName = ChainController.state.activeCaipNetwork?.name;\n this.detailsOpen = false;\n this.sourceToken = SwapController.state.sourceToken;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount;\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.priceImpact = SwapController.state.priceImpact;\n this.maxSlippage = SwapController.state.maxSlippage;\n this.networkTokenSymbol = SwapController.state.networkTokenSymbol;\n this.inputError = SwapController.state.inputError;\n this.unsubscribe.push(...[\n SwapController.subscribe(newState => {\n this.sourceToken = newState.sourceToken;\n this.toToken = newState.toToken;\n this.toTokenAmount = newState.toTokenAmount;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.priceImpact = newState.priceImpact;\n this.maxSlippage = newState.maxSlippage;\n this.sourceTokenPriceInUSD = newState.sourceTokenPriceInUSD;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.inputError = newState.inputError;\n })\n ]);\n }\n render() {\n const minReceivedAmount = this.toTokenAmount && this.maxSlippage\n ? NumberUtil.bigNumber(this.toTokenAmount).minus(this.maxSlippage).toString()\n : null;\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n const toTokenSwappedAmount = this.sourceTokenPriceInUSD && this.toTokenPriceInUSD\n ? (1 / this.toTokenPriceInUSD) * this.sourceTokenPriceInUSD\n : 0;\n return html `\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"1xs\" class=\"details-container\">\n <wui-flex flexDirection=\"column\">\n <button @click=${this.toggleDetails.bind(this)}>\n <wui-flex justifyContent=\"space-between\" .padding=${['0', 'xs', '0', 'xs']}>\n <wui-flex justifyContent=\"flex-start\" flexGrow=\"1\" gap=\"xs\">\n <wui-text variant=\"small-400\" color=\"fg-100\">\n 1 ${this.sourceToken.symbol} =\n ${UiHelperUtil.formatNumberToLocalString(toTokenSwappedAmount, 3)}\n ${this.toToken.symbol}\n </wui-text>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n $${UiHelperUtil.formatNumberToLocalString(this.sourceTokenPriceInUSD)}\n </wui-text>\n </wui-flex>\n <wui-icon name=\"chevronBottom\"></wui-icon>\n </wui-flex>\n </button>\n ${this.detailsOpen\n ? html `\n <wui-flex flexDirection=\"column\" gap=\"xs\" class=\"details-content-container\">\n <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Network cost\n </wui-text>\n <w3m-tooltip-trigger\n text=${`Network cost is paid in ${this.networkTokenSymbol} on the ${this.networkName} network in order to execute transaction.`}\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-100\">\n $${UiHelperUtil.formatNumberToLocalString(this.gasPriceInUSD, 3)}\n </wui-text>\n </wui-flex>\n </wui-flex>\n ${this.priceImpact\n ? html ` <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Price impact\n </wui-text>\n <w3m-tooltip-trigger\n text=\"Price impact reflects the change in market price due to your trade\"\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.priceImpact, 3)}%\n </wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>`\n : null}\n ${this.maxSlippage && this.sourceToken.symbol\n ? html `<wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Max. slippage\n </wui-text>\n <w3m-tooltip-trigger\n text=${`Max slippage sets the minimum amount you must receive for the transaction to proceed. ${minReceivedAmount\n ? `Transaction will be reversed if you receive less than ${UiHelperUtil.formatNumberToLocalString(minReceivedAmount, 6)} ${this.toToken.symbol} due to price changes.`\n : ''}`}\n >\n <wui-icon size=\"xs\" color=\"fg-250\" name=\"infoCircle\"></wui-icon>\n </w3m-tooltip-trigger>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.maxSlippage, 6)}\n ${this.toToken.symbol} ${slippageRate}%\n </wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>`\n : null}\n <wui-flex flexDirection=\"column\" gap=\"xs\">\n <wui-flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n class=\"details-row provider-free-row\"\n >\n <wui-flex alignItems=\"center\" gap=\"xs\">\n <wui-text class=\"details-row-title\" variant=\"small-400\" color=\"fg-150\">\n Provider fee\n </wui-text>\n </wui-flex>\n <wui-flex>\n <wui-text variant=\"small-400\" color=\"fg-200\">0.85%</wui-text>\n </wui-flex>\n </wui-flex>\n </wui-flex>\n </wui-flex>\n `\n : null}\n </wui-flex>\n </wui-flex>\n `;\n }\n toggleDetails() {\n this.detailsOpen = !this.detailsOpen;\n }\n};\nWuiSwapDetails.styles = [styles];\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"networkName\", void 0);\n__decorate([\n property()\n], WuiSwapDetails.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"priceImpact\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"maxSlippage\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"networkTokenSymbol\", void 0);\n__decorate([\n state()\n], WuiSwapDetails.prototype, \"inputError\", void 0);\nWuiSwapDetails = __decorate([\n customElement('w3m-swap-details')\n], WuiSwapDetails);\nexport { WuiSwapDetails };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n width: 100%;\n }\n\n :host > wui-flex {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-radius: var(--wui-border-radius-s);\n padding: var(--wui-spacing-xl);\n padding-right: var(--wui-spacing-s);\n background-color: var(--wui-color-gray-glass-002);\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-002);\n width: 100%;\n height: 100px;\n box-sizing: border-box;\n position: relative;\n }\n\n wui-shimmer.market-value {\n opacity: 0;\n }\n\n :host > wui-flex > svg.input_mask {\n position: absolute;\n inset: 0;\n z-index: 5;\n }\n\n :host wui-flex .input_mask__border,\n :host wui-flex .input_mask__background {\n transition: fill var(--wui-duration-md) var(--wui-ease-out-power-1);\n will-change: fill;\n }\n\n :host wui-flex .input_mask__border {\n fill: var(--wui-color-gray-glass-020);\n }\n\n :host wui-flex .input_mask__background {\n fill: var(--wui-color-gray-glass-002);\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 {} from '@reown/appkit-core';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-shimmer';\nimport styles from './styles.js';\nlet W3mSwapInputSkeleton = class W3mSwapInputSkeleton extends LitElement {\n constructor() {\n super(...arguments);\n this.target = 'sourceToken';\n }\n render() {\n return html `\n <wui-flex class justifyContent=\"space-between\">\n <wui-flex\n flex=\"1\"\n flexDirection=\"column\"\n alignItems=\"flex-start\"\n justifyContent=\"center\"\n class=\"swap-input\"\n gap=\"xxs\"\n >\n <wui-shimmer width=\"80px\" height=\"40px\" borderRadius=\"xxs\" variant=\"light\"></wui-shimmer>\n </wui-flex>\n ${this.templateTokenSelectButton()}\n </wui-flex>\n `;\n }\n templateTokenSelectButton() {\n return html `\n <wui-flex\n class=\"swap-token-button\"\n flexDirection=\"column\"\n alignItems=\"flex-end\"\n justifyContent=\"center\"\n gap=\"xxs\"\n >\n <wui-shimmer width=\"80px\" height=\"40px\" borderRadius=\"3xl\" variant=\"light\"></wui-shimmer>\n </wui-flex>\n `;\n }\n};\nW3mSwapInputSkeleton.styles = [styles];\n__decorate([\n property()\n], W3mSwapInputSkeleton.prototype, \"target\", void 0);\nW3mSwapInputSkeleton = __decorate([\n customElement('w3m-swap-input-skeleton')\n], W3mSwapInputSkeleton);\nexport { W3mSwapInputSkeleton };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-radius: var(--wui-border-radius-s);\n background-color: var(--wui-color-gray-glass-002);\n padding: var(--wui-spacing-xl);\n padding-right: var(--wui-spacing-s);\n width: 100%;\n height: 100px;\n box-sizing: border-box;\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-002);\n position: relative;\n transition: box-shadow var(--wui-ease-out-power-1) var(--wui-duration-lg);\n will-change: background-color;\n }\n\n :host wui-flex.focus {\n box-shadow: inset 0px 0px 0px 1px var(--wui-color-gray-glass-005);\n }\n\n :host > wui-flex .swap-input,\n :host > wui-flex .swap-token-button {\n z-index: 10;\n }\n\n :host > wui-flex .swap-input {\n -webkit-mask-image: linear-gradient(\n 270deg,\n transparent 0px,\n transparent 8px,\n black 24px,\n black 25px,\n black 32px,\n black 100%\n );\n mask-image: linear-gradient(\n 270deg,\n transparent 0px,\n transparent 8px,\n black 24px,\n black 25px,\n black 32px,\n black 100%\n );\n }\n\n :host > wui-flex .swap-input input {\n background: none;\n border: none;\n height: 42px;\n width: 100%;\n font-size: 32px;\n font-style: normal;\n font-weight: 400;\n line-height: 130%;\n letter-spacing: -1.28px;\n outline: none;\n caret-color: var(--wui-color-accent-100);\n color: var(--wui-color-fg-100);\n padding: 0px;\n }\n\n :host > wui-flex .swap-input input:focus-visible {\n outline: none;\n }\n\n :host > wui-flex .swap-input input::-webkit-outer-spin-button,\n :host > wui-flex .swap-input input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n .max-value-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n color: var(--wui-color-gray-glass-020);\n padding-left: 0px;\n }\n\n .market-value {\n min-height: 18px;\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 { InputUtil, NumberUtil } from '@reown/appkit-common';\nimport { EventsController, RouterController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport styles from './styles.js';\nconst MINIMUM_USD_VALUE_TO_CONVERT = 0.00005;\nlet W3mSwapInput = class W3mSwapInput extends LitElement {\n constructor() {\n super(...arguments);\n this.focused = false;\n this.price = 0;\n this.target = 'sourceToken';\n this.onSetAmount = null;\n this.onSetMaxValue = null;\n }\n render() {\n const marketValue = this.marketValue || '0';\n const isMarketValueGreaterThanZero = NumberUtil.bigNumber(marketValue).isGreaterThan('0');\n return html `\n <wui-flex class=\"${this.focused ? 'focus' : ''}\" justifyContent=\"space-between\">\n <wui-flex\n flex=\"1\"\n flexDirection=\"column\"\n alignItems=\"flex-start\"\n justifyContent=\"center\"\n class=\"swap-input\"\n >\n <input\n data-testid=\"swap-input-${this.target}\"\n @focusin=${() => this.onFocusChange(true)}\n @focusout=${() => this.onFocusChange(false)}\n ?disabled=${this.disabled}\n .value=${this.value}\n @input=${this.dispatchInputChangeEvent}\n @keydown=${this.handleKeydown}\n placeholder=\"0\"\n type=\"text\"\n inputmode=\"decimal\"\n />\n <wui-text class=\"market-value\" variant=\"small-400\" color=\"fg-200\">\n ${isMarketValueGreaterThanZero\n ? `$${UiHelperUtil.formatNumberToLocalString(this.marketValue, 2)}`\n : null}\n </wui-text>\n </wui-flex>\n ${this.templateTokenSelectButton()}\n </wui-flex>\n `;\n }\n handleKeydown(event) {\n return InputUtil.numericInputKeyDown(event, this.value, (value) => this.onSetAmount?.(this.target, value));\n }\n dispatchInputChangeEvent(event) {\n if (!this.onSetAmount) {\n return;\n }\n const value = event.target.value.replace(/[^0-9.]/gu, '');\n if (value === ',' || value === '.') {\n this.onSetAmount(this.target, '0.');\n }\n else if (value.endsWith(',')) {\n this.onSetAmount(this.target, value.replace(',', '.'));\n }\n else {\n this.onSetAmount(this.target, value);\n }\n }\n setMaxValueToInput() {\n this.onSetMaxValue?.(this.target, this.balance);\n }\n templateTokenSelectButton() {\n if (!this.token) {\n return html ` <wui-button\n data-testid=\"swap-select-token-button-${this.target}\"\n class=\"swap-token-button\"\n size=\"md\"\n variant=\"accent\"\n @click=${this.onSelectToken.bind(this)}\n >\n Select token\n </wui-button>`;\n }\n return html `\n <wui-flex\n class=\"swap-token-button\"\n flexDirection=\"column\"\n alignItems=\"flex-end\"\n justifyContent=\"center\"\n gap=\"xxs\"\n >\n <wui-token-button\n data-testid=\"swap-input-token-${this.target}\"\n text=${this.token.symbol}\n imageSrc=${this.token.logoUri}\n @click=${this.onSelectToken.bind(this)}\n >\n </wui-token-button>\n <wui-flex alignItems=\"center\" gap=\"xxs\"> ${this.tokenBalanceTemplate()} </wui-flex>\n </wui-flex>\n `;\n }\n tokenBalanceTemplate() {\n const balanceValueInUSD = NumberUtil.multiply(this.balance, this.price);\n const haveBalance = balanceValueInUSD\n ? balanceValueInUSD?.isGreaterThan(MINIMUM_USD_VALUE_TO_CONVERT)\n : false;\n return html `\n ${haveBalance\n ? html `<wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.balance, 2)}\n </wui-text>`\n : null}\n ${this.target === 'sourceToken' ? this.tokenActionButtonTemplate(haveBalance) : null}\n `;\n }\n tokenActionButtonTemplate(haveBalance) {\n if (haveBalance) {\n return html ` <button class=\"max-value-button\" @click=${this.setMaxValueToInput.bind(this)}>\n <wui-text color=\"accent-100\" variant=\"small-600\">Max</wui-text>\n </button>`;\n }\n return html ` <button class=\"max-value-button\" @click=${this.onBuyToken.bind(this)}>\n <wui-text color=\"accent-100\" variant=\"small-600\">Buy</wui-text>\n </button>`;\n }\n onFocusChange(state) {\n this.focused = state;\n }\n onSelectToken() {\n EventsController.sendEvent({ type: 'track', event: 'CLICK_SELECT_TOKEN_TO_SWAP' });\n RouterController.push('SwapSelectToken', {\n target: this.target\n });\n }\n onBuyToken() {\n RouterController.push('OnRampProviders');\n }\n};\nW3mSwapInput.styles = [styles];\n__decorate([\n property()\n], W3mSwapInput.prototype, \"focused\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"balance\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"value\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"price\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"marketValue\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"disabled\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"target\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"token\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"onSetAmount\", void 0);\n__decorate([\n property()\n], W3mSwapInput.prototype, \"onSetMaxValue\", void 0);\nW3mSwapInput = __decorate([\n customElement('w3m-swap-input')\n], W3mSwapInput);\nexport { W3mSwapInput };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .action-button {\n width: 100%;\n border-radius: var(--wui-border-radius-xs);\n }\n\n .action-button:disabled {\n border-color: 1px solid var(--wui-color-gray-glass-005);\n }\n\n .swap-inputs-container {\n position: relative;\n }\n\n .replace-tokens-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n gap: var(--wui-spacing-1xs);\n border-radius: var(--wui-border-radius-xs);\n background-color: var(--wui-color-modal-bg-base);\n padding: var(--wui-spacing-xxs);\n }\n\n .replace-tokens-button-container > button {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n padding: var(--wui-spacing-xs);\n border: none;\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\n transition: background-color var(--wui-duration-md) var(--wui-ease-out-power-1);\n will-change: background-color;\n z-index: 20;\n }\n\n .replace-tokens-button-container > button:hover {\n background: var(--wui-color-gray-glass-005);\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n transition: background 0.2s linear;\n }\n\n .details-container > wui-flex > button:hover {\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\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 { NumberUtil } from '@reown/appkit-common';\nimport { AccountController, ChainController, CoreHelperUtil, EventsController, ModalController, RouterController, SwapController } from '@reown/appkit-core';\nimport { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport { W3mFrameRpcConstants } from '@reown/appkit-wallet/utils';\nimport '../../partials/w3m-swap-details/index.js';\nimport '../../partials/w3m-swap-input-skeleton/index.js';\nimport '../../partials/w3m-swap-input/index.js';\nimport styles from './styles.js';\nlet W3mSwapView = class W3mSwapView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.detailsOpen = false;\n this.caipNetworkId = ChainController.state.activeCaipNetwork?.caipNetworkId;\n this.initialized = SwapController.state.initialized;\n this.loadingQuote = SwapController.state.loadingQuote;\n this.loadingPrices = SwapController.state.loadingPrices;\n this.loadingTransaction = SwapController.state.loadingTransaction;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount;\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount;\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.inputError = SwapController.state.inputError;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.fetchError = SwapController.state.fetchError;\n this.onDebouncedGetSwapCalldata = CoreHelperUtil.debounce(async () => {\n await SwapController.swapTokens();\n }, 200);\n ChainController.subscribeKey('activeCaipNetwork', newCaipNetwork => {\n if (this.caipNetworkId !== newCaipNetwork?.caipNetworkId) {\n this.caipNetworkId = newCaipNetwork?.caipNetworkId;\n SwapController.resetState();\n SwapController.initializeState();\n }\n });\n this.unsubscribe.push(...[\n ModalController.subscribeKey('open', isOpen => {\n if (!isOpen) {\n SwapController.resetState();\n }\n }),\n RouterController.subscribeKey('view', newRoute => {\n if (!newRoute.includes('Swap')) {\n SwapController.resetValues();\n }\n }),\n SwapController.subscribe(newState => {\n this.initialized = newState.initialized;\n this.loadingQuote = newState.loadingQuote;\n this.loadingPrices = newState.loadingPrices;\n this.loadingTransaction = newState.loadingTransaction;\n this.sourceToken = newState.sourceToken;\n this.sourceTokenAmount = newState.sourceTokenAmount;\n this.sourceTokenPriceInUSD = newState.sourceTokenPriceInUSD;\n this.toToken = newState.toToken;\n this.toTokenAmount = newState.toTokenAmount;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.inputError = newState.inputError;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.fetchError = newState.fetchError;\n })\n ]);\n }\n firstUpdated() {\n SwapController.initializeState();\n this.watchTokensAndValues();\n }\n disconnectedCallback() {\n this.unsubscribe.forEach(unsubscribe => unsubscribe?.());\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'l', 'l', 'l']} gap=\"s\">\n ${this.initialized ? this.templateSwap() : this.templateLoading()}\n </wui-flex>\n `;\n }\n watchTokensAndValues() {\n this.interval = setInterval(() => {\n SwapController.getNetworkTokenPrice();\n SwapController.getMyTokensWithBalance();\n SwapController.swapTokens();\n }, 10000);\n }\n templateSwap() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"s\">\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"xs\" class=\"swap-inputs-container\">\n ${this.templateTokenInput('sourceToken', this.sourceToken)}\n ${this.templateTokenInput('toToken', this.toToken)} ${this.templateReplaceTokensButton()}\n </wui-flex>\n ${this.templateDetails()} ${this.templateActionButton()}\n </wui-flex>\n `;\n }\n actionButtonLabel() {\n if (this.fetchError) {\n return 'Swap';\n }\n if (!this.sourceToken || !this.toToken) {\n return 'Select token';\n }\n if (!this.sourceTokenAmount) {\n return 'Enter amount';\n }\n if (this.inputError) {\n return this.inputError;\n }\n return 'Review swap';\n }\n templateReplaceTokensButton() {\n return html `\n <wui-flex class=\"replace-tokens-button-container\">\n <button @click=${this.onSwitchTokens.bind(this)}>\n <wui-icon name=\"recycleHorizontal\" color=\"fg-250\" size=\"lg\"></wui-icon>\n </button>\n </wui-flex>\n `;\n }\n templateLoading() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"l\">\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"xs\" class=\"swap-inputs-container\">\n <w3m-swap-input-skeleton target=\"sourceToken\"></w3m-swap-input-skeleton>\n <w3m-swap-input-skeleton target=\"toToken\"></w3m-swap-input-skeleton>\n ${this.templateReplaceTokensButton()}\n </wui-flex>\n ${this.templateActionButton()}\n </wui-flex>\n `;\n }\n templateTokenInput(target, token) {\n const myToken = SwapController.state.myTokensWithBalance?.find(ct => ct?.address === token?.address);\n const amount = target === 'toToken' ? this.toTokenAmount : this.sourceTokenAmount;\n const price = target === 'toToken' ? this.toTokenPriceInUSD : this.sourceTokenPriceInUSD;\n const marketValue = NumberUtil.parseLocalStringToNumber(amount) * price;\n return html `<w3m-swap-input\n .value=${target === 'toToken' ? this.toTokenAmount : this.sourceTokenAmount}\n .disabled=${target === 'toToken'}\n .onSetAmount=${this.handleChangeAmount.bind(this)}\n target=${target}\n .token=${token}\n .balance=${myToken?.quantity?.numeric}\n .price=${myToken?.price}\n .marketValue=${marketValue}\n .onSetMaxValue=${this.onSetMaxValue.bind(this)}\n ></w3m-swap-input>`;\n }\n onSetMaxValue(target, balance) {\n const token = target === 'sourceToken' ? this.sourceToken : this.toToken;\n const isNetworkToken = token?.address === ChainController.getActiveNetworkTokenAddress();\n let value = '0';\n if (!balance) {\n value = '0';\n this.handleChangeAmount(target, value);\n return;\n }\n if (!this.gasPriceInUSD) {\n value = balance;\n this.handleChangeAmount(target, value);\n return;\n }\n const amountOfTokenGasRequires = NumberUtil.bigNumber(this.gasPriceInUSD.toFixed(5)).dividedBy(this.sourceTokenPriceInUSD);\n const maxValue = isNetworkToken\n ? NumberUtil.bigNumber(balance).minus(amountOfTokenGasRequires)\n : NumberUtil.bigNumber(balance);\n this.handleChangeAmount(target, maxValue.isGreaterThan(0) ? maxValue.toFixed(20) : '0');\n }\n templateDetails() {\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n return html `<w3m-swap-details .detailsOpen=${this.detailsOpen}></w3m-swap-details>`;\n }\n handleChangeAmount(target, value) {\n SwapController.clearError();\n if (target === 'sourceToken') {\n SwapController.setSourceTokenAmount(value);\n }\n else {\n SwapController.setToTokenAmount(value);\n }\n this.onDebouncedGetSwapCalldata();\n }\n templateActionButton() {\n const haveNoTokenSelected = !this.toToken || !this.sourceToken;\n const haveNoAmount = !this.sourceTokenAmount;\n const loading = this.loadingQuote || this.loadingPrices || this.loadingTransaction;\n const disabled = loading || haveNoTokenSelected || haveNoAmount || this.inputError;\n return html ` <wui-flex gap=\"xs\">\n <wui-button\n data-testid=\"swap-action-button\"\n class=\"action-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=${haveNoTokenSelected ? 'neutral' : 'main'}\n .loading=${loading}\n .disabled=${disabled}\n @click=${this.onSwapPreview.bind(this)}\n >\n ${this.actionButtonLabel()}\n </wui-button>\n </wui-flex>`;\n }\n onSwitchTokens() {\n SwapController.switchTokens();\n }\n onSwapPreview() {\n if (this.fetchError) {\n SwapController.swapTokens();\n return;\n }\n EventsController.sendEvent({\n type: 'track',\n event: 'INITIATE_SWAP',\n properties: {\n network: this.caipNetworkId || '',\n swapFromToken: this.sourceToken?.symbol || '',\n swapToToken: this.toToken?.symbol || '',\n swapFromAmount: this.sourceTokenAmount || '',\n swapToAmount: this.toTokenAmount || '',\n isSmartAccount: AccountController.state.preferredAccountType ===\n W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT\n }\n });\n RouterController.push('SwapPreview');\n }\n};\nW3mSwapView.styles = styles;\n__decorate([\n state()\n], W3mSwapView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"caipNetworkId\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"initialized\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingQuote\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingPrices\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"loadingTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"inputError\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapView.prototype, \"fetchError\", void 0);\nW3mSwapView = __decorate([\n customElement('w3m-swap-view')\n], W3mSwapView);\nexport { W3mSwapView };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n .preview-container,\n .details-container {\n width: 100%;\n }\n\n .token-image {\n width: 24px;\n height: 24px;\n box-shadow: 0 0 0 2px var(--wui-color-gray-glass-005);\n border-radius: 12px;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .token-item {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--wui-spacing-xxs);\n padding: var(--wui-spacing-xs);\n height: 40px;\n border: none;\n border-radius: 80px;\n background: var(--wui-color-gray-glass-002);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-002);\n cursor: pointer;\n transition: background 0.2s linear;\n }\n\n .token-item:hover {\n background: var(--wui-color-gray-glass-005);\n }\n\n .preview-token-details-container {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\n }\n\n .action-buttons-container {\n width: 100%;\n gap: var(--wui-spacing-xs);\n }\n\n .action-buttons-container > button {\n display: flex;\n align-items: center;\n justify-content: center;\n background: transparent;\n height: 48px;\n border-radius: var(--wui-border-radius-xs);\n border: none;\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\n }\n\n .action-buttons-container > button:disabled {\n opacity: 0.8;\n cursor: not-allowed;\n }\n\n .action-button > wui-loading-spinner {\n display: inline-block;\n }\n\n .cancel-button:hover,\n .action-button:hover {\n cursor: pointer;\n }\n\n .action-buttons-container > wui-button.cancel-button {\n flex: 2;\n }\n\n .action-buttons-container > wui-button.action-button {\n flex: 4;\n }\n\n .action-buttons-container > button.action-button > wui-text {\n color: white;\n }\n\n .details-container > wui-flex {\n background: var(--wui-color-gray-glass-002);\n border-radius: var(--wui-border-radius-xxs);\n width: 100%;\n }\n\n .details-container > wui-flex > button {\n border: none;\n background: none;\n padding: var(--wui-spacing-s);\n border-radius: var(--wui-border-radius-xxs);\n transition: background 0.2s linear;\n }\n\n .details-container > wui-flex > button:hover {\n background: var(--wui-color-gray-glass-002);\n }\n\n .details-content-container {\n padding: var(--wui-spacing-1xs);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .details-content-container > wui-flex {\n width: 100%;\n }\n\n .details-row {\n width: 100%;\n padding: var(--wui-spacing-s) var(--wui-spacing-xl);\n border-radius: var(--wui-border-radius-xxs);\n background: var(--wui-color-gray-glass-002);\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 { AccountController, ChainController, RouterController, SwapController } from '@reown/appkit-core';\nimport { UiHelperUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport '../../partials/w3m-swap-details/index.js';\nimport styles from './styles.js';\nlet W3mSwapPreviewView = class W3mSwapPreviewView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.detailsOpen = true;\n this.approvalTransaction = SwapController.state.approvalTransaction;\n this.swapTransaction = SwapController.state.swapTransaction;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount ?? '';\n this.sourceTokenPriceInUSD = SwapController.state.sourceTokenPriceInUSD;\n this.toToken = SwapController.state.toToken;\n this.toTokenAmount = SwapController.state.toTokenAmount ?? '';\n this.toTokenPriceInUSD = SwapController.state.toTokenPriceInUSD;\n this.caipNetwork = ChainController.state.activeCaipNetwork;\n this.balanceSymbol = AccountController.state.balanceSymbol;\n this.gasPriceInUSD = SwapController.state.gasPriceInUSD;\n this.inputError = SwapController.state.inputError;\n this.loadingQuote = SwapController.state.loadingQuote;\n this.loadingApprovalTransaction = SwapController.state.loadingApprovalTransaction;\n this.loadingBuildTransaction = SwapController.state.loadingBuildTransaction;\n this.loadingTransaction = SwapController.state.loadingTransaction;\n this.unsubscribe.push(...[\n AccountController.subscribeKey('balanceSymbol', newBalanceSymbol => {\n if (this.balanceSymbol !== newBalanceSymbol) {\n RouterController.goBack();\n }\n }),\n ChainController.subscribeKey('activeCaipNetwork', newCaipNetwork => {\n if (this.caipNetwork !== newCaipNetwork) {\n this.caipNetwork = newCaipNetwork;\n }\n }),\n SwapController.subscribe(newState => {\n this.approvalTransaction = newState.approvalTransaction;\n this.swapTransaction = newState.swapTransaction;\n this.sourceToken = newState.sourceToken;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.toToken = newState.toToken;\n this.gasPriceInUSD = newState.gasPriceInUSD;\n this.toTokenPriceInUSD = newState.toTokenPriceInUSD;\n this.sourceTokenAmount = newState.sourceTokenAmount ?? '';\n this.toTokenAmount = newState.toTokenAmount ?? '';\n this.inputError = newState.inputError;\n if (newState.inputError) {\n RouterController.goBack();\n }\n this.loadingQuote = newState.loadingQuote;\n this.loadingApprovalTransaction = newState.loadingApprovalTransaction;\n this.loadingBuildTransaction = newState.loadingBuildTransaction;\n this.loadingTransaction = newState.loadingTransaction;\n })\n ]);\n }\n firstUpdated() {\n SwapController.getTransaction();\n this.refreshTransaction();\n }\n disconnectedCallback() {\n this.unsubscribe.forEach(unsubscribe => unsubscribe?.());\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'l', 'l', 'l']} gap=\"s\">\n ${this.templateSwap()}\n </wui-flex>\n `;\n }\n refreshTransaction() {\n this.interval = setInterval(() => {\n if (!SwapController.getApprovalLoadingState()) {\n SwapController.getTransaction();\n }\n }, 10000);\n }\n templateSwap() {\n const sourceTokenText = `${UiHelperUtil.formatNumberToLocalString(parseFloat(this.sourceTokenAmount))} ${this.sourceToken?.symbol}`;\n const toTokenText = `${UiHelperUtil.formatNumberToLocalString(parseFloat(this.toTokenAmount))} ${this.toToken?.symbol}`;\n const sourceTokenValue = parseFloat(this.sourceTokenAmount) * this.sourceTokenPriceInUSD;\n const toTokenValue = parseFloat(this.toTokenAmount) * this.toTokenPriceInUSD - (this.gasPriceInUSD || 0);\n const sentPrice = UiHelperUtil.formatNumberToLocalString(sourceTokenValue);\n const receivePrice = UiHelperUtil.formatNumberToLocalString(toTokenValue);\n const loading = this.loadingQuote ||\n this.loadingBuildTransaction ||\n this.loadingTransaction ||\n this.loadingApprovalTransaction;\n return html `\n <wui-flex flexDirection=\"column\" alignItems=\"center\" gap=\"l\">\n <wui-flex class=\"preview-container\" flexDirection=\"column\" alignItems=\"flex-start\" gap=\"l\">\n <wui-flex\n class=\"preview-token-details-container\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"l\"\n >\n <wui-flex flexDirection=\"column\" alignItems=\"flex-start\" gap=\"4xs\">\n <wui-text variant=\"small-400\" color=\"fg-150\">Send</wui-text>\n <wui-text variant=\"paragraph-400\" color=\"fg-100\">$${sentPrice}</wui-text>\n </wui-flex>\n <wui-token-button\n flexDirection=\"row-reverse\"\n text=${sourceTokenText}\n imageSrc=${this.sourceToken?.logoUri}\n >\n </wui-token-button>\n </wui-flex>\n <wui-icon name=\"recycleHorizontal\" color=\"fg-200\" size=\"md\"></wui-icon>\n <wui-flex\n class=\"preview-token-details-container\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"l\"\n >\n <wui-flex flexDirection=\"column\" alignItems=\"flex-start\" gap=\"4xs\">\n <wui-text variant=\"small-400\" color=\"fg-150\">Receive</wui-text>\n <wui-text variant=\"paragraph-400\" color=\"fg-100\">$${receivePrice}</wui-text>\n </wui-flex>\n <wui-token-button\n flexDirection=\"row-reverse\"\n text=${toTokenText}\n imageSrc=${this.toToken?.logoUri}\n >\n </wui-token-button>\n </wui-flex>\n </wui-flex>\n\n ${this.templateDetails()}\n\n <wui-flex flexDirection=\"row\" alignItems=\"center\" justifyContent=\"center\" gap=\"xs\">\n <wui-icon size=\"sm\" color=\"fg-200\" name=\"infoCircle\"></wui-icon>\n <wui-text variant=\"small-400\" color=\"fg-200\">Review transaction carefully</wui-text>\n </wui-flex>\n\n <wui-flex\n class=\"action-buttons-container\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gap=\"xs\"\n >\n <wui-button\n class=\"cancel-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=\"neutral\"\n @click=${this.onCancelTransaction.bind(this)}\n >\n <wui-text variant=\"paragraph-600\" color=\"fg-200\">Cancel</wui-text>\n </wui-button>\n <wui-button\n class=\"action-button\"\n fullWidth\n size=\"lg\"\n borderRadius=\"xs\"\n variant=\"main\"\n ?loading=${loading}\n ?disabled=${loading}\n @click=${this.onSendTransaction.bind(this)}\n >\n <wui-text variant=\"paragraph-600\" color=\"inverse-100\">\n ${this.actionButtonLabel()}\n </wui-text>\n </wui-button>\n </wui-flex>\n </wui-flex>\n `;\n }\n templateDetails() {\n if (!this.sourceToken || !this.toToken || this.inputError) {\n return null;\n }\n return html `<w3m-swap-details .detailsOpen=${this.detailsOpen}></w3m-swap-details>`;\n }\n actionButtonLabel() {\n if (this.loadingApprovalTransaction) {\n return 'Approving...';\n }\n if (this.approvalTransaction) {\n return 'Approve';\n }\n return 'Swap';\n }\n onCancelTransaction() {\n RouterController.goBack();\n }\n onSendTransaction() {\n if (this.approvalTransaction) {\n SwapController.sendTransactionForApproval(this.approvalTransaction);\n }\n else {\n SwapController.sendTransactionForSwap(this.swapTransaction);\n }\n }\n};\nW3mSwapPreviewView.styles = styles;\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"detailsOpen\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"approvalTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"swapTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"sourceTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"toTokenPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"caipNetwork\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"balanceSymbol\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"gasPriceInUSD\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"inputError\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingQuote\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingApprovalTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingBuildTransaction\", void 0);\n__decorate([\n state()\n], W3mSwapPreviewView.prototype, \"loadingTransaction\", void 0);\nW3mSwapPreviewView = __decorate([\n customElement('w3m-swap-preview-view')\n], W3mSwapPreviewView);\nexport { W3mSwapPreviewView };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n height: 60px;\n min-height: 60px;\n }\n\n :host > wui-flex {\n cursor: pointer;\n height: 100%;\n display: flex;\n column-gap: var(--wui-spacing-s);\n padding: var(--wui-spacing-xs);\n padding-right: var(--wui-spacing-l);\n width: 100%;\n background-color: transparent;\n border-radius: var(--wui-border-radius-xs);\n color: var(--wui-color-fg-250);\n transition:\n background-color var(--wui-ease-out-power-1) var(--wui-duration-lg),\n opacity var(--wui-ease-out-power-1) var(--wui-duration-lg);\n will-change: background-color, opacity;\n }\n\n @media (hover: hover) and (pointer: fine) {\n :host > wui-flex:hover {\n background-color: var(--wui-color-gray-glass-002);\n }\n\n :host > wui-flex:active {\n background-color: var(--wui-color-gray-glass-005);\n }\n }\n\n :host([disabled]) > wui-flex {\n opacity: 0.6;\n }\n\n :host([disabled]) > wui-flex:hover {\n background-color: transparent;\n }\n\n :host > wui-flex > wui-flex {\n flex: 1;\n }\n\n :host > wui-flex > wui-image,\n :host > wui-flex > .token-item-image-placeholder {\n width: 40px;\n max-width: 40px;\n height: 40px;\n border-radius: var(--wui-border-radius-3xl);\n position: relative;\n }\n\n :host > wui-flex > .token-item-image-placeholder {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n :host > wui-flex > wui-image::after,\n :host > wui-flex > .token-item-image-placeholder::after {\n position: absolute;\n content: '';\n inset: 0;\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\n border-radius: var(--wui-border-radius-l);\n }\n\n button > wui-icon-box[data-variant='square-blue'] {\n border-radius: var(--wui-border-radius-3xs);\n position: relative;\n border: none;\n width: 36px;\n height: 36px;\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 { NumberUtil } from '@reown/appkit-common';\nimport '../../components/wui-icon/index.js';\nimport '../../components/wui-image/index.js';\nimport '../../components/wui-text/index.js';\nimport '../../layout/wui-flex/index.js';\nimport { elementStyles, resetStyles } from '../../utils/ThemeUtil.js';\nimport { UiHelperUtil } from '../../utils/UiHelperUtil.js';\nimport { customElement } from '../../utils/WebComponentsUtil.js';\nimport styles from './styles.js';\nlet WuiTokenListItem = class WuiTokenListItem extends LitElement {\n constructor() {\n super();\n this.observer = new IntersectionObserver(() => undefined);\n this.imageSrc = undefined;\n this.name = undefined;\n this.symbol = undefined;\n this.price = undefined;\n this.amount = undefined;\n this.visible = false;\n this.imageError = false;\n this.observer = new IntersectionObserver(entries => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n this.visible = true;\n }\n else {\n this.visible = false;\n }\n });\n }, { threshold: 0.1 });\n }\n firstUpdated() {\n this.observer.observe(this);\n }\n disconnectedCallback() {\n this.observer.disconnect();\n }\n render() {\n if (!this.visible) {\n return null;\n }\n const value = this.amount && this.price ? NumberUtil.multiply(this.price, this.amount)?.toFixed(3) : null;\n return html `\n <wui-flex alignItems=\"center\">\n ${this.visualTemplate()}\n <wui-flex flexDirection=\"column\" gap=\"3xs\">\n <wui-flex justifyContent=\"space-between\">\n <wui-text variant=\"paragraph-500\" color=\"fg-100\" lineClamp=\"1\">${this.name}</wui-text>\n ${value\n ? html `\n <wui-text variant=\"paragraph-500\" color=\"fg-100\">\n $${UiHelperUtil.formatNumberToLocalString(value, 3)}\n </wui-text>\n `\n : null}\n </wui-flex>\n <wui-flex justifyContent=\"space-between\">\n <wui-text variant=\"small-400\" color=\"fg-200\" lineClamp=\"1\">${this.symbol}</wui-text>\n ${this.amount\n ? html `<wui-text variant=\"small-400\" color=\"fg-200\">\n ${UiHelperUtil.formatNumberToLocalString(this.amount, 4)}\n </wui-text>`\n : null}\n </wui-flex>\n </wui-flex>\n </wui-flex>\n `;\n }\n visualTemplate() {\n if (this.imageError) {\n return html `<wui-flex class=\"token-item-image-placeholder\">\n <wui-icon name=\"image\" color=\"inherit\"></wui-icon>\n </wui-flex>`;\n }\n if (this.imageSrc) {\n return html `<wui-image\n width=\"40\"\n height=\"40\"\n src=${this.imageSrc}\n @onLoadError=${this.imageLoadError}\n ></wui-image>`;\n }\n return null;\n }\n imageLoadError() {\n this.imageError = true;\n }\n};\nWuiTokenListItem.styles = [resetStyles, elementStyles, styles];\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"imageSrc\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"name\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"symbol\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"price\", void 0);\n__decorate([\n property()\n], WuiTokenListItem.prototype, \"amount\", void 0);\n__decorate([\n state()\n], WuiTokenListItem.prototype, \"visible\", void 0);\n__decorate([\n state()\n], WuiTokenListItem.prototype, \"imageError\", void 0);\nWuiTokenListItem = __decorate([\n customElement('wui-token-list-item')\n], WuiTokenListItem);\nexport { WuiTokenListItem };\n//# sourceMappingURL=index.js.map","import { css } from 'lit';\nexport default css `\n :host {\n --tokens-scroll--top-opacity: 0;\n --tokens-scroll--bottom-opacity: 1;\n --suggested-tokens-scroll--left-opacity: 0;\n --suggested-tokens-scroll--right-opacity: 1;\n }\n\n :host > wui-flex:first-child {\n overflow-y: hidden;\n overflow-x: hidden;\n scrollbar-width: none;\n scrollbar-height: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: none;\n }\n\n wui-loading-hexagon {\n position: absolute;\n }\n\n .suggested-tokens-container {\n overflow-x: auto;\n mask-image: linear-gradient(\n to right,\n rgba(0, 0, 0, calc(1 - var(--suggested-tokens-scroll--left-opacity))) 0px,\n rgba(200, 200, 200, calc(1 - var(--suggested-tokens-scroll--left-opacity))) 1px,\n black 50px,\n black 90px,\n black calc(100% - 90px),\n black calc(100% - 50px),\n rgba(155, 155, 155, calc(1 - var(--suggested-tokens-scroll--right-opacity))) calc(100% - 1px),\n rgba(0, 0, 0, calc(1 - var(--suggested-tokens-scroll--right-opacity))) 100%\n );\n }\n\n .suggested-tokens-container::-webkit-scrollbar {\n display: none;\n }\n\n .tokens-container {\n border-top: 1px solid var(--wui-color-gray-glass-005);\n height: 100%;\n max-height: 390px;\n }\n\n .tokens {\n width: 100%;\n overflow-y: auto;\n mask-image: linear-gradient(\n to bottom,\n rgba(0, 0, 0, calc(1 - var(--tokens-scroll--top-opacity))) 0px,\n rgba(200, 200, 200, calc(1 - var(--tokens-scroll--top-opacity))) 1px,\n black 50px,\n black 90px,\n black calc(100% - 90px),\n black calc(100% - 50px),\n rgba(155, 155, 155, calc(1 - var(--tokens-scroll--bottom-opacity))) calc(100% - 1px),\n rgba(0, 0, 0, calc(1 - var(--tokens-scroll--bottom-opacity))) 100%\n );\n }\n\n .network-search-input,\n .select-network-button {\n height: 40px;\n }\n\n .select-network-button {\n border: none;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: var(--wui-spacing-xs);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005);\n background-color: transparent;\n border-radius: var(--wui-border-radius-xxs);\n padding: var(--wui-spacing-xs);\n align-items: center;\n transition: background-color 0.2s linear;\n }\n\n .select-network-button:hover {\n background-color: var(--wui-color-gray-glass-002);\n }\n\n .select-network-button > wui-image {\n width: 26px;\n height: 26px;\n border-radius: var(--wui-border-radius-xs);\n box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010);\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, SwapController } from '@reown/appkit-core';\nimport { MathUtil, customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-button';\nimport '@reown/appkit-ui/wui-flex';\nimport '@reown/appkit-ui/wui-icon';\nimport '@reown/appkit-ui/wui-input-text';\nimport '@reown/appkit-ui/wui-text';\nimport '@reown/appkit-ui/wui-token-button';\nimport '@reown/appkit-ui/wui-token-list-item';\nimport styles from './styles.js';\nlet W3mSwapSelectTokenView = class W3mSwapSelectTokenView extends LitElement {\n constructor() {\n super();\n this.unsubscribe = [];\n this.targetToken = RouterController.state.data?.target;\n this.sourceToken = SwapController.state.sourceToken;\n this.sourceTokenAmount = SwapController.state.sourceTokenAmount;\n this.toToken = SwapController.state.toToken;\n this.myTokensWithBalance = SwapController.state.myTokensWithBalance;\n this.popularTokens = SwapController.state.popularTokens;\n this.searchValue = '';\n this.unsubscribe.push(...[\n SwapController.subscribe(newState => {\n this.sourceToken = newState.sourceToken;\n this.toToken = newState.toToken;\n this.myTokensWithBalance = newState.myTokensWithBalance;\n })\n ]);\n }\n updated() {\n const suggestedTokensContainer = this.renderRoot?.querySelector('.suggested-tokens-container');\n suggestedTokensContainer?.addEventListener('scroll', this.handleSuggestedTokensScroll.bind(this));\n const tokensList = this.renderRoot?.querySelector('.tokens');\n tokensList?.addEventListener('scroll', this.handleTokenListScroll.bind(this));\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n const suggestedTokensContainer = this.renderRoot?.querySelector('.suggested-tokens-container');\n const tokensList = this.renderRoot?.querySelector('.tokens');\n suggestedTokensContainer?.removeEventListener('scroll', this.handleSuggestedTokensScroll.bind(this));\n tokensList?.removeEventListener('scroll', this.handleTokenListScroll.bind(this));\n clearInterval(this.interval);\n }\n render() {\n return html `\n <wui-flex flexDirection=\"column\" gap=\"s\">\n ${this.templateSearchInput()} ${this.templateSuggestedTokens()} ${this.templateTokens()}\n </wui-flex>\n `;\n }\n onSelectToken(token) {\n if (this.targetToken === 'sourceToken') {\n SwapController.setSourceToken(token);\n }\n else {\n SwapController.setToToken(token);\n if (this.sourceToken && this.sourceTokenAmount) {\n SwapController.swapTokens();\n }\n }\n RouterController.goBack();\n }\n templateSearchInput() {\n return html `\n <wui-flex .padding=${['3xs', 's', '0', 's']} gap=\"xs\">\n <wui-input-text\n data-testid=\"swap-select-token-search-input\"\n class=\"network-search-input\"\n size=\"sm\"\n placeholder=\"Search token\"\n icon=\"search\"\n .value=${this.searchValue}\n @inputChange=${this.onSearchInputChange.bind(this)}\n ></wui-input-text>\n </wui-flex>\n `;\n }\n templateTokens() {\n const yourTokens = this.myTokensWithBalance ? Object.values(this.myTokensWithBalance) : [];\n const tokens = this.popularTokens ? this.popularTokens : [];\n const filteredYourTokens = this.filterTokensWithText(yourTokens, this.searchValue);\n const filteredTokens = this.filterTokensWithText(tokens, this.searchValue);\n return html `\n <wui-flex class=\"tokens-container\">\n <wui-flex class=\"tokens\" .padding=${['0', 's', 's', 's']} flexDirection=\"column\">\n ${filteredYourTokens?.length > 0\n ? html `\n <wui-flex justifyContent=\"flex-start\" padding=\"s\">\n <wui-text variant=\"paragraph-500\" color=\"fg-200\">Your tokens</wui-text>\n </wui-flex>\n ${filteredYourTokens.map(token => {\n const selected = token.symbol === this.sourceToken?.symbol ||\n token.symbol === this.toToken?.symbol;\n return html `\n <wui-token-list-item\n data-testid=\"swap-select-token-item-${token.symbol}\"\n name=${token.name}\n ?disabled=${selected}\n symbol=${token.symbol}\n price=${token?.price}\n amount=${token?.quantity?.numeric}\n imageSrc=${token.logoUri}\n @click=${() => {\n if (!selected) {\n this.onSelectToken(token);\n }\n }}\n >\n </wui-token-list-item>\n `;\n })}\n `\n : null}\n\n <wui-flex justifyContent=\"flex-start\" padding=\"s\">\n <wui-text variant=\"paragraph-500\" color=\"fg-200\">Tokens</wui-text>\n </wui-flex>\n ${filteredTokens?.length > 0\n ? filteredTokens.map(token => html `\n <wui-token-list-item\n data-testid=\"swap-select-token-item-${token.symbol}\"\n name=${token.name}\n symbol=${token.symbol}\n imageSrc=${token.logoUri}\n @click=${() => this.onSelectToken(token)}\n >\n </wui-token-list-item>\n `)\n : null}\n </wui-flex>\n </wui-flex>\n `;\n }\n templateSuggestedTokens() {\n const tokens = SwapController.state.suggestedTokens\n ? SwapController.state.suggestedTokens.slice(0, 8)\n : null;\n if (!tokens) {\n return null;\n }\n return html `\n <wui-flex class=\"suggested-tokens-container\" .padding=${['0', 's', '0', 's']} gap=\"xs\">\n ${tokens.map(token => html `\n <wui-token-button\n text=${token.symbol}\n imageSrc=${token.logoUri}\n @click=${() => this.onSelectToken(token)}\n >\n </wui-token-button>\n `)}\n </wui-flex>\n `;\n }\n onSearchInputChange(event) {\n this.searchValue = event.detail;\n }\n handleSuggestedTokensScroll() {\n const container = this.renderRoot?.querySelector('.suggested-tokens-container');\n if (!container) {\n return;\n }\n container.style.setProperty('--suggested-tokens-scroll--left-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollLeft).toString());\n container.style.setProperty('--suggested-tokens-scroll--right-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollWidth - container.scrollLeft - container.offsetWidth).toString());\n }\n handleTokenListScroll() {\n const container = this.renderRoot?.querySelector('.tokens');\n if (!container) {\n return;\n }\n container.style.setProperty('--tokens-scroll--top-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollTop).toString());\n container.style.setProperty('--tokens-scroll--bottom-opacity', MathUtil.interpolate([0, 100], [0, 1], container.scrollHeight - container.scrollTop - container.offsetHeight).toString());\n }\n filterTokensWithText(tokens, text) {\n return tokens.filter(token => `${token.symbol} ${token.name} ${token.address}`.toLowerCase().includes(text.toLowerCase()));\n }\n};\nW3mSwapSelectTokenView.styles = styles;\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"interval\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"targetToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"sourceToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"sourceTokenAmount\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"toToken\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"myTokensWithBalance\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"popularTokens\", void 0);\n__decorate([\n state()\n], W3mSwapSelectTokenView.prototype, \"searchValue\", void 0);\nW3mSwapSelectTokenView = __decorate([\n customElement('w3m-swap-select-token-view')\n], W3mSwapSelectTokenView);\nexport { W3mSwapSelectTokenView };\n//# sourceMappingURL=index.js.map"],"names":["css","__decorate","r","i","WuiSwapDetails","LitElement","html","styles","state","property","W3mSwapInputSkeleton","W3mSwapInput","W3mSwapView","W3mSwapPreviewView","WuiTokenListItem","W3mSwapSelectTokenView"],"mappings":";;;;;;;;;AAAO,MAAM,YAAY;AAAA,EACrB,oBAAoB,OAAO,cAAc,UAAU;AAC/C,UAAM,cAAc;AAAA,MAChB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AACD,UAAM,iBAAiB,MAAM,WAAW,MAAM;AAC9C,UAAM,WAAW,MAAM;AACvB,UAAM,oBAAoB,SAAS,kBAAmB;AACtD,UAAM,YAAY,sBAAsB;AACxC,UAAM,UAAU,sBAAsB;AACtC,UAAM,WAAW,sBAAsB;AACvC,UAAM,SAAS,sBAAsB;AACrC,UAAM,UAAU,aAAa;AAC7B,UAAM,QAAQ,aAAa;AAC3B,UAAM,eAAe,YAAY,OAAO,YAAY;AACpD,QAAI,CAAC,mBAAmB,aAAa,WAAW,YAAY,SAAS;AACjE,YAAM,eAAgB;AAAA,IAClC;AACQ,QAAI,iBAAiB,OAAO,CAAC,WAAW,CAAC,SAAS,aAAa,KAAK;AAChE,YAAM,eAAgB;AAAA,IAClC;AACQ,QAAI,iBAAiB,OAAO,cAAc;AACtC,eAAS,QAAQ;AACjB,YAAM,eAAgB;AAAA,IAClC;AACQ,QAAI,WAAW,OAAO;AAClB,UAAI,CAAC,cAAc;AACf,iBAAS,IAAI;AACb,cAAM,eAAgB;AAAA,MACtC;AACY,WAAI,6CAAc,SAAS,UAAQ,6CAAc,SAAS,OAAM;AAC5D,cAAM,eAAgB;AAAA,MACtC;AAAA,IACA;AACQ,QAAI,CAAC,gBAAgB,CAAC,YAAY,SAAS,QAAQ,KAAK,CAAC,SAAS,CAAC,SAAS;AACxE,YAAM,eAAgB;AAAA,IAClC;AAAA,EACA;AACA;AClDA,MAAA,WAAeA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAYA,MAAM,eAAe,cAAc;AACnC,IAAI,iBAAiB,MAAME,wBAAuBC,IAAW;AAAA,EACzD,cAAc;;AACV,UAAO;AACP,SAAK,cAAc,CAAE;AACrB,SAAK,eAAc,qBAAgB,MAAM,sBAAtB,mBAAyC;AAC5D,SAAK,cAAc;AACnB,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,UAAU,eAAe,MAAM;AACpC,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,wBAAwB,eAAe,MAAM;AAClD,SAAK,oBAAoB,eAAe,MAAM;AAC9C,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,qBAAqB,eAAe,MAAM;AAC/C,SAAK,aAAa,eAAe,MAAM;AACvC,SAAK,YAAY,KAAK,GAAG;AAAA,MACrB,eAAe,UAAU,cAAY;AACjC,aAAK,cAAc,SAAS;AAC5B,aAAK,UAAU,SAAS;AACxB,aAAK,gBAAgB,SAAS;AAC9B,aAAK,gBAAgB,SAAS;AAC9B,aAAK,cAAc,SAAS;AAC5B,aAAK,cAAc,SAAS;AAC5B,aAAK,wBAAwB,SAAS;AACtC,aAAK,oBAAoB,SAAS;AAClC,aAAK,aAAa,SAAS;AAAA,MAC9B,CAAA;AAAA,IACb,CAAS;AAAA,EACT;AAAA,EACI,SAAS;AACL,UAAM,oBAAoB,KAAK,iBAAiB,KAAK,cAC/C,WAAW,UAAU,KAAK,aAAa,EAAE,MAAM,KAAK,WAAW,EAAE,SAAQ,IACzE;AACN,QAAI,CAAC,KAAK,eAAe,CAAC,KAAK,WAAW,KAAK,YAAY;AACvD,aAAO;AAAA,IACnB;AACQ,UAAM,uBAAuB,KAAK,yBAAyB,KAAK,oBACzD,IAAI,KAAK,oBAAqB,KAAK,wBACpC;AACN,WAAOC;AAAAA;AAAAA;AAAAA,2BAGY,KAAK,cAAc,KAAK,IAAI,CAAC;AAAA,gEACQ,CAAC,KAAK,MAAM,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,sBAGhE,KAAK,YAAY,MAAM;AAAA,oBACzB,aAAa,0BAA0B,sBAAsB,CAAC,CAAC;AAAA,oBAC/D,KAAK,QAAQ,MAAM;AAAA;AAAA;AAAA,qBAGlB,aAAa,0BAA0B,KAAK,qBAAqB,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAM3E,KAAK,cACHA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,iCAamB,2BAA2B,KAAK,kBAAkB,WAAW,KAAK,WAAW,2CAA2C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAM9H,aAAa,0BAA0B,KAAK,eAAe,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA,oBAIpE,KAAK,cACPA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,gCAkBc,aAAa,0BAA0B,KAAK,aAAa,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA,qCAKzE,IAAI;AAAA,oBACF,KAAK,eAAe,KAAK,YAAY,SACvCA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,qCAWmB,yFAAyF,oBACxG,yDAAyD,aAAa,0BAA0B,mBAAmB,CAAC,CAAC,IAAI,KAAK,QAAQ,MAAM,2BAC5I,EAAE,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAOM,aAAa,0BAA0B,KAAK,aAAa,CAAC,CAAC;AAAA,gCAC3D,KAAK,QAAQ,MAAM,IAAI,YAAY;AAAA;AAAA;AAAA;AAAA,qCAKjD,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAmBR,IAAI;AAAA;AAAA;AAAA;AAAA,EAIlB;AAAA,EACI,gBAAgB;AACZ,SAAK,cAAc,CAAC,KAAK;AAAA,EACjC;AACA;AACA,eAAe,SAAS,CAACC,QAAM;AAC/BN,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,eAAe,MAAM;AAClDP,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,eAAe,WAAW,eAAe,MAAM;AAClDR,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,eAAe,MAAM;AAClDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,WAAW,MAAM;AAC9CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,iBAAiB,MAAM;AACpDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,yBAAyB,MAAM;AAC5DP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,qBAAqB,MAAM;AACxDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,iBAAiB,MAAM;AACpDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,eAAe,MAAM;AAClDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,eAAe,MAAM;AAClDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,sBAAsB,MAAM;AACzDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,eAAe,WAAW,cAAc,MAAM;AACjD,iBAAiBP,aAAW;AAAA,EACxB,cAAc,kBAAkB;AACpC,GAAG,cAAc;AC1NjB,MAAA,WAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAQA,IAAI,uBAAuB,MAAMQ,8BAA6BL,IAAW;AAAA,EACrE,cAAc;AACV,UAAM,GAAG,SAAS;AAClB,SAAK,SAAS;AAAA,EACtB;AAAA,EACI,SAAS;AACL,WAAOC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,UAYL,KAAK,0BAA2B,CAAA;AAAA;AAAA;AAAA,EAG1C;AAAA,EACI,4BAA4B;AACxB,WAAOA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAWf;AACA;AACA,qBAAqB,SAAS,CAACC,QAAM;AACrCN,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,qBAAqB,WAAW,UAAU,MAAM;AACnD,uBAAuBR,aAAW;AAAA,EAC9B,cAAc,yBAAyB;AAC3C,GAAG,oBAAoB;ACtDvB,MAAA,WAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAWA,MAAM,+BAA+B;AACrC,IAAI,eAAe,MAAMS,sBAAqBN,IAAW;AAAA,EACrD,cAAc;AACV,UAAM,GAAG,SAAS;AAClB,SAAK,UAAU;AACf,SAAK,QAAQ;AACb,SAAK,SAAS;AACd,SAAK,cAAc;AACnB,SAAK,gBAAgB;AAAA,EAC7B;AAAA,EACI,SAAS;AACL,UAAM,cAAc,KAAK,eAAe;AACxC,UAAM,+BAA+B,WAAW,UAAU,WAAW,EAAE,cAAc,GAAG;AACxF,WAAOC;AAAAA,yBACU,KAAK,UAAU,UAAU,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sCASd,KAAK,MAAM;AAAA,uBAC1B,MAAM,KAAK,cAAc,IAAI,CAAC;AAAA,wBAC7B,MAAM,KAAK,cAAc,KAAK,CAAC;AAAA,wBAC/B,KAAK,QAAQ;AAAA,qBAChB,KAAK,KAAK;AAAA,qBACV,KAAK,wBAAwB;AAAA,uBAC3B,KAAK,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAM3B,+BACA,IAAI,aAAa,0BAA0B,KAAK,aAAa,CAAC,CAAC,KAC/D,IAAI;AAAA;AAAA;AAAA,UAGR,KAAK,0BAA2B,CAAA;AAAA;AAAA;AAAA,EAG1C;AAAA,EACI,cAAc,OAAO;AACjB,WAAO,UAAU,oBAAoB,OAAO,KAAK,OAAO,CAAC,UAAU;;AAAA,wBAAK,gBAAL,8BAAmB,KAAK,QAAQ;AAAA,KAAM;AAAA,EACjH;AAAA,EACI,yBAAyB,OAAO;AAC5B,QAAI,CAAC,KAAK,aAAa;AACnB;AAAA,IACZ;AACQ,UAAM,QAAQ,MAAM,OAAO,MAAM,QAAQ,aAAa,EAAE;AACxD,QAAI,UAAU,OAAO,UAAU,KAAK;AAChC,WAAK,YAAY,KAAK,QAAQ,IAAI;AAAA,IAC9C,WACiB,MAAM,SAAS,GAAG,GAAG;AAC1B,WAAK,YAAY,KAAK,QAAQ,MAAM,QAAQ,KAAK,GAAG,CAAC;AAAA,IACjE,OACa;AACD,WAAK,YAAY,KAAK,QAAQ,KAAK;AAAA,IAC/C;AAAA,EACA;AAAA,EACI,qBAAqB;;AACjB,eAAK,kBAAL,8BAAqB,KAAK,QAAQ,KAAK;AAAA,EAC/C;AAAA,EACI,4BAA4B;AACxB,QAAI,CAAC,KAAK,OAAO;AACb,aAAOA;AAAAA,gDAC6B,KAAK,MAAM;AAAA;AAAA;AAAA;AAAA,iBAI1C,KAAK,cAAc,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,IAI9C;AACQ,WAAOA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,0CAS2B,KAAK,MAAM;AAAA,iBACpC,KAAK,MAAM,MAAM;AAAA,qBACb,KAAK,MAAM,OAAO;AAAA,mBACpB,KAAK,cAAc,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,mDAGG,KAAK,sBAAsB;AAAA;AAAA;AAAA,EAG9E;AAAA,EACI,uBAAuB;AACnB,UAAM,oBAAoB,WAAW,SAAS,KAAK,SAAS,KAAK,KAAK;AACtE,UAAM,cAAc,oBACd,uDAAmB,cAAc,gCACjC;AACN,WAAOA;AAAAA,QACP,cACMA;AAAAA,cACA,aAAa,0BAA0B,KAAK,SAAS,CAAC,CAAC;AAAA,yBAEvD,IAAI;AAAA,QACV,KAAK,WAAW,gBAAgB,KAAK,0BAA0B,WAAW,IAAI,IAAI;AAAA;AAAA,EAE1F;AAAA,EACI,0BAA0B,aAAa;AACnC,QAAI,aAAa;AACb,aAAOA,6CAAiD,KAAK,mBAAmB,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,IAGtG;AACQ,WAAOA,6CAAiD,KAAK,WAAW,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,EAG1F;AAAA,EACI,cAAc,OAAO;AACjB,SAAK,UAAU;AAAA,EACvB;AAAA,EACI,gBAAgB;AACZ,qBAAiB,UAAU,EAAE,MAAM,SAAS,OAAO,8BAA8B;AACjF,qBAAiB,KAAK,mBAAmB;AAAA,MACrC,QAAQ,KAAK;AAAA,IACzB,CAAS;AAAA,EACT;AAAA,EACI,aAAa;AACT,qBAAiB,KAAK,iBAAiB;AAAA,EAC/C;AACA;AACA,aAAa,SAAS,CAACC,QAAM;AAC7BN,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,WAAW,MAAM;AAC5CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,WAAW,MAAM;AAC5CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,SAAS,MAAM;AAC1CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,SAAS,MAAM;AAC1CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,eAAe,MAAM;AAChDR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,YAAY,MAAM;AAC7CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,UAAU,MAAM;AAC3CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,SAAS,MAAM;AAC1CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,eAAe,MAAM;AAChDR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,aAAa,WAAW,iBAAiB,MAAM;AAClD,eAAeR,aAAW;AAAA,EACtB,cAAc,gBAAgB;AAClC,GAAG,YAAY;ACrLf,MAAA,WAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAeG,IAAC,cAAc,MAAMU,qBAAoBP,IAAW;AAAA,EACnD,cAAc;;AACV,UAAO;AACP,SAAK,cAAc,CAAE;AACrB,SAAK,cAAc;AACnB,SAAK,iBAAgB,qBAAgB,MAAM,sBAAtB,mBAAyC;AAC9D,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,eAAe,eAAe,MAAM;AACzC,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,qBAAqB,eAAe,MAAM;AAC/C,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,oBAAoB,eAAe,MAAM;AAC9C,SAAK,wBAAwB,eAAe,MAAM;AAClD,SAAK,UAAU,eAAe,MAAM;AACpC,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,oBAAoB,eAAe,MAAM;AAC9C,SAAK,aAAa,eAAe,MAAM;AACvC,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,aAAa,eAAe,MAAM;AACvC,SAAK,6BAA6B,eAAe,SAAS,YAAY;AAClE,YAAM,eAAe,WAAY;AAAA,IACpC,GAAE,GAAG;AACN,oBAAgB,aAAa,qBAAqB,oBAAkB;AAChE,UAAI,KAAK,mBAAkB,iDAAgB,gBAAe;AACtD,aAAK,gBAAgB,iDAAgB;AACrC,uBAAe,WAAY;AAC3B,uBAAe,gBAAiB;AAAA,MAChD;AAAA,IACA,CAAS;AACD,SAAK,YAAY,KAAK,GAAG;AAAA,MACrB,gBAAgB,aAAa,QAAQ,YAAU;AAC3C,YAAI,CAAC,QAAQ;AACT,yBAAe,WAAY;AAAA,QAC/C;AAAA,MACA,CAAa;AAAA,MACD,iBAAiB,aAAa,QAAQ,cAAY;AAC9C,YAAI,CAAC,SAAS,SAAS,MAAM,GAAG;AAC5B,yBAAe,YAAa;AAAA,QAChD;AAAA,MACA,CAAa;AAAA,MACD,eAAe,UAAU,cAAY;AACjC,aAAK,cAAc,SAAS;AAC5B,aAAK,eAAe,SAAS;AAC7B,aAAK,gBAAgB,SAAS;AAC9B,aAAK,qBAAqB,SAAS;AACnC,aAAK,cAAc,SAAS;AAC5B,aAAK,oBAAoB,SAAS;AAClC,aAAK,wBAAwB,SAAS;AACtC,aAAK,UAAU,SAAS;AACxB,aAAK,gBAAgB,SAAS;AAC9B,aAAK,oBAAoB,SAAS;AAClC,aAAK,aAAa,SAAS;AAC3B,aAAK,gBAAgB,SAAS;AAC9B,aAAK,aAAa,SAAS;AAAA,MAC9B,CAAA;AAAA,IACb,CAAS;AAAA,EACT;AAAA,EACI,eAAe;AACX,mBAAe,gBAAiB;AAChC,SAAK,qBAAsB;AAAA,EACnC;AAAA,EACI,uBAAuB;AACnB,SAAK,YAAY,QAAQ,iBAAe,4CAAe;AACvD,kBAAc,KAAK,QAAQ;AAAA,EACnC;AAAA,EACI,SAAS;AACL,WAAOC;AAAAA,kDACmC,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA,UAC5D,KAAK,cAAc,KAAK,aAAc,IAAG,KAAK,gBAAiB,CAAA;AAAA;AAAA;AAAA,EAGzE;AAAA,EACI,uBAAuB;AACnB,SAAK,WAAW,YAAY,MAAM;AAC9B,qBAAe,qBAAsB;AACrC,qBAAe,uBAAwB;AACvC,qBAAe,WAAY;AAAA,IAC9B,GAAE,GAAK;AAAA,EAChB;AAAA,EACI,eAAe;AACX,WAAOA;AAAAA;AAAAA;AAAAA,YAGH,KAAK,mBAAmB,eAAe,KAAK,WAAW,CAAC;AAAA,YACxD,KAAK,mBAAmB,WAAW,KAAK,OAAO,CAAC,IAAI,KAAK,4BAA6B,CAAA;AAAA;AAAA,UAExF,KAAK,gBAAe,CAAE,IAAI,KAAK,qBAAsB,CAAA;AAAA;AAAA;AAAA,EAG/D;AAAA,EACI,oBAAoB;AAChB,QAAI,KAAK,YAAY;AACjB,aAAO;AAAA,IACnB;AACQ,QAAI,CAAC,KAAK,eAAe,CAAC,KAAK,SAAS;AACpC,aAAO;AAAA,IACnB;AACQ,QAAI,CAAC,KAAK,mBAAmB;AACzB,aAAO;AAAA,IACnB;AACQ,QAAI,KAAK,YAAY;AACjB,aAAO,KAAK;AAAA,IACxB;AACQ,WAAO;AAAA,EACf;AAAA,EACI,8BAA8B;AAC1B,WAAOA;AAAAA;AAAAA,yBAEU,KAAK,eAAe,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,EAKvD;AAAA,EACI,kBAAkB;AACd,WAAOA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,YAKH,KAAK,4BAA6B,CAAA;AAAA;AAAA,UAEpC,KAAK,qBAAsB,CAAA;AAAA;AAAA;AAAA,EAGrC;AAAA,EACI,mBAAmB,QAAQ,OAAO;;AAC9B,UAAM,WAAU,oBAAe,MAAM,wBAArB,mBAA0C,KAAK,SAAM,yBAAI,cAAY,+BAAO;AAC5F,UAAM,SAAS,WAAW,YAAY,KAAK,gBAAgB,KAAK;AAChE,UAAM,QAAQ,WAAW,YAAY,KAAK,oBAAoB,KAAK;AACnE,UAAM,cAAc,WAAW,yBAAyB,MAAM,IAAI;AAClE,WAAOA;AAAAA,eACA,WAAW,YAAY,KAAK,gBAAgB,KAAK,iBAAiB;AAAA,kBAC/D,WAAW,SAAS;AAAA,qBACjB,KAAK,mBAAmB,KAAK,IAAI,CAAC;AAAA,eACxC,MAAM;AAAA,eACN,KAAK;AAAA,kBACH,wCAAS,aAAT,mBAAmB,OAAO;AAAA,eAC5B,mCAAS,KAAK;AAAA,qBACR,WAAW;AAAA,uBACT,KAAK,cAAc,KAAK,IAAI,CAAC;AAAA;AAAA,EAEpD;AAAA,EACI,cAAc,QAAQ,SAAS;AAC3B,UAAM,QAAQ,WAAW,gBAAgB,KAAK,cAAc,KAAK;AACjE,UAAM,kBAAiB,+BAAO,aAAY,gBAAgB,6BAA8B;AACxF,QAAI,QAAQ;AACZ,QAAI,CAAC,SAAS;AACV,cAAQ;AACR,WAAK,mBAAmB,QAAQ,KAAK;AACrC;AAAA,IACZ;AACQ,QAAI,CAAC,KAAK,eAAe;AACrB,cAAQ;AACR,WAAK,mBAAmB,QAAQ,KAAK;AACrC;AAAA,IACZ;AACQ,UAAM,2BAA2B,WAAW,UAAU,KAAK,cAAc,QAAQ,CAAC,CAAC,EAAE,UAAU,KAAK,qBAAqB;AACzH,UAAM,WAAW,iBACX,WAAW,UAAU,OAAO,EAAE,MAAM,wBAAwB,IAC5D,WAAW,UAAU,OAAO;AAClC,SAAK,mBAAmB,QAAQ,SAAS,cAAc,CAAC,IAAI,SAAS,QAAQ,EAAE,IAAI,GAAG;AAAA,EAC9F;AAAA,EACI,kBAAkB;AACd,QAAI,CAAC,KAAK,eAAe,CAAC,KAAK,WAAW,KAAK,YAAY;AACvD,aAAO;AAAA,IACnB;AACQ,WAAOA,mCAAuC,KAAK,WAAW;AAAA,EACtE;AAAA,EACI,mBAAmB,QAAQ,OAAO;AAC9B,mBAAe,WAAY;AAC3B,QAAI,WAAW,eAAe;AAC1B,qBAAe,qBAAqB,KAAK;AAAA,IACrD,OACa;AACD,qBAAe,iBAAiB,KAAK;AAAA,IACjD;AACQ,SAAK,2BAA4B;AAAA,EACzC;AAAA,EACI,uBAAuB;AACnB,UAAM,sBAAsB,CAAC,KAAK,WAAW,CAAC,KAAK;AACnD,UAAM,eAAe,CAAC,KAAK;AAC3B,UAAM,UAAU,KAAK,gBAAgB,KAAK,iBAAiB,KAAK;AAChE,UAAM,WAAW,WAAW,uBAAuB,gBAAgB,KAAK;AACxE,WAAOA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,kBAOG,sBAAsB,YAAY,MAAM;AAAA,mBACvC,OAAO;AAAA,oBACN,QAAQ;AAAA,iBACX,KAAK,cAAc,KAAK,IAAI,CAAC;AAAA;AAAA,UAEpC,KAAK,kBAAmB,CAAA;AAAA;AAAA;AAAA,EAGlC;AAAA,EACI,iBAAiB;AACb,mBAAe,aAAc;AAAA,EACrC;AAAA,EACI,gBAAgB;;AACZ,QAAI,KAAK,YAAY;AACjB,qBAAe,WAAY;AAC3B;AAAA,IACZ;AACQ,qBAAiB,UAAU;AAAA,MACvB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACR,SAAS,KAAK,iBAAiB;AAAA,QAC/B,iBAAe,UAAK,gBAAL,mBAAkB,WAAU;AAAA,QAC3C,eAAa,UAAK,YAAL,mBAAc,WAAU;AAAA,QACrC,gBAAgB,KAAK,qBAAqB;AAAA,QAC1C,cAAc,KAAK,iBAAiB;AAAA,QACpC,gBAAgB,kBAAkB,MAAM,yBACpC,qBAAqB,cAAc;AAAA,MACvD;AAAA,IACA,CAAS;AACD,qBAAiB,KAAK,aAAa;AAAA,EAC3C;AACA;AACA,YAAY,SAASC;AACrBN,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,YAAY,MAAM;AAC5CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,eAAe,MAAM;AAC/CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,iBAAiB,MAAM;AACjDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,eAAe,MAAM;AAC/CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,gBAAgB,MAAM;AAChDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,iBAAiB,MAAM;AACjDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,sBAAsB,MAAM;AACtDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,eAAe,MAAM;AAC/CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,qBAAqB,MAAM;AACrDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,yBAAyB,MAAM;AACzDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,WAAW,MAAM;AAC3CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,iBAAiB,MAAM;AACjDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,qBAAqB,MAAM;AACrDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,cAAc,MAAM;AAC9CP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,iBAAiB,MAAM;AACjDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,YAAY,WAAW,cAAc,MAAM;AAC9C,cAAcP,aAAW;AAAA,EACrB,cAAc,eAAe;AACjC,GAAG,WAAW;ACtSd,MAAA,WAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAYG,IAAC,qBAAqB,MAAMW,4BAA2BR,IAAW;AAAA,EACjE,cAAc;AACV,UAAO;AACP,SAAK,cAAc,CAAE;AACrB,SAAK,cAAc;AACnB,SAAK,sBAAsB,eAAe,MAAM;AAChD,SAAK,kBAAkB,eAAe,MAAM;AAC5C,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,oBAAoB,eAAe,MAAM,qBAAqB;AACnE,SAAK,wBAAwB,eAAe,MAAM;AAClD,SAAK,UAAU,eAAe,MAAM;AACpC,SAAK,gBAAgB,eAAe,MAAM,iBAAiB;AAC3D,SAAK,oBAAoB,eAAe,MAAM;AAC9C,SAAK,cAAc,gBAAgB,MAAM;AACzC,SAAK,gBAAgB,kBAAkB,MAAM;AAC7C,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,aAAa,eAAe,MAAM;AACvC,SAAK,eAAe,eAAe,MAAM;AACzC,SAAK,6BAA6B,eAAe,MAAM;AACvD,SAAK,0BAA0B,eAAe,MAAM;AACpD,SAAK,qBAAqB,eAAe,MAAM;AAC/C,SAAK,YAAY,KAAK,GAAG;AAAA,MACrB,kBAAkB,aAAa,iBAAiB,sBAAoB;AAChE,YAAI,KAAK,kBAAkB,kBAAkB;AACzC,2BAAiB,OAAQ;AAAA,QAC7C;AAAA,MACA,CAAa;AAAA,MACD,gBAAgB,aAAa,qBAAqB,oBAAkB;AAChE,YAAI,KAAK,gBAAgB,gBAAgB;AACrC,eAAK,cAAc;AAAA,QACvC;AAAA,MACA,CAAa;AAAA,MACD,eAAe,UAAU,cAAY;AACjC,aAAK,sBAAsB,SAAS;AACpC,aAAK,kBAAkB,SAAS;AAChC,aAAK,cAAc,SAAS;AAC5B,aAAK,gBAAgB,SAAS;AAC9B,aAAK,UAAU,SAAS;AACxB,aAAK,gBAAgB,SAAS;AAC9B,aAAK,oBAAoB,SAAS;AAClC,aAAK,oBAAoB,SAAS,qBAAqB;AACvD,aAAK,gBAAgB,SAAS,iBAAiB;AAC/C,aAAK,aAAa,SAAS;AAC3B,YAAI,SAAS,YAAY;AACrB,2BAAiB,OAAQ;AAAA,QAC7C;AACgB,aAAK,eAAe,SAAS;AAC7B,aAAK,6BAA6B,SAAS;AAC3C,aAAK,0BAA0B,SAAS;AACxC,aAAK,qBAAqB,SAAS;AAAA,MACtC,CAAA;AAAA,IACb,CAAS;AAAA,EACT;AAAA,EACI,eAAe;AACX,mBAAe,eAAgB;AAC/B,SAAK,mBAAoB;AAAA,EACjC;AAAA,EACI,uBAAuB;AACnB,SAAK,YAAY,QAAQ,iBAAe,4CAAe;AACvD,kBAAc,KAAK,QAAQ;AAAA,EACnC;AAAA,EACI,SAAS;AACL,WAAOC;AAAAA,kDACmC,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA,UAC5D,KAAK,aAAc,CAAA;AAAA;AAAA;AAAA,EAG7B;AAAA,EACI,qBAAqB;AACjB,SAAK,WAAW,YAAY,MAAM;AAC9B,UAAI,CAAC,eAAe,2BAA2B;AAC3C,uBAAe,eAAgB;AAAA,MAC/C;AAAA,IACS,GAAE,GAAK;AAAA,EAChB;AAAA,EACI,eAAe;;AACX,UAAM,kBAAkB,GAAG,aAAa,0BAA0B,WAAW,KAAK,iBAAiB,CAAC,CAAC,KAAI,UAAK,gBAAL,mBAAkB,MAAM;AACjI,UAAM,cAAc,GAAG,aAAa,0BAA0B,WAAW,KAAK,aAAa,CAAC,CAAC,KAAI,UAAK,YAAL,mBAAc,MAAM;AACrH,UAAM,mBAAmB,WAAW,KAAK,iBAAiB,IAAI,KAAK;AACnE,UAAM,eAAe,WAAW,KAAK,aAAa,IAAI,KAAK,qBAAqB,KAAK,iBAAiB;AACtG,UAAM,YAAY,aAAa,0BAA0B,gBAAgB;AACzE,UAAM,eAAe,aAAa,0BAA0B,YAAY;AACxE,UAAM,UAAU,KAAK,gBACjB,KAAK,2BACL,KAAK,sBACL,KAAK;AACT,WAAOA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,kEAWmD,SAAS;AAAA;AAAA;AAAA;AAAA,qBAItD,eAAe;AAAA,0BACX,UAAK,gBAAL,mBAAkB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kEAagB,YAAY;AAAA;AAAA;AAAA;AAAA,qBAIzD,WAAW;AAAA,0BACP,UAAK,YAAL,mBAAc,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMpC,KAAK,gBAAiB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAoBX,KAAK,oBAAoB,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAUjC,OAAO;AAAA,wBACN,OAAO;AAAA,qBACV,KAAK,kBAAkB,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,gBAGtC,KAAK,kBAAmB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMxC;AAAA,EACI,kBAAkB;AACd,QAAI,CAAC,KAAK,eAAe,CAAC,KAAK,WAAW,KAAK,YAAY;AACvD,aAAO;AAAA,IACnB;AACQ,WAAOA,mCAAuC,KAAK,WAAW;AAAA,EACtE;AAAA,EACI,oBAAoB;AAChB,QAAI,KAAK,4BAA4B;AACjC,aAAO;AAAA,IACnB;AACQ,QAAI,KAAK,qBAAqB;AAC1B,aAAO;AAAA,IACnB;AACQ,WAAO;AAAA,EACf;AAAA,EACI,sBAAsB;AAClB,qBAAiB,OAAQ;AAAA,EACjC;AAAA,EACI,oBAAoB;AAChB,QAAI,KAAK,qBAAqB;AAC1B,qBAAe,2BAA2B,KAAK,mBAAmB;AAAA,IAC9E,OACa;AACD,qBAAe,uBAAuB,KAAK,eAAe;AAAA,IACtE;AAAA,EACA;AACA;AACA,mBAAmB,SAASC;AAC5BN,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,YAAY,MAAM;AACnDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,eAAe,MAAM;AACtDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,uBAAuB,MAAM;AAC9DP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,mBAAmB,MAAM;AAC1DP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,eAAe,MAAM;AACtDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,qBAAqB,MAAM;AAC5DP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,yBAAyB,MAAM;AAChEP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,WAAW,MAAM;AAClDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,iBAAiB,MAAM;AACxDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,qBAAqB,MAAM;AAC5DP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,eAAe,MAAM;AACtDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,iBAAiB,MAAM;AACxDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,iBAAiB,MAAM;AACxDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,cAAc,MAAM;AACrDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,gBAAgB,MAAM;AACvDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,8BAA8B,MAAM;AACrEP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,2BAA2B,MAAM;AAClEP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,mBAAmB,WAAW,sBAAsB,MAAM;AAC7D,qBAAqBP,aAAW;AAAA,EAC5B,cAAc,uBAAuB;AACzC,GAAG,kBAAkB;AC5QrB,MAAA,WAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAIC,eAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAYA,IAAI,mBAAmB,MAAMY,0BAAyBT,IAAW;AAAA,EAC7D,cAAc;AACV,UAAO;AACP,SAAK,WAAW,IAAI,qBAAqB,MAAM,MAAS;AACxD,SAAK,WAAW;AAChB,SAAK,OAAO;AACZ,SAAK,SAAS;AACd,SAAK,QAAQ;AACb,SAAK,SAAS;AACd,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,SAAK,WAAW,IAAI,qBAAqB,aAAW;AAChD,cAAQ,QAAQ,WAAS;AACrB,YAAI,MAAM,gBAAgB;AACtB,eAAK,UAAU;AAAA,QACnC,OACqB;AACD,eAAK,UAAU;AAAA,QACnC;AAAA,MACA,CAAa;AAAA,IACb,GAAW,EAAE,WAAW,KAAK;AAAA,EAC7B;AAAA,EACI,eAAe;AACX,SAAK,SAAS,QAAQ,IAAI;AAAA,EAClC;AAAA,EACI,uBAAuB;AACnB,SAAK,SAAS,WAAY;AAAA,EAClC;AAAA,EACI,SAAS;;AACL,QAAI,CAAC,KAAK,SAAS;AACf,aAAO;AAAA,IACnB;AACQ,UAAM,QAAQ,KAAK,UAAU,KAAK,SAAQ,gBAAW,SAAS,KAAK,OAAO,KAAK,MAAM,MAA3C,mBAA8C,QAAQ,KAAK;AACrG,WAAOC;AAAAA;AAAAA,UAEL,KAAK,eAAgB,CAAA;AAAA;AAAA;AAAA,6EAG8C,KAAK,IAAI;AAAA,cACxE,QACAA;AAAAA;AAAAA,uBAES,aAAa,0BAA0B,OAAO,CAAC,CAAC;AAAA;AAAA,oBAGzD,IAAI;AAAA;AAAA;AAAA,yEAGuD,KAAK,MAAM;AAAA,cACtE,KAAK,SACLA;AAAAA,oBACM,aAAa,0BAA0B,KAAK,QAAQ,CAAC,CAAC;AAAA,+BAE5D,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlB;AAAA,EACI,iBAAiB;AACb,QAAI,KAAK,YAAY;AACjB,aAAOA;AAAAA;AAAAA;AAAAA,IAGnB;AACQ,QAAI,KAAK,UAAU;AACf,aAAOA;AAAAA;AAAAA;AAAAA,cAGL,KAAK,QAAQ;AAAA,uBACJ,KAAK,cAAc;AAAA;AAAA,IAE1C;AACQ,WAAO;AAAA,EACf;AAAA,EACI,iBAAiB;AACb,SAAK,aAAa;AAAA,EAC1B;AACA;AACA,iBAAiB,SAAS,CAAC,aAAa,eAAeC,QAAM;AAC7DN,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,iBAAiB,WAAW,YAAY,MAAM;AACjDR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,iBAAiB,WAAW,QAAQ,MAAM;AAC7CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,iBAAiB,WAAW,UAAU,MAAM;AAC/CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,iBAAiB,WAAW,SAAS,MAAM;AAC9CR,aAAW;AAAA,EACPQ,EAAQ;AACZ,GAAG,iBAAiB,WAAW,UAAU,MAAM;AAC/CR,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,iBAAiB,WAAW,WAAW,MAAM;AAChDP,aAAW;AAAA,EACPO,EAAK;AACT,GAAG,iBAAiB,WAAW,cAAc,MAAM;AACnD,mBAAmBP,aAAW;AAAA,EAC1B,cAAc,qBAAqB;AACvC,GAAG,gBAAgB;ACvHnB,MAAA,SAAeD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAI,aAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQE,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAaG,IAAC,yBAAyB,MAAMa,gCAA+BV,IAAW;AAAA,EACzE,cAAc;;AACV,UAAO;AACP,SAAK,cAAc,CAAE;AACrB,SAAK,eAAc,sBAAiB,MAAM,SAAvB,mBAA6B;AAChD,SAAK,cAAc,eAAe,MAAM;AACxC,SAAK,oBAAoB,eAAe,MAAM;AAC9C,SAAK,UAAU,eAAe,MAAM;AACpC,SAAK,sBAAsB,eAAe,MAAM;AAChD,SAAK,gBAAgB,eAAe,MAAM;AAC1C,SAAK,cAAc;AACnB,SAAK,YAAY,KAAK,GAAG;AAAA,MACrB,eAAe,UAAU,cAAY;AACjC,aAAK,cAAc,SAAS;AAC5B,aAAK,UAAU,SAAS;AACxB,aAAK,sBAAsB,SAAS;AAAA,MACvC,CAAA;AAAA,IACb,CAAS;AAAA,EACT;AAAA,EACI,UAAU;;AACN,UAAM,4BAA2B,UAAK,eAAL,mBAAiB,cAAc;AAChE,yEAA0B,iBAAiB,UAAU,KAAK,4BAA4B,KAAK,IAAI;AAC/F,UAAM,cAAa,UAAK,eAAL,mBAAiB,cAAc;AAClD,6CAAY,iBAAiB,UAAU,KAAK,sBAAsB,KAAK,IAAI;AAAA,EACnF;AAAA,EACI,uBAAuB;;AACnB,UAAM,qBAAsB;AAC5B,UAAM,4BAA2B,UAAK,eAAL,mBAAiB,cAAc;AAChE,UAAM,cAAa,UAAK,eAAL,mBAAiB,cAAc;AAClD,yEAA0B,oBAAoB,UAAU,KAAK,4BAA4B,KAAK,IAAI;AAClG,6CAAY,oBAAoB,UAAU,KAAK,sBAAsB,KAAK,IAAI;AAC9E,kBAAc,KAAK,QAAQ;AAAA,EACnC;AAAA,EACI,SAAS;AACL,WAAOC;AAAAA;AAAAA,UAEL,KAAK,oBAAqB,CAAA,IAAI,KAAK,yBAAyB,IAAI,KAAK,eAAgB,CAAA;AAAA;AAAA;AAAA,EAG/F;AAAA,EACI,cAAc,OAAO;AACjB,QAAI,KAAK,gBAAgB,eAAe;AACpC,qBAAe,eAAe,KAAK;AAAA,IAC/C,OACa;AACD,qBAAe,WAAW,KAAK;AAC/B,UAAI,KAAK,eAAe,KAAK,mBAAmB;AAC5C,uBAAe,WAAY;AAAA,MAC3C;AAAA,IACA;AACQ,qBAAiB,OAAQ;AAAA,EACjC;AAAA,EACI,sBAAsB;AAClB,WAAOA;AAAAA,2BACY,CAAC,OAAO,KAAK,KAAK,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAO9B,KAAK,WAAW;AAAA,yBACV,KAAK,oBAAoB,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,EAI5D;AAAA,EACI,iBAAiB;AACb,UAAM,aAAa,KAAK,sBAAsB,OAAO,OAAO,KAAK,mBAAmB,IAAI,CAAE;AAC1F,UAAM,SAAS,KAAK,gBAAgB,KAAK,gBAAgB,CAAE;AAC3D,UAAM,qBAAqB,KAAK,qBAAqB,YAAY,KAAK,WAAW;AACjF,UAAM,iBAAiB,KAAK,qBAAqB,QAAQ,KAAK,WAAW;AACzE,WAAOA;AAAAA;AAAAA,4CAE6B,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA,aACpD,yDAAoB,UAAS,IAC3BA;AAAAA;AAAAA;AAAAA;AAAAA,kBAII,mBAAmB,IAAI,WAAS;;AAClC,YAAM,WAAW,MAAM,aAAW,UAAK,gBAAL,mBAAkB,WAChD,MAAM,aAAW,UAAK,YAAL,mBAAc;AACnC,aAAOA;AAAAA;AAAAA,4DAEqC,MAAM,MAAM;AAAA,6BAC3C,MAAM,IAAI;AAAA,kCACL,QAAQ;AAAA,+BACX,MAAM,MAAM;AAAA,8BACb,+BAAO,KAAK;AAAA,gCACX,oCAAO,aAAP,mBAAiB,OAAO;AAAA,iCACtB,MAAM,OAAO;AAAA,+BACf,MAAM;AACjB,YAAI,CAAC,UAAU;AACX,eAAK,cAAc,KAAK;AAAA,QAChD;AAAA,MACiB,CAAA;AAAA;AAAA;AAAA;AAAA,IAIjB,CAAa,CAAC;AAAA,kBAEA,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA,aAKN,iDAAgB,UAAS,IACvB,eAAe,IAAI,WAASA;AAAAA;AAAAA,0DAEgB,MAAM,MAAM;AAAA,2BAC3C,MAAM,IAAI;AAAA,6BACR,MAAM,MAAM;AAAA,+BACV,MAAM,OAAO;AAAA,6BACf,MAAM,KAAK,cAAc,KAAK,CAAC;AAAA;AAAA;AAAA,iBAG3C,IACH,IAAI;AAAA;AAAA;AAAA;AAAA,EAIlB;AAAA,EACI,0BAA0B;AACtB,UAAM,SAAS,eAAe,MAAM,kBAC9B,eAAe,MAAM,gBAAgB,MAAM,GAAG,CAAC,IAC/C;AACN,QAAI,CAAC,QAAQ;AACT,aAAO;AAAA,IACnB;AACQ,WAAOA;AAAAA,8DAC+C,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA,UACxE,OAAO,IAAI,WAASA;AAAAA;AAAAA,qBAET,MAAM,MAAM;AAAA,yBACR,MAAM,OAAO;AAAA,uBACf,MAAM,KAAK,cAAc,KAAK,CAAC;AAAA;AAAA;AAAA,WAG3C,CAAC;AAAA;AAAA;AAAA,EAGZ;AAAA,EACI,oBAAoB,OAAO;AACvB,SAAK,cAAc,MAAM;AAAA,EACjC;AAAA,EACI,8BAA8B;;AAC1B,UAAM,aAAY,UAAK,eAAL,mBAAiB,cAAc;AACjD,QAAI,CAAC,WAAW;AACZ;AAAA,IACZ;AACQ,cAAU,MAAM,YAAY,2CAA2C,SAAS,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,UAAU,EAAE,UAAU;AAC9I,cAAU,MAAM,YAAY,4CAA4C,SAAS,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,cAAc,UAAU,aAAa,UAAU,WAAW,EAAE,UAAU;AAAA,EACvM;AAAA,EACI,wBAAwB;;AACpB,UAAM,aAAY,UAAK,eAAL,mBAAiB,cAAc;AACjD,QAAI,CAAC,WAAW;AACZ;AAAA,IACZ;AACQ,cAAU,MAAM,YAAY,gCAAgC,SAAS,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,SAAS,EAAE,UAAU;AAClI,cAAU,MAAM,YAAY,mCAAmC,SAAS,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,eAAe,UAAU,YAAY,UAAU,YAAY,EAAE,UAAU;AAAA,EAC/L;AAAA,EACI,qBAAqB,QAAQ,MAAM;AAC/B,WAAO,OAAO,OAAO,WAAS,GAAG,MAAM,MAAM,IAAI,MAAM,IAAI,IAAI,MAAM,OAAO,GAAG,YAAa,EAAC,SAAS,KAAK,YAAW,CAAE,CAAC;AAAA,EACjI;AACA;AACA,uBAAuB,SAAS;AAChC,WAAW;AAAA,EACPE,EAAK;AACT,GAAG,uBAAuB,WAAW,YAAY,MAAM;AACvD,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,eAAe,MAAM;AAC1D,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,eAAe,MAAM;AAC1D,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,qBAAqB,MAAM;AAChE,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,WAAW,MAAM;AACtD,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,uBAAuB,MAAM;AAClE,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,iBAAiB,MAAM;AAC5D,WAAW;AAAA,EACPA,EAAK;AACT,GAAG,uBAAuB,WAAW,eAAe,MAAM;AAC1D,yBAAyB,WAAW;AAAA,EAChC,cAAc,4BAA4B;AAC9C,GAAG,sBAAsB;"}
@@ -1,6 +1,6 @@
1
- import { i, r, x } from "./appkit-QKuZmMgA.js";
2
- import { c as customElement } from "./if-defined-rsGAB-1O.js";
3
- import "./index-BpZcJPob.js";
1
+ import { i, r, x } from "./appkit-hZyGLfr5.js";
2
+ import { c as customElement } from "./if-defined-dGSnGaje.js";
3
+ import "./index-DAEKpLXx.js";
4
4
  const styles = i`
5
5
  :host > wui-flex:first-child {
6
6
  height: 500px;
@@ -39,4 +39,4 @@ W3mTransactionsView = __decorate([
39
39
  export {
40
40
  W3mTransactionsView
41
41
  };
42
- //# sourceMappingURL=transactions-B5Ub0omb.js.map
42
+ //# sourceMappingURL=transactions-DSiHT2Zb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactions-B5Ub0omb.js","sources":["../../scaffold-ui/dist/esm/src/views/w3m-transactions-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-transactions-view/index.js"],"sourcesContent":["import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: 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 { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '../../partials/w3m-activity-list/index.js';\nimport styles from './styles.js';\nlet W3mTransactionsView = class W3mTransactionsView extends LitElement {\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'm', 'm', 'm']} gap=\"s\">\n <w3m-activity-list page=\"activity\"></w3m-activity-list>\n </wui-flex>\n `;\n }\n};\nW3mTransactionsView.styles = styles;\nW3mTransactionsView = __decorate([\n customElement('w3m-transactions-view')\n], W3mTransactionsView);\nexport { W3mTransactionsView };\n//# sourceMappingURL=index.js.map"],"names":["css","r","i","W3mTransactionsView","LitElement","html"],"mappings":";;;AACA,MAAA,SAAeA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAI,aAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAMG,IAAC,sBAAsB,MAAME,6BAA4BC,EAAW;AAAA,EACnE,SAAS;AACL,WAAOC;AAAAA,kDACmC,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA,EAItE;AACA;AACA,oBAAoB,SAAS;AAC7B,sBAAsB,WAAW;AAAA,EAC7B,cAAc,uBAAuB;AACzC,GAAG,mBAAmB;"}
1
+ {"version":3,"file":"transactions-DSiHT2Zb.js","sources":["../../scaffold-ui/dist/esm/src/views/w3m-transactions-view/styles.js","../../scaffold-ui/dist/esm/src/views/w3m-transactions-view/index.js"],"sourcesContent":["import { css } from 'lit';\nexport default css `\n :host > wui-flex:first-child {\n height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n }\n\n :host > wui-flex:first-child::-webkit-scrollbar {\n display: 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 { customElement } from '@reown/appkit-ui';\nimport '@reown/appkit-ui/wui-flex';\nimport '../../partials/w3m-activity-list/index.js';\nimport styles from './styles.js';\nlet W3mTransactionsView = class W3mTransactionsView extends LitElement {\n render() {\n return html `\n <wui-flex flexDirection=\"column\" .padding=${['0', 'm', 'm', 'm']} gap=\"s\">\n <w3m-activity-list page=\"activity\"></w3m-activity-list>\n </wui-flex>\n `;\n }\n};\nW3mTransactionsView.styles = styles;\nW3mTransactionsView = __decorate([\n customElement('w3m-transactions-view')\n], W3mTransactionsView);\nexport { W3mTransactionsView };\n//# sourceMappingURL=index.js.map"],"names":["css","r","i","W3mTransactionsView","LitElement","html"],"mappings":";;;AACA,MAAA,SAAeA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;ACDf,IAAI,aAA0C,SAAU,YAAY,QAAQ,KAAK,MAAM;AACnF,MAAI,IAAI,UAAU,QAAQC,KAAI,IAAI,IAAI,SAAS,SAAS,OAAO,OAAO,OAAO,yBAAyB,QAAQ,GAAG,IAAI,MAAM;AAC3H,MAAI,OAAO,YAAY,YAAY,OAAO,QAAQ,aAAa;AAAY,IAAAA,KAAI,QAAQ,SAAS,YAAY,QAAQ,KAAK,IAAI;AAAA;AACxH,aAASC,KAAI,WAAW,SAAS,GAAGA,MAAK,GAAGA;AAAK,UAAI,IAAI,WAAWA,EAAC;AAAG,QAAAD,MAAK,IAAI,IAAI,EAAEA,EAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAKA,EAAC,IAAI,EAAE,QAAQ,GAAG,MAAMA;AAChJ,SAAO,IAAI,KAAKA,MAAK,OAAO,eAAe,QAAQ,KAAKA,EAAC,GAAGA;AAChE;AAMG,IAAC,sBAAsB,MAAME,6BAA4BC,EAAW;AAAA,EACnE,SAAS;AACL,WAAOC;AAAAA,kDACmC,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA,EAItE;AACA;AACA,oBAAoB,SAAS;AAC7B,sBAAsB,WAAW;AAAA,EAC7B,cAAc,uBAAuB;AACzC,GAAG,mBAAmB;"}
@@ -1,11 +1,11 @@
1
- import { i, b as resetStyles, r, x, K as AlertController, f as elementStyles, w as colorStyles, R as RouterController, j as ChainController, m as ConstantsUtil, k as ConnectionController, e as EventsController, H as SIWXUtil, M as ModalController, O as OptionsController, q as AssetUtil, C as ConnectorController, A as AccountController, S as SnackController, s as ApiController, L as initializeTheming, d as CoreHelperUtil, c as ConstantsUtil$1, T as ThemeController } from "./appkit-QKuZmMgA.js";
2
- import { c as customElement, n, r as r$1, o, U as UiHelperUtil } from "./if-defined-rsGAB-1O.js";
3
- import "./index-oHFxrT0W.js";
4
- import "./index-2BB7m0jA.js";
5
- import "./index-C1wSwK-1.js";
6
- import "./index-DQdtZuhJ.js";
7
- import "./index-DCLENwVM.js";
8
- import "./index-Dcg9z57Z.js";
1
+ import { i, b as resetStyles, r, x, U as AlertController, f as elementStyles, F as colorStyles, R as RouterController, j as ChainController, m as ConstantsUtil, k as ConnectionController, e as EventsController, K as SIWXUtil, M as ModalController, O as OptionsController, p as AssetUtil, C as ConnectorController, A as AccountController, S as SnackController, u as ApiController, V as initializeTheming, d as CoreHelperUtil, c as ConstantsUtil$1, T as ThemeController } from "./appkit-hZyGLfr5.js";
2
+ import { c as customElement, n, r as r$1, o, U as UiHelperUtil } from "./if-defined-dGSnGaje.js";
3
+ import "./index-BbYzNK-e.js";
4
+ import "./index-BgPMLnwu.js";
5
+ import "./index-WNHJ5PXY.js";
6
+ import "./index-PNpm0-bd.js";
7
+ import "./index-CvV6W9De.js";
8
+ import "./index-CewBInzg.js";
9
9
  const styles$7 = i`
10
10
  :host {
11
11
  display: block;
@@ -1208,4 +1208,4 @@ W3mModal = __decorate([
1208
1208
  export {
1209
1209
  W3mModal
1210
1210
  };
1211
- //# sourceMappingURL=w3m-modal-CaeqjcO9.js.map
1211
+ //# sourceMappingURL=w3m-modal-Cuv0zBPp.js.map