@abtnode/blocklet-services 1.16.44-beta-20250528-003415-7a5e5d90 → 1.16.44-beta-20250529-223630-10e16ac8

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 (185) hide show
  1. package/api/middlewares/proxy-to-daemon.js +2 -1
  2. package/api/routes/env.js +5 -0
  3. package/dist/assets/{AdapterDayjs-gCvKcGfu.js → AdapterDayjs-CDDcwz3P.js} +1 -1
  4. package/dist/assets/{ArrowDropDown-D32FY-Mt.js → ArrowDropDown-DPqiF9Rw.js} +1 -1
  5. package/dist/assets/{CheckCircle-BBSSDlcc.js → CheckCircle-Caqp5gKY.js} +1 -1
  6. package/dist/assets/{ChevronLeft-CF24ouxR.js → ChevronLeft-DONyUbIg.js} +1 -1
  7. package/dist/assets/{ChevronRight-DA9t_C-l.js → ChevronRight-DgAwWLdY.js} +1 -1
  8. package/dist/assets/{DeleteOutline-CzIOFoFP.js → DeleteOutline-DpNyWtNL.js} +1 -1
  9. package/dist/assets/{Done-MQdb8YLa.js → Done-BTd13H2U.js} +1 -1
  10. package/dist/assets/{Download-IxxF4Ujs.js → Download-Bm8sKXA2.js} +1 -1
  11. package/dist/assets/{Edit-DSht16TX.js → Edit-CUl1Rt8i.js} +1 -1
  12. package/dist/assets/{Error-CkoCqY66.js → Error-DEKvwVoF.js} +1 -1
  13. package/dist/assets/{ExpandLess-CudE_1oQ.js → ExpandLess-t1cH-Bc4.js} +1 -1
  14. package/dist/assets/{Google-AZBuQJFI.js → Google-Bn3zPWiu.js} +1 -1
  15. package/dist/assets/{Home-BaA3V3I7.js → Home-C3ax1tQ7.js} +1 -1
  16. package/dist/assets/{InfoOutlined-Cd28U1Oc.js → InfoOutlined-D3XnF0Vg.js} +1 -1
  17. package/dist/assets/{Launch-Ddo_WSQI.js → Launch-Dz9mQnYC.js} +1 -1
  18. package/dist/assets/{LaunchOutlined-CO4dugwH.js → LaunchOutlined-E7HcQu_6.js} +1 -1
  19. package/dist/assets/{MoreHoriz-D-L8sA4c.js → MoreHoriz-DpKn_fkc.js} +1 -1
  20. package/dist/assets/{PlayArrow-CLKgdv6H.js → PlayArrow-CDOOUxMp.js} +1 -1
  21. package/dist/assets/{TuneOutlined-BWqIZK2m.js → TuneOutlined-D0gGDoIJ.js} +1 -1
  22. package/dist/assets/{ViewList-DWudZTBg.js → ViewList-C8G9e3ft.js} +1 -1
  23. package/dist/assets/{access-control-DlT-JQML.js → access-control-BhxOcGdx.js} +1 -1
  24. package/dist/assets/{actions-azdiYocL.js → actions-DP7pj6xB.js} +1 -1
  25. package/dist/assets/{add-component-core-Cm8Y0zkt.js → add-component-core-XUReAzat.js} +1 -1
  26. package/dist/assets/{add-resource-CVCoahx_.js → add-resource-C3kDcfBw.js} +1 -1
  27. package/dist/assets/{addon-3ZMGwARO.js → addon-CRj4Enw7.js} +1 -1
  28. package/dist/assets/{advanced-Nvg1CqJg.js → advanced-hz-KSWn2.js} +3 -3
  29. package/dist/assets/appearance-ChvtVBNv.js +1 -0
  30. package/dist/assets/{ar-T0OvMFDJ.js → ar-CSZJf27k.js} +1 -1
  31. package/dist/assets/{audit-logs-BPjUleS-.js → audit-logs-DXoc97BV.js} +1 -1
  32. package/dist/assets/authorize-_fbQ19S4.js +1 -0
  33. package/dist/assets/{base32-CLrnUJal.js → base32-WurN0cIW.js} +1 -1
  34. package/dist/assets/{branding-B8r8EJ2R.js → branding-DpkSF6dd.js} +2 -2
  35. package/dist/assets/{branding-Cr4GBUXi.js → branding-DuPWVNlC.js} +1 -1
  36. package/dist/assets/{bundle-avatar-Br48PGS5.js → bundle-avatar-D4fwror8.js} +1 -1
  37. package/dist/assets/{button-8G90WP8a.js → button-_1HExv7r.js} +1 -1
  38. package/dist/assets/{click-to-copy-ByEMWZD_.js → click-to-copy-R7MF4AwY.js} +1 -1
  39. package/dist/assets/{collapse-Cliwxlbv.js → collapse-l9wHY9gJ.js} +1 -1
  40. package/dist/assets/{complete-CzlLydJT.js → complete-C5D4D-fJ.js} +1 -1
  41. package/dist/assets/{component-5_wmVxpp.js → component-CURpjZJ2.js} +1 -1
  42. package/dist/assets/{config-BnObxTpi.js → config-Cd14MJHa.js} +1 -1
  43. package/dist/assets/{config-emhMgKqq.js → config-e36Xplpo.js} +1 -1
  44. package/dist/assets/config-navigation-BvjYZI_j.js +26 -0
  45. package/dist/assets/{config-space-TsP5osn9.js → config-space-EoSm62Er.js} +1 -1
  46. package/dist/assets/{confirm-DI8TUyRK.js → confirm-Vzr2I9eM.js} +1 -1
  47. package/dist/assets/{connect-D55qWQWC.js → connect-B5Xr7MId.js} +1 -1
  48. package/dist/assets/{connect-B_BnGQjp.js → connect-DXOsnqkO.js} +1 -1
  49. package/dist/assets/{connect-to-DzPwhREN.js → connect-to-Bz9wYM04.js} +1 -1
  50. package/dist/assets/{dashboard-AdC8-kkA.js → dashboard-xUr1SbPS.js} +3 -3
  51. package/dist/assets/{de-WYW4JJdA.js → de-C-F2uwju.js} +1 -1
  52. package/dist/assets/de-CA1MfHz7.js +1 -0
  53. package/dist/assets/{delete-confirm-Bn1HZjaL.js → delete-confirm-DNn4Os6R.js} +1 -1
  54. package/dist/assets/{did-address-BlAXR08O.js → did-address-Dq-4__HB.js} +1 -1
  55. package/dist/assets/{domain-Cod_zL8_.js → domain-XXgOrJDa.js} +1 -1
  56. package/dist/assets/{domain-action-card-C4FpSn67.js → domain-action-card-Cf1AoKOi.js} +1 -1
  57. package/dist/assets/domains-DeFj6Ipl.js +1 -0
  58. package/dist/assets/{email-CqVIYJc4.js → email-BIVfXnpk.js} +1 -1
  59. package/dist/assets/{es-DaHPJdAX.js → es-B2TJqtV4.js} +1 -1
  60. package/dist/assets/{es-B6GuFK3b.js → es-CXgvF2gS.js} +1 -1
  61. package/dist/assets/{exchange-passport-C-hTCqg0.js → exchange-passport-C9Pvr9Da.js} +1 -1
  62. package/dist/assets/fr-CzO5Th4h.js +1 -0
  63. package/dist/assets/{fr-Sdn9hi8k.js → fr-DN38boH3.js} +1 -1
  64. package/dist/assets/{fuel-M5L6Wmxz.js → fuel-Cs--pEYt.js} +1 -1
  65. package/dist/assets/{gen-access-key-D6jr4e_G.js → gen-access-key-CIzULsBE.js} +1 -1
  66. package/dist/assets/{get-safe-url-CRv5HbAK.js → get-safe-url-Q70tRxL7.js} +1 -1
  67. package/dist/assets/{get-safe-url-DrR-6D-i.js → get-safe-url-c4iAcpvA.js} +1 -1
  68. package/dist/assets/{hi-dJuR0lt2.js → hi-5tixPGqk.js} +1 -1
  69. package/dist/assets/hi-lZ18vyMl.js +1 -0
  70. package/dist/assets/{home-C7e6Ftxj.js → home-BZ8WpcWZ.js} +1 -1
  71. package/dist/assets/{id-DuYS34H0.js → id-CIDM1ypY.js} +1 -1
  72. package/dist/assets/id-QM66qYoI.js +1 -0
  73. package/dist/assets/{iframe-DSG-Hd99.js → iframe-Dl8NEFc5.js} +1 -1
  74. package/dist/assets/{index-AetYfL_f.js → index-B7IOoVDF.js} +1 -1
  75. package/dist/assets/{index-yvg4DpNi.js → index-BCJADuMw.js} +5 -5
  76. package/dist/assets/{index-BJHSgjnI.js → index-BKKwhjBs.js} +1 -1
  77. package/dist/assets/{index-iQsPOXlb.js → index-BU2FTGFr.js} +1 -1
  78. package/dist/assets/{index-DSoHmrHd.js → index-BUHyq-oP.js} +1 -1
  79. package/dist/assets/{index-BM1ZGOPs.js → index-BoTgqYtV.js} +2 -2
  80. package/dist/assets/{index-C4vmLohg.js → index-C64IgZKt.js} +1 -1
  81. package/dist/assets/{index-bIHubQ8z.js → index-CsXmgylH.js} +3 -3
  82. package/dist/assets/index-D-Lxloq5.js +284 -0
  83. package/dist/assets/{index-Bj2-CpPI.js → index-D1kTR2xk.js} +1 -1
  84. package/dist/assets/{index-CEeLwMYO.js → index-DBqLPDUh.js} +1 -1
  85. package/dist/assets/index-DDXNOodN.js +99 -0
  86. package/dist/assets/{index-YbYWmpAT.js → index-DDoVX3je.js} +22 -22
  87. package/dist/assets/{index-B5_fBwtl.js → index-Drd9jydY.js} +1 -1
  88. package/dist/assets/{index-BUrgmCmL.js → index-Dsd9SXVN.js} +1 -1
  89. package/dist/assets/index-DvBh35bh.js +1 -0
  90. package/dist/assets/{index-BFWnCQrF.js → index-I6_gMaPh.js} +1 -1
  91. package/dist/assets/{index-C2F-GVrD.js → index-U3mAyHwS.js} +1 -1
  92. package/dist/assets/{index-BLbU4gf9.js → index-W_fQ-nuf.js} +2 -2
  93. package/dist/assets/{index-rn2nf2kX.js → index-wLX5GW2c.js} +1 -1
  94. package/dist/assets/{invitation-StUiuLYU.js → invitation-Dsnc8lab.js} +1 -1
  95. package/dist/assets/{invite-E96eT2DF.js → invite-CvAru4rZ.js} +1 -1
  96. package/dist/assets/{issue-passport-DrGPTNsG.js → issue-passport-CDE6vHUE.js} +1 -1
  97. package/dist/assets/{item-Dgu9vLko.js → item-rXnALS3b.js} +1 -1
  98. package/dist/assets/{ja-ACgKScTi.js → ja-C8AmHPMo.js} +1 -1
  99. package/dist/assets/{ja-Dh60q0r5.js → ja-pJLB4V2E.js} +1 -1
  100. package/dist/assets/{ko-CoqvBZUf.js → ko-D2NP5Ixe.js} +1 -1
  101. package/dist/assets/ko-xDWtmcv7.js +1 -0
  102. package/dist/assets/{landing-page-BOy_W1aP.js → landing-page-DrVLCVAm.js} +1 -1
  103. package/dist/assets/{layout-CYJJYqb_.js → layout-DYG0Wl7R.js} +1 -1
  104. package/dist/assets/{list-uPz9xAWJ.js → list-DLMy1vVs.js} +1 -1
  105. package/dist/assets/list-b96sX5Y6.js +2 -0
  106. package/dist/assets/localization-Bb0kc8SQ.js +1 -0
  107. package/dist/assets/{log-CzRRb9lq.js → log-Bwqh69bM.js} +1 -1
  108. package/dist/assets/{logger-B4ZKcD6x.js → logger-BAVOmOw2.js} +1 -1
  109. package/dist/assets/{login-D3GnBJn4.js → login-Ygmj8_J7.js} +1 -1
  110. package/dist/assets/{login-oauth-callback-CVS9TwNM.js → login-oauth-callback-BrnNJIOK.js} +1 -1
  111. package/dist/assets/{logo-uploader-CbM-N8qP.js → logo-uploader-CLwbDhA_.js} +3 -3
  112. package/dist/assets/{lost-passport-5P2EFbv0.js → lost-passport-CqzPSoLw.js} +1 -1
  113. package/dist/assets/{open-window-c9TGr49M.js → open-window-Bl24RBAD.js} +1 -1
  114. package/dist/assets/{overview-BZRXhA-K.js → overview-DqabCKYi.js} +1 -1
  115. package/dist/assets/{page-header-D_m0ANZl.js → page-header-BWqvvXOk.js} +1 -1
  116. package/dist/assets/{passport-item-DE-9Q-Cx.js → passport-item-C5-ZuTPM.js} +1 -1
  117. package/dist/assets/{permission-fpFyADH8.js → permission-DSHe73ba.js} +1 -1
  118. package/dist/assets/{preferences-0RYr2e_y.js → preferences-BzGNV3pM.js} +1 -1
  119. package/dist/assets/{profile-embed-BwbGy3El.js → profile-embed-iA-d50c3.js} +1 -1
  120. package/dist/assets/{pt-DCcbs0d0.js → pt-D1apbJwE.js} +1 -1
  121. package/dist/assets/pt-DSj10b9i.js +1 -0
  122. package/dist/assets/{publish-resource-CWz86TY0.js → publish-resource-ebKgw7OW.js} +1 -1
  123. package/dist/assets/{react-beautiful-dnd.esm-G9cRB9Uf.js → react-beautiful-dnd.esm-Ck4xzwyU.js} +1 -1
  124. package/dist/assets/ru-BNuzbw_f.js +1 -0
  125. package/dist/assets/{ru-WYTV5VzH.js → ru-D2AG9Iea.js} +1 -1
  126. package/dist/assets/{runtime-63aIXcah.js → runtime-B454s6Gb.js} +1 -1
  127. package/dist/assets/sdk-DeS3iq37.js +1 -0
  128. package/dist/assets/{section-BB6hVmdO.js → section-Ccxg0x_Y.js} +1 -1
  129. package/dist/assets/{security-YPRPQuQL.js → security-DCArL_za.js} +1 -1
  130. package/dist/assets/{session-Djj2U6sa.js → session-C_8V_o-O.js} +1 -1
  131. package/dist/assets/{setup-C9DGbmM7.js → setup-CX2pUl2y.js} +3 -3
  132. package/dist/assets/{spaces-fGcGlx-U.js → spaces-DApg1wzn.js} +1 -1
  133. package/dist/assets/{start-Cz_j6UYt.js → start-Dhbx5j_D.js} +1 -1
  134. package/dist/assets/{starting-progress-DHv9oucO.js → starting-progress-BHUTOY2b.js} +1 -1
  135. package/dist/assets/{status-B5ff49WY.js → status-D4K-kiXO.js} +1 -1
  136. package/dist/assets/{step-actions-CPiUgWLW.js → step-actions-CISMVGx2.js} +1 -1
  137. package/dist/assets/{studio-DnKLD9XD.js → studio-1mTu0Fgs.js} +1 -1
  138. package/dist/assets/{switch-control-DWjnOuBy.js → switch-control-CpCSorUo.js} +1 -1
  139. package/dist/assets/{table-tips-DEGQUNJa.js → table-tips-BfSSGl9N.js} +1 -1
  140. package/dist/assets/{th-Da4lMKTX.js → th-CRGgyPc5.js} +1 -1
  141. package/dist/assets/th-CsJSfFsn.js +1 -0
  142. package/dist/assets/{traffic-C262RTgV.js → traffic-BqHyn9L9.js} +1 -1
  143. package/dist/assets/{transfer-CXfjw5Xg.js → transfer-Bqv1gMqL.js} +1 -1
  144. package/dist/assets/{unsubscribe-CdFXzPwR.js → unsubscribe-B3OLQIVA.js} +1 -1
  145. package/dist/assets/{use-blocklet-logo-C_pDvfYN.js → use-blocklet-logo-Bhkp-Zm7.js} +1 -1
  146. package/dist/assets/use-server-logo-CxuMvwKh.js +1 -1
  147. package/dist/assets/{useLocalStorage-DO6t2PeQ.js → useLocalStorage-D6gvgmEW.js} +1 -1
  148. package/dist/assets/{user-center-DR1kV4iN.js → user-center-vIx28YXm.js} +3 -3
  149. package/dist/assets/{util-VM27PwRk.js → util-DMfPwzVN.js} +1 -1
  150. package/dist/assets/{util-Cs-QbPU0.js → util-Dnkhck-D.js} +1 -1
  151. package/dist/assets/{vendor-arcblock-DuPySS9V.js → vendor-arcblock-BlrkGjK9.js} +1 -1
  152. package/dist/assets/{vendor-ux-did-connect-DIlRfE_S.js → vendor-ux-did-connect-2jRoUb28.js} +3 -3
  153. package/dist/assets/vi-Ce8JEW56.js +1 -0
  154. package/dist/assets/{vi-BxzaqoH9.js → vi-IIi6v-et.js} +1 -1
  155. package/dist/assets/wrap-locale-C_UOH97U.js +1 -0
  156. package/dist/assets/{zh-Do6onry4.js → zh-DQX0RFjY.js} +1 -1
  157. package/dist/assets/zh-S-Nv5zr-.js +1 -0
  158. package/dist/assets/{zh-tw-BNgoHsYW.js → zh-tw-6n1CYpHc.js} +1 -1
  159. package/dist/assets/zh-tw-C-FYOTmO.js +1 -0
  160. package/dist/index.html +3 -3
  161. package/dist/service-worker.js +1 -1
  162. package/package.json +30 -30
  163. package/api/middlewares/check-admin-permission.js +0 -15
  164. package/dist/assets/appearance-CAsFMLaC.js +0 -1
  165. package/dist/assets/authorize-CdTK5Air.js +0 -1
  166. package/dist/assets/config-navigation-DbyhYIMw.js +0 -26
  167. package/dist/assets/de-BWtUXhCw.js +0 -1
  168. package/dist/assets/domains-BhqtMbC1.js +0 -1
  169. package/dist/assets/fr-DjhyyiEi.js +0 -1
  170. package/dist/assets/hi-CtKbt1J4.js +0 -1
  171. package/dist/assets/id-CCuL3FP-.js +0 -1
  172. package/dist/assets/index-BJbAX71g.js +0 -284
  173. package/dist/assets/index-CtLialsm.js +0 -99
  174. package/dist/assets/index-DthGrDK3.js +0 -1
  175. package/dist/assets/ko-gvJH4zFR.js +0 -1
  176. package/dist/assets/list-C8X2Voou.js +0 -2
  177. package/dist/assets/localization-CI5Q0B2F.js +0 -1
  178. package/dist/assets/pt-DzswFIpl.js +0 -1
  179. package/dist/assets/ru-EZJWVu3M.js +0 -1
  180. package/dist/assets/sdk-D4BoQHdn.js +0 -1
  181. package/dist/assets/th-Bn3Ch7SK.js +0 -1
  182. package/dist/assets/vi-CgnGroV4.js +0 -1
  183. package/dist/assets/wrap-locale-BWx2hEb7.js +0 -1
  184. package/dist/assets/zh-BWgwGxeZ.js +0 -1
  185. package/dist/assets/zh-tw-Ciod1pFs.js +0 -1
@@ -1,2 +1,2 @@
1
1
  try{self["workbox:core:7.0.0"]&&_()}catch{}const ue=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},fe=ue;let R=class extends Error{constructor(e,t){const n=fe(e,t);super(n),this.name=e,this.details=t}};const de=new Set,d={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},M=s=>[d.prefix,s,d.suffix].filter(e=>e&&e.length>0).join("-"),pe=s=>{for(const e of Object.keys(d))s(e)},ge={updateDetails:s=>{pe(e=>{typeof s[e]=="string"&&(d[e]=s[e])})},getGoogleAnalyticsName:s=>s||M(d.googleAnalytics),getPrecacheName:s=>s||M(d.precache),getPrefix:()=>d.prefix,getRuntimeName:s=>s||M(d.runtime),getSuffix:()=>d.suffix};function q(s,e){const t=new URL(s);for(const n of e)t.searchParams.delete(n);return t.href}async function me(s,e,t,n){const a=q(e.url,t);if(e.url===a)return s.match(e,n);const r=Object.assign(Object.assign({},n),{ignoreSearch:!0}),i=await s.keys(e,r);for(const c of i){const o=q(c.url,t);if(a===o)return s.match(c,n)}}let we=class{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}};async function ye(){for(const s of de)await s()}const _e=s=>new URL(String(s),location.href).href.replace(new RegExp(`^${location.origin}`),"");function Re(s){return new Promise(e=>setTimeout(e,s))}function be(){self.addEventListener("activate",()=>self.clients.claim())}try{self["workbox:core:7.0.0"]&&_()}catch{}const Ce=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},xe=Ce;let u=class extends Error{constructor(e,t){const n=xe(e,t);super(n),this.name=e,this.details=t}};const p={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},A=s=>[p.prefix,s,p.suffix].filter(e=>e&&e.length>0).join("-"),ke=s=>{for(const e of Object.keys(p))s(e)},B={updateDetails:s=>{ke(e=>{typeof s[e]=="string"&&(p[e]=s[e])})},getGoogleAnalyticsName:s=>s||A(p.googleAnalytics),getPrecacheName:s=>s||A(p.precache),getPrefix:()=>p.prefix,getRuntimeName:s=>s||A(p.runtime),getSuffix:()=>p.suffix};function V(s,e){const t=e();return s.waitUntil(t),t}try{self["workbox:precaching:7.0.0"]&&_()}catch{}const Ee="__WB_REVISION__";function De(s){if(!s)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(typeof s=="string"){const r=new URL(s,location.href);return{cacheKey:r.href,url:r.href}}const{revision:e,url:t}=s;if(!t)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(!e){const r=new URL(t,location.href);return{cacheKey:r.href,url:r.href}}const n=new URL(t,location.href),a=new URL(t,location.href);return n.searchParams.set(Ee,e),{cacheKey:n.href,url:a.href}}class Ue{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:n})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const a=t.originalRequest.url;n?this.notUpdatedURLs.push(a):this.updatedURLs.push(a)}return n}}}class Le{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:n})=>{const a=(n==null?void 0:n.cacheKey)||this._precacheController.getCacheKeyForURL(t.url);return a?new Request(a,{headers:t.headers}):t},this._precacheController=e}}let C;function Pe(){if(C===void 0){const s=new Response("");if("body"in s)try{new Response(s.body),C=!0}catch{C=!1}C=!1}return C}async function ve(s,e){let t=null;if(s.url&&(t=new URL(s.url).origin),t!==self.location.origin)throw new u("cross-origin-copy-response",{origin:t});const n=s.clone(),r={headers:new Headers(n.headers),status:n.status,statusText:n.statusText},i=Pe()?n.body:await n.blob();return new Response(i,r)}const Te=s=>new URL(String(s),location.href).href.replace(new RegExp(`^${location.origin}`),"");function G(s,e){const t=new URL(s);for(const n of e)t.searchParams.delete(n);return t.href}async function Ne(s,e,t,n){const a=G(e.url,t);if(e.url===a)return s.match(e,n);const r=Object.assign(Object.assign({},n),{ignoreSearch:!0}),i=await s.keys(e,r);for(const c of i){const o=G(c.url,t);if(a===o)return s.match(c,n)}}class Me{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const Ae=new Set;async function Oe(){for(const s of Ae)await s()}function Se(s){return new Promise(e=>setTimeout(e,s))}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function U(s){return typeof s=="string"?new Request(s):s}let Ie=class{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new Me,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let n=U(e);if(n.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const i=await t.preloadResponse;if(i)return i}const a=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const i of this.iterateCallbacks("requestWillFetch"))n=await i({request:n.clone(),event:t})}catch(i){if(i instanceof Error)throw new u("plugin-error-request-will-fetch",{thrownErrorMessage:i.message})}const r=n.clone();try{let i;i=await fetch(n,n.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))i=await c({event:t,request:r,response:i});return i}catch(i){throw a&&await this.runCallbacks("fetchDidFail",{error:i,event:t,originalRequest:a.clone(),request:r.clone()}),i}}async fetchAndCachePut(e){const t=await this.fetch(e),n=t.clone();return this.waitUntil(this.cachePut(e,n)),t}async cacheMatch(e){const t=U(e);let n;const{cacheName:a,matchOptions:r}=this._strategy,i=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},r),{cacheName:a});n=await caches.match(i,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await o({cacheName:a,matchOptions:r,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(e,t){const n=U(e);await Se(0);const a=await this.getCacheKey(n,"write");if(!t)throw new u("cache-put-with-no-response",{url:Te(a.url)});const r=await this._ensureResponseSafeToCache(t);if(!r)return!1;const{cacheName:i,matchOptions:c}=this._strategy,o=await self.caches.open(i),l=this.hasCallback("cacheDidUpdate"),f=l?await Ne(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?r.clone():r)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await Oe(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:i,oldResponse:f,newResponse:r.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const n=`${e.url} | ${t}`;if(!this._cacheKeys[n]){let a=e;for(const r of this.iterateCallbacks("cacheKeyWillBeUsed"))a=U(await r({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[n]=a}return this._cacheKeys[n]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const n of this.iterateCallbacks(e))await n(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const n=this._pluginStateMap.get(t);yield r=>{const i=Object.assign(Object.assign({},r),{state:n});return t[e](i)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,n=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,n=!0,!t)break;return n||t&&t.status!==200&&(t=void 0),t}},Ke=class{constructor(e={}){this.cacheName=B.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,n=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,r=new Ie(this,{event:t,request:n,params:a}),i=this._getResponse(r,n,t),c=this._awaitComplete(i,r,n,t);return[i,c]}async _getResponse(e,t,n){await e.runCallbacks("handlerWillStart",{event:n,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new u("no-response",{url:t.url})}catch(r){if(r instanceof Error){for(const i of e.iterateCallbacks("handlerDidError"))if(a=await i({error:r,event:n,request:t}),a)break}if(!a)throw r}for(const r of e.iterateCallbacks("handlerWillRespond"))a=await r({event:n,request:t,response:a});return a}async _awaitComplete(e,t,n,a){let r,i;try{r=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:n,response:r}),await t.doneWaiting()}catch(c){c instanceof Error&&(i=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:n,response:r,error:i}),t.destroy(),i)throw i}};class y extends Ke{constructor(e={}){e.cacheName=B.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(y.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const n=await t.cacheMatch(e);return n||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let n;const a=t.params||{};if(this._fallbackToNetwork){const r=a.integrity,i=e.integrity,c=!i||i===r;n=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?i||r:void 0})),r&&c&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,n.clone()))}else throw new u("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return n}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const n=await t.fetch(e);if(!await t.cachePut(e,n.clone()))throw new u("bad-precaching-response",{url:e.url,status:n.status});return n}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[n,a]of this.plugins.entries())a!==y.copyRedirectedCacheableResponsesPlugin&&(a===y.defaultPrecacheCacheabilityPlugin&&(e=n),a.cacheWillUpdate&&t++);t===0?this.plugins.push(y.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}y.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:s}){return!s||s.status>=400?null:s}};y.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:s}){return s.redirected?await ve(s):s}};class We{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:n=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new y({cacheName:B.getPrecacheName(e),plugins:[...t,new Le({precacheController:this})],fallbackToNetwork:n}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const n of e){typeof n=="string"?t.push(n):n&&n.revision===void 0&&t.push(n.url);const{cacheKey:a,url:r}=De(n),i=typeof n!="string"&&n.revision?"reload":"default";if(this._urlsToCacheKeys.has(r)&&this._urlsToCacheKeys.get(r)!==a)throw new u("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(r),secondEntry:a});if(typeof n!="string"&&n.integrity){if(this._cacheKeysToIntegrities.has(a)&&this._cacheKeysToIntegrities.get(a)!==n.integrity)throw new u("add-to-cache-list-conflicting-integrities",{url:r});this._cacheKeysToIntegrities.set(a,n.integrity)}if(this._urlsToCacheKeys.set(r,a),this._urlsToCacheModes.set(r,i),t.length>0){const c=`Workbox is precaching URLs without revision info: ${t.join(", ")}
2
- This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(c)}}}install(e){return V(e,async()=>{const t=new Ue;this.strategy.plugins.push(t);for(const[r,i]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(i),o=this._urlsToCacheModes.get(r),l=new Request(r,{integrity:c,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:i},request:l,event:e}))}const{updatedURLs:n,notUpdatedURLs:a}=t;return{updatedURLs:n,notUpdatedURLs:a}})}activate(e){return V(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),n=await t.keys(),a=new Set(this._urlsToCacheKeys.values()),r=[];for(const i of n)a.has(i.url)||(await t.delete(i),r.push(i.url));return{deletedURLs:r}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,n=this.getCacheKeyForURL(t);if(n)return(await self.caches.open(this.strategy.cacheName)).match(n)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return n=>(n.request=new Request(e),n.params=Object.assign({cacheKey:t},n.params),this.strategy.handle(n))}}let O;const Z=()=>(O||(O=new We),O);try{self["workbox:routing:7.0.0"]&&_()}catch{}const ee="GET",v=s=>s&&typeof s=="object"?s:{handle:s};let D=class{constructor(e,t,n=ee){this.handler=v(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=v(e)}},$e=class extends D{constructor(e,t,n){const a=({url:r})=>{const i=e.exec(r.href);if(i&&!(r.origin!==location.origin&&i.index!==0))return i.slice(1)};super(a,t,n)}},je=class{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,n=this.handleRequest({request:t,event:e});n&&e.respondWith(n)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,n=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const r=new Request(...a);return this.handleRequest({request:r,event:e})}));e.waitUntil(n),e.ports&&e.ports[0]&&n.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const n=new URL(e.url,location.href);if(!n.protocol.startsWith("http"))return;const a=n.origin===location.origin,{params:r,route:i}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:n});let c=i&&i.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:n,request:e,event:t,params:r})}catch(h){l=Promise.reject(h)}const f=i&&i.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:n,request:e,event:t,params:r})}catch(b){b instanceof Error&&(h=b)}if(this._catchHandler)return this._catchHandler.handle({url:n,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:n,event:a}){const r=this._routes.get(n.method)||[];for(const i of r){let c;const o=i.match({url:e,sameOrigin:t,request:n,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:i,params:c}}return{}}setDefaultHandler(e,t=ee){this._defaultHandlerMap.set(t,v(e))}setCatchHandler(e){this._catchHandler=v(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}},x;const He=()=>(x||(x=new je,x.addFetchListener(),x.addCacheListener()),x);function Be(s,e,t){let n;if(typeof s=="string"){const r=new URL(s,location.href),i=({url:c})=>c.href===r.href;n=new D(i,e,t)}else if(s instanceof RegExp)n=new $e(s,e,t);else if(typeof s=="function")n=new D(s,e,t);else if(s instanceof D)n=s;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return He().registerRoute(n),n}function Fe(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(n=>n.test(t))&&s.searchParams.delete(t);return s}function*qe(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:n=!0,urlManipulation:a}={}){const r=new URL(s,location.href);r.hash="",yield r.href;const i=Fe(r,e);if(yield i.href,t&&i.pathname.endsWith("/")){const c=new URL(i.href);c.pathname+=t,yield c.href}if(n){const c=new URL(i.href);c.pathname+=".html",yield c.href}if(a){const c=a({url:r});for(const o of c)yield o.href}}class Ve extends D{constructor(e,t){const n=({request:a})=>{const r=e.getURLsToCacheKeys();for(const i of qe(a.url,t)){const c=r.get(i);if(c){const o=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:o}}}};super(n,e.strategy)}}function Ge(s){const e=Z(),t=new Ve(e,s);Be(t)}function Je(s){Z().precache(s)}function Qe(s,e){Je(s),Ge(e)}try{self["workbox:core:7.0.0"]&&_()}catch{}const ze=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},Ye=ze;class Xe extends Error{constructor(e,t){const n=Ye(e,t);super(n),this.name=e,this.details=t}}function te(s){s.then(()=>{})}const Ze=(s,e)=>e.some(t=>s instanceof t);let J,Q;function et(){return J||(J=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function tt(){return Q||(Q=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const se=new WeakMap,$=new WeakMap,ne=new WeakMap,S=new WeakMap,F=new WeakMap;function st(s){const e=new Promise((t,n)=>{const a=()=>{s.removeEventListener("success",r),s.removeEventListener("error",i)},r=()=>{t(m(s.result)),a()},i=()=>{n(s.error),a()};s.addEventListener("success",r),s.addEventListener("error",i)});return e.then(t=>{t instanceof IDBCursor&&se.set(t,s)}).catch(()=>{}),F.set(e,s),e}function nt(s){if($.has(s))return;const e=new Promise((t,n)=>{const a=()=>{s.removeEventListener("complete",r),s.removeEventListener("error",i),s.removeEventListener("abort",i)},r=()=>{t(),a()},i=()=>{n(s.error||new DOMException("AbortError","AbortError")),a()};s.addEventListener("complete",r),s.addEventListener("error",i),s.addEventListener("abort",i)});$.set(s,e)}let j={get(s,e,t){if(s instanceof IDBTransaction){if(e==="done")return $.get(s);if(e==="objectStoreNames")return s.objectStoreNames||ne.get(s);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return m(s[e])},set(s,e,t){return s[e]=t,!0},has(s,e){return s instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in s}};function at(s){j=s(j)}function rt(s){return s===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){const n=s.call(I(this),e,...t);return ne.set(n,e.sort?e.sort():[e]),m(n)}:tt().includes(s)?function(...e){return s.apply(I(this),e),m(se.get(this))}:function(...e){return m(s.apply(I(this),e))}}function it(s){return typeof s=="function"?rt(s):(s instanceof IDBTransaction&&nt(s),Ze(s,et())?new Proxy(s,j):s)}function m(s){if(s instanceof IDBRequest)return st(s);if(S.has(s))return S.get(s);const e=it(s);return e!==s&&(S.set(s,e),F.set(e,s)),e}const I=s=>F.get(s);function ct(s,e,{blocked:t,upgrade:n,blocking:a,terminated:r}={}){const i=indexedDB.open(s,e),c=m(i);return n&&i.addEventListener("upgradeneeded",o=>{n(m(i.result),o.oldVersion,o.newVersion,m(i.transaction),o)}),t&&i.addEventListener("blocked",o=>t(o.oldVersion,o.newVersion,o)),c.then(o=>{r&&o.addEventListener("close",()=>r()),a&&o.addEventListener("versionchange",l=>a(l.oldVersion,l.newVersion,l))}).catch(()=>{}),c}function ot(s,{blocked:e}={}){const t=indexedDB.deleteDatabase(s);return e&&t.addEventListener("blocked",n=>e(n.oldVersion,n)),m(t).then(()=>{})}const lt=["get","getKey","getAll","getAllKeys","count"],ht=["put","add","delete","clear"],K=new Map;function z(s,e){if(!(s instanceof IDBDatabase&&!(e in s)&&typeof e=="string"))return;if(K.get(e))return K.get(e);const t=e.replace(/FromIndex$/,""),n=e!==t,a=ht.includes(t);if(!(t in(n?IDBIndex:IDBObjectStore).prototype)||!(a||lt.includes(t)))return;const r=async function(i,...c){const o=this.transaction(i,a?"readwrite":"readonly");let l=o.store;return n&&(l=l.index(c.shift())),(await Promise.all([l[t](...c),a&&o.done]))[0]};return K.set(e,r),r}at(s=>({...s,get:(e,t,n)=>z(e,t)||s.get(e,t,n),has:(e,t)=>!!z(e,t)||s.has(e,t)}));try{self["workbox:expiration:7.0.0"]&&_()}catch{}const ut="workbox-expiration",k="cache-entries",Y=s=>{const e=new URL(s,location.href);return e.hash="",e.href};class ft{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(k,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&ot(this._cacheName)}async setTimestamp(e,t){e=Y(e);const n={url:e,timestamp:t,cacheName:this._cacheName,id:this._getId(e)},r=(await this.getDb()).transaction(k,"readwrite",{durability:"relaxed"});await r.store.put(n),await r.done}async getTimestamp(e){const n=await(await this.getDb()).get(k,this._getId(e));return n==null?void 0:n.timestamp}async expireEntries(e,t){const n=await this.getDb();let a=await n.transaction(k).store.index("timestamp").openCursor(null,"prev");const r=[];let i=0;for(;a;){const o=a.value;o.cacheName===this._cacheName&&(e&&o.timestamp<e||t&&i>=t?r.push(a.value):i++),a=await a.continue()}const c=[];for(const o of r)await n.delete(k,o.id),c.push(o.url);return c}_getId(e){return this._cacheName+"|"+Y(e)}async getDb(){return this._db||(this._db=await ct(ut,1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class dt{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new ft(e)}async expireEntries(){if(this._isRunning){this._rerunRequested=!0;return}this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-this._maxAgeSeconds*1e3:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),n=await self.caches.open(this._cacheName);for(const a of t)await n.delete(a,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,te(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),n=Date.now()-this._maxAgeSeconds*1e3;return t!==void 0?t<n:!0}else return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}const g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},W=s=>[g.prefix,s,g.suffix].filter(e=>e&&e.length>0).join("-"),pt=s=>{for(const e of Object.keys(g))s(e)},gt={updateDetails:s=>{pt(e=>{typeof s[e]=="string"&&(g[e]=s[e])})},getGoogleAnalyticsName:s=>s||W(g.googleAnalytics),getPrecacheName:s=>s||W(g.precache),getPrefix:()=>g.prefix,getRuntimeName:s=>s||W(g.runtime),getSuffix:()=>g.suffix},mt=new Set;function wt(s){mt.add(s)}class yt{constructor(e={}){this.cachedResponseWillBeUsed=async({event:t,request:n,cacheName:a,cachedResponse:r})=>{if(!r)return null;const i=this._isResponseDateFresh(r),c=this._getCacheExpiration(a);te(c.expireEntries());const o=c.updateTimestamp(n.url);if(t)try{t.waitUntil(o)}catch{}return i?r:null},this.cacheDidUpdate=async({cacheName:t,request:n})=>{const a=this._getCacheExpiration(t);await a.updateTimestamp(n.url),await a.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&wt(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(e){if(e===gt.getRuntimeName())throw new Xe("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new dt(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(t===null)return!0;const n=Date.now();return t>=n-this._maxAgeSeconds*1e3}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),a=new Date(t).getTime();return isNaN(a)?null:a}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}try{self["workbox:routing:7.0.0"]&&_()}catch{}const ae="GET",T=s=>s&&typeof s=="object"?s:{handle:s};class P{constructor(e,t,n=ae){this.handler=T(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=T(e)}}class _t extends P{constructor(e,t,n){const a=({url:r})=>{const i=e.exec(r.href);if(i&&!(r.origin!==location.origin&&i.index!==0))return i.slice(1)};super(a,t,n)}}class Rt{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,n=this.handleRequest({request:t,event:e});n&&e.respondWith(n)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,n=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const r=new Request(...a);return this.handleRequest({request:r,event:e})}));e.waitUntil(n),e.ports&&e.ports[0]&&n.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const n=new URL(e.url,location.href);if(!n.protocol.startsWith("http"))return;const a=n.origin===location.origin,{params:r,route:i}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:n});let c=i&&i.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:n,request:e,event:t,params:r})}catch(h){l=Promise.reject(h)}const f=i&&i.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:n,request:e,event:t,params:r})}catch(b){b instanceof Error&&(h=b)}if(this._catchHandler)return this._catchHandler.handle({url:n,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:n,event:a}){const r=this._routes.get(n.method)||[];for(const i of r){let c;const o=i.match({url:e,sameOrigin:t,request:n,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:i,params:c}}return{}}setDefaultHandler(e,t=ae){this._defaultHandlerMap.set(t,T(e))}setCatchHandler(e){this._catchHandler=T(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new R("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new R("unregister-route-route-not-registered")}}let E;const bt=()=>(E||(E=new Rt,E.addFetchListener(),E.addCacheListener()),E);function N(s,e,t){let n;if(typeof s=="string"){const r=new URL(s,location.href),i=({url:c})=>c.href===r.href;n=new P(i,e,t)}else if(s instanceof RegExp)n=new _t(s,e,t);else if(typeof s=="function")n=new P(s,e,t);else if(s instanceof P)n=s;else throw new R("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return bt().registerRoute(n),n}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function L(s){return typeof s=="string"?new Request(s):s}class Ct{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new we,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let n=L(e);if(n.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const i=await t.preloadResponse;if(i)return i}const a=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const i of this.iterateCallbacks("requestWillFetch"))n=await i({request:n.clone(),event:t})}catch(i){if(i instanceof Error)throw new R("plugin-error-request-will-fetch",{thrownErrorMessage:i.message})}const r=n.clone();try{let i;i=await fetch(n,n.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))i=await c({event:t,request:r,response:i});return i}catch(i){throw a&&await this.runCallbacks("fetchDidFail",{error:i,event:t,originalRequest:a.clone(),request:r.clone()}),i}}async fetchAndCachePut(e){const t=await this.fetch(e),n=t.clone();return this.waitUntil(this.cachePut(e,n)),t}async cacheMatch(e){const t=L(e);let n;const{cacheName:a,matchOptions:r}=this._strategy,i=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},r),{cacheName:a});n=await caches.match(i,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await o({cacheName:a,matchOptions:r,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(e,t){const n=L(e);await Re(0);const a=await this.getCacheKey(n,"write");if(!t)throw new R("cache-put-with-no-response",{url:_e(a.url)});const r=await this._ensureResponseSafeToCache(t);if(!r)return!1;const{cacheName:i,matchOptions:c}=this._strategy,o=await self.caches.open(i),l=this.hasCallback("cacheDidUpdate"),f=l?await me(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?r.clone():r)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await ye(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:i,oldResponse:f,newResponse:r.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const n=`${e.url} | ${t}`;if(!this._cacheKeys[n]){let a=e;for(const r of this.iterateCallbacks("cacheKeyWillBeUsed"))a=L(await r({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[n]=a}return this._cacheKeys[n]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const n of this.iterateCallbacks(e))await n(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const n=this._pluginStateMap.get(t);yield r=>{const i=Object.assign(Object.assign({},r),{state:n});return t[e](i)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,n=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,n=!0,!t)break;return n||t&&t.status!==200&&(t=void 0),t}}class re{constructor(e={}){this.cacheName=ge.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,n=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,r=new Ct(this,{event:t,request:n,params:a}),i=this._getResponse(r,n,t),c=this._awaitComplete(i,r,n,t);return[i,c]}async _getResponse(e,t,n){await e.runCallbacks("handlerWillStart",{event:n,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new R("no-response",{url:t.url})}catch(r){if(r instanceof Error){for(const i of e.iterateCallbacks("handlerDidError"))if(a=await i({error:r,event:n,request:t}),a)break}if(!a)throw r}for(const r of e.iterateCallbacks("handlerWillRespond"))a=await r({event:n,request:t,response:a});return a}async _awaitComplete(e,t,n,a){let r,i;try{r=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:n,response:r}),await t.doneWaiting()}catch(c){c instanceof Error&&(i=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:n,response:r,error:i}),t.destroy(),i)throw i}}class ie extends re{async _handle(e,t){let n=await t.cacheMatch(e),a;if(!n)try{n=await t.fetchAndCachePut(e)}catch(r){r instanceof Error&&(a=r)}if(!n)throw new R("no-response",{url:e.url,error:a});return n}}const xt={cacheWillUpdate:async({response:s})=>s.status===200||s.status===0?s:null};class ce extends re{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(xt)}async _handle(e,t){const n=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(n);let a=await t.cacheMatch(e),r;if(!a)try{a=await n}catch(i){i instanceof Error&&(r=i)}if(!a)throw new R("no-response",{url:e.url,error:r});return a}}const H="sw-update-reload-times",oe="/lastUpdateMsgTimestamps",kt=10,Et=20*1e3;let le=!1;function Dt(s,e){let t;return(...n)=>{clearTimeout(t),t=setTimeout(()=>{s.apply(this,n)},e)}}function Ut(s,e=50,t=5e3){return new Promise(n=>{const a=Date.now(),r=()=>{s()||Date.now()-a>=t?n():setTimeout(r,e)};r()})}self.addEventListener("message",s=>{s.data&&s.data.type==="CLIENT_UPDATE_READY"&&(console.log("Service Worker: client ready"),le=!0)});async function Lt(s){const t=await(await caches.open(H)).match(`${oe}-${s}`);if(t)try{const n=await t.text();return JSON.parse(n)}catch{return[]}return[]}async function Pt(s,e){const t=await caches.open(H);if((await t.keys()).length>100){await caches.delete(H);return}const a=new Response(JSON.stringify(s));await t.put(`${oe}-${e}`,a)}const vt=Dt(async()=>{(await self.clients.matchAll()).forEach(e=>{e.postMessage({type:"SW_DOCUMENT_UPDATED"})})},100),X=/updatedAt:\s*\d+,/g,Tt={cacheDidUpdate:async({request:s,oldResponse:e,newResponse:t})=>{if(e)try{let n=await e.clone().text(),a=await t.clone().text();if(s.url.includes("__blocklet__.js")&&(n=n.replace(X,"updatedAt: ,"),a=a.replace(X,"updatedAt: ,")),n!==a){const r=Date.now(),c=(await Lt(s.url)).filter(o=>r-o<Et);if(c.length>=kt){console.warn("[SW] update too frequent, skip:",s.url);return}await Ut(()=>le),await Pt(c,s.url),console.log("[SW] document version or session updated",s.url),vt()}}catch(n){console.error("[SW] Error comparing document responses:",n)}}};Qe(([{"revision":null,"url":"assets/access-control-DlT-JQML.js"},{"revision":null,"url":"assets/actions-azdiYocL.js"},{"revision":null,"url":"assets/AdapterDayjs-gCvKcGfu.js"},{"revision":null,"url":"assets/add-component-core-Cm8Y0zkt.js"},{"revision":null,"url":"assets/add-component-core-D-IRi6XF.css"},{"revision":null,"url":"assets/add-resource-CVCoahx_.js"},{"revision":null,"url":"assets/addon-3ZMGwARO.js"},{"revision":null,"url":"assets/advanced-Nvg1CqJg.js"},{"revision":null,"url":"assets/api-BjteVZFg.js"},{"revision":null,"url":"assets/appearance-CAsFMLaC.js"},{"revision":null,"url":"assets/ar-CHiV3Onz.js"},{"revision":null,"url":"assets/ar-T0OvMFDJ.js"},{"revision":null,"url":"assets/ArrowDropDown-D32FY-Mt.js"},{"revision":null,"url":"assets/audit-logs-BPjUleS-.js"},{"revision":null,"url":"assets/authorize-CdTK5Air.js"},{"revision":null,"url":"assets/base-chart-D6qRW4Yg.js"},{"revision":null,"url":"assets/base32-CLrnUJal.js"},{"revision":null,"url":"assets/branding-B8r8EJ2R.js"},{"revision":null,"url":"assets/branding-Cr4GBUXi.js"},{"revision":null,"url":"assets/bundle-avatar-Br48PGS5.js"},{"revision":null,"url":"assets/button-8G90WP8a.js"},{"revision":null,"url":"assets/CheckCircle-BBSSDlcc.js"},{"revision":null,"url":"assets/ChevronLeft-CF24ouxR.js"},{"revision":null,"url":"assets/ChevronRight-DA9t_C-l.js"},{"revision":null,"url":"assets/click-to-copy-ByEMWZD_.js"},{"revision":null,"url":"assets/cloneDeep-UpFQ2VNg.js"},{"revision":null,"url":"assets/collapse-Cliwxlbv.js"},{"revision":null,"url":"assets/Community-BnAsVqMr.js"},{"revision":null,"url":"assets/complete-CzlLydJT.js"},{"revision":null,"url":"assets/component-5_wmVxpp.js"},{"revision":null,"url":"assets/config-BnObxTpi.js"},{"revision":null,"url":"assets/config-emhMgKqq.js"},{"revision":null,"url":"assets/config-navigation-DbyhYIMw.js"},{"revision":null,"url":"assets/config-space-TsP5osn9.js"},{"revision":null,"url":"assets/confirm-DI8TUyRK.js"},{"revision":null,"url":"assets/connect-B_BnGQjp.js"},{"revision":null,"url":"assets/connect-D55qWQWC.js"},{"revision":null,"url":"assets/connect-to-DzPwhREN.js"},{"revision":null,"url":"assets/content-layout-fV4nyVb5.js"},{"revision":null,"url":"assets/dark-animation-DhFa8I7D.js"},{"revision":null,"url":"assets/dashboard-AdC8-kkA.js"},{"revision":null,"url":"assets/de-BWtUXhCw.js"},{"revision":null,"url":"assets/de-WYW4JJdA.js"},{"revision":null,"url":"assets/default-animation-DARmPWCI.js"},{"revision":null,"url":"assets/delete-confirm-Bn1HZjaL.js"},{"revision":null,"url":"assets/DeleteOutline-CzIOFoFP.js"},{"revision":null,"url":"assets/did-address-BlAXR08O.js"},{"revision":null,"url":"assets/domain-action-card-C4FpSn67.js"},{"revision":null,"url":"assets/domain-Cod_zL8_.js"},{"revision":null,"url":"assets/domains-BhqtMbC1.js"},{"revision":null,"url":"assets/Done-MQdb8YLa.js"},{"revision":null,"url":"assets/dot-itVN8XTt.js"},{"revision":null,"url":"assets/Download-IxxF4Ujs.js"},{"revision":null,"url":"assets/Edit-DSht16TX.js"},{"revision":null,"url":"assets/EditIcon-8BXW1OHp.js"},{"revision":null,"url":"assets/Email-BirbvqZ3.js"},{"revision":null,"url":"assets/email-CqVIYJc4.js"},{"revision":null,"url":"assets/empty-spinner-BdaCO6xq.js"},{"revision":null,"url":"assets/Error-CkoCqY66.js"},{"revision":null,"url":"assets/es-B6GuFK3b.js"},{"revision":null,"url":"assets/es-DaHPJdAX.js"},{"revision":null,"url":"assets/exchange-passport-C-hTCqg0.js"},{"revision":null,"url":"assets/ExpandLess-CudE_1oQ.js"},{"revision":null,"url":"assets/fr-DjhyyiEi.js"},{"revision":null,"url":"assets/fr-Sdn9hi8k.js"},{"revision":null,"url":"assets/fuel-M5L6Wmxz.js"},{"revision":null,"url":"assets/gen-access-key-D6jr4e_G.js"},{"revision":null,"url":"assets/get-safe-url-CRv5HbAK.js"},{"revision":null,"url":"assets/get-safe-url-DrR-6D-i.js"},{"revision":null,"url":"assets/Google-AZBuQJFI.js"},{"revision":null,"url":"assets/hi-CtKbt1J4.js"},{"revision":null,"url":"assets/hi-dJuR0lt2.js"},{"revision":null,"url":"assets/Holiday-C4KRd5t6.js"},{"revision":null,"url":"assets/Home-BaA3V3I7.js"},{"revision":null,"url":"assets/home-C7e6Ftxj.js"},{"revision":null,"url":"assets/id-CCuL3FP-.js"},{"revision":null,"url":"assets/id-DuYS34H0.js"},{"revision":null,"url":"assets/iframe-DSG-Hd99.js"},{"revision":null,"url":"assets/index-8eXqqyHQ.js"},{"revision":null,"url":"assets/index-AetYfL_f.js"},{"revision":null,"url":"assets/index-AgKpYdvC.css"},{"revision":null,"url":"assets/index-B5_fBwtl.js"},{"revision":null,"url":"assets/index-BFWnCQrF.js"},{"revision":null,"url":"assets/index-bIHubQ8z.js"},{"revision":null,"url":"assets/index-Bj2-CpPI.js"},{"revision":null,"url":"assets/index-BJbAX71g.js"},{"revision":null,"url":"assets/index-BJHSgjnI.js"},{"revision":null,"url":"assets/index-BLbU4gf9.js"},{"revision":null,"url":"assets/index-BM1ZGOPs.js"},{"revision":null,"url":"assets/index-BmXcRfZR.js"},{"revision":null,"url":"assets/index-Bs1kxR8_.js"},{"revision":null,"url":"assets/index-BUrgmCmL.js"},{"revision":null,"url":"assets/index-C0Iiqot3.css"},{"revision":null,"url":"assets/index-C2F-GVrD.js"},{"revision":null,"url":"assets/index-C4vmLohg.js"},{"revision":null,"url":"assets/index-CEeLwMYO.js"},{"revision":null,"url":"assets/index-CPE8Apzb.js"},{"revision":null,"url":"assets/index-CtLialsm.js"},{"revision":null,"url":"assets/index-D2uDBC1o.js"},{"revision":null,"url":"assets/index-DOq-_YXu.css"},{"revision":null,"url":"assets/index-DSoHmrHd.js"},{"revision":null,"url":"assets/index-DthGrDK3.js"},{"revision":null,"url":"assets/index-DVQCgvFb.js"},{"revision":null,"url":"assets/index-iB7JyXwh.js"},{"revision":null,"url":"assets/index-iQsPOXlb.js"},{"revision":null,"url":"assets/index-J3Tqz9ZT.js"},{"revision":null,"url":"assets/index-rn2nf2kX.js"},{"revision":null,"url":"assets/index-RsjqbOR7.js"},{"revision":null,"url":"assets/index-YbYWmpAT.js"},{"revision":null,"url":"assets/index-yvg4DpNi.js"},{"revision":null,"url":"assets/InfoOutlined-Cd28U1Oc.js"},{"revision":null,"url":"assets/invitation-StUiuLYU.js"},{"revision":null,"url":"assets/invite-E96eT2DF.js"},{"revision":null,"url":"assets/issue-passport-DrGPTNsG.js"},{"revision":null,"url":"assets/item-Dgu9vLko.js"},{"revision":null,"url":"assets/ja-ACgKScTi.js"},{"revision":null,"url":"assets/ja-Dh60q0r5.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-CoqvBZUf.js"},{"revision":null,"url":"assets/ko-gvJH4zFR.js"},{"revision":null,"url":"assets/landing-page-BOy_W1aP.js"},{"revision":null,"url":"assets/Launch-Ddo_WSQI.js"},{"revision":null,"url":"assets/launch-result-message-FuvJDCvp.js"},{"revision":null,"url":"assets/LaunchOutlined-CO4dugwH.js"},{"revision":null,"url":"assets/layout-CYJJYqb_.js"},{"revision":null,"url":"assets/list-C8X2Voou.js"},{"revision":null,"url":"assets/list-header-xt282ZMS.js"},{"revision":null,"url":"assets/list-uPz9xAWJ.js"},{"revision":null,"url":"assets/localization-CI5Q0B2F.js"},{"revision":null,"url":"assets/Location-DxPzfR_p.js"},{"revision":null,"url":"assets/LockIcon-DFb6sSpT.js"},{"revision":null,"url":"assets/log-CzRRb9lq.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/logger-B4ZKcD6x.js"},{"revision":null,"url":"assets/login-D3GnBJn4.js"},{"revision":null,"url":"assets/login-oauth-callback-CVS9TwNM.js"},{"revision":null,"url":"assets/logo-uploader-CbM-N8qP.js"},{"revision":null,"url":"assets/lost-passport-5P2EFbv0.js"},{"revision":null,"url":"assets/lottie-error-CMOXHtBH.js"},{"revision":null,"url":"assets/lottie-loading-o-GBrhM9.js"},{"revision":null,"url":"assets/lottie-react.esm-D2t-u0YU.js"},{"revision":null,"url":"assets/lottie-web-jYmAQWuC.js"},{"revision":null,"url":"assets/lottie-welcome-C9B95FIi.js"},{"revision":null,"url":"assets/Meeting-DCL_ygud.js"},{"revision":null,"url":"assets/MoreHoriz-D-L8sA4c.js"},{"revision":null,"url":"assets/OffSick-DvgkmCUP.js"},{"revision":null,"url":"assets/omit-D2k92RIF.js"},{"revision":null,"url":"assets/open-window-c9TGr49M.js"},{"revision":null,"url":"assets/overview-BZRXhA-K.js"},{"revision":null,"url":"assets/page-header-D_m0ANZl.js"},{"revision":null,"url":"assets/passport-item-DE-9Q-Cx.js"},{"revision":null,"url":"assets/permission-fpFyADH8.js"},{"revision":null,"url":"assets/Phone-BkOMNOMO.js"},{"revision":null,"url":"assets/PlayArrow-CLKgdv6H.js"},{"revision":null,"url":"assets/preferences-0RYr2e_y.js"},{"revision":null,"url":"assets/profile-embed-BwbGy3El.js"},{"revision":null,"url":"assets/pt-DCcbs0d0.js"},{"revision":null,"url":"assets/pt-DzswFIpl.js"},{"revision":null,"url":"assets/publish-resource-CWz86TY0.js"},{"revision":null,"url":"assets/QuestionMarkCircle-DTGyWFVS.js"},{"revision":null,"url":"assets/raf-schd.esm-B3j6BePR.js"},{"revision":null,"url":"assets/react-beautiful-dnd.esm-G9cRB9Uf.js"},{"revision":null,"url":"assets/ru-EZJWVu3M.js"},{"revision":null,"url":"assets/ru-WYTV5VzH.js"},{"revision":null,"url":"assets/runtime-63aIXcah.js"},{"revision":null,"url":"assets/sdk-D4BoQHdn.js"},{"revision":null,"url":"assets/section-BB6hVmdO.js"},{"revision":null,"url":"assets/security-YPRPQuQL.js"},{"revision":null,"url":"assets/session-Djj2U6sa.js"},{"revision":null,"url":"assets/setup-C9DGbmM7.js"},{"revision":null,"url":"assets/shorten-label-DPIZ5X7v.js"},{"revision":null,"url":"assets/simple-select-CN3fsa56.js"},{"revision":null,"url":"assets/slicedToArray-DmqXMnHT.js"},{"revision":null,"url":"assets/spaces-fGcGlx-U.js"},{"revision":null,"url":"assets/start-Cz_j6UYt.js"},{"revision":null,"url":"assets/starting-progress-DHv9oucO.js"},{"revision":null,"url":"assets/status-B5ff49WY.js"},{"revision":null,"url":"assets/step-actions-CPiUgWLW.js"},{"revision":null,"url":"assets/studio-DnKLD9XD.js"},{"revision":null,"url":"assets/switch-control-DWjnOuBy.js"},{"revision":null,"url":"assets/table-tips-DEGQUNJa.js"},{"revision":null,"url":"assets/th-Bn3Ch7SK.js"},{"revision":null,"url":"assets/th-Da4lMKTX.js"},{"revision":null,"url":"assets/Timezone-D91Of94T.js"},{"revision":null,"url":"assets/traffic-C262RTgV.js"},{"revision":null,"url":"assets/transfer-CXfjw5Xg.js"},{"revision":null,"url":"assets/TuneOutlined-BWqIZK2m.js"},{"revision":null,"url":"assets/unsubscribe-CdFXzPwR.js"},{"revision":null,"url":"assets/use-blocklet-logo-C_pDvfYN.js"},{"revision":null,"url":"assets/use-mobile-BAa0wi8o.js"},{"revision":null,"url":"assets/use-mobile-C21X4TYN.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/use-server-logo-CxuMvwKh.js"},{"revision":null,"url":"assets/useAsync-510ntT1B.js"},{"revision":null,"url":"assets/useLocalStorage-DO6t2PeQ.js"},{"revision":null,"url":"assets/user-center-DR1kV4iN.js"},{"revision":null,"url":"assets/useSetState-CWq0AVWn.js"},{"revision":null,"url":"assets/util-Cs-QbPU0.js"},{"revision":null,"url":"assets/util-VM27PwRk.js"},{"revision":null,"url":"assets/vendor-arcblock-DuPySS9V.js"},{"revision":null,"url":"assets/vendor-hooks-BgUTpb6X.js"},{"revision":null,"url":"assets/vendor-mui-core-BV2FUxWJ.js"},{"revision":null,"url":"assets/vendor-mui-x-Bo-XOtzq.js"},{"revision":null,"url":"assets/vendor-react-DEoibe3W.js"},{"revision":null,"url":"assets/vendor-utils-rHXShPKm.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-DIlRfE_S.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-DpSGLE7B.css"},{"revision":null,"url":"assets/vi-BxzaqoH9.js"},{"revision":null,"url":"assets/vi-CgnGroV4.js"},{"revision":null,"url":"assets/ViewList-DWudZTBg.js"},{"revision":null,"url":"assets/WorkingRemotely-CpchWcXV.js"},{"revision":null,"url":"assets/wrap-locale-BWx2hEb7.js"},{"revision":null,"url":"assets/zh-BWgwGxeZ.js"},{"revision":null,"url":"assets/zh-Do6onry4.js"},{"revision":null,"url":"assets/zh-tw-BNgoHsYW.js"},{"revision":null,"url":"assets/zh-tw-Ciod1pFs.js"},{"revision":"52f5049a5f74502b29849f829e22ac98","url":"index.html"},{"revision":"629a14a7e3397a134f5a30b5dc735183","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"8f9b8997bf5804519b8e9f8dd1bb6ef9","url":"share/shared-bridge.html"},{"revision":"3c1549cff96a2d2baec44397663c083e","url":"share/shared-service-worker.js"},{"revision":"19d4c6a99cb8ed11e68209a612e7ec44","url":"share/workbox-v7.3.0/workbox-background-sync.prod.js"},{"revision":"d9d631014689e2b4b0e343c129671749","url":"share/workbox-v7.3.0/workbox-broadcast-update.prod.js"},{"revision":"bdb39ceb7380dcb1483c543e8856242b","url":"share/workbox-v7.3.0/workbox-cacheable-response.prod.js"},{"revision":"b84dd900eb18e8bc842666bbb740604e","url":"share/workbox-v7.3.0/workbox-core.prod.js"},{"revision":"c582a61c037234d8283eea0b97693b1b","url":"share/workbox-v7.3.0/workbox-expiration.prod.js"},{"revision":"866ba7d03bd871fa990976e4db312ab3","url":"share/workbox-v7.3.0/workbox-navigation-preload.prod.js"},{"revision":"0c55bb581ea7ce5ebfac1ce95cdda21f","url":"share/workbox-v7.3.0/workbox-offline-ga.prod.js"},{"revision":"770d183cf1f189a1ceb11ba8b5d808fa","url":"share/workbox-v7.3.0/workbox-precaching.prod.js"},{"revision":"295decbe1eb3b073a2a8d67cfbdf5692","url":"share/workbox-v7.3.0/workbox-range-requests.prod.js"},{"revision":"0bcb90677f3508ebc8a3571d14194478","url":"share/workbox-v7.3.0/workbox-recipes.prod.js"},{"revision":"4af96b70b2d20b041e2edd7ef1a8ef27","url":"share/workbox-v7.3.0/workbox-routing.prod.js"},{"revision":"c78c21b4058a1134ad3e12286c57cb2f","url":"share/workbox-v7.3.0/workbox-strategies.prod.js"},{"revision":"7eeb2d820d409221e076d31951fdcf79","url":"share/workbox-v7.3.0/workbox-streams.prod.js"},{"revision":"aa7368887577b9719a46b585d5dcc7a5","url":"share/workbox-v7.3.0/workbox-sw.js"},{"revision":"e768668db4eeefde11b58542900ab2ad","url":"share/workbox-v7.3.0/workbox-window.prod.umd.js"},{"revision":"f272d080151aa40322ce1603c6261ec1","url":"manifest.webmanifest"}]||[]).filter(s=>s.url!=="/"&&!s.url.includes("index.html")));be();self.addEventListener("activate",()=>{console.log("Service Worker activated")});self.addEventListener("install",s=>{console.log("Service Worker installed"),s.waitUntil(self.skipWaiting())});const he=s=>!!(s.method!=="GET"||s.url.includes("/api")||s.url.includes("__meta__.js")||s.url.includes("__blocklet__.js"));N(({request:s})=>he(s)?!1:s.url.includes("/static/"),new ie({cacheName:`static-${self.registration.scope}`,plugins:[new yt({maxEntries:200})]}));N(({request:s,url:e})=>{var t,n;return(n=(t=self.blocklet)==null?void 0:t.canCache)!=null&&n.call(t,{url:e})?["image","font","style","script"].includes(s.destination):!1},new ie({cacheName:`static-resources-${self.registration.scope}`}));N(({request:s})=>he(s)?!1:s.url.includes("/images/")||s.url.includes("/router/-template-styles/"),new ce({cacheName:`StaleWhileRevalidate-${self.registration.scope}`}));const Nt={cacheKeyWillBeUsed({request:s}){const e=new URL(s.url);return s.destination==="document"&&e.pathname.startsWith("/.well-known/service/admin")?(e.pathname="/.well-known/service/admin",e.search="",e.toString()):s.url}},w={};N(({request:s})=>{const e=new URL(s.url);return s.destination==="document"&&e.pathname.startsWith("/.well-known/service/admin")?(Object.keys(w).forEach(t=>delete w[t]),!0):!w.env&&s.url.includes(".well-known/service/api/env")?(w.env=!0,!0):!w.session&&s.url.includes(".well-known/service/api/did/session")?(w.session=!0,!0):!w.blocklet&&s.url.endsWith("__blocklet__.js")?(w.blocklet=!0,!0):!1},new ce({cacheName:`documents-${self.registration.scope}`,plugins:[Tt,Nt]}));
2
+ This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(c)}}}install(e){return V(e,async()=>{const t=new Ue;this.strategy.plugins.push(t);for(const[r,i]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(i),o=this._urlsToCacheModes.get(r),l=new Request(r,{integrity:c,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:i},request:l,event:e}))}const{updatedURLs:n,notUpdatedURLs:a}=t;return{updatedURLs:n,notUpdatedURLs:a}})}activate(e){return V(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),n=await t.keys(),a=new Set(this._urlsToCacheKeys.values()),r=[];for(const i of n)a.has(i.url)||(await t.delete(i),r.push(i.url));return{deletedURLs:r}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,n=this.getCacheKeyForURL(t);if(n)return(await self.caches.open(this.strategy.cacheName)).match(n)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return n=>(n.request=new Request(e),n.params=Object.assign({cacheKey:t},n.params),this.strategy.handle(n))}}let O;const Z=()=>(O||(O=new We),O);try{self["workbox:routing:7.0.0"]&&_()}catch{}const ee="GET",v=s=>s&&typeof s=="object"?s:{handle:s};let D=class{constructor(e,t,n=ee){this.handler=v(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=v(e)}},$e=class extends D{constructor(e,t,n){const a=({url:r})=>{const i=e.exec(r.href);if(i&&!(r.origin!==location.origin&&i.index!==0))return i.slice(1)};super(a,t,n)}},je=class{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,n=this.handleRequest({request:t,event:e});n&&e.respondWith(n)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,n=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const r=new Request(...a);return this.handleRequest({request:r,event:e})}));e.waitUntil(n),e.ports&&e.ports[0]&&n.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const n=new URL(e.url,location.href);if(!n.protocol.startsWith("http"))return;const a=n.origin===location.origin,{params:r,route:i}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:n});let c=i&&i.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:n,request:e,event:t,params:r})}catch(h){l=Promise.reject(h)}const f=i&&i.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:n,request:e,event:t,params:r})}catch(b){b instanceof Error&&(h=b)}if(this._catchHandler)return this._catchHandler.handle({url:n,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:n,event:a}){const r=this._routes.get(n.method)||[];for(const i of r){let c;const o=i.match({url:e,sameOrigin:t,request:n,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:i,params:c}}return{}}setDefaultHandler(e,t=ee){this._defaultHandlerMap.set(t,v(e))}setCatchHandler(e){this._catchHandler=v(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}},x;const He=()=>(x||(x=new je,x.addFetchListener(),x.addCacheListener()),x);function Be(s,e,t){let n;if(typeof s=="string"){const r=new URL(s,location.href),i=({url:c})=>c.href===r.href;n=new D(i,e,t)}else if(s instanceof RegExp)n=new $e(s,e,t);else if(typeof s=="function")n=new D(s,e,t);else if(s instanceof D)n=s;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return He().registerRoute(n),n}function Fe(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(n=>n.test(t))&&s.searchParams.delete(t);return s}function*qe(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:n=!0,urlManipulation:a}={}){const r=new URL(s,location.href);r.hash="",yield r.href;const i=Fe(r,e);if(yield i.href,t&&i.pathname.endsWith("/")){const c=new URL(i.href);c.pathname+=t,yield c.href}if(n){const c=new URL(i.href);c.pathname+=".html",yield c.href}if(a){const c=a({url:r});for(const o of c)yield o.href}}class Ve extends D{constructor(e,t){const n=({request:a})=>{const r=e.getURLsToCacheKeys();for(const i of qe(a.url,t)){const c=r.get(i);if(c){const o=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:o}}}};super(n,e.strategy)}}function Ge(s){const e=Z(),t=new Ve(e,s);Be(t)}function Je(s){Z().precache(s)}function Qe(s,e){Je(s),Ge(e)}try{self["workbox:core:7.0.0"]&&_()}catch{}const ze=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},Ye=ze;class Xe extends Error{constructor(e,t){const n=Ye(e,t);super(n),this.name=e,this.details=t}}function te(s){s.then(()=>{})}const Ze=(s,e)=>e.some(t=>s instanceof t);let J,Q;function et(){return J||(J=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function tt(){return Q||(Q=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const se=new WeakMap,$=new WeakMap,ne=new WeakMap,S=new WeakMap,F=new WeakMap;function st(s){const e=new Promise((t,n)=>{const a=()=>{s.removeEventListener("success",r),s.removeEventListener("error",i)},r=()=>{t(m(s.result)),a()},i=()=>{n(s.error),a()};s.addEventListener("success",r),s.addEventListener("error",i)});return e.then(t=>{t instanceof IDBCursor&&se.set(t,s)}).catch(()=>{}),F.set(e,s),e}function nt(s){if($.has(s))return;const e=new Promise((t,n)=>{const a=()=>{s.removeEventListener("complete",r),s.removeEventListener("error",i),s.removeEventListener("abort",i)},r=()=>{t(),a()},i=()=>{n(s.error||new DOMException("AbortError","AbortError")),a()};s.addEventListener("complete",r),s.addEventListener("error",i),s.addEventListener("abort",i)});$.set(s,e)}let j={get(s,e,t){if(s instanceof IDBTransaction){if(e==="done")return $.get(s);if(e==="objectStoreNames")return s.objectStoreNames||ne.get(s);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return m(s[e])},set(s,e,t){return s[e]=t,!0},has(s,e){return s instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in s}};function at(s){j=s(j)}function rt(s){return s===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){const n=s.call(I(this),e,...t);return ne.set(n,e.sort?e.sort():[e]),m(n)}:tt().includes(s)?function(...e){return s.apply(I(this),e),m(se.get(this))}:function(...e){return m(s.apply(I(this),e))}}function it(s){return typeof s=="function"?rt(s):(s instanceof IDBTransaction&&nt(s),Ze(s,et())?new Proxy(s,j):s)}function m(s){if(s instanceof IDBRequest)return st(s);if(S.has(s))return S.get(s);const e=it(s);return e!==s&&(S.set(s,e),F.set(e,s)),e}const I=s=>F.get(s);function ct(s,e,{blocked:t,upgrade:n,blocking:a,terminated:r}={}){const i=indexedDB.open(s,e),c=m(i);return n&&i.addEventListener("upgradeneeded",o=>{n(m(i.result),o.oldVersion,o.newVersion,m(i.transaction),o)}),t&&i.addEventListener("blocked",o=>t(o.oldVersion,o.newVersion,o)),c.then(o=>{r&&o.addEventListener("close",()=>r()),a&&o.addEventListener("versionchange",l=>a(l.oldVersion,l.newVersion,l))}).catch(()=>{}),c}function ot(s,{blocked:e}={}){const t=indexedDB.deleteDatabase(s);return e&&t.addEventListener("blocked",n=>e(n.oldVersion,n)),m(t).then(()=>{})}const lt=["get","getKey","getAll","getAllKeys","count"],ht=["put","add","delete","clear"],K=new Map;function z(s,e){if(!(s instanceof IDBDatabase&&!(e in s)&&typeof e=="string"))return;if(K.get(e))return K.get(e);const t=e.replace(/FromIndex$/,""),n=e!==t,a=ht.includes(t);if(!(t in(n?IDBIndex:IDBObjectStore).prototype)||!(a||lt.includes(t)))return;const r=async function(i,...c){const o=this.transaction(i,a?"readwrite":"readonly");let l=o.store;return n&&(l=l.index(c.shift())),(await Promise.all([l[t](...c),a&&o.done]))[0]};return K.set(e,r),r}at(s=>({...s,get:(e,t,n)=>z(e,t)||s.get(e,t,n),has:(e,t)=>!!z(e,t)||s.has(e,t)}));try{self["workbox:expiration:7.0.0"]&&_()}catch{}const ut="workbox-expiration",k="cache-entries",Y=s=>{const e=new URL(s,location.href);return e.hash="",e.href};class ft{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(k,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&ot(this._cacheName)}async setTimestamp(e,t){e=Y(e);const n={url:e,timestamp:t,cacheName:this._cacheName,id:this._getId(e)},r=(await this.getDb()).transaction(k,"readwrite",{durability:"relaxed"});await r.store.put(n),await r.done}async getTimestamp(e){const n=await(await this.getDb()).get(k,this._getId(e));return n==null?void 0:n.timestamp}async expireEntries(e,t){const n=await this.getDb();let a=await n.transaction(k).store.index("timestamp").openCursor(null,"prev");const r=[];let i=0;for(;a;){const o=a.value;o.cacheName===this._cacheName&&(e&&o.timestamp<e||t&&i>=t?r.push(a.value):i++),a=await a.continue()}const c=[];for(const o of r)await n.delete(k,o.id),c.push(o.url);return c}_getId(e){return this._cacheName+"|"+Y(e)}async getDb(){return this._db||(this._db=await ct(ut,1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class dt{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new ft(e)}async expireEntries(){if(this._isRunning){this._rerunRequested=!0;return}this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-this._maxAgeSeconds*1e3:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),n=await self.caches.open(this._cacheName);for(const a of t)await n.delete(a,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,te(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),n=Date.now()-this._maxAgeSeconds*1e3;return t!==void 0?t<n:!0}else return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}const g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},W=s=>[g.prefix,s,g.suffix].filter(e=>e&&e.length>0).join("-"),pt=s=>{for(const e of Object.keys(g))s(e)},gt={updateDetails:s=>{pt(e=>{typeof s[e]=="string"&&(g[e]=s[e])})},getGoogleAnalyticsName:s=>s||W(g.googleAnalytics),getPrecacheName:s=>s||W(g.precache),getPrefix:()=>g.prefix,getRuntimeName:s=>s||W(g.runtime),getSuffix:()=>g.suffix},mt=new Set;function wt(s){mt.add(s)}class yt{constructor(e={}){this.cachedResponseWillBeUsed=async({event:t,request:n,cacheName:a,cachedResponse:r})=>{if(!r)return null;const i=this._isResponseDateFresh(r),c=this._getCacheExpiration(a);te(c.expireEntries());const o=c.updateTimestamp(n.url);if(t)try{t.waitUntil(o)}catch{}return i?r:null},this.cacheDidUpdate=async({cacheName:t,request:n})=>{const a=this._getCacheExpiration(t);await a.updateTimestamp(n.url),await a.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&wt(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(e){if(e===gt.getRuntimeName())throw new Xe("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new dt(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(t===null)return!0;const n=Date.now();return t>=n-this._maxAgeSeconds*1e3}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),a=new Date(t).getTime();return isNaN(a)?null:a}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}try{self["workbox:routing:7.0.0"]&&_()}catch{}const ae="GET",T=s=>s&&typeof s=="object"?s:{handle:s};class P{constructor(e,t,n=ae){this.handler=T(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=T(e)}}class _t extends P{constructor(e,t,n){const a=({url:r})=>{const i=e.exec(r.href);if(i&&!(r.origin!==location.origin&&i.index!==0))return i.slice(1)};super(a,t,n)}}class Rt{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,n=this.handleRequest({request:t,event:e});n&&e.respondWith(n)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,n=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const r=new Request(...a);return this.handleRequest({request:r,event:e})}));e.waitUntil(n),e.ports&&e.ports[0]&&n.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const n=new URL(e.url,location.href);if(!n.protocol.startsWith("http"))return;const a=n.origin===location.origin,{params:r,route:i}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:n});let c=i&&i.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:n,request:e,event:t,params:r})}catch(h){l=Promise.reject(h)}const f=i&&i.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:n,request:e,event:t,params:r})}catch(b){b instanceof Error&&(h=b)}if(this._catchHandler)return this._catchHandler.handle({url:n,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:n,event:a}){const r=this._routes.get(n.method)||[];for(const i of r){let c;const o=i.match({url:e,sameOrigin:t,request:n,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:i,params:c}}return{}}setDefaultHandler(e,t=ae){this._defaultHandlerMap.set(t,T(e))}setCatchHandler(e){this._catchHandler=T(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new R("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new R("unregister-route-route-not-registered")}}let E;const bt=()=>(E||(E=new Rt,E.addFetchListener(),E.addCacheListener()),E);function N(s,e,t){let n;if(typeof s=="string"){const r=new URL(s,location.href),i=({url:c})=>c.href===r.href;n=new P(i,e,t)}else if(s instanceof RegExp)n=new _t(s,e,t);else if(typeof s=="function")n=new P(s,e,t);else if(s instanceof P)n=s;else throw new R("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return bt().registerRoute(n),n}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function L(s){return typeof s=="string"?new Request(s):s}class Ct{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new we,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let n=L(e);if(n.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const i=await t.preloadResponse;if(i)return i}const a=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const i of this.iterateCallbacks("requestWillFetch"))n=await i({request:n.clone(),event:t})}catch(i){if(i instanceof Error)throw new R("plugin-error-request-will-fetch",{thrownErrorMessage:i.message})}const r=n.clone();try{let i;i=await fetch(n,n.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))i=await c({event:t,request:r,response:i});return i}catch(i){throw a&&await this.runCallbacks("fetchDidFail",{error:i,event:t,originalRequest:a.clone(),request:r.clone()}),i}}async fetchAndCachePut(e){const t=await this.fetch(e),n=t.clone();return this.waitUntil(this.cachePut(e,n)),t}async cacheMatch(e){const t=L(e);let n;const{cacheName:a,matchOptions:r}=this._strategy,i=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},r),{cacheName:a});n=await caches.match(i,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await o({cacheName:a,matchOptions:r,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(e,t){const n=L(e);await Re(0);const a=await this.getCacheKey(n,"write");if(!t)throw new R("cache-put-with-no-response",{url:_e(a.url)});const r=await this._ensureResponseSafeToCache(t);if(!r)return!1;const{cacheName:i,matchOptions:c}=this._strategy,o=await self.caches.open(i),l=this.hasCallback("cacheDidUpdate"),f=l?await me(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?r.clone():r)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await ye(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:i,oldResponse:f,newResponse:r.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const n=`${e.url} | ${t}`;if(!this._cacheKeys[n]){let a=e;for(const r of this.iterateCallbacks("cacheKeyWillBeUsed"))a=L(await r({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[n]=a}return this._cacheKeys[n]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const n of this.iterateCallbacks(e))await n(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const n=this._pluginStateMap.get(t);yield r=>{const i=Object.assign(Object.assign({},r),{state:n});return t[e](i)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,n=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,n=!0,!t)break;return n||t&&t.status!==200&&(t=void 0),t}}class re{constructor(e={}){this.cacheName=ge.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,n=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,r=new Ct(this,{event:t,request:n,params:a}),i=this._getResponse(r,n,t),c=this._awaitComplete(i,r,n,t);return[i,c]}async _getResponse(e,t,n){await e.runCallbacks("handlerWillStart",{event:n,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new R("no-response",{url:t.url})}catch(r){if(r instanceof Error){for(const i of e.iterateCallbacks("handlerDidError"))if(a=await i({error:r,event:n,request:t}),a)break}if(!a)throw r}for(const r of e.iterateCallbacks("handlerWillRespond"))a=await r({event:n,request:t,response:a});return a}async _awaitComplete(e,t,n,a){let r,i;try{r=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:n,response:r}),await t.doneWaiting()}catch(c){c instanceof Error&&(i=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:n,response:r,error:i}),t.destroy(),i)throw i}}class ie extends re{async _handle(e,t){let n=await t.cacheMatch(e),a;if(!n)try{n=await t.fetchAndCachePut(e)}catch(r){r instanceof Error&&(a=r)}if(!n)throw new R("no-response",{url:e.url,error:a});return n}}const xt={cacheWillUpdate:async({response:s})=>s.status===200||s.status===0?s:null};class ce extends re{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(xt)}async _handle(e,t){const n=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(n);let a=await t.cacheMatch(e),r;if(!a)try{a=await n}catch(i){i instanceof Error&&(r=i)}if(!a)throw new R("no-response",{url:e.url,error:r});return a}}const H="sw-update-reload-times",oe="/lastUpdateMsgTimestamps",kt=10,Et=20*1e3;let le=!1;function Dt(s,e){let t;return(...n)=>{clearTimeout(t),t=setTimeout(()=>{s.apply(this,n)},e)}}function Ut(s,e=50,t=5e3){return new Promise(n=>{const a=Date.now(),r=()=>{s()||Date.now()-a>=t?n():setTimeout(r,e)};r()})}self.addEventListener("message",s=>{s.data&&s.data.type==="CLIENT_UPDATE_READY"&&(console.log("Service Worker: client ready"),le=!0)});async function Lt(s){const t=await(await caches.open(H)).match(`${oe}-${s}`);if(t)try{const n=await t.text();return JSON.parse(n)}catch{return[]}return[]}async function Pt(s,e){const t=await caches.open(H);if((await t.keys()).length>100){await caches.delete(H);return}const a=new Response(JSON.stringify(s));await t.put(`${oe}-${e}`,a)}const vt=Dt(async()=>{(await self.clients.matchAll()).forEach(e=>{e.postMessage({type:"SW_DOCUMENT_UPDATED"})})},100),X=/updatedAt:\s*\d+,/g,Tt={cacheDidUpdate:async({request:s,oldResponse:e,newResponse:t})=>{if(e)try{let n=await e.clone().text(),a=await t.clone().text();if(s.url.includes("__blocklet__.js")&&(n=n.replace(X,"updatedAt: ,"),a=a.replace(X,"updatedAt: ,")),n!==a){const r=Date.now(),c=(await Lt(s.url)).filter(o=>r-o<Et);if(c.length>=kt){console.warn("[SW] update too frequent, skip:",s.url);return}await Ut(()=>le),await Pt(c,s.url),console.log("[SW] document version or session updated",s.url),vt()}}catch(n){console.error("[SW] Error comparing document responses:",n)}}};Qe(([{"revision":null,"url":"assets/access-control-BhxOcGdx.js"},{"revision":null,"url":"assets/actions-DP7pj6xB.js"},{"revision":null,"url":"assets/AdapterDayjs-CDDcwz3P.js"},{"revision":null,"url":"assets/add-component-core-D-IRi6XF.css"},{"revision":null,"url":"assets/add-component-core-XUReAzat.js"},{"revision":null,"url":"assets/add-resource-C3kDcfBw.js"},{"revision":null,"url":"assets/addon-CRj4Enw7.js"},{"revision":null,"url":"assets/advanced-hz-KSWn2.js"},{"revision":null,"url":"assets/api-BjteVZFg.js"},{"revision":null,"url":"assets/appearance-ChvtVBNv.js"},{"revision":null,"url":"assets/ar-CHiV3Onz.js"},{"revision":null,"url":"assets/ar-CSZJf27k.js"},{"revision":null,"url":"assets/ArrowDropDown-DPqiF9Rw.js"},{"revision":null,"url":"assets/audit-logs-DXoc97BV.js"},{"revision":null,"url":"assets/authorize-_fbQ19S4.js"},{"revision":null,"url":"assets/base-chart-D6qRW4Yg.js"},{"revision":null,"url":"assets/base32-WurN0cIW.js"},{"revision":null,"url":"assets/branding-DpkSF6dd.js"},{"revision":null,"url":"assets/branding-DuPWVNlC.js"},{"revision":null,"url":"assets/bundle-avatar-D4fwror8.js"},{"revision":null,"url":"assets/button-_1HExv7r.js"},{"revision":null,"url":"assets/CheckCircle-Caqp5gKY.js"},{"revision":null,"url":"assets/ChevronLeft-DONyUbIg.js"},{"revision":null,"url":"assets/ChevronRight-DgAwWLdY.js"},{"revision":null,"url":"assets/click-to-copy-R7MF4AwY.js"},{"revision":null,"url":"assets/cloneDeep-UpFQ2VNg.js"},{"revision":null,"url":"assets/collapse-l9wHY9gJ.js"},{"revision":null,"url":"assets/Community-BnAsVqMr.js"},{"revision":null,"url":"assets/complete-C5D4D-fJ.js"},{"revision":null,"url":"assets/component-CURpjZJ2.js"},{"revision":null,"url":"assets/config-Cd14MJHa.js"},{"revision":null,"url":"assets/config-e36Xplpo.js"},{"revision":null,"url":"assets/config-navigation-BvjYZI_j.js"},{"revision":null,"url":"assets/config-space-EoSm62Er.js"},{"revision":null,"url":"assets/confirm-Vzr2I9eM.js"},{"revision":null,"url":"assets/connect-B5Xr7MId.js"},{"revision":null,"url":"assets/connect-DXOsnqkO.js"},{"revision":null,"url":"assets/connect-to-Bz9wYM04.js"},{"revision":null,"url":"assets/content-layout-fV4nyVb5.js"},{"revision":null,"url":"assets/dark-animation-DhFa8I7D.js"},{"revision":null,"url":"assets/dashboard-xUr1SbPS.js"},{"revision":null,"url":"assets/de-C-F2uwju.js"},{"revision":null,"url":"assets/de-CA1MfHz7.js"},{"revision":null,"url":"assets/default-animation-DARmPWCI.js"},{"revision":null,"url":"assets/delete-confirm-DNn4Os6R.js"},{"revision":null,"url":"assets/DeleteOutline-DpNyWtNL.js"},{"revision":null,"url":"assets/did-address-Dq-4__HB.js"},{"revision":null,"url":"assets/domain-action-card-Cf1AoKOi.js"},{"revision":null,"url":"assets/domain-XXgOrJDa.js"},{"revision":null,"url":"assets/domains-DeFj6Ipl.js"},{"revision":null,"url":"assets/Done-BTd13H2U.js"},{"revision":null,"url":"assets/dot-itVN8XTt.js"},{"revision":null,"url":"assets/Download-Bm8sKXA2.js"},{"revision":null,"url":"assets/Edit-CUl1Rt8i.js"},{"revision":null,"url":"assets/EditIcon-8BXW1OHp.js"},{"revision":null,"url":"assets/Email-BirbvqZ3.js"},{"revision":null,"url":"assets/email-BIVfXnpk.js"},{"revision":null,"url":"assets/empty-spinner-BdaCO6xq.js"},{"revision":null,"url":"assets/Error-DEKvwVoF.js"},{"revision":null,"url":"assets/es-B2TJqtV4.js"},{"revision":null,"url":"assets/es-CXgvF2gS.js"},{"revision":null,"url":"assets/exchange-passport-C9Pvr9Da.js"},{"revision":null,"url":"assets/ExpandLess-t1cH-Bc4.js"},{"revision":null,"url":"assets/fr-CzO5Th4h.js"},{"revision":null,"url":"assets/fr-DN38boH3.js"},{"revision":null,"url":"assets/fuel-Cs--pEYt.js"},{"revision":null,"url":"assets/gen-access-key-CIzULsBE.js"},{"revision":null,"url":"assets/get-safe-url-c4iAcpvA.js"},{"revision":null,"url":"assets/get-safe-url-Q70tRxL7.js"},{"revision":null,"url":"assets/Google-Bn3zPWiu.js"},{"revision":null,"url":"assets/hi-5tixPGqk.js"},{"revision":null,"url":"assets/hi-lZ18vyMl.js"},{"revision":null,"url":"assets/Holiday-C4KRd5t6.js"},{"revision":null,"url":"assets/home-BZ8WpcWZ.js"},{"revision":null,"url":"assets/Home-C3ax1tQ7.js"},{"revision":null,"url":"assets/id-CIDM1ypY.js"},{"revision":null,"url":"assets/id-QM66qYoI.js"},{"revision":null,"url":"assets/iframe-Dl8NEFc5.js"},{"revision":null,"url":"assets/index-8eXqqyHQ.js"},{"revision":null,"url":"assets/index-AgKpYdvC.css"},{"revision":null,"url":"assets/index-B7IOoVDF.js"},{"revision":null,"url":"assets/index-BCJADuMw.js"},{"revision":null,"url":"assets/index-BKKwhjBs.js"},{"revision":null,"url":"assets/index-BmXcRfZR.js"},{"revision":null,"url":"assets/index-BoTgqYtV.js"},{"revision":null,"url":"assets/index-Bs1kxR8_.js"},{"revision":null,"url":"assets/index-BU2FTGFr.js"},{"revision":null,"url":"assets/index-BUHyq-oP.js"},{"revision":null,"url":"assets/index-C0Iiqot3.css"},{"revision":null,"url":"assets/index-C64IgZKt.js"},{"revision":null,"url":"assets/index-CPE8Apzb.js"},{"revision":null,"url":"assets/index-CsXmgylH.js"},{"revision":null,"url":"assets/index-D-Lxloq5.js"},{"revision":null,"url":"assets/index-D1kTR2xk.js"},{"revision":null,"url":"assets/index-D2uDBC1o.js"},{"revision":null,"url":"assets/index-DBqLPDUh.js"},{"revision":null,"url":"assets/index-DDoVX3je.js"},{"revision":null,"url":"assets/index-DDXNOodN.js"},{"revision":null,"url":"assets/index-DOq-_YXu.css"},{"revision":null,"url":"assets/index-Drd9jydY.js"},{"revision":null,"url":"assets/index-Dsd9SXVN.js"},{"revision":null,"url":"assets/index-DvBh35bh.js"},{"revision":null,"url":"assets/index-DVQCgvFb.js"},{"revision":null,"url":"assets/index-I6_gMaPh.js"},{"revision":null,"url":"assets/index-iB7JyXwh.js"},{"revision":null,"url":"assets/index-J3Tqz9ZT.js"},{"revision":null,"url":"assets/index-RsjqbOR7.js"},{"revision":null,"url":"assets/index-U3mAyHwS.js"},{"revision":null,"url":"assets/index-W_fQ-nuf.js"},{"revision":null,"url":"assets/index-wLX5GW2c.js"},{"revision":null,"url":"assets/InfoOutlined-D3XnF0Vg.js"},{"revision":null,"url":"assets/invitation-Dsnc8lab.js"},{"revision":null,"url":"assets/invite-CvAru4rZ.js"},{"revision":null,"url":"assets/issue-passport-CDE6vHUE.js"},{"revision":null,"url":"assets/item-rXnALS3b.js"},{"revision":null,"url":"assets/ja-C8AmHPMo.js"},{"revision":null,"url":"assets/ja-pJLB4V2E.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-D2NP5Ixe.js"},{"revision":null,"url":"assets/ko-xDWtmcv7.js"},{"revision":null,"url":"assets/landing-page-DrVLCVAm.js"},{"revision":null,"url":"assets/Launch-Dz9mQnYC.js"},{"revision":null,"url":"assets/launch-result-message-FuvJDCvp.js"},{"revision":null,"url":"assets/LaunchOutlined-E7HcQu_6.js"},{"revision":null,"url":"assets/layout-DYG0Wl7R.js"},{"revision":null,"url":"assets/list-b96sX5Y6.js"},{"revision":null,"url":"assets/list-DLMy1vVs.js"},{"revision":null,"url":"assets/list-header-xt282ZMS.js"},{"revision":null,"url":"assets/localization-Bb0kc8SQ.js"},{"revision":null,"url":"assets/Location-DxPzfR_p.js"},{"revision":null,"url":"assets/LockIcon-DFb6sSpT.js"},{"revision":null,"url":"assets/log-Bwqh69bM.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/logger-BAVOmOw2.js"},{"revision":null,"url":"assets/login-oauth-callback-BrnNJIOK.js"},{"revision":null,"url":"assets/login-Ygmj8_J7.js"},{"revision":null,"url":"assets/logo-uploader-CLwbDhA_.js"},{"revision":null,"url":"assets/lost-passport-CqzPSoLw.js"},{"revision":null,"url":"assets/lottie-error-CMOXHtBH.js"},{"revision":null,"url":"assets/lottie-loading-o-GBrhM9.js"},{"revision":null,"url":"assets/lottie-react.esm-D2t-u0YU.js"},{"revision":null,"url":"assets/lottie-web-jYmAQWuC.js"},{"revision":null,"url":"assets/lottie-welcome-C9B95FIi.js"},{"revision":null,"url":"assets/Meeting-DCL_ygud.js"},{"revision":null,"url":"assets/MoreHoriz-DpKn_fkc.js"},{"revision":null,"url":"assets/OffSick-DvgkmCUP.js"},{"revision":null,"url":"assets/omit-D2k92RIF.js"},{"revision":null,"url":"assets/open-window-Bl24RBAD.js"},{"revision":null,"url":"assets/overview-DqabCKYi.js"},{"revision":null,"url":"assets/page-header-BWqvvXOk.js"},{"revision":null,"url":"assets/passport-item-C5-ZuTPM.js"},{"revision":null,"url":"assets/permission-DSHe73ba.js"},{"revision":null,"url":"assets/Phone-BkOMNOMO.js"},{"revision":null,"url":"assets/PlayArrow-CDOOUxMp.js"},{"revision":null,"url":"assets/preferences-BzGNV3pM.js"},{"revision":null,"url":"assets/profile-embed-iA-d50c3.js"},{"revision":null,"url":"assets/pt-D1apbJwE.js"},{"revision":null,"url":"assets/pt-DSj10b9i.js"},{"revision":null,"url":"assets/publish-resource-ebKgw7OW.js"},{"revision":null,"url":"assets/QuestionMarkCircle-DTGyWFVS.js"},{"revision":null,"url":"assets/raf-schd.esm-B3j6BePR.js"},{"revision":null,"url":"assets/react-beautiful-dnd.esm-Ck4xzwyU.js"},{"revision":null,"url":"assets/ru-BNuzbw_f.js"},{"revision":null,"url":"assets/ru-D2AG9Iea.js"},{"revision":null,"url":"assets/runtime-B454s6Gb.js"},{"revision":null,"url":"assets/sdk-DeS3iq37.js"},{"revision":null,"url":"assets/section-Ccxg0x_Y.js"},{"revision":null,"url":"assets/security-DCArL_za.js"},{"revision":null,"url":"assets/session-C_8V_o-O.js"},{"revision":null,"url":"assets/setup-CX2pUl2y.js"},{"revision":null,"url":"assets/shorten-label-DPIZ5X7v.js"},{"revision":null,"url":"assets/simple-select-CN3fsa56.js"},{"revision":null,"url":"assets/slicedToArray-DmqXMnHT.js"},{"revision":null,"url":"assets/spaces-DApg1wzn.js"},{"revision":null,"url":"assets/start-Dhbx5j_D.js"},{"revision":null,"url":"assets/starting-progress-BHUTOY2b.js"},{"revision":null,"url":"assets/status-D4K-kiXO.js"},{"revision":null,"url":"assets/step-actions-CISMVGx2.js"},{"revision":null,"url":"assets/studio-1mTu0Fgs.js"},{"revision":null,"url":"assets/switch-control-CpCSorUo.js"},{"revision":null,"url":"assets/table-tips-BfSSGl9N.js"},{"revision":null,"url":"assets/th-CRGgyPc5.js"},{"revision":null,"url":"assets/th-CsJSfFsn.js"},{"revision":null,"url":"assets/Timezone-D91Of94T.js"},{"revision":null,"url":"assets/traffic-BqHyn9L9.js"},{"revision":null,"url":"assets/transfer-Bqv1gMqL.js"},{"revision":null,"url":"assets/TuneOutlined-D0gGDoIJ.js"},{"revision":null,"url":"assets/unsubscribe-B3OLQIVA.js"},{"revision":null,"url":"assets/use-blocklet-logo-Bhkp-Zm7.js"},{"revision":null,"url":"assets/use-mobile-BAa0wi8o.js"},{"revision":null,"url":"assets/use-mobile-C21X4TYN.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/use-server-logo-CxuMvwKh.js"},{"revision":null,"url":"assets/useAsync-510ntT1B.js"},{"revision":null,"url":"assets/useLocalStorage-D6gvgmEW.js"},{"revision":null,"url":"assets/user-center-vIx28YXm.js"},{"revision":null,"url":"assets/useSetState-CWq0AVWn.js"},{"revision":null,"url":"assets/util-DMfPwzVN.js"},{"revision":null,"url":"assets/util-Dnkhck-D.js"},{"revision":null,"url":"assets/vendor-arcblock-BlrkGjK9.js"},{"revision":null,"url":"assets/vendor-hooks-BgUTpb6X.js"},{"revision":null,"url":"assets/vendor-mui-core-BV2FUxWJ.js"},{"revision":null,"url":"assets/vendor-mui-x-Bo-XOtzq.js"},{"revision":null,"url":"assets/vendor-react-DEoibe3W.js"},{"revision":null,"url":"assets/vendor-utils-rHXShPKm.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-2jRoUb28.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-DpSGLE7B.css"},{"revision":null,"url":"assets/vi-Ce8JEW56.js"},{"revision":null,"url":"assets/vi-IIi6v-et.js"},{"revision":null,"url":"assets/ViewList-C8G9e3ft.js"},{"revision":null,"url":"assets/WorkingRemotely-CpchWcXV.js"},{"revision":null,"url":"assets/wrap-locale-C_UOH97U.js"},{"revision":null,"url":"assets/zh-DQX0RFjY.js"},{"revision":null,"url":"assets/zh-S-Nv5zr-.js"},{"revision":null,"url":"assets/zh-tw-6n1CYpHc.js"},{"revision":null,"url":"assets/zh-tw-C-FYOTmO.js"},{"revision":"8863885115aac08b1d13140301d7c181","url":"index.html"},{"revision":"629a14a7e3397a134f5a30b5dc735183","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"8f9b8997bf5804519b8e9f8dd1bb6ef9","url":"share/shared-bridge.html"},{"revision":"3c1549cff96a2d2baec44397663c083e","url":"share/shared-service-worker.js"},{"revision":"19d4c6a99cb8ed11e68209a612e7ec44","url":"share/workbox-v7.3.0/workbox-background-sync.prod.js"},{"revision":"d9d631014689e2b4b0e343c129671749","url":"share/workbox-v7.3.0/workbox-broadcast-update.prod.js"},{"revision":"bdb39ceb7380dcb1483c543e8856242b","url":"share/workbox-v7.3.0/workbox-cacheable-response.prod.js"},{"revision":"b84dd900eb18e8bc842666bbb740604e","url":"share/workbox-v7.3.0/workbox-core.prod.js"},{"revision":"c582a61c037234d8283eea0b97693b1b","url":"share/workbox-v7.3.0/workbox-expiration.prod.js"},{"revision":"866ba7d03bd871fa990976e4db312ab3","url":"share/workbox-v7.3.0/workbox-navigation-preload.prod.js"},{"revision":"0c55bb581ea7ce5ebfac1ce95cdda21f","url":"share/workbox-v7.3.0/workbox-offline-ga.prod.js"},{"revision":"770d183cf1f189a1ceb11ba8b5d808fa","url":"share/workbox-v7.3.0/workbox-precaching.prod.js"},{"revision":"295decbe1eb3b073a2a8d67cfbdf5692","url":"share/workbox-v7.3.0/workbox-range-requests.prod.js"},{"revision":"0bcb90677f3508ebc8a3571d14194478","url":"share/workbox-v7.3.0/workbox-recipes.prod.js"},{"revision":"4af96b70b2d20b041e2edd7ef1a8ef27","url":"share/workbox-v7.3.0/workbox-routing.prod.js"},{"revision":"c78c21b4058a1134ad3e12286c57cb2f","url":"share/workbox-v7.3.0/workbox-strategies.prod.js"},{"revision":"7eeb2d820d409221e076d31951fdcf79","url":"share/workbox-v7.3.0/workbox-streams.prod.js"},{"revision":"aa7368887577b9719a46b585d5dcc7a5","url":"share/workbox-v7.3.0/workbox-sw.js"},{"revision":"e768668db4eeefde11b58542900ab2ad","url":"share/workbox-v7.3.0/workbox-window.prod.umd.js"},{"revision":"f272d080151aa40322ce1603c6261ec1","url":"manifest.webmanifest"}]||[]).filter(s=>s.url!=="/"&&!s.url.includes("index.html")));be();self.addEventListener("activate",()=>{console.log("Service Worker activated")});self.addEventListener("install",s=>{console.log("Service Worker installed"),s.waitUntil(self.skipWaiting())});const he=s=>!!(s.method!=="GET"||s.url.includes("/api")||s.url.includes("__meta__.js")||s.url.includes("__blocklet__.js"));N(({request:s})=>he(s)?!1:s.url.includes("/static/"),new ie({cacheName:`static-${self.registration.scope}`,plugins:[new yt({maxEntries:200})]}));N(({request:s,url:e})=>{var t,n;return(n=(t=self.blocklet)==null?void 0:t.canCache)!=null&&n.call(t,{url:e})?["image","font","style","script"].includes(s.destination):!1},new ie({cacheName:`static-resources-${self.registration.scope}`}));N(({request:s})=>he(s)?!1:s.url.includes("/images/")||s.url.includes("/router/-template-styles/"),new ce({cacheName:`StaleWhileRevalidate-${self.registration.scope}`}));const Nt={cacheKeyWillBeUsed({request:s}){const e=new URL(s.url);return s.destination==="document"&&e.pathname.startsWith("/.well-known/service/admin")?(e.pathname="/.well-known/service/admin",e.search="",e.toString()):s.url}},w={};N(({request:s})=>{const e=new URL(s.url);return s.destination==="document"&&e.pathname.startsWith("/.well-known/service/admin")?(Object.keys(w).forEach(t=>delete w[t]),!0):!w.env&&s.url.includes(".well-known/service/api/env")?(w.env=!0,!0):!w.session&&s.url.includes(".well-known/service/api/did/session")?(w.session=!0,!0):!w.blocklet&&s.url.endsWith("__blocklet__.js")?(w.blocklet=!0,!0):!1},new ce({cacheName:`documents-${self.registration.scope}`,plugins:[Tt,Nt]}));
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.16.44-beta-20250528-003415-7a5e5d90",
6
+ "version": "1.16.44-beta-20250529-223630-10e16ac8",
7
7
  "description": "Provide unified services for every blocklet",
8
8
  "main": "api/index.js",
9
9
  "files": [
@@ -33,17 +33,17 @@
33
33
  "author": "wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)",
34
34
  "license": "Apache-2.0",
35
35
  "dependencies": {
36
- "@abtnode/analytics": "1.16.44-beta-20250528-003415-7a5e5d90",
37
- "@abtnode/auth": "1.16.44-beta-20250528-003415-7a5e5d90",
38
- "@abtnode/client": "1.16.44-beta-20250528-003415-7a5e5d90",
39
- "@abtnode/connect-storage": "1.16.44-beta-20250528-003415-7a5e5d90",
40
- "@abtnode/constant": "1.16.44-beta-20250528-003415-7a5e5d90",
41
- "@abtnode/core": "1.16.44-beta-20250528-003415-7a5e5d90",
42
- "@abtnode/cron": "1.16.44-beta-20250528-003415-7a5e5d90",
43
- "@abtnode/logger": "1.16.44-beta-20250528-003415-7a5e5d90",
44
- "@abtnode/models": "1.16.44-beta-20250528-003415-7a5e5d90",
45
- "@abtnode/router-templates": "1.16.44-beta-20250528-003415-7a5e5d90",
46
- "@abtnode/util": "1.16.44-beta-20250528-003415-7a5e5d90",
36
+ "@abtnode/analytics": "1.16.44-beta-20250529-223630-10e16ac8",
37
+ "@abtnode/auth": "1.16.44-beta-20250529-223630-10e16ac8",
38
+ "@abtnode/client": "1.16.44-beta-20250529-223630-10e16ac8",
39
+ "@abtnode/connect-storage": "1.16.44-beta-20250529-223630-10e16ac8",
40
+ "@abtnode/constant": "1.16.44-beta-20250529-223630-10e16ac8",
41
+ "@abtnode/core": "1.16.44-beta-20250529-223630-10e16ac8",
42
+ "@abtnode/cron": "1.16.44-beta-20250529-223630-10e16ac8",
43
+ "@abtnode/logger": "1.16.44-beta-20250529-223630-10e16ac8",
44
+ "@abtnode/models": "1.16.44-beta-20250529-223630-10e16ac8",
45
+ "@abtnode/router-templates": "1.16.44-beta-20250529-223630-10e16ac8",
46
+ "@abtnode/util": "1.16.44-beta-20250529-223630-10e16ac8",
47
47
  "@arcblock/did": "1.20.11",
48
48
  "@arcblock/did-auth": "1.20.11",
49
49
  "@arcblock/did-ext": "1.20.11",
@@ -53,19 +53,19 @@
53
53
  "@arcblock/jwt": "1.20.11",
54
54
  "@arcblock/validator": "1.20.11",
55
55
  "@arcblock/ws": "1.20.11",
56
- "@blocklet/constant": "1.16.44-beta-20250528-003415-7a5e5d90",
56
+ "@blocklet/constant": "1.16.44-beta-20250529-223630-10e16ac8",
57
57
  "@blocklet/dbhub": "^0.2.9",
58
58
  "@blocklet/did-space-js": "^1.0.56",
59
- "@blocklet/env": "1.16.44-beta-20250528-003415-7a5e5d90",
59
+ "@blocklet/env": "1.16.44-beta-20250529-223630-10e16ac8",
60
60
  "@blocklet/error": "^0.2.4",
61
61
  "@blocklet/form-builder": "^0.1.11",
62
62
  "@blocklet/form-collector": "^0.1.8",
63
- "@blocklet/images": "1.16.44-beta-20250528-003415-7a5e5d90",
64
- "@blocklet/js-sdk": "1.16.44-beta-20250528-003415-7a5e5d90",
63
+ "@blocklet/images": "1.16.44-beta-20250529-223630-10e16ac8",
64
+ "@blocklet/js-sdk": "1.16.44-beta-20250529-223630-10e16ac8",
65
65
  "@blocklet/mcp": "^1.10.2",
66
- "@blocklet/meta": "1.16.44-beta-20250528-003415-7a5e5d90",
67
- "@blocklet/sdk": "1.16.44-beta-20250528-003415-7a5e5d90",
68
- "@blocklet/theme": "^2.13.54",
66
+ "@blocklet/meta": "1.16.44-beta-20250529-223630-10e16ac8",
67
+ "@blocklet/sdk": "1.16.44-beta-20250529-223630-10e16ac8",
68
+ "@blocklet/theme": "^2.13.55",
69
69
  "@blocklet/theme-builder": "^0.1.19",
70
70
  "@blocklet/uploader-server": "^0.1.99",
71
71
  "@blocklet/xss": "^0.1.36",
@@ -120,16 +120,16 @@
120
120
  "whatwg-url": "14.0.0"
121
121
  },
122
122
  "devDependencies": {
123
- "@abtnode/ux": "1.16.44-beta-20250528-003415-7a5e5d90",
124
- "@arcblock/bridge": "^2.13.54",
125
- "@arcblock/did-connect": "^2.13.54",
126
- "@arcblock/icons": "^2.13.54",
127
- "@arcblock/react-hooks": "^2.13.54",
128
- "@arcblock/ux": "^2.13.54",
129
- "@blocklet/launcher-layout": "^2.13.54",
130
- "@blocklet/payment-react": "^1.18.47",
131
- "@blocklet/tracker": "1.16.44-beta-20250528-003415-7a5e5d90",
132
- "@blocklet/ui-react": "^2.13.54",
123
+ "@abtnode/ux": "1.16.44-beta-20250529-223630-10e16ac8",
124
+ "@arcblock/bridge": "^2.13.55",
125
+ "@arcblock/did-connect": "^2.13.55",
126
+ "@arcblock/icons": "^2.13.55",
127
+ "@arcblock/react-hooks": "^2.13.55",
128
+ "@arcblock/ux": "^2.13.55",
129
+ "@blocklet/launcher-layout": "^2.13.55",
130
+ "@blocklet/payment-react": "^1.18.48",
131
+ "@blocklet/tracker": "1.16.44-beta-20250529-223630-10e16ac8",
132
+ "@blocklet/ui-react": "^2.13.55",
133
133
  "@blocklet/uploader": "^0.1.93",
134
134
  "@emotion/react": "^11.11.4",
135
135
  "@emotion/styled": "^11.11.5",
@@ -206,5 +206,5 @@
206
206
  "url": "https://github.com/ArcBlock/blocklet-server/issues",
207
207
  "email": "shijun@arcblock.io"
208
208
  },
209
- "gitHead": "095d89d3b8e40dc1d956203cac94a45a4a843024"
209
+ "gitHead": "381ba5459e32dd7bc94f7ea62df65b72644d6d16"
210
210
  }
@@ -1,15 +0,0 @@
1
- const { ROLES } = require('@abtnode/constant');
2
-
3
- module.exports = (req, res, next) => {
4
- if (!req.user) {
5
- res.status(401).json({ code: 'forbidden', error: 'not authorized' });
6
- return;
7
- }
8
-
9
- if (![ROLES.OWNER, ROLES.ADMIN].includes(req.user.role)) {
10
- res.status(403).json({ code: 'forbidden', error: 'no permission' });
11
- return;
12
- }
13
-
14
- next();
15
- };
@@ -1 +0,0 @@
1
- import{A as p,J as _}from"./vendor-utils-rHXShPKm.js";import{j}from"./vendor-ux-did-connect-DIlRfE_S.js";import{r as e}from"./vendor-react-DEoibe3W.js";import{D as C,G as T}from"./index-YbYWmpAT.js";import{u as B}from"./use-mobile-C21X4TYN.js";import{e as k,j as o,aa as h,ab as H}from"./vendor-mui-core-BV2FUxWJ.js";import"./vendor-hooks-BgUTpb6X.js";import"./lottie-web-jYmAQWuC.js";import"./vendor-arcblock-DuPySS9V.js";function $(){const{info:g,inService:m}=C(),{did:E}=T(),c=e.useRef(null),s=k(),[w,x]=e.useState(0),f=B(),[i,y]=e.useState(!0),d=e.useRef(null);let r="";m?r=j.WELLKNOWN_SERVICE_PATH_PREFIX:r=g.routing.adminPath;const l=new URLSearchParams;m||l.set("authKey","__sst"),l.set("schemaKey",p(window.location.origin,r,`/api/theme?id=${encodeURIComponent(E)}`));const a=e.useCallback(()=>{if(d.current){const n=window.location.origin,t=_(JSON.parse(JSON.stringify(s)),["palette","typography","shape","direction","breakpoints","mixins","shadows","transitions","zIndex"]);d.current.contentWindow.postMessage({type:"SEND_THEME",payload:t},n)}},[s]);return e.useEffect(()=>{const n=t=>{t.origin===window.location.origin&&(t.data.type==="REQUEST_THEME"&&a(),t.data.type==="THEME_BUILDER_LOADED"&&y(!1))};return window.addEventListener("message",n),()=>{window.removeEventListener("message",n)}},[a]),e.useEffect(()=>{i===!1&&a()},[s,i,a]),e.useEffect(()=>{const n=document.querySelector("#arc__dashboard-main"),t=document.querySelector(".dashboard-content"),u=()=>{if(c.current){const{height:R}=n.getBoundingClientRect(),{top:S}=t.getBoundingClientRect(),{top:L}=c.current.getBoundingClientRect(),b=R-L+S-(f?108:164);x(b)}};return u(),window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u)}},[f,s]),o.jsxs(o.Fragment,{children:[o.jsx(h,{ref:c}),i&&o.jsx(h,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"500px"},children:o.jsx(H,{})}),o.jsx("iframe",{title:"Theme Builder",ref:d,src:`${p(window.location.origin,r,"/hosted/theme-builder/")}?${l.toString()}`,style:{border:0,width:"100%",height:`${w}px`,display:i?"none":"block"}})]})}export{$ as default};
@@ -1 +0,0 @@
1
- import{v as R,j as e,aa as t,ab as I,y as d,T as a,bc as W,ad as L,bQ as D,bs as E,bR as O,X as T,be as y,al as F}from"./vendor-mui-core-BV2FUxWJ.js";import{r as _}from"./vendor-react-DEoibe3W.js";import{x as B}from"./vendor-hooks-BgUTpb6X.js";import{A as U}from"./vendor-utils-rHXShPKm.js";import{a as H,bj as M,z as w,j as v}from"./vendor-ux-did-connect-DIlRfE_S.js";import{L as x}from"./landing-page-BOy_W1aP.js";import{R as Q,H as X}from"./vendor-arcblock-DuPySS9V.js";import{W as G}from"./did-address-BlAXR08O.js";import{d as K}from"./Home-BaA3V3I7.js";import{u as V,d as Y}from"./index-YbYWmpAT.js";import"./lottie-web-jYmAQWuC.js";function oe(){var g,j,f,b;const{searchParams:i}=new URL(window.location.href),{session:o}=V(),{t:c}=H(),u=i.get("client_id"),C=i.get("scope")||"profile:read",[m,k]=_.useState(C.split(" ").filter(Boolean)),S=R("(max-width: 600px)"),A=U(window.location.origin,v.WELLKNOWN_SERVICE_PATH_PREFIX,"/oauth/authorize"),[h,p]=B({client:null,loading:!0});_.useEffect(()=>{(async()=>{const{data:n}=await Y.get("/oauth/client",{params:{clientId:u}});p({client:n,loading:!1})})()},[u,p]);const z=s=>{s!=="profile:read"&&k(n=>n.includes(s)?n.filter(P=>P!==s):[...n,s])};if(h.loading||!(o!=null&&o.user))return e.jsx(x,{did:(g=window.blocklet)==null?void 0:g.appPid,standalone:!0,children:e.jsx(t,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100%"},children:e.jsx(I,{})})});if(!h.client)return e.jsx(x,{did:(j=window.blocklet)==null?void 0:j.appPid,standalone:!0,children:e.jsx(t,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100%"},children:e.jsx(Q,{style:{backgroundColor:"transparent"},status:"error",title:c("notFoundOauthClient"),extra:e.jsx(d,{variant:"outlined",color:"primary",size:"small",startIcon:e.jsx(K,{}),href:"/",style:{borderRadius:4},children:c("connectCli.home")})})})});const{client:r}=h,{user:l}=o,N=(r.scope||"").split(" ");return e.jsxs(x,{did:(f=window.blocklet)==null?void 0:f.appPid,standalone:!0,children:[e.jsx(X,{children:e.jsx("title",{children:c("oauth.authorize")})}),e.jsx(M,{hideCloseButton:!0,children:e.jsxs(t,{sx:{display:"flex",flexDirection:"column",p:{xs:2,lg:3,xl:4},pt:{xs:3,xl:4},bgcolor:"background.paper"},className:"page-authorize",children:[e.jsxs(t,{sx:{textAlign:"center",mb:2},children:[e.jsxs(t,{sx:{display:"flex",alignItems:"center",justifyContent:"center",mb:2},children:[e.jsx(w,{src:(b=window.blocklet)==null?void 0:b.appLogo,alt:"Server",width:48,height:48}),e.jsxs(t,{sx:{mx:2,display:"flex",alignItems:"center","& .dot":{width:8,height:8,borderRadius:"50%",bgcolor:"divider",mx:.5}},children:[e.jsx(t,{className:"dot"}),e.jsx(t,{className:"dot"}),e.jsx(t,{className:"dot"})]}),e.jsx(w,{src:r.logo_uri,alt:r.client_name,width:48,height:48})]}),e.jsxs(a,{sx:{mb:1,fontSize:"1.2rem","& .app-name":{color:"primary.main"}},children:["Authorize ",e.jsx("span",{className:"app-name",children:r.client_name})]})]}),e.jsxs(t,{sx:{display:"flex",alignItems:"center",width:"100%",overflow:"hidden",mb:3,p:2,border:"1px solid",borderColor:"divider",borderRadius:1},className:"info",children:[e.jsx(W,{src:l.avatar,style:{width:48,height:48,backgroundColor:"transparent",marginRight:16}}),e.jsxs(t,{sx:{flex:1,overflow:"hidden"},children:[e.jsx(L,{title:l.fullName,children:e.jsx(t,{className:"name",sx:{flex:1,overflow:"hidden",textOverflow:"ellipsis"},children:l.fullName})}),e.jsx(t,{className:"did",children:e.jsx(G,{compact:!0,responsive:!1,did:l.did,showQrcode:!S})})]})]}),e.jsxs(a,{variant:"subtitle1",sx:{mb:2,fontWeight:500},children:["Allow ",r.client_name," to do the following on your behalf:"]}),e.jsxs(t,{sx:{border:"1px solid",borderColor:"divider",borderRadius:2,overflow:"hidden"},children:[e.jsx(t,{sx:{p:2},children:e.jsx(D,{children:Object.entries(v.OAUTH_SCOPES).filter(([s])=>N.includes(s)).map(([s,n])=>e.jsx(E,{control:e.jsx(O,{checked:m.includes(s),onChange:()=>z(s),disabled:s==="profile:read"||["blocklet:read","blocklet:write"].includes(s)&&!["owner","admin","member"].includes(l.role),color:"primary",sx:{"&.Mui-checked":{color:"success.main"}}}),label:e.jsx(t,{children:e.jsx(a,{variant:"body1",sx:{fontWeight:500},children:n})}),sx:{mb:0}},s))})}),(r.tos_uri||r.policy_uri)&&e.jsxs(e.Fragment,{children:[e.jsx(T,{}),e.jsx(t,{sx:{height:1,bgcolor:"divider"}}),e.jsx(t,{sx:{p:2,color:"text.secondary"},children:e.jsxs(a,{variant:"body2",children:["By authorize the access, you also agree with the"," ",!!r.tos_uri&&e.jsx(y,{href:r.tos_uri,target:"_blank",children:"Terms of Use"}),!!r.tos_uri&&!!r.policy_uri&&" and ",!!r.policy_uri&&e.jsx(y,{href:r.policy_uri,target:"_blank",children:"Privacy Policy"})]})})]})]}),e.jsxs("form",{method:"POST",action:A,children:[i.get("client_id")&&e.jsx("input",{type:"hidden",name:"client_id",value:i.get("client_id")}),i.get("response_type")&&e.jsx("input",{type:"hidden",name:"response_type",value:i.get("response_type")}),i.get("redirect_uri")&&e.jsx("input",{type:"hidden",name:"redirect_uri",value:i.get("redirect_uri")}),i.get("code_challenge")&&e.jsx("input",{type:"hidden",name:"code_challenge",value:i.get("code_challenge")}),i.get("code_challenge_method")&&e.jsx("input",{type:"hidden",name:"code_challenge_method",value:i.get("code_challenge_method")}),i.get("state")&&e.jsx("input",{type:"hidden",name:"state",value:i.get("state")}),e.jsx("input",{type:"hidden",name:"scope",value:m.join(" ")}),e.jsx(t,{sx:{mt:"auto",pt:3},children:e.jsxs(F,{direction:"row",spacing:2,children:[e.jsx(d,{variant:"outlined",size:"large",fullWidth:!0,type:"submit",name:"action",value:"deny",children:"Cancel"}),e.jsx(d,{variant:"contained",size:"large",fullWidth:!0,type:"submit",name:"action",value:"allow",children:"Authorize"})]})}),i.get("redirect_uri")&&e.jsxs(t,{sx:{mt:3,textAlign:"center"},children:[e.jsx(a,{variant:"body2",color:"text.secondary",children:"You will be redirected to"}),e.jsx(a,{variant:"body2",color:"text.secondary",sx:{wordBreak:"break-all"},children:i.get("redirect_uri")})]}),e.jsx(t,{sx:{mt:2,textAlign:"center"},children:e.jsxs(a,{variant:"body2",children:["Not you?"," ",e.jsx(d,{variant:"text",color:"primary",onClick:()=>o.switchDid(),sx:{p:0,minWidth:"auto",textTransform:"none",verticalAlign:"baseline",fontWeight:"inherit",fontSize:"inherit","&:hover":{background:"none",textDecoration:"underline"}},children:"Use another account"})]})})]})]})})]})}export{oe as default};