@epa-wg/custom-element-dist 0.0.26 → 0.0.28

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 (216) hide show
  1. package/.storybook/main.ts +2 -2
  2. package/.storybook/preview.ts +1 -1
  3. package/README.md +4 -4
  4. package/bin/vitest/vitest-browser-importmaps.mjs +20 -20
  5. package/coverage/coverage-final.json +22 -22
  6. package/coverage/index.html +26 -26
  7. package/coverage/src/custom-element/coverage.svg +1 -1
  8. package/coverage/src/custom-element/custom-element.js/coverage.svg +1 -1
  9. package/coverage/src/custom-element/custom-element.js.html +662 -380
  10. package/coverage/src/custom-element/demo/index.html +1 -1
  11. package/coverage/src/custom-element/demo/z.js.html +1 -1
  12. package/coverage/src/custom-element/http-request.js.html +12 -12
  13. package/coverage/src/custom-element/index.html +21 -21
  14. package/coverage/src/custom-element/local-storage.js.html +78 -63
  15. package/coverage/src/custom-element/location-element.js.html +4 -4
  16. package/coverage/src/custom-element/module-url.js/coverage.svg +1 -1
  17. package/coverage/src/custom-element/module-url.js.html +16 -10
  18. package/coverage/src/index.html +1 -1
  19. package/coverage/src/mocks/handlers.ts.html +1 -1
  20. package/coverage/src/mocks/index.html +1 -1
  21. package/coverage/src/stories/attributes.test.stories.ts.html +17 -11
  22. package/coverage/src/stories/coverage.svg +1 -1
  23. package/coverage/src/stories/css.test.stories.ts.html +8 -2
  24. package/coverage/src/stories/dom-merge.test.stories.ts.html +17 -11
  25. package/coverage/src/stories/external-template.test.stories.ts.html +13 -10
  26. package/coverage/src/stories/form.test.stories.ts.html +8 -2
  27. package/coverage/src/stories/http-request.stories.ts.html +1 -1
  28. package/coverage/src/stories/index.html +26 -26
  29. package/coverage/src/stories/local-storage.test.stories.ts/coverage.svg +1 -1
  30. package/coverage/src/stories/local-storage.test.stories.ts.html +106 -76
  31. package/coverage/src/stories/location-element.test.stories.ts.html +8 -2
  32. package/coverage/src/stories/module-url.test.stories.ts.html +8 -2
  33. package/coverage/src/stories/set-url.test.stories.ts.html +8 -2
  34. package/coverage/src/stories/slice-events.test.stories.ts.html +8 -2
  35. package/coverage/src/stories/slots.test.stories.ts.html +8 -2
  36. package/coverage/src/stories/testStoryBook.ts.html +12 -12
  37. package/coverage/src/stories/version-select.test.stories.ts.html +8 -2
  38. package/coverage/src/sum.ts.html +1 -1
  39. package/dist/custom-element-BOIPgtxz.js +565 -0
  40. package/dist/custom-element-CUsSENWc.cjs +97 -0
  41. package/dist/custom-element-bundle.cjs +1 -1
  42. package/dist/custom-element-bundle.js +25 -21
  43. package/dist/demo/a.svg +27 -0
  44. package/dist/demo/demo.css +6 -7
  45. package/dist/demo/external-template.html +3 -3
  46. package/dist/demo/npm-versions-demo.html +21 -8
  47. package/dist/demo/npm-versions.html +54 -25
  48. package/dist/demo/s.xml +11 -21
  49. package/dist/demo/s.xslt +16 -74
  50. package/dist/demo/s1.xslt +59 -59
  51. package/dist/demo/ss.html +24 -57
  52. package/dist/demo/z.html +33 -62
  53. package/dist/demo/z.xml +59 -59
  54. package/dist/demo/z1.html +34 -0
  55. package/dist/local-storage-78EivJ_B.cjs +1 -0
  56. package/dist/local-storage-DzmNKzgN.js +66 -0
  57. package/dist/mockServiceWorker.js +1 -1
  58. package/package.json +27 -25
  59. package/public/demo/a.svg +27 -0
  60. package/public/demo/demo.css +6 -7
  61. package/public/demo/external-template.html +3 -3
  62. package/public/demo/npm-versions-demo.html +21 -8
  63. package/public/demo/npm-versions.html +54 -25
  64. package/public/demo/s.xml +11 -21
  65. package/public/demo/s.xslt +16 -74
  66. package/public/demo/s1.xslt +59 -59
  67. package/public/demo/ss.html +24 -57
  68. package/public/demo/z.html +33 -62
  69. package/public/demo/z.xml +59 -59
  70. package/public/demo/z1.html +34 -0
  71. package/public/mockServiceWorker.js +1 -1
  72. package/src/custom-element/custom-element.js +123 -29
  73. package/src/custom-element/demo/a.svg +27 -0
  74. package/src/custom-element/demo/demo.css +6 -7
  75. package/src/custom-element/demo/external-template.html +3 -3
  76. package/src/custom-element/demo/npm-versions-demo.html +21 -8
  77. package/src/custom-element/demo/npm-versions.html +54 -25
  78. package/src/custom-element/demo/s.xml +11 -21
  79. package/src/custom-element/demo/s.xslt +16 -74
  80. package/src/custom-element/demo/s1.xslt +59 -59
  81. package/src/custom-element/demo/ss.html +24 -57
  82. package/src/custom-element/demo/z.html +33 -62
  83. package/src/custom-element/demo/z.xml +59 -59
  84. package/src/custom-element/demo/z1.html +34 -0
  85. package/src/custom-element/ide/web-types-dce.json +1 -1
  86. package/src/custom-element/ide/web-types-xsl.json +1 -1
  87. package/src/custom-element/index.html +19 -2
  88. package/src/custom-element/local-storage.js +19 -14
  89. package/src/custom-element/module-url.js +3 -2
  90. package/src/dce-social-preview.png +0 -0
  91. package/src/material/angular.css +987 -0
  92. package/src/material/components/autocomplete.html +241 -0
  93. package/src/material/components/dropdown.html +115 -0
  94. package/src/material/components/menu.html +235 -0
  95. package/src/material/components.html +109 -0
  96. package/src/material/demo.css +31 -0
  97. package/src/material/index.html +169 -0
  98. package/src/material/material.css +357 -0
  99. package/src/material/theme/README.md +18 -0
  100. package/src/material/theme/semantic.css +112 -0
  101. package/src/mocks/versions.mock.ts +8 -8
  102. package/src/stories/__screenshots__/http-request.test.ts/http-request-url-change-1.png +0 -0
  103. package/src/stories/attributes.test.stories.ts +6 -4
  104. package/src/stories/css.test.stories.ts +2 -0
  105. package/src/stories/dom-merge.test.stories.ts +11 -9
  106. package/src/stories/external-template.test.stories.ts +4 -3
  107. package/src/stories/form.test.stories.ts +2 -0
  108. package/src/stories/local-storage.test.stories.ts +63 -53
  109. package/src/stories/location-element.test.stories.ts +2 -0
  110. package/src/stories/module-url.test.stories.ts +2 -0
  111. package/src/stories/set-url.test.stories.ts +2 -0
  112. package/src/stories/slice-events.test.stories.ts +2 -0
  113. package/src/stories/slots.test.stories.ts +2 -0
  114. package/src/stories/version-select.test.stories.ts +2 -0
  115. package/src/sum.test.ts +5 -5
  116. package/src/sum.ts +3 -3
  117. package/storybook-static/assets/Color-ERTF36HU-ChyYtq0t.js +1 -0
  118. package/storybook-static/assets/Configure-CJVwFVjC.js +165 -0
  119. package/storybook-static/assets/DocsRenderer-CFRXHY34-Bz6q-OqD.js +2 -0
  120. package/storybook-static/assets/{attributes.test.stories-DIQXccHc.js → attributes.test.stories-BJBuuXgZ.js} +13 -14
  121. package/storybook-static/assets/{css.test.stories-BV2hi4CY.js → css.test.stories-pgbBc17d.js} +1 -1
  122. package/storybook-static/assets/custom-element-BDGsYgbP.js +97 -0
  123. package/storybook-static/assets/{dom-merge.test.stories-Dws0C2-g.js → dom-merge.test.stories-CXcYP_-J.js} +26 -24
  124. package/storybook-static/assets/entry-preview-C313OLrj.js +26 -0
  125. package/storybook-static/assets/{entry-preview-docs-BMKNVQXA.js → entry-preview-docs-B7ORr9w5.js} +2 -2
  126. package/storybook-static/assets/{external-template.test.stories-BHO48b0j.js → external-template.test.stories-CpJ68Ghy.js} +19 -20
  127. package/storybook-static/assets/{form.test.stories-dv9mwp24.js → form.test.stories-D35lyqd8.js} +2 -2
  128. package/storybook-static/assets/{handlers-CaCq2ZPF.js → handlers-B-OZtf2K.js} +13 -13
  129. package/storybook-static/assets/{http-request.stories-B2ke7LtS.js → http-request.stories-DccXgHyF.js} +6 -6
  130. package/storybook-static/assets/iframe-Ddc_axoC.js +2 -0
  131. package/storybook-static/assets/index-BSz1w4Gl.js +234 -0
  132. package/storybook-static/assets/index-BdcJ-iJ7.js +8 -0
  133. package/storybook-static/assets/index-CiCdFubk.js +634 -0
  134. package/storybook-static/assets/{index-Dz4OaB2k.js → index-f2MAjm2i.js} +1 -1
  135. package/storybook-static/assets/index-lY6s0fkU.js +1 -0
  136. package/storybook-static/assets/index-tfEkrhWr.js +1 -0
  137. package/storybook-static/assets/local-storage.test.stories-BY-PWhuk.js +420 -0
  138. package/storybook-static/assets/{location-element.test.stories-BiFvBop7.js → location-element.test.stories-3auBYEaU.js} +3 -3
  139. package/storybook-static/assets/{module-url.test.stories-BXoM34tX.js → module-url.test.stories-B7L9cL60.js} +6 -6
  140. package/storybook-static/assets/{preview-0Jj89qip.js → preview-BRPR-UXC.js} +1 -1
  141. package/storybook-static/assets/preview-BUQm51_C.js +52 -0
  142. package/storybook-static/assets/{preview-DB9FwMii.js → preview-BWzBA1C2.js} +1 -1
  143. package/storybook-static/assets/preview-BhhEZcNS.js +1 -0
  144. package/storybook-static/assets/preview-CcS4DQh8.js +1 -0
  145. package/storybook-static/assets/{preview-Cg7hXPRq.js → preview-CfH4_OzN.js} +2 -2
  146. package/storybook-static/assets/{preview-FpHGYA1q.js → preview-DHPc-V4N.js} +1 -1
  147. package/storybook-static/assets/preview-DYzi3Z2p.js +1 -0
  148. package/storybook-static/assets/{preview-4Up_z4Em.js → preview-caVMbCIR.js} +2 -2
  149. package/storybook-static/assets/preview-ncvtW_hb.js +34 -0
  150. package/storybook-static/assets/{set-url.test.stories-Cg5Z0r7x.js → set-url.test.stories-CuSuDLIx.js} +3 -3
  151. package/storybook-static/assets/{slice-events.test.stories-D_ttGp3g.js → slice-events.test.stories-BkRKsKem.js} +4 -4
  152. package/storybook-static/assets/{slots.test.stories-DBNXOm0T.js → slots.test.stories-BJCUWFkE.js} +8 -8
  153. package/storybook-static/assets/{version-select.test.stories-CgV3UCim.js → version-select.test.stories-B3ybJn_Z.js} +2 -2
  154. package/storybook-static/demo/a.svg +27 -0
  155. package/storybook-static/demo/demo.css +6 -7
  156. package/storybook-static/demo/external-template.html +3 -3
  157. package/storybook-static/demo/npm-versions-demo.html +21 -8
  158. package/storybook-static/demo/npm-versions.html +54 -25
  159. package/storybook-static/demo/s.xml +11 -21
  160. package/storybook-static/demo/s.xslt +16 -74
  161. package/storybook-static/demo/s1.xslt +59 -59
  162. package/storybook-static/demo/ss.html +24 -57
  163. package/storybook-static/demo/z.html +33 -62
  164. package/storybook-static/demo/z.xml +59 -59
  165. package/storybook-static/demo/z1.html +34 -0
  166. package/storybook-static/iframe.html +1 -1
  167. package/storybook-static/index.html +3 -7
  168. package/storybook-static/mockServiceWorker.js +1 -1
  169. package/storybook-static/project.json +1 -1
  170. package/storybook-static/sb-addons/essentials-actions-3/manager-bundle.js +1 -1
  171. package/storybook-static/sb-addons/essentials-backgrounds-4/manager-bundle.js +9 -9
  172. package/storybook-static/sb-addons/essentials-controls-2/manager-bundle.js +76 -94
  173. package/storybook-static/sb-addons/essentials-measure-7/manager-bundle.js +1 -1
  174. package/storybook-static/sb-addons/essentials-outline-8/manager-bundle.js +1 -1
  175. package/storybook-static/sb-addons/essentials-toolbars-6/manager-bundle.js +1 -1
  176. package/storybook-static/sb-addons/essentials-viewport-5/manager-bundle.js +1 -1
  177. package/storybook-static/sb-addons/interactions-9/manager-bundle.js +211 -0
  178. package/storybook-static/sb-addons/interactions-9/manager-bundle.js.LEGAL.txt +0 -0
  179. package/storybook-static/sb-manager/globals-module-info.js +11 -0
  180. package/storybook-static/sb-manager/globals-runtime.js +27803 -26928
  181. package/storybook-static/sb-manager/runtime.js +10341 -10136
  182. package/storybook-static/sb-preview/runtime.js +3841 -3828
  183. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  184. package/.idea/compiler.xml +0 -6
  185. package/.idea/custom-element-dist.iml +0 -13
  186. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  187. package/.idea/misc.xml +0 -6
  188. package/.idea/modules.xml +0 -8
  189. package/.idea/vcs.xml +0 -6
  190. package/.vscode/settings.json +0 -24
  191. package/dist/custom-element-CckoVsvO.cjs +0 -53
  192. package/dist/custom-element-b7c_7Kz4.js +0 -485
  193. package/dist/local-storage-Boafngui.cjs +0 -1
  194. package/dist/local-storage-BqDEu2kF.js +0 -59
  195. package/storybook-static/assets/Color-KGDBMAHA-CH-YyWYq.js +0 -1
  196. package/storybook-static/assets/Configure-DFL_bm2M.js +0 -173
  197. package/storybook-static/assets/DocsRenderer-PKQXORMH-Bz-_1hmS.js +0 -2
  198. package/storybook-static/assets/custom-element-wn23PUwN.js +0 -231
  199. package/storybook-static/assets/entry-preview-BKQ8UCxI.js +0 -8
  200. package/storybook-static/assets/iframe-D4Sos1HO.js +0 -2
  201. package/storybook-static/assets/index-BnXBQqj9.js +0 -605
  202. package/storybook-static/assets/index-C8k3Z-3Y.js +0 -28
  203. package/storybook-static/assets/index-Cpxqn5iQ.js +0 -1
  204. package/storybook-static/assets/index-DGdNYaqV.js +0 -8
  205. package/storybook-static/assets/index-sm7QlJZE.js +0 -1
  206. package/storybook-static/assets/lit-element-DzhCn-8W.js +0 -19
  207. package/storybook-static/assets/local-storage.test.stories-BpogLNq-.js +0 -419
  208. package/storybook-static/assets/preview-BJPLiuSt.js +0 -1
  209. package/storybook-static/assets/preview-BMWqy4Bi.js +0 -1
  210. package/storybook-static/assets/preview-BnWGZYux.js +0 -1
  211. package/storybook-static/assets/preview-Djh1_Tal.js +0 -20
  212. package/storybook-static/assets/preview-oHxXRSIu.js +0 -48
  213. package/storybook-static/sb-addons/chromatic-com-storybook-9/manager-bundle.js +0 -333
  214. package/storybook-static/sb-addons/chromatic-com-storybook-9/manager-bundle.js.LEGAL.txt +0 -40
  215. package/storybook-static/sb-addons/interactions-10/manager-bundle.js +0 -234
  216. /package/{storybook-static/sb-addons/interactions-10/manager-bundle.js.LEGAL.txt → src/material/guide/getting-started/index.html} +0 -0
@@ -1,48 +0,0 @@
1
- import{i as O,d as p,E as j,t as he,I as D,k as de,c as pe,R as fe,h as ge}from"./handlers-CaCq2ZPF.js";function me(e,t){const r=e.emit;if(r._isPiped)return;const s=function(i,...n){return t.emit(i,...n),r.call(this,i,...n)};s._isPiped=!0,e.emit=s}function ye(e){const t=[...e];return Object.freeze(t),t}class ve{subscriptions=[];dispose(){let t;for(;t=this.subscriptions.shift();)t()}}class we{constructor(t){this.initialHandlers=t,this.handlers=[...t]}handlers;prepend(t){this.handlers.unshift(...t)}reset(t){this.handlers=t.length>0?[...t]:[...this.initialHandlers]}currentHandlers(){return this.handlers}}class be extends ve{handlersController;emitter;publicEmitter;events;constructor(...t){super(),O(this.validateHandlers(t),p.formatMessage("Failed to apply given request handlers: invalid input. Did you forget to spread the request handlers Array?")),this.handlersController=new we(t),this.emitter=new j,this.publicEmitter=new j,me(this.emitter,this.publicEmitter),this.events=this.createLifeCycleEvents(),this.subscriptions.push(()=>{this.emitter.removeAllListeners(),this.publicEmitter.removeAllListeners()})}validateHandlers(t){return t.every(r=>!Array.isArray(r))}use(...t){O(this.validateHandlers(t),p.formatMessage('Failed to call "use()" with the given request handlers: invalid input. Did you forget to spread the array of request handlers?')),this.handlersController.prepend(t)}restoreHandlers(){this.handlersController.currentHandlers().forEach(t=>{t.isUsed=!1})}resetHandlers(...t){this.handlersController.reset(t)}listHandlers(){return ye(this.handlersController.currentHandlers())}createLifeCycleEvents(){return{on:(...t)=>this.publicEmitter.on(...t),removeListener:(...t)=>this.publicEmitter.removeListener(...t),removeAllListeners:(...t)=>this.publicEmitter.removeAllListeners(...t)}}}var Re=async e=>{try{return{error:null,data:await e().catch(r=>{throw r})}}catch(t){return{error:t,data:null}}};const Ee=async({request:e,requestId:t,handlers:r,resolutionContext:s})=>{let o=null,i=null;for(const n of r)if(i=await n.run({request:e,requestId:t,resolutionContext:s}),i!==null&&(o=n),i?.response)break;return o?{handler:o,parsedResult:i?.parsedResult,response:i?.response}:null};async function ke(e,t="warn"){const r=new URL(e.url),s=he(r)+r.search,o=`intercepted a request without a matching request handler:
2
-
3
- • ${e.method} ${s}
4
-
5
- If you still wish to intercept this unhandled request, please create a request handler for it.
6
- Read more: https://mswjs.io/docs/getting-started/mocks`;function i(n){switch(n){case"error":throw p.error("Error: %s",o),new D(p.formatMessage('Cannot bypass a request when using the "error" strategy for the "onUnhandledRequest" option.'));case"warn":{p.warn("Warning: %s",o);break}case"bypass":break;default:throw new D(p.formatMessage('Failed to react to an unhandled request: unknown strategy "%s". Please provide one of the supported strategies ("bypass", "warn", "error") or a custom callback function as the value of the "onUnhandledRequest" option.',n))}}if(typeof t=="function"){t(e,{warning:i.bind(null,"warn"),error:i.bind(null,"error")});return}r.protocol!=="file:"&&i(t)}function qe(e,t){const r=Reflect.get(t,de);r&&pe.setCookie(r,e.url)}async function K(e,t,r,s,o,i){if(o.emit("request:start",{request:e,requestId:t}),e.headers.get("x-msw-intention")==="bypass"){o.emit("request:end",{request:e,requestId:t}),i?.onPassthroughResponse?.(e);return}const n=await Re(()=>Ee({request:e,requestId:t,handlers:r,resolutionContext:i?.resolutionContext}));if(n.error)throw o.emit("unhandledException",{error:n.error,request:e,requestId:t}),n.error;if(!n.data){await ke(e,s.onUnhandledRequest),o.emit("request:unhandled",{request:e,requestId:t}),o.emit("request:end",{request:e,requestId:t}),i?.onPassthroughResponse?.(e);return}const{response:a}=n.data;if(!a){o.emit("request:end",{request:e,requestId:t}),i?.onPassthroughResponse?.(e);return}if(a.status===302&&a.headers.get("x-msw-intention")==="passthrough"){o.emit("request:end",{request:e,requestId:t}),i?.onPassthroughResponse?.(e);return}qe(e,a),o.emit("request:match",{request:e,requestId:t});const c=n.data,l=i?.transformResponse?.(a)||a;return i?.onMockedResponse?.(l,c),o.emit("request:end",{request:e,requestId:t}),l}function Le(e){return{status:e.status,statusText:e.statusText,headers:Object.fromEntries(e.headers.entries())}}function U(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function J(e,t){return Object.entries(t).reduce((r,[s,o])=>{const i=r[s];return Array.isArray(i)&&Array.isArray(o)?(r[s]=i.concat(o),r):U(i)&&U(o)?(r[s]=J(i,o),r):(r[s]=o,r)},Object.assign({},e))}var Se={},Te=/(%?)(%([sdijo]))/g;function xe(e,t){switch(t){case"s":return e;case"d":case"i":return Number(e);case"j":return JSON.stringify(e);case"o":{if(typeof e=="string")return e;const r=JSON.stringify(e);return r==="{}"||r==="[]"||/^\[object .+?\]$/.test(r)?e:r}}}function L(e,...t){if(t.length===0)return e;let r=0,s=e.replace(Te,(o,i,n,a)=>{const c=t[r],l=xe(c,a);return i?o:(r++,l)});return r<t.length&&(s+=` ${t.slice(r).join(" ")}`),s=s.replace(/%{2,2}/g,"%"),s}var Pe=2;function Me(e){if(!e.stack)return;const t=e.stack.split(`
7
- `);t.splice(1,Pe),e.stack=t.join(`
8
- `)}var Ce=class extends Error{constructor(e,...t){super(e),this.message=e,this.name="Invariant Violation",this.message=L(e,...t),Me(this)}},w=(e,t,...r)=>{if(!e)throw new Ce(t,...r)};w.as=(e,t,r,...s)=>{if(!t){const o=s.length===0?r:L(r,s);let i;try{i=Reflect.construct(e,[o])}catch{i=e(o)}throw i}};function H(){if(typeof navigator<"u"&&navigator.product==="ReactNative")return!0;if(typeof process<"u"){const e=process.type;return e==="renderer"||e==="worker"?!1:!!(process.versions&&process.versions.node)}return!1}var W=async e=>{try{return{error:null,data:await e().catch(r=>{throw r})}}catch(t){return{error:t,data:null}}};function Ae(e){return new URL(e,location.href).href}function P(e,t,r){return[e.active,e.installing,e.waiting].filter(n=>n!=null).find(n=>r(n.scriptURL,t))||null}var Ie=async(e,t={},r)=>{const s=Ae(e),o=await navigator.serviceWorker.getRegistrations().then(a=>a.filter(c=>P(c,s,r)));!navigator.serviceWorker.controller&&o.length>0&&location.reload();const[i]=o;if(i)return i.update().then(()=>[P(i,s,r),i]);const n=await W(async()=>{const a=await navigator.serviceWorker.register(e,t);return[P(a,s,r),a]});if(n.error){if(n.error.message.includes("(404)")){const c=new URL(t?.scope||"/",location.href);throw new Error(p.formatMessage(`Failed to register a Service Worker for scope ('${c.href}') with script ('${s}'): Service Worker script does not exist at the given path.
9
-
10
- Did you forget to run "npx msw init <PUBLIC_DIR>"?
11
-
12
- Learn more about creating the Service Worker script: https://mswjs.io/docs/cli/init`))}throw new Error(p.formatMessage(`Failed to register the Service Worker:
13
-
14
- %s`,n.error.message))}return n.data};function z(e={}){if(e.quiet)return;const t=e.message||"Mocking enabled.";console.groupCollapsed(`%c${p.formatMessage(t)}`,"color:orangered;font-weight:bold;"),console.log("%cDocumentation: %chttps://mswjs.io/docs","font-weight:bold","font-weight:normal"),console.log("Found an issue? https://github.com/mswjs/msw/issues"),e.workerUrl&&console.log("Worker script URL:",e.workerUrl),e.workerScope&&console.log("Worker scope:",e.workerScope),console.groupEnd()}async function He(e,t){if(e.workerChannel.send("MOCK_ACTIVATE"),await e.events.once("MOCKING_ENABLED"),e.isMockingEnabled){p.warn('Found a redundant "worker.start()" call. Note that starting the worker while mocking is already enabled will have no effect. Consider removing this "worker.start()" call.');return}e.isMockingEnabled=!0,z({quiet:t.quiet,workerScope:e.registration?.scope,workerUrl:e.worker?.scriptURL})}var We=class{constructor(e){this.port=e}postMessage(e,...t){const[r,s]=t;this.port.postMessage({type:e,data:r},{transfer:s})}};function _e(e){if(!["HEAD","GET"].includes(e.method))return e.body}function Oe(e){return new Request(e.url,{...e,body:_e(e)})}var je=(e,t)=>async(r,s)=>{const o=new We(r.ports[0]),i=s.payload.id,n=Oe(s.payload),a=n.clone(),c=n.clone();fe.cache.set(n,c),e.requests.set(i,c);try{await K(n,i,e.getRequestHandlers(),t,e.emitter,{onPassthroughResponse(){o.postMessage("PASSTHROUGH")},async onMockedResponse(l,{handler:h,parsedResult:u}){const d=l.clone(),g=l.clone(),f=Le(l);if(e.supports.readableStreamTransfer){const m=l.body;o.postMessage("MOCK_RESPONSE",{...f,body:m},m?[m]:void 0)}else{const m=l.body===null?null:await d.arrayBuffer();o.postMessage("MOCK_RESPONSE",{...f,body:m})}t.quiet||e.emitter.once("response:mocked",()=>{h.log({request:a,response:g,parsedResult:u})})}})}catch(l){l instanceof Error&&(p.error(`Uncaught exception in the request handler for "%s %s":
15
-
16
- %s
17
-
18
- This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/recipes/mocking-error-responses`,n.method,n.url,l.stack??l),o.postMessage("MOCK_RESPONSE",{status:500,statusText:"Request Handler Error",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:l.name,message:l.message,stack:l.stack})}))}};async function De(e){e.workerChannel.send("INTEGRITY_CHECK_REQUEST");const{payload:t}=await e.events.once("INTEGRITY_CHECK_RESPONSE");t.checksum!=="26357c79639bfa20d64c0efca2a87423"&&p.warn(`The currently registered Service Worker has been generated by a different version of MSW (${t.packageVersion}) and may not be fully compatible with the installed version.
19
-
20
- It's recommended you update your worker script by running this command:
21
-
22
- • npx msw init <PUBLIC_DIR>
23
-
24
- You can also automate this process and make the worker script update automatically upon the library installations. Read more: https://mswjs.io/docs/cli/init.`)}var Ue=new TextEncoder;function Be(e){return Ue.encode(e)}function $e(e,t){return new TextDecoder(t).decode(e)}function Ne(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}var E=Symbol("isPatchedModule");function Fe(e,t){try{return e[t],!0}catch{return!1}}var Ge=new Set([101,103,204,205,304]);function Y(e){return Ge.has(e)}function Q(e){return new Response(JSON.stringify(e instanceof Error?{name:e.name,message:e.message,stack:e.stack}:e),{status:500,statusText:"Unhandled Exception",headers:{"Content-Type":"application/json"}})}function S(e){return Fe(e,"type")&&e.type==="error"}var Xe=Object.defineProperty,Ve=(e,t)=>{for(var r in t)Xe(e,r,{get:t[r],enumerable:!0})},M={};Ve(M,{blue:()=>Je,gray:()=>C,green:()=>Ye,red:()=>ze,yellow:()=>Ke});function Ke(e){return`\x1B[33m${e}\x1B[0m`}function Je(e){return`\x1B[34m${e}\x1B[0m`}function C(e){return`\x1B[90m${e}\x1B[0m`}function ze(e){return`\x1B[31m${e}\x1B[0m`}function Ye(e){return`\x1B[32m${e}\x1B[0m`}var x=H(),Z=class{constructor(e){this.name=e,this.prefix=`[${this.name}]`;const t=B("DEBUG"),r=B("LOG_LEVEL");t==="1"||t==="true"||typeof t<"u"&&this.name.startsWith(t)?(this.debug=q(r,"debug")?v:this.debug,this.info=q(r,"info")?v:this.info,this.success=q(r,"success")?v:this.success,this.warning=q(r,"warning")?v:this.warning,this.error=q(r,"error")?v:this.error):(this.info=v,this.success=v,this.warning=v,this.error=v,this.only=v)}prefix;extend(e){return new Z(`${this.name}:${e}`)}debug(e,...t){this.logEntry({level:"debug",message:C(e),positionals:t,prefix:this.prefix,colors:{prefix:"gray"}})}info(e,...t){this.logEntry({level:"info",message:e,positionals:t,prefix:this.prefix,colors:{prefix:"blue"}});const r=new Qe;return(s,...o)=>{r.measure(),this.logEntry({level:"info",message:`${s} ${C(`${r.deltaTime}ms`)}`,positionals:o,prefix:this.prefix,colors:{prefix:"blue"}})}}success(e,...t){this.logEntry({level:"info",message:e,positionals:t,prefix:`✔ ${this.prefix}`,colors:{timestamp:"green",prefix:"green"}})}warning(e,...t){this.logEntry({level:"warning",message:e,positionals:t,prefix:`⚠ ${this.prefix}`,colors:{timestamp:"yellow",prefix:"yellow"}})}error(e,...t){this.logEntry({level:"error",message:e,positionals:t,prefix:`✖ ${this.prefix}`,colors:{timestamp:"red",prefix:"red"}})}only(e){e()}createEntry(e,t){return{timestamp:new Date,level:e,message:t}}logEntry(e){const{level:t,message:r,prefix:s,colors:o,positionals:i=[]}=e,n=this.createEntry(t,r),a=o?.timestamp||"gray",c=o?.prefix||"gray",l={timestamp:M[a],prefix:M[c]};this.getWriter(t)([l.timestamp(this.formatTimestamp(n.timestamp))].concat(s!=null?l.prefix(s):[]).concat($(r)).join(" "),...i.map($))}formatTimestamp(e){return`${e.toLocaleTimeString("en-GB")}:${e.getMilliseconds()}`}getWriter(e){switch(e){case"debug":case"success":case"info":return Ze;case"warning":return et;case"error":return tt}}},Qe=class{startTime;endTime;deltaTime;constructor(){this.startTime=performance.now()}measure(){this.endTime=performance.now();const e=this.endTime-this.startTime;this.deltaTime=e.toFixed(2)}},v=()=>{};function Ze(e,...t){if(x){process.stdout.write(L(e,...t)+`
25
- `);return}console.log(e,...t)}function et(e,...t){if(x){process.stderr.write(L(e,...t)+`
26
- `);return}console.warn(e,...t)}function tt(e,...t){if(x){process.stderr.write(L(e,...t)+`
27
- `);return}console.error(e,...t)}function B(e){return x?Se[e]:globalThis[e]?.toString()}function q(e,t){return e!==void 0&&e!==t}function $(e){return typeof e>"u"?"undefined":e===null?"null":typeof e=="string"?e:typeof e=="object"?JSON.stringify(e):e.toString()}var rt=class extends Error{constructor(e,t,r){super(`Possible EventEmitter memory leak detected. ${r} ${t.toString()} listeners added. Use emitter.setMaxListeners() to increase limit`),this.emitter=e,this.type=t,this.count=r,this.name="MaxListenersExceededWarning"}},ee=class{static listenerCount(e,t){return e.listenerCount(t)}constructor(){this.events=new Map,this.maxListeners=ee.defaultMaxListeners,this.hasWarnedAboutPotentialMemoryLeak=!1}_emitInternalEvent(e,t,r){this.emit(e,t,r)}_getListeners(e){return Array.prototype.concat.apply([],this.events.get(e))||[]}_removeListener(e,t){const r=e.indexOf(t);return r>-1&&e.splice(r,1),[]}_wrapOnceListener(e,t){const r=(...s)=>(this.removeListener(e,r),t.apply(this,s));return Object.defineProperty(r,"name",{value:t.name}),r}setMaxListeners(e){return this.maxListeners=e,this}getMaxListeners(){return this.maxListeners}eventNames(){return Array.from(this.events.keys())}emit(e,...t){const r=this._getListeners(e);return r.forEach(s=>{s.apply(this,t)}),r.length>0}addListener(e,t){this._emitInternalEvent("newListener",e,t);const r=this._getListeners(e).concat(t);if(this.events.set(e,r),this.maxListeners>0&&this.listenerCount(e)>this.maxListeners&&!this.hasWarnedAboutPotentialMemoryLeak){this.hasWarnedAboutPotentialMemoryLeak=!0;const s=new rt(this,e,this.listenerCount(e));console.warn(s)}return this}on(e,t){return this.addListener(e,t)}once(e,t){return this.addListener(e,this._wrapOnceListener(e,t))}prependListener(e,t){const r=this._getListeners(e);if(r.length>0){const s=[t].concat(r);this.events.set(e,s)}else this.events.set(e,r.concat(t));return this}prependOnceListener(e,t){return this.prependListener(e,this._wrapOnceListener(e,t))}removeListener(e,t){const r=this._getListeners(e);return r.length>0&&(this._removeListener(r,t),this.events.set(e,r),this._emitInternalEvent("removeListener",e,t)),this}off(e,t){return this.removeListener(e,t)}removeAllListeners(e){return e?this.events.delete(e):this.events.clear(),this}listeners(e){return Array.from(this._getListeners(e))}listenerCount(e){return this._getListeners(e).length}rawListeners(e){return this.listeners(e)}},te=ee;te.defaultMaxListeners=10;var st="x-interceptors-internal-request-id";function N(e){return globalThis[e]||void 0}function nt(e,t){globalThis[e]=t}function ot(e){delete globalThis[e]}var _=class{constructor(e){this.symbol=e,this.readyState="INACTIVE",this.emitter=new te,this.subscriptions=[],this.logger=new Z(e.description),this.emitter.setMaxListeners(0),this.logger.info("constructing the interceptor...")}checkEnvironment(){return!0}apply(){const e=this.logger.extend("apply");if(e.info("applying the interceptor..."),this.readyState==="APPLIED"){e.info("intercepted already applied!");return}if(!this.checkEnvironment()){e.info("the interceptor cannot be applied in this environment!");return}this.readyState="APPLYING";const r=this.getInstance();if(r){e.info("found a running instance, reusing..."),this.on=(s,o)=>(e.info('proxying the "%s" listener',s),r.emitter.addListener(s,o),this.subscriptions.push(()=>{r.emitter.removeListener(s,o),e.info('removed proxied "%s" listener!',s)}),this),this.readyState="APPLIED";return}e.info("no running instance found, setting up a new instance..."),this.setup(),this.setInstance(),this.readyState="APPLIED"}setup(){}on(e,t){const r=this.logger.extend("on");return this.readyState==="DISPOSING"||this.readyState==="DISPOSED"?(r.info("cannot listen to events, already disposed!"),this):(r.info('adding "%s" event listener:',e,t),this.emitter.on(e,t),this)}once(e,t){return this.emitter.once(e,t),this}off(e,t){return this.emitter.off(e,t),this}removeAllListeners(e){return this.emitter.removeAllListeners(e),this}dispose(){const e=this.logger.extend("dispose");if(this.readyState==="DISPOSED"){e.info("cannot dispose, already disposed!");return}if(e.info("disposing the interceptor..."),this.readyState="DISPOSING",!this.getInstance()){e.info("no interceptors running, skipping dispose...");return}if(this.clearInstance(),e.info("global symbol deleted:",N(this.symbol)),this.subscriptions.length>0){e.info("disposing of %d subscriptions...",this.subscriptions.length);for(const t of this.subscriptions)t();this.subscriptions=[],e.info("disposed of all subscriptions!",this.subscriptions.length)}this.emitter.removeAllListeners(),e.info("destroyed the listener!"),this.readyState="DISPOSED"}getInstance(){var e;const t=N(this.symbol);return this.logger.info("retrieved global instance:",(e=t?.constructor)==null?void 0:e.name),t}setInstance(){nt(this.symbol,this),this.logger.info("set global instance!",this.symbol.description)}clearInstance(){ot(this.symbol),this.logger.info("cleared global instance!",this.symbol.description)}};function re(){return Math.random().toString(16).slice(2)}var A=class extends _{constructor(e){A.symbol=Symbol(e.name),super(A.symbol),this.interceptors=e.interceptors}setup(){const e=this.logger.extend("setup");e.info("applying all %d interceptors...",this.interceptors.length);for(const t of this.interceptors)e.info('applying "%s" interceptor...',t.constructor.name),t.apply(),e.info("adding interceptor dispose subscription"),this.subscriptions.push(()=>t.dispose())}on(e,t){for(const r of this.interceptors)r.on(e,t);return this}once(e,t){for(const r of this.interceptors)r.once(e,t);return this}off(e,t){for(const r of this.interceptors)r.off(e,t);return this}removeAllListeners(e){for(const t of this.interceptors)t.removeAllListeners(e);return this}};function it(e){return(t,r)=>{const{payload:s}=r,{requestId:o}=s,i=e.requests.get(o);if(e.requests.delete(o),s.type?.includes("opaque"))return;const n=s.status===0?Response.error():new Response(Y(s.status)?null:s.body,s);n.url||Object.defineProperty(n,"url",{value:i.url,enumerable:!0,writable:!1}),e.emitter.emit(s.isMockedResponse?"response:mocked":"response:bypass",{response:n,request:i,requestId:s.requestId})}}function at(e,t){!t?.quiet&&!location.href.startsWith(e.scope)&&p.warn(`Cannot intercept requests on this page because it's outside of the worker's scope ("${e.scope}"). If you wish to mock API requests on this page, you must resolve this scope issue.
28
-
29
- - (Recommended) Register the worker at the root level ("/") of your application.
30
- - Set the "Service-Worker-Allowed" response header to allow out-of-scope workers.`)}var lt=e=>function(r,s){return(async()=>{e.events.removeAllListeners(),e.workerChannel.on("REQUEST",je(e,r)),e.workerChannel.on("RESPONSE",it(e));const n=await Ie(r.serviceWorker.url,r.serviceWorker.options,r.findWorker),[a,c]=n;if(!a){const l=s?.findWorker?p.formatMessage(`Failed to locate the Service Worker registration using a custom "findWorker" predicate.
31
-
32
- Please ensure that the custom predicate properly locates the Service Worker registration at "%s".
33
- More details: https://mswjs.io/docs/api/setup-worker/start#findworker
34
- `,r.serviceWorker.url):p.formatMessage(`Failed to locate the Service Worker registration.
35
-
36
- This most likely means that the worker script URL "%s" cannot resolve against the actual public hostname (%s). This may happen if your application runs behind a proxy, or has a dynamic hostname.
37
-
38
- Please consider using a custom "serviceWorker.url" option to point to the actual worker script location, or a custom "findWorker" option to resolve the Service Worker registration manually. More details: https://mswjs.io/docs/api/setup-worker/start`,r.serviceWorker.url,location.host);throw new Error(l)}return e.worker=a,e.registration=c,e.events.addListener(window,"beforeunload",()=>{a.state!=="redundant"&&e.workerChannel.send("CLIENT_CLOSED"),window.clearInterval(e.keepAliveInterval)}),await De(e).catch(l=>{p.error("Error while checking the worker script integrity. Please report this on GitHub (https://github.com/mswjs/msw/issues), including the original error below."),console.error(l)}),e.keepAliveInterval=window.setInterval(()=>e.workerChannel.send("KEEPALIVE_REQUEST"),5e3),at(c,e.startOptions),c})().then(async n=>{const a=n.installing||n.waiting;return a&&await new Promise(c=>{a.addEventListener("statechange",()=>{if(a.state==="activated")return c()})}),await He(e,r).catch(c=>{throw new Error(`Failed to enable mocking: ${c?.message}`)}),n})};function se(e={}){e.quiet||console.log(`%c${p.formatMessage("Mocking disabled.")}`,"color:orangered;font-weight:bold;")}var ct=e=>function(){if(!e.isMockingEnabled){p.warn('Found a redundant "worker.stop()" call. Note that stopping the worker while mocking already stopped has no effect. Consider removing this "worker.stop()" call.');return}e.workerChannel.send("MOCK_DEACTIVATE"),e.isMockingEnabled=!1,window.clearInterval(e.keepAliveInterval),se({quiet:e.startOptions?.quiet})},ut={serviceWorker:{url:"/mockServiceWorker.js",options:null},quiet:!1,waitUntilReady:!0,onUnhandledRequest:"warn",findWorker(e,t){return e===t}};function ht(){const e=(t,r)=>{e.state="pending",e.resolve=s=>{if(e.state!=="pending")return;e.result=s;const o=i=>(e.state="fulfilled",i);return t(s instanceof Promise?s:Promise.resolve(s).then(o))},e.reject=s=>{if(e.state==="pending")return queueMicrotask(()=>{e.state="rejected"}),r(e.rejectionReason=s)}};return e}var I=class extends Promise{#e;resolve;reject;constructor(e=null){const t=ht();super((r,s)=>{t(r,s),e?.(t.resolve,t.reject)}),this.#e=t,this.resolve=this.#e.resolve,this.reject=this.#e.reject}get state(){return this.#e.state}get rejectionReason(){return this.#e.rejectionReason}then(e,t){return this.#t(super.then(e,t))}catch(e){return this.#t(super.catch(e))}finally(e){return this.#t(super.finally(e))}#t(e){return Object.defineProperties(e,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}},dt=class{constructor(e){this.request=e,this.responsePromise=new I}respondWith(e){w(this.responsePromise.state==="pending",'Failed to respond to "%s %s" request: the "request" event has already been responded to.',this.request.method,this.request.url),this.responsePromise.resolve(e)}};function ne(e){const t=new dt(e);return Reflect.set(e,"respondWith",t.respondWith.bind(t)),{interactiveRequest:e,requestController:t}}async function T(e,t,...r){const s=e.listeners(t);if(s.length!==0)for(const o of s)await o.apply(e,r)}function pt(e){try{return new URL(e),!0}catch{return!1}}var oe=class extends _{constructor(){super(oe.symbol)}checkEnvironment(){return typeof globalThis<"u"&&typeof globalThis.fetch<"u"}async setup(){const e=globalThis.fetch;w(!e[E],'Failed to patch the "fetch" module: already patched.'),globalThis.fetch=async(t,r)=>{var s;const o=re(),i=typeof t=="string"&&typeof location<"u"&&!pt(t)?new URL(t,location.origin):t,n=new Request(i,r);this.logger.info("[%s] %s",n.method,n.url);const{interactiveRequest:a,requestController:c}=ne(n);this.logger.info('emitting the "request" event for %d listener(s)...',this.emitter.listenerCount("request")),this.emitter.once("request",({requestId:y})=>{y===o&&c.responsePromise.state==="pending"&&c.responsePromise.resolve(void 0)}),this.logger.info("awaiting for the mocked response...");const l=a.signal,h=new I;l&&l.addEventListener("abort",()=>{h.reject(l.reason)},{once:!0});const u=new I,d=y=>{if(this.logger.info("responding with a mock response:",y),this.emitter.listenerCount("response")>0){this.logger.info('emitting the "response" event...');const b=y.clone();this.emitter.emit("response",{response:b,isMockedResponse:!0,request:a,requestId:o})}Object.defineProperty(y,"url",{writable:!1,enumerable:!0,configurable:!1,value:n.url}),u.resolve(y)},g=y=>{u.reject(y)},f=await W(async()=>{const y=T(this.emitter,"request",{request:a,requestId:o});await Promise.race([h,y,c.responsePromise]),this.logger.info("all request listeners have been resolved!");const b=await c.responsePromise;return this.logger.info("event.respondWith called with:",b),b});if(h.state==="rejected")return this.logger.info("request has been aborted:",h.rejectionReason),u.reject(h.rejectionReason),u;if(f.error)return this.logger.info("request listerner threw an error:",f.error),f.error instanceof Response&&(S(f.error)?g(F(f.error)):d(f.error)),this.emitter.listenerCount("unhandledException")>0&&(await T(this.emitter,"unhandledException",{error:f.error,request:n,requestId:o,controller:{respondWith:d,errorWith:g}}),u.state!=="pending")||d(Q(f.error)),u;const m=f.data;return m&&!((s=n.signal)!=null&&s.aborted)?(this.logger.info("received mocked response:",m),S(m)?(this.logger.info("received a network error response, rejecting the request promise..."),g(F(m))):d(m),u):(this.logger.info("no mocked response received!"),e(n).then(y=>{if(this.logger.info("original fetch performed",y),this.emitter.listenerCount("response")>0){this.logger.info('emitting the "response" event...');const b=y.clone();this.emitter.emit("response",{response:b,isMockedResponse:!1,request:a,requestId:o})}return y}))},Object.defineProperty(globalThis.fetch,E,{enumerable:!0,configurable:!0,value:!0}),this.subscriptions.push(()=>{Object.defineProperty(globalThis.fetch,E,{value:void 0}),globalThis.fetch=e,this.logger.info('restored native "globalThis.fetch"!',globalThis.fetch.name)})}},ie=oe;ie.symbol=Symbol("fetch");function F(e){return Object.assign(new TypeError("Failed to fetch"),{cause:e})}function ft(e,t){const r=new Uint8Array(e.byteLength+t.byteLength);return r.set(e,0),r.set(t,e.byteLength),r}var ae=class{constructor(e,t){this.AT_TARGET=0,this.BUBBLING_PHASE=0,this.CAPTURING_PHASE=0,this.NONE=0,this.type="",this.srcElement=null,this.currentTarget=null,this.eventPhase=0,this.isTrusted=!0,this.composed=!1,this.cancelable=!0,this.defaultPrevented=!1,this.bubbles=!0,this.lengthComputable=!0,this.loaded=0,this.total=0,this.cancelBubble=!1,this.returnValue=!0,this.type=e,this.target=t?.target||null,this.currentTarget=t?.currentTarget||null,this.timeStamp=Date.now()}composedPath(){return[]}initEvent(e,t,r){this.type=e,this.bubbles=!!t,this.cancelable=!!r}preventDefault(){this.defaultPrevented=!0}stopPropagation(){}stopImmediatePropagation(){}},gt=class extends ae{constructor(e,t){super(e),this.lengthComputable=t?.lengthComputable||!1,this.composed=t?.composed||!1,this.loaded=t?.loaded||0,this.total=t?.total||0}},mt=typeof ProgressEvent<"u";function yt(e,t,r){const s=["error","progress","loadstart","loadend","load","timeout","abort"],o=mt?ProgressEvent:gt;return s.includes(t)?new o(t,{lengthComputable:!0,loaded:r?.loaded||0,total:r?.total||0}):new ae(t,{target:e,currentTarget:e})}function le(e,t){if(!(t in e))return null;if(Object.prototype.hasOwnProperty.call(e,t))return e;const s=Reflect.getPrototypeOf(e);return s?le(s,t):null}function G(e,t){return new Proxy(e,vt(t))}function vt(e){const{constructorCall:t,methodCall:r,getProperty:s,setProperty:o}=e,i={};return typeof t<"u"&&(i.construct=function(n,a,c){const l=Reflect.construct.bind(null,n,a,c);return t.call(c,a,l)}),i.set=function(n,a,c){const l=()=>{const h=le(n,a)||n,u=Reflect.getOwnPropertyDescriptor(h,a);return typeof u?.set<"u"?(u.set.apply(n,[c]),!0):Reflect.defineProperty(h,a,{writable:!0,enumerable:!0,configurable:!0,value:c})};return typeof o<"u"?o.call(n,[a,c],l):l()},i.get=function(n,a,c){const l=()=>n[a],h=typeof s<"u"?s.call(n,[a,c],l):l();return typeof h=="function"?(...u)=>{const d=h.bind(n,...u);return typeof r<"u"?r.call(n,[a,u],d):d()}:h},i}function wt(e){return["application/xhtml+xml","application/xml","image/svg+xml","text/html","text/xml"].some(r=>e.startsWith(r))}function bt(e){try{return JSON.parse(e)}catch{return null}}function Rt(e,t){const r=Y(e.status)?null:t;return new Response(r,{status:e.status,statusText:e.statusText,headers:Et(e.getAllResponseHeaders())})}function Et(e){const t=new Headers,r=e.split(/[\r\n]+/);for(const s of r){if(s.trim()==="")continue;const[o,...i]=s.split(": "),n=i.join(": ");t.append(o,n)}return t}var X=Symbol("isMockedResponse"),kt=H(),qt=class{constructor(e,t){this.initialRequest=e,this.logger=t,this.method="GET",this.url=null,this.events=new Map,this.requestId=re(),this.requestHeaders=new Headers,this.responseBuffer=new Uint8Array,this.request=G(e,{setProperty:([r,s],o)=>{switch(r){case"ontimeout":{const i=r.slice(2);return this.request.addEventListener(i,s),o()}default:return o()}},methodCall:([r,s],o)=>{var i;switch(r){case"open":{const[n,a]=s;return typeof a>"u"?(this.method="GET",this.url=V(n)):(this.method=n,this.url=V(a)),this.logger=this.logger.extend(`${this.method} ${this.url.href}`),this.logger.info("open",this.method,this.url.href),o()}case"addEventListener":{const[n,a]=s;return this.registerEvent(n,a),this.logger.info("addEventListener",n,a),o()}case"setRequestHeader":{const[n,a]=s;return this.requestHeaders.set(n,a),this.logger.info("setRequestHeader",n,a),o()}case"send":{const[n]=s;n!=null&&(this.requestBody=typeof n=="string"?Be(n):n),this.request.addEventListener("load",()=>{if(typeof this.onResponse<"u"){const l=Rt(this.request,this.request.response);this.onResponse.call(this,{response:l,isMockedResponse:X in this.request,request:a,requestId:this.requestId})}});const a=this.toFetchApiRequest();(((i=this.onRequest)==null?void 0:i.call(this,{request:a,requestId:this.requestId}))||Promise.resolve()).finally(()=>{if(this.request.readyState<this.request.LOADING)return this.logger.info("request callback settled but request has not been handled (readystate %d), performing as-is...",this.request.readyState),kt&&this.request.setRequestHeader(st,this.requestId),o()});break}default:return o()}}})}registerEvent(e,t){const s=(this.events.get(e)||[]).concat(t);this.events.set(e,s),this.logger.info('registered event "%s"',e,t)}respondWith(e){this.logger.info("responding with a mocked response: %d %s",e.status,e.statusText),R(this.request,X,!0),R(this.request,"status",e.status),R(this.request,"statusText",e.statusText),R(this.request,"responseURL",this.url.href),this.request.getResponseHeader=new Proxy(this.request.getResponseHeader,{apply:(s,o,i)=>{if(this.logger.info("getResponseHeader",i[0]),this.request.readyState<this.request.HEADERS_RECEIVED)return this.logger.info("headers not received yet, returning null"),null;const n=e.headers.get(i[0]);return this.logger.info('resolved response header "%s" to',i[0],n),n}}),this.request.getAllResponseHeaders=new Proxy(this.request.getAllResponseHeaders,{apply:()=>{if(this.logger.info("getAllResponseHeaders"),this.request.readyState<this.request.HEADERS_RECEIVED)return this.logger.info("headers not received yet, returning empty string"),"";const o=Array.from(e.headers.entries()).map(([i,n])=>`${i}: ${n}`).join(`\r
39
- `);return this.logger.info("resolved all response headers to",o),o}}),Object.defineProperties(this.request,{response:{enumerable:!0,configurable:!1,get:()=>this.response},responseText:{enumerable:!0,configurable:!1,get:()=>this.responseText},responseXML:{enumerable:!0,configurable:!1,get:()=>this.responseXML}});const t=e.headers.has("Content-Length")?Number(e.headers.get("Content-Length")):void 0;this.logger.info("calculated response body length",t),this.trigger("loadstart",{loaded:0,total:t}),this.setReadyState(this.request.HEADERS_RECEIVED),this.setReadyState(this.request.LOADING);const r=()=>{this.logger.info("finalizing the mocked response..."),this.setReadyState(this.request.DONE),this.trigger("load",{loaded:this.responseBuffer.byteLength,total:t}),this.trigger("loadend",{loaded:this.responseBuffer.byteLength,total:t})};if(e.body){this.logger.info("mocked response has body, streaming...");const s=e.body.getReader(),o=async()=>{const{value:i,done:n}=await s.read();if(n){this.logger.info("response body stream done!"),r();return}i&&(this.logger.info("read response body chunk:",i),this.responseBuffer=ft(this.responseBuffer,i),this.trigger("progress",{loaded:this.responseBuffer.byteLength,total:t})),o()};o()}else r()}responseBufferToText(){return $e(this.responseBuffer)}get response(){if(this.logger.info("getResponse (responseType: %s)",this.request.responseType),this.request.readyState!==this.request.DONE)return null;switch(this.request.responseType){case"json":{const e=bt(this.responseBufferToText());return this.logger.info("resolved response JSON",e),e}case"arraybuffer":{const e=Ne(this.responseBuffer);return this.logger.info("resolved response ArrayBuffer",e),e}case"blob":{const e=this.request.getResponseHeader("Content-Type")||"text/plain",t=new Blob([this.responseBufferToText()],{type:e});return this.logger.info("resolved response Blob (mime type: %s)",t,e),t}default:{const e=this.responseBufferToText();return this.logger.info('resolving "%s" response type as text',this.request.responseType,e),e}}}get responseText(){if(w(this.request.responseType===""||this.request.responseType==="text","InvalidStateError: The object is in invalid state."),this.request.readyState!==this.request.LOADING&&this.request.readyState!==this.request.DONE)return"";const e=this.responseBufferToText();return this.logger.info('getResponseText: "%s"',e),e}get responseXML(){if(w(this.request.responseType===""||this.request.responseType==="document","InvalidStateError: The object is in invalid state."),this.request.readyState!==this.request.DONE)return null;const e=this.request.getResponseHeader("Content-Type")||"";return typeof DOMParser>"u"?(console.warn("Cannot retrieve XMLHttpRequest response body as XML: DOMParser is not defined. You are likely using an environment that is not browser or does not polyfill browser globals correctly."),null):wt(e)?new DOMParser().parseFromString(this.responseBufferToText(),e):null}errorWith(e){this.logger.info("responding with an error"),this.setReadyState(this.request.DONE),this.trigger("error"),this.trigger("loadend")}setReadyState(e){if(this.logger.info("setReadyState: %d -> %d",this.request.readyState,e),this.request.readyState===e){this.logger.info("ready state identical, skipping transition...");return}R(this.request,"readyState",e),this.logger.info("set readyState to: %d",e),e!==this.request.UNSENT&&(this.logger.info('triggerring "readystatechange" event...'),this.trigger("readystatechange"))}trigger(e,t){const r=this.request[`on${e}`],s=yt(this.request,e,t);this.logger.info('trigger "%s"',e,t||""),typeof r=="function"&&(this.logger.info('found a direct "%s" callback, calling...',e),r.call(this.request,s));for(const[o,i]of this.events)o===e&&(this.logger.info('found %d listener(s) for "%s" event, calling...',i.length,e),i.forEach(n=>n.call(this.request,s)))}toFetchApiRequest(){this.logger.info("converting request to a Fetch API Request...");const e=new Request(this.url.href,{method:this.method,headers:this.requestHeaders,credentials:this.request.withCredentials?"include":"same-origin",body:["GET","HEAD"].includes(this.method)?null:this.requestBody}),t=G(e.headers,{methodCall:([r,s],o)=>{switch(r){case"append":case"set":{const[i,n]=s;this.request.setRequestHeader(i,n);break}case"delete":{const[i]=s;console.warn(`XMLHttpRequest: Cannot remove a "${i}" header from the Fetch API representation of the "${e.method} ${e.url}" request. XMLHttpRequest headers cannot be removed.`);break}}return o()}});return R(e,"headers",t),this.logger.info("converted request to a Fetch API Request!",e),e}};function V(e){return typeof location>"u"?new URL(e):new URL(e.toString(),location.href)}function R(e,t,r){Reflect.defineProperty(e,t,{writable:!0,enumerable:!0,value:r})}function Lt({emitter:e,logger:t}){return new Proxy(globalThis.XMLHttpRequest,{construct(s,o,i){t.info("constructed new XMLHttpRequest");const n=Reflect.construct(s,o,i),a=Object.getOwnPropertyDescriptors(s.prototype);for(const l in a)Reflect.defineProperty(n,l,a[l]);const c=new qt(n,t);return c.onRequest=async function({request:l,requestId:h}){const{interactiveRequest:u,requestController:d}=ne(l);this.logger.info("awaiting mocked response..."),e.once("request",({requestId:m})=>{m===h&&d.responsePromise.state==="pending"&&d.respondWith(void 0)});const g=await W(async()=>{this.logger.info('emitting the "request" event for %s listener(s)...',e.listenerCount("request")),await T(e,"request",{request:u,requestId:h}),this.logger.info('all "request" listeners settled!');const m=await d.responsePromise;return this.logger.info("event.respondWith called with:",m),m});if(g.error){if(this.logger.info("request listener threw an exception, aborting request...",g.error),g.error instanceof Response){S(g.error)?c.errorWith(new TypeError("Network error")):this.respondWith(g.error);return}if(e.listenerCount("unhandledException")>0&&(await T(e,"unhandledException",{error:g.error,request:l,requestId:h,controller:{respondWith:c.respondWith.bind(c),errorWith:c.errorWith.bind(c)}}),n.readyState>XMLHttpRequest.OPENED))return;c.respondWith(Q(g.error));return}const f=g.data;if(typeof f<"u"){if(this.logger.info("received mocked response: %d %s",f.status,f.statusText),S(f)){this.logger.info("received a network error response, rejecting the request promise..."),c.errorWith(new TypeError("Network error"));return}return c.respondWith(f)}this.logger.info("no mocked response received, performing request as-is...")},c.onResponse=async function({response:l,isMockedResponse:h,request:u,requestId:d}){this.logger.info('emitting the "response" event for %s listener(s)...',e.listenerCount("response")),e.emit("response",{response:l,isMockedResponse:h,request:u,requestId:d})},c.request}})}var ce=class extends _{constructor(){super(ce.interceptorSymbol)}checkEnvironment(){return typeof globalThis.XMLHttpRequest<"u"}setup(){const e=this.logger.extend("setup");e.info('patching "XMLHttpRequest" module...');const t=globalThis.XMLHttpRequest;w(!t[E],'Failed to patch the "XMLHttpRequest" module: already patched.'),globalThis.XMLHttpRequest=Lt({emitter:this.emitter,logger:this.logger}),e.info('native "XMLHttpRequest" module patched!',globalThis.XMLHttpRequest.name),Object.defineProperty(globalThis.XMLHttpRequest,E,{enumerable:!0,configurable:!0,value:!0}),this.subscriptions.push(()=>{Object.defineProperty(globalThis.XMLHttpRequest,E,{value:void 0}),globalThis.XMLHttpRequest=t,e.info('native "XMLHttpRequest" module restored!',globalThis.XMLHttpRequest.name)})}},ue=ce;ue.interceptorSymbol=Symbol("xhr");function St(e,t){const r=new A({name:"fallback",interceptors:[new ie,new ue]});return r.on("request",async({request:s,requestId:o})=>{const i=s.clone(),n=await K(s,o,e.getRequestHandlers(),t,e.emitter,{onMockedResponse(a,{handler:c,parsedResult:l}){t.quiet||e.emitter.once("response:mocked",({response:h})=>{c.log({request:i,response:h,parsedResult:l})})}});n&&s.respondWith(n)}),r.on("response",({response:s,isMockedResponse:o,request:i,requestId:n})=>{e.emitter.emit(o?"response:mocked":"response:bypass",{response:s,request:i,requestId:n})}),r.apply(),r}function Tt(e){return async function(r){e.fallbackInterceptor=St(e,r),z({message:"Mocking enabled (fallback mode).",quiet:r.quiet})}}function xt(e){return function(){e.fallbackInterceptor?.dispose(),se({quiet:e.startOptions?.quiet})}}function Pt(){try{const e=new ReadableStream({start:r=>r.close()});return new MessageChannel().port1.postMessage(e,[e]),!0}catch{return!1}}var Mt=class extends be{context;startHandler=null;stopHandler=null;listeners;constructor(...e){super(...e),w(!H(),p.formatMessage("Failed to execute `setupWorker` in a non-browser environment. Consider using `setupServer` for Node.js environment instead.")),this.listeners=[],this.context=this.createWorkerContext()}createWorkerContext(){const e={isMockingEnabled:!1,startOptions:null,worker:null,getRequestHandlers:()=>this.handlersController.currentHandlers(),registration:null,requests:new Map,emitter:this.emitter,workerChannel:{on:(t,r)=>{this.context.events.addListener(navigator.serviceWorker,"message",s=>{if(s.source!==this.context.worker)return;const o=s.data;o&&o.type===t&&r(s,o)})},send:t=>{this.context.worker?.postMessage(t)}},events:{addListener:(t,r,s)=>(t.addEventListener(r,s),this.listeners.push({eventType:r,target:t,callback:s}),()=>{t.removeEventListener(r,s)}),removeAllListeners:()=>{for(const{target:t,eventType:r,callback:s}of this.listeners)t.removeEventListener(r,s);this.listeners=[]},once:t=>{const r=[];return new Promise((s,o)=>{const i=n=>{try{const a=n.data;a.type===t&&s(a)}catch(a){o(a)}};r.push(this.context.events.addListener(navigator.serviceWorker,"message",i),this.context.events.addListener(navigator.serviceWorker,"messageerror",o))}).finally(()=>{r.forEach(s=>s())})}},supports:{serviceWorkerApi:!("serviceWorker"in navigator)||location.protocol==="file:",readableStreamTransfer:Pt()}};return this.startHandler=e.supports.serviceWorkerApi?Tt(e):lt(e),this.stopHandler=e.supports.serviceWorkerApi?xt(e):ct(e),e}async start(e={}){return e.waitUntilReady===!0&&p.warn('The "waitUntilReady" option has been deprecated. Please remove it from this "worker.start()" call. Follow the recommended Browser integration (https://mswjs.io/docs/integrations/browser) to eliminate any race conditions between the Service Worker registration and any requests made by your application on initial render.'),this.context.startOptions=J(ut,e),await this.startHandler(this.context.startOptions,e)}stop(){super.dispose(),this.context.events.removeAllListeners(),this.context.emitter.removeAllListeners(),this.stopHandler()}};function Ct(...e){return new Mt(...e)}var At=/\.(js|jsx|ts|tsx|mjs|woff|woff2|ttf|otf|eot)$/,It=["sb-common-assets","node_modules","node-modules","hot-update.json","__webpack_hmr","iframe.html","sb-vite","@vite","@react-refresh","/virtual:",".stories.",".mdx"],Ht=e=>!!(At.test(e)||It.some(r=>e.includes(r))),Wt=e=>typeof e?.onUnhandledRequest=="string"?e:{...e,onUnhandledRequest:(...t)=>{const[{url:r},s]=t;if(!Ht(r)){if(!e?.onUnhandledRequest){s.warning();return}typeof e?.onUnhandledRequest=="function"&&e.onUnhandledRequest(...t)}}},k;function _t(e,t=[]){const r=Ct(...t);return r.context.activationPromise=r.start(Wt(e)),k=r,r}async function Ot(){await jt().context.activationPromise}function jt(){if(k===void 0)throw new Error('[MSW] Failed to retrieve the worker: no active worker found. Did you forget to call "initialize"?');return k}function Dt(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var s=Array.from(typeof e=="string"?[e]:e);s[s.length-1]=s[s.length-1].replace(/\r?\n([\t ]*)$/,"");var o=s.reduce(function(a,c){var l=c.match(/\n([\t ]+|(?!\s).)/g);return l?a.concat(l.map(function(h){var u,d;return(d=(u=h.match(/[\t ]/g))===null||u===void 0?void 0:u.length)!==null&&d!==void 0?d:0})):a},[]);if(o.length){var i=new RegExp(`
40
- [ ]{`+Math.min.apply(Math,o)+"}","g");s=s.map(function(a){return a.replace(i,`
41
- `)})}s[0]=s[0].replace(/^\r?\n/,"");var n=s[0];return t.forEach(function(a,c){var l=n.match(/(?:^|\n)( *)$/),h=l?l[1]:"",u=a;typeof a=="string"&&a.includes(`
42
- `)&&(u=String(a).split(`
43
- `).map(function(d,g){return g===0?d:""+h+d}).join(`
44
- `)),n+=u+s[c+1]}),n}function Ut(e){let t=!1,r;return(...o)=>(t||(t=!0,r=e(...o)),r)}function Bt(e){return Ut(()=>{console.warn(Dt(e))})}var $t=Bt(`
45
- [msw-storybook-addon] You are using parameters.msw as an Array instead of an Object with a property "handlers". This usage is deprecated and will be removed in the next release. Please use the Object syntax instead.
46
-
47
- More info: https://github.com/mswjs/msw-storybook-addon/blob/main/MIGRATION.md#parametersmsw-array-notation-deprecated-in-favor-of-object-notation
48
- `);function Nt(e){if(k?.resetHandlers(),e!=null){if(Array.isArray(e)&&e.length>0){$t(),k.use(...e);return}if("handlers"in e&&e.handlers){const t=Object.values(e.handlers).filter(Boolean).reduce((r,s)=>r.concat(s),[]);t.length>0&&k.use(...t);return}}}var Ft=async e=>(await Ot(),Nt(e.parameters.msw),{});_t({onUnhandledRequest:"bypass"});const Xt={parameters:{controls:{matchers:{color:/(background|color)$/i,date:/Date$/i}},msw:{handlers:{auth:null,others:ge}}},loaders:[Ft],tags:["autodocs"]};export{Xt as default};