@abtnode/blocklet-services 1.16.43-beta-20250427-132304-6da95c55 → 1.16.43-beta-20250429-130236-269254ff

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 (296) hide show
  1. package/api/emails/_components/layout.js +2 -2
  2. package/api/emails/_libs/style.js +8 -3
  3. package/api/emails/_templates/kyc-code-verify.js +43 -0
  4. package/api/emails/_templates/new-user-session.js +2 -6
  5. package/api/emails/_templates/notification.js +2 -6
  6. package/api/emails/_templates/verify-code-body.js +4 -1
  7. package/api/emails/_templates/verify-code.js +2 -6
  8. package/api/index.js +31 -2
  9. package/api/libs/email.js +16 -0
  10. package/api/routes/blocklet.js +26 -17
  11. package/api/routes/ocap.js +1 -1
  12. package/api/routes/user.js +1 -1
  13. package/api/services/auth/session.js +2 -2
  14. package/api/services/kyc/index.js +5 -11
  15. package/dist/assets/{AdapterDayjs-BUGplkxR.js → AdapterDayjs-D5LoqHiU.js} +1 -1
  16. package/dist/assets/{ArrowDropDown-B0sLkJoY.js → ArrowDropDown-BCCa5uRn.js} +1 -1
  17. package/dist/assets/{CheckCircle-BNrN9mgy.js → CheckCircle-Bxk_pKUt.js} +1 -1
  18. package/dist/assets/{ChevronLeft-Dq00IS01.js → ChevronLeft-DgTQnUwX.js} +1 -1
  19. package/dist/assets/{ChevronRight-ZTqWK-Ga.js → ChevronRight-C-lajCDc.js} +1 -1
  20. package/dist/assets/{Community-DZCTPNMP.js → Community-DathqRsd.js} +1 -1
  21. package/dist/assets/{DeleteOutline-C2sY6hfm.js → DeleteOutline-Csdx_lih.js} +1 -1
  22. package/dist/assets/{Done-JLiLhELm.js → Done-DjB4uf97.js} +1 -1
  23. package/dist/assets/{Download-Ch4RfGRW.js → Download-CF6ZhZfD.js} +1 -1
  24. package/dist/assets/{Edit-CY6fFHQM.js → Edit-C-zkyYSj.js} +1 -1
  25. package/dist/assets/{EditIcon-Bi2cR-_u.js → EditIcon-DWRQ3fi6.js} +1 -1
  26. package/dist/assets/{Email-Dz2Eyqu0.js → Email-B0n6rLUZ.js} +1 -1
  27. package/dist/assets/{Error-CSFUqG0m.js → Error-DnzvDd2d.js} +1 -1
  28. package/dist/assets/{ExpandLess-BiMmSOBl.js → ExpandLess-DBN4huDO.js} +1 -1
  29. package/dist/assets/{Google-GOp5YvmZ.js → Google-VfyWFLKO.js} +1 -1
  30. package/dist/assets/{Holiday-Lc6woG1j.js → Holiday-BkY6LMfd.js} +1 -1
  31. package/dist/assets/{InfoOutlined-CQB5qKm-.js → InfoOutlined-BMb9Zu84.js} +1 -1
  32. package/dist/assets/{Launch-fxgQvk19.js → Launch-CVPYIHzD.js} +1 -1
  33. package/dist/assets/{LaunchOutlined-BV4_W1pb.js → LaunchOutlined-faHvtBle.js} +1 -1
  34. package/dist/assets/{Location-B8EOY3d0.js → Location-BQhEvGNL.js} +1 -1
  35. package/dist/assets/{LockIcon-fuTfhB_G.js → LockIcon-Bd69pSJI.js} +1 -1
  36. package/dist/assets/{Meeting-Epdyx36z.js → Meeting-BW-_XtSL.js} +1 -1
  37. package/dist/assets/{MoreHoriz-CX_pwfPT.js → MoreHoriz-CT231fLS.js} +1 -1
  38. package/dist/assets/{OffSick-VYgugWxu.js → OffSick-9I8vBA8l.js} +1 -1
  39. package/dist/assets/{Phone-KP65huHK.js → Phone-CKzC4712.js} +1 -1
  40. package/dist/assets/{PlayArrow-DFH1Psjx.js → PlayArrow-CVHX5RbU.js} +1 -1
  41. package/dist/assets/{QuestionMarkCircle-p6m3avKp.js → QuestionMarkCircle-DpFFQWud.js} +1 -1
  42. package/dist/assets/{ServerLogo-Bssx1Eou.js → ServerLogo-AfxVBRdi.js} +1 -1
  43. package/dist/assets/{Timezone-Ce4E1Xey.js → Timezone-C3hiNX6j.js} +1 -1
  44. package/dist/assets/{TuneOutlined-Dy2qPFGI.js → TuneOutlined-DcBuSd1o.js} +1 -1
  45. package/dist/assets/{ViewList-e3CoNi3K.js → ViewList-rVo7d5VV.js} +1 -1
  46. package/dist/assets/{WorkingRemotely-CXFJ6pz8.js → WorkingRemotely-CHzRY2CT.js} +1 -1
  47. package/dist/assets/access-control-Cum8iIaB.js +14 -0
  48. package/dist/assets/{actions-DA-6s_nQ.js → actions-D-Helr6n.js} +1 -1
  49. package/dist/assets/{add-component-core-DG9mQFsr.js → add-component-core-kWUUw0fB.js} +43 -37
  50. package/dist/assets/add-resource-DEesv1LC.js +1 -0
  51. package/dist/assets/{addon-Bcc-Xwbf.js → addon-B5zwPHe5.js} +1 -1
  52. package/dist/assets/{advanced-DTe2fs5L.js → advanced-CjSPlkxp.js} +1 -1
  53. package/dist/assets/api-BkKTvlm_.js +1 -0
  54. package/dist/assets/appearance-rlMOco_Q.js +1 -0
  55. package/dist/assets/ar-BRKjvO8p.js +1 -0
  56. package/dist/assets/ar-Duy7ZH--.js +7 -0
  57. package/dist/assets/audit-logs-BpacJ0mq.js +35 -0
  58. package/dist/assets/{authorize-DUyL7MEU.js → authorize-Dup4yiJg.js} +1 -1
  59. package/dist/assets/{base32-p9VcJrwv.js → base32-yUUlhgnG.js} +1 -1
  60. package/dist/assets/branding-3E94pu9e.js +54 -0
  61. package/dist/assets/{branding-_VO2ZZ3t.js → branding-BB4z7dex.js} +2 -2
  62. package/dist/assets/bundle-avatar-njRzpG6o.js +1 -0
  63. package/dist/assets/button-DRqMfYjF.js +1 -0
  64. package/dist/assets/{click-to-copy-BGyXQL2i.js → click-to-copy-CSwBjJDI.js} +1 -1
  65. package/dist/assets/cloneDeep-Cg0h_FaY.js +1 -0
  66. package/dist/assets/complete-lhAOowgH.js +45 -0
  67. package/dist/assets/{component-5gjaNHCg.js → component-DG-t6Jac.js} +50 -46
  68. package/dist/assets/{config-Bh19ZUJ-.js → config-BWuaMoux.js} +1 -1
  69. package/dist/assets/config-Ct2icT-j.js +32 -0
  70. package/dist/assets/{config-navigation-Dvjz9nAh.js → config-navigation-BZ3T8tYK.js} +6 -6
  71. package/dist/assets/config-space-CKx83vmi.js +1 -0
  72. package/dist/assets/{confirm-DqvNmeoz.js → confirm-Bj4L0Vn8.js} +2 -2
  73. package/dist/assets/connect-BoejDqj-.js +5 -0
  74. package/dist/assets/connect-to-lcfZI_0b.js +1 -0
  75. package/dist/assets/connect-v2Zx9JEk.js +1 -0
  76. package/dist/assets/{content-layout-BPaAeaMQ.js → content-layout-C3Yd4mK9.js} +1 -1
  77. package/dist/assets/dashboard-0TEl6bJJ.js +280 -0
  78. package/dist/assets/de-D3cg0t9f.js +1 -0
  79. package/dist/assets/de-jJ-wrtW1.js +7 -0
  80. package/dist/assets/{delete-confirm-_BzUlhv2.js → delete-confirm-kpan5KFX.js} +1 -1
  81. package/dist/assets/did-address-CJZtrzhT.js +1 -0
  82. package/dist/assets/{domain-ag7_Ivc1.js → domain-C8nJlURa.js} +1 -1
  83. package/dist/assets/domain-action-card-BZ3CFKs5.js +24 -0
  84. package/dist/assets/domains-Cn_DfzNS.js +1 -0
  85. package/dist/assets/{dot-BE1YP292.js → dot-CaKxEi_0.js} +2 -2
  86. package/dist/assets/{email-DKpgximx.js → email-BjCEb0WI.js} +2 -2
  87. package/dist/assets/{empty-spinner-DmDm8XzF.js → empty-spinner-BYUFR95o.js} +1 -1
  88. package/dist/assets/es-CoGP0eAj.js +7 -0
  89. package/dist/assets/es-DPjqApVE.js +1 -0
  90. package/dist/assets/exchange-passport-B_b6xNH8.js +1 -0
  91. package/dist/assets/fr-Dscs9WsP.js +1 -0
  92. package/dist/assets/fr-yctlgsrj.js +7 -0
  93. package/dist/assets/{fuel-CcBzY6Bt.js → fuel-Dtvd1fJW.js} +1 -1
  94. package/dist/assets/{gen-access-key-DxKwgiGT.js → gen-access-key-DsGgHUvi.js} +1 -1
  95. package/dist/assets/get-safe-url-BTmcSfZP.js +1 -0
  96. package/dist/assets/get-safe-url-BYr2jgRv.js +1 -0
  97. package/dist/assets/hi-B8D3j6bs.js +1 -0
  98. package/dist/assets/hi-Dh_pGPBD.js +5 -0
  99. package/dist/assets/{home-Bi8fA3jh.js → home-ClwQWk4f.js} +1 -1
  100. package/dist/assets/{id-BderyGO5.js → id-DWMMQI0G.js} +1 -1
  101. package/dist/assets/id-cicarMJv.js +7 -0
  102. package/dist/assets/{iframe-DZ181i8X.js → iframe-B7H87IMw.js} +1 -1
  103. package/dist/assets/index-2eL6Ndgh.js +288 -0
  104. package/dist/assets/index-B9lBWxnt.js +113 -0
  105. package/dist/assets/index-BDaAwySV.js +1 -0
  106. package/dist/assets/index-BOvzhuNp.js +11 -0
  107. package/dist/assets/{index-BT0GBmWF.js → index-BUHlfcy3.js} +1 -1
  108. package/dist/assets/index-BUrD6xiH.js +241 -0
  109. package/dist/assets/index-Bco7nZ5q.js +6 -0
  110. package/dist/assets/{index-SDdS_qt8.js → index-Bt7GP-dU.js} +1 -1
  111. package/dist/assets/{index-CYeIiQ6Q.js → index-C-rP7qS0.js} +1 -1
  112. package/dist/assets/{index-DyxFC42L.js → index-C1UHqpp3.js} +3 -3
  113. package/dist/assets/index-CEmSUlto.js +192 -0
  114. package/dist/assets/{index-CHbpkZwO.js → index-CMFOn8T3.js} +1 -1
  115. package/dist/assets/index-CVKN_Jn1.js +55 -0
  116. package/dist/assets/index-Cb1OPKJL.js +708 -0
  117. package/dist/assets/index-CjZLIV87.js +10 -0
  118. package/dist/assets/{index-Dl4W1N74.js → index-Cx-tuAMi.js} +1 -1
  119. package/dist/assets/index-D9eW5l3E.js +345 -0
  120. package/dist/assets/index-DAer_mWn.js +137 -0
  121. package/dist/assets/{index-n0Q-fETi.js → index-DHIWtN6I.js} +5 -5
  122. package/dist/assets/{index-DKhrYmrN.js → index-DIe9psLc.js} +1 -1
  123. package/dist/assets/{index-YbJjfDTR.js → index-DyKjKMmu.js} +1 -1
  124. package/dist/assets/{index-DuH8q5ir.js → index-M6peJL7s.js} +1 -1
  125. package/dist/assets/index-a0ZdM5aG.js +4 -0
  126. package/dist/assets/{index-CGBZONPv.js → index-i5c4XeO-.js} +1 -1
  127. package/dist/assets/{invitation-BrAZQXQL.js → invitation-DGRUoRzD.js} +3 -3
  128. package/dist/assets/invite-uoA9amq7.js +1 -0
  129. package/dist/assets/{issue-passport-Dd_yyO08.js → issue-passport-2LsCG1Ym.js} +1 -1
  130. package/dist/assets/item-taL0aTyr.js +2 -0
  131. package/dist/assets/ja-3LoBq68U.js +1 -0
  132. package/dist/assets/ja-Bm56AvcM.js +7 -0
  133. package/dist/assets/ko-B0ZZ2RWO.js +7 -0
  134. package/dist/assets/ko-B2dxwXDl.js +1 -0
  135. package/dist/assets/landing-page-EY5bGAu7.js +1 -0
  136. package/dist/assets/{launch-result-message-C9huWJUf.js → launch-result-message-B_fS-f90.js} +1 -1
  137. package/dist/assets/{layout-Cw-hwCHs.js → layout-DAempiIX.js} +1 -1
  138. package/dist/assets/list-B1E5dxgu.js +236 -0
  139. package/dist/assets/list-header-8k1_C0K0.js +1 -0
  140. package/dist/assets/localization-Di0I0VVv.js +1 -0
  141. package/dist/assets/{log-Chqr_or_.js → log-CL673QLU.js} +1 -1
  142. package/dist/assets/{logger-zix81YaM.js → logger-OMyVyA8K.js} +1 -1
  143. package/dist/assets/login-CsMJeMSS.js +1 -0
  144. package/dist/assets/login-oauth-callback-Bh6TJ59S.js +1 -0
  145. package/dist/assets/{logo-uploader-CJrdpVcQ.js → logo-uploader-DFGj09Gp.js} +20 -19
  146. package/dist/assets/{lost-passport-Do1Pl0xI.js → lost-passport-D00cnWl_.js} +2 -2
  147. package/dist/assets/lottie-error-CMOXHtBH.js +1 -0
  148. package/dist/assets/lottie-loading-o-GBrhM9.js +1 -0
  149. package/dist/assets/lottie-welcome-C9B95FIi.js +1 -0
  150. package/dist/assets/omit-1zyydTZL.js +1 -0
  151. package/dist/assets/{open-window-D8MZhu_7.js → open-window-xLNOSl03.js} +1 -1
  152. package/dist/assets/{overview-DLA9wj6a.js → overview-Ds0WiSnv.js} +2 -2
  153. package/dist/assets/{page-header-CWY8mxlT.js → page-header-BXC_EZqA.js} +1 -1
  154. package/dist/assets/{passport-item-CWtlyIE_.js → passport-item-Dpr4rKdD.js} +1 -1
  155. package/dist/assets/{permission-BGM09622.js → permission-DDLyDuSn.js} +1 -1
  156. package/dist/assets/preferences-DXw1rfcr.js +1 -0
  157. package/dist/assets/profile-embed-co2rsGfl.js +1 -0
  158. package/dist/assets/pt-6Xqu-_a4.js +5 -0
  159. package/dist/assets/pt-eei1_Z4R.js +1 -0
  160. package/dist/assets/publish-resource-CBR18Gc3.js +1 -0
  161. package/dist/assets/{react-beautiful-dnd.esm-ByydTUk4.js → react-beautiful-dnd.esm-CeODMcuS.js} +1 -1
  162. package/dist/assets/relative-time-DlN06RKr.js +1 -0
  163. package/dist/assets/ru-ZKgT6XdU.js +1 -0
  164. package/dist/assets/ru-y0N1jyVB.js +5 -0
  165. package/dist/assets/runtime-nJVx0iKJ.js +1 -0
  166. package/dist/assets/sdk-DICk2ZHP.js +1 -0
  167. package/dist/assets/{security-BhkfG23R.js → security-CHs7ENbZ.js} +4 -4
  168. package/dist/assets/session-j-9KoWbs.js +1 -0
  169. package/dist/assets/setup-CGwOCqjv.js +25 -0
  170. package/dist/assets/{shorten-label-DFzv9EKX.js → shorten-label-SbKUBkvs.js} +1 -1
  171. package/dist/assets/{simple-select-DlrdVbaI.js → simple-select-CLc0Q9sm.js} +1 -1
  172. package/dist/assets/{slicedToArray-CPl5_eGD.js → slicedToArray-C0YDCVwK.js} +2 -2
  173. package/dist/assets/{spaces-WkJCApHO.js → spaces-CZHg-rr5.js} +1 -1
  174. package/dist/assets/start-Chlvxw3J.js +187 -0
  175. package/dist/assets/starting-progress-DpqgCEFM.js +40 -0
  176. package/dist/assets/{status-CygZ0LuY.js → status-XLk6MkKv.js} +1 -1
  177. package/dist/assets/{step-actions-D_1PFeFs.js → step-actions-hjC-pbPT.js} +1 -1
  178. package/dist/assets/{studio-Byjzwg8q.js → studio-DrYhFxCD.js} +1 -1
  179. package/dist/assets/{switch-control-5fEOPVKs.js → switch-control-CqfXXgvP.js} +1 -1
  180. package/dist/assets/th-CG5eLRZo.js +1 -0
  181. package/dist/assets/th-CJa7646q.js +5 -0
  182. package/dist/assets/{traffic-T11hxc--.js → traffic-Dbf1L1c0.js} +1 -1
  183. package/dist/assets/{transfer-ROpxn9LD.js → transfer-GcIVZcyL.js} +1 -1
  184. package/dist/assets/unsubscribe-D2dQlJJM.js +1 -0
  185. package/dist/assets/use-blocklet-logo-DryhoHen.js +1 -0
  186. package/dist/assets/{use-mobile-C_flBrm-.js → use-mobile-BKvZ6hcv.js} +1 -1
  187. package/dist/assets/{use-mobile-DlKplWTG.js → use-mobile-BNUwcWCH.js} +1 -1
  188. package/dist/assets/{useAsync-CGW40D2-.js → useAsync-DXeWUWXr.js} +1 -1
  189. package/dist/assets/{useLocalStorage-DldnaMbZ.js → useLocalStorage-Cb6R1F6v.js} +1 -1
  190. package/dist/assets/user-center-D7lo6m0u.js +76 -0
  191. package/dist/assets/{util-Bjy-tP7q.js → util-BYQQqvk1.js} +1 -1
  192. package/dist/assets/util-BcFfyz6S.js +1 -0
  193. package/dist/assets/{vendor-arcblock-ScFEr-lj.js → vendor-arcblock-CX-5Ex_f.js} +100 -97
  194. package/dist/assets/vendor-hooks-DpLLpTSZ.js +7 -0
  195. package/dist/assets/vendor-mui-core-B6POpIBB.js +266 -0
  196. package/dist/assets/{vendor-mui-x-B0hsmEJ3.js → vendor-mui-x-CATHW1QL.js} +1 -1
  197. package/dist/assets/{vendor-utils-BNHJB5U7.js → vendor-utils-BUwfcN20.js} +13 -13
  198. package/dist/assets/{vendor-ux-did-connect-BdkhddhO.js → vendor-ux-did-connect-DVrP2LNw.js} +271 -241
  199. package/dist/assets/vi-CoZs3B42.js +1 -0
  200. package/dist/assets/vi-Rc5fwdQU.js +5 -0
  201. package/dist/assets/wrap-locale-CzSOEkvO.js +1 -0
  202. package/dist/assets/zh-CgkeS2I3.js +1 -0
  203. package/dist/assets/{zh-BYRCoK6F.js → zh-J32RyrWT.js} +2 -2
  204. package/dist/assets/zh-tw-BSUxp5LQ.js +7 -0
  205. package/dist/assets/zh-tw-CuakNRcW.js +1 -0
  206. package/dist/index.html +6 -6
  207. package/dist/service-worker.js +1 -1
  208. package/dist/share/shared-bridge.html +85 -0
  209. package/package.json +34 -34
  210. package/dist/assets/access-control-B20P1UrY.js +0 -14
  211. package/dist/assets/add-resource-BoS5YkVy.js +0 -1
  212. package/dist/assets/api-BrU7j0QA.js +0 -1
  213. package/dist/assets/appearance-DYi32tlk.js +0 -1
  214. package/dist/assets/ar-CmhpkjwX.js +0 -1
  215. package/dist/assets/ar-DupP3pla.js +0 -7
  216. package/dist/assets/audit-logs-CydL26ZC.js +0 -35
  217. package/dist/assets/branding-CAMtNLMU.js +0 -54
  218. package/dist/assets/bundle-avatar-D0t7RLGx.js +0 -1
  219. package/dist/assets/button-BeZibzB9.js +0 -1
  220. package/dist/assets/cloneDeep-SfcdeqEN.js +0 -1
  221. package/dist/assets/complete-BzCBoyhn.js +0 -45
  222. package/dist/assets/config-1xq1_d84.js +0 -32
  223. package/dist/assets/config-space-CYg-72ab.js +0 -1
  224. package/dist/assets/connect-Bbc2y5nS.js +0 -1
  225. package/dist/assets/connect-DM2xKEWk.js +0 -5
  226. package/dist/assets/connect-to-Ck5O2M1K.js +0 -1
  227. package/dist/assets/dashboard-8QXGSoVu.js +0 -280
  228. package/dist/assets/de-Doy9B4I7.js +0 -1
  229. package/dist/assets/de-TcDcBkI0.js +0 -7
  230. package/dist/assets/did-address-DUThaBlf.js +0 -1
  231. package/dist/assets/domain-action-card-D3w6jyPR.js +0 -24
  232. package/dist/assets/domains-BDxEOJh6.js +0 -1
  233. package/dist/assets/es-CDD0y3ur.js +0 -7
  234. package/dist/assets/es-CruF8tDk.js +0 -1
  235. package/dist/assets/exchange-passport-Izkf8qpM.js +0 -1
  236. package/dist/assets/fr-Bajh_D8H.js +0 -1
  237. package/dist/assets/fr-zYSSKlBw.js +0 -7
  238. package/dist/assets/get-safe-url-Bq9SFfX6.js +0 -1
  239. package/dist/assets/get-safe-url-DBsPGn--.js +0 -1
  240. package/dist/assets/hi-BsP-0YrU.js +0 -5
  241. package/dist/assets/hi-DOsApYK0.js +0 -1
  242. package/dist/assets/id-CY2FWdMB.js +0 -7
  243. package/dist/assets/index-B2yOcqTl.js +0 -192
  244. package/dist/assets/index-BGgGfqEc.js +0 -346
  245. package/dist/assets/index-B_vrglsK.js +0 -10
  246. package/dist/assets/index-BnmeT4Bk.js +0 -113
  247. package/dist/assets/index-C8QMe2NL.js +0 -138
  248. package/dist/assets/index-Cjjg2_Xp.js +0 -11
  249. package/dist/assets/index-DNG6b9sp.js +0 -224
  250. package/dist/assets/index-DO3_1y-L.js +0 -708
  251. package/dist/assets/index-DO4cSlUf.js +0 -290
  252. package/dist/assets/index-DcBUShKK.js +0 -1
  253. package/dist/assets/index-EnQ254k3.js +0 -6
  254. package/dist/assets/index-bb90BUf4.js +0 -55
  255. package/dist/assets/index-mDKG4SiY.js +0 -1
  256. package/dist/assets/index-slEV_y-C.js +0 -4
  257. package/dist/assets/invite-Cbz8B2uW.js +0 -1
  258. package/dist/assets/item-nK3D7WH5.js +0 -2
  259. package/dist/assets/ja-99RIjwwl.js +0 -1
  260. package/dist/assets/ja-BLPXqHM4.js +0 -7
  261. package/dist/assets/ko-8oFi6wHH.js +0 -1
  262. package/dist/assets/ko-Cxgk34co.js +0 -7
  263. package/dist/assets/landing-page-BMM_oJb1.js +0 -1
  264. package/dist/assets/list-Dmtz4mRb.js +0 -235
  265. package/dist/assets/list-header-CgF1S4js.js +0 -1
  266. package/dist/assets/localization-DATb3Y_j.js +0 -1
  267. package/dist/assets/login-DjB23H9M.js +0 -1
  268. package/dist/assets/login-oauth-callback-ILeP59KT.js +0 -1
  269. package/dist/assets/omit-bLid3PKQ.js +0 -1
  270. package/dist/assets/preferences-DYdbb0kG.js +0 -1
  271. package/dist/assets/profile-embed-CeEMHxEc.js +0 -1
  272. package/dist/assets/pt-BINIHul4.js +0 -5
  273. package/dist/assets/pt-ChXuTrrd.js +0 -1
  274. package/dist/assets/publish-resource-BEc_A5mC.js +0 -1
  275. package/dist/assets/relative-time-Djw-K4Zu.js +0 -1
  276. package/dist/assets/ru-BifF7u-P.js +0 -5
  277. package/dist/assets/ru-IkTTTY0K.js +0 -1
  278. package/dist/assets/runtime-DXl0lfXF.js +0 -1
  279. package/dist/assets/sdk-CTe6rL6c.js +0 -1
  280. package/dist/assets/session-VIMbdc9j.js +0 -1
  281. package/dist/assets/setup-BmYxTt6Z.js +0 -25
  282. package/dist/assets/start-CVexuuAk.js +0 -187
  283. package/dist/assets/th-CBxM23U5.js +0 -5
  284. package/dist/assets/th-OF8xr--T.js +0 -1
  285. package/dist/assets/unsubscribe-Cd3XOnSp.js +0 -1
  286. package/dist/assets/use-app-logo-B8Kl9EZt.js +0 -1
  287. package/dist/assets/user-center-CzyCbtWm.js +0 -77
  288. package/dist/assets/util-Dw9Eiuko.js +0 -1
  289. package/dist/assets/vendor-hooks-DftG_2gV.js +0 -7
  290. package/dist/assets/vendor-mui-core-CQ38ohp2.js +0 -266
  291. package/dist/assets/vi-DCBJBc4G.js +0 -1
  292. package/dist/assets/vi-DY_Y13jR.js +0 -5
  293. package/dist/assets/wrap-locale-DMTYAE64.js +0 -1
  294. package/dist/assets/zh-BRAYg0sY.js +0 -1
  295. package/dist/assets/zh-tw-BG0rlH8p.js +0 -7
  296. package/dist/assets/zh-tw-D5-DkgwC.js +0 -1
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
4
  const components_1 = require("@react-email/components");
5
5
  function Layout({ children, mainStyle = {}, containerStyle = {}, subject, }) {
6
- return ((0, jsx_runtime_1.jsxs)(components_1.Html, { children: [(0, jsx_runtime_1.jsx)(components_1.Head, { children: subject && (0, jsx_runtime_1.jsx)("title", { children: subject }) }), (0, jsx_runtime_1.jsx)(components_1.Body, { style: Object.assign(Object.assign({}, _mainStyle), mainStyle), children: (0, jsx_runtime_1.jsx)("div", { style: Object.assign(Object.assign({}, _mainStyle), mainStyle), children: (0, jsx_runtime_1.jsx)("div", { style: { padding: '30px 20px' }, children: (0, jsx_runtime_1.jsx)(components_1.Container, { style: Object.assign(Object.assign({}, _containerStyle), containerStyle), children: (0, jsx_runtime_1.jsx)("div", { children: children }) }) }) }) })] }));
6
+ return ((0, jsx_runtime_1.jsxs)(components_1.Html, { children: [(0, jsx_runtime_1.jsx)(components_1.Head, { children: subject && (0, jsx_runtime_1.jsx)("title", { children: subject }) }), (0, jsx_runtime_1.jsx)(components_1.Body, { style: Object.assign(Object.assign({}, _mainStyle), mainStyle), children: (0, jsx_runtime_1.jsx)("div", { style: Object.assign(Object.assign({}, _mainStyle), mainStyle), children: (0, jsx_runtime_1.jsx)("div", { style: { padding: '20px 10px' }, children: (0, jsx_runtime_1.jsx)(components_1.Container, { style: Object.assign(Object.assign({}, _containerStyle), containerStyle), children: (0, jsx_runtime_1.jsx)("div", { children: children }) }) }) }) })] }));
7
7
  }
8
8
  exports.default = Layout;
9
9
  const _mainStyle = {
@@ -11,5 +11,5 @@ const _mainStyle = {
11
11
  };
12
12
  const _containerStyle = {
13
13
  margin: '0 auto',
14
- maxWidth: '50em',
14
+ maxWidth: '61.8em',
15
15
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.footerStyle = exports.h1Style = exports.attachmentsStyle = exports.severityColorMap = exports.titleStyle = exports.summaryStyle = exports.remarkStyle = exports.assetStyle = exports.actionStyle = exports.actionsStyle = exports.linkStyle = void 0;
3
+ exports.contentStyle = exports.footerStyle = exports.h1Style = exports.attachmentsStyle = exports.severityColorMap = exports.titleStyle = exports.summaryStyle = exports.remarkStyle = exports.assetStyle = exports.actionStyle = exports.actionsStyle = exports.linkStyle = void 0;
4
4
  exports.linkStyle = {
5
5
  color: '#2754C5',
6
6
  fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif",
@@ -56,9 +56,9 @@ exports.attachmentsStyle = {
56
56
  exports.h1Style = {
57
57
  color: '#333',
58
58
  fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif",
59
- fontSize: '24px',
59
+ fontSize: '22px',
60
60
  fontWeight: 'bold',
61
- margin: '40px 0',
61
+ margin: '1em 0',
62
62
  padding: '0',
63
63
  };
64
64
  exports.footerStyle = {
@@ -68,3 +68,8 @@ exports.footerStyle = {
68
68
  lineHeight: '22px',
69
69
  margin: 0,
70
70
  };
71
+ exports.contentStyle = {
72
+ margin: '20px auto',
73
+ backgroundColor: '#ffffff',
74
+ padding: '10px 20px 30px 20px',
75
+ };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.KycCodeVerifyEmail = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const components_1 = require("@react-email/components");
9
+ // @ts-ignore
10
+ const constant_1 = require("@abtnode/constant");
11
+ const footer_1 = __importDefault(require("../_components/footer"));
12
+ const content_1 = __importDefault(require("../_components/content"));
13
+ const layout_1 = __importDefault(require("../_components/layout"));
14
+ const header_1 = __importDefault(require("../_components/header"));
15
+ const verify_code_body_1 = __importDefault(require("./verify-code-body"));
16
+ const style_1 = require("../_libs/style");
17
+ const fontFamily = 'HelveticaNeue,Helvetica,Arial,sans-serif';
18
+ const main = {
19
+ fontFamily,
20
+ };
21
+ const KycCodeVerifyEmail = ({ code, appInfo, locale = 'en', userInfo, poweredBy, }) => {
22
+ const appName = appInfo.title;
23
+ const ttl = constant_1.VERIFY_CODE_TTL / 60 / 1000;
24
+ const translations = {
25
+ en: {
26
+ emailTitle: `Verify Your Email for ${appName}`,
27
+ emailHeadline: 'To ensure the security of your account and enhance your experience, you need to use following code to verify your email, and you will receive a NFT in your DID Wallet upon verification.',
28
+ emailValidCode: `This code is valid for ${ttl} minutes. If you don't want to verify your email, you can ignore this message.`,
29
+ emailWarning: `${appName} will never email you and ask you to disclose your password, credit card, or banking account number.`,
30
+ },
31
+ zh: {
32
+ emailTitle: `验证您在 ${appName} 的邮箱`,
33
+ emailHeadline: '为确保您的帐户安全并增强您的体验,您需要使用以下代码验证您的邮箱,并在验证后在您的 DID Wallet 中收到 NFT。',
34
+ emailValidCode: `此代码有效期为 ${ttl} 分钟。如果您不想验证您的邮箱,您可以忽略此消息。`,
35
+ emailWarning: `${appName} 永远不会向您发送电子邮件并要求您披露您的密码、信用卡或银行账户信息。`,
36
+ },
37
+ };
38
+ const translation = translations[locale] || translations.en;
39
+ const subject = `[${appInfo.title}] ${translation.emailTitle}`;
40
+ return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: style_1.contentStyle, locale: locale, title: translation.emailTitle, body: (0, jsx_runtime_1.jsx)(verify_code_body_1.default, { locale: locale, code: code, appName: appInfo.title, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { children: translation.emailHeadline }), (0, jsx_runtime_1.jsx)(components_1.Heading, { style: { textAlign: 'center', margin: '1.1em 0' }, children: code }), (0, jsx_runtime_1.jsx)(components_1.Text, { children: translation.emailValidCode }), (0, jsx_runtime_1.jsx)(components_1.Text, { children: translation.emailWarning })] }) }) }), (0, jsx_runtime_1.jsx)(footer_1.default, { showCopyright: false, poweredBy: poweredBy, showBlocklet: true, appInfo: appInfo, locale: locale, userInfo: userInfo })] }));
41
+ };
42
+ exports.KycCodeVerifyEmail = KycCodeVerifyEmail;
43
+ exports.default = exports.KycCodeVerifyEmail;
@@ -10,15 +10,11 @@ const footer_1 = __importDefault(require("../_components/footer"));
10
10
  const content_1 = __importDefault(require("../_components/content"));
11
11
  const layout_1 = __importDefault(require("../_components/layout"));
12
12
  const header_1 = __importDefault(require("../_components/header"));
13
+ const style_1 = require("../_libs/style");
13
14
  const fontFamily = 'HelveticaNeue,Helvetica,Arial,sans-serif';
14
15
  const main = {
15
16
  fontFamily,
16
17
  };
17
- const container = {
18
- margin: '20px auto',
19
- backgroundColor: '#ffffff',
20
- padding: '5px 50px 30px 60px',
21
- };
22
18
  const NewUserSessionEmail = ({ userSession, appInfo, locale = 'en', userInfo, poweredBy, }) => {
23
19
  const translations = {
24
20
  en: {
@@ -39,7 +35,7 @@ const NewUserSessionEmail = ({ userSession, appInfo, locale = 'en', userInfo, po
39
35
  zh: 'zh-CN',
40
36
  };
41
37
  const targetLocale = localeMap[locale] || localeMap.en;
42
- return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: container, locale: locale, title: translation.title, body: (0, jsx_runtime_1.jsxs)(components_1.Text, { children: ["You are logged in a new device: ", userSession.ua] }), attachments: [
38
+ return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: style_1.contentStyle, locale: locale, title: translation.title, body: (0, jsx_runtime_1.jsxs)(components_1.Text, { children: ["You are logged in a new device: ", userSession.ua] }), attachments: [
43
39
  {
44
40
  type: 'section',
45
41
  fields: [
@@ -10,18 +10,14 @@ const footer_1 = __importDefault(require("../_components/footer"));
10
10
  const content_1 = __importDefault(require("../_components/content"));
11
11
  const layout_1 = __importDefault(require("../_components/layout"));
12
12
  const header_1 = __importDefault(require("../_components/header"));
13
+ const style_1 = require("../_libs/style");
13
14
  const fontFamily = 'HelveticaNeue,Helvetica,Arial,sans-serif';
14
15
  const main = {
15
16
  fontFamily,
16
17
  };
17
- const container = {
18
- margin: '20px auto',
19
- backgroundColor: '#ffffff',
20
- padding: '5px 50px 30px 60px',
21
- };
22
18
  const NotificationEmail = ({ title, body = '', raw = false, // do not convert body to clickable span
23
19
  subject, attachments = [], actions = [], appInfo, locale = 'en', severity = 'normal', unsubscribeToken, userInfo, poweredBy, }) => {
24
- return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: container, title: title, content: body, attachments: attachments, actions: actions, locale: locale, severity: severity, raw: raw }), (0, jsx_runtime_1.jsx)(footer_1.default, { showCopyright: false, poweredBy: poweredBy, showBlocklet: true, appInfo: appInfo, locale: locale, unsubscribeToken: unsubscribeToken, userInfo: userInfo })] }));
20
+ return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: style_1.contentStyle, title: title, content: body, attachments: attachments, actions: actions, locale: locale, severity: severity, raw: raw }), (0, jsx_runtime_1.jsx)(footer_1.default, { showCopyright: false, poweredBy: poweredBy, showBlocklet: true, appInfo: appInfo, locale: locale, unsubscribeToken: unsubscribeToken, userInfo: userInfo })] }));
25
21
  };
26
22
  exports.NotificationEmail = NotificationEmail;
27
23
  exports.default = exports.NotificationEmail;
@@ -10,7 +10,7 @@ const components_1 = require("@react-email/components");
10
10
  const constant_1 = require("@abtnode/constant");
11
11
  const actions_1 = __importDefault(require("../_components/actions"));
12
12
  // HACK: 只是短暂为了兼容现有 launcher 转发逻辑
13
- function VerifyCodeBody({ appName, locale = 'en', code, magicLink, }) {
13
+ function VerifyCodeBody({ appName, locale = 'en', code, magicLink, children, }) {
14
14
  const translations = {
15
15
  en: {
16
16
  title: `Login to ${appName}`,
@@ -36,6 +36,9 @@ function VerifyCodeBody({ appName, locale = 'en', code, magicLink, }) {
36
36
  },
37
37
  };
38
38
  const translation = translations[locale] || translations.en;
39
+ if (children) {
40
+ return children;
41
+ }
39
42
  if (code && magicLink) {
40
43
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { children: translation.followConfirmation }), (0, jsx_runtime_1.jsx)(actions_1.default, { actions: [{ title: translation.confirmButton, link: magicLink }] }), (0, jsx_runtime_1.jsx)(components_1.Hr, {}), (0, jsx_runtime_1.jsxs)(components_1.Text, { children: [translation.orEnterCode, (0, jsx_runtime_1.jsx)("strong", { children: code })] }), (0, jsx_runtime_1.jsx)(components_1.Text, { children: translation.codeExpiresIn }), (0, jsx_runtime_1.jsxs)(components_1.Text, { children: [(0, jsx_runtime_1.jsx)("strong", { children: translation.doNotShareCodeTitle }), " ", translation.doNotShareCode] })] }));
41
44
  }
@@ -11,15 +11,11 @@ const content_1 = __importDefault(require("../_components/content"));
11
11
  const layout_1 = __importDefault(require("../_components/layout"));
12
12
  const header_1 = __importDefault(require("../_components/header"));
13
13
  const verify_code_body_1 = __importDefault(require("./verify-code-body"));
14
+ const style_1 = require("../_libs/style");
14
15
  const fontFamily = 'HelveticaNeue,Helvetica,Arial,sans-serif';
15
16
  const main = {
16
17
  fontFamily,
17
18
  };
18
- const container = {
19
- margin: '20px auto',
20
- backgroundColor: '#ffffff',
21
- padding: '5px 50px 30px 60px',
22
- };
23
19
  const VerifyCodeEmail = ({ code, magicLink, appInfo, locale = 'en', userInfo, poweredBy, }) => {
24
20
  const translations = {
25
21
  en: {
@@ -31,7 +27,7 @@ const VerifyCodeEmail = ({ code, magicLink, appInfo, locale = 'en', userInfo, po
31
27
  };
32
28
  const translation = translations[locale] || translations.en;
33
29
  const subject = `[${appInfo.title}] ${translation.title}`;
34
- return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: container, locale: locale, title: translation.title, body: (0, jsx_runtime_1.jsx)(verify_code_body_1.default, { locale: locale, code: code, magicLink: magicLink, appName: appInfo.title }) }), (0, jsx_runtime_1.jsx)(footer_1.default, { showCopyright: false, poweredBy: poweredBy, showBlocklet: true, appInfo: appInfo, locale: locale, userInfo: userInfo })] }));
30
+ return ((0, jsx_runtime_1.jsxs)(layout_1.default, { mainStyle: main, subject: subject, children: [(0, jsx_runtime_1.jsx)(components_1.Preview, { children: subject }), (0, jsx_runtime_1.jsx)(header_1.default, { appInfo: appInfo }), (0, jsx_runtime_1.jsx)(content_1.default, { style: style_1.contentStyle, locale: locale, title: translation.title, body: (0, jsx_runtime_1.jsx)(verify_code_body_1.default, { locale: locale, code: code, magicLink: magicLink, appName: appInfo.title }) }), (0, jsx_runtime_1.jsx)(footer_1.default, { showCopyright: false, poweredBy: poweredBy, showBlocklet: true, appInfo: appInfo, locale: locale, userInfo: userInfo })] }));
35
31
  };
36
32
  exports.VerifyCodeEmail = VerifyCodeEmail;
37
33
  exports.default = exports.VerifyCodeEmail;
package/api/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  const http = require('http');
2
+ const path = require('path');
2
3
  const get = require('lodash/get');
3
4
  const omitBy = require('lodash/omitBy');
4
5
  const uniq = require('lodash/uniq');
@@ -84,6 +85,7 @@ const createMediaRoutes = require('./routes/media');
84
85
  const createMCPRoutes = require('./routes/mcp');
85
86
  const ensureBlocklet = require('./middlewares/ensure-blocklet');
86
87
  const bodyParser = require('./middlewares/body-parser');
88
+ const federatedUtil = require('./util/federated');
87
89
 
88
90
  const agent = new http.Agent();
89
91
 
@@ -302,7 +304,22 @@ module.exports = function createServer(node, serverOptions = {}) {
302
304
  async function wrapHelmet({ req, res, securityConfig, blocklet, info }, next) {
303
305
  let config = securityConfig?.responseHeaderPolicy?.securityHeader || {};
304
306
  config = cleanConfigOverride(config);
305
- config = await patchResponseHeader(config, { node, blocklet });
307
+ const referer = req.get('referer');
308
+ // NOTICE: 获取当前站点所有可信的域名
309
+ const trustedDomains = await federatedUtil.getTrustedDomains({ node, req, blocklet });
310
+ // 为了避免 header 过大,这里仅保留 referer 的域名
311
+ const filteredTrustedDomains = trustedDomains.filter((x) => {
312
+ if (referer) {
313
+ try {
314
+ const refererUrl = new URL(referer);
315
+ return refererUrl.hostname === x;
316
+ } catch (err) {
317
+ logger.error('Failed to parse referer', { referer, err });
318
+ }
319
+ }
320
+ return false;
321
+ });
322
+ config = await patchResponseHeader(config, { node, blocklet, trustedDomains: filteredTrustedDomains });
306
323
 
307
324
  // TODO: @zhanghan apply these to user defined rules
308
325
  if (
@@ -419,7 +436,12 @@ module.exports = function createServer(node, serverOptions = {}) {
419
436
  'https://*.vimeo.com',
420
437
  ...whitelist.official,
421
438
  ].filter(Boolean),
422
- frameAncestors: ["'self'", ...whitelist.spaces, ...whitelist.official].filter(Boolean),
439
+ frameAncestors: [
440
+ "'self'",
441
+ ...whitelist.spaces,
442
+ ...whitelist.official,
443
+ ...filteredTrustedDomains.filter(Boolean).map((x) => `https://${x}`),
444
+ ].filter(Boolean),
423
445
  },
424
446
  };
425
447
  }
@@ -492,6 +514,11 @@ module.exports = function createServer(node, serverOptions = {}) {
492
514
  next();
493
515
  });
494
516
 
517
+ // 该接口不需要经过 security 中间件
518
+ server.get(`${WELLKNOWN_SERVICE_PATH_PREFIX}/share/shared-bridge.html`, (req, res) => {
519
+ res.sendFile(path.join(__dirname, '../dist', 'share', 'shared-bridge.html'));
520
+ });
521
+
495
522
  // 提供统一的 service-worker 注册入口,优先采用 service 自己提供的逻辑,尽量不依赖 Nginx 配置
496
523
  server.use(
497
524
  [
@@ -544,8 +571,10 @@ self.blocklet = {
544
571
  whiteList: [
545
572
  '/favicon.ico',
546
573
  '/.well-known/service/blocklet/logo',
574
+ '/.well-known/service/blocklet/logo-dark',
547
575
  '/.well-known/service/blocklet/logo-favicon',
548
576
  '/.well-known/service/blocklet/logo-rect',
577
+ '/.well-known/service/blocklet/logo-rect-dark',
549
578
  '/.well-known/service/blocklet/splash/portrait',
550
579
  '/.well-known/service/blocklet/splash/landscape',
551
580
  '/.well-known/service/openembed.json',
package/api/libs/email.js CHANGED
@@ -7,6 +7,7 @@ const { sendEmailWithLauncher } = require('@abtnode/auth/lib/launcher');
7
7
  const logger = require('./logger')('blocklet-services:notification');
8
8
  const { NotificationEmail } = require('../emails/_templates/notification');
9
9
  const { VerifyCodeEmail } = require('../emails/_templates/verify-code');
10
+ const { KycCodeVerifyEmail } = require('../emails/_templates/kyc-code-verify');
10
11
  const cache = require('../cache');
11
12
 
12
13
  const schemaEmail = Joi.string().email().required();
@@ -97,6 +98,21 @@ async function sendEmail(
97
98
  },
98
99
  })
99
100
  );
101
+ } else if (template === 'kyc-code-verify') {
102
+ html = await render(
103
+ KycCodeVerifyEmail({
104
+ subject,
105
+ appInfo,
106
+ ...notification,
107
+ locale,
108
+ raw,
109
+ unsubscribeToken,
110
+ userInfo: {
111
+ ...userInfo,
112
+ email: receiver,
113
+ },
114
+ })
115
+ );
100
116
  }
101
117
  } catch (err) {
102
118
  logger.error('Failed to render email template:', err);
@@ -21,6 +21,8 @@ const {
21
21
  ensureDefaultLogo,
22
22
  ensureCustomFavicon,
23
23
  ensureCustomRectLogo,
24
+ ensureCustomRectDarkLogo,
25
+ ensureCustomSquareDarkLogo,
24
26
  fallbackLogo,
25
27
  cacheError,
26
28
  } = require('@abtnode/util/lib/logo-middleware');
@@ -91,29 +93,36 @@ module.exports = {
91
93
  next();
92
94
  };
93
95
 
94
- const logoWorkflow = (...chain) => [
95
- attachSendLogoContext({
96
- onSendFallbackLogo,
97
- onGetBlocklet: ({ req }) => {
98
- return req.getBlocklet();
99
- },
100
- }),
101
- attachSendLogoFn,
102
- ensureBlockletExist,
103
- ...chain,
104
- ensureCustomSquareLogo,
105
- ensureBundleLogo,
106
- ensureDefaultLogo,
107
- fallbackLogo,
108
- cacheError,
109
- ];
96
+ const logoWorkflow = (...chain) => {
97
+ return [
98
+ attachSendLogoContext({
99
+ onSendFallbackLogo,
100
+ onGetBlocklet: ({ req }) => {
101
+ return req.getBlocklet();
102
+ },
103
+ }),
104
+ attachSendLogoFn,
105
+ ensureBlockletExist,
106
+ ...chain,
107
+ ensureCustomSquareLogo,
108
+ ensureBundleLogo,
109
+ ensureDefaultLogo,
110
+ fallbackLogo,
111
+ cacheError,
112
+ ].filter(Boolean);
113
+ };
110
114
 
111
115
  server.get(`${prefix}/blocklet/logo`, ...logoWorkflow());
116
+ server.get(`${prefix}/blocklet/logo-dark`, ...logoWorkflow(ensureCustomSquareDarkLogo));
112
117
 
113
118
  ['/favicon.ico', `${prefix}/blocklet/favicon`, `${prefix}/blocklet/logo-favicon`].forEach((x) => {
114
119
  server.get(x, ...logoWorkflow(ensureCustomFavicon));
115
120
  });
116
121
  server.get(`${prefix}/blocklet/logo-rect`, ...logoWorkflow(ensureCustomRectLogo));
122
+ server.get(
123
+ `${prefix}/blocklet/logo-rect-dark`,
124
+ ...logoWorkflow(ensureCustomRectDarkLogo, ensureCustomSquareDarkLogo)
125
+ );
117
126
 
118
127
  server.get(
119
128
  `${prefix}/blocklet/logo-bundle/?**`,
@@ -201,7 +210,7 @@ module.exports = {
201
210
  did: blocklet.meta.did,
202
211
  checkHealthImmediately: true,
203
212
  throwOnError: true,
204
- atomic: true,
213
+ atomic: false,
205
214
  });
206
215
  } catch (error) {
207
216
  startError = error;
@@ -27,7 +27,7 @@ module.exports = {
27
27
  const data = await chainClient.listAssets({
28
28
  ownerAddress,
29
29
  paging: {
30
- cursor: page - 1 < 0 ? 0 : page - 1,
30
+ cursor: `${Math.max(0, page - 1) * (size || 20)}`,
31
31
  size: size || 20,
32
32
  },
33
33
  });
@@ -698,7 +698,7 @@ const profileSetSchema = Joi.object({
698
698
  email: Joi.string().email().optional(),
699
699
  phone: Joi.object({
700
700
  phoneNumber: Joi.string().allow('').optional(),
701
- country: Joi.string().optional(),
701
+ country: Joi.string().allow('').optional(),
702
702
  }).optional(),
703
703
  bio: Joi.string().allow('').max(200).optional(),
704
704
  timezone: Joi.string().allow('').optional(),
@@ -295,8 +295,8 @@ module.exports = {
295
295
  const teamDid = req.getBlockletDid();
296
296
  const visitorId = req.get('x-blocklet-visitor-id');
297
297
  const ua = req.get('user-agent');
298
- // HACK: BlockletSDK 来的请求不需要检查 visitorId
299
- if (!ua.includes('BlockletSDK/')) {
298
+ // HACK: BlockletSDK 和 Aistro 来的请求不需要检查 visitorId
299
+ if (!(ua.includes('BlockletSDK/') || ua.toLowerCase().includes('aistro/'))) {
300
300
  if (!visitorId) {
301
301
  res.status(400).send(t('userSessionLogout', req.blockletLocale));
302
302
  return;
@@ -1,5 +1,5 @@
1
1
  const { verifyRequest } = require('@blocklet/did-space-js');
2
- const { WELLKNOWN_SERVICE_PATH_PREFIX, VERIFY_CODE_TTL } = require('@abtnode/constant');
2
+ const { WELLKNOWN_SERVICE_PATH_PREFIX } = require('@abtnode/constant');
3
3
  const createTranslator = require('@abtnode/util/lib/translate');
4
4
 
5
5
  const { emailSchema } = require('../../socket/channel/did');
@@ -23,10 +23,7 @@ const translations = {
23
23
  emailTitle: 'Verify Your Email for {appName}',
24
24
  emailHeadline:
25
25
  'To ensure the security of your account and enhance your experience, you need to use following code to verify your email, and you will receive a NFT in your DID Wallet upon verification.',
26
- emailValidCode:
27
- "This code is valid for {ttl} minutes. If you don't want to verify your email, you can ignore this message.",
28
- emailWarning:
29
- '{appName} will never email you and ask you to disclose your password, credit card, or banking account number.',
26
+
30
27
  userNotFound: 'User not found',
31
28
  },
32
29
  zh: {
@@ -40,8 +37,6 @@ const translations = {
40
37
  emailTitle: '验证您在 {appName} 的邮箱',
41
38
  emailHeadline:
42
39
  '为确保您的帐户安全并增强您的体验,您需要使用以下代码验证您的邮箱,并在验证后在您的 DID Wallet 中收到 NFT。',
43
- emailValidCode: '此代码有效期为 {ttl} 分钟。如果您不想验证您的邮箱,您可以忽略此消息。',
44
- emailWarning: '{appName} 永远不会向您发送电子邮件并要求您披露您的密码、信用卡或银行账户信息。',
45
40
  userNotFound: '用户不存在',
46
41
  },
47
42
  };
@@ -102,11 +97,9 @@ const init = ({ node }) => {
102
97
  const result = await sendEmail(
103
98
  subject,
104
99
  {
100
+ code: doc.code,
105
101
  title: t('emailTitle', locale, { appName: info.name }),
106
- body: `<p style="font-size:14px;line-height:24px;margin:16px 0;">${t('emailHeadline', locale)}</p>
107
- <p style="font-size:36px; line-height:24px; color: #333; font-weight: bold; text-align: center;">${doc.code}</p>
108
- <p style="font-size:14px;line-height:24px;margin:16px 0;">${t('emailValidCode', locale, { ttl: VERIFY_CODE_TTL / 60 / 1000 })}</p>
109
- <p style="font-size:14px;line-height:24px;margin:16px 0;">${t('emailWarning', locale, { appName: info.name })}</p>`,
102
+ body: t('emailHeadline', locale),
110
103
  },
111
104
  {
112
105
  teamDid,
@@ -114,6 +107,7 @@ const init = ({ node }) => {
114
107
  locale: req.query.locale,
115
108
  raw: true,
116
109
  launcher: true,
110
+ template: 'kyc-code-verify',
117
111
  }
118
112
  );
119
113
  logger.info('send verify code', { teamDid, result });
@@ -1,3 +1,3 @@
1
- import{_ as dt}from"./vendor-mui-core-CQ38ohp2.js";import{a as f}from"./vendor-utils-BNHJB5U7.js";import{e as Q,g as R}from"./vendor-react-DEoibe3W.js";import{P as ft}from"./vendor-ux-did-connect-BdkhddhO.js";import{b as ct}from"./vendor-mui-x-B0hsmEJ3.js";var tt={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){var l="week",c="year";return function(g,t,e){var s=t.prototype;s.week=function(i){if(i===void 0&&(i=null),i!==null)return this.add(7*(i-this.week()),"day");var o=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var n=e(this).startOf(c).add(1,c).date(o),d=e(this).endOf(l);if(n.isBefore(d))return 1}var m=e(this).startOf(c).date(o).startOf(l).subtract(1,"millisecond"),U=this.diff(m,l,!0);return U<0?e(this).startOf("week").week():Math.ceil(U)},s.weeks=function(i){return i===void 0&&(i=null),this.week(i)}}})})(tt);var lt=tt.exports;const mt=R(lt);var et={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){var l={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},c=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,g=/\d/,t=/\d\d/,e=/\d\d?/,s=/\d*[^-_:/,()\s\d]+/,i={},o=function(r){return(r=+r)+(r>68?1900:2e3)},n=function(r){return function(a){this[r]=+a}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(r){(this.zone||(this.zone={})).offset=function(a){if(!a||a==="Z")return 0;var h=a.match(/([+-]|\d\d)/g),u=60*h[1]+(+h[2]||0);return u===0?0:h[0]==="+"?-u:u}(r)}],m=function(r){var a=i[r];return a&&(a.indexOf?a:a.s.concat(a.f))},U=function(r,a){var h,u=i.meridiem;if(u){for(var D=1;D<=24;D+=1)if(r.indexOf(u(D,0,a))>-1){h=D>12;break}}else h=r===(a?"pm":"PM");return h},rt={A:[s,function(r){this.afternoon=U(r,!1)}],a:[s,function(r){this.afternoon=U(r,!0)}],Q:[g,function(r){this.month=3*(r-1)+1}],S:[g,function(r){this.milliseconds=100*+r}],SS:[t,function(r){this.milliseconds=10*+r}],SSS:[/\d{3}/,function(r){this.milliseconds=+r}],s:[e,n("seconds")],ss:[e,n("seconds")],m:[e,n("minutes")],mm:[e,n("minutes")],H:[e,n("hours")],h:[e,n("hours")],HH:[e,n("hours")],hh:[e,n("hours")],D:[e,n("day")],DD:[t,n("day")],Do:[s,function(r){var a=i.ordinal,h=r.match(/\d+/);if(this.day=h[0],a)for(var u=1;u<=31;u+=1)a(u).replace(/\[|\]/g,"")===r&&(this.day=u)}],w:[e,n("week")],ww:[t,n("week")],M:[e,n("month")],MM:[t,n("month")],MMM:[s,function(r){var a=m("months"),h=(m("monthsShort")||a.map(function(u){return u.slice(0,3)})).indexOf(r)+1;if(h<1)throw new Error;this.month=h%12||h}],MMMM:[s,function(r){var a=m("months").indexOf(r)+1;if(a<1)throw new Error;this.month=a%12||a}],Y:[/[+-]?\d+/,n("year")],YY:[t,function(r){this.year=o(r)}],YYYY:[/\d{4}/,n("year")],Z:d,ZZ:d};function nt(r){var a,h;a=r,h=i&&i.formats;for(var u=(r=a.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(b,k,p){var M=p&&p.toUpperCase();return k||h[p]||l[p]||h[M].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(x,j,z){return j||z.slice(1)})})).match(c),D=u.length,w=0;w<D;w+=1){var P=u[w],S=rt[P],Y=S&&S[0],O=S&&S[1];u[w]=O?{regex:Y,parser:O}:P.replace(/^\[|\]$/g,"")}return function(b){for(var k={},p=0,M=0;p<D;p+=1){var x=u[p];if(typeof x=="string")M+=x.length;else{var j=x.regex,z=x.parser,H=b.slice(M),A=j.exec(H)[0];z.call(k,A),b=b.replace(A,"")}}return function(C){var I=C.afternoon;if(I!==void 0){var y=C.hours;I?y<12&&(C.hours+=12):y===12&&(C.hours=0),delete C.afternoon}}(k),k}}return function(r,a,h){h.p.customParseFormat=!0,r&&r.parseTwoDigitYear&&(o=r.parseTwoDigitYear);var u=a.prototype,D=u.parse;u.parse=function(w){var P=w.date,S=w.utc,Y=w.args;this.$u=S;var O=Y[1];if(typeof O=="string"){var b=Y[2]===!0,k=Y[3]===!0,p=b||k,M=Y[2];k&&(M=Y[2]),i=this.$locale(),!b&&M&&(i=h.Ls[M]),this.$d=function(H,A,C,I){try{if(["x","X"].indexOf(A)>-1)return new Date((A==="X"?1e3:1)*H);var y=nt(A)(H),W=y.year,B=y.month,it=y.day,at=y.hours,ot=y.minutes,ht=y.seconds,ut=y.milliseconds,X=y.zone,q=y.week,$=new Date,N=it||(W||B?1:$.getDate()),Z=W||$.getFullYear(),F=0;W&&!B||(F=B>0?B-1:$.getMonth());var E,v=at||0,V=ot||0,J=ht||0,_=ut||0;return X?new Date(Date.UTC(Z,F,N,v,V,J,_+60*X.offset*1e3)):C?new Date(Date.UTC(Z,F,N,v,V,J,_)):(E=new Date(Z,F,N,v,V,J,_),q&&(E=I(E).week(q).toDate()),E)}catch{return new Date("")}}(P,O,S,h),this.init(),M&&M!==!0&&(this.$L=this.locale(M).$L),p&&P!=this.format(O)&&(this.$d=new Date("")),i={}}else if(O instanceof Array)for(var x=O.length,j=1;j<=x;j+=1){Y[1]=O[j-1];var z=h.apply(this,Y);if(z.isValid()){this.$d=z.$d,this.$L=z.$L,this.init();break}j===x&&(this.$d=new Date(""))}else D.call(this,w)}}})})(et);var yt=et.exports;const Mt=R(yt);var st={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){return function(l,c,g){c.prototype.isBetween=function(t,e,s,i){var o=g(t),n=g(e),d=(i=i||"()")[0]==="(",m=i[1]===")";return(d?this.isAfter(o,s):!this.isBefore(o,s))&&(m?this.isBefore(n,s):!this.isAfter(n,s))||(d?this.isBefore(o,s):!this.isAfter(o,s))&&(m?this.isAfter(n,s):!this.isBefore(n,s))}}})})(st);var pt=st.exports;const Tt=R(pt);f.extend(Mt);f.extend(ft);f.extend(Tt);const gt=ct(["Your locale has not been found.","Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale","Or you forget to import the locale from 'dayjs/locale/{localeUsed}'","fallback on English locale"]),Dt={YY:"year",YYYY:{sectionType:"year",contentType:"digit",maxLength:4},M:{sectionType:"month",contentType:"digit",maxLength:2},MM:"month",MMM:{sectionType:"month",contentType:"letter"},MMMM:{sectionType:"month",contentType:"letter"},D:{sectionType:"day",contentType:"digit",maxLength:2},DD:"day",Do:{sectionType:"day",contentType:"digit-with-letter"},d:{sectionType:"weekDay",contentType:"digit",maxLength:2},dd:{sectionType:"weekDay",contentType:"letter"},ddd:{sectionType:"weekDay",contentType:"letter"},dddd:{sectionType:"weekDay",contentType:"letter"},A:"meridiem",a:"meridiem",H:{sectionType:"hours",contentType:"digit",maxLength:2},HH:"hours",h:{sectionType:"hours",contentType:"digit",maxLength:2},hh:"hours",m:{sectionType:"minutes",contentType:"digit",maxLength:2},mm:"minutes",s:{sectionType:"seconds",contentType:"digit",maxLength:2},ss:"seconds"},wt={year:"YYYY",month:"MMMM",monthShort:"MMM",dayOfMonth:"D",weekday:"dddd",weekdayShort:"dd",hours24h:"HH",hours12h:"hh",meridiem:"A",minutes:"mm",seconds:"ss",fullDate:"ll",fullDateWithWeekday:"dddd, LL",keyboardDate:"L",shortDate:"MMM D",normalDate:"D MMMM",normalDateWithWeekday:"ddd, MMM D",monthAndYear:"MMMM YYYY",monthAndDate:"MMMM D",fullTime:"LT",fullTime12h:"hh:mm A",fullTime24h:"HH:mm",fullDateTime:"lll",fullDateTime12h:"ll hh:mm A",fullDateTime24h:"ll HH:mm",keyboardDateTime:"L LT",keyboardDateTime12h:"L hh:mm A",keyboardDateTime24h:"L HH:mm"},G=["Missing UTC plugin","To be able to use UTC or timezones, you have to enable the `utc` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc"].join(`
1
+ import{_ as dt}from"./vendor-mui-core-B6POpIBB.js";import{a as f}from"./vendor-utils-BUwfcN20.js";import{e as Q,g as R}from"./vendor-react-DEoibe3W.js";import{W as ft}from"./vendor-ux-did-connect-DVrP2LNw.js";import{b as ct}from"./vendor-mui-x-CATHW1QL.js";var tt={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){var l="week",c="year";return function(g,t,e){var s=t.prototype;s.week=function(i){if(i===void 0&&(i=null),i!==null)return this.add(7*(i-this.week()),"day");var o=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var n=e(this).startOf(c).add(1,c).date(o),d=e(this).endOf(l);if(n.isBefore(d))return 1}var m=e(this).startOf(c).date(o).startOf(l).subtract(1,"millisecond"),U=this.diff(m,l,!0);return U<0?e(this).startOf("week").week():Math.ceil(U)},s.weeks=function(i){return i===void 0&&(i=null),this.week(i)}}})})(tt);var lt=tt.exports;const mt=R(lt);var et={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){var l={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},c=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,g=/\d/,t=/\d\d/,e=/\d\d?/,s=/\d*[^-_:/,()\s\d]+/,i={},o=function(r){return(r=+r)+(r>68?1900:2e3)},n=function(r){return function(a){this[r]=+a}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(r){(this.zone||(this.zone={})).offset=function(a){if(!a||a==="Z")return 0;var h=a.match(/([+-]|\d\d)/g),u=60*h[1]+(+h[2]||0);return u===0?0:h[0]==="+"?-u:u}(r)}],m=function(r){var a=i[r];return a&&(a.indexOf?a:a.s.concat(a.f))},U=function(r,a){var h,u=i.meridiem;if(u){for(var D=1;D<=24;D+=1)if(r.indexOf(u(D,0,a))>-1){h=D>12;break}}else h=r===(a?"pm":"PM");return h},rt={A:[s,function(r){this.afternoon=U(r,!1)}],a:[s,function(r){this.afternoon=U(r,!0)}],Q:[g,function(r){this.month=3*(r-1)+1}],S:[g,function(r){this.milliseconds=100*+r}],SS:[t,function(r){this.milliseconds=10*+r}],SSS:[/\d{3}/,function(r){this.milliseconds=+r}],s:[e,n("seconds")],ss:[e,n("seconds")],m:[e,n("minutes")],mm:[e,n("minutes")],H:[e,n("hours")],h:[e,n("hours")],HH:[e,n("hours")],hh:[e,n("hours")],D:[e,n("day")],DD:[t,n("day")],Do:[s,function(r){var a=i.ordinal,h=r.match(/\d+/);if(this.day=h[0],a)for(var u=1;u<=31;u+=1)a(u).replace(/\[|\]/g,"")===r&&(this.day=u)}],w:[e,n("week")],ww:[t,n("week")],M:[e,n("month")],MM:[t,n("month")],MMM:[s,function(r){var a=m("months"),h=(m("monthsShort")||a.map(function(u){return u.slice(0,3)})).indexOf(r)+1;if(h<1)throw new Error;this.month=h%12||h}],MMMM:[s,function(r){var a=m("months").indexOf(r)+1;if(a<1)throw new Error;this.month=a%12||a}],Y:[/[+-]?\d+/,n("year")],YY:[t,function(r){this.year=o(r)}],YYYY:[/\d{4}/,n("year")],Z:d,ZZ:d};function nt(r){var a,h;a=r,h=i&&i.formats;for(var u=(r=a.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(b,k,p){var M=p&&p.toUpperCase();return k||h[p]||l[p]||h[M].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(x,j,z){return j||z.slice(1)})})).match(c),D=u.length,w=0;w<D;w+=1){var P=u[w],S=rt[P],Y=S&&S[0],O=S&&S[1];u[w]=O?{regex:Y,parser:O}:P.replace(/^\[|\]$/g,"")}return function(b){for(var k={},p=0,M=0;p<D;p+=1){var x=u[p];if(typeof x=="string")M+=x.length;else{var j=x.regex,z=x.parser,H=b.slice(M),A=j.exec(H)[0];z.call(k,A),b=b.replace(A,"")}}return function(C){var I=C.afternoon;if(I!==void 0){var y=C.hours;I?y<12&&(C.hours+=12):y===12&&(C.hours=0),delete C.afternoon}}(k),k}}return function(r,a,h){h.p.customParseFormat=!0,r&&r.parseTwoDigitYear&&(o=r.parseTwoDigitYear);var u=a.prototype,D=u.parse;u.parse=function(w){var P=w.date,S=w.utc,Y=w.args;this.$u=S;var O=Y[1];if(typeof O=="string"){var b=Y[2]===!0,k=Y[3]===!0,p=b||k,M=Y[2];k&&(M=Y[2]),i=this.$locale(),!b&&M&&(i=h.Ls[M]),this.$d=function(H,A,C,I){try{if(["x","X"].indexOf(A)>-1)return new Date((A==="X"?1e3:1)*H);var y=nt(A)(H),E=y.year,B=y.month,it=y.day,at=y.hours,ot=y.minutes,ht=y.seconds,ut=y.milliseconds,X=y.zone,q=y.week,$=new Date,N=it||(E||B?1:$.getDate()),Z=E||$.getFullYear(),F=0;E&&!B||(F=B>0?B-1:$.getMonth());var W,v=at||0,V=ot||0,J=ht||0,_=ut||0;return X?new Date(Date.UTC(Z,F,N,v,V,J,_+60*X.offset*1e3)):C?new Date(Date.UTC(Z,F,N,v,V,J,_)):(W=new Date(Z,F,N,v,V,J,_),q&&(W=I(W).week(q).toDate()),W)}catch{return new Date("")}}(P,O,S,h),this.init(),M&&M!==!0&&(this.$L=this.locale(M).$L),p&&P!=this.format(O)&&(this.$d=new Date("")),i={}}else if(O instanceof Array)for(var x=O.length,j=1;j<=x;j+=1){Y[1]=O[j-1];var z=h.apply(this,Y);if(z.isValid()){this.$d=z.$d,this.$L=z.$L,this.init();break}j===x&&(this.$d=new Date(""))}else D.call(this,w)}}})})(et);var yt=et.exports;const Mt=R(yt);var st={exports:{}};(function(T,L){(function(l,c){T.exports=c()})(Q,function(){return function(l,c,g){c.prototype.isBetween=function(t,e,s,i){var o=g(t),n=g(e),d=(i=i||"()")[0]==="(",m=i[1]===")";return(d?this.isAfter(o,s):!this.isBefore(o,s))&&(m?this.isBefore(n,s):!this.isAfter(n,s))||(d?this.isBefore(o,s):!this.isAfter(o,s))&&(m?this.isAfter(n,s):!this.isBefore(n,s))}}})})(st);var pt=st.exports;const Tt=R(pt);f.extend(Mt);f.extend(ft);f.extend(Tt);const gt=ct(["Your locale has not been found.","Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale","Or you forget to import the locale from 'dayjs/locale/{localeUsed}'","fallback on English locale"]),Dt={YY:"year",YYYY:{sectionType:"year",contentType:"digit",maxLength:4},M:{sectionType:"month",contentType:"digit",maxLength:2},MM:"month",MMM:{sectionType:"month",contentType:"letter"},MMMM:{sectionType:"month",contentType:"letter"},D:{sectionType:"day",contentType:"digit",maxLength:2},DD:"day",Do:{sectionType:"day",contentType:"digit-with-letter"},d:{sectionType:"weekDay",contentType:"digit",maxLength:2},dd:{sectionType:"weekDay",contentType:"letter"},ddd:{sectionType:"weekDay",contentType:"letter"},dddd:{sectionType:"weekDay",contentType:"letter"},A:"meridiem",a:"meridiem",H:{sectionType:"hours",contentType:"digit",maxLength:2},HH:"hours",h:{sectionType:"hours",contentType:"digit",maxLength:2},hh:"hours",m:{sectionType:"minutes",contentType:"digit",maxLength:2},mm:"minutes",s:{sectionType:"seconds",contentType:"digit",maxLength:2},ss:"seconds"},wt={year:"YYYY",month:"MMMM",monthShort:"MMM",dayOfMonth:"D",weekday:"dddd",weekdayShort:"dd",hours24h:"HH",hours12h:"hh",meridiem:"A",minutes:"mm",seconds:"ss",fullDate:"ll",fullDateWithWeekday:"dddd, LL",keyboardDate:"L",shortDate:"MMM D",normalDate:"D MMMM",normalDateWithWeekday:"ddd, MMM D",monthAndYear:"MMMM YYYY",monthAndDate:"MMMM D",fullTime:"LT",fullTime12h:"hh:mm A",fullTime24h:"HH:mm",fullDateTime:"lll",fullDateTime12h:"ll hh:mm A",fullDateTime24h:"ll HH:mm",keyboardDateTime:"L LT",keyboardDateTime12h:"L hh:mm A",keyboardDateTime24h:"L HH:mm"},G=["Missing UTC plugin","To be able to use UTC or timezones, you have to enable the `utc` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc"].join(`
2
2
  `),K=["Missing timezone plugin","To be able to use timezones, you have to enable both the `utc` and the `timezone` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-timezone"].join(`
3
3
  `),Yt=(T,L)=>L?(...l)=>T(...l).locale(L):T;class bt{constructor({locale:L,formats:l,instance:c}={}){var g;this.isMUIAdapter=!0,this.isTimezoneCompatible=!0,this.lib="dayjs",this.rawDayJsInstance=void 0,this.dayjs=void 0,this.locale=void 0,this.formats=void 0,this.escapedCharacters={start:"[",end:"]"},this.formatTokenMap=Dt,this.setLocaleToValue=t=>{const e=this.getCurrentLocaleCode();return e===t.locale()?t:t.locale(e)},this.hasUTCPlugin=()=>typeof f.utc<"u",this.hasTimezonePlugin=()=>typeof f.tz<"u",this.isSame=(t,e,s)=>{const i=this.setTimezone(e,this.getTimezone(t));return t.format(s)===i.format(s)},this.cleanTimezone=t=>{switch(t){case"default":return;case"system":return f.tz.guess();default:return t}},this.createSystemDate=t=>{if(this.rawDayJsInstance)return this.rawDayJsInstance(t);if(this.hasUTCPlugin()&&this.hasTimezonePlugin()){const e=f.tz.guess();return e!=="UTC"?f.tz(t,e):f(t)}return f(t)},this.createUTCDate=t=>{if(!this.hasUTCPlugin())throw new Error(G);return f.utc(t)},this.createTZDate=(t,e)=>{if(!this.hasUTCPlugin())throw new Error(G);if(!this.hasTimezonePlugin())throw new Error(K);const s=t!==void 0&&!t.endsWith("Z");return f(t).tz(this.cleanTimezone(e),s)},this.getLocaleFormats=()=>{const t=f.Ls,e=this.locale||"en";let s=t[e];return s===void 0&&(gt(),s=t.en),s.formats},this.adjustOffset=t=>{if(!this.hasTimezonePlugin())return t;const e=this.getTimezone(t);if(e!=="UTC"){var s,i;const o=t.tz(this.cleanTimezone(e),!0);if(((s=o.$offset)!=null?s:0)===((i=t.$offset)!=null?i:0))return t;t.$offset=o.$offset}return t},this.date=t=>t===null?null:this.dayjs(t),this.dateWithTimezone=(t,e)=>{if(t===null)return null;let s;return e==="UTC"?s=this.createUTCDate(t):e==="system"||e==="default"&&!this.hasTimezonePlugin()?s=this.createSystemDate(t):s=this.createTZDate(t,e),this.locale===void 0?s:s.locale(this.locale)},this.getTimezone=t=>{if(this.hasTimezonePlugin()){var e;const s=(e=t.$x)==null?void 0:e.$timezone;if(s)return s}return this.hasUTCPlugin()&&t.isUTC()?"UTC":"system"},this.setTimezone=(t,e)=>{if(this.getTimezone(t)===e)return t;if(e==="UTC"){if(!this.hasUTCPlugin())throw new Error(G);return t.utc()}if(e==="system")return t.local();if(!this.hasTimezonePlugin()){if(e==="default")return t;throw new Error(K)}return f.tz(t,this.cleanTimezone(e))},this.toJsDate=t=>t.toDate(),this.parseISO=t=>this.dayjs(t),this.toISO=t=>t.toISOString(),this.parse=(t,e)=>t===""?null:this.dayjs(t,e,this.locale,!0),this.getCurrentLocaleCode=()=>this.locale||"en",this.is12HourCycleInCurrentLocale=()=>/A|a/.test(this.getLocaleFormats().LT||""),this.expandFormat=t=>{const e=this.getLocaleFormats(),s=i=>i.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(o,n,d)=>n||d.slice(1));return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(i,o,n)=>{const d=n&&n.toUpperCase();return o||e[n]||s(e[d])})},this.getFormatHelperText=t=>this.expandFormat(t).replace(/a/gi,"(a|p)m").toLocaleLowerCase(),this.isNull=t=>t===null,this.isValid=t=>this.dayjs(t).isValid(),this.format=(t,e)=>this.formatByString(t,this.formats[e]),this.formatByString=(t,e)=>this.dayjs(t).format(e),this.formatNumber=t=>t,this.getDiff=(t,e,s)=>t.diff(e,s),this.isEqual=(t,e)=>t===null&&e===null?!0:this.dayjs(t).toDate().getTime()===this.dayjs(e).toDate().getTime(),this.isSameYear=(t,e)=>this.isSame(t,e,"YYYY"),this.isSameMonth=(t,e)=>this.isSame(t,e,"YYYY-MM"),this.isSameDay=(t,e)=>this.isSame(t,e,"YYYY-MM-DD"),this.isSameHour=(t,e)=>t.isSame(e,"hour"),this.isAfter=(t,e)=>t>e,this.isAfterYear=(t,e)=>this.hasUTCPlugin()?!this.isSameYear(t,e)&&t.utc()>e.utc():t.isAfter(e,"year"),this.isAfterDay=(t,e)=>this.hasUTCPlugin()?!this.isSameDay(t,e)&&t.utc()>e.utc():t.isAfter(e,"day"),this.isBefore=(t,e)=>t<e,this.isBeforeYear=(t,e)=>this.hasUTCPlugin()?!this.isSameYear(t,e)&&t.utc()<e.utc():t.isBefore(e,"year"),this.isBeforeDay=(t,e)=>this.hasUTCPlugin()?!this.isSameDay(t,e)&&t.utc()<e.utc():t.isBefore(e,"day"),this.isWithinRange=(t,[e,s])=>t>=e&&t<=s,this.startOfYear=t=>this.adjustOffset(t.startOf("year")),this.startOfMonth=t=>this.adjustOffset(t.startOf("month")),this.startOfWeek=t=>this.adjustOffset(t.startOf("week")),this.startOfDay=t=>this.adjustOffset(t.startOf("day")),this.endOfYear=t=>this.adjustOffset(t.endOf("year")),this.endOfMonth=t=>this.adjustOffset(t.endOf("month")),this.endOfWeek=t=>this.adjustOffset(t.endOf("week")),this.endOfDay=t=>this.adjustOffset(t.endOf("day")),this.addYears=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"year"):t.add(e,"year")),this.addMonths=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"month"):t.add(e,"month")),this.addWeeks=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"week"):t.add(e,"week")),this.addDays=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"day"):t.add(e,"day")),this.addHours=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"hour"):t.add(e,"hour")),this.addMinutes=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"minute"):t.add(e,"minute")),this.addSeconds=(t,e)=>this.adjustOffset(e<0?t.subtract(Math.abs(e),"second"):t.add(e,"second")),this.getYear=t=>t.year(),this.getMonth=t=>t.month(),this.getDate=t=>t.date(),this.getHours=t=>t.hour(),this.getMinutes=t=>t.minute(),this.getSeconds=t=>t.second(),this.getMilliseconds=t=>t.millisecond(),this.setYear=(t,e)=>this.adjustOffset(t.set("year",e)),this.setMonth=(t,e)=>this.adjustOffset(t.set("month",e)),this.setDate=(t,e)=>this.adjustOffset(t.set("date",e)),this.setHours=(t,e)=>this.adjustOffset(t.set("hour",e)),this.setMinutes=(t,e)=>this.adjustOffset(t.set("minute",e)),this.setSeconds=(t,e)=>this.adjustOffset(t.set("second",e)),this.setMilliseconds=(t,e)=>this.adjustOffset(t.set("millisecond",e)),this.getDaysInMonth=t=>t.daysInMonth(),this.getNextMonth=t=>this.addMonths(t,1),this.getPreviousMonth=t=>this.addMonths(t,-1),this.getMonthArray=t=>{const s=[t.startOf("year")];for(;s.length<12;){const i=s[s.length-1];s.push(this.addMonths(i,1))}return s},this.mergeDateAndTime=(t,e)=>t.hour(e.hour()).minute(e.minute()).second(e.second()),this.getWeekdays=()=>{const t=this.dayjs().startOf("week");return[0,1,2,3,4,5,6].map(e=>this.formatByString(this.addDays(t,e),"dd"))},this.getWeekArray=t=>{const e=this.setLocaleToValue(t),s=e.startOf("month").startOf("week"),i=e.endOf("month").endOf("week");let o=0,n=s;const d=[];for(;n<i;){const m=Math.floor(o/7);d[m]=d[m]||[],d[m].push(n),n=this.addDays(n,1),o+=1}return d},this.getWeekNumber=t=>t.week(),this.getYearRange=(t,e)=>{const s=t.startOf("year"),i=e.endOf("year"),o=[];let n=s;for(;n<i;)o.push(n),n=this.addYears(n,1);return o},this.getMeridiemText=t=>t==="am"?"AM":"PM",this.rawDayJsInstance=c,this.dayjs=Yt((g=this.rawDayJsInstance)!=null?g:f,L),this.locale=L,this.formats=dt({},wt,l),f.extend(mt)}}export{bt as A};
@@ -1 +1 @@
1
- import{a8 as e,j as t}from"./vendor-mui-core-CQ38ohp2.js";import{r as a}from"./vendor-ux-did-connect-BdkhddhO.js";var r={},o=e;Object.defineProperty(r,"__esModule",{value:!0});var u=r.default=void 0,i=o(a()),p=t;u=r.default=(0,i.default)((0,p.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown");export{u as d};
1
+ import{a9 as e,j as t}from"./vendor-mui-core-B6POpIBB.js";import{r as a}from"./vendor-ux-did-connect-DVrP2LNw.js";var r={},o=e;Object.defineProperty(r,"__esModule",{value:!0});var u=r.default=void 0,i=o(a()),p=t;u=r.default=(0,i.default)((0,p.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown");export{u as d};
@@ -1 +1 @@
1
- import{a8 as r,j as t}from"./vendor-mui-core-CQ38ohp2.js";import{r as a}from"./vendor-ux-did-connect-BdkhddhO.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(a()),l=t;u=e.default=(0,i.default)((0,l.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle");export{u as d};
1
+ import{a9 as r,j as t}from"./vendor-mui-core-B6POpIBB.js";import{r as a}from"./vendor-ux-did-connect-DVrP2LNw.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(a()),l=t;u=e.default=(0,i.default)((0,l.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle");export{u as d};
@@ -1 +1 @@
1
- import{a8 as r,j as t}from"./vendor-mui-core-CQ38ohp2.js";import{r as a}from"./vendor-ux-did-connect-BdkhddhO.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,f=o(a()),i=t;u=e.default=(0,f.default)((0,i.jsx)("path",{d:"M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z"}),"ChevronLeft");export{u as d};
1
+ import{a9 as r,j as t}from"./vendor-mui-core-B6POpIBB.js";import{r as a}from"./vendor-ux-did-connect-DVrP2LNw.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,f=o(a()),i=t;u=e.default=(0,f.default)((0,i.jsx)("path",{d:"M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z"}),"ChevronLeft");export{u as d};
@@ -1 +1 @@
1
- import{a8 as r,j as t}from"./vendor-mui-core-CQ38ohp2.js";import{r as a}from"./vendor-ux-did-connect-BdkhddhO.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(a()),v=t;u=e.default=(0,i.default)((0,v.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight");export{u as d};
1
+ import{a9 as r,j as t}from"./vendor-mui-core-B6POpIBB.js";import{r as a}from"./vendor-ux-did-connect-DVrP2LNw.js";var e={},o=r;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(a()),v=t;u=e.default=(0,i.default)((0,v.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight");export{u as d};