From 9c533a7ff8dd40b792c76f938e41c9df28fb5824 Mon Sep 17 00:00:00 2001 From: line-6000 <154492442+line-6000@users.noreply.github.com> Date: Wed, 29 Apr 2026 00:34:58 +0800 Subject: [PATCH] feat(pay): switch checkout counter to SPA redirect + JSON API - redirect `/pay/checkout-counter/:trade_id` to `/cashier/:trade_id` - add `/pay/checkout-counter-resp/:trade_id` for checkout JSON payload - remove embedded `static` release and keep `www` as the web bundle source - regenerate PWA/www assets and move chain icons to `/www/images/chains` --- src/controller/comm/pay_controller.go | 24 +- src/main.go | 9 - src/route/router.go | 10 +- src/static/index.html | 546 --------- src/static/payment.js | 1022 ----------------- src/www/assets/401-CNflrND5.js | 1 + src/www/assets/401-kzzPZFna.js | 1 - src/www/assets/403-CQfBJzJh.js | 1 + src/www/assets/403-Cpy7v32n.js | 1 - src/www/assets/404-Bi4wqZq5.js | 1 + src/www/assets/404-BsLbhv_m.js | 1 - src/www/assets/500-CG0L0TZx.js | 1 + src/www/assets/500-CiuhDp_H.js | 1 - src/www/assets/503-BBEYhtPx.js | 1 + src/www/assets/503-C8GhfezX.js | 1 - ...nly-COESZSX_.js => ClientOnly-FdPNE-Ha.js} | 2 +- .../{Match-Bdr6F13c.js => Match-BoLpbSXg.js} | 2 +- ...atches-C_9WN1ag.js => Matches-DgzoKqo8.js} | 2 +- src/www/assets/_error-Ct843SHu.js | 2 - src/www/assets/_error-DUUb7pi1.js | 1 - src/www/assets/_error-DcF4FKJZ.js | 2 + src/www/assets/_error-aP8WfZ0L.js | 1 + src/www/assets/_trade_id-CN7o2QQi.js | 1 + src/www/assets/_trade_id-Cy_8WDE7.js | 2 + src/www/assets/addresses-MpsYhDuT.js | 3 + src/www/assets/addresses-Pwy1cHVj.js | 3 - ...nce-Qiu8JKX7.js => appearance-DECzlo4S.js} | 2 +- ...eft-BQ3rygWM.js => arrow-left-CXopUm0P.js} | 2 +- ....js => auth-animation-context-fS7P6vQ_.js} | 2 +- ...ore-D_jr_Pei.js => auth-store-B0MXCdkM.js} | 2 +- .../{badge-D-FAREMY.js => badge-zrw4vTsO.js} | 2 +- ...{button-D-oR8d6w.js => button-CMgGM5Zo.js} | 2 +- .../{card-LDLQwVm3.js => card-D15gO6_z.js} | 2 +- src/www/assets/chains-61VB-Xo3.js | 1 + src/www/assets/chains-a6BmCl-8.js | 1 - ...e-DnSbj0Yy.js => chains-store-CQ4PTJ_l.js} | 2 +- src/www/assets/check-BrSI5FnG.js | 1 + src/www/assets/check-DH6qIczM.js | 1 - ...ckbox-D_bL2Pt-.js => checkbox-NsyByt55.js} | 2 +- ...n-uSXLUPEl.js => chevron-down-Bp5qPJdK.js} | 2 +- ...Q-XIDV.js => chevrons-up-down-D9JS4xSh.js} | 2 +- ...k-nos3opMb.js => circle-check-BFJeWPCP.js} | 2 +- ...lock-3-TWJWgy8T.js => clock-3-Q2gMLtW1.js} | 2 +- src/www/assets/coming-soon-dialog-DIE5FD4U.js | 1 - src/www/assets/coming-soon-dialog-Jz4BlQ-8.js | 1 + src/www/assets/command-DZRbaUDS.js | 1 + src/www/assets/command-yFHhtFiR.js | 1 - ...DyK21C4Z.js => confirm-dialog-DEI3bDRD.js} | 4 +- ...ookies-D0aVbsDr.js => cookies-DtK8C3EL.js} | 0 ...ustsS.js => copy-to-clipboard-BF7uZfYk.js} | 2 +- ...X28cCu.js => createLucideIcon-B033Mmf5.js} | 2 +- src/www/assets/dashboard-Ba2NIcYg.js | 42 + src/www/assets/dashboard-DETe9Zpn.js | 42 - ...ble-C3uNvchK.js => data-table-ur1C4EN0.js} | 4 +- src/www/assets/display-BGnhCcSb.js | 1 - src/www/assets/display-xs4hIl5y.js | 1 + .../{dist-BZg_Jfik.js => dist-8IaROFd6.js} | 2 +- .../{dist-BPKZF5GI.js => dist-BOgRCYiY.js} | 2 +- src/www/assets/dist-BTQ1T4Z1.js | 1 + .../{dist-oydJxq9L.js => dist-BcPwnnrp.js} | 2 +- src/www/assets/dist-Bofa-lcL.js | 1 + src/www/assets/dist-CBPejFXg.js | 1 + .../{dist-CML2zK1G.js => dist-CFWQDH7X.js} | 2 +- src/www/assets/dist-CT2DjA94.js | 1 - .../{dist-QGW08nls.js => dist-CYYy0EBp.js} | 2 +- .../{dist-Bh3bGrZa.js => dist-DB9dWkN8.js} | 2 +- .../{dist-C3yOG_Qz.js => dist-DCwMhmtb.js} | 2 +- .../{dist-BeVKhAtj.js => dist-DYutcIDs.js} | 2 +- .../{dist-DzENW8NP.js => dist-DfdMgsbg.js} | 2 +- src/www/assets/dist-LQc8uwm4.js | 1 + .../{dist-Ck6_E5T6.js => dist-aKZxtpke.js} | 2 +- .../{dist-BNiRpK39.js => dist-bcH04SHd.js} | 2 +- .../{dist-DJhZSa1-.js => dist-q78A-MEc.js} | 2 +- ...nload-BhpqmSj0.js => download-DSPALNQc.js} | 2 +- src/www/assets/dropdown-menu-DkKDP9Gn.js | 1 + src/www/assets/dropdown-menu-HbmfecEg.js | 1 - ...ipsis-DvvxWQuy.js => ellipsis-zboj1v6G.js} | 2 +- ...te-BelJgFUf.js => empty-state-Bbli--Ux.js} | 2 +- src/www/assets/epay-BBogPZsX.js | 1 + src/www/assets/epay-CSwdoLsE.js | 1 - ...{es2015-DRmlSfkW.js => es2015-DPp95FAP.js} | 2 +- .../{eye-CJkHHosh.js => eye-DRC9s5kF.js} | 2 +- ...ye-off-BBTW1z_J.js => eye-off-BBIH_95C.js} | 2 +- ...-BBeIKmOK.js => font-provider-DlVfsvee.js} | 2 +- src/www/assets/forbidden-B-WSRpe6.js | 1 - src/www/assets/forbidden-s6H4egxL.js | 1 + .../{form-uKra2bmF.js => form-By70kcBQ.js} | 2 +- src/www/assets/general-error-Cwxn1dbd.js | 1 + src/www/assets/general-error-ruXTchhS.js | 1 - ...{header-B5Qx5Y9m.js => header-DZp29x0-.js} | 2 +- .../{help-8HzWQeDm.js => help-ZLP4CZLC.js} | 2 +- src/www/assets/index-BwvGCcYo.css | 2 + .../{index-BFYQldDz.js => index-DSk9K8MJ.js} | 6 +- src/www/assets/index-uuDLrfbi.css | 2 - .../{input-CZHXycLK.js => input-BRm9segX.js} | 2 +- src/www/assets/install-B2awRNDy.js | 1 + src/www/assets/install-iFxm6jjv.js | 1 - ...s-BQBy3gz7.js => integrations-DJrxnilO.js} | 2 +- src/www/assets/keys-C8Pk4o9V.js | 2 - src/www/assets/keys-DCEeBoWO.js | 2 + .../{label-B2Q8_O-h.js => label-rRuYOPfg.js} | 2 +- .../{lib-_PocwKaj.js => lib-ByrEgu63.js} | 2 +- .../{link-Du-u9SDI.js => link-cKoSDPwi.js} | 2 +- ...-DQHo9Sp_.js => loader-circle-USrlthPz.js} | 2 +- src/www/assets/logo-B5lF0pzp.js | 1 + src/www/assets/logo-BVdckS6R.js | 1 - src/www/assets/long-text-CysOFseT.js | 1 + src/www/assets/long-text-XqSY0a1g.js | 1 - .../{main-DvsnNI3V.js => main-DigoYPya.js} | 2 +- src/www/assets/maintenance-error-_xUDTkL_.js | 1 + src/www/assets/maintenance-error-yQ4OJvXf.js | 1 - ...t-BJCpOvLW.js => matchContext-ByMpvvGc.js} | 2 +- src/www/assets/messages-BOl-zx8S.js | 1 - src/www/assets/messages-Bhh1Viqz.js | 1 + src/www/assets/not-found-error-D9glqlci.js | 1 + src/www/assets/not-found-error-mxpXcTRa.js | 1 - src/www/assets/notifications-CKOafx8I.js | 1 - src/www/assets/notifications-gnsCGapf.js | 1 + src/www/assets/orders-CTtwpZWi.js | 1 - src/www/assets/orders-CWjfXahg.js | 1 + ...er-BRM1dngJ.js => page-header-CBQ6sv9V.js} | 2 +- src/www/assets/password-D6OxzBol.js | 1 + src/www/assets/password-Fr9ZcJNs.js | 1 - ...ZB498Nq4.js => password-input-aQnCAOdK.js} | 2 +- ...-Dgvp9Vym.js => payment-setup-DdC-42Ql.js} | 2 +- ...opover-M5uqmgyK.js => popover-CLhYmFDu.js} | 2 +- src/www/assets/preload-helper-B2PzqQRQ.js | 1 + ...up-8QacflxY.js => radio-group-BEhmAVSM.js} | 2 +- src/www/assets/rate-DT428zVo.js | 1 + src/www/assets/rate-Dsrqg6hQ.js | 1 - src/www/assets/route-B74pL553.js | 1 + src/www/assets/route-BO5WPM5m.js | 1 - .../{route-BfQF2LcU.js => route-BQ-hKRGP.js} | 2 +- src/www/assets/route-CKZGG7BF.js | 1 - .../{route-CbQ1_n1Q.js => route-CgnHtvRo.js} | 2 +- src/www/assets/route-D7Pht9_3.js | 1 + src/www/assets/route-DU6beShs.js | 1 + .../{route-C5Xnq6N2.js => route-DVUwa8Pp.js} | 2 +- src/www/assets/route-DnKcrHXD.js | 1 + src/www/assets/route-GIha9u4h.js | 1 - src/www/assets/router-D0lu_-Oq.js | 2 - src/www/assets/router-D0oHZM2L.js | 2 + ...{routes-Dj-aXygU.js => routes-UfAPSbng.js} | 0 src/www/assets/rpc-C9FTIUCr.js | 1 - src/www/assets/rpc-CluL4csd.js | 1 + src/www/assets/search-provider-D-fTfilE.js | 1 - src/www/assets/search-provider-Decv_5jQ.js | 1 + src/www/assets/select-CiLcNbAG.js | 1 + src/www/assets/select-CvMpqpz9.js | 1 - ...ator-Dw-mNGCy.js => separator-Dp_coI-W.js} | 2 +- src/www/assets/settings-6Tt8SQ46.js | 1 - src/www/assets/settings-Kmc8y_QJ.js | 1 + ...k-NJ5V92SM.js => shield-check-CJEjPJqE.js} | 2 +- ..._a9.js => show-submitted-data-C7180yzk.js} | 2 +- ...av-eQOCItLO.js => sidebar-nav-Cc3vNIBd.js} | 2 +- src/www/assets/sign-in-D3PxHB7w.js | 1 - src/www/assets/sign-in-GzVULgv4.js | 1 + src/www/assets/skeleton-BJZJu227.js | 1 + src/www/assets/skeleton-gJOqI-7w.js | 1 - src/www/assets/sun-TG0uyxhT.js | 1 + ...{switch-m0XBbPWc.js => switch-BHaS9TMu.js} | 2 +- src/www/assets/telegram-BWfz_d2q.js | 1 + src/www/assets/telegram-BpeS2gK_.js | 1 - ...cope-CH8QonjS.js => telescope-C0wI0Fuj.js} | 2 +- ...tarea-Cp-VCvek.js => textarea-BQ8cJUWr.js} | 2 +- ...Dmxgp34D.js => theme-provider-BIsY189-.js} | 2 +- src/www/assets/theme-switch-BVGTp-bE.js | 1 - src/www/assets/theme-switch-D8VX-5g_.js | 1 + src/www/assets/tooltip-BmTb484u.js | 1 + src/www/assets/tooltip-m5xmPGQe.js | 1 - ...rash-2-CaT-Drvx.js => trash-2-DXA4p59Y.js} | 2 +- src/www/assets/unauthorized-error-9CwofmD6.js | 1 - src/www/assets/unauthorized-error-DKwsOXnK.js | 1 + ...z1q.js => use-table-url-state-D-ZLKfDn.js} | 2 +- src/www/assets/useNavigate-BAxMzgsd.js | 1 + src/www/assets/useNavigate-BNrwOhV8.js | 1 - ...uter-DS97kuA5.js => useRouter-IcH5TSf9.js} | 2 +- ...Am3soIW6.js => useRouterState-cEeJ9qod.js} | 2 +- ...arch-BufLn6Rh.js => useSearch-CictjHIo.js} | 2 +- ...Store-pgHsvR0E.js => useStore-DdaKVvoY.js} | 2 +- ...{wallet-C1oxpYOh.js => wallet-BHv0jBxM.js} | 2 +- ...als-DydID5sk.js => web-vitals-Choeb2xl.js} | 0 ...-CQzBqoHI.js => with-selector-Cn8s6enx.js} | 2 +- src/www/assets/x-ZpCeFU3T.js | 1 + .../{zod-DzRgHmfz.js => zod-CqUOr1xx.js} | 2 +- .../images => www/images/chains}/arbitrum.png | Bin .../images => www/images/chains}/base.png | Bin .../images => www/images/chains}/binance.png | Bin .../images => www/images/chains}/bitcoin.png | Bin .../images => www/images/chains}/bsc.png | Bin .../images => www/images/chains}/ethereum.png | Bin .../images => www/images/chains}/hyperevm.png | Bin .../images => www/images/chains}/op.png | Bin .../images => www/images/chains}/plasma.png | Bin .../images => www/images/chains}/polygon.png | Bin .../images => www/images/chains}/solana.png | Bin .../images => www/images/chains}/tron.png | Bin src/www/index.html | 83 +- src/www/sw.js | 2 +- 199 files changed, 242 insertions(+), 1810 deletions(-) delete mode 100644 src/static/index.html delete mode 100644 src/static/payment.js create mode 100644 src/www/assets/401-CNflrND5.js delete mode 100644 src/www/assets/401-kzzPZFna.js create mode 100644 src/www/assets/403-CQfBJzJh.js delete mode 100644 src/www/assets/403-Cpy7v32n.js create mode 100644 src/www/assets/404-Bi4wqZq5.js delete mode 100644 src/www/assets/404-BsLbhv_m.js create mode 100644 src/www/assets/500-CG0L0TZx.js delete mode 100644 src/www/assets/500-CiuhDp_H.js create mode 100644 src/www/assets/503-BBEYhtPx.js delete mode 100644 src/www/assets/503-C8GhfezX.js rename src/www/assets/{ClientOnly-COESZSX_.js => ClientOnly-FdPNE-Ha.js} (98%) rename src/www/assets/{Match-Bdr6F13c.js => Match-BoLpbSXg.js} (99%) rename src/www/assets/{Matches-C_9WN1ag.js => Matches-DgzoKqo8.js} (80%) delete mode 100644 src/www/assets/_error-Ct843SHu.js delete mode 100644 src/www/assets/_error-DUUb7pi1.js create mode 100644 src/www/assets/_error-DcF4FKJZ.js create mode 100644 src/www/assets/_error-aP8WfZ0L.js create mode 100644 src/www/assets/_trade_id-CN7o2QQi.js create mode 100644 src/www/assets/_trade_id-Cy_8WDE7.js create mode 100644 src/www/assets/addresses-MpsYhDuT.js delete mode 100644 src/www/assets/addresses-Pwy1cHVj.js rename src/www/assets/{appearance-Qiu8JKX7.js => appearance-DECzlo4S.js} (66%) rename src/www/assets/{arrow-left-BQ3rygWM.js => arrow-left-CXopUm0P.js} (61%) rename src/www/assets/{auth-animation-context-CciMPPP0.js => auth-animation-context-fS7P6vQ_.js} (76%) rename src/www/assets/{auth-store-D_jr_Pei.js => auth-store-B0MXCdkM.js} (98%) rename src/www/assets/{badge-D-FAREMY.js => badge-zrw4vTsO.js} (90%) rename src/www/assets/{button-D-oR8d6w.js => button-CMgGM5Zo.js} (99%) rename src/www/assets/{card-LDLQwVm3.js => card-D15gO6_z.js} (86%) create mode 100644 src/www/assets/chains-61VB-Xo3.js delete mode 100644 src/www/assets/chains-a6BmCl-8.js rename src/www/assets/{chains-store-DnSbj0Yy.js => chains-store-CQ4PTJ_l.js} (68%) create mode 100644 src/www/assets/check-BrSI5FnG.js delete mode 100644 src/www/assets/check-DH6qIczM.js rename src/www/assets/{checkbox-D_bL2Pt-.js => checkbox-NsyByt55.js} (91%) rename src/www/assets/{chevron-down-uSXLUPEl.js => chevron-down-Bp5qPJdK.js} (50%) rename src/www/assets/{chevrons-up-down-C1Q-XIDV.js => chevrons-up-down-D9JS4xSh.js} (63%) rename src/www/assets/{circle-check-nos3opMb.js => circle-check-BFJeWPCP.js} (64%) rename src/www/assets/{clock-3-TWJWgy8T.js => clock-3-Q2gMLtW1.js} (62%) delete mode 100644 src/www/assets/coming-soon-dialog-DIE5FD4U.js create mode 100644 src/www/assets/coming-soon-dialog-Jz4BlQ-8.js create mode 100644 src/www/assets/command-DZRbaUDS.js delete mode 100644 src/www/assets/command-yFHhtFiR.js rename src/www/assets/{confirm-dialog-DyK21C4Z.js => confirm-dialog-DEI3bDRD.js} (90%) rename src/www/assets/{cookies-D0aVbsDr.js => cookies-DtK8C3EL.js} (100%) rename src/www/assets/{copy-to-clipboard-DeFustsS.js => copy-to-clipboard-BF7uZfYk.js} (94%) rename src/www/assets/{createLucideIcon-DMX28cCu.js => createLucideIcon-B033Mmf5.js} (95%) create mode 100644 src/www/assets/dashboard-Ba2NIcYg.js delete mode 100644 src/www/assets/dashboard-DETe9Zpn.js rename src/www/assets/{data-table-C3uNvchK.js => data-table-ur1C4EN0.js} (80%) delete mode 100644 src/www/assets/display-BGnhCcSb.js create mode 100644 src/www/assets/display-xs4hIl5y.js rename src/www/assets/{dist-BZg_Jfik.js => dist-8IaROFd6.js} (90%) rename src/www/assets/{dist-BPKZF5GI.js => dist-BOgRCYiY.js} (90%) create mode 100644 src/www/assets/dist-BTQ1T4Z1.js rename src/www/assets/{dist-oydJxq9L.js => dist-BcPwnnrp.js} (65%) create mode 100644 src/www/assets/dist-Bofa-lcL.js create mode 100644 src/www/assets/dist-CBPejFXg.js rename src/www/assets/{dist-CML2zK1G.js => dist-CFWQDH7X.js} (58%) delete mode 100644 src/www/assets/dist-CT2DjA94.js rename src/www/assets/{dist-QGW08nls.js => dist-CYYy0EBp.js} (75%) rename src/www/assets/{dist-Bh3bGrZa.js => dist-DB9dWkN8.js} (76%) rename src/www/assets/{dist-C3yOG_Qz.js => dist-DCwMhmtb.js} (91%) rename src/www/assets/{dist-BeVKhAtj.js => dist-DYutcIDs.js} (51%) rename src/www/assets/{dist-DzENW8NP.js => dist-DfdMgsbg.js} (94%) create mode 100644 src/www/assets/dist-LQc8uwm4.js rename src/www/assets/{dist-Ck6_E5T6.js => dist-aKZxtpke.js} (98%) rename src/www/assets/{dist-BNiRpK39.js => dist-bcH04SHd.js} (99%) rename src/www/assets/{dist-DJhZSa1-.js => dist-q78A-MEc.js} (68%) rename src/www/assets/{download-BhpqmSj0.js => download-DSPALNQc.js} (72%) create mode 100644 src/www/assets/dropdown-menu-DkKDP9Gn.js delete mode 100644 src/www/assets/dropdown-menu-HbmfecEg.js rename src/www/assets/{ellipsis-DvvxWQuy.js => ellipsis-zboj1v6G.js} (71%) rename src/www/assets/{empty-state-BelJgFUf.js => empty-state-Bbli--Ux.js} (87%) create mode 100644 src/www/assets/epay-BBogPZsX.js delete mode 100644 src/www/assets/epay-CSwdoLsE.js rename src/www/assets/{es2015-DRmlSfkW.js => es2015-DPp95FAP.js} (98%) rename src/www/assets/{eye-CJkHHosh.js => eye-DRC9s5kF.js} (75%) rename src/www/assets/{eye-off-BBTW1z_J.js => eye-off-BBIH_95C.js} (85%) rename src/www/assets/{font-provider-BBeIKmOK.js => font-provider-DlVfsvee.js} (73%) delete mode 100644 src/www/assets/forbidden-B-WSRpe6.js create mode 100644 src/www/assets/forbidden-s6H4egxL.js rename src/www/assets/{form-uKra2bmF.js => form-By70kcBQ.js} (99%) create mode 100644 src/www/assets/general-error-Cwxn1dbd.js delete mode 100644 src/www/assets/general-error-ruXTchhS.js rename src/www/assets/{header-B5Qx5Y9m.js => header-DZp29x0-.js} (69%) rename src/www/assets/{help-8HzWQeDm.js => help-ZLP4CZLC.js} (52%) create mode 100644 src/www/assets/index-BwvGCcYo.css rename src/www/assets/{index-BFYQldDz.js => index-DSk9K8MJ.js} (94%) delete mode 100644 src/www/assets/index-uuDLrfbi.css rename src/www/assets/{input-CZHXycLK.js => input-BRm9segX.js} (84%) create mode 100644 src/www/assets/install-B2awRNDy.js delete mode 100644 src/www/assets/install-iFxm6jjv.js rename src/www/assets/{integrations-BQBy3gz7.js => integrations-DJrxnilO.js} (62%) delete mode 100644 src/www/assets/keys-C8Pk4o9V.js create mode 100644 src/www/assets/keys-DCEeBoWO.js rename src/www/assets/{label-B2Q8_O-h.js => label-rRuYOPfg.js} (72%) rename src/www/assets/{lib-_PocwKaj.js => lib-ByrEgu63.js} (75%) rename src/www/assets/{link-Du-u9SDI.js => link-cKoSDPwi.js} (91%) rename src/www/assets/{loader-circle-DQHo9Sp_.js => loader-circle-USrlthPz.js} (55%) create mode 100644 src/www/assets/logo-B5lF0pzp.js delete mode 100644 src/www/assets/logo-BVdckS6R.js create mode 100644 src/www/assets/long-text-CysOFseT.js delete mode 100644 src/www/assets/long-text-XqSY0a1g.js rename src/www/assets/{main-DvsnNI3V.js => main-DigoYPya.js} (79%) create mode 100644 src/www/assets/maintenance-error-_xUDTkL_.js delete mode 100644 src/www/assets/maintenance-error-yQ4OJvXf.js rename src/www/assets/{matchContext-BJCpOvLW.js => matchContext-ByMpvvGc.js} (54%) delete mode 100644 src/www/assets/messages-BOl-zx8S.js create mode 100644 src/www/assets/messages-Bhh1Viqz.js create mode 100644 src/www/assets/not-found-error-D9glqlci.js delete mode 100644 src/www/assets/not-found-error-mxpXcTRa.js delete mode 100644 src/www/assets/notifications-CKOafx8I.js create mode 100644 src/www/assets/notifications-gnsCGapf.js delete mode 100644 src/www/assets/orders-CTtwpZWi.js create mode 100644 src/www/assets/orders-CWjfXahg.js rename src/www/assets/{page-header-BRM1dngJ.js => page-header-CBQ6sv9V.js} (87%) create mode 100644 src/www/assets/password-D6OxzBol.js delete mode 100644 src/www/assets/password-Fr9ZcJNs.js rename src/www/assets/{password-input-ZB498Nq4.js => password-input-aQnCAOdK.js} (66%) rename src/www/assets/{payment-setup-Dgvp9Vym.js => payment-setup-DdC-42Ql.js} (63%) rename src/www/assets/{popover-M5uqmgyK.js => popover-CLhYmFDu.js} (90%) create mode 100644 src/www/assets/preload-helper-B2PzqQRQ.js rename src/www/assets/{radio-group-8QacflxY.js => radio-group-BEhmAVSM.js} (82%) create mode 100644 src/www/assets/rate-DT428zVo.js delete mode 100644 src/www/assets/rate-Dsrqg6hQ.js create mode 100644 src/www/assets/route-B74pL553.js delete mode 100644 src/www/assets/route-BO5WPM5m.js rename src/www/assets/{route-BfQF2LcU.js => route-BQ-hKRGP.js} (98%) delete mode 100644 src/www/assets/route-CKZGG7BF.js rename src/www/assets/{route-CbQ1_n1Q.js => route-CgnHtvRo.js} (57%) create mode 100644 src/www/assets/route-D7Pht9_3.js create mode 100644 src/www/assets/route-DU6beShs.js rename src/www/assets/{route-C5Xnq6N2.js => route-DVUwa8Pp.js} (87%) create mode 100644 src/www/assets/route-DnKcrHXD.js delete mode 100644 src/www/assets/route-GIha9u4h.js delete mode 100644 src/www/assets/router-D0lu_-Oq.js create mode 100644 src/www/assets/router-D0oHZM2L.js rename src/www/assets/{routes-Dj-aXygU.js => routes-UfAPSbng.js} (100%) delete mode 100644 src/www/assets/rpc-C9FTIUCr.js create mode 100644 src/www/assets/rpc-CluL4csd.js delete mode 100644 src/www/assets/search-provider-D-fTfilE.js create mode 100644 src/www/assets/search-provider-Decv_5jQ.js create mode 100644 src/www/assets/select-CiLcNbAG.js delete mode 100644 src/www/assets/select-CvMpqpz9.js rename src/www/assets/{separator-Dw-mNGCy.js => separator-Dp_coI-W.js} (76%) delete mode 100644 src/www/assets/settings-6Tt8SQ46.js create mode 100644 src/www/assets/settings-Kmc8y_QJ.js rename src/www/assets/{shield-check-NJ5V92SM.js => shield-check-CJEjPJqE.js} (80%) rename src/www/assets/{show-submitted-data-sbgXi_a9.js => show-submitted-data-C7180yzk.js} (64%) rename src/www/assets/{sidebar-nav-eQOCItLO.js => sidebar-nav-Cc3vNIBd.js} (62%) delete mode 100644 src/www/assets/sign-in-D3PxHB7w.js create mode 100644 src/www/assets/sign-in-GzVULgv4.js create mode 100644 src/www/assets/skeleton-BJZJu227.js delete mode 100644 src/www/assets/skeleton-gJOqI-7w.js create mode 100644 src/www/assets/sun-TG0uyxhT.js rename src/www/assets/{switch-m0XBbPWc.js => switch-BHaS9TMu.js} (89%) create mode 100644 src/www/assets/telegram-BWfz_d2q.js delete mode 100644 src/www/assets/telegram-BpeS2gK_.js rename src/www/assets/{telescope-CH8QonjS.js => telescope-C0wI0Fuj.js} (89%) rename src/www/assets/{textarea-Cp-VCvek.js => textarea-BQ8cJUWr.js} (80%) rename src/www/assets/{theme-provider-Dmxgp34D.js => theme-provider-BIsY189-.js} (81%) delete mode 100644 src/www/assets/theme-switch-BVGTp-bE.js create mode 100644 src/www/assets/theme-switch-D8VX-5g_.js create mode 100644 src/www/assets/tooltip-BmTb484u.js delete mode 100644 src/www/assets/tooltip-m5xmPGQe.js rename src/www/assets/{trash-2-CaT-Drvx.js => trash-2-DXA4p59Y.js} (85%) delete mode 100644 src/www/assets/unauthorized-error-9CwofmD6.js create mode 100644 src/www/assets/unauthorized-error-DKwsOXnK.js rename src/www/assets/{use-table-url-state-BYcGNz1q.js => use-table-url-state-D-ZLKfDn.js} (96%) create mode 100644 src/www/assets/useNavigate-BAxMzgsd.js delete mode 100644 src/www/assets/useNavigate-BNrwOhV8.js rename src/www/assets/{useRouter-DS97kuA5.js => useRouter-IcH5TSf9.js} (90%) rename src/www/assets/{useRouterState-Am3soIW6.js => useRouterState-cEeJ9qod.js} (57%) rename src/www/assets/{useSearch-BufLn6Rh.js => useSearch-CictjHIo.js} (69%) rename src/www/assets/{useStore-pgHsvR0E.js => useStore-DdaKVvoY.js} (94%) rename src/www/assets/{wallet-C1oxpYOh.js => wallet-BHv0jBxM.js} (72%) rename src/www/assets/{web-vitals-DydID5sk.js => web-vitals-Choeb2xl.js} (100%) rename src/www/assets/{with-selector-CQzBqoHI.js => with-selector-Cn8s6enx.js} (76%) create mode 100644 src/www/assets/x-ZpCeFU3T.js rename src/www/assets/{zod-DzRgHmfz.js => zod-CqUOr1xx.js} (99%) rename src/{static/images => www/images/chains}/arbitrum.png (100%) rename src/{static/images => www/images/chains}/base.png (100%) rename src/{static/images => www/images/chains}/binance.png (100%) rename src/{static/images => www/images/chains}/bitcoin.png (100%) rename src/{static/images => www/images/chains}/bsc.png (100%) rename src/{static/images => www/images/chains}/ethereum.png (100%) rename src/{static/images => www/images/chains}/hyperevm.png (100%) rename src/{static/images => www/images/chains}/op.png (100%) rename src/{static/images => www/images/chains}/plasma.png (100%) rename src/{static/images => www/images/chains}/polygon.png (100%) rename src/{static/images => www/images/chains}/solana.png (100%) rename src/{static/images => www/images/chains}/tron.png (100%) diff --git a/src/controller/comm/pay_controller.go b/src/controller/comm/pay_controller.go index 46aad94..d6d683c 100644 --- a/src/controller/comm/pay_controller.go +++ b/src/controller/comm/pay_controller.go @@ -1,11 +1,8 @@ package comm import ( - "html/template" "net/http" - "path/filepath" - "github.com/GMWalletApp/epusdt/config" "github.com/GMWalletApp/epusdt/model/response" "github.com/GMWalletApp/epusdt/model/service" "github.com/labstack/echo/v4" @@ -13,12 +10,12 @@ import ( // CheckoutCounter 收银台 // @Summary Checkout counter page -// @Description Render the payment checkout counter HTML page for a given trade +// @Description Render the payment checkout counter JSON response for a given trade // @Tags Payment -// @Produce html +// @Produce json // @Param trade_id path string true "Trade ID" -// @Success 200 {string} string "HTML page" -// @Router /pay/checkout-counter/{trade_id} [get] +// @Success 200 {object} response.CheckoutCounterResponse +// @Router /pay/checkout-counter-resp/{trade_id} [get] func (c *BaseCommController) CheckoutCounter(ctx echo.Context) (err error) { tradeId := ctx.Param("trade_id") resp, err := service.GetCheckoutCounterByTradeId(tradeId) @@ -26,22 +23,13 @@ func (c *BaseCommController) CheckoutCounter(ctx echo.Context) (err error) { if err == service.ErrOrder { // Unknown trade id: render the page with empty payload // (client side shows a friendly "order not found" screen). - tmpl, tmplErr := template.ParseFiles(filepath.Join(config.StaticFilePath, "index.html")) - if tmplErr != nil { - return ctx.String(http.StatusInternalServerError, tmplErr.Error()) - } - ctx.Response().Status = http.StatusNotFound emptyResp := response.CheckoutCounterResponse{} - return tmpl.Execute(ctx.Response(), emptyResp) + return c.SucJson(ctx, emptyResp) } return ctx.String(http.StatusInternalServerError, err.Error()) } - tmpl, err := template.ParseFiles(filepath.Join(config.StaticFilePath, "index.html")) - if err != nil { - return ctx.String(http.StatusInternalServerError, err.Error()) - } - return tmpl.Execute(ctx.Response(), resp) + return c.SucJson(ctx, resp) } // CheckStatus 支付状态检测 diff --git a/src/main.go b/src/main.go index b5b62a4..3df5733 100644 --- a/src/main.go +++ b/src/main.go @@ -12,9 +12,6 @@ import ( "github.com/gookit/color" ) -//go:embed all:static -var staticDir embed.FS - //go:embed all:www var wwwDir embed.FS @@ -92,12 +89,6 @@ func releaseStatic(fs embed.FS, target string) (string, error) { } func main() { - staticPath, err := releaseStatic(staticDir, "static") - if err != nil { - panic(err) - } - fmt.Println("static released to:", staticPath) - wwwwPath, err := releaseStatic(wwwDir, "www") if err != nil { panic(err) diff --git a/src/route/router.go b/src/route/router.go index 27b845b..e0d24be 100644 --- a/src/route/router.go +++ b/src/route/router.go @@ -27,7 +27,15 @@ func RegisterRoute(e *echo.Echo) { }) payRoute := e.Group("/pay") - payRoute.GET("/checkout-counter/:trade_id", comm.Ctrl.CheckoutCounter) + payRoute.GET("/checkout-counter/:trade_id", func(ctx echo.Context) error { + tradeId := ctx.Param("trade_id") + + targetURL := fmt.Sprintf("/cashier/%s", tradeId) + + return ctx.Redirect(http.StatusMovedPermanently, targetURL) + }) + + payRoute.GET("/checkout-counter-resp/:trade_id", comm.Ctrl.CheckoutCounter) payRoute.GET("/check-status/:trade_id", comm.Ctrl.CheckStatus) payRoute.POST("/switch-network", comm.Ctrl.SwitchNetwork) diff --git a/src/static/index.html b/src/static/index.html deleted file mode 100644 index 217d97a..0000000 --- a/src/static/index.html +++ /dev/null @@ -1,546 +0,0 @@ - - - - - - - GMWallet — Crypto Payment - - - - - - - - - - - - - -
-
- logo - GM Pay -
-
- -
-
- EN - -
- -
- - - - -
-
- -
- - -
-
-
-
-
-
-
-
- - - - - -
- - -
-
- -
-

Network

-
-
- - -
- -
-
- -
-

Currency

-
-
- - -
- -
-
-
- -
- - - - - - - - - - - - - - - - -
- -
- - - - - -
Copied
- - - - - - - \ No newline at end of file diff --git a/src/static/payment.js b/src/static/payment.js deleted file mode 100644 index 18ac7e5..0000000 --- a/src/static/payment.js +++ /dev/null @@ -1,1022 +0,0 @@ -/* ============================================================= - * GM Pay — payment.js - * 后端对接只需关注: - * 1. CONFIG.api.supportedAssets — 获取支持的网络和币种 - * 2. CONFIG.api.selectMethod — Step 1 确认接口(POST 币种/网络,返回收款地址) - * 3. CONFIG.api.checkStatus — 轮询接口 URL - * 4. CONFIG.api.statusMap — 状态码映射 - * 5. index.html 底部 - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/src/www/sw.js b/src/www/sw.js index 2db108e..f128912 100644 --- a/src/www/sw.js +++ b/src/www/sw.js @@ -1 +1 @@ -if(!self.define){let s,l={};const e=(e,r)=>(e=new URL(e+".js",r).href,l[e]||new Promise(l=>{if("document"in self){const s=document.createElement("script");s.src=e,s.onload=l,document.head.appendChild(s)}else s=e,importScripts(e),l()}).then(()=>{let s=l[e];if(!s)throw new Error(`Module ${e} didn’t register its module`);return s}));self.define=(r,n)=>{const i=s||("document"in self?document.currentScript.src:"")||location.href;if(l[i])return;let u={};const o=s=>e(s,i),a={module:{uri:i},exports:u,require:o};l[i]=Promise.all(r.map(s=>a[s]||o(s))).then(s=>(n(...s),u))}}define(["./workbox-8c29f6e4"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"pwa-maskable-512x512.png",revision:"106b94c2eb0675579ae40309698f364c"},{url:"pwa-maskable-192x192.png",revision:"8befa0caebf24d2e0b01c36e01ab4bd7"},{url:"pwa-512x512.png",revision:"2fcf48a2ae4e95f6d7f4a6bc2cc42a63"},{url:"pwa-192x192.png",revision:"8bc372216f92e2f0e011daff55721ccb"},{url:"index.html",revision:"84e7026a46564267641bb54a36ffa69e"},{url:"favicon.ico",revision:"abba9e0d76413fa735e878d17223cfcb"},{url:"favicon-32x32.png",revision:"0847a57e9d3ae134e314a1339af3516d"},{url:"favicon-16x16.png",revision:"3e5fdc64b0a41f498c177fb2dc89ec6a"},{url:"apple-touch-icon.png",revision:"f9c8240d0509320d85a82bd60a6b426f"},{url:"images/logo.png",revision:"fa701b6a1d714ecf4856df660055eb89"},{url:"assets/zod-DzRgHmfz.js",revision:null},{url:"assets/with-selector-CQzBqoHI.js",revision:null},{url:"assets/web-vitals-DydID5sk.js",revision:null},{url:"assets/wallet-C1oxpYOh.js",revision:null},{url:"assets/useStore-pgHsvR0E.js",revision:null},{url:"assets/useSearch-BufLn6Rh.js",revision:null},{url:"assets/useRouterState-Am3soIW6.js",revision:null},{url:"assets/useRouter-DS97kuA5.js",revision:null},{url:"assets/useNavigate-BNrwOhV8.js",revision:null},{url:"assets/use-table-url-state-BYcGNz1q.js",revision:null},{url:"assets/unauthorized-error-9CwofmD6.js",revision:null},{url:"assets/trash-2-CaT-Drvx.js",revision:null},{url:"assets/tooltip-m5xmPGQe.js",revision:null},{url:"assets/theme-switch-BVGTp-bE.js",revision:null},{url:"assets/theme-provider-Dmxgp34D.js",revision:null},{url:"assets/textarea-Cp-VCvek.js",revision:null},{url:"assets/telescope-CH8QonjS.js",revision:null},{url:"assets/telegram-BpeS2gK_.js",revision:null},{url:"assets/switch-m0XBbPWc.js",revision:null},{url:"assets/skeleton-gJOqI-7w.js",revision:null},{url:"assets/sign-in-D3PxHB7w.js",revision:null},{url:"assets/sidebar-nav-eQOCItLO.js",revision:null},{url:"assets/show-submitted-data-sbgXi_a9.js",revision:null},{url:"assets/shield-check-NJ5V92SM.js",revision:null},{url:"assets/settings-6Tt8SQ46.js",revision:null},{url:"assets/separator-Dw-mNGCy.js",revision:null},{url:"assets/select-CvMpqpz9.js",revision:null},{url:"assets/search-provider-D-fTfilE.js",revision:null},{url:"assets/rpc-C9FTIUCr.js",revision:null},{url:"assets/routes-Dj-aXygU.js",revision:null},{url:"assets/router-D0lu_-Oq.js",revision:null},{url:"assets/route-GIha9u4h.js",revision:null},{url:"assets/route-CbQ1_n1Q.js",revision:null},{url:"assets/route-CKZGG7BF.js",revision:null},{url:"assets/route-C5Xnq6N2.js",revision:null},{url:"assets/route-BfQF2LcU.js",revision:null},{url:"assets/route-BO5WPM5m.js",revision:null},{url:"assets/redirect-dE0wk0WH.js",revision:null},{url:"assets/rate-Dsrqg6hQ.js",revision:null},{url:"assets/radio-group-8QacflxY.js",revision:null},{url:"assets/popover-M5uqmgyK.js",revision:null},{url:"assets/payment-setup-Dgvp9Vym.js",revision:null},{url:"assets/password-input-ZB498Nq4.js",revision:null},{url:"assets/password-Fr9ZcJNs.js",revision:null},{url:"assets/page-header-BRM1dngJ.js",revision:null},{url:"assets/orders-CTtwpZWi.js",revision:null},{url:"assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2",revision:null},{url:"assets/nunito-latin-wght-normal-BzFMHfZw.woff2",revision:null},{url:"assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2",revision:null},{url:"assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2",revision:null},{url:"assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2",revision:null},{url:"assets/noto-sans-vietnamese-wght-normal-DLTJy58D.woff2",revision:null},{url:"assets/noto-sans-latin-wght-normal-BYSzYMf3.woff2",revision:null},{url:"assets/noto-sans-latin-ext-wght-normal-W1qJv59z.woff2",revision:null},{url:"assets/noto-sans-greek-wght-normal-Ymb6dZNd.woff2",revision:null},{url:"assets/noto-sans-greek-ext-wght-normal-12T8GTDR.woff2",revision:null},{url:"assets/noto-sans-devanagari-wght-normal-Cv-Vwajv.woff2",revision:null},{url:"assets/noto-sans-cyrillic-wght-normal-B2hlT84T.woff2",revision:null},{url:"assets/noto-sans-cyrillic-ext-wght-normal-DSNfmdVt.woff2",revision:null},{url:"assets/notifications-CKOafx8I.js",revision:null},{url:"assets/not-found-error-mxpXcTRa.js",revision:null},{url:"assets/messages-BOl-zx8S.js",revision:null},{url:"assets/matchContext-BJCpOvLW.js",revision:null},{url:"assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2",revision:null},{url:"assets/manrope-latin-wght-normal-DHIcAJRg.woff2",revision:null},{url:"assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2",revision:null},{url:"assets/manrope-greek-wght-normal-DL7QRZyv.woff2",revision:null},{url:"assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2",revision:null},{url:"assets/maintenance-error-yQ4OJvXf.js",revision:null},{url:"assets/main-DvsnNI3V.js",revision:null},{url:"assets/long-text-XqSY0a1g.js",revision:null},{url:"assets/logo-BVdckS6R.js",revision:null},{url:"assets/loader-circle-DQHo9Sp_.js",revision:null},{url:"assets/link-Du-u9SDI.js",revision:null},{url:"assets/lib-_PocwKaj.js",revision:null},{url:"assets/label-B2Q8_O-h.js",revision:null},{url:"assets/keys-C8Pk4o9V.js",revision:null},{url:"assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2",revision:null},{url:"assets/inter-latin-wght-normal-Dx4kXJAl.woff2",revision:null},{url:"assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2",revision:null},{url:"assets/inter-greek-wght-normal-CkhJZR-_.woff2",revision:null},{url:"assets/inter-greek-ext-wght-normal-DlzME5K_.woff2",revision:null},{url:"assets/inter-cyrillic-wght-normal-DqGufNeO.woff2",revision:null},{url:"assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2",revision:null},{url:"assets/integrations-BQBy3gz7.js",revision:null},{url:"assets/install-iFxm6jjv.js",revision:null},{url:"assets/input-CZHXycLK.js",revision:null},{url:"assets/index-uuDLrfbi.css",revision:null},{url:"assets/index-BFYQldDz.js",revision:null},{url:"assets/help-8HzWQeDm.js",revision:null},{url:"assets/header-B5Qx5Y9m.js",revision:null},{url:"assets/general-error-ruXTchhS.js",revision:null},{url:"assets/form-uKra2bmF.js",revision:null},{url:"assets/forbidden-B-WSRpe6.js",revision:null},{url:"assets/font-provider-BBeIKmOK.js",revision:null},{url:"assets/eye-off-BBTW1z_J.js",revision:null},{url:"assets/eye-CJkHHosh.js",revision:null},{url:"assets/es2015-DRmlSfkW.js",revision:null},{url:"assets/epay-CSwdoLsE.js",revision:null},{url:"assets/empty-state-BelJgFUf.js",revision:null},{url:"assets/ellipsis-DvvxWQuy.js",revision:null},{url:"assets/dropdown-menu-HbmfecEg.js",revision:null},{url:"assets/download-BhpqmSj0.js",revision:null},{url:"assets/dist-oydJxq9L.js",revision:null},{url:"assets/dist-QGW08nls.js",revision:null},{url:"assets/dist-DzENW8NP.js",revision:null},{url:"assets/dist-DJhZSa1-.js",revision:null},{url:"assets/dist-Ck6_E5T6.js",revision:null},{url:"assets/dist-CT2DjA94.js",revision:null},{url:"assets/dist-CML2zK1G.js",revision:null},{url:"assets/dist-C3yOG_Qz.js",revision:null},{url:"assets/dist-Bh3bGrZa.js",revision:null},{url:"assets/dist-BeVKhAtj.js",revision:null},{url:"assets/dist-BZg_Jfik.js",revision:null},{url:"assets/dist-BPKZF5GI.js",revision:null},{url:"assets/dist-BNiRpK39.js",revision:null},{url:"assets/display-BGnhCcSb.js",revision:null},{url:"assets/data-table-C3uNvchK.js",revision:null},{url:"assets/dashboard-DETe9Zpn.js",revision:null},{url:"assets/createLucideIcon-DMX28cCu.js",revision:null},{url:"assets/copy-to-clipboard-DeFustsS.js",revision:null},{url:"assets/cookies-D0aVbsDr.js",revision:null},{url:"assets/confirm-dialog-DyK21C4Z.js",revision:null},{url:"assets/command-yFHhtFiR.js",revision:null},{url:"assets/coming-soon-dialog-DIE5FD4U.js",revision:null},{url:"assets/clock-3-TWJWgy8T.js",revision:null},{url:"assets/circle-check-nos3opMb.js",revision:null},{url:"assets/chevrons-up-down-C1Q-XIDV.js",revision:null},{url:"assets/chevron-down-uSXLUPEl.js",revision:null},{url:"assets/checkbox-D_bL2Pt-.js",revision:null},{url:"assets/check-DH6qIczM.js",revision:null},{url:"assets/chains-store-DnSbj0Yy.js",revision:null},{url:"assets/chains-a6BmCl-8.js",revision:null},{url:"assets/card-LDLQwVm3.js",revision:null},{url:"assets/button-D-oR8d6w.js",revision:null},{url:"assets/badge-D-FAREMY.js",revision:null},{url:"assets/auth-store-D_jr_Pei.js",revision:null},{url:"assets/auth-animation-context-CciMPPP0.js",revision:null},{url:"assets/atom-DI1Bn-1s.js",revision:null},{url:"assets/arrow-left-BQ3rygWM.js",revision:null},{url:"assets/appearance-Qiu8JKX7.js",revision:null},{url:"assets/addresses-Pwy1cHVj.js",revision:null},{url:"assets/_error-DUUb7pi1.js",revision:null},{url:"assets/_error-Ct843SHu.js",revision:null},{url:"assets/Matches-C_9WN1ag.js",revision:null},{url:"assets/Match-Bdr6F13c.js",revision:null},{url:"assets/ClientOnly-COESZSX_.js",revision:null},{url:"assets/503-C8GhfezX.js",revision:null},{url:"assets/500-CiuhDp_H.js",revision:null},{url:"assets/404-BsLbhv_m.js",revision:null},{url:"assets/403-Cpy7v32n.js",revision:null},{url:"assets/401-kzzPZFna.js",revision:null},{url:"apple-touch-icon.png",revision:"f9c8240d0509320d85a82bd60a6b426f"},{url:"favicon.ico",revision:"abba9e0d76413fa735e878d17223cfcb"},{url:"pwa-192x192.png",revision:"8bc372216f92e2f0e011daff55721ccb"},{url:"pwa-512x512.png",revision:"2fcf48a2ae4e95f6d7f4a6bc2cc42a63"},{url:"pwa-maskable-192x192.png",revision:"8befa0caebf24d2e0b01c36e01ab4bd7"},{url:"pwa-maskable-512x512.png",revision:"106b94c2eb0675579ae40309698f364c"},{url:"robots.txt",revision:"fa1ded1ed7c11438a9b0385b1e112850"},{url:"images/logo.png",revision:"fa701b6a1d714ecf4856df660055eb89"},{url:"manifest.webmanifest",revision:"8d2924aafc68495c2adffcd2b8cff2c1"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("/index.html"),{denylist:[/^\/payments\//,/^\/pay\//,/^\/api\//,/^\/admin\/api\//]}))}); +if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(i,n)=>{const r=s||("document"in self?document.currentScript.src:"")||location.href;if(e[r])return;let a={};const u=s=>l(s,r),o={module:{uri:r},exports:a,require:u};e[r]=Promise.all(i.map(s=>o[s]||u(s))).then(s=>(n(...s),a))}}define(["./workbox-8c29f6e4"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"pwa-maskable-512x512.png",revision:"106b94c2eb0675579ae40309698f364c"},{url:"pwa-maskable-192x192.png",revision:"8befa0caebf24d2e0b01c36e01ab4bd7"},{url:"pwa-512x512.png",revision:"2fcf48a2ae4e95f6d7f4a6bc2cc42a63"},{url:"pwa-192x192.png",revision:"8bc372216f92e2f0e011daff55721ccb"},{url:"index.html",revision:"942a76f6a40e9ca8cc041098ec442d35"},{url:"favicon.ico",revision:"abba9e0d76413fa735e878d17223cfcb"},{url:"favicon-32x32.png",revision:"0847a57e9d3ae134e314a1339af3516d"},{url:"favicon-16x16.png",revision:"3e5fdc64b0a41f498c177fb2dc89ec6a"},{url:"apple-touch-icon.png",revision:"f9c8240d0509320d85a82bd60a6b426f"},{url:"images/logo.png",revision:"fa701b6a1d714ecf4856df660055eb89"},{url:"images/chains/tron.png",revision:"1d316e4d3ffc44797fc2b21ffbb4993a"},{url:"images/chains/solana.png",revision:"bc1953d110f02cb2d898d65f5251781e"},{url:"images/chains/polygon.png",revision:"8363c3106eafefc899fa04c242691480"},{url:"images/chains/plasma.png",revision:"5b2accf111b998ef54246391370a3870"},{url:"images/chains/op.png",revision:"10b74a72193e2d6ace66ab2d91bd0ae1"},{url:"images/chains/hyperevm.png",revision:"0f3c9b42225f4246d68b1d57a1ad374f"},{url:"images/chains/ethereum.png",revision:"8f2aaddbf88b0182f9da6dbbef20abfa"},{url:"images/chains/bsc.png",revision:"225a2167869ce3986a787a8e88417196"},{url:"images/chains/bitcoin.png",revision:"1e2ec9f8c2a384dc4a7740fc836972ff"},{url:"images/chains/binance.png",revision:"1f5eb69fce03beebd91f1eb4ae344500"},{url:"images/chains/base.png",revision:"9fcfbaa1d32ffa28c370bbb3a06406af"},{url:"images/chains/arbitrum.png",revision:"5c6955ae16d7d5588259393d32a59ec7"},{url:"assets/zod-CqUOr1xx.js",revision:null},{url:"assets/x-ZpCeFU3T.js",revision:null},{url:"assets/with-selector-Cn8s6enx.js",revision:null},{url:"assets/web-vitals-Choeb2xl.js",revision:null},{url:"assets/wallet-BHv0jBxM.js",revision:null},{url:"assets/useStore-DdaKVvoY.js",revision:null},{url:"assets/useSearch-CictjHIo.js",revision:null},{url:"assets/useRouterState-cEeJ9qod.js",revision:null},{url:"assets/useRouter-IcH5TSf9.js",revision:null},{url:"assets/useNavigate-BAxMzgsd.js",revision:null},{url:"assets/use-table-url-state-D-ZLKfDn.js",revision:null},{url:"assets/unauthorized-error-DKwsOXnK.js",revision:null},{url:"assets/trash-2-DXA4p59Y.js",revision:null},{url:"assets/tooltip-BmTb484u.js",revision:null},{url:"assets/theme-switch-D8VX-5g_.js",revision:null},{url:"assets/theme-provider-BIsY189-.js",revision:null},{url:"assets/textarea-BQ8cJUWr.js",revision:null},{url:"assets/telescope-C0wI0Fuj.js",revision:null},{url:"assets/telegram-BWfz_d2q.js",revision:null},{url:"assets/switch-BHaS9TMu.js",revision:null},{url:"assets/sun-TG0uyxhT.js",revision:null},{url:"assets/skeleton-BJZJu227.js",revision:null},{url:"assets/sign-in-GzVULgv4.js",revision:null},{url:"assets/sidebar-nav-Cc3vNIBd.js",revision:null},{url:"assets/show-submitted-data-C7180yzk.js",revision:null},{url:"assets/shield-check-CJEjPJqE.js",revision:null},{url:"assets/settings-Kmc8y_QJ.js",revision:null},{url:"assets/separator-Dp_coI-W.js",revision:null},{url:"assets/select-CiLcNbAG.js",revision:null},{url:"assets/search-provider-Decv_5jQ.js",revision:null},{url:"assets/rpc-CluL4csd.js",revision:null},{url:"assets/routes-UfAPSbng.js",revision:null},{url:"assets/router-D0oHZM2L.js",revision:null},{url:"assets/route-DnKcrHXD.js",revision:null},{url:"assets/route-DVUwa8Pp.js",revision:null},{url:"assets/route-DU6beShs.js",revision:null},{url:"assets/route-D7Pht9_3.js",revision:null},{url:"assets/route-CgnHtvRo.js",revision:null},{url:"assets/route-BQ-hKRGP.js",revision:null},{url:"assets/route-B74pL553.js",revision:null},{url:"assets/redirect-dE0wk0WH.js",revision:null},{url:"assets/rate-DT428zVo.js",revision:null},{url:"assets/radio-group-BEhmAVSM.js",revision:null},{url:"assets/preload-helper-B2PzqQRQ.js",revision:null},{url:"assets/popover-CLhYmFDu.js",revision:null},{url:"assets/payment-setup-DdC-42Ql.js",revision:null},{url:"assets/password-input-aQnCAOdK.js",revision:null},{url:"assets/password-D6OxzBol.js",revision:null},{url:"assets/page-header-CBQ6sv9V.js",revision:null},{url:"assets/orders-CWjfXahg.js",revision:null},{url:"assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2",revision:null},{url:"assets/nunito-latin-wght-normal-BzFMHfZw.woff2",revision:null},{url:"assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2",revision:null},{url:"assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2",revision:null},{url:"assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2",revision:null},{url:"assets/noto-sans-vietnamese-wght-normal-DLTJy58D.woff2",revision:null},{url:"assets/noto-sans-latin-wght-normal-BYSzYMf3.woff2",revision:null},{url:"assets/noto-sans-latin-ext-wght-normal-W1qJv59z.woff2",revision:null},{url:"assets/noto-sans-greek-wght-normal-Ymb6dZNd.woff2",revision:null},{url:"assets/noto-sans-greek-ext-wght-normal-12T8GTDR.woff2",revision:null},{url:"assets/noto-sans-devanagari-wght-normal-Cv-Vwajv.woff2",revision:null},{url:"assets/noto-sans-cyrillic-wght-normal-B2hlT84T.woff2",revision:null},{url:"assets/noto-sans-cyrillic-ext-wght-normal-DSNfmdVt.woff2",revision:null},{url:"assets/notifications-gnsCGapf.js",revision:null},{url:"assets/not-found-error-D9glqlci.js",revision:null},{url:"assets/messages-Bhh1Viqz.js",revision:null},{url:"assets/matchContext-ByMpvvGc.js",revision:null},{url:"assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2",revision:null},{url:"assets/manrope-latin-wght-normal-DHIcAJRg.woff2",revision:null},{url:"assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2",revision:null},{url:"assets/manrope-greek-wght-normal-DL7QRZyv.woff2",revision:null},{url:"assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2",revision:null},{url:"assets/maintenance-error-_xUDTkL_.js",revision:null},{url:"assets/main-DigoYPya.js",revision:null},{url:"assets/long-text-CysOFseT.js",revision:null},{url:"assets/logo-B5lF0pzp.js",revision:null},{url:"assets/loader-circle-USrlthPz.js",revision:null},{url:"assets/link-cKoSDPwi.js",revision:null},{url:"assets/lib-ByrEgu63.js",revision:null},{url:"assets/label-rRuYOPfg.js",revision:null},{url:"assets/keys-DCEeBoWO.js",revision:null},{url:"assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2",revision:null},{url:"assets/inter-latin-wght-normal-Dx4kXJAl.woff2",revision:null},{url:"assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2",revision:null},{url:"assets/inter-greek-wght-normal-CkhJZR-_.woff2",revision:null},{url:"assets/inter-greek-ext-wght-normal-DlzME5K_.woff2",revision:null},{url:"assets/inter-cyrillic-wght-normal-DqGufNeO.woff2",revision:null},{url:"assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2",revision:null},{url:"assets/integrations-DJrxnilO.js",revision:null},{url:"assets/install-B2awRNDy.js",revision:null},{url:"assets/input-BRm9segX.js",revision:null},{url:"assets/index-DSk9K8MJ.js",revision:null},{url:"assets/index-BwvGCcYo.css",revision:null},{url:"assets/help-ZLP4CZLC.js",revision:null},{url:"assets/header-DZp29x0-.js",revision:null},{url:"assets/general-error-Cwxn1dbd.js",revision:null},{url:"assets/form-By70kcBQ.js",revision:null},{url:"assets/forbidden-s6H4egxL.js",revision:null},{url:"assets/font-provider-DlVfsvee.js",revision:null},{url:"assets/eye-off-BBIH_95C.js",revision:null},{url:"assets/eye-DRC9s5kF.js",revision:null},{url:"assets/es2015-DPp95FAP.js",revision:null},{url:"assets/epay-BBogPZsX.js",revision:null},{url:"assets/empty-state-Bbli--Ux.js",revision:null},{url:"assets/ellipsis-zboj1v6G.js",revision:null},{url:"assets/dropdown-menu-DkKDP9Gn.js",revision:null},{url:"assets/download-DSPALNQc.js",revision:null},{url:"assets/dist-q78A-MEc.js",revision:null},{url:"assets/dist-bcH04SHd.js",revision:null},{url:"assets/dist-aKZxtpke.js",revision:null},{url:"assets/dist-LQc8uwm4.js",revision:null},{url:"assets/dist-DfdMgsbg.js",revision:null},{url:"assets/dist-DYutcIDs.js",revision:null},{url:"assets/dist-DCwMhmtb.js",revision:null},{url:"assets/dist-DB9dWkN8.js",revision:null},{url:"assets/dist-CYYy0EBp.js",revision:null},{url:"assets/dist-CFWQDH7X.js",revision:null},{url:"assets/dist-CBPejFXg.js",revision:null},{url:"assets/dist-Bofa-lcL.js",revision:null},{url:"assets/dist-BcPwnnrp.js",revision:null},{url:"assets/dist-BTQ1T4Z1.js",revision:null},{url:"assets/dist-BOgRCYiY.js",revision:null},{url:"assets/dist-8IaROFd6.js",revision:null},{url:"assets/display-xs4hIl5y.js",revision:null},{url:"assets/data-table-ur1C4EN0.js",revision:null},{url:"assets/dashboard-Ba2NIcYg.js",revision:null},{url:"assets/createLucideIcon-B033Mmf5.js",revision:null},{url:"assets/copy-to-clipboard-BF7uZfYk.js",revision:null},{url:"assets/cookies-DtK8C3EL.js",revision:null},{url:"assets/confirm-dialog-DEI3bDRD.js",revision:null},{url:"assets/command-DZRbaUDS.js",revision:null},{url:"assets/coming-soon-dialog-Jz4BlQ-8.js",revision:null},{url:"assets/clock-3-Q2gMLtW1.js",revision:null},{url:"assets/circle-check-BFJeWPCP.js",revision:null},{url:"assets/chevrons-up-down-D9JS4xSh.js",revision:null},{url:"assets/chevron-down-Bp5qPJdK.js",revision:null},{url:"assets/checkbox-NsyByt55.js",revision:null},{url:"assets/check-BrSI5FnG.js",revision:null},{url:"assets/chains-store-CQ4PTJ_l.js",revision:null},{url:"assets/chains-61VB-Xo3.js",revision:null},{url:"assets/card-D15gO6_z.js",revision:null},{url:"assets/button-CMgGM5Zo.js",revision:null},{url:"assets/badge-zrw4vTsO.js",revision:null},{url:"assets/auth-store-B0MXCdkM.js",revision:null},{url:"assets/auth-animation-context-fS7P6vQ_.js",revision:null},{url:"assets/atom-DI1Bn-1s.js",revision:null},{url:"assets/arrow-left-CXopUm0P.js",revision:null},{url:"assets/appearance-DECzlo4S.js",revision:null},{url:"assets/addresses-MpsYhDuT.js",revision:null},{url:"assets/_trade_id-Cy_8WDE7.js",revision:null},{url:"assets/_trade_id-CN7o2QQi.js",revision:null},{url:"assets/_error-aP8WfZ0L.js",revision:null},{url:"assets/_error-DcF4FKJZ.js",revision:null},{url:"assets/Matches-DgzoKqo8.js",revision:null},{url:"assets/Match-BoLpbSXg.js",revision:null},{url:"assets/ClientOnly-FdPNE-Ha.js",revision:null},{url:"assets/503-BBEYhtPx.js",revision:null},{url:"assets/500-CG0L0TZx.js",revision:null},{url:"assets/404-Bi4wqZq5.js",revision:null},{url:"assets/403-CQfBJzJh.js",revision:null},{url:"assets/401-CNflrND5.js",revision:null},{url:"apple-touch-icon.png",revision:"f9c8240d0509320d85a82bd60a6b426f"},{url:"favicon.ico",revision:"abba9e0d76413fa735e878d17223cfcb"},{url:"pwa-192x192.png",revision:"8bc372216f92e2f0e011daff55721ccb"},{url:"pwa-512x512.png",revision:"2fcf48a2ae4e95f6d7f4a6bc2cc42a63"},{url:"pwa-maskable-192x192.png",revision:"8befa0caebf24d2e0b01c36e01ab4bd7"},{url:"pwa-maskable-512x512.png",revision:"106b94c2eb0675579ae40309698f364c"},{url:"robots.txt",revision:"fa1ded1ed7c11438a9b0385b1e112850"},{url:"images/logo.png",revision:"fa701b6a1d714ecf4856df660055eb89"},{url:"images/chains/arbitrum.png",revision:"5c6955ae16d7d5588259393d32a59ec7"},{url:"images/chains/base.png",revision:"9fcfbaa1d32ffa28c370bbb3a06406af"},{url:"images/chains/binance.png",revision:"1f5eb69fce03beebd91f1eb4ae344500"},{url:"images/chains/bitcoin.png",revision:"1e2ec9f8c2a384dc4a7740fc836972ff"},{url:"images/chains/bsc.png",revision:"225a2167869ce3986a787a8e88417196"},{url:"images/chains/ethereum.png",revision:"8f2aaddbf88b0182f9da6dbbef20abfa"},{url:"images/chains/hyperevm.png",revision:"0f3c9b42225f4246d68b1d57a1ad374f"},{url:"images/chains/op.png",revision:"10b74a72193e2d6ace66ab2d91bd0ae1"},{url:"images/chains/plasma.png",revision:"5b2accf111b998ef54246391370a3870"},{url:"images/chains/polygon.png",revision:"8363c3106eafefc899fa04c242691480"},{url:"images/chains/solana.png",revision:"bc1953d110f02cb2d898d65f5251781e"},{url:"images/chains/tron.png",revision:"1d316e4d3ffc44797fc2b21ffbb4993a"},{url:"manifest.webmanifest",revision:"8d2924aafc68495c2adffcd2b8cff2c1"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("/index.html"),{denylist:[/^\/payments\//,/^\/pay\//,/^\/api\//,/^\/admin\/api\//]}))});