@abtnode/blocklet-services 1.16.43-beta-20250502-005537-bb1702b6 → 1.16.43-beta-20250505-062139-b156e7da

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 (146) hide show
  1. package/dist/assets/{AdapterDayjs-BWhMsmQP.js → AdapterDayjs-Bxdv5BBD.js} +1 -1
  2. package/dist/assets/{ArrowDropDown-DUCtp8oo.js → ArrowDropDown-CtOiDsfU.js} +1 -1
  3. package/dist/assets/{CheckCircle-yKW43XdV.js → CheckCircle-msbMBqZj.js} +1 -1
  4. package/dist/assets/{ChevronLeft-6AvuBihM.js → ChevronLeft-DmV9D3fU.js} +1 -1
  5. package/dist/assets/{ChevronRight-BsdsjNxw.js → ChevronRight-Br0ablb7.js} +1 -1
  6. package/dist/assets/{DeleteOutline-D_I07sPe.js → DeleteOutline-BU7WZ4i1.js} +1 -1
  7. package/dist/assets/{Done-DLTvHdZB.js → Done-SwUOq9KC.js} +1 -1
  8. package/dist/assets/{Download-DKz_gZX5.js → Download-Drp0bexG.js} +1 -1
  9. package/dist/assets/{Edit-odNPT5GK.js → Edit-CFF31Js3.js} +1 -1
  10. package/dist/assets/{Error-js7ePZ5o.js → Error-2fR4-pmz.js} +1 -1
  11. package/dist/assets/{ExpandLess-TUium4RQ.js → ExpandLess-C2a4bF6C.js} +1 -1
  12. package/dist/assets/{Google-C7d25Q5r.js → Google-ZTmw0mlG.js} +1 -1
  13. package/dist/assets/{InfoOutlined-BjII93aR.js → InfoOutlined-hS_Bn_IB.js} +1 -1
  14. package/dist/assets/{Launch-ryL3I8d9.js → Launch-BvpJnrFC.js} +1 -1
  15. package/dist/assets/{LaunchOutlined-D21Xchdf.js → LaunchOutlined-DwFeZSV7.js} +1 -1
  16. package/dist/assets/{MoreHoriz-DHyMdwpT.js → MoreHoriz-DrhBbQGZ.js} +1 -1
  17. package/dist/assets/{PlayArrow-zDVVYX6u.js → PlayArrow-CeIK7-yb.js} +1 -1
  18. package/dist/assets/{TuneOutlined-Bv7cSbWT.js → TuneOutlined-B-fSgZvP.js} +1 -1
  19. package/dist/assets/{ViewList-Ca1IEB31.js → ViewList-CAnQTEEQ.js} +1 -1
  20. package/dist/assets/{access-control-CwSjARsN.js → access-control-DygMvGXu.js} +1 -1
  21. package/dist/assets/{actions-BW0Vx00_.js → actions-BEVLXA8P.js} +1 -1
  22. package/dist/assets/{add-component-core-DXp_ntZ3.js → add-component-core-BLsZRe6K.js} +18 -18
  23. package/dist/assets/{add-resource-CmPIp37F.js → add-resource-uxj6Fg77.js} +1 -1
  24. package/dist/assets/{addon-FArG2oUy.js → addon-DPxkCqqP.js} +1 -1
  25. package/dist/assets/{advanced-mJXTlRFz.js → advanced-RHwLVN7K.js} +1 -1
  26. package/dist/assets/{appearance-D9WrcbPF.js → appearance-BeAcEscd.js} +1 -1
  27. package/dist/assets/{ar-Duy7ZH--.js → ar-5Vd7BsNt.js} +2 -2
  28. package/dist/assets/{audit-logs-CVUuBgdy.js → audit-logs-CPqbAeYP.js} +1 -1
  29. package/dist/assets/authorize-DsVtgYBZ.js +1 -0
  30. package/dist/assets/{base32-C_EKY5vU.js → base32-CwrkOaA2.js} +1 -1
  31. package/dist/assets/{branding-Cywl-fod.js → branding-D8yn967G.js} +1 -1
  32. package/dist/assets/{branding-BoSHL25b.js → branding-DtA4kERo.js} +2 -2
  33. package/dist/assets/{bundle-avatar-BXQsJw7m.js → bundle-avatar-DB3E7EOv.js} +1 -1
  34. package/dist/assets/{button-h00yLUET.js → button-Cd9-2VCv.js} +1 -1
  35. package/dist/assets/{click-to-copy-0s0a7Ak5.js → click-to-copy-j_gx9gFG.js} +1 -1
  36. package/dist/assets/{complete--raviZZ4.js → complete-ByIPtiSe.js} +1 -1
  37. package/dist/assets/{component-C3maTG8x.js → component-Cmj8wMD5.js} +1 -1
  38. package/dist/assets/{config-e3P85n7z.js → config-BNKhoBDx.js} +1 -1
  39. package/dist/assets/{config-Die5cVWR.js → config-CQRZ09xB.js} +1 -1
  40. package/dist/assets/{config-navigation-DhvlW96p.js → config-navigation-C1Z6kyB3.js} +3 -3
  41. package/dist/assets/{config-space-CHI2AzS5.js → config-space-CcDRmzuH.js} +1 -1
  42. package/dist/assets/{confirm-BqrhdaU7.js → confirm-oEG91BF3.js} +1 -1
  43. package/dist/assets/{connect-cpTXz6hq.js → connect-C9XH2QgZ.js} +1 -1
  44. package/dist/assets/{connect-DGOqnhoS.js → connect-DB3ixc3c.js} +1 -1
  45. package/dist/assets/{connect-to-C1xSYa-8.js → connect-to-B_yuzVhS.js} +1 -1
  46. package/dist/assets/{dashboard-CvJ8cVy-.js → dashboard-DyRSlDZ8.js} +3 -3
  47. package/dist/assets/{de-jJ-wrtW1.js → de-oCaVyGvF.js} +2 -2
  48. package/dist/assets/{delete-confirm-CmXluMcs.js → delete-confirm-4a9iCk5U.js} +1 -1
  49. package/dist/assets/{did-address-C6ni99I7.js → did-address-DXsoioR-.js} +1 -1
  50. package/dist/assets/{domain-B7m2mZGp.js → domain-CuSBV4D5.js} +1 -1
  51. package/dist/assets/{domain-action-card-DIGUxqW7.js → domain-action-card-BH2naaFL.js} +1 -1
  52. package/dist/assets/domains-BSI91pSw.js +1 -0
  53. package/dist/assets/{email-CxndZMem.js → email-BLXsjGCd.js} +1 -1
  54. package/dist/assets/{es-CoGP0eAj.js → es-BUCdgg9a.js} +2 -2
  55. package/dist/assets/{exchange-passport-JjK-mItt.js → exchange-passport-xhqvffW9.js} +1 -1
  56. package/dist/assets/{fr-yctlgsrj.js → fr-BDos80TL.js} +2 -2
  57. package/dist/assets/{fuel-bktBZZhG.js → fuel-kVR_XCvg.js} +1 -1
  58. package/dist/assets/{gen-access-key-CPCwDcVa.js → gen-access-key-C9I6m66S.js} +1 -1
  59. package/dist/assets/{get-safe-url-C-CJKtkC.js → get-safe-url-DGnHBj8n.js} +1 -1
  60. package/dist/assets/{get-safe-url-cyoeQ7Mw.js → get-safe-url-R3dJEaue.js} +1 -1
  61. package/dist/assets/{hi-Dh_pGPBD.js → hi-DwEZmyg8.js} +1 -1
  62. package/dist/assets/{home-BclSkhw2.js → home-BWQuOq0X.js} +1 -1
  63. package/dist/assets/{id-cicarMJv.js → id-BVUMyK9S.js} +2 -2
  64. package/dist/assets/{iframe-DZlnwo40.js → iframe-CsfqLmob.js} +1 -1
  65. package/dist/assets/{index-htPha6tP.js → index-B72n4V2s.js} +1 -1
  66. package/dist/assets/{index-C4pzdyRW.js → index-Be-8LeGB.js} +1 -1
  67. package/dist/assets/{index-CiIQJxvH.js → index-Bf8i5DPA.js} +1 -1
  68. package/dist/assets/{index-DdLPuFP7.js → index-C2QrzzaU.js} +1 -1
  69. package/dist/assets/{index-C8EYAWok.js → index-CjjuFvKr.js} +4 -4
  70. package/dist/assets/{index-BAstW3VS.js → index-D10IrMQr.js} +1 -1
  71. package/dist/assets/{index-17ov_POl.js → index-DJxPLtmA.js} +1 -1
  72. package/dist/assets/{index-CksPySYI.js → index-DMRB_27Q.js} +5 -5
  73. package/dist/assets/{index-BhX4Vx5B.js → index-DQ5v58Z8.js} +1 -1
  74. package/dist/assets/{index-C0x4zVBW.js → index-DYxnn9uv.js} +2 -2
  75. package/dist/assets/{index-Bdi900W2.js → index-Db1S67Mk.js} +3 -3
  76. package/dist/assets/{index-DJeuTVoT.js → index-DcUWE37M.js} +3 -3
  77. package/dist/assets/{index-C-rU1lEd.js → index-WYf-xVMZ.js} +1 -1
  78. package/dist/assets/{index-D_z5kVUS.js → index-aGp3zmpA.js} +1 -1
  79. package/dist/assets/{index-CLD6I2fv.js → index-bodAuphN.js} +1 -1
  80. package/dist/assets/{index-BugTfB-J.js → index-gw8hsltc.js} +1 -1
  81. package/dist/assets/{index-COTyGW2s.js → index-tf7PEogm.js} +1 -1
  82. package/dist/assets/{index-DxR1P6Lh.js → index-v90LUntw.js} +4 -4
  83. package/dist/assets/{invitation-sucipANy.js → invitation-UWUoMJEH.js} +1 -1
  84. package/dist/assets/{invite-Bkpf8YcY.js → invite-CGi_9MV3.js} +1 -1
  85. package/dist/assets/{issue-passport-Dm4XKvqR.js → issue-passport-Ca9_iJlv.js} +1 -1
  86. package/dist/assets/{item-CCsztPdL.js → item-BA9iP7co.js} +1 -1
  87. package/dist/assets/{ja-Bm56AvcM.js → ja-CFMQ-LyA.js} +2 -2
  88. package/dist/assets/{ko-B0ZZ2RWO.js → ko-NIkLevaH.js} +2 -2
  89. package/dist/assets/landing-page-Blz2w-aH.js +1 -0
  90. package/dist/assets/{layout-DV03YuuA.js → layout-DW9l-R-4.js} +1 -1
  91. package/dist/assets/{list-BgP6u-5j.js → list-VlrLfNLt.js} +1 -1
  92. package/dist/assets/localization-CtfwjqIp.js +1 -0
  93. package/dist/assets/{log-B4LRFTNR.js → log-CetSCivl.js} +1 -1
  94. package/dist/assets/{logger-8RyN9oiF.js → logger-DXiDU1hr.js} +1 -1
  95. package/dist/assets/{login-oauth-callback-CPP0UVME.js → login-oauth-callback-Cz4HDfxL.js} +1 -1
  96. package/dist/assets/{login-B6TE3gqj.js → login-pGpA2dx5.js} +1 -1
  97. package/dist/assets/{logo-uploader-DMxsEq63.js → logo-uploader-hb4ghrVp.js} +3 -3
  98. package/dist/assets/{lost-passport-ekwdQ24A.js → lost-passport-BrhFEayy.js} +1 -1
  99. package/dist/assets/{open-window-BjXpEOv2.js → open-window-BqTbT6lB.js} +1 -1
  100. package/dist/assets/{overview-CJRHh92f.js → overview-B3dRi3yE.js} +1 -1
  101. package/dist/assets/{page-header-MKUHlyAT.js → page-header-BYtqLM5e.js} +1 -1
  102. package/dist/assets/{passport-item-jrknj0MQ.js → passport-item-FiBabn6e.js} +1 -1
  103. package/dist/assets/{permission-PNXSTeNL.js → permission-B0bwGXNp.js} +1 -1
  104. package/dist/assets/{preferences-9BJlt30G.js → preferences-vpGHHPV1.js} +1 -1
  105. package/dist/assets/{profile-embed-CIWdUuC6.js → profile-embed-BhW6p4Xz.js} +1 -1
  106. package/dist/assets/{pt-6Xqu-_a4.js → pt-CDHE_zWG.js} +1 -1
  107. package/dist/assets/{publish-resource-BQg2Vwb0.js → publish-resource-8ginQRUx.js} +1 -1
  108. package/dist/assets/{react-beautiful-dnd.esm-C1Wt0pHO.js → react-beautiful-dnd.esm-J_09ZTBJ.js} +1 -1
  109. package/dist/assets/{relative-time-cijkMMnc.js → relative-time-Ca1sd_aF.js} +1 -1
  110. package/dist/assets/{ru-y0N1jyVB.js → ru-l1raGUU5.js} +1 -1
  111. package/dist/assets/{runtime-71FSw-R0.js → runtime-CS1kGNvF.js} +1 -1
  112. package/dist/assets/sdk-DGCdjl0b.js +1 -0
  113. package/dist/assets/{security-Y5seZEn6.js → security-CgsJIaze.js} +1 -1
  114. package/dist/assets/{session-DLQ0rbYE.js → session-B_RsakU4.js} +1 -1
  115. package/dist/assets/{setup-4hj9RPfM.js → setup-Bpmp0hS9.js} +3 -3
  116. package/dist/assets/{spaces-CP1iyRKS.js → spaces-DHRCc5pJ.js} +1 -1
  117. package/dist/assets/{start-Bt5Vo3K8.js → start-b8VtKWzD.js} +1 -1
  118. package/dist/assets/{starting-progress-yIv14mT6.js → starting-progress-Cq6oMvtd.js} +1 -1
  119. package/dist/assets/{status-BKlS-OSq.js → status-BUWzSxch.js} +1 -1
  120. package/dist/assets/{step-actions-DMwF4axn.js → step-actions-tjbtKF9G.js} +1 -1
  121. package/dist/assets/{studio-BR3c6nt5.js → studio-Dt-yrfsf.js} +1 -1
  122. package/dist/assets/{switch-control-yJOWKqcv.js → switch-control-CYExQdC4.js} +1 -1
  123. package/dist/assets/{th-CJa7646q.js → th-BBE2_3AB.js} +1 -1
  124. package/dist/assets/{traffic-BzRbyLJ-.js → traffic-cstjgILR.js} +1 -1
  125. package/dist/assets/{transfer-Ds9NQ12A.js → transfer-Ceah-H6_.js} +1 -1
  126. package/dist/assets/{unsubscribe-hfXD8-ea.js → unsubscribe-DqbdiPdh.js} +1 -1
  127. package/dist/assets/{use-blocklet-logo-BOYeM9RY.js → use-blocklet-logo-ZrVs0Fgp.js} +1 -1
  128. package/dist/assets/{useLocalStorage-CXDkfohf.js → useLocalStorage-B_V0diy4.js} +1 -1
  129. package/dist/assets/{user-center-CBh-mxjZ.js → user-center-BNt97_Oy.js} +1 -1
  130. package/dist/assets/{util-D-LnEy9h.js → util-CxKY-YuQ.js} +1 -1
  131. package/dist/assets/{util-DJFgW-07.js → util-DmIsJ5RI.js} +1 -1
  132. package/dist/assets/{vendor-arcblock-Dkhgjlzn.js → vendor-arcblock-DpCuGvAS.js} +2 -2
  133. package/dist/assets/{vendor-ux-did-connect-D4-ZeZHm.js → vendor-ux-did-connect-CeGz2B7G.js} +39 -35
  134. package/dist/assets/{vi-Rc5fwdQU.js → vi-CVeuRNnr.js} +1 -1
  135. package/dist/assets/wrap-locale-DcoOFDfm.js +1 -0
  136. package/dist/assets/{zh-J32RyrWT.js → zh-BQbRU3Dp.js} +2 -2
  137. package/dist/assets/{zh-tw-BSUxp5LQ.js → zh-tw-Ca0tJhqz.js} +2 -2
  138. package/dist/index.html +3 -3
  139. package/dist/service-worker.js +1 -1
  140. package/package.json +30 -30
  141. package/dist/assets/authorize-Bk0sIDAH.js +0 -1
  142. package/dist/assets/domains-DV-Gl3-a.js +0 -1
  143. package/dist/assets/landing-page-BJMRDSCP.js +0 -1
  144. package/dist/assets/localization-CTzQFuMS.js +0 -1
  145. package/dist/assets/sdk-BXECCi1q.js +0 -1
  146. package/dist/assets/wrap-locale-Dob_mf2V.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-CwSjARsN.js"},{"revision":null,"url":"assets/actions-BW0Vx00_.js"},{"revision":null,"url":"assets/AdapterDayjs-BWhMsmQP.js"},{"revision":null,"url":"assets/add-component-core-D-IRi6XF.css"},{"revision":null,"url":"assets/add-component-core-DXp_ntZ3.js"},{"revision":null,"url":"assets/add-resource-CmPIp37F.js"},{"revision":null,"url":"assets/addon-FArG2oUy.js"},{"revision":null,"url":"assets/advanced-mJXTlRFz.js"},{"revision":null,"url":"assets/api-Bf1onQOz.js"},{"revision":null,"url":"assets/appearance-D9WrcbPF.js"},{"revision":null,"url":"assets/ar-BRKjvO8p.js"},{"revision":null,"url":"assets/ar-Duy7ZH--.js"},{"revision":null,"url":"assets/ArrowDropDown-DUCtp8oo.js"},{"revision":null,"url":"assets/audit-logs-CVUuBgdy.js"},{"revision":null,"url":"assets/authorize-Bk0sIDAH.js"},{"revision":null,"url":"assets/base32-C_EKY5vU.js"},{"revision":null,"url":"assets/branding-BoSHL25b.js"},{"revision":null,"url":"assets/branding-Cywl-fod.js"},{"revision":null,"url":"assets/bundle-avatar-BXQsJw7m.js"},{"revision":null,"url":"assets/button-h00yLUET.js"},{"revision":null,"url":"assets/CheckCircle-yKW43XdV.js"},{"revision":null,"url":"assets/ChevronLeft-6AvuBihM.js"},{"revision":null,"url":"assets/ChevronRight-BsdsjNxw.js"},{"revision":null,"url":"assets/click-to-copy-0s0a7Ak5.js"},{"revision":null,"url":"assets/cloneDeep-WT_kDeVd.js"},{"revision":null,"url":"assets/Community-DathqRsd.js"},{"revision":null,"url":"assets/complete--raviZZ4.js"},{"revision":null,"url":"assets/component-C3maTG8x.js"},{"revision":null,"url":"assets/config-Die5cVWR.js"},{"revision":null,"url":"assets/config-e3P85n7z.js"},{"revision":null,"url":"assets/config-navigation-DhvlW96p.js"},{"revision":null,"url":"assets/config-space-CHI2AzS5.js"},{"revision":null,"url":"assets/confirm-BqrhdaU7.js"},{"revision":null,"url":"assets/connect-cpTXz6hq.js"},{"revision":null,"url":"assets/connect-DGOqnhoS.js"},{"revision":null,"url":"assets/connect-to-C1xSYa-8.js"},{"revision":null,"url":"assets/content-layout-C3Yd4mK9.js"},{"revision":null,"url":"assets/dashboard-CvJ8cVy-.js"},{"revision":null,"url":"assets/de-D3cg0t9f.js"},{"revision":null,"url":"assets/de-jJ-wrtW1.js"},{"revision":null,"url":"assets/delete-confirm-CmXluMcs.js"},{"revision":null,"url":"assets/DeleteOutline-D_I07sPe.js"},{"revision":null,"url":"assets/did-address-C6ni99I7.js"},{"revision":null,"url":"assets/domain-action-card-DIGUxqW7.js"},{"revision":null,"url":"assets/domain-B7m2mZGp.js"},{"revision":null,"url":"assets/domains-DV-Gl3-a.js"},{"revision":null,"url":"assets/Done-DLTvHdZB.js"},{"revision":null,"url":"assets/dot-WAAJ-O65.js"},{"revision":null,"url":"assets/Download-DKz_gZX5.js"},{"revision":null,"url":"assets/Edit-odNPT5GK.js"},{"revision":null,"url":"assets/EditIcon-DWRQ3fi6.js"},{"revision":null,"url":"assets/Email-B0n6rLUZ.js"},{"revision":null,"url":"assets/email-CxndZMem.js"},{"revision":null,"url":"assets/empty-spinner-BYUFR95o.js"},{"revision":null,"url":"assets/Error-js7ePZ5o.js"},{"revision":null,"url":"assets/es-CoGP0eAj.js"},{"revision":null,"url":"assets/es-DPjqApVE.js"},{"revision":null,"url":"assets/exchange-passport-JjK-mItt.js"},{"revision":null,"url":"assets/ExpandLess-TUium4RQ.js"},{"revision":null,"url":"assets/format-error-BrmqJs5a.js"},{"revision":null,"url":"assets/fr-Dscs9WsP.js"},{"revision":null,"url":"assets/fr-yctlgsrj.js"},{"revision":null,"url":"assets/fuel-bktBZZhG.js"},{"revision":null,"url":"assets/gen-access-key-CPCwDcVa.js"},{"revision":null,"url":"assets/get-safe-url-C-CJKtkC.js"},{"revision":null,"url":"assets/get-safe-url-cyoeQ7Mw.js"},{"revision":null,"url":"assets/Google-C7d25Q5r.js"},{"revision":null,"url":"assets/hi-B8D3j6bs.js"},{"revision":null,"url":"assets/hi-Dh_pGPBD.js"},{"revision":null,"url":"assets/Holiday-BkY6LMfd.js"},{"revision":null,"url":"assets/home-BclSkhw2.js"},{"revision":null,"url":"assets/id-cicarMJv.js"},{"revision":null,"url":"assets/id-DWMMQI0G.js"},{"revision":null,"url":"assets/iframe-DZlnwo40.js"},{"revision":null,"url":"assets/index--MMFwLMX.js"},{"revision":null,"url":"assets/index-17ov_POl.js"},{"revision":null,"url":"assets/index-AgKpYdvC.css"},{"revision":null,"url":"assets/index-BAstW3VS.js"},{"revision":null,"url":"assets/index-Bdi900W2.js"},{"revision":null,"url":"assets/index-BhX4Vx5B.js"},{"revision":null,"url":"assets/index-Bt7GP-dU.js"},{"revision":null,"url":"assets/index-BugTfB-J.js"},{"revision":null,"url":"assets/index-BUHlfcy3.js"},{"revision":null,"url":"assets/index-C-rU1lEd.js"},{"revision":null,"url":"assets/index-C0Iiqot3.css"},{"revision":null,"url":"assets/index-C0x4zVBW.js"},{"revision":null,"url":"assets/index-C4pzdyRW.js"},{"revision":null,"url":"assets/index-C8EYAWok.js"},{"revision":null,"url":"assets/index-CiIQJxvH.js"},{"revision":null,"url":"assets/index-CksPySYI.js"},{"revision":null,"url":"assets/index-CLD6I2fv.js"},{"revision":null,"url":"assets/index-CMFOn8T3.js"},{"revision":null,"url":"assets/index-COTyGW2s.js"},{"revision":null,"url":"assets/index-CPE8Apzb.js"},{"revision":null,"url":"assets/index-D_z5kVUS.js"},{"revision":null,"url":"assets/index-DdLPuFP7.js"},{"revision":null,"url":"assets/index-DIe9psLc.js"},{"revision":null,"url":"assets/index-DJeuTVoT.js"},{"revision":null,"url":"assets/index-DODYa3Im.js"},{"revision":null,"url":"assets/index-DOq-_YXu.css"},{"revision":null,"url":"assets/index-DVQCgvFb.js"},{"revision":null,"url":"assets/index-DxR1P6Lh.js"},{"revision":null,"url":"assets/index-htPha6tP.js"},{"revision":null,"url":"assets/InfoOutlined-BjII93aR.js"},{"revision":null,"url":"assets/invitation-sucipANy.js"},{"revision":null,"url":"assets/invite-Bkpf8YcY.js"},{"revision":null,"url":"assets/issue-passport-Dm4XKvqR.js"},{"revision":null,"url":"assets/item-CCsztPdL.js"},{"revision":null,"url":"assets/ja-3LoBq68U.js"},{"revision":null,"url":"assets/ja-Bm56AvcM.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-B0ZZ2RWO.js"},{"revision":null,"url":"assets/ko-B2dxwXDl.js"},{"revision":null,"url":"assets/landing-page-BJMRDSCP.js"},{"revision":null,"url":"assets/launch-result-message-B_fS-f90.js"},{"revision":null,"url":"assets/Launch-ryL3I8d9.js"},{"revision":null,"url":"assets/LaunchOutlined-D21Xchdf.js"},{"revision":null,"url":"assets/layout-DV03YuuA.js"},{"revision":null,"url":"assets/list-BgP6u-5j.js"},{"revision":null,"url":"assets/list-header-8k1_C0K0.js"},{"revision":null,"url":"assets/localization-CTzQFuMS.js"},{"revision":null,"url":"assets/Location-BQhEvGNL.js"},{"revision":null,"url":"assets/LockIcon-Bd69pSJI.js"},{"revision":null,"url":"assets/log-B4LRFTNR.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/logger-8RyN9oiF.js"},{"revision":null,"url":"assets/login-B6TE3gqj.js"},{"revision":null,"url":"assets/login-oauth-callback-CPP0UVME.js"},{"revision":null,"url":"assets/logo-uploader-DMxsEq63.js"},{"revision":null,"url":"assets/lost-passport-ekwdQ24A.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-BW-_XtSL.js"},{"revision":null,"url":"assets/MoreHoriz-DHyMdwpT.js"},{"revision":null,"url":"assets/OffSick-9I8vBA8l.js"},{"revision":null,"url":"assets/omit-DNeUY6_X.js"},{"revision":null,"url":"assets/open-window-BjXpEOv2.js"},{"revision":null,"url":"assets/overview-CJRHh92f.js"},{"revision":null,"url":"assets/page-header-MKUHlyAT.js"},{"revision":null,"url":"assets/passport-item-jrknj0MQ.js"},{"revision":null,"url":"assets/permission-PNXSTeNL.js"},{"revision":null,"url":"assets/Phone-CKzC4712.js"},{"revision":null,"url":"assets/PlayArrow-zDVVYX6u.js"},{"revision":null,"url":"assets/preferences-9BJlt30G.js"},{"revision":null,"url":"assets/profile-embed-CIWdUuC6.js"},{"revision":null,"url":"assets/pt-6Xqu-_a4.js"},{"revision":null,"url":"assets/pt-eei1_Z4R.js"},{"revision":null,"url":"assets/publish-resource-BQg2Vwb0.js"},{"revision":null,"url":"assets/QuestionMarkCircle-DpFFQWud.js"},{"revision":null,"url":"assets/raf-schd.esm-B3j6BePR.js"},{"revision":null,"url":"assets/react-beautiful-dnd.esm-C1Wt0pHO.js"},{"revision":null,"url":"assets/relative-time-cijkMMnc.js"},{"revision":null,"url":"assets/ru-y0N1jyVB.js"},{"revision":null,"url":"assets/ru-ZKgT6XdU.js"},{"revision":null,"url":"assets/runtime-71FSw-R0.js"},{"revision":null,"url":"assets/sdk-BXECCi1q.js"},{"revision":null,"url":"assets/security-Y5seZEn6.js"},{"revision":null,"url":"assets/ServerLogo-AfxVBRdi.js"},{"revision":null,"url":"assets/session-DLQ0rbYE.js"},{"revision":null,"url":"assets/setup-4hj9RPfM.js"},{"revision":null,"url":"assets/shorten-label-SbKUBkvs.js"},{"revision":null,"url":"assets/simple-select-CLc0Q9sm.js"},{"revision":null,"url":"assets/slicedToArray-C0YDCVwK.js"},{"revision":null,"url":"assets/spaces-CP1iyRKS.js"},{"revision":null,"url":"assets/start-Bt5Vo3K8.js"},{"revision":null,"url":"assets/starting-progress-yIv14mT6.js"},{"revision":null,"url":"assets/status-BKlS-OSq.js"},{"revision":null,"url":"assets/step-actions-DMwF4axn.js"},{"revision":null,"url":"assets/studio-BR3c6nt5.js"},{"revision":null,"url":"assets/switch-control-yJOWKqcv.js"},{"revision":null,"url":"assets/th-CG5eLRZo.js"},{"revision":null,"url":"assets/th-CJa7646q.js"},{"revision":null,"url":"assets/Timezone-C3hiNX6j.js"},{"revision":null,"url":"assets/traffic-BzRbyLJ-.js"},{"revision":null,"url":"assets/transfer-Ds9NQ12A.js"},{"revision":null,"url":"assets/TuneOutlined-Bv7cSbWT.js"},{"revision":null,"url":"assets/unsubscribe-hfXD8-ea.js"},{"revision":null,"url":"assets/use-blocklet-logo-BOYeM9RY.js"},{"revision":null,"url":"assets/use-mobile-BKvZ6hcv.js"},{"revision":null,"url":"assets/use-mobile-BNUwcWCH.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/useAsync-GjVghrwi.js"},{"revision":null,"url":"assets/useLocalStorage-CXDkfohf.js"},{"revision":null,"url":"assets/user-center-CBh-mxjZ.js"},{"revision":null,"url":"assets/useSetState-CWq0AVWn.js"},{"revision":null,"url":"assets/util-D-LnEy9h.js"},{"revision":null,"url":"assets/util-DJFgW-07.js"},{"revision":null,"url":"assets/vendor-arcblock-Dkhgjlzn.js"},{"revision":null,"url":"assets/vendor-hooks-DXGUREV9.js"},{"revision":null,"url":"assets/vendor-mui-core-B6POpIBB.js"},{"revision":null,"url":"assets/vendor-mui-x-CATHW1QL.js"},{"revision":null,"url":"assets/vendor-react-DEoibe3W.js"},{"revision":null,"url":"assets/vendor-utils-CjMBJT5V.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-D4-ZeZHm.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-DpSGLE7B.css"},{"revision":null,"url":"assets/vi-CoZs3B42.js"},{"revision":null,"url":"assets/vi-Rc5fwdQU.js"},{"revision":null,"url":"assets/ViewList-Ca1IEB31.js"},{"revision":null,"url":"assets/WorkingRemotely-CHzRY2CT.js"},{"revision":null,"url":"assets/wrap-locale-Dob_mf2V.js"},{"revision":null,"url":"assets/zh-CgkeS2I3.js"},{"revision":null,"url":"assets/zh-J32RyrWT.js"},{"revision":null,"url":"assets/zh-tw-BSUxp5LQ.js"},{"revision":null,"url":"assets/zh-tw-CuakNRcW.js"},{"revision":"57ffb462b18e1e08f64e053dcca0bce5","url":"index.html"},{"revision":"629a14a7e3397a134f5a30b5dc735183","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"686e8f496bdfe711854779cc8efa6311","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-DygMvGXu.js"},{"revision":null,"url":"assets/actions-BEVLXA8P.js"},{"revision":null,"url":"assets/AdapterDayjs-Bxdv5BBD.js"},{"revision":null,"url":"assets/add-component-core-BLsZRe6K.js"},{"revision":null,"url":"assets/add-component-core-D-IRi6XF.css"},{"revision":null,"url":"assets/add-resource-uxj6Fg77.js"},{"revision":null,"url":"assets/addon-DPxkCqqP.js"},{"revision":null,"url":"assets/advanced-RHwLVN7K.js"},{"revision":null,"url":"assets/api-Bf1onQOz.js"},{"revision":null,"url":"assets/appearance-BeAcEscd.js"},{"revision":null,"url":"assets/ar-5Vd7BsNt.js"},{"revision":null,"url":"assets/ar-BRKjvO8p.js"},{"revision":null,"url":"assets/ArrowDropDown-CtOiDsfU.js"},{"revision":null,"url":"assets/audit-logs-CPqbAeYP.js"},{"revision":null,"url":"assets/authorize-DsVtgYBZ.js"},{"revision":null,"url":"assets/base32-CwrkOaA2.js"},{"revision":null,"url":"assets/branding-D8yn967G.js"},{"revision":null,"url":"assets/branding-DtA4kERo.js"},{"revision":null,"url":"assets/bundle-avatar-DB3E7EOv.js"},{"revision":null,"url":"assets/button-Cd9-2VCv.js"},{"revision":null,"url":"assets/CheckCircle-msbMBqZj.js"},{"revision":null,"url":"assets/ChevronLeft-DmV9D3fU.js"},{"revision":null,"url":"assets/ChevronRight-Br0ablb7.js"},{"revision":null,"url":"assets/click-to-copy-j_gx9gFG.js"},{"revision":null,"url":"assets/cloneDeep-WT_kDeVd.js"},{"revision":null,"url":"assets/Community-DathqRsd.js"},{"revision":null,"url":"assets/complete-ByIPtiSe.js"},{"revision":null,"url":"assets/component-Cmj8wMD5.js"},{"revision":null,"url":"assets/config-BNKhoBDx.js"},{"revision":null,"url":"assets/config-CQRZ09xB.js"},{"revision":null,"url":"assets/config-navigation-C1Z6kyB3.js"},{"revision":null,"url":"assets/config-space-CcDRmzuH.js"},{"revision":null,"url":"assets/confirm-oEG91BF3.js"},{"revision":null,"url":"assets/connect-C9XH2QgZ.js"},{"revision":null,"url":"assets/connect-DB3ixc3c.js"},{"revision":null,"url":"assets/connect-to-B_yuzVhS.js"},{"revision":null,"url":"assets/content-layout-C3Yd4mK9.js"},{"revision":null,"url":"assets/dashboard-DyRSlDZ8.js"},{"revision":null,"url":"assets/de-D3cg0t9f.js"},{"revision":null,"url":"assets/de-oCaVyGvF.js"},{"revision":null,"url":"assets/delete-confirm-4a9iCk5U.js"},{"revision":null,"url":"assets/DeleteOutline-BU7WZ4i1.js"},{"revision":null,"url":"assets/did-address-DXsoioR-.js"},{"revision":null,"url":"assets/domain-action-card-BH2naaFL.js"},{"revision":null,"url":"assets/domain-CuSBV4D5.js"},{"revision":null,"url":"assets/domains-BSI91pSw.js"},{"revision":null,"url":"assets/Done-SwUOq9KC.js"},{"revision":null,"url":"assets/dot-WAAJ-O65.js"},{"revision":null,"url":"assets/Download-Drp0bexG.js"},{"revision":null,"url":"assets/Edit-CFF31Js3.js"},{"revision":null,"url":"assets/EditIcon-DWRQ3fi6.js"},{"revision":null,"url":"assets/Email-B0n6rLUZ.js"},{"revision":null,"url":"assets/email-BLXsjGCd.js"},{"revision":null,"url":"assets/empty-spinner-BYUFR95o.js"},{"revision":null,"url":"assets/Error-2fR4-pmz.js"},{"revision":null,"url":"assets/es-BUCdgg9a.js"},{"revision":null,"url":"assets/es-DPjqApVE.js"},{"revision":null,"url":"assets/exchange-passport-xhqvffW9.js"},{"revision":null,"url":"assets/ExpandLess-C2a4bF6C.js"},{"revision":null,"url":"assets/format-error-BrmqJs5a.js"},{"revision":null,"url":"assets/fr-BDos80TL.js"},{"revision":null,"url":"assets/fr-Dscs9WsP.js"},{"revision":null,"url":"assets/fuel-kVR_XCvg.js"},{"revision":null,"url":"assets/gen-access-key-C9I6m66S.js"},{"revision":null,"url":"assets/get-safe-url-DGnHBj8n.js"},{"revision":null,"url":"assets/get-safe-url-R3dJEaue.js"},{"revision":null,"url":"assets/Google-ZTmw0mlG.js"},{"revision":null,"url":"assets/hi-B8D3j6bs.js"},{"revision":null,"url":"assets/hi-DwEZmyg8.js"},{"revision":null,"url":"assets/Holiday-BkY6LMfd.js"},{"revision":null,"url":"assets/home-BWQuOq0X.js"},{"revision":null,"url":"assets/id-BVUMyK9S.js"},{"revision":null,"url":"assets/id-DWMMQI0G.js"},{"revision":null,"url":"assets/iframe-CsfqLmob.js"},{"revision":null,"url":"assets/index--MMFwLMX.js"},{"revision":null,"url":"assets/index-AgKpYdvC.css"},{"revision":null,"url":"assets/index-aGp3zmpA.js"},{"revision":null,"url":"assets/index-B72n4V2s.js"},{"revision":null,"url":"assets/index-Be-8LeGB.js"},{"revision":null,"url":"assets/index-Bf8i5DPA.js"},{"revision":null,"url":"assets/index-bodAuphN.js"},{"revision":null,"url":"assets/index-Bt7GP-dU.js"},{"revision":null,"url":"assets/index-BUHlfcy3.js"},{"revision":null,"url":"assets/index-C0Iiqot3.css"},{"revision":null,"url":"assets/index-C2QrzzaU.js"},{"revision":null,"url":"assets/index-CjjuFvKr.js"},{"revision":null,"url":"assets/index-CMFOn8T3.js"},{"revision":null,"url":"assets/index-CPE8Apzb.js"},{"revision":null,"url":"assets/index-D10IrMQr.js"},{"revision":null,"url":"assets/index-Db1S67Mk.js"},{"revision":null,"url":"assets/index-DcUWE37M.js"},{"revision":null,"url":"assets/index-DIe9psLc.js"},{"revision":null,"url":"assets/index-DJxPLtmA.js"},{"revision":null,"url":"assets/index-DMRB_27Q.js"},{"revision":null,"url":"assets/index-DODYa3Im.js"},{"revision":null,"url":"assets/index-DOq-_YXu.css"},{"revision":null,"url":"assets/index-DQ5v58Z8.js"},{"revision":null,"url":"assets/index-DVQCgvFb.js"},{"revision":null,"url":"assets/index-DYxnn9uv.js"},{"revision":null,"url":"assets/index-gw8hsltc.js"},{"revision":null,"url":"assets/index-tf7PEogm.js"},{"revision":null,"url":"assets/index-v90LUntw.js"},{"revision":null,"url":"assets/index-WYf-xVMZ.js"},{"revision":null,"url":"assets/InfoOutlined-hS_Bn_IB.js"},{"revision":null,"url":"assets/invitation-UWUoMJEH.js"},{"revision":null,"url":"assets/invite-CGi_9MV3.js"},{"revision":null,"url":"assets/issue-passport-Ca9_iJlv.js"},{"revision":null,"url":"assets/item-BA9iP7co.js"},{"revision":null,"url":"assets/ja-3LoBq68U.js"},{"revision":null,"url":"assets/ja-CFMQ-LyA.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-B2dxwXDl.js"},{"revision":null,"url":"assets/ko-NIkLevaH.js"},{"revision":null,"url":"assets/landing-page-Blz2w-aH.js"},{"revision":null,"url":"assets/Launch-BvpJnrFC.js"},{"revision":null,"url":"assets/launch-result-message-B_fS-f90.js"},{"revision":null,"url":"assets/LaunchOutlined-DwFeZSV7.js"},{"revision":null,"url":"assets/layout-DW9l-R-4.js"},{"revision":null,"url":"assets/list-header-8k1_C0K0.js"},{"revision":null,"url":"assets/list-VlrLfNLt.js"},{"revision":null,"url":"assets/localization-CtfwjqIp.js"},{"revision":null,"url":"assets/Location-BQhEvGNL.js"},{"revision":null,"url":"assets/LockIcon-Bd69pSJI.js"},{"revision":null,"url":"assets/log-CetSCivl.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/logger-DXiDU1hr.js"},{"revision":null,"url":"assets/login-oauth-callback-Cz4HDfxL.js"},{"revision":null,"url":"assets/login-pGpA2dx5.js"},{"revision":null,"url":"assets/logo-uploader-hb4ghrVp.js"},{"revision":null,"url":"assets/lost-passport-BrhFEayy.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-BW-_XtSL.js"},{"revision":null,"url":"assets/MoreHoriz-DrhBbQGZ.js"},{"revision":null,"url":"assets/OffSick-9I8vBA8l.js"},{"revision":null,"url":"assets/omit-DNeUY6_X.js"},{"revision":null,"url":"assets/open-window-BqTbT6lB.js"},{"revision":null,"url":"assets/overview-B3dRi3yE.js"},{"revision":null,"url":"assets/page-header-BYtqLM5e.js"},{"revision":null,"url":"assets/passport-item-FiBabn6e.js"},{"revision":null,"url":"assets/permission-B0bwGXNp.js"},{"revision":null,"url":"assets/Phone-CKzC4712.js"},{"revision":null,"url":"assets/PlayArrow-CeIK7-yb.js"},{"revision":null,"url":"assets/preferences-vpGHHPV1.js"},{"revision":null,"url":"assets/profile-embed-BhW6p4Xz.js"},{"revision":null,"url":"assets/pt-CDHE_zWG.js"},{"revision":null,"url":"assets/pt-eei1_Z4R.js"},{"revision":null,"url":"assets/publish-resource-8ginQRUx.js"},{"revision":null,"url":"assets/QuestionMarkCircle-DpFFQWud.js"},{"revision":null,"url":"assets/raf-schd.esm-B3j6BePR.js"},{"revision":null,"url":"assets/react-beautiful-dnd.esm-J_09ZTBJ.js"},{"revision":null,"url":"assets/relative-time-Ca1sd_aF.js"},{"revision":null,"url":"assets/ru-l1raGUU5.js"},{"revision":null,"url":"assets/ru-ZKgT6XdU.js"},{"revision":null,"url":"assets/runtime-CS1kGNvF.js"},{"revision":null,"url":"assets/sdk-DGCdjl0b.js"},{"revision":null,"url":"assets/security-CgsJIaze.js"},{"revision":null,"url":"assets/ServerLogo-AfxVBRdi.js"},{"revision":null,"url":"assets/session-B_RsakU4.js"},{"revision":null,"url":"assets/setup-Bpmp0hS9.js"},{"revision":null,"url":"assets/shorten-label-SbKUBkvs.js"},{"revision":null,"url":"assets/simple-select-CLc0Q9sm.js"},{"revision":null,"url":"assets/slicedToArray-C0YDCVwK.js"},{"revision":null,"url":"assets/spaces-DHRCc5pJ.js"},{"revision":null,"url":"assets/start-b8VtKWzD.js"},{"revision":null,"url":"assets/starting-progress-Cq6oMvtd.js"},{"revision":null,"url":"assets/status-BUWzSxch.js"},{"revision":null,"url":"assets/step-actions-tjbtKF9G.js"},{"revision":null,"url":"assets/studio-Dt-yrfsf.js"},{"revision":null,"url":"assets/switch-control-CYExQdC4.js"},{"revision":null,"url":"assets/th-BBE2_3AB.js"},{"revision":null,"url":"assets/th-CG5eLRZo.js"},{"revision":null,"url":"assets/Timezone-C3hiNX6j.js"},{"revision":null,"url":"assets/traffic-cstjgILR.js"},{"revision":null,"url":"assets/transfer-Ceah-H6_.js"},{"revision":null,"url":"assets/TuneOutlined-B-fSgZvP.js"},{"revision":null,"url":"assets/unsubscribe-DqbdiPdh.js"},{"revision":null,"url":"assets/use-blocklet-logo-ZrVs0Fgp.js"},{"revision":null,"url":"assets/use-mobile-BKvZ6hcv.js"},{"revision":null,"url":"assets/use-mobile-BNUwcWCH.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/useAsync-GjVghrwi.js"},{"revision":null,"url":"assets/useLocalStorage-B_V0diy4.js"},{"revision":null,"url":"assets/user-center-BNt97_Oy.js"},{"revision":null,"url":"assets/useSetState-CWq0AVWn.js"},{"revision":null,"url":"assets/util-CxKY-YuQ.js"},{"revision":null,"url":"assets/util-DmIsJ5RI.js"},{"revision":null,"url":"assets/vendor-arcblock-DpCuGvAS.js"},{"revision":null,"url":"assets/vendor-hooks-DXGUREV9.js"},{"revision":null,"url":"assets/vendor-mui-core-B6POpIBB.js"},{"revision":null,"url":"assets/vendor-mui-x-CATHW1QL.js"},{"revision":null,"url":"assets/vendor-react-DEoibe3W.js"},{"revision":null,"url":"assets/vendor-utils-CjMBJT5V.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-CeGz2B7G.js"},{"revision":null,"url":"assets/vendor-ux-did-connect-DpSGLE7B.css"},{"revision":null,"url":"assets/vi-CoZs3B42.js"},{"revision":null,"url":"assets/vi-CVeuRNnr.js"},{"revision":null,"url":"assets/ViewList-CAnQTEEQ.js"},{"revision":null,"url":"assets/WorkingRemotely-CHzRY2CT.js"},{"revision":null,"url":"assets/wrap-locale-DcoOFDfm.js"},{"revision":null,"url":"assets/zh-BQbRU3Dp.js"},{"revision":null,"url":"assets/zh-CgkeS2I3.js"},{"revision":null,"url":"assets/zh-tw-Ca0tJhqz.js"},{"revision":null,"url":"assets/zh-tw-CuakNRcW.js"},{"revision":"a361dda941f281bfca67176af8758fa2","url":"index.html"},{"revision":"629a14a7e3397a134f5a30b5dc735183","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"686e8f496bdfe711854779cc8efa6311","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.43-beta-20250502-005537-bb1702b6",
6
+ "version": "1.16.43-beta-20250505-062139-b156e7da",
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.43-beta-20250502-005537-bb1702b6",
37
- "@abtnode/auth": "1.16.43-beta-20250502-005537-bb1702b6",
38
- "@abtnode/client": "1.16.43-beta-20250502-005537-bb1702b6",
39
- "@abtnode/connect-storage": "1.16.43-beta-20250502-005537-bb1702b6",
40
- "@abtnode/constant": "1.16.43-beta-20250502-005537-bb1702b6",
41
- "@abtnode/core": "1.16.43-beta-20250502-005537-bb1702b6",
42
- "@abtnode/cron": "1.16.43-beta-20250502-005537-bb1702b6",
43
- "@abtnode/logger": "1.16.43-beta-20250502-005537-bb1702b6",
44
- "@abtnode/models": "1.16.43-beta-20250502-005537-bb1702b6",
45
- "@abtnode/router-templates": "1.16.43-beta-20250502-005537-bb1702b6",
46
- "@abtnode/util": "1.16.43-beta-20250502-005537-bb1702b6",
36
+ "@abtnode/analytics": "1.16.43-beta-20250505-062139-b156e7da",
37
+ "@abtnode/auth": "1.16.43-beta-20250505-062139-b156e7da",
38
+ "@abtnode/client": "1.16.43-beta-20250505-062139-b156e7da",
39
+ "@abtnode/connect-storage": "1.16.43-beta-20250505-062139-b156e7da",
40
+ "@abtnode/constant": "1.16.43-beta-20250505-062139-b156e7da",
41
+ "@abtnode/core": "1.16.43-beta-20250505-062139-b156e7da",
42
+ "@abtnode/cron": "1.16.43-beta-20250505-062139-b156e7da",
43
+ "@abtnode/logger": "1.16.43-beta-20250505-062139-b156e7da",
44
+ "@abtnode/models": "1.16.43-beta-20250505-062139-b156e7da",
45
+ "@abtnode/router-templates": "1.16.43-beta-20250505-062139-b156e7da",
46
+ "@abtnode/util": "1.16.43-beta-20250505-062139-b156e7da",
47
47
  "@arcblock/did": "1.20.4",
48
48
  "@arcblock/did-auth": "1.20.4",
49
49
  "@arcblock/did-ext": "1.20.4",
@@ -53,18 +53,18 @@
53
53
  "@arcblock/jwt": "1.20.4",
54
54
  "@arcblock/validator": "1.20.4",
55
55
  "@arcblock/ws": "1.20.4",
56
- "@blocklet/constant": "1.16.43-beta-20250502-005537-bb1702b6",
56
+ "@blocklet/constant": "1.16.43-beta-20250505-062139-b156e7da",
57
57
  "@blocklet/dbhub": "^0.2.9",
58
- "@blocklet/did-space-js": "^1.0.48",
59
- "@blocklet/env": "1.16.43-beta-20250502-005537-bb1702b6",
58
+ "@blocklet/did-space-js": "^1.0.49",
59
+ "@blocklet/env": "1.16.43-beta-20250505-062139-b156e7da",
60
60
  "@blocklet/form-builder": "^0.1.11",
61
61
  "@blocklet/form-collector": "^0.1.8",
62
- "@blocklet/images": "1.16.43-beta-20250502-005537-bb1702b6",
63
- "@blocklet/js-sdk": "1.16.43-beta-20250502-005537-bb1702b6",
62
+ "@blocklet/images": "1.16.43-beta-20250505-062139-b156e7da",
63
+ "@blocklet/js-sdk": "1.16.43-beta-20250505-062139-b156e7da",
64
64
  "@blocklet/mcp": "^1.10.2",
65
- "@blocklet/meta": "1.16.43-beta-20250502-005537-bb1702b6",
66
- "@blocklet/sdk": "1.16.43-beta-20250502-005537-bb1702b6",
67
- "@blocklet/theme": "^2.13.19",
65
+ "@blocklet/meta": "1.16.43-beta-20250505-062139-b156e7da",
66
+ "@blocklet/sdk": "1.16.43-beta-20250505-062139-b156e7da",
67
+ "@blocklet/theme": "^2.13.21",
68
68
  "@blocklet/theme-builder": "^0.1.13",
69
69
  "@blocklet/uploader-server": "^0.1.96",
70
70
  "@blocklet/xss": "^0.1.33",
@@ -119,16 +119,16 @@
119
119
  "whatwg-url": "14.0.0"
120
120
  },
121
121
  "devDependencies": {
122
- "@abtnode/ux": "1.16.43-beta-20250502-005537-bb1702b6",
123
- "@arcblock/bridge": "^2.13.19",
124
- "@arcblock/did-connect": "^2.13.19",
125
- "@arcblock/icons": "^2.13.19",
126
- "@arcblock/react-hooks": "^2.13.19",
127
- "@arcblock/ux": "^2.13.19",
128
- "@blocklet/launcher-layout": "^2.13.19",
122
+ "@abtnode/ux": "1.16.43-beta-20250505-062139-b156e7da",
123
+ "@arcblock/bridge": "^2.13.21",
124
+ "@arcblock/did-connect": "^2.13.21",
125
+ "@arcblock/icons": "^2.13.21",
126
+ "@arcblock/react-hooks": "^2.13.21",
127
+ "@arcblock/ux": "^2.13.21",
128
+ "@blocklet/launcher-layout": "^2.13.21",
129
129
  "@blocklet/payment-react": "^1.18.38",
130
- "@blocklet/tracker": "1.16.43-beta-20250502-005537-bb1702b6",
131
- "@blocklet/ui-react": "^2.13.19",
130
+ "@blocklet/tracker": "1.16.43-beta-20250505-062139-b156e7da",
131
+ "@blocklet/ui-react": "^2.13.21",
132
132
  "@blocklet/uploader": "^0.1.84",
133
133
  "@emotion/react": "^11.11.4",
134
134
  "@emotion/styled": "^11.11.5",
@@ -205,5 +205,5 @@
205
205
  "url": "https://github.com/ArcBlock/blocklet-server/issues",
206
206
  "email": "shijun@arcblock.io"
207
207
  },
208
- "gitHead": "16768b0c0ce5cbbe2acd1b96cf89fb88283bf99c"
208
+ "gitHead": "b1056718bbb5c25aef0cacc08d29762ebc420f66"
209
209
  }
@@ -1 +0,0 @@
1
- import{j as e,aa as t,ab as N,T as a,be as P,ad as R,bR as W,bt as z,bS as L,X as E,ap as j,al as D,y as c}from"./vendor-mui-core-B6POpIBB.js";import{r as f}from"./vendor-react-DEoibe3W.js";import{w as I}from"./vendor-hooks-DXGUREV9.js";import{A as T}from"./vendor-utils-CjMBJT5V.js";import{u as O,D as b,n as y}from"./vendor-ux-did-connect-D4-ZeZHm.js";import{L as _}from"./landing-page-BJMRDSCP.js";import{H as F}from"./vendor-arcblock-Dkhgjlzn.js";import{W as B}from"./did-address-C6ni99I7.js";import{u as U,d as H}from"./index-CksPySYI.js";import"./lottie-web-jYmAQWuC.js";function $(){var m,p,g;const{searchParams:i}=new URL(window.location.href),{session:o}=U(),{t:w}=O(),h=i.get("client_id"),v=i.get("scope")||"profile:read",[x,S]=f.useState(v.split(" ").filter(Boolean)),[d,u]=I({client:null,loading:!0});f.useEffect(()=>{(async()=>{const{data:n}=await H.get("/oauth/client",{params:{clientId:h}});u({client:n,loading:!1})})()},[h,u]);const k=s=>{s!=="profile:read"&&S(n=>n.includes(s)?n.filter(A=>A!==s):[...n,s])};if(d.loading||!d.client||!(o!=null&&o.user))return e.jsx(_,{did:(m=window.blocklet)==null?void 0:m.appPid,standalone:!0,children:e.jsx(t,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100%"},children:e.jsx(N,{})})});const{client:r}=d,{user:l}=o,C=r.scope.split(" ");return e.jsxs(_,{did:(p=window.blocklet)==null?void 0:p.appPid,standalone:!0,children:[e.jsx(F,{children:e.jsx("title",{children:w("oauth.title")})}),e.jsxs(t,{sx:{width:"560px",maxWidth:"100%",height:"100%",display:"flex",flexDirection:"column",p:4,bgcolor:"background.paper",borderRadius:2,boxShadow:1},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(b,{src:(g=window.blocklet)==null?void 0:g.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(b,{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(P,{src:l.avatar,style:{width:48,height:48,backgroundColor:"transparent",marginRight:16}}),e.jsxs(t,{sx:{flex:1,overflow:"hidden"},children:[e.jsx(R,{title:l.fullName,children:e.jsx(t,{className:"name",sx:{flex:1,overflow:"hidden",textOverflow:"ellipsis"},children:l.fullName})}),e.jsx(t,{className:"did",sx:{},children:e.jsx(B,{compact:!0,responsive:!1,did:l.did,showQrcode:!0})})]})]}),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(W,{children:Object.entries(y.OAUTH_SCOPES).filter(([s])=>C.includes(s)).map(([s,n])=>e.jsx(z,{control:e.jsx(L,{checked:x.includes(s),onChange:()=>k(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(E,{}),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(j,{href:r.tos_uri,target:"_blank",children:"Terms of Use"}),!!r.tos_uri&&!!r.policy_uri&&" and ",!!r.policy_uri&&e.jsx(j,{href:r.policy_uri,target:"_blank",children:"Privacy Policy"})]})})]})]}),e.jsxs("form",{method:"POST",action:T(window.location.origin,y.WELLKNOWN_SERVICE_PATH_PREFIX,"/oauth/authorize"),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:x.join(" ")}),e.jsx(t,{sx:{mt:"auto",pt:3},children:e.jsxs(D,{direction:"row",spacing:2,children:[e.jsx(c,{variant:"outlined",size:"large",fullWidth:!0,type:"submit",name:"action",value:"deny",children:"Cancel"}),e.jsx(c,{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(c,{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{$ as default};
@@ -1 +0,0 @@
1
- import{r as m}from"./vendor-react-DEoibe3W.js";import{u as n}from"./vendor-ux-did-connect-D4-ZeZHm.js";import{C as p,z as l,K as c,f as u}from"./index-CksPySYI.js";import{a as x,b as d}from"./domain-action-card-DIGUxqW7.js";import{j as t,aa as k,al as f,ak as h}from"./vendor-mui-core-B6POpIBB.js";import"./vendor-utils-CjMBJT5V.js";import"./vendor-hooks-DXGUREV9.js";import"./lottie-web-jYmAQWuC.js";import"./vendor-arcblock-Dkhgjlzn.js";import"./ExpandLess-TUium4RQ.js";import"./permission-PNXSTeNL.js";import"./session-DLQ0rbYE.js";import"./dot-WAAJ-O65.js";import"./useAsync-GjVghrwi.js";import"./confirm-BqrhdaU7.js";import"./format-error-BrmqJs5a.js";import"./actions-BW0Vx00_.js";import"./MoreHoriz-DHyMdwpT.js";import"./delete-confirm-CmXluMcs.js";import"./click-to-copy-0s0a7Ak5.js";import"./util-DJFgW-07.js";import"./useSetState-CWq0AVWn.js";import"./InfoOutlined-BjII93aR.js";import"./index-D_z5kVUS.js";import"./CheckCircle-yKW43XdV.js";function D(){const{blocklet:o,actions:{updateBlockletDomainAliases:i}}=p(),{inService:r}=l(),{t:e}=n(),a=m.useMemo(()=>{let s=!0;return c(o)&&(s=s&&r),s},[r,o]);return t.jsxs(k,{component:f,sx:{maxWidth:820},gap:3,children:[t.jsxs(t.Fragment,{children:[u.isAccessible(o.status)===!1&&t.jsx(h,{severity:"warning",children:e("blocklet.router.noRunning")}),a&&t.jsx(x,{blocklet:o,updateBlockletDomainAliases:i,connectDomainProps:{shouldCheckDomain:!0}})]}),t.jsx(d,{showAllDomains:!0,updateBlockletDomainAliases:i})]})}D.propTypes={};export{D as default};
@@ -1 +0,0 @@
1
- import{j as e,T as w,ap as y,e as P,v as z,aa as n,H as t}from"./vendor-mui-core-B6POpIBB.js";import{k as A,bh as C,bi as E,a1 as j,bj as L}from"./vendor-ux-did-connect-D4-ZeZHm.js";import{t as M}from"./vendor-arcblock-Dkhgjlzn.js";import{f as R}from"./vendor-hooks-DXGUREV9.js";function W({linkProps:r,showExtra:o,...a}){return e.jsxs(w,{...a,children:["Powered by"," ",e.jsx(y,{href:"https://www.arcblock.io",target:"_blank",...r,children:"ArcBlock"}),"'s"," ",e.jsx(y,{href:"https://www.blocklet.io",target:"_blank",...r,children:"Blocklet Technology"}),o?", the decentralized web engine.":null]})}function k({did:r,children:o,title:a,description:d,actions:u,logo:i,logoSize:c,poweredBy:x,termsOfUse:m,standalone:v}){const s=(globalThis==null?void 0:globalThis.blocklet)||(globalThis==null?void 0:globalThis.env)||{},{palette:g}=P(),f=z(l=>l.breakpoints.down("lg")),I=M({meta:s}),T=R(()=>{const l=s.appPid,b=A.isEthereumDid(l),D=b?void 0:C(l);return b?E(l):D.color},[s==null?void 0:s.appPid]);if(!r)return o;a===void 0&&(a=s.appName),d===void 0&&(d=s.appDescription),i===void 0&&(i=I||""),typeof i=="string"&&(i?i=e.jsx(n,{sx:{height:c,maxHeight:c,objectFit:"contain"},component:"img",src:i,alt:`${s.appName}'s logo`}):i=e.jsx(j,{size:c,did:r,src:i,variant:"rounded"})),x===void 0&&(x=e.jsx(W,{linkProps:{color:g.text.secondary,sx:{"&:hover":{textDecoration:"underline"}}},showExtra:!f,sx:{textAlign:"center",fontSize:"12px",color:"text.secondary"}}));let p=o;!o&&!f&&(p=e.jsx(n,{sx:{filter:"blur(180px)",display:"flex"},children:e.jsx(j,{size:210,did:r,variant:"rounded"})}));const B=!!o;let h=!v;return f&&(h=!B),e.jsxs(n,{sx:{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center",px:{xs:2,sm:4,md:8},pt:{xs:2,sm:4,md:6},pb:{xs:4,md:8},background:`radial-gradient(circle at bottom right, ${L(T,.3)} 10%, ${g.background.default} 50%)`,position:"relative"},children:[e.jsxs(n,{sx:{maxWidth:1200,display:"flex",alignItems:"center",justifyContent:[h,p].filter(Boolean).length>1?"space-between":"space-around",width:"100%",margin:"auto"},children:[h?e.jsxs(n,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:[e.jsx(n,{sx:{display:"flex",alignItems:"center"},children:i}),e.jsx(w,{variant:"h2",sx:{fontWeight:"bold",fontSize:{sm:"2.25rem",md:"2.75rem",xl:"3.5rem"}},children:a}),d?e.jsx(n,{variant:"h5",sx:{mb:2,color:"text.secondary"},children:d}):null,u?e.jsx(n,{sx:{mt:8},children:u}):null,m?e.jsx(n,{sx:{mt:-1,color:"grey"},children:m}):null]}):null,p]}),e.jsx(n,{sx:{position:"absolute",zIndex:10,bottom:10,left:10,right:10,textAlign:"center"},children:x})]})}k.propTypes={did:t.string.isRequired,children:t.any.isRequired,title:t.any,description:t.any,logo:t.any,logoSize:t.number,actions:t.any,poweredBy:t.any,termsOfUse:t.any,standalone:t.bool};k.defaultProps={title:void 0,description:void 0,logo:void 0,logoSize:50,standalone:!1};export{k as L};
@@ -1 +0,0 @@
1
- import{j as o}from"./vendor-mui-core-B6POpIBB.js";import"./vendor-react-DEoibe3W.js";import{S as t}from"./studio-BR3c6nt5.js";import"./vendor-ux-did-connect-D4-ZeZHm.js";import"./vendor-utils-CjMBJT5V.js";import"./vendor-hooks-DXGUREV9.js";import"./lottie-web-jYmAQWuC.js";import"./vendor-arcblock-Dkhgjlzn.js";import"./TuneOutlined-Bv7cSbWT.js";function d(){return o.jsx(t,{children:"Coming soon..."})}export{d as default};
@@ -1 +0,0 @@
1
- import{a_ as o}from"./vendor-ux-did-connect-D4-ZeZHm.js";const e=o();export{e as b};
@@ -1 +0,0 @@
1
- import{aB as _,L as i}from"./vendor-ux-did-connect-D4-ZeZHm.js";import{_ as e}from"./vendor-arcblock-Dkhgjlzn.js";import{y as a}from"./index-CksPySYI.js";import{j as r}from"./vendor-mui-core-B6POpIBB.js";const u={en:_(a),ar:()=>e(()=>import("./ar-Duy7ZH--.js"),[]).then(t=>_(t.default)),de:()=>e(()=>import("./de-jJ-wrtW1.js"),[]).then(t=>_(t.default)),es:()=>e(()=>import("./es-CoGP0eAj.js"),[]).then(t=>_(t.default)),fr:()=>e(()=>import("./fr-yctlgsrj.js"),[]).then(t=>_(t.default)),hi:()=>e(()=>import("./hi-Dh_pGPBD.js"),[]).then(t=>_(t.default)),id:()=>e(()=>import("./id-cicarMJv.js"),[]).then(t=>_(t.default)),ja:()=>e(()=>import("./ja-Bm56AvcM.js"),[]).then(t=>_(t.default)),ko:()=>e(()=>import("./ko-B0ZZ2RWO.js"),[]).then(t=>_(t.default)),pt:()=>e(()=>import("./pt-6Xqu-_a4.js"),[]).then(t=>_(t.default)),ru:()=>e(()=>import("./ru-y0N1jyVB.js"),[]).then(t=>_(t.default)),th:()=>e(()=>import("./th-CJa7646q.js"),[]).then(t=>_(t.default)),vi:()=>e(()=>import("./vi-Rc5fwdQU.js"),[]).then(t=>_(t.default)),"zh-TW":()=>e(()=>import("./zh-tw-BSUxp5LQ.js"),[]).then(t=>_(t.default)),zh:()=>e(()=>import("./zh-J32RyrWT.js"),[]).then(t=>_(t.default))};function f(t){return function(o){return r.jsx(i,{translations:u,children:r.jsx(t,{...o})})}}export{f as w};