@epic-web/workshop-app 6.77.0 → 6.77.2
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.
- package/build/client/assets/{_exerciseNumber-C1aZpAWV.js → _exerciseNumber-JuXb6JTN.js} +2 -2
- package/build/client/assets/{_exerciseNumber-C1aZpAWV.js.map → _exerciseNumber-JuXb6JTN.js.map} +1 -1
- package/build/client/assets/{_exerciseNumber_.finished-BICggZV1.js → _exerciseNumber_.finished-DD-1txyR.js} +2 -2
- package/build/client/assets/{_exerciseNumber_.finished-BICggZV1.js.map → _exerciseNumber_.finished-DD-1txyR.js.map} +1 -1
- package/build/client/assets/_extra-BfK-kKBL.js +2 -0
- package/build/client/assets/_extra-BfK-kKBL.js.map +1 -0
- package/build/client/assets/{_layout-BZI3FoQD.js → _layout-BsHVX3B_.js} +2 -2
- package/build/client/assets/{_layout-BZI3FoQD.js.map → _layout-BsHVX3B_.js.map} +1 -1
- package/build/client/assets/{_layout-CunOyAg4.js → _layout-CDyeQVKG.js} +2 -2
- package/build/client/assets/{_layout-CunOyAg4.js.map → _layout-CDyeQVKG.js.map} +1 -1
- package/build/client/assets/_layout-mVyOtxmC.js +2 -0
- package/build/client/assets/_layout-mVyOtxmC.js.map +1 -0
- package/build/client/assets/{account-C96cpeZR.js → account-BKXMYhfO.js} +2 -2
- package/build/client/assets/{account-C96cpeZR.js.map → account-BKXMYhfO.js.map} +1 -1
- package/build/client/assets/{app-CJniokic.js → app-AWsnszeo.js} +2 -2
- package/build/client/assets/{app-CJniokic.js.map → app-AWsnszeo.js.map} +1 -1
- package/build/client/assets/{cache-CAr50MIB.js → cache-CxMFS2A_.js} +2 -2
- package/build/client/assets/{cache-CAr50MIB.js.map → cache-CxMFS2A_.js.map} +1 -1
- package/build/client/assets/{db-DAnX-T3_.js → db-BZ-tFzMp.js} +2 -2
- package/build/client/assets/{db-DAnX-T3_.js.map → db-BZ-tFzMp.js.map} +1 -1
- package/build/client/assets/{diff-D8TUonC2.js → diff-0VO9C_Sf.js} +2 -2
- package/build/client/assets/{diff-D8TUonC2.js.map → diff-0VO9C_Sf.js.map} +1 -1
- package/build/client/assets/{diff-Col_iM3X.js → diff-CC_jaH50.js} +2 -2
- package/build/client/assets/{diff-Col_iM3X.js.map → diff-CC_jaH50.js.map} +1 -1
- package/build/client/assets/discord-BVfxP4Rd.js +2 -0
- package/build/client/assets/discord-BVfxP4Rd.js.map +1 -0
- package/build/client/assets/{discord-BJkw0IrB.js → discord-XhHqPI49.js} +2 -2
- package/build/client/assets/{discord-BJkw0IrB.js.map → discord-XhHqPI49.js.map} +1 -1
- package/build/client/assets/{epic-video-BJW6MU1i.js → epic-video-D4jBdSKs.js} +2 -2
- package/build/client/assets/{epic-video-BJW6MU1i.js.map → epic-video-D4jBdSKs.js.map} +1 -1
- package/build/client/assets/{epic-video-jtxu_0bl.js → epic-video-Ddc9rYLT.js} +2 -2
- package/build/client/assets/{epic-video-jtxu_0bl.js.map → epic-video-Ddc9rYLT.js.map} +1 -1
- package/build/client/assets/{finished-C2jP5uE7.js → finished-BSfM_f4M.js} +2 -2
- package/build/client/assets/{finished-C2jP5uE7.js.map → finished-BSfM_f4M.js.map} +1 -1
- package/build/client/assets/{index-CdzVFL-Z.js → index-BrVvTrwg.js} +2 -2
- package/build/client/assets/{index-CdzVFL-Z.js.map → index-BrVvTrwg.js.map} +1 -1
- package/build/client/assets/{index-Dpyv8N6m.js → index-CfPaTqRT.js} +2 -2
- package/build/client/assets/{index-Dpyv8N6m.js.map → index-CfPaTqRT.js.map} +1 -1
- package/build/client/assets/{index-X8or9u7t.js → index-CuCZuiBp.js} +2 -2
- package/build/client/assets/{index-X8or9u7t.js.map → index-CuCZuiBp.js.map} +1 -1
- package/build/client/assets/{index-KRgoKRWG.js → index-D0vH1MiQ.js} +2 -2
- package/build/client/assets/{index-KRgoKRWG.js.map → index-D0vH1MiQ.js.map} +1 -1
- package/build/client/assets/{index-BCQgVrao.js → index-DTC_5pri.js} +2 -2
- package/build/client/assets/{index-BCQgVrao.js.map → index-DTC_5pri.js.map} +1 -1
- package/build/client/assets/{launch-editor-D2exGfVu.js → launch-editor-0oPpbFQe.js} +2 -2
- package/build/client/assets/{launch-editor-D2exGfVu.js.map → launch-editor-0oPpbFQe.js.map} +1 -1
- package/build/client/assets/{loading-CDNzW5oO.js → loading-CaCCsk9k.js} +2 -2
- package/build/client/assets/{loading-CDNzW5oO.js.map → loading-CaCCsk9k.js.map} +1 -1
- package/build/client/assets/{login-mWjVXGbJ.js → login-w4y7RVYa.js} +2 -2
- package/build/client/assets/{login-mWjVXGbJ.js.map → login-w4y7RVYa.js.map} +1 -1
- package/build/client/assets/{manifest-dd28a0e5.js → manifest-a63db2d2.js} +1 -1
- package/build/client/assets/{mdx-DdpoOTHm.js → mdx-DwvWT4Ou.js} +2 -2
- package/build/client/assets/{mdx-DdpoOTHm.js.map → mdx-DwvWT4Ou.js.map} +1 -1
- package/build/client/assets/{onboarding-indicator-B-XR90_G.js → onboarding-indicator-BkeHYs2C.js} +2 -2
- package/build/client/assets/{onboarding-indicator-B-XR90_G.js.map → onboarding-indicator-BkeHYs2C.js.map} +1 -1
- package/build/client/assets/{online-DiNLkgTC.js → online-DVk-W8Cr.js} +2 -2
- package/build/client/assets/{online-DiNLkgTC.js.map → online-DVk-W8Cr.js.map} +1 -1
- package/build/client/assets/{playground-DmEAkxG1.js → playground-DG4B62WX.js} +2 -2
- package/build/client/assets/{playground-DmEAkxG1.js.map → playground-DG4B62WX.js.map} +1 -1
- package/build/client/assets/{playground-window-x2mQ5o1O.js → playground-window-CF8lTXXI.js} +2 -2
- package/build/client/assets/{playground-window-x2mQ5o1O.js.map → playground-window-CF8lTXXI.js.map} +1 -1
- package/build/client/assets/{preferences-B7ND1VS9.js → preferences-Czy5oqWs.js} +2 -2
- package/build/client/assets/{preferences-B7ND1VS9.js.map → preferences-Czy5oqWs.js.map} +1 -1
- package/build/client/assets/{presence-VCvV2mg7.js → presence-Brtc_BN7.js} +2 -2
- package/build/client/assets/{presence-VCvV2mg7.js.map → presence-Brtc_BN7.js.map} +1 -1
- package/build/client/assets/{preview-fhmjENlm.js → preview-Be-plbPz.js} +2 -2
- package/build/client/assets/{preview-fhmjENlm.js.map → preview-Be-plbPz.js.map} +1 -1
- package/build/client/assets/{product-CvyMpYD_.js → product-D4IgPJN5.js} +2 -2
- package/build/client/assets/{product-CvyMpYD_.js.map → product-D4IgPJN5.js.map} +1 -1
- package/build/client/assets/{progress-Bby-ybMA.js → progress-JDMkfyr3.js} +2 -2
- package/build/client/assets/{progress-Bby-ybMA.js.map → progress-JDMkfyr3.js.map} +1 -1
- package/build/client/assets/{revalidation-ws-BJWJviUX.js → revalidation-ws-iocj9Mrl.js} +2 -2
- package/build/client/assets/{revalidation-ws-BJWJviUX.js.map → revalidation-ws-iocj9Mrl.js.map} +1 -1
- package/build/client/assets/{root-B-MkiU1r.js → root-IJJBVEoj.js} +2 -2
- package/build/client/assets/{root-B-MkiU1r.js.map → root-IJJBVEoj.js.map} +1 -1
- package/build/client/assets/{root-loader-BOzEMapJ.js → root-loader-BmUqzUDN.js} +2 -2
- package/build/client/assets/{root-loader-BOzEMapJ.js.map → root-loader-BmUqzUDN.js.map} +1 -1
- package/build/client/assets/{set-playground-BSGwH9dH.js → set-playground-DO5tJu4h.js} +2 -2
- package/build/client/assets/{set-playground-BSGwH9dH.js.map → set-playground-DO5tJu4h.js.map} +1 -1
- package/build/client/assets/{test-BeEphi7e.js → test-C8NrA0Ls.js} +2 -2
- package/build/client/assets/{test-BeEphi7e.js.map → test-C8NrA0Ls.js.map} +1 -1
- package/build/client/assets/{tests-RWSslYc0.js → tests-Bko6qhsh.js} +2 -2
- package/build/client/assets/{tests-RWSslYc0.js.map → tests-Bko6qhsh.js.map} +1 -1
- package/build/client/assets/{user-BsPobzjB.js → user-CYXKquT7.js} +2 -2
- package/build/client/assets/{user-BsPobzjB.js.map → user-CYXKquT7.js.map} +1 -1
- package/build/client/assets/{version-f8qqYbyU.js → version-CwWSRwe5.js} +2 -2
- package/build/client/assets/{version-f8qqYbyU.js.map → version-CwWSRwe5.js.map} +1 -1
- package/build/client/assets/{workshop-config-Zfc8zU0x.js → workshop-config-BMWaKPZT.js} +2 -2
- package/build/client/assets/{workshop-config-Zfc8zU0x.js.map → workshop-config-BMWaKPZT.js.map} +1 -1
- package/build/server/index.js +7 -3
- package/build/server/index.js.map +1 -1
- package/package.json +3 -3
- package/build/client/assets/_extra-Dki7HdFp.js +0 -2
- package/build/client/assets/_extra-Dki7HdFp.js.map +0 -1
- package/build/client/assets/_layout-DTrIGRDO.js +0 -2
- package/build/client/assets/_layout-DTrIGRDO.js.map +0 -1
- package/build/client/assets/discord-r3m19sUM.js +0 -2
- package/build/client/assets/discord-r3m19sUM.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{w}from"./chunk-EPOLDU6W-BCLmut3y.js";import{j as m}from"./jsx-runtime-C5WNSv3b.js";import{r as u}from"./index-CqIc3cxq.js";import{E as g,D as h}from"./epic-video-
|
|
2
|
-
//# sourceMappingURL=epic-video-
|
|
1
|
+
import{w}from"./chunk-EPOLDU6W-BCLmut3y.js";import{j as m}from"./jsx-runtime-C5WNSv3b.js";import{r as u}from"./index-CqIc3cxq.js";import{E as g,D as h}from"./epic-video-D4jBdSKs.js";import"./use-event-source-BuD4_2SF.js";import"./index-DzdDahau.js";import"./index-vDCSPjrM.js";import"./index-BrVvTrwg.js";import"./misc-W4055b-0.js";import"./tooltip-Tlsyx2YO.js";import"./root-loader-BmUqzUDN.js";import"./pe-CIZUOJMr.js";import"./schemas-Uj5SZtvt.js";import"./online-DVk-W8Cr.js";import"./loading-CaCCsk9k.js";import"./format-CZ5n8p10.js";import"./user-CYXKquT7.js";import"./workshop-config-BMWaKPZT.js";function l(p,r,i={}){const{schema:s}=i,e=crypto.randomUUID();return new Promise((t,o)=>{if(!window.parent||window.parent===window){console.log("[MCP] No parent frame available. Would have sent message:",{type:p,messageId:e,payload:r}),o(new Error("No parent frame available"));return}window.parent.postMessage({type:p,messageId:e,payload:r},"*");function n(a){if(a.data.type!=="ui-message-response"||a.data.messageId!==e)return;window.removeEventListener("message",n);const{response:d,error:f}=a.data.payload;if(f)return o(f);if(!s)return t(d);const c=s.safeParse(d);return c.success?t(c.data):o(c.error)}window.addEventListener("message",n)})}const H=w(function({loaderData:r}){const i=u.useRef(null);u.useEffect(()=>{r.videoInfos?.finally(()=>{if(window.parent.postMessage({type:"ui-lifecycle-iframe-ready"},"*"),!i.current)return;const e=i.current.clientHeight,t=i.current.clientWidth;window.parent.postMessage({type:"ui-size-change",payload:{height:e,width:t}},"*")})},[r.videoInfos]);async function s(e){const t=e.target;if(!(t instanceof HTMLAnchorElement))return;const o=t.href;if(!o)return;e.preventDefault(),e.stopPropagation();const n=o.startsWith("http")?new URL(o):new URL(o,window.location.origin);n.host===window.location.host&&n.pathname==="/login"&&await l("tool",{toolName:"login",params:{workshopDirectory:ENV.EPICSHOP_CONTEXT_CWD}}),await l("link",{url:n.toString()})}return m.jsx("div",{ref:i,onClickCapture:s,children:m.jsx(g,{epicVideoInfosPromise:r.videoInfos,children:m.jsx(h,{url:r.videoUrl})})})});export{H as default};
|
|
2
|
+
//# sourceMappingURL=epic-video-Ddc9rYLT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epic-video-
|
|
1
|
+
{"version":3,"file":"epic-video-Ddc9rYLT.js","sources":["../../../app/routes/mcp-ui+/__utils.ts","../../../app/routes/mcp-ui+/epic-video.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport { type z } from 'zod'\n\nexport function useMcpUiInit(rootRef: React.RefObject<HTMLDivElement | null>) {\n\tuseEffect(() => {\n\t\twindow.parent.postMessage({ type: 'ui-lifecycle-iframe-ready' }, '*')\n\t\tif (!rootRef.current) return\n\n\t\tconst height = rootRef.current.clientHeight\n\t\tconst width = rootRef.current.clientWidth\n\n\t\twindow.parent.postMessage(\n\t\t\t{ type: 'ui-size-change', payload: { height, width } },\n\t\t\t'*',\n\t\t)\n\t}, [rootRef])\n}\n\ntype MessageOptions = { schema?: z.ZodSchema }\n\ntype McpMessageReturnType<Options> = Promise<\n\tOptions extends { schema: z.ZodSchema } ? z.infer<Options['schema']> : unknown\n>\n\ntype McpMessageTypes = {\n\ttool: { toolName: string; params: Record<string, unknown> }\n\tprompt: { prompt: string }\n\tlink: { url: string }\n}\n\ntype McpMessageType = keyof McpMessageTypes\n\nfunction sendMcpMessage<Options extends MessageOptions>(\n\ttype: 'tool',\n\tpayload: McpMessageTypes['tool'],\n\toptions?: Options,\n): McpMessageReturnType<Options>\n\nfunction sendMcpMessage<Options extends MessageOptions>(\n\ttype: 'prompt',\n\tpayload: McpMessageTypes['prompt'],\n\toptions?: Options,\n): McpMessageReturnType<Options>\n\nfunction sendMcpMessage<Options extends MessageOptions>(\n\ttype: 'link',\n\tpayload: McpMessageTypes['link'],\n\toptions?: Options,\n): McpMessageReturnType<Options>\n\nfunction sendMcpMessage<Options extends MessageOptions>(\n\ttype: 'link',\n\tpayload: McpMessageTypes['link'],\n\toptions?: Options,\n): McpMessageReturnType<Options>\n\nfunction sendMcpMessage(\n\ttype: McpMessageType,\n\tpayload: McpMessageTypes[McpMessageType],\n\toptions: MessageOptions = {},\n): McpMessageReturnType<typeof options> {\n\tconst { schema } = options\n\tconst messageId = crypto.randomUUID()\n\n\treturn new Promise((resolve, reject) => {\n\t\tif (!window.parent || window.parent === window) {\n\t\t\tconsole.log(`[MCP] No parent frame available. Would have sent message:`, {\n\t\t\t\ttype,\n\t\t\t\tmessageId,\n\t\t\t\tpayload,\n\t\t\t})\n\t\t\treject(new Error('No parent frame available'))\n\t\t\treturn\n\t\t}\n\n\t\twindow.parent.postMessage({ type, messageId, payload }, '*')\n\n\t\tfunction handleMessage(event: MessageEvent) {\n\t\t\tif (event.data.type !== 'ui-message-response') return\n\t\t\tif (event.data.messageId !== messageId) return\n\t\t\twindow.removeEventListener('message', handleMessage)\n\n\t\t\tconst { response, error } = event.data.payload\n\n\t\t\tif (error) return reject(error)\n\t\t\tif (!schema) return resolve(response)\n\n\t\t\tconst parseResult = schema.safeParse(response)\n\t\t\tif (!parseResult.success) return reject(parseResult.error)\n\n\t\t\treturn resolve(parseResult.data)\n\t\t}\n\n\t\twindow.addEventListener('message', handleMessage)\n\t})\n}\n\nexport { sendMcpMessage }\n\nexport function waitForRenderData<RenderData>(\n\tschema: z.ZodSchema<RenderData>,\n): Promise<RenderData> {\n\treturn new Promise((resolve, reject) => {\n\t\twindow.parent.postMessage({ type: 'ui-lifecycle-iframe-ready' }, '*')\n\n\t\tfunction handleMessage(event: MessageEvent) {\n\t\t\tif (event.data?.type !== 'ui-lifecycle-iframe-render-data') return\n\t\t\twindow.removeEventListener('message', handleMessage)\n\n\t\t\tconst { renderData, error } = event.data.payload\n\n\t\t\tif (error) return reject(error)\n\t\t\tif (!schema) return resolve(renderData)\n\n\t\t\tconst parseResult = schema.safeParse(renderData)\n\t\t\tif (!parseResult.success) return reject(parseResult.error)\n\n\t\t\treturn resolve(parseResult.data)\n\t\t}\n\n\t\twindow.addEventListener('message', handleMessage)\n\t})\n}\n","import { invariantResponse } from '@epic-web/invariant'\nimport { getEpicVideoInfos } from '@epic-web/workshop-utils/epic-api.server'\nimport { makeTimings } from '@epic-web/workshop-utils/timing.server'\nimport { useEffect, useRef } from 'react'\nimport { data } from 'react-router'\nimport {\n\tDeferredEpicVideo,\n\tEpicVideoInfoProvider,\n} from '#app/components/epic-video.tsx'\nimport { type Route } from './+types/epic-video.tsx'\nimport { sendMcpMessage } from './__utils.ts'\n\nexport async function loader({ request }: Route.LoaderArgs) {\n\tconst timings = makeTimings('epicVideoLoader')\n\tconst videoUrl = new URL(request.url).searchParams.get('url')\n\tinvariantResponse(videoUrl, 'url param is required')\n\tconst videoInfos = getEpicVideoInfos([videoUrl], {\n\t\trequest,\n\t\ttimings,\n\t})\n\treturn data(\n\t\t{ videoInfos, videoUrl },\n\t\t{\n\t\t\theaders: {\n\t\t\t\t'Server-Timing': timings.toString(),\n\t\t\t},\n\t\t},\n\t)\n}\n\nexport default function EpicVideoEmbedRoute({\n\tloaderData,\n}: Route.ComponentProps) {\n\tconst rootRef = useRef<HTMLDivElement>(null)\n\tuseEffect(() => {\n\t\tvoid loaderData.videoInfos?.finally(() => {\n\t\t\twindow.parent.postMessage({ type: 'ui-lifecycle-iframe-ready' }, '*')\n\t\t\tif (!rootRef.current) return\n\n\t\t\tconst height = rootRef.current.clientHeight\n\t\t\tconst width = rootRef.current.clientWidth\n\n\t\t\twindow.parent.postMessage(\n\t\t\t\t{ type: 'ui-size-change', payload: { height, width } },\n\t\t\t\t'*',\n\t\t\t)\n\t\t})\n\t}, [loaderData.videoInfos])\n\n\tasync function handleLinksClick(event: React.MouseEvent<HTMLElement>) {\n\t\tconst target = event.target\n\t\tif (!(target instanceof HTMLAnchorElement)) return\n\n\t\tconst href = target.href\n\t\tif (!href) return\n\n\t\tevent.preventDefault()\n\t\tevent.stopPropagation()\n\n\t\tconst url = href.startsWith('http')\n\t\t\t? new URL(href)\n\t\t\t: new URL(href, window.location.origin)\n\t\tconst isLocal = url.host === window.location.host\n\n\t\tif (isLocal && url.pathname === '/login') {\n\t\t\tawait sendMcpMessage('tool', {\n\t\t\t\ttoolName: 'login',\n\t\t\t\tparams: { workshopDirectory: ENV.EPICSHOP_CONTEXT_CWD },\n\t\t\t})\n\t\t}\n\n\t\tawait sendMcpMessage('link', { url: url.toString() })\n\t}\n\n\treturn (\n\t\t<div ref={rootRef} onClickCapture={handleLinksClick}>\n\t\t\t<EpicVideoInfoProvider epicVideoInfosPromise={loaderData.videoInfos}>\n\t\t\t\t<DeferredEpicVideo url={loaderData.videoUrl} />\n\t\t\t</EpicVideoInfoProvider>\n\t\t</div>\n\t)\n}\n"],"names":["sendMcpMessage","type","payload","options","schema","messageId","resolve","reject","handleMessage","event","response","error","parseResult","epicVideo","_UNSAFE_withComponentProps","loaderData","rootRef","useRef","useEffect","videoInfos","finally","window","parent","postMessage","current","height","clientHeight","width","clientWidth","handleLinksClick","target","HTMLAnchorElement","href","preventDefault","stopPropagation","url","startsWith","URL","location","origin","host","pathname","toolName","params","workshopDirectory","ENV","EPICSHOP_CONTEXT_CWD","toString","ref","onClickCapture","children","jsx","EpicVideoInfoProvider","epicVideoInfosPromise","DeferredEpicVideo","videoUrl"],"mappings":"4lBAwDA,SAASA,EACRC,EACAC,EACAC,EAA0B,CAAA,EACa,CACvC,KAAM,CAAE,OAAAC,GAAWD,EACbE,EAAY,OAAO,WAAA,EAEzB,OAAO,IAAI,QAAQ,CAACC,EAASC,IAAW,CACvC,GAAI,CAAC,OAAO,QAAU,OAAO,SAAW,OAAQ,CAC/C,QAAQ,IAAI,4DAA6D,CACxE,KAAAN,EACA,UAAAI,EACA,QAAAH,CAAA,CACA,EACDK,EAAO,IAAI,MAAM,2BAA2B,CAAC,EAC7C,MACD,CAEA,OAAO,OAAO,YAAY,CAAE,KAAAN,EAAM,UAAAI,EAAW,QAAAH,CAAA,EAAW,GAAG,EAE3D,SAASM,EAAcC,EAAqB,CAE3C,GADIA,EAAM,KAAK,OAAS,uBACpBA,EAAM,KAAK,YAAcJ,EAAW,OACxC,OAAO,oBAAoB,UAAWG,CAAa,EAEnD,KAAM,CAAE,SAAAE,EAAU,MAAAC,CAAA,EAAUF,EAAM,KAAK,QAEvC,GAAIE,EAAO,OAAOJ,EAAOI,CAAK,EAC9B,GAAI,CAACP,EAAQ,OAAOE,EAAQI,CAAQ,EAEpC,MAAME,EAAcR,EAAO,UAAUM,CAAQ,EAC7C,OAAKE,EAAY,QAEVN,EAAQM,EAAY,IAAI,EAFEL,EAAOK,EAAY,KAAK,CAG1D,CAEA,OAAO,iBAAiB,UAAWJ,CAAa,CACjD,CAAC,CACF,CCjEA,MAAAK,EAAAC,EAAA,SAA4C,CAC3CC,WAAAA,CACD,EAAyB,CACxB,MAAMC,EAAUC,EAAAA,OAAuB,IAAI,EAC3CC,EAAAA,UAAU,IAAM,CACVH,EAAWI,YAAYC,QAAQ,IAAM,CAEzC,GADAC,OAAOC,OAAOC,YAAY,CAAEtB,KAAM,6BAA+B,GAAG,EAChE,CAACe,EAAQQ,QAAS,OAEtB,MAAMC,EAAST,EAAQQ,QAAQE,aACzBC,EAAQX,EAAQQ,QAAQI,YAE9BP,OAAOC,OAAOC,YACb,CAAEtB,KAAM,iBAAkBC,QAAS,CAAEuB,OAAAA,EAAQE,MAAAA,CAAM,GACnD,GACD,CACD,CAAC,CACF,EAAG,CAACZ,EAAWI,UAAU,CAAC,EAE1B,eAAeU,EAAiBpB,EAAsC,CACrE,MAAMqB,EAASrB,EAAMqB,OACrB,GAAI,EAAEA,aAAkBC,mBAAoB,OAE5C,MAAMC,EAAOF,EAAOE,KACpB,GAAI,CAACA,EAAM,OAEXvB,EAAMwB,eAAA,EACNxB,EAAMyB,gBAAA,EAEN,MAAMC,EAAMH,EAAKI,WAAW,MAAM,EAC/B,IAAIC,IAAIL,CAAI,EACZ,IAAIK,IAAIL,EAAMX,OAAOiB,SAASC,MAAM,EACvBJ,EAAIK,OAASnB,OAAOiB,SAASE,MAE9BL,EAAIM,WAAa,UAC/B,MAAMzC,EAAe,OAAQ,CAC5B0C,SAAU,QACVC,OAAQ,CAAEC,kBAAmBC,IAAIC,oBAAqB,CACvD,CAAC,EAGF,MAAM9C,EAAe,OAAQ,CAAEmC,IAAKA,EAAIY,SAAA,CAAW,CAAC,CACrD,CAEA,aACE,MAAA,CAAIC,IAAKhC,EAASiC,eAAgBpB,EAClCqB,SAAAC,EAAAA,IAACC,EAAA,CAAsBC,sBAAuBtC,EAAWI,WACxD+B,SAAAC,EAAAA,IAACG,EAAA,CAAkBnB,IAAKpB,EAAWwC,SAAU,EAC9C,CAAA,CACD,CAEF,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{w as n,L as l}from"./chunk-EPOLDU6W-BCLmut3y.js";import{j as e}from"./jsx-runtime-C5WNSv3b.js";import{E as a}from"./index-CEVyDj51.js";import{r as c}from"./index-CqIc3cxq.js";import{E as m}from"./epic-video-
|
|
2
|
-
//# sourceMappingURL=finished-
|
|
1
|
+
import{w as n,L as l}from"./chunk-EPOLDU6W-BCLmut3y.js";import{j as e}from"./jsx-runtime-C5WNSv3b.js";import{E as a}from"./index-CEVyDj51.js";import{r as c}from"./index-CqIc3cxq.js";import{E as m}from"./epic-video-D4jBdSKs.js";import{I as d,c as p}from"./misc-W4055b-0.js";import{L as f}from"./loading-CaCCsk9k.js";import{N as h}from"./nav-chevrons-Dk4GtZwQ.js";import{R as x}from"./retrieval-practice-BOku32wW.js";import{u}from"./revalidation-ws-iocj9Mrl.js";import{M as j}from"./mdx-DwvWT4Ou.js";import{u as b}from"./online-DVk-W8Cr.js";import{g}from"./root-loader-BmUqzUDN.js";import{g as v}from"./seo-t5J-DRxw.js";import{E as w}from"./launch-editor-0oPpbFQe.js";import{P as N}from"./progress-JDMkfyr3.js";import{u as k}from"./index-BrVvTrwg.js";import"./use-event-source-BuD4_2SF.js";import"./index-DzdDahau.js";import"./index-vDCSPjrM.js";import"./schemas-Uj5SZtvt.js";import"./tooltip-Tlsyx2YO.js";import"./format-CZ5n8p10.js";import"./user-CYXKquT7.js";import"./workshop-config-BMWaKPZT.js";import"./preload-helper-BXl3LOEh.js";import"./progress-bar-DpWhcyhC.js";import"./pe-CIZUOJMr.js";const se={getSitemapEntries:()=>[{route:"/finished"}]},re=({matches:r})=>{const s=g(r);return s?v({title:`🎉 ${s?.workshopTitle}`,description:`Elaboration for ${s?.workshopTitle}`,ogTitle:`Finished ${s?.workshopTitle}`,ogDescription:"You finished! Time to submit feedback.",instructor:s.instructor,requestInfo:s.requestInfo}):[]},E={h1:()=>null},oe=n(function({loaderData:s}){return u({watchPaths:["./exercises/FINISHED.mdx"]}),e.jsx("div",{className:"flex h-full grow flex-col",children:e.jsxs("main",{className:"grid h-full grow grid-cols-1 grid-rows-2 lg:grid-cols-2 lg:grid-rows-1",children:[e.jsxs("div",{className:"relative col-span-1 row-span-1 flex h-full flex-col lg:border-r",children:[e.jsx("h1",{className:"h-14 border-b pr-5 pl-10 text-sm leading-none font-medium uppercase",children:e.jsx("div",{className:"flex h-14 flex-wrap items-center justify-between gap-x-2 py-2",children:e.jsxs("div",{className:"flex items-center justify-start gap-x-2",children:[e.jsx(l,{to:"/",className:"hover:underline",children:s.workshopTitle}),e.jsx("span",{children:"/"}),e.jsx("span",{children:"Elaboration"})]})})}),e.jsxs("article",{className:"shadow-on-scrollbox scrollbar-thin scrollbar-thumb-scrollbar h-full w-full max-w-none flex-1 scroll-pt-6 space-y-6 overflow-y-auto p-2 sm:p-10 sm:pt-8",id:s.articleId,children:[s.finishedCode?e.jsx(m,{epicVideoInfosPromise:s.epicVideoInfosPromise,children:e.jsx("div",{className:"prose dark:prose-invert sm:prose-lg",children:e.jsx(j,{code:s.finishedCode,components:E})})}):"No finished instructions yet...",e.jsx(x,{})]}),e.jsx(a,{elementQuery:`#${s.articleId}`}),e.jsx(N,{type:"workshop-finished",className:"h-14 border-t px-6"}),e.jsxs("div",{className:"@container flex h-16 justify-between border-t border-b-4 lg:border-b-0",children:[e.jsx("div",{}),s.workshopFinished.status==="success"?e.jsx(w,{file:s.workshopFinished.file,relativePath:s.workshopFinished.relativePath}):null,e.jsx(h,{prev:s.prevStepLink,next:{to:"/"}})]})]}),e.jsx(y,{workshopTitle:s.workshopTitle,workshopFormEmbedUrl:s.workshopFormEmbedUrl})]})})});function y({workshopTitle:r,workshopFormEmbedUrl:s}){const t=k(),[o,i]=c.useState(!1);return b()?e.jsxs("div",{className:"relative shrink-0",children:[o?null:e.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:e.jsx(f,{children:e.jsxs("span",{children:["Loading ",r," Elaboration form"]})})}),e.jsx("iframe",{onLoad:()=>i(!0),onError:()=>i(!0),title:"Elaboration",src:s,className:p("absolute inset-0 flex h-full w-full transition-opacity duration-300",o?"opacity-100":"opacity-0"),style:{colorScheme:t}})]}):e.jsx("div",{className:"relative shrink-0",children:e.jsx("div",{className:"text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center",children:e.jsx(d,{name:"WifiNoConnection",size:"xl",children:e.jsxs("span",{children:["Unable to load the ",e.jsx("a",{href:s,className:"underline",children:`${r} feedback form`})," when offline"]})})})})}export{oe as default,se as handle,re as meta};
|
|
2
|
+
//# sourceMappingURL=finished-BSfM_f4M.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finished-C2jP5uE7.js","sources":["../../../app/routes/_app+/finished.tsx"],"sourcesContent":["import { ElementScrollRestoration } from '@epic-web/restore-scroll'\nimport {\n\tgetExercises,\n\tgetWorkshopFinished,\n} from '@epic-web/workshop-utils/apps.server'\nimport { getWorkshopConfig } from '@epic-web/workshop-utils/config.server'\nimport { getEpicVideoInfos } from '@epic-web/workshop-utils/epic-api.server'\nimport {\n\tcombineServerTimings,\n\tgetServerTimeHeader,\n\tmakeTimings,\n\ttime,\n} from '@epic-web/workshop-utils/timing.server'\nimport { type SEOHandle } from '@nasa-gcn/remix-seo'\nimport slugify from '@sindresorhus/slugify'\nimport * as React from 'react'\nimport { data, type HeadersFunction, Link } from 'react-router'\nimport { EpicVideoInfoProvider } from '#app/components/epic-video.tsx'\nimport { Icon } from '#app/components/icons.tsx'\nimport { Loading } from '#app/components/loading.tsx'\nimport { NavChevrons } from '#app/components/nav-chevrons.tsx'\nimport { RetrievalPractice } from '#app/components/retrieval-practice.tsx'\nimport { useRevalidationWS } from '#app/components/revalidation-ws.tsx'\nimport { Mdx } from '#app/utils/mdx.tsx'\nimport { cn } from '#app/utils/misc.tsx'\nimport { useIsOnline } from '#app/utils/online.ts'\nimport { getRootMatchLoaderData } from '#app/utils/root-loader.ts'\nimport { getSeoMetaTags } from '#app/utils/seo.ts'\nimport { EditFileOnGitHub } from '../launch-editor.tsx'\nimport { ProgressToggle } from '../progress.tsx'\nimport { useTheme } from '../theme/index.tsx'\nimport { type Route } from './+types/finished.tsx'\n\nexport const handle: SEOHandle = {\n\tgetSitemapEntries: () => [{ route: '/finished' }],\n}\n\nexport const meta: Route.MetaFunction = ({ matches }) => {\n\tconst rootData = getRootMatchLoaderData(matches)\n\tif (!rootData) return []\n\n\treturn getSeoMetaTags({\n\t\ttitle: `🎉 ${rootData?.workshopTitle}`,\n\t\tdescription: `Elaboration for ${rootData?.workshopTitle}`,\n\t\togTitle: `Finished ${rootData?.workshopTitle}`,\n\t\togDescription: `You finished! Time to submit feedback.`,\n\t\tinstructor: rootData.instructor,\n\t\trequestInfo: rootData.requestInfo,\n\t})\n}\n\nexport async function loader({ request }: Route.LoaderArgs) {\n\tconst timings = makeTimings('finishedLoader')\n\tconst exercises = await getExercises({ request, timings })\n\tconst compiledFinished = await time(() => getWorkshopFinished({ request }), {\n\t\ttimings,\n\t\ttype: 'compileMdx',\n\t\tdesc: 'compileMdx in finished',\n\t})\n\n\tconst lastExercises = exercises[exercises.length - 1]\n\tconst workshopConfig = getWorkshopConfig()\n\tconst workshopTitle = workshopConfig.title\n\tconst workshopFormTemplate = workshopConfig.forms.workshop\n\tconst workshopFormEmbedUrl = workshopFormTemplate.replace(\n\t\t'{workshopTitle}',\n\t\tencodeURIComponent(workshopTitle),\n\t)\n\treturn data(\n\t\t{\n\t\t\tarticleId: `workshop-${slugify(workshopTitle)}-finished`,\n\t\t\tworkshopTitle,\n\t\t\tworkshopFormEmbedUrl,\n\t\t\tfinishedCode:\n\t\t\t\tcompiledFinished.compiled.status === 'success'\n\t\t\t\t\t? compiledFinished.compiled.code\n\t\t\t\t\t: null,\n\t\t\tepicVideoInfosPromise:\n\t\t\t\tcompiledFinished.compiled.status === 'success'\n\t\t\t\t\t? getEpicVideoInfos(compiledFinished.compiled.epicVideoEmbeds, {\n\t\t\t\t\t\t\trequest,\n\t\t\t\t\t\t})\n\t\t\t\t\t: null,\n\t\t\tworkshopFinished: {\n\t\t\t\tstatus: compiledFinished.compiled.status,\n\t\t\t\tfile: compiledFinished.file,\n\t\t\t\trelativePath: compiledFinished.relativePath,\n\t\t\t},\n\t\t\tprevStepLink: lastExercises\n\t\t\t\t? {\n\t\t\t\t\t\tto: `/${lastExercises.exerciseNumber}/finished`,\n\t\t\t\t\t}\n\t\t\t\t: null,\n\t\t},\n\t\t{\n\t\t\theaders: {\n\t\t\t\t'Server-Timing': getServerTimeHeader(timings),\n\t\t\t},\n\t\t},\n\t)\n}\n\nexport const headers: HeadersFunction = ({ loaderHeaders, parentHeaders }) => {\n\tconst headers = {\n\t\t'Cache-Control': loaderHeaders.get('Cache-Control') ?? '',\n\t\t'Server-Timing': combineServerTimings(loaderHeaders, parentHeaders),\n\t}\n\treturn headers\n}\n\nconst mdxComponents = { h1: () => null }\n\nexport default function ExerciseFinished({\n\tloaderData: data,\n}: Route.ComponentProps) {\n\tuseRevalidationWS({ watchPaths: ['./exercises/FINISHED.mdx'] })\n\treturn (\n\t\t<div className=\"flex h-full grow flex-col\">\n\t\t\t<main className=\"grid h-full grow grid-cols-1 grid-rows-2 lg:grid-cols-2 lg:grid-rows-1\">\n\t\t\t\t<div className=\"relative col-span-1 row-span-1 flex h-full flex-col lg:border-r\">\n\t\t\t\t\t<h1 className=\"h-14 border-b pr-5 pl-10 text-sm leading-none font-medium uppercase\">\n\t\t\t\t\t\t<div className=\"flex h-14 flex-wrap items-center justify-between gap-x-2 py-2\">\n\t\t\t\t\t\t\t<div className=\"flex items-center justify-start gap-x-2\">\n\t\t\t\t\t\t\t\t<Link to=\"/\" className=\"hover:underline\">\n\t\t\t\t\t\t\t\t\t{data.workshopTitle}\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t\t<span>/</span>\n\t\t\t\t\t\t\t\t<span>Elaboration</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</h1>\n\t\t\t\t\t<article\n\t\t\t\t\t\tclassName=\"shadow-on-scrollbox scrollbar-thin scrollbar-thumb-scrollbar h-full w-full max-w-none flex-1 scroll-pt-6 space-y-6 overflow-y-auto p-2 sm:p-10 sm:pt-8\"\n\t\t\t\t\t\tid={data.articleId}\n\t\t\t\t\t>\n\t\t\t\t\t\t{data.finishedCode ? (\n\t\t\t\t\t\t\t<EpicVideoInfoProvider\n\t\t\t\t\t\t\t\tepicVideoInfosPromise={data.epicVideoInfosPromise}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div className=\"prose dark:prose-invert sm:prose-lg\">\n\t\t\t\t\t\t\t\t\t<Mdx code={data.finishedCode} components={mdxComponents} />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</EpicVideoInfoProvider>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t// TODO: render a random dad joke...\n\t\t\t\t\t\t\t'No finished instructions yet...'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<RetrievalPractice />\n\t\t\t\t\t</article>\n\t\t\t\t\t<ElementScrollRestoration elementQuery={`#${data.articleId}`} />\n\t\t\t\t\t<ProgressToggle\n\t\t\t\t\t\ttype=\"workshop-finished\"\n\t\t\t\t\t\tclassName=\"h-14 border-t px-6\"\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"@container flex h-16 justify-between border-t border-b-4 lg:border-b-0\">\n\t\t\t\t\t\t<div />\n\t\t\t\t\t\t{data.workshopFinished.status === 'success' ? (\n\t\t\t\t\t\t\t<EditFileOnGitHub\n\t\t\t\t\t\t\t\tfile={data.workshopFinished.file}\n\t\t\t\t\t\t\t\trelativePath={data.workshopFinished.relativePath}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<NavChevrons prev={data.prevStepLink} next={{ to: '/' }} />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<Survey\n\t\t\t\t\tworkshopTitle={data.workshopTitle}\n\t\t\t\t\tworkshopFormEmbedUrl={data.workshopFormEmbedUrl}\n\t\t\t\t/>\n\t\t\t</main>\n\t\t</div>\n\t)\n}\n\nfunction Survey({\n\tworkshopTitle,\n\tworkshopFormEmbedUrl,\n}: {\n\tworkshopTitle: string\n\tworkshopFormEmbedUrl: string\n}) {\n\tconst theme = useTheme()\n\tconst [iframeLoaded, setIframeLoaded] = React.useState(false)\n\tconst isOnline = useIsOnline()\n\tif (!isOnline) {\n\t\treturn (\n\t\t\t<div className=\"relative shrink-0\">\n\t\t\t\t<div className=\"text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center\">\n\t\t\t\t\t<Icon name=\"WifiNoConnection\" size=\"xl\">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{'Unable to load the '}\n\t\t\t\t\t\t\t<a href={workshopFormEmbedUrl} className=\"underline\">\n\t\t\t\t\t\t\t\t{`${workshopTitle} feedback form`}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{' when offline'}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Icon>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t)\n\t}\n\treturn (\n\t\t<div className=\"relative shrink-0\">\n\t\t\t{!iframeLoaded ? (\n\t\t\t\t<div className=\"absolute inset-0 z-10 flex items-center justify-center\">\n\t\t\t\t\t<Loading>\n\t\t\t\t\t\t<span>Loading {workshopTitle} Elaboration form</span>\n\t\t\t\t\t</Loading>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t<iframe\n\t\t\t\tonLoad={() => setIframeLoaded(true)}\n\t\t\t\t// show what would have shown if there is an error\n\t\t\t\tonError={() => setIframeLoaded(true)}\n\t\t\t\ttitle=\"Elaboration\"\n\t\t\t\tsrc={workshopFormEmbedUrl}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'absolute inset-0 flex h-full w-full transition-opacity duration-300',\n\t\t\t\t\tiframeLoaded ? 'opacity-100' : 'opacity-0',\n\t\t\t\t)}\n\t\t\t\tstyle={{ colorScheme: theme }}\n\t\t\t/>\n\t\t</div>\n\t)\n}\n"],"names":["handle","getSitemapEntries","route","meta","matches","rootData","getRootMatchLoaderData","getSeoMetaTags","title","workshopTitle","description","ogTitle","ogDescription","instructor","requestInfo","mdxComponents","h1","finished","_UNSAFE_withComponentProps","loaderData","data","useRevalidationWS","watchPaths","className","children","jsxs","jsx","Link","to","id","articleId","finishedCode","EpicVideoInfoProvider","epicVideoInfosPromise","Mdx","code","components","RetrievalPractice","ElementScrollRestoration","elementQuery","ProgressToggle","type","workshopFinished","status","EditFileOnGitHub","file","relativePath","NavChevrons","prev","prevStepLink","next","Survey","workshopFormEmbedUrl","theme","useTheme","iframeLoaded","setIframeLoaded","React","useIsOnline","Loading","onLoad","onError","src","cn","style","colorScheme","Icon","name","size","href"],"mappings":"ukCAiCO,MAAMA,GAAoB,CAChCC,kBAAmBA,IAAM,CAAC,CAAEC,MAAO,YAAa,CACjD,EAEaC,GAA2BA,CAAC,CAAEC,QAAAA,CAAQ,IAAM,CACxD,MAAMC,EAAWC,EAAuBF,CAAO,EAC/C,OAAKC,EAEEE,EAAe,CACrBC,MAAO,MAAMH,GAAUI,aAAa,GACpCC,YAAa,mBAAmBL,GAAUI,aAAa,GACvDE,QAAS,YAAYN,GAAUI,aAAa,GAC5CG,cAAe,yCACfC,WAAYR,EAASQ,WACrBC,YAAaT,EAASS,WACvB,CAAC,EATqB,CAAA,CAUvB,EA6DMC,EAAgB,CAAEC,GAAIA,IAAM,IAAK,EAEvCC,GAAAC,EAAA,SAAyC,CACxCC,WAAYC,CACb,EAAyB,CACxBC,OAAAA,EAAkB,CAAEC,WAAY,CAAC,0BAA0B,CAAE,CAAC,QAE5D,MAAA,CAAIC,UAAU,4BACdC,SAAAC,EAAAA,KAAC,OAAA,CAAKF,UAAU,yEACfC,SAAA,CAAAC,EAAAA,KAAC,MAAA,CAAIF,UAAU,kEACdC,SAAA,CAAAE,EAAAA,IAAC,KAAA,CAAGH,UAAU,sEACbC,SAAAE,EAAAA,IAAC,MAAA,CAAIH,UAAU,gEACdC,SAAAC,EAAAA,KAAC,MAAA,CAAIF,UAAU,0CACdC,SAAA,CAAAE,EAAAA,IAACC,GAAKC,GAAG,IAAIL,UAAU,kBACrBC,SAAAJ,EAAKX,aAAA,CACP,EACAiB,EAAAA,IAAC,QAAKF,SAAA,GAAA,CAAC,EACPE,EAAAA,IAAC,QAAKF,SAAA,aAAA,CAAW,CAAA,EAClB,EACD,CAAA,CACD,EACAC,EAAAA,KAAC,UAAA,CACAF,UAAU,yJACVM,GAAIT,EAAKU,UAERN,SAAA,CAAAJ,EAAKW,aACLL,EAAAA,IAACM,EAAA,CACAC,sBAAuBb,EAAKa,sBAE5BT,SAAAE,EAAAA,IAAC,MAAA,CAAIH,UAAU,sCACdC,SAAAE,EAAAA,IAACQ,EAAA,CAAIC,KAAMf,EAAKW,aAAcK,WAAYrB,EAAe,EAC1D,CAAA,CACD,EAGA,wCAEAsB,EAAA,EAAkB,CAAA,CAAA,CACpB,QACCC,EAAA,CAAyBC,aAAc,IAAInB,EAAKU,SAAS,EAAA,CAAI,EAC9DJ,EAAAA,IAACc,EAAA,CACAC,KAAK,oBACLlB,UAAU,oBAAA,CACX,EACAE,EAAAA,KAAC,MAAA,CAAIF,UAAU,yEACdC,SAAA,CAAAE,EAAAA,IAAC,MAAA,EAAI,EACJN,EAAKsB,iBAAiBC,SAAW,UACjCjB,EAAAA,IAACkB,EAAA,CACAC,KAAMzB,EAAKsB,iBAAiBG,KAC5BC,aAAc1B,EAAKsB,iBAAiBI,aACrC,EACG,KACJpB,EAAAA,IAACqB,GAAYC,KAAM5B,EAAK6B,aAAcC,KAAM,CAAEtB,GAAI,GAAI,CAAA,CAAG,CAAA,CAAA,CAC1D,CAAA,CAAA,CACD,EACAF,EAAAA,IAACyB,EAAA,CACA1C,cAAeW,EAAKX,cACpB2C,qBAAsBhC,EAAKgC,oBAAA,CAC5B,CAAA,EACD,CAAA,CACD,CAEF,CAAA,EAEA,SAASD,EAAO,CACf1C,cAAAA,EACA2C,qBAAAA,CACD,EAGG,CACF,MAAMC,EAAQC,EAAA,EACR,CAACC,EAAcC,CAAe,EAAIC,EAAAA,SAAe,EAAK,EAE5D,OADiBC,EAAA,EAmBhBjC,EAAAA,KAAC,MAAA,CAAIF,UAAU,oBACbC,SAAA,CAAC+B,EAME,WALF,MAAA,CAAIhC,UAAU,yDACdC,SAAAE,EAAAA,IAACiC,EAAA,CACAnC,gBAAC,OAAA,CAAKA,SAAA,CAAA,WAASf,EAAc,mBAAA,EAAiB,EAC/C,EACD,EAEDiB,EAAAA,IAAC,SAAA,CACAkC,OAAQA,IAAMJ,EAAgB,EAAI,EAElCK,QAASA,IAAML,EAAgB,EAAI,EACnChD,MAAM,cACNsD,IAAKV,EACL7B,UAAWwC,EACV,sEACAR,EAAe,cAAgB,WAChC,EACAS,MAAO,CAAEC,YAAaZ,CAAM,CAAA,CAC7B,CAAA,CAAA,CACD,EApCC3B,EAAAA,IAAC,MAAA,CAAIH,UAAU,oBACdC,eAAC,MAAA,CAAID,UAAU,qFACdC,SAAAE,EAAAA,IAACwC,GAAKC,KAAK,mBAAmBC,KAAK,KAClC5C,gBAAC,OAAA,CACCA,SAAA,CAAA,sBACDE,EAAAA,IAAC,KAAE2C,KAAMjB,EAAsB7B,UAAU,YACvCC,SAAA,GAAGf,CAAa,iBAClB,EACC,eAAA,EACF,EACD,EACD,CAAA,CACD,CA0BH"}
|
|
1
|
+
{"version":3,"file":"finished-BSfM_f4M.js","sources":["../../../app/routes/_app+/finished.tsx"],"sourcesContent":["import { ElementScrollRestoration } from '@epic-web/restore-scroll'\nimport {\n\tgetExercises,\n\tgetWorkshopFinished,\n} from '@epic-web/workshop-utils/apps.server'\nimport { getWorkshopConfig } from '@epic-web/workshop-utils/config.server'\nimport { getEpicVideoInfos } from '@epic-web/workshop-utils/epic-api.server'\nimport {\n\tcombineServerTimings,\n\tgetServerTimeHeader,\n\tmakeTimings,\n\ttime,\n} from '@epic-web/workshop-utils/timing.server'\nimport { type SEOHandle } from '@nasa-gcn/remix-seo'\nimport slugify from '@sindresorhus/slugify'\nimport * as React from 'react'\nimport { data, type HeadersFunction, Link } from 'react-router'\nimport { EpicVideoInfoProvider } from '#app/components/epic-video.tsx'\nimport { Icon } from '#app/components/icons.tsx'\nimport { Loading } from '#app/components/loading.tsx'\nimport { NavChevrons } from '#app/components/nav-chevrons.tsx'\nimport { RetrievalPractice } from '#app/components/retrieval-practice.tsx'\nimport { useRevalidationWS } from '#app/components/revalidation-ws.tsx'\nimport { Mdx } from '#app/utils/mdx.tsx'\nimport { cn } from '#app/utils/misc.tsx'\nimport { useIsOnline } from '#app/utils/online.ts'\nimport { getRootMatchLoaderData } from '#app/utils/root-loader.ts'\nimport { getSeoMetaTags } from '#app/utils/seo.ts'\nimport { EditFileOnGitHub } from '../launch-editor.tsx'\nimport { ProgressToggle } from '../progress.tsx'\nimport { useTheme } from '../theme/index.tsx'\nimport { type Route } from './+types/finished.tsx'\n\nexport const handle: SEOHandle = {\n\tgetSitemapEntries: () => [{ route: '/finished' }],\n}\n\nexport const meta: Route.MetaFunction = ({ matches }) => {\n\tconst rootData = getRootMatchLoaderData(matches)\n\tif (!rootData) return []\n\n\treturn getSeoMetaTags({\n\t\ttitle: `🎉 ${rootData?.workshopTitle}`,\n\t\tdescription: `Elaboration for ${rootData?.workshopTitle}`,\n\t\togTitle: `Finished ${rootData?.workshopTitle}`,\n\t\togDescription: `You finished! Time to submit feedback.`,\n\t\tinstructor: rootData.instructor,\n\t\trequestInfo: rootData.requestInfo,\n\t})\n}\n\nexport async function loader({ request }: Route.LoaderArgs) {\n\tconst timings = makeTimings('finishedLoader')\n\tconst exercises = await getExercises({ request, timings })\n\tconst compiledFinished = await time(() => getWorkshopFinished({ request }), {\n\t\ttimings,\n\t\ttype: 'compileMdx',\n\t\tdesc: 'compileMdx in finished',\n\t})\n\n\tconst lastExercises = exercises[exercises.length - 1]\n\tconst workshopConfig = getWorkshopConfig()\n\tconst workshopTitle = workshopConfig.title\n\tconst workshopFormTemplate = workshopConfig.forms.workshop\n\tconst workshopFormEmbedUrl = workshopFormTemplate.replace(\n\t\t'{workshopTitle}',\n\t\tencodeURIComponent(workshopTitle),\n\t)\n\treturn data(\n\t\t{\n\t\t\tarticleId: `workshop-${slugify(workshopTitle)}-finished`,\n\t\t\tworkshopTitle,\n\t\t\tworkshopFormEmbedUrl,\n\t\t\tfinishedCode:\n\t\t\t\tcompiledFinished.compiled.status === 'success'\n\t\t\t\t\t? compiledFinished.compiled.code\n\t\t\t\t\t: null,\n\t\t\tepicVideoInfosPromise:\n\t\t\t\tcompiledFinished.compiled.status === 'success'\n\t\t\t\t\t? getEpicVideoInfos(compiledFinished.compiled.epicVideoEmbeds, {\n\t\t\t\t\t\t\trequest,\n\t\t\t\t\t\t})\n\t\t\t\t\t: null,\n\t\t\tworkshopFinished: {\n\t\t\t\tstatus: compiledFinished.compiled.status,\n\t\t\t\tfile: compiledFinished.file,\n\t\t\t\trelativePath: compiledFinished.relativePath,\n\t\t\t},\n\t\t\tprevStepLink: lastExercises\n\t\t\t\t? {\n\t\t\t\t\t\tto: `/${lastExercises.exerciseNumber}/finished`,\n\t\t\t\t\t}\n\t\t\t\t: null,\n\t\t},\n\t\t{\n\t\t\theaders: {\n\t\t\t\t'Server-Timing': getServerTimeHeader(timings),\n\t\t\t},\n\t\t},\n\t)\n}\n\nexport const headers: HeadersFunction = ({ loaderHeaders, parentHeaders }) => {\n\tconst headers = {\n\t\t'Cache-Control': loaderHeaders.get('Cache-Control') ?? '',\n\t\t'Server-Timing': combineServerTimings(loaderHeaders, parentHeaders),\n\t}\n\treturn headers\n}\n\nconst mdxComponents = { h1: () => null }\n\nexport default function ExerciseFinished({\n\tloaderData: data,\n}: Route.ComponentProps) {\n\tuseRevalidationWS({ watchPaths: ['./exercises/FINISHED.mdx'] })\n\treturn (\n\t\t<div className=\"flex h-full grow flex-col\">\n\t\t\t<main className=\"grid h-full grow grid-cols-1 grid-rows-2 lg:grid-cols-2 lg:grid-rows-1\">\n\t\t\t\t<div className=\"relative col-span-1 row-span-1 flex h-full flex-col lg:border-r\">\n\t\t\t\t\t<h1 className=\"h-14 border-b pr-5 pl-10 text-sm leading-none font-medium uppercase\">\n\t\t\t\t\t\t<div className=\"flex h-14 flex-wrap items-center justify-between gap-x-2 py-2\">\n\t\t\t\t\t\t\t<div className=\"flex items-center justify-start gap-x-2\">\n\t\t\t\t\t\t\t\t<Link to=\"/\" className=\"hover:underline\">\n\t\t\t\t\t\t\t\t\t{data.workshopTitle}\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t\t<span>/</span>\n\t\t\t\t\t\t\t\t<span>Elaboration</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</h1>\n\t\t\t\t\t<article\n\t\t\t\t\t\tclassName=\"shadow-on-scrollbox scrollbar-thin scrollbar-thumb-scrollbar h-full w-full max-w-none flex-1 scroll-pt-6 space-y-6 overflow-y-auto p-2 sm:p-10 sm:pt-8\"\n\t\t\t\t\t\tid={data.articleId}\n\t\t\t\t\t>\n\t\t\t\t\t\t{data.finishedCode ? (\n\t\t\t\t\t\t\t<EpicVideoInfoProvider\n\t\t\t\t\t\t\t\tepicVideoInfosPromise={data.epicVideoInfosPromise}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div className=\"prose dark:prose-invert sm:prose-lg\">\n\t\t\t\t\t\t\t\t\t<Mdx code={data.finishedCode} components={mdxComponents} />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</EpicVideoInfoProvider>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t// TODO: render a random dad joke...\n\t\t\t\t\t\t\t'No finished instructions yet...'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<RetrievalPractice />\n\t\t\t\t\t</article>\n\t\t\t\t\t<ElementScrollRestoration elementQuery={`#${data.articleId}`} />\n\t\t\t\t\t<ProgressToggle\n\t\t\t\t\t\ttype=\"workshop-finished\"\n\t\t\t\t\t\tclassName=\"h-14 border-t px-6\"\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"@container flex h-16 justify-between border-t border-b-4 lg:border-b-0\">\n\t\t\t\t\t\t<div />\n\t\t\t\t\t\t{data.workshopFinished.status === 'success' ? (\n\t\t\t\t\t\t\t<EditFileOnGitHub\n\t\t\t\t\t\t\t\tfile={data.workshopFinished.file}\n\t\t\t\t\t\t\t\trelativePath={data.workshopFinished.relativePath}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<NavChevrons prev={data.prevStepLink} next={{ to: '/' }} />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<Survey\n\t\t\t\t\tworkshopTitle={data.workshopTitle}\n\t\t\t\t\tworkshopFormEmbedUrl={data.workshopFormEmbedUrl}\n\t\t\t\t/>\n\t\t\t</main>\n\t\t</div>\n\t)\n}\n\nfunction Survey({\n\tworkshopTitle,\n\tworkshopFormEmbedUrl,\n}: {\n\tworkshopTitle: string\n\tworkshopFormEmbedUrl: string\n}) {\n\tconst theme = useTheme()\n\tconst [iframeLoaded, setIframeLoaded] = React.useState(false)\n\tconst isOnline = useIsOnline()\n\tif (!isOnline) {\n\t\treturn (\n\t\t\t<div className=\"relative shrink-0\">\n\t\t\t\t<div className=\"text-foreground-destructive absolute inset-0 z-10 flex items-center justify-center\">\n\t\t\t\t\t<Icon name=\"WifiNoConnection\" size=\"xl\">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{'Unable to load the '}\n\t\t\t\t\t\t\t<a href={workshopFormEmbedUrl} className=\"underline\">\n\t\t\t\t\t\t\t\t{`${workshopTitle} feedback form`}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{' when offline'}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Icon>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t)\n\t}\n\treturn (\n\t\t<div className=\"relative shrink-0\">\n\t\t\t{!iframeLoaded ? (\n\t\t\t\t<div className=\"absolute inset-0 z-10 flex items-center justify-center\">\n\t\t\t\t\t<Loading>\n\t\t\t\t\t\t<span>Loading {workshopTitle} Elaboration form</span>\n\t\t\t\t\t</Loading>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t<iframe\n\t\t\t\tonLoad={() => setIframeLoaded(true)}\n\t\t\t\t// show what would have shown if there is an error\n\t\t\t\tonError={() => setIframeLoaded(true)}\n\t\t\t\ttitle=\"Elaboration\"\n\t\t\t\tsrc={workshopFormEmbedUrl}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'absolute inset-0 flex h-full w-full transition-opacity duration-300',\n\t\t\t\t\tiframeLoaded ? 'opacity-100' : 'opacity-0',\n\t\t\t\t)}\n\t\t\t\tstyle={{ colorScheme: theme }}\n\t\t\t/>\n\t\t</div>\n\t)\n}\n"],"names":["handle","getSitemapEntries","route","meta","matches","rootData","getRootMatchLoaderData","getSeoMetaTags","title","workshopTitle","description","ogTitle","ogDescription","instructor","requestInfo","mdxComponents","h1","finished","_UNSAFE_withComponentProps","loaderData","data","useRevalidationWS","watchPaths","className","children","jsxs","jsx","Link","to","id","articleId","finishedCode","EpicVideoInfoProvider","epicVideoInfosPromise","Mdx","code","components","RetrievalPractice","ElementScrollRestoration","elementQuery","ProgressToggle","type","workshopFinished","status","EditFileOnGitHub","file","relativePath","NavChevrons","prev","prevStepLink","next","Survey","workshopFormEmbedUrl","theme","useTheme","iframeLoaded","setIframeLoaded","React","useIsOnline","Loading","onLoad","onError","src","cn","style","colorScheme","Icon","name","size","href"],"mappings":"ukCAiCO,MAAMA,GAAoB,CAChCC,kBAAmBA,IAAM,CAAC,CAAEC,MAAO,YAAa,CACjD,EAEaC,GAA2BA,CAAC,CAAEC,QAAAA,CAAQ,IAAM,CACxD,MAAMC,EAAWC,EAAuBF,CAAO,EAC/C,OAAKC,EAEEE,EAAe,CACrBC,MAAO,MAAMH,GAAUI,aAAa,GACpCC,YAAa,mBAAmBL,GAAUI,aAAa,GACvDE,QAAS,YAAYN,GAAUI,aAAa,GAC5CG,cAAe,yCACfC,WAAYR,EAASQ,WACrBC,YAAaT,EAASS,WACvB,CAAC,EATqB,CAAA,CAUvB,EA6DMC,EAAgB,CAAEC,GAAIA,IAAM,IAAK,EAEvCC,GAAAC,EAAA,SAAyC,CACxCC,WAAYC,CACb,EAAyB,CACxBC,OAAAA,EAAkB,CAAEC,WAAY,CAAC,0BAA0B,CAAE,CAAC,QAE5D,MAAA,CAAIC,UAAU,4BACdC,SAAAC,EAAAA,KAAC,OAAA,CAAKF,UAAU,yEACfC,SAAA,CAAAC,EAAAA,KAAC,MAAA,CAAIF,UAAU,kEACdC,SAAA,CAAAE,EAAAA,IAAC,KAAA,CAAGH,UAAU,sEACbC,SAAAE,EAAAA,IAAC,MAAA,CAAIH,UAAU,gEACdC,SAAAC,EAAAA,KAAC,MAAA,CAAIF,UAAU,0CACdC,SAAA,CAAAE,EAAAA,IAACC,GAAKC,GAAG,IAAIL,UAAU,kBACrBC,SAAAJ,EAAKX,aAAA,CACP,EACAiB,EAAAA,IAAC,QAAKF,SAAA,GAAA,CAAC,EACPE,EAAAA,IAAC,QAAKF,SAAA,aAAA,CAAW,CAAA,EAClB,EACD,CAAA,CACD,EACAC,EAAAA,KAAC,UAAA,CACAF,UAAU,yJACVM,GAAIT,EAAKU,UAERN,SAAA,CAAAJ,EAAKW,aACLL,EAAAA,IAACM,EAAA,CACAC,sBAAuBb,EAAKa,sBAE5BT,SAAAE,EAAAA,IAAC,MAAA,CAAIH,UAAU,sCACdC,SAAAE,EAAAA,IAACQ,EAAA,CAAIC,KAAMf,EAAKW,aAAcK,WAAYrB,EAAe,EAC1D,CAAA,CACD,EAGA,wCAEAsB,EAAA,EAAkB,CAAA,CAAA,CACpB,QACCC,EAAA,CAAyBC,aAAc,IAAInB,EAAKU,SAAS,EAAA,CAAI,EAC9DJ,EAAAA,IAACc,EAAA,CACAC,KAAK,oBACLlB,UAAU,oBAAA,CACX,EACAE,EAAAA,KAAC,MAAA,CAAIF,UAAU,yEACdC,SAAA,CAAAE,EAAAA,IAAC,MAAA,EAAI,EACJN,EAAKsB,iBAAiBC,SAAW,UACjCjB,EAAAA,IAACkB,EAAA,CACAC,KAAMzB,EAAKsB,iBAAiBG,KAC5BC,aAAc1B,EAAKsB,iBAAiBI,aACrC,EACG,KACJpB,EAAAA,IAACqB,GAAYC,KAAM5B,EAAK6B,aAAcC,KAAM,CAAEtB,GAAI,GAAI,CAAA,CAAG,CAAA,CAAA,CAC1D,CAAA,CAAA,CACD,EACAF,EAAAA,IAACyB,EAAA,CACA1C,cAAeW,EAAKX,cACpB2C,qBAAsBhC,EAAKgC,oBAAA,CAC5B,CAAA,EACD,CAAA,CACD,CAEF,CAAA,EAEA,SAASD,EAAO,CACf1C,cAAAA,EACA2C,qBAAAA,CACD,EAGG,CACF,MAAMC,EAAQC,EAAA,EACR,CAACC,EAAcC,CAAe,EAAIC,EAAAA,SAAe,EAAK,EAE5D,OADiBC,EAAA,EAmBhBjC,EAAAA,KAAC,MAAA,CAAIF,UAAU,oBACbC,SAAA,CAAC+B,EAME,WALF,MAAA,CAAIhC,UAAU,yDACdC,SAAAE,EAAAA,IAACiC,EAAA,CACAnC,gBAAC,OAAA,CAAKA,SAAA,CAAA,WAASf,EAAc,mBAAA,EAAiB,EAC/C,EACD,EAEDiB,EAAAA,IAAC,SAAA,CACAkC,OAAQA,IAAMJ,EAAgB,EAAI,EAElCK,QAASA,IAAML,EAAgB,EAAI,EACnChD,MAAM,cACNsD,IAAKV,EACL7B,UAAWwC,EACV,sEACAR,EAAe,cAAgB,WAChC,EACAS,MAAO,CAAEC,YAAaZ,CAAM,CAAA,CAC7B,CAAA,CAAA,CACD,EApCC3B,EAAAA,IAAC,MAAA,CAAIH,UAAU,oBACdC,eAAC,MAAA,CAAID,UAAU,qFACdC,SAAAE,EAAAA,IAACwC,GAAKC,KAAK,mBAAmBC,KAAK,KAClC5C,gBAAC,OAAA,CACCA,SAAA,CAAA,sBACDE,EAAAA,IAAC,KAAE2C,KAAMjB,EAAsB7B,UAAU,YACvCC,SAAA,GAAGf,CAAa,iBAClB,EACC,eAAA,EACF,EACD,EACD,CAAA,CACD,CA0BH"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j}from"./jsx-runtime-C5WNSv3b.js";import{l as fr,f as vr,g as pr}from"./chunk-EPOLDU6W-BCLmut3y.js";import{I as ze}from"./misc-W4055b-0.js";import{S as yr}from"./tooltip-Tlsyx2YO.js";import{r as T}from"./index-CqIc3cxq.js";import{a as Fe}from"./root-loader-BOzEMapJ.js";import{u as mr}from"./pe-CIZUOJMr.js";import{o as gr,j as hr}from"./schemas-Uj5SZtvt.js";function Ue(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function h(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Ue(Object(t),!0).forEach(function(n){br(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ue(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function br(e,r,t){return r=Or(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function wr(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function Or(e){var r=wr(e,"string");return typeof r=="symbol"?r:String(r)}function Oe(e,r){if(!e)throw new Error(r)}function $(){return(Date.now()*Math.random()).toString(36)}function ce(e){return JSON.parse(JSON.stringify(e))}function R(e){return!!e&&e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function Ne(e){return e.tagName==="INPUT"}function Le(e){return e.tagName==="SELECT"}function Qe(e){return e.tagName==="TEXTAREA"}function kr(e){return"type"in e&&e.type==="submit"}function ue(e){if(e instanceof Element){if(Ne(e))return e.type!=="submit"&&e.type!=="button"&&e.type!=="reset";if(Le(e)||Qe(e))return!0}return!1}function he(e,r){var t=globalThis[r];return typeof t=="function"&&e instanceof t}function Pr(e){var r,t,n=e.target,i=e.submitter;return(r=(t=i?.getAttribute("formaction"))!==null&&t!==void 0?t:n.getAttribute("action"))!==null&&r!==void 0?r:"".concat(location.pathname).concat(location.search)}function Sr(e){var r,t=e.target,n=e.submitter,i=(r=n?.getAttribute("formenctype"))!==null&&r!==void 0?r:t.enctype;return i==="multipart/form-data"?i:"application/x-www-form-urlencoded"}function Er(e){var r,t,n=e.target,i=e.submitter,a=(r=(t=i?.getAttribute("formmethod"))!==null&&t!==void 0?t:n.getAttribute("method"))===null||r===void 0?void 0:r.toUpperCase();switch(a){case"POST":case"PUT":case"PATCH":case"DELETE":return a}return"GET"}function Ir(e){return new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:e})}function Ar(e,r){Oe(!!e,"Failed to submit the form. The element provided is null or undefined."),typeof e.requestSubmit=="function"?e.requestSubmit(r):e.dispatchEvent(Ir(r))}function zr(e){var r=new DataTransfer;if(Array.isArray(e))for(var t of e)r.items.add(t);else r.items.add(e);return r.files}function K(e){if(!(typeof e>"u")){if(e===null)return[];if(typeof e=="string")return[e];if(Array.isArray(e)&&e.every(r=>typeof r=="string"))return Array.from(e);throw new Error("Expected string or string[] value for string based input")}}function jr(e){if(!(typeof e>"u")){if(e===null)return[];if(he(e,"File"))return e.name===""&&e.size===0?[]:[e];if(he(e,"FileList"))return Array.from(e);if(Array.isArray(e)&&e.every(r=>he(r,"File")))return e;throw new Error("Expected File, FileList or File[] for file input")}}function Ze(e,r){var t=!1;if(Ne(e))switch(e.type){case"file":{var n,i=jr(r.value),a=Array.from((n=e.files)!==null&&n!==void 0?n:[]);return i&&(i.length!==a.length||i.some((Ie,l)=>Ie!==a[l]))&&(e.files=zr(i),t=!0),t}case"checkbox":case"radio":{var o=K(r.value),u=K(r.defaultValue);if(o){var s=o.includes(e.value);(e.type==="checkbox"?s!==e.checked:s)&&(e.click(),t=!0),e.checked=s}return u&&(e.defaultChecked=u.includes(e.value)),t}}else if(Le(e)){var c=K(r.value),p=K(r.defaultValue),v=c&&c.length===0;for(var m of e.options){if(c){var g=c.indexOf(m.value),b=g>-1;m.selected!==b&&(m.selected=b,t=!0),b&&c.splice(g,1)}if(p){var P=p.indexOf(m.value),C=P>-1;m.defaultSelected!==C&&(m.defaultSelected=C),C&&p.splice(P,1)}}var Z=new Set([...c??[],...p??[]]);for(var B of Z)e.options.add(new Option(B,B,p?.includes(B),c?.includes(B))),t=!0;return v&&e.selectedIndex!==-1&&(e.selectedIndex=-1,t=!0),t}var te=K(r.value),ye=K(r.defaultValue);if(te){var ne,ie=(ne=te[0])!==null&&ne!==void 0?ne:"";if(e.value!==ie){var{set:H}=Object.getOwnPropertyDescriptor(e,"value")||{},me=Object.getPrototypeOf(e),{set:V}=Object.getOwnPropertyDescriptor(me,"value")||{};if(V&&H!==V)V.call(e,ie);else if(H)H.call(e,ie);else throw new Error("The given element does not have a value setter");t=!0}}if(ye){var oe;e.defaultValue=(oe=ye[0])!==null&&oe!==void 0?oe:""}return t}function Tr(e){var r,t;if(Ne(e))switch(e.type){case"checkbox":case"radio":return e.checked!==e.defaultChecked;case"file":return((r=(t=e.files)===null||t===void 0?void 0:t.length)!==null&&r!==void 0?r:0)>0;default:return e.value!==e.defaultValue}else{if(Le(e))return Array.from(e.options).some(n=>n.selected!==n.defaultSelected);if(Qe(e))return e.value!==e.defaultValue}return!1}function Vr(e,r){var t=new FormData(e,r);if(r){if(!kr(r))throw new TypeError("The submitter must be an input or button element with type submit.");if(r.name){var n=t.getAll(r.name);n.includes(r.value)||t.append(r.name,r.value)}}return t}function N(e){if(!e)return[];for(var r=/([^.[\]]+)|\[(\d*)\]/g,t=[],n=0,i;i=r.exec(e);){if(i.index!==n&&!(i.index===n+1&&e[n]==="."))throw new Error("Invalid path syntax at position ".concat(n,' in "').concat(e,'"'));var[,a,o]=i;if(a!==void 0){if(a==="__proto__"||a==="constructor")throw new Error('Invalid path segment "'.concat(a,'"'));t.push(a)}else if(o==="")t.push("");else{var u=Number(o);if(!Number.isInteger(u)||u<0)throw new Error("Invalid path segment: array index must be a non-negative integer, got ".concat(u));t.push(u)}n=r.lastIndex}if(n!==e.length)throw new Error("Invalid path syntax at position ".concat(n,' in "').concat(e,'"'));return t}function Q(e){return e.reduce((r,t)=>M(r,t),"")}function M(e,r){return typeof r>"u"?e??"":r===""?"".concat(e,"[]"):typeof r=="number"?"".concat(e,"[").concat(r,"]"):e?"".concat(e,".").concat(r):r}function re(e,r){return Ye(e,N(r))!==null}function Ye(e,r){var t=N(e);return t.length>=r.length&&r.every((n,i)=>n===t[i])?t.slice(r.length):null}function U(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};try{var i=typeof r=="string"?N(r):r;if(i.length===0)throw new Error("Cannot set value at the object root");if(i.some((b,P)=>b===""&&P<i.length-1))throw new Error(`Empty brackets '[]' only allowed at end of path ("`.concat(r,'")'));for(var a=n.clone?h({},e):e,o=a,u=0;u<i.length-1;u++){var s=i[u],c=i[u+1],p=o[s];Array.isArray(p)?p=n.clone?p.slice():p:R(p)?p=n.clone?h({},p):p:p=typeof c=="number"||c===""?[]:{},o[s]=p,o=p}var v=i[i.length-1],m=o[v],g=typeof t=="function"?t(m):t;if(v===""){if(!Array.isArray(o))throw new Error('Cannot push to non-array at "'.concat(r,'"'));o.push(g)}else o[v]=g;return a}catch(b){if(n!=null&&n.silent)return e;throw b}}function Y(e,r){var t=e,n=typeof r=="string"?N(r):r;for(var i of n){if(i==="")throw new Error('Cannot access empty segment "[]" in "'.concat(r,'"'));if(t==null||!Object.prototype.hasOwnProperty.call(t,i))return;t=t[i]}return t}var le="__intent__",je="__state__";function er(e){var r=e.get(le),t=e.get(je);Oe((typeof r=="string"||r===null)&&(typeof t=="string"||t===null),'The input name "'.concat(le,'" and "').concat(je,'" are reserved by Conform. Please use another name for your input.'));var n={payload:{},fields:new Set,intent:Fr(r)};t&&(n.state=JSON.parse(t));var i=function(s){if(a===le||a===je)return 1;n.fields.add(a),U(n.payload,a,c=>c?Array.isArray(c)?c.concat(s):[c,s]:s,{silent:!0})};for(var[a,o]of e.entries())i(o);return n}function _r(e,r){var t=er(e),n=t.intent;if(n)switch(n.type){case"update":{var i=M(n.payload.name,n.payload.index),a=n.payload.value;typeof n.payload.value<"u"&&(i?U(t.payload,i,()=>a):t.payload=a);break}case"reset":{var o=M(n.payload.name,n.payload.index);o?U(t.payload,o,()=>{}):t.payload={};break}case"insert":case"remove":case"reorder":{rr(t.payload,n);break}}var u=r.resolve(t.payload,n),s=c=>Cr(h(h({},t),{},{value:c.value,error:c.error}));return u instanceof Promise?u.then(s):s(u)}function Cr(e){return e.intent||e.error!==void 0?{status:e.intent?void 0:"error",payload:e.payload,error:typeof e.error<"u"?e.error:{},reply(r){return He(e,r)}}:{status:"success",payload:e.payload,value:e.value,reply(r){return He(e,r)}}}function He(e){var r,t,n,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if("resetForm"in a&&a.resetForm||((r=e.intent)===null||r===void 0?void 0:r.type)==="reset"&&((t=e.intent.payload.name)!==null&&t!==void 0?t:"")==="")return{initialValue:null};if("hideFields"in a&&a.hideFields)for(var o of a.hideFields){var u=Y(e.payload,o);typeof u<"u"&&U(e.payload,o,()=>{})}var s="formErrors"in a||"fieldErrors"in a?ee(h({"":(n=a.formErrors)!==null&&n!==void 0?n:null},a.fieldErrors)):null,c=e.error||s?h(h({},e.error),s):void 0,p=(i=ee(e.payload,typeof document<"u"))!==null&&i!==void 0?i:{};return{status:e.intent?void 0:c?"error":"success",intent:e.intent?e.intent:void 0,initialValue:p,error:c,state:e.state,fields:Array.from(e.fields)}}function Fr(e){if(!e)return null;var r=JSON.parse(e);if(typeof r.type!="string"||typeof r.payload>"u")throw new Error("Unknown form control intent");return r}function Nr(e){switch(e.type){case"insert":return JSON.stringify({type:e.type,payload:h(h({},e.payload),{},{defaultValue:de(e.payload.defaultValue)})});case"update":return JSON.stringify({type:e.type,payload:h(h({},e.payload),{},{value:de(e.payload.value)})});default:return JSON.stringify(e)}}function Ve(e,r){var t;switch(Oe(Array.isArray(e),"Failed to update list. The value is not an array."),r.type){case"insert":e.splice((t=r.payload.index)!==null&&t!==void 0?t:e.length,0,r.payload.defaultValue);break;case"remove":e.splice(r.payload.index,1);break;case"reorder":e.splice(r.payload.to,0,...e.splice(r.payload.from,1));break;default:throw new Error("Unknown list intent received")}}function rr(e,r){U(e,r.payload.name,t=>{var n=t??[];return Ve(n,r),n})}var _e=Symbol.for("root");function we(e,r,t){var n=Object.keys(e).sort((s,c)=>c.localeCompare(s)),i={},a=function(){var c=e[o];re(o,r)&&o!==r&&(U(i,o,p=>typeof p>"u"?c:(p[_e]=c,p)),delete e[o])};for(var o of n)a();var u=t(Y(i,r));Object.assign(e,De(u,{resolve(s){if(R(s)||Array.isArray(s)){var c;return(c=s[_e])!==null&&c!==void 0?c:null}return s},prefix:r}))}function xe(e,r,t){we(e,r.payload.name,n=>{var i=n??[];switch(r.type){case"insert":Ve(i,{type:r.type,payload:h(h({},r.payload),{},{defaultValue:t?.(r.payload.defaultValue)})});break;default:Ve(i,r);break}return i})}function de(e){return R(e)?Object.entries(e).reduce((r,t)=>{var[n,i]=t;return r[n]=de(i),r},{}):Array.isArray(e)?e.map(de):e instanceof Date?e.toISOString():typeof e=="boolean"?e?"on":void 0:typeof e=="number"||typeof e=="bigint"?e.toString():e??void 0}function ee(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(R(e)){var t=Object.keys(e).sort().reduce((n,i)=>{var a=ee(e[i],r);return typeof a<"u"&&(n[i]=a),n},{});return Object.keys(t).length===0?void 0:t}if(Array.isArray(e))return e.length===0?void 0:e.map(n=>ee(n,r));if(!(typeof e=="string"&&e===""||e===null||he(e,"File")&&(!r||e.size===0)))return e}function De(e){var r,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n={},i=(r=t.resolve)!==null&&r!==void 0?r:u=>u;function a(u,s){var c=ee(i(u));if(typeof c<"u"&&(n[s]=c),Array.isArray(u))for(var p=0;p<u.length;p++)a(u[p],"".concat(s,"[").concat(p,"]"));else if(R(u))for(var[v,m]of Object.entries(u))a(m,s?"".concat(s,".").concat(v):v)}if(e){var o;a(e,(o=t.prefix)!==null&&o!==void 0?o:"")}return n}function Je(e,r){var t,n,i,a,o,u=r?void 0:e.lastResult,s=e.defaultValue?de(e.defaultValue):{},c=(t=u?.initialValue)!==null&&t!==void 0?t:s,p={formId:e.formId,pendingIntents:r?[{type:"reset",payload:{}}]:[],isValueUpdated:!1,submissionStatus:u?.status,defaultValue:s,initialValue:c,value:c,constraint:(n=e.constraint)!==null&&n!==void 0?n:{},validated:(i=u==null||(a=u.state)===null||a===void 0?void 0:a.validated)!==null&&i!==void 0?i:{},key:r?h({"":$()},fe(s)):fe(s),error:(o=u?.error)!==null&&o!==void 0?o:{}};return tr(p,u?.intent,u?.fields),p}function fe(e,r){return Object.entries(De(e,{prefix:r})).reduce((t,n)=>{var[i,a]=n;if(Array.isArray(a))for(var o=0;o<a.length;o++)t[M(i,o)]=$();return t},{})}function Be(e,r){for(var t of Object.keys(e.error).concat(r??[]))e.validated[t]=!0}function tr(e,r,t,n){var i;if(!r){Be(e,t);return}switch(r.type){case"validate":{r.payload.name?e.validated[r.payload.name]=!0:Be(e,t);break}case"update":{var{validated:a,value:o}=r.payload,u=M(r.payload.name,r.payload.index);typeof o<"u"&&Ke(e,u??"",o),typeof a<"u"&&(u?we(e.validated,u,()=>{}):e.validated={},a?((R(o)||Array.isArray(o))&&Object.assign(e.validated,De(o,{resolve(){return!0},prefix:u})),e.validated[u??""]=!0):u&&delete e.validated[u]);break}case"reset":{var s=M(r.payload.name,r.payload.index),c=Y(e.defaultValue,s);Ke(e,s,c),s?(we(e.validated,s,()=>{}),delete e.validated[s]):e.validated={};break}case"insert":case"remove":case"reorder":{n&&(e.initialValue=ce(e.initialValue),e.key=ce(e.key),xe(e.key,r,v=>!Array.isArray(v)&&!R(v)?$():Object.assign(fe(v),{[_e]:$()})),rr(e.initialValue,r)),xe(e.validated,r),e.validated[r.payload.name]=!0;break}}var p=(i=t?.filter(v=>e.validated[v]))!==null&&i!==void 0?i:[];e.error=Object.entries(e.error).reduce((v,m)=>{var[g,b]=m;return(e.validated[g]||p.some(P=>re(g,P)))&&(v[g]=b),v},{})}function Ke(e,r,t){if(r===""){e.initialValue=t,e.value=t,e.key=h(h({},fe(t)),{},{"":$()});return}e.initialValue=ce(e.initialValue),e.value=ce(e.value),e.key=ce(e.key),U(e.initialValue,r,()=>t),U(e.value,r,()=>t),(R(t)||Array.isArray(t))&&(we(e.key,r,()=>{}),Object.assign(e.key,fe(t,r))),e.key[r]=$()}function pe(e){var r={};return new Proxy(r,{get(t,n,i){var a;if(typeof n=="string")return(a=r[n])!==null&&a!==void 0?a:r[n]=e(n,i)}})}function Te(e){var r=ee(e);return pe((t,n)=>{if(t==="")return r;var i=N(t),a=Q(i.slice(0,-1)),o=Q(i.slice(-1)),u=n[a];return Y(u,o)})}function Lr(e){return pe((r,t)=>{var n,i=e[r];if(!i){for(var a=N(r),o=a.length-1;o>=0;o--){var u=a[o];if(typeof u=="number"){a[o]="";break}}var s=Q(a);r!==s&&(i=t[s])}return(n=i)!==null&&n!==void 0?n:{}})}function Dr(e){return pe((r,t)=>{var n=e[r],i=N(r);if(i.length===0)return n;var a=t[Q(i.slice(0,-1))];return typeof a>"u"?n:"".concat(a,"/").concat(n??i.at(-1))})}function $r(e){return pe(r=>{var t=Object.keys(e);if(r==="")return t.length===0;for(var n of t)if(re(n,r)&&typeof e[n]<"u")return!1;return!0})}function Rr(e,r,t){return pe(n=>JSON.stringify(e[n])!==JSON.stringify(r[n],(i,a)=>n===""&&i===""&&a?Object.entries(a).reduce((o,u)=>{var[s,c]=u;return t(s)?Object.assign(o??{},{[s]:c}):o},void 0):a))}function q(e,r,t,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:(g,b)=>JSON.stringify(g)!==JSON.stringify(b);if(n&&e!==r){var a,o,u=(a=n.prefix)!==null&&a!==void 0?a:[],s=(o=n.name)!==null&&o!==void 0?o:[],c=u.length===0?s:Array.from(new Set([...Object.keys(e),...Object.keys(r)])),p=function(b){if(u.length===0||s.includes(b)||u.some(C=>re(b,C))){var P;if((P=t[b])!==null&&P!==void 0||(t[b]=i(e[b],r[b])),t[b])return{v:!0}}},v;for(var m of c)if(v=p(m),v)return v.v}return!1}function Mr(e){var r=[],t=e,n=new Set,i=Je(e),a=u(i);function o(){return document.forms.namedItem(t.formId)}function u(l){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l,d=arguments.length>2?arguments[2]:void 0,y=!d||f.defaultValue!==l.defaultValue?Te(l.defaultValue):d.defaultValue,S=l.initialValue===l.defaultValue?y:!d||f.initialValue!==l.initialValue?Te(l.initialValue):d.initialValue,O=l.value===l.initialValue?S:!d||f.value!==l.value?Te(l.value):d.value;return{submissionStatus:l.submissionStatus,pendingIntents:l.pendingIntents,defaultValue:y,initialValue:S,value:O,error:!d||f.error!==l.error?l.error:d.error,validated:l.validated,constraint:!d||f.constraint!==l.constraint?Lr(l.constraint):d.constraint,key:!d||f.key!==l.key?Dr(l.key):d.key,valid:!d||f.error!==l.error?$r(l.error):d.valid,dirty:!d||f.defaultValue!==l.defaultValue||f.value!==l.value?Rr(y,O,E=>{var k,A;return(k=(A=t.shouldDirtyConsider)===null||A===void 0?void 0:A.call(t,E))!==null&&k!==void 0?k:!0}):d.dirty}}function s(l){var f=i,d=a,y=u(l,f,d);i=l,a=y;var S={value:{},error:{},initialValue:{},key:{},valid:{},dirty:{}};for(var O of r){var E,k=(E=O.getSubject)===null||E===void 0?void 0:E.call(O);(!k||k.formId&&f.formId!==l.formId||k.status&&d.submissionStatus!==y.submissionStatus||k.pendingIntents&&f.pendingIntents!==l.pendingIntents||q(d.error,y.error,S.error,k.error)||q(d.initialValue,y.initialValue,S.initialValue,k.initialValue)||q(d.key,y.key,S.key,k.key,(A,ae)=>A!==ae)||q(d.valid,y.valid,S.valid,k.valid,c)||q(d.dirty,y.dirty,S.dirty,k.dirty,c)||q(d.value,y.value,S.value,k.value))&&O.callback()}}function c(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return l!==f}function p(){return JSON.stringify({validated:i.validated})}function v(l){var f=l.target,d=l.submitter;Oe(f===o(),"The submit event is dispatched by form#".concat(f.id," instead of form#").concat(t.formId));var y=Vr(f,d),S={formData:y,action:Pr(l),encType:Sr(l),method:Er(l)};if(typeof t?.onValidate>"u")return S;var O=t.onValidate({form:f,formData:y,submitter:d});if(O.status==="success"||O.error!==null){var E=O.reply();te(h(h({},E),{},{status:E.status!=="success"?E.status:void 0}))}return h(h({},S),{},{submission:O})}function m(l){var f=o(),d=l.target;return!f||!ue(d)||d.form!==f||!d.form.isConnected||d.name===""?null:d}function g(l,f){var{shouldValidate:d="onSubmit",shouldRevalidate:y=d}=t,S=i.validated[l.name];return S?y===f&&(f==="onInput"||i.isValueUpdated):d===f}function b(l){var f=new FormData(l),d=er(f);s(h(h({},i),{},{isValueUpdated:!0,value:d.payload}))}function P(l){var f=m(l);!f||!f.form||(l.defaultPrevented||!g(f,"onInput")?b(f.form):H({type:"validate",payload:{name:f.name}}))}function C(l){var f=m(l);!f||l.defaultPrevented||!g(f,"onBlur")||H({type:"validate",payload:{name:f.name}})}function Z(){n.clear(),s(Je(t,!0))}function B(l){var f=o();l.type!=="reset"||l.target!==f||l.defaultPrevented||Z()}function te(l){var f,d,y=o();if(!l.initialValue){Z();return}var S=Object.entries((f=l.error)!==null&&f!==void 0?f:{}).reduce((A,ae)=>{var[z,x]=ae,L=x===null?i.error[z]:x;return L&&(A[z]=L),A},{}),O=l.intent?i.pendingIntents.filter(A=>!n.has(A)).concat(l.intent):i.pendingIntents,E=h(h({},i),{},{pendingIntents:O,isValueUpdated:!1,submissionStatus:l.status,value:l.initialValue,validated:h(h({},i.validated),(d=l.state)===null||d===void 0?void 0:d.validated),error:S});if(tr(E,l.intent,l.fields,!0),s(E),y&&l.status==="error"){for(var k of y.elements)if(ue(k)&&i.error[k.name]){k.focus();break}}}function ye(l){var f=t.formId,d=t.lastResult;Object.assign(t,l),t.formId!==f?Z():l.lastResult&&l.lastResult!==d&&te(l.lastResult)}function ne(l,f){var d={callback:l,getSubject:f};return r.push(d),()=>{r=r.filter(y=>y!==d)}}function ie(){return a}function H(l){var f=o(),d=document.createElement("button"),y=me(l);d.name=y.name,d.value=y.value,d.hidden=!0,d.formNoValidate=!0,f?.appendChild(d),Ar(f,d),f?.removeChild(d)}function me(l){return{name:le,value:Nr(l),form:t.formId,formNoValidate:!0}}function V(l){var f=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return H({type:l,payload:y})};return Object.assign(f,{getButtonProps(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return me({type:l,payload:d})}})}function oe(){var l=new MutationObserver(f=>{var d=o();if(d)for(var y of f){var S=y.type==="childList"?[...y.addedNodes,...y.removedNodes]:[y.target];for(var O of S){var E=ue(O)?O:O instanceof HTMLElement?O.querySelector("input,select,textarea"):null;if(E?.form===d){b(d);return}}}});return l.observe(document,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["form","name"]}),()=>{l.disconnect()}}function Ie(l){var f=o();if(f)for(var d of l){switch(d.type){case"update":{var y=M(d.payload.name,d.payload.index),S=N(y);for(var O of f.elements)if(ue(O)){var E=Ye(O.name,S);if(E){var k=Y(d.payload.value,E),A=typeof k=="string"||Array.isArray(k)&&k.every(Ae=>typeof Ae=="string")?k:void 0;(typeof A<"u"||y===""&&E.length>1)&&(Ze(O,{value:A??null}),O.dataset.conform=$())}}break}case"reset":{var ae=M(d.payload.name,d.payload.index);for(var z of f.elements)if(ue(z)&&z.name&&re(z.name,ae)){var x=Y(i.defaultValue,z.name),L=typeof x=="string"||Array.isArray(x)&&x.every(Ae=>typeof Ae=="string")?x:void 0;if(typeof L>"u"&&!z.dataset.conform&&"defaultValue"in z&&!Tr(z))continue;Ze(z,{defaultValue:L,value:L??null}),z.dataset.conform=$()}break}}n.add(d)}}return{getFormId(){return i.formId},submit:v,onReset:B,onInput:P,onBlur:C,onUpdate:ye,validate:V("validate"),reset:V("reset"),update:V("update"),insert:V("insert"),remove:V("remove"),reorder:V("reorder"),runSideEffect:Ie,subscribe:ne,getState:ie,getSerializedState:p,observe:oe}}function qe(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function F(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?qe(Object(t),!0).forEach(function(n){Ur(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):qe(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function Ur(e,r,t){return r=Jr(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function Zr(e,r){if(e==null)return{};var t={},n=Object.keys(e),i,a;for(a=0;a<n.length;a++)i=n[a],!(r.indexOf(i)>=0)&&(t[i]=e[i]);return t}function Hr(e,r){if(e==null)return{};var t=Zr(e,r),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)n=a[i],!(r.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(t[n]=e[n])}return t}function xr(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function Jr(e){var r=xr(e,"string");return typeof r=="symbol"?r:String(r)}var Br=Symbol("wrapped");function Kr(e,r){var t=T.useCallback(n=>e.subscribe(n,()=>r?.current),[e,r]);return T.useSyncExternalStore(t,e.getState,e.getState)}function qr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=T.useRef(e);return r.current=e,r}function X(e,r,t,n){if(r==="status"||r==="formId"||r==="pendingIntents")e.current[r]=!0;else if(typeof t<"u"&&typeof n<"u"){var i,a;e.current[r]=F(F({},e.current[r]),{},{[t]:((i=(a=e.current[r])===null||a===void 0?void 0:a[t])!==null&&i!==void 0?i:[]).concat(n)})}}function nr(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"",i=n?"".concat(e.getFormId(),"-").concat(n):e.getFormId(),a=e.getState();return new Proxy({id:i,name:n,errorId:"".concat(i,"-error"),descriptionId:"".concat(i,"-description"),get defaultValue(){var o=this.initialValue;if(typeof o=="string")return o;if(Array.isArray(o))return o[0]},get defaultOptions(){var o=this.initialValue;if(typeof o=="string")return[o];if(Array.isArray(o)&&o.every(u=>typeof u=="string"))return o},get defaultChecked(){if(this.initialValue==="on")return!0},get initialValue(){return a.initialValue[n]},get value(){return a.value[n]},get errors(){return a.error[n]},get key(){return a.key[n]},get valid(){return a.valid[n]},get dirty(){return a.dirty[n]},get allErrors(){if(n==="")return a.error;var o={};for(var[u,s]of Object.entries(a.error))re(u,n)&&(o[u]=s);return o},get getFieldset(){return()=>new Proxy({},{get(o,u,s){return typeof u=="string"?ir(e,r,t,n,u):Reflect.get(o,u,s)}})}},{get(o,u,s){if(a===t)switch(u){case"id":case"errorId":case"descriptionId":X(r,"formId");break;case"key":case"initialValue":case"value":case"valid":case"dirty":X(r,u,"name",n);break;case"errors":case"allErrors":X(r,"error",u==="errors"?"name":"prefix",n);break}return Reflect.get(o,u,s)}})}function ir(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"",i=arguments.length>4?arguments[4]:void 0,a=typeof i>"u"?n:Q([...N(n),i]);return new Proxy({},{get(o,u,s){var c,p=nr(e,r,t,a),v=e.getState();switch(u){case"formId":return v===t&&X(r,"formId"),e.getFormId();case"required":case"minLength":case"maxLength":case"min":case"max":case"pattern":case"step":case"multiple":return(c=v.constraint[a])===null||c===void 0?void 0:c[u];case"getFieldList":return()=>{var m,g=(m=v.initialValue[a])!==null&&m!==void 0?m:[];if(v===t&&X(r,"initialValue","name",a),!Array.isArray(g))throw new Error("The initial value at the given name is not a list");return Array(g.length).fill(0).map((b,P)=>ir(e,r,t,a,P))}}return Reflect.get(p,u,s)}})}function Wr(e,r,t,n){return new Proxy({},{get(i,a,o){var u=nr(e,r,t),s=e.getState();switch(a){case"context":return{[Br]:e};case"status":return s===t&&X(r,"status"),s.submissionStatus;case"validate":case"update":case"reset":case"insert":case"remove":case"reorder":return e[a];case"onSubmit":return e.submit;case"noValidate":return n}return Reflect.get(u,a,o)}})}function Gr(e){var{onSubmit:r}=e,t=Mr(e);return F(F({},t),{},{submit(n){var i=n.nativeEvent,a=t.submit(i);if(!a.submission||a.submission.status==="success"||a.submission.error===null){if(!a.formData.has(le)){var o;(o=r)===null||o===void 0||o(n,a)}}else n.preventDefault()},onUpdate(n){r=n.onSubmit,t.onUpdate(n)}})}var Xr=["id"],Ce=typeof document>"u"?T.useEffect:T.useLayoutEffect;function Qr(e){var r=T.useId();return e??r}function Yr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,[r,t]=T.useState(e);return Ce(()=>{r||t(!0)},[r]),r}function et(e){var{id:r}=e,t=Hr(e,Xr),n=Qr(r),[i]=T.useState(()=>Gr(F(F({},t),{},{formId:n})));Ce(()=>{var c=i.observe();return document.addEventListener("input",i.onInput),document.addEventListener("focusout",i.onBlur),document.addEventListener("reset",i.onReset),()=>{c(),document.removeEventListener("input",i.onInput),document.removeEventListener("focusout",i.onBlur),document.removeEventListener("reset",i.onReset)}},[i]),Ce(()=>{i.onUpdate(F(F({},t),{},{formId:n}))});var a=qr({pendingIntents:!0}),o=Kr(i,a),u=Yr(e.defaultNoValidate),s=Wr(i,a,o,u);return T.useEffect(()=>{i.runSideEffect(o.pendingIntents)},[i,o.pendingIntents]),[s,s.getFieldset()]}function or(e){for(var r in e)e[r]===void 0&&delete e[r];return e}function rt(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(typeof r.ariaAttributes<"u"&&!r.ariaAttributes)return{};var n=r.ariaInvalid==="allErrors"?!e.valid:typeof e.errors<"u",i=r.ariaDescribedBy;return or({"aria-invalid":t&&n||void 0,"aria-describedby":n?"".concat(e.errorId," ").concat(i??"").trim():i})}function tt(e,r){return or(F({id:e.id,onSubmit:e.onSubmit,noValidate:e.noValidate},rt(e,r)))}function We(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function w(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?We(Object(t),!0).forEach(function(n){nt(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):We(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function nt(e,r,t){return r=ot(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function it(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function ot(e){var r=it(e,"string");return typeof r=="symbol"?r:String(r)}function _(e,r,t){function n(u,s){var c;Object.defineProperty(u,"_zod",{value:u._zod??{},enumerable:!1}),(c=u._zod).traits??(c.traits=new Set),u._zod.traits.add(e),r(u,s);for(const p in o.prototype)p in u||Object.defineProperty(u,p,{value:o.prototype[p].bind(u)});u._zod.constr=o,u._zod.def=s}const i=t?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(u){var s;const c=t?.Parent?new a:this;n(c,u),(s=c._zod).deferred??(s.deferred=[]);for(const p of c._zod.deferred)p();return c}return Object.defineProperty(o,"init",{value:n}),Object.defineProperty(o,Symbol.hasInstance,{value:u=>t?.Parent&&u instanceof t.Parent?!0:u?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}class ve extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const at={};function ke(e){return at}function ut(e,r){return typeof r=="bigint"?r.toString():r}function D(e,r,t){Object.defineProperty(e,r,{get(){{const n=t();return e[r]=n,n}},set(n){Object.defineProperty(e,r,{value:n})},configurable:!0})}const ar=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function st(e,r,t){const n=new e._zod.constr(r??e._zod.def);return(!r||t?.parent)&&(n._zod.parent=e),n}function be(e,r=0){for(let t=r;t<e.issues.length;t++)if(e.issues[t]?.continue!==!0)return!0;return!1}function ge(e){return typeof e=="string"?e:e?.message}function Pe(e,r,t){const n={...e,path:e.path??[]};if(!e.message){const i=ge(e.inst?._zod.def?.error?.(e))??ge(r?.error?.(e))??ge(t.customError?.(e))??ge(t.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,r?.reportInput||delete n.input,n}const ur=(e,r)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:r,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(r,ut,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},ct=_("$ZodError",ur),Se=_("$ZodError",ur,{Parent:Error}),lt=e=>(r,t,n,i)=>{const a=n?Object.assign(n,{async:!1}):{async:!1},o=r._zod.run({value:t,issues:[]},a);if(o instanceof Promise)throw new ve;if(o.issues.length){const u=new(i?.Err??e)(o.issues.map(s=>Pe(s,a,ke())));throw ar(u,i?.callee),u}return o.value},dt=lt(Se),ft=e=>async(r,t,n,i)=>{const a=n?Object.assign(n,{async:!0}):{async:!0};let o=r._zod.run({value:t,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){const u=new(i?.Err??e)(o.issues.map(s=>Pe(s,a,ke())));throw ar(u,i?.callee),u}return o.value},vt=ft(Se),pt=e=>(r,t,n)=>{const i=n?{...n,async:!1}:{async:!1},a=r._zod.run({value:t,issues:[]},i);if(a instanceof Promise)throw new ve;return a.issues.length?{success:!1,error:new(e??ct)(a.issues.map(o=>Pe(o,i,ke())))}:{success:!0,data:a.value}},$e=pt(Se),yt=e=>async(r,t,n)=>{const i=n?Object.assign(n,{async:!0}):{async:!0};let a=r._zod.run({value:t,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(o=>Pe(o,i,ke())))}:{success:!0,data:a.value}},Re=yt(Se),mt={major:4,minor:0,patch:0},Ee=_("$ZodType",(e,r)=>{var t;e??(e={}),e._zod.def=r,e._zod.bag=e._zod.bag||{},e._zod.version=mt;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const i of n)for(const a of i._zod.onattach)a(e);if(n.length===0)(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const i=(a,o,u)=>{let s=be(a),c;for(const p of o){if(p._zod.def.when){if(!p._zod.def.when(a))continue}else if(s)continue;const v=a.issues.length,m=p._zod.check(a);if(m instanceof Promise&&u?.async===!1)throw new ve;if(c||m instanceof Promise)c=(c??Promise.resolve()).then(async()=>{await m,a.issues.length!==v&&(s||(s=be(a,v)))});else{if(a.issues.length===v)continue;s||(s=be(a,v))}}return c?c.then(()=>a):a};e._zod.run=(a,o)=>{const u=e._zod.parse(a,o);if(u instanceof Promise){if(o.async===!1)throw new ve;return u.then(s=>i(s,n,o))}return i(u,n,o)}}e["~standard"]={validate:i=>{try{const a=$e(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch{return Re(e,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}}),gt=_("$ZodTransform",(e,r)=>{Ee.init(e,r),e._zod.parse=(t,n)=>{const i=r.transform(t.value,t);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(t.value=o,t));if(i instanceof Promise)throw new ve;return t.value=i,t}}),ht=_("$ZodPipe",(e,r)=>{Ee.init(e,r),D(e._zod,"values",()=>r.in._zod.values),D(e._zod,"optin",()=>r.in._zod.optin),D(e._zod,"optout",()=>r.out._zod.optout),e._zod.parse=(t,n)=>{const i=r.in._zod.run(t,n);return i instanceof Promise?i.then(a=>Ge(a,r,n)):Ge(i,r,n)}});function Ge(e,r,t){return be(e)?e:r.out._zod.run({value:e.value,issues:e.issues},t)}const bt=_("$ZodLazy",(e,r)=>{Ee.init(e,r),D(e._zod,"innerType",()=>r.getter()),D(e._zod,"pattern",()=>e._zod.innerType._zod.pattern),D(e._zod,"propValues",()=>e._zod.innerType._zod.propValues),D(e._zod,"optin",()=>e._zod.innerType._zod.optin),D(e._zod,"optout",()=>e._zod.innerType._zod.optout),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Me=_("ZodMiniType",(e,r)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");Ee.init(e,r),e.def=r,e.parse=(t,n)=>dt(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>$e(e,t,n),e.parseAsync=async(t,n)=>vt(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Re(e,t,n),e.check=(...t)=>e.clone({...r,checks:[...r.checks??[],...t.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(t,n)=>st(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e))}),wt=_("ZodMiniTransform",(e,r)=>{gt.init(e,r),Me.init(e,r)});function W(e){return new wt({type:"transform",transform:e})}const Ot=_("ZodMiniPipe",(e,r)=>{ht.init(e,r),Me.init(e,r)});function G(e,r){return new Ot({type:"pipe",in:e,out:r})}const kt=_("ZodMiniLazy",(e,r)=>{bt.init(e,r),Me.init(e,r)});function Pt(e){return new kt({type:"lazy",getter:e})}function se(e){if(typeof e!="string")return e;if(e!=="")return e}function St(e){if(!(typeof File<"u"&&e instanceof File&&e.name===""&&e.size===0))return e}function Et(e){return typeof e!="string"||e.trim()===""?e:Number(e)}function It(e){return typeof e!="string"?e:e==="on"?!0:e}function At(e){if(typeof e!="string")return e;var r=new Date(e);return isNaN(r.getTime())?e:r}function zt(e){if(typeof e!="string"||e.trim()==="")return e;try{return BigInt(e)}catch{return e}}function J(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:n=>n;return n=>t(r(e(n)))}function jt(e,r){var t=e._zod.def;if(t.type==="string"||t.type==="enum")return r.string;if(t.type==="literal"){if(!("values"in t))return r.string;var n=[...t.values][0];return typeof n=="number"?r.number:typeof n=="boolean"?r.boolean:typeof n=="bigint"?r.bigint:r.string}else{if(t.type==="file")return r.file;if(t.type==="number")return r.number;if(t.type==="boolean")return r.boolean;if(t.type==="date")return r.date;if(t.type==="bigint")return r.bigint}return null}function I(e,r){var t,n=r.cache.get(e);if(n)return n;var i=e,a=e._zod,o=a.def,u=a.constr,s=r.coerce(e);if(s)i=G(W(s),e);else if(o.type==="array")i=G(W(v=>Array.isArray(v)?v:typeof v>"u"||typeof r.stripEmptyValue(v)>"u"?[]:[v]),new u(w(w({},o),{},{element:I(o.element,r)})));else if(o.type==="object")i=G(W(v=>typeof v>"u"?{}:v),new u(w(w({},o),{},{shape:Object.fromEntries(Object.entries(o.shape).map(v=>{var[m,g]=v;return[m,I(g,r)]}))})));else if(o.type==="optional"||o.type==="nonoptional")i=G(W(r.stripEmptyValue),new u(w(w({},o),{},{innerType:I(o.innerType,r)})));else if(o.type==="default"||o.type==="prefault"){var c=o.defaultValue;i=G(W(r.stripEmptyValue),new u(w(w({},o),{},{innerType:c!==""?I(o.innerType,r):o.innerType})))}else if(o.type==="catch")i=new u(w(w({},o),{},{innerType:I(o.innerType,r)}));else if(o.type==="intersection")i=new u(w(w({},o),{},{left:I(o.left,r),right:I(o.right,r)}));else if(o.type==="union"&&(t=[...a.traits][0])!==null&&t!==void 0&&t.includes("DiscriminatedUnion"))i=G(W(v=>typeof v>"u"?{}:v),new u(w(w({},o),{},{options:o.options.map(v=>{var m=v._zod.def,g=P=>(P._zod.propValues=v._zod.propValues,P._zod.disc=v._zod.disc,P);if(m.type!=="object")return g(I(v,r));var b=new v._zod.constr(w(w({},m),{},{shape:Object.fromEntries(Object.entries(m.shape).map(P=>{var[C,Z]=P;return[C,I(Z,r)]}))}));return g(b)})})));else if(o.type==="union")i=new u(w(w({},o),{},{options:o.options.map(v=>I(v,r))}));else if(o.type==="tuple")i=new u(w(w({},o),{},{items:o.items.map(v=>I(v,r))}));else if(o.type==="nullable")i=new u(w(w({},o),{},{innerType:I(o.innerType,r)}));else if(o.type==="pipe")i=new u(w(w({},o),{},{in:I(o.in,r),out:I(o.out,r)}));else if(o.type==="lazy"){var p=o.getter();i=Pt(()=>I(p,r))}return e!==i&&r.cache.set(e,i),i}function Tt(e,r){var t=(i,a)=>a||(o=>o),n={string:J(se,t()),file:J(St,t()),number:J(se,t(),t("number",Et)),boolean:J(se,t(),t("boolean",It)),date:J(se,t(),t("date",At)),bigint:J(se,t(),t("bigint",zt))};return I(e,{cache:new Map,stripEmptyValue:J(n.string,n.file),coerce:i=>{var a,o=(a=void 0)!==null&&a!==void 0?a:null;return o===null&&(o=jt(i,n)),o}})}function Vt(e,r){var t={};for(var n of e.issues){var i=Q(n.path.map(o=>{if(typeof o=="symbol")throw new Error("@conform-to/zod does not support symbol paths. Please use a string or number instead.");return o}));switch(n.message){case Xe.VALIDATION_UNDEFINED:return null;case Xe.VALIDATION_SKIPPED:t[i]=null;break;default:{var a=t[i];a!==null&&(a?t[i]=a.concat(n):t[i]=[n]);break}}}return Object.entries(t).reduce((o,u)=>{var[s,c]=u;return o[s]=c?r(c):null,o},{})}function _t(e,r){return _r(e,{resolve(t,n){var i=r.error,a=typeof r.schema=="function"?r.schema(n):r.schema,o=r.disableAutoCoercion?a:Tt(a),u=s=>{var c;return{value:s.success?s.data:void 0,error:s.success?void 0:Vt(s.error,(c=r.formatError)!==null&&c!==void 0?c:p=>p.map(v=>v.message))}};return r.async?Re(o,t,{error:i}).then(s=>u(s)):u($e(o,t,{error:i}))}})}var Xe={VALIDATION_SKIPPED:"__skipped__",VALIDATION_UNDEFINED:"__undefined__"};function Ct(e){function r(i,a){const o=e[a];if(!o)throw new Error(`Unknown client hint: ${typeof a=="string"?a:"Unknown"}`);const u=i.split(";").map(s=>s.trim()).find(s=>s.startsWith(o.cookieName+"="))?.split("=")[1];if(!u)return null;try{return decodeURIComponent(u)}catch(s){return console.warn(`Failed to decode cookie value for ${o.cookieName}:`,s),null}}function t(i){const a=typeof document<"u"?document.cookie:typeof i<"u"?i.headers.get("Cookie")??"":"";return Object.entries(e).reduce((o,[u,s])=>{const c=u;return"transform"in s?o[c]=s.transform(r(a,c)??s.fallback):o[c]=r(a,c)??s.fallback,o},{})}function n(){return`
|
|
1
|
+
import{j}from"./jsx-runtime-C5WNSv3b.js";import{l as fr,f as vr,g as pr}from"./chunk-EPOLDU6W-BCLmut3y.js";import{I as ze}from"./misc-W4055b-0.js";import{S as yr}from"./tooltip-Tlsyx2YO.js";import{r as T}from"./index-CqIc3cxq.js";import{b as Fe}from"./root-loader-BmUqzUDN.js";import{u as mr}from"./pe-CIZUOJMr.js";import{o as gr,j as hr}from"./schemas-Uj5SZtvt.js";function Ue(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function h(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Ue(Object(t),!0).forEach(function(n){br(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ue(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function br(e,r,t){return r=Or(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function wr(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function Or(e){var r=wr(e,"string");return typeof r=="symbol"?r:String(r)}function Oe(e,r){if(!e)throw new Error(r)}function $(){return(Date.now()*Math.random()).toString(36)}function ce(e){return JSON.parse(JSON.stringify(e))}function R(e){return!!e&&e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function Ne(e){return e.tagName==="INPUT"}function Le(e){return e.tagName==="SELECT"}function Qe(e){return e.tagName==="TEXTAREA"}function kr(e){return"type"in e&&e.type==="submit"}function ue(e){if(e instanceof Element){if(Ne(e))return e.type!=="submit"&&e.type!=="button"&&e.type!=="reset";if(Le(e)||Qe(e))return!0}return!1}function he(e,r){var t=globalThis[r];return typeof t=="function"&&e instanceof t}function Pr(e){var r,t,n=e.target,i=e.submitter;return(r=(t=i?.getAttribute("formaction"))!==null&&t!==void 0?t:n.getAttribute("action"))!==null&&r!==void 0?r:"".concat(location.pathname).concat(location.search)}function Sr(e){var r,t=e.target,n=e.submitter,i=(r=n?.getAttribute("formenctype"))!==null&&r!==void 0?r:t.enctype;return i==="multipart/form-data"?i:"application/x-www-form-urlencoded"}function Er(e){var r,t,n=e.target,i=e.submitter,a=(r=(t=i?.getAttribute("formmethod"))!==null&&t!==void 0?t:n.getAttribute("method"))===null||r===void 0?void 0:r.toUpperCase();switch(a){case"POST":case"PUT":case"PATCH":case"DELETE":return a}return"GET"}function Ir(e){return new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:e})}function Ar(e,r){Oe(!!e,"Failed to submit the form. The element provided is null or undefined."),typeof e.requestSubmit=="function"?e.requestSubmit(r):e.dispatchEvent(Ir(r))}function zr(e){var r=new DataTransfer;if(Array.isArray(e))for(var t of e)r.items.add(t);else r.items.add(e);return r.files}function K(e){if(!(typeof e>"u")){if(e===null)return[];if(typeof e=="string")return[e];if(Array.isArray(e)&&e.every(r=>typeof r=="string"))return Array.from(e);throw new Error("Expected string or string[] value for string based input")}}function jr(e){if(!(typeof e>"u")){if(e===null)return[];if(he(e,"File"))return e.name===""&&e.size===0?[]:[e];if(he(e,"FileList"))return Array.from(e);if(Array.isArray(e)&&e.every(r=>he(r,"File")))return e;throw new Error("Expected File, FileList or File[] for file input")}}function Ze(e,r){var t=!1;if(Ne(e))switch(e.type){case"file":{var n,i=jr(r.value),a=Array.from((n=e.files)!==null&&n!==void 0?n:[]);return i&&(i.length!==a.length||i.some((Ie,l)=>Ie!==a[l]))&&(e.files=zr(i),t=!0),t}case"checkbox":case"radio":{var o=K(r.value),u=K(r.defaultValue);if(o){var s=o.includes(e.value);(e.type==="checkbox"?s!==e.checked:s)&&(e.click(),t=!0),e.checked=s}return u&&(e.defaultChecked=u.includes(e.value)),t}}else if(Le(e)){var c=K(r.value),p=K(r.defaultValue),v=c&&c.length===0;for(var m of e.options){if(c){var g=c.indexOf(m.value),b=g>-1;m.selected!==b&&(m.selected=b,t=!0),b&&c.splice(g,1)}if(p){var P=p.indexOf(m.value),C=P>-1;m.defaultSelected!==C&&(m.defaultSelected=C),C&&p.splice(P,1)}}var Z=new Set([...c??[],...p??[]]);for(var B of Z)e.options.add(new Option(B,B,p?.includes(B),c?.includes(B))),t=!0;return v&&e.selectedIndex!==-1&&(e.selectedIndex=-1,t=!0),t}var te=K(r.value),ye=K(r.defaultValue);if(te){var ne,ie=(ne=te[0])!==null&&ne!==void 0?ne:"";if(e.value!==ie){var{set:H}=Object.getOwnPropertyDescriptor(e,"value")||{},me=Object.getPrototypeOf(e),{set:V}=Object.getOwnPropertyDescriptor(me,"value")||{};if(V&&H!==V)V.call(e,ie);else if(H)H.call(e,ie);else throw new Error("The given element does not have a value setter");t=!0}}if(ye){var oe;e.defaultValue=(oe=ye[0])!==null&&oe!==void 0?oe:""}return t}function Tr(e){var r,t;if(Ne(e))switch(e.type){case"checkbox":case"radio":return e.checked!==e.defaultChecked;case"file":return((r=(t=e.files)===null||t===void 0?void 0:t.length)!==null&&r!==void 0?r:0)>0;default:return e.value!==e.defaultValue}else{if(Le(e))return Array.from(e.options).some(n=>n.selected!==n.defaultSelected);if(Qe(e))return e.value!==e.defaultValue}return!1}function Vr(e,r){var t=new FormData(e,r);if(r){if(!kr(r))throw new TypeError("The submitter must be an input or button element with type submit.");if(r.name){var n=t.getAll(r.name);n.includes(r.value)||t.append(r.name,r.value)}}return t}function N(e){if(!e)return[];for(var r=/([^.[\]]+)|\[(\d*)\]/g,t=[],n=0,i;i=r.exec(e);){if(i.index!==n&&!(i.index===n+1&&e[n]==="."))throw new Error("Invalid path syntax at position ".concat(n,' in "').concat(e,'"'));var[,a,o]=i;if(a!==void 0){if(a==="__proto__"||a==="constructor")throw new Error('Invalid path segment "'.concat(a,'"'));t.push(a)}else if(o==="")t.push("");else{var u=Number(o);if(!Number.isInteger(u)||u<0)throw new Error("Invalid path segment: array index must be a non-negative integer, got ".concat(u));t.push(u)}n=r.lastIndex}if(n!==e.length)throw new Error("Invalid path syntax at position ".concat(n,' in "').concat(e,'"'));return t}function Q(e){return e.reduce((r,t)=>M(r,t),"")}function M(e,r){return typeof r>"u"?e??"":r===""?"".concat(e,"[]"):typeof r=="number"?"".concat(e,"[").concat(r,"]"):e?"".concat(e,".").concat(r):r}function re(e,r){return Ye(e,N(r))!==null}function Ye(e,r){var t=N(e);return t.length>=r.length&&r.every((n,i)=>n===t[i])?t.slice(r.length):null}function U(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};try{var i=typeof r=="string"?N(r):r;if(i.length===0)throw new Error("Cannot set value at the object root");if(i.some((b,P)=>b===""&&P<i.length-1))throw new Error(`Empty brackets '[]' only allowed at end of path ("`.concat(r,'")'));for(var a=n.clone?h({},e):e,o=a,u=0;u<i.length-1;u++){var s=i[u],c=i[u+1],p=o[s];Array.isArray(p)?p=n.clone?p.slice():p:R(p)?p=n.clone?h({},p):p:p=typeof c=="number"||c===""?[]:{},o[s]=p,o=p}var v=i[i.length-1],m=o[v],g=typeof t=="function"?t(m):t;if(v===""){if(!Array.isArray(o))throw new Error('Cannot push to non-array at "'.concat(r,'"'));o.push(g)}else o[v]=g;return a}catch(b){if(n!=null&&n.silent)return e;throw b}}function Y(e,r){var t=e,n=typeof r=="string"?N(r):r;for(var i of n){if(i==="")throw new Error('Cannot access empty segment "[]" in "'.concat(r,'"'));if(t==null||!Object.prototype.hasOwnProperty.call(t,i))return;t=t[i]}return t}var le="__intent__",je="__state__";function er(e){var r=e.get(le),t=e.get(je);Oe((typeof r=="string"||r===null)&&(typeof t=="string"||t===null),'The input name "'.concat(le,'" and "').concat(je,'" are reserved by Conform. Please use another name for your input.'));var n={payload:{},fields:new Set,intent:Fr(r)};t&&(n.state=JSON.parse(t));var i=function(s){if(a===le||a===je)return 1;n.fields.add(a),U(n.payload,a,c=>c?Array.isArray(c)?c.concat(s):[c,s]:s,{silent:!0})};for(var[a,o]of e.entries())i(o);return n}function _r(e,r){var t=er(e),n=t.intent;if(n)switch(n.type){case"update":{var i=M(n.payload.name,n.payload.index),a=n.payload.value;typeof n.payload.value<"u"&&(i?U(t.payload,i,()=>a):t.payload=a);break}case"reset":{var o=M(n.payload.name,n.payload.index);o?U(t.payload,o,()=>{}):t.payload={};break}case"insert":case"remove":case"reorder":{rr(t.payload,n);break}}var u=r.resolve(t.payload,n),s=c=>Cr(h(h({},t),{},{value:c.value,error:c.error}));return u instanceof Promise?u.then(s):s(u)}function Cr(e){return e.intent||e.error!==void 0?{status:e.intent?void 0:"error",payload:e.payload,error:typeof e.error<"u"?e.error:{},reply(r){return He(e,r)}}:{status:"success",payload:e.payload,value:e.value,reply(r){return He(e,r)}}}function He(e){var r,t,n,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if("resetForm"in a&&a.resetForm||((r=e.intent)===null||r===void 0?void 0:r.type)==="reset"&&((t=e.intent.payload.name)!==null&&t!==void 0?t:"")==="")return{initialValue:null};if("hideFields"in a&&a.hideFields)for(var o of a.hideFields){var u=Y(e.payload,o);typeof u<"u"&&U(e.payload,o,()=>{})}var s="formErrors"in a||"fieldErrors"in a?ee(h({"":(n=a.formErrors)!==null&&n!==void 0?n:null},a.fieldErrors)):null,c=e.error||s?h(h({},e.error),s):void 0,p=(i=ee(e.payload,typeof document<"u"))!==null&&i!==void 0?i:{};return{status:e.intent?void 0:c?"error":"success",intent:e.intent?e.intent:void 0,initialValue:p,error:c,state:e.state,fields:Array.from(e.fields)}}function Fr(e){if(!e)return null;var r=JSON.parse(e);if(typeof r.type!="string"||typeof r.payload>"u")throw new Error("Unknown form control intent");return r}function Nr(e){switch(e.type){case"insert":return JSON.stringify({type:e.type,payload:h(h({},e.payload),{},{defaultValue:de(e.payload.defaultValue)})});case"update":return JSON.stringify({type:e.type,payload:h(h({},e.payload),{},{value:de(e.payload.value)})});default:return JSON.stringify(e)}}function Ve(e,r){var t;switch(Oe(Array.isArray(e),"Failed to update list. The value is not an array."),r.type){case"insert":e.splice((t=r.payload.index)!==null&&t!==void 0?t:e.length,0,r.payload.defaultValue);break;case"remove":e.splice(r.payload.index,1);break;case"reorder":e.splice(r.payload.to,0,...e.splice(r.payload.from,1));break;default:throw new Error("Unknown list intent received")}}function rr(e,r){U(e,r.payload.name,t=>{var n=t??[];return Ve(n,r),n})}var _e=Symbol.for("root");function we(e,r,t){var n=Object.keys(e).sort((s,c)=>c.localeCompare(s)),i={},a=function(){var c=e[o];re(o,r)&&o!==r&&(U(i,o,p=>typeof p>"u"?c:(p[_e]=c,p)),delete e[o])};for(var o of n)a();var u=t(Y(i,r));Object.assign(e,De(u,{resolve(s){if(R(s)||Array.isArray(s)){var c;return(c=s[_e])!==null&&c!==void 0?c:null}return s},prefix:r}))}function xe(e,r,t){we(e,r.payload.name,n=>{var i=n??[];switch(r.type){case"insert":Ve(i,{type:r.type,payload:h(h({},r.payload),{},{defaultValue:t?.(r.payload.defaultValue)})});break;default:Ve(i,r);break}return i})}function de(e){return R(e)?Object.entries(e).reduce((r,t)=>{var[n,i]=t;return r[n]=de(i),r},{}):Array.isArray(e)?e.map(de):e instanceof Date?e.toISOString():typeof e=="boolean"?e?"on":void 0:typeof e=="number"||typeof e=="bigint"?e.toString():e??void 0}function ee(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(R(e)){var t=Object.keys(e).sort().reduce((n,i)=>{var a=ee(e[i],r);return typeof a<"u"&&(n[i]=a),n},{});return Object.keys(t).length===0?void 0:t}if(Array.isArray(e))return e.length===0?void 0:e.map(n=>ee(n,r));if(!(typeof e=="string"&&e===""||e===null||he(e,"File")&&(!r||e.size===0)))return e}function De(e){var r,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n={},i=(r=t.resolve)!==null&&r!==void 0?r:u=>u;function a(u,s){var c=ee(i(u));if(typeof c<"u"&&(n[s]=c),Array.isArray(u))for(var p=0;p<u.length;p++)a(u[p],"".concat(s,"[").concat(p,"]"));else if(R(u))for(var[v,m]of Object.entries(u))a(m,s?"".concat(s,".").concat(v):v)}if(e){var o;a(e,(o=t.prefix)!==null&&o!==void 0?o:"")}return n}function Je(e,r){var t,n,i,a,o,u=r?void 0:e.lastResult,s=e.defaultValue?de(e.defaultValue):{},c=(t=u?.initialValue)!==null&&t!==void 0?t:s,p={formId:e.formId,pendingIntents:r?[{type:"reset",payload:{}}]:[],isValueUpdated:!1,submissionStatus:u?.status,defaultValue:s,initialValue:c,value:c,constraint:(n=e.constraint)!==null&&n!==void 0?n:{},validated:(i=u==null||(a=u.state)===null||a===void 0?void 0:a.validated)!==null&&i!==void 0?i:{},key:r?h({"":$()},fe(s)):fe(s),error:(o=u?.error)!==null&&o!==void 0?o:{}};return tr(p,u?.intent,u?.fields),p}function fe(e,r){return Object.entries(De(e,{prefix:r})).reduce((t,n)=>{var[i,a]=n;if(Array.isArray(a))for(var o=0;o<a.length;o++)t[M(i,o)]=$();return t},{})}function Be(e,r){for(var t of Object.keys(e.error).concat(r??[]))e.validated[t]=!0}function tr(e,r,t,n){var i;if(!r){Be(e,t);return}switch(r.type){case"validate":{r.payload.name?e.validated[r.payload.name]=!0:Be(e,t);break}case"update":{var{validated:a,value:o}=r.payload,u=M(r.payload.name,r.payload.index);typeof o<"u"&&Ke(e,u??"",o),typeof a<"u"&&(u?we(e.validated,u,()=>{}):e.validated={},a?((R(o)||Array.isArray(o))&&Object.assign(e.validated,De(o,{resolve(){return!0},prefix:u})),e.validated[u??""]=!0):u&&delete e.validated[u]);break}case"reset":{var s=M(r.payload.name,r.payload.index),c=Y(e.defaultValue,s);Ke(e,s,c),s?(we(e.validated,s,()=>{}),delete e.validated[s]):e.validated={};break}case"insert":case"remove":case"reorder":{n&&(e.initialValue=ce(e.initialValue),e.key=ce(e.key),xe(e.key,r,v=>!Array.isArray(v)&&!R(v)?$():Object.assign(fe(v),{[_e]:$()})),rr(e.initialValue,r)),xe(e.validated,r),e.validated[r.payload.name]=!0;break}}var p=(i=t?.filter(v=>e.validated[v]))!==null&&i!==void 0?i:[];e.error=Object.entries(e.error).reduce((v,m)=>{var[g,b]=m;return(e.validated[g]||p.some(P=>re(g,P)))&&(v[g]=b),v},{})}function Ke(e,r,t){if(r===""){e.initialValue=t,e.value=t,e.key=h(h({},fe(t)),{},{"":$()});return}e.initialValue=ce(e.initialValue),e.value=ce(e.value),e.key=ce(e.key),U(e.initialValue,r,()=>t),U(e.value,r,()=>t),(R(t)||Array.isArray(t))&&(we(e.key,r,()=>{}),Object.assign(e.key,fe(t,r))),e.key[r]=$()}function pe(e){var r={};return new Proxy(r,{get(t,n,i){var a;if(typeof n=="string")return(a=r[n])!==null&&a!==void 0?a:r[n]=e(n,i)}})}function Te(e){var r=ee(e);return pe((t,n)=>{if(t==="")return r;var i=N(t),a=Q(i.slice(0,-1)),o=Q(i.slice(-1)),u=n[a];return Y(u,o)})}function Lr(e){return pe((r,t)=>{var n,i=e[r];if(!i){for(var a=N(r),o=a.length-1;o>=0;o--){var u=a[o];if(typeof u=="number"){a[o]="";break}}var s=Q(a);r!==s&&(i=t[s])}return(n=i)!==null&&n!==void 0?n:{}})}function Dr(e){return pe((r,t)=>{var n=e[r],i=N(r);if(i.length===0)return n;var a=t[Q(i.slice(0,-1))];return typeof a>"u"?n:"".concat(a,"/").concat(n??i.at(-1))})}function $r(e){return pe(r=>{var t=Object.keys(e);if(r==="")return t.length===0;for(var n of t)if(re(n,r)&&typeof e[n]<"u")return!1;return!0})}function Rr(e,r,t){return pe(n=>JSON.stringify(e[n])!==JSON.stringify(r[n],(i,a)=>n===""&&i===""&&a?Object.entries(a).reduce((o,u)=>{var[s,c]=u;return t(s)?Object.assign(o??{},{[s]:c}):o},void 0):a))}function q(e,r,t,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:(g,b)=>JSON.stringify(g)!==JSON.stringify(b);if(n&&e!==r){var a,o,u=(a=n.prefix)!==null&&a!==void 0?a:[],s=(o=n.name)!==null&&o!==void 0?o:[],c=u.length===0?s:Array.from(new Set([...Object.keys(e),...Object.keys(r)])),p=function(b){if(u.length===0||s.includes(b)||u.some(C=>re(b,C))){var P;if((P=t[b])!==null&&P!==void 0||(t[b]=i(e[b],r[b])),t[b])return{v:!0}}},v;for(var m of c)if(v=p(m),v)return v.v}return!1}function Mr(e){var r=[],t=e,n=new Set,i=Je(e),a=u(i);function o(){return document.forms.namedItem(t.formId)}function u(l){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l,d=arguments.length>2?arguments[2]:void 0,y=!d||f.defaultValue!==l.defaultValue?Te(l.defaultValue):d.defaultValue,S=l.initialValue===l.defaultValue?y:!d||f.initialValue!==l.initialValue?Te(l.initialValue):d.initialValue,O=l.value===l.initialValue?S:!d||f.value!==l.value?Te(l.value):d.value;return{submissionStatus:l.submissionStatus,pendingIntents:l.pendingIntents,defaultValue:y,initialValue:S,value:O,error:!d||f.error!==l.error?l.error:d.error,validated:l.validated,constraint:!d||f.constraint!==l.constraint?Lr(l.constraint):d.constraint,key:!d||f.key!==l.key?Dr(l.key):d.key,valid:!d||f.error!==l.error?$r(l.error):d.valid,dirty:!d||f.defaultValue!==l.defaultValue||f.value!==l.value?Rr(y,O,E=>{var k,A;return(k=(A=t.shouldDirtyConsider)===null||A===void 0?void 0:A.call(t,E))!==null&&k!==void 0?k:!0}):d.dirty}}function s(l){var f=i,d=a,y=u(l,f,d);i=l,a=y;var S={value:{},error:{},initialValue:{},key:{},valid:{},dirty:{}};for(var O of r){var E,k=(E=O.getSubject)===null||E===void 0?void 0:E.call(O);(!k||k.formId&&f.formId!==l.formId||k.status&&d.submissionStatus!==y.submissionStatus||k.pendingIntents&&f.pendingIntents!==l.pendingIntents||q(d.error,y.error,S.error,k.error)||q(d.initialValue,y.initialValue,S.initialValue,k.initialValue)||q(d.key,y.key,S.key,k.key,(A,ae)=>A!==ae)||q(d.valid,y.valid,S.valid,k.valid,c)||q(d.dirty,y.dirty,S.dirty,k.dirty,c)||q(d.value,y.value,S.value,k.value))&&O.callback()}}function c(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return l!==f}function p(){return JSON.stringify({validated:i.validated})}function v(l){var f=l.target,d=l.submitter;Oe(f===o(),"The submit event is dispatched by form#".concat(f.id," instead of form#").concat(t.formId));var y=Vr(f,d),S={formData:y,action:Pr(l),encType:Sr(l),method:Er(l)};if(typeof t?.onValidate>"u")return S;var O=t.onValidate({form:f,formData:y,submitter:d});if(O.status==="success"||O.error!==null){var E=O.reply();te(h(h({},E),{},{status:E.status!=="success"?E.status:void 0}))}return h(h({},S),{},{submission:O})}function m(l){var f=o(),d=l.target;return!f||!ue(d)||d.form!==f||!d.form.isConnected||d.name===""?null:d}function g(l,f){var{shouldValidate:d="onSubmit",shouldRevalidate:y=d}=t,S=i.validated[l.name];return S?y===f&&(f==="onInput"||i.isValueUpdated):d===f}function b(l){var f=new FormData(l),d=er(f);s(h(h({},i),{},{isValueUpdated:!0,value:d.payload}))}function P(l){var f=m(l);!f||!f.form||(l.defaultPrevented||!g(f,"onInput")?b(f.form):H({type:"validate",payload:{name:f.name}}))}function C(l){var f=m(l);!f||l.defaultPrevented||!g(f,"onBlur")||H({type:"validate",payload:{name:f.name}})}function Z(){n.clear(),s(Je(t,!0))}function B(l){var f=o();l.type!=="reset"||l.target!==f||l.defaultPrevented||Z()}function te(l){var f,d,y=o();if(!l.initialValue){Z();return}var S=Object.entries((f=l.error)!==null&&f!==void 0?f:{}).reduce((A,ae)=>{var[z,x]=ae,L=x===null?i.error[z]:x;return L&&(A[z]=L),A},{}),O=l.intent?i.pendingIntents.filter(A=>!n.has(A)).concat(l.intent):i.pendingIntents,E=h(h({},i),{},{pendingIntents:O,isValueUpdated:!1,submissionStatus:l.status,value:l.initialValue,validated:h(h({},i.validated),(d=l.state)===null||d===void 0?void 0:d.validated),error:S});if(tr(E,l.intent,l.fields,!0),s(E),y&&l.status==="error"){for(var k of y.elements)if(ue(k)&&i.error[k.name]){k.focus();break}}}function ye(l){var f=t.formId,d=t.lastResult;Object.assign(t,l),t.formId!==f?Z():l.lastResult&&l.lastResult!==d&&te(l.lastResult)}function ne(l,f){var d={callback:l,getSubject:f};return r.push(d),()=>{r=r.filter(y=>y!==d)}}function ie(){return a}function H(l){var f=o(),d=document.createElement("button"),y=me(l);d.name=y.name,d.value=y.value,d.hidden=!0,d.formNoValidate=!0,f?.appendChild(d),Ar(f,d),f?.removeChild(d)}function me(l){return{name:le,value:Nr(l),form:t.formId,formNoValidate:!0}}function V(l){var f=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return H({type:l,payload:y})};return Object.assign(f,{getButtonProps(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return me({type:l,payload:d})}})}function oe(){var l=new MutationObserver(f=>{var d=o();if(d)for(var y of f){var S=y.type==="childList"?[...y.addedNodes,...y.removedNodes]:[y.target];for(var O of S){var E=ue(O)?O:O instanceof HTMLElement?O.querySelector("input,select,textarea"):null;if(E?.form===d){b(d);return}}}});return l.observe(document,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["form","name"]}),()=>{l.disconnect()}}function Ie(l){var f=o();if(f)for(var d of l){switch(d.type){case"update":{var y=M(d.payload.name,d.payload.index),S=N(y);for(var O of f.elements)if(ue(O)){var E=Ye(O.name,S);if(E){var k=Y(d.payload.value,E),A=typeof k=="string"||Array.isArray(k)&&k.every(Ae=>typeof Ae=="string")?k:void 0;(typeof A<"u"||y===""&&E.length>1)&&(Ze(O,{value:A??null}),O.dataset.conform=$())}}break}case"reset":{var ae=M(d.payload.name,d.payload.index);for(var z of f.elements)if(ue(z)&&z.name&&re(z.name,ae)){var x=Y(i.defaultValue,z.name),L=typeof x=="string"||Array.isArray(x)&&x.every(Ae=>typeof Ae=="string")?x:void 0;if(typeof L>"u"&&!z.dataset.conform&&"defaultValue"in z&&!Tr(z))continue;Ze(z,{defaultValue:L,value:L??null}),z.dataset.conform=$()}break}}n.add(d)}}return{getFormId(){return i.formId},submit:v,onReset:B,onInput:P,onBlur:C,onUpdate:ye,validate:V("validate"),reset:V("reset"),update:V("update"),insert:V("insert"),remove:V("remove"),reorder:V("reorder"),runSideEffect:Ie,subscribe:ne,getState:ie,getSerializedState:p,observe:oe}}function qe(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function F(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?qe(Object(t),!0).forEach(function(n){Ur(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):qe(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function Ur(e,r,t){return r=Jr(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function Zr(e,r){if(e==null)return{};var t={},n=Object.keys(e),i,a;for(a=0;a<n.length;a++)i=n[a],!(r.indexOf(i)>=0)&&(t[i]=e[i]);return t}function Hr(e,r){if(e==null)return{};var t=Zr(e,r),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)n=a[i],!(r.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(t[n]=e[n])}return t}function xr(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function Jr(e){var r=xr(e,"string");return typeof r=="symbol"?r:String(r)}var Br=Symbol("wrapped");function Kr(e,r){var t=T.useCallback(n=>e.subscribe(n,()=>r?.current),[e,r]);return T.useSyncExternalStore(t,e.getState,e.getState)}function qr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=T.useRef(e);return r.current=e,r}function X(e,r,t,n){if(r==="status"||r==="formId"||r==="pendingIntents")e.current[r]=!0;else if(typeof t<"u"&&typeof n<"u"){var i,a;e.current[r]=F(F({},e.current[r]),{},{[t]:((i=(a=e.current[r])===null||a===void 0?void 0:a[t])!==null&&i!==void 0?i:[]).concat(n)})}}function nr(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"",i=n?"".concat(e.getFormId(),"-").concat(n):e.getFormId(),a=e.getState();return new Proxy({id:i,name:n,errorId:"".concat(i,"-error"),descriptionId:"".concat(i,"-description"),get defaultValue(){var o=this.initialValue;if(typeof o=="string")return o;if(Array.isArray(o))return o[0]},get defaultOptions(){var o=this.initialValue;if(typeof o=="string")return[o];if(Array.isArray(o)&&o.every(u=>typeof u=="string"))return o},get defaultChecked(){if(this.initialValue==="on")return!0},get initialValue(){return a.initialValue[n]},get value(){return a.value[n]},get errors(){return a.error[n]},get key(){return a.key[n]},get valid(){return a.valid[n]},get dirty(){return a.dirty[n]},get allErrors(){if(n==="")return a.error;var o={};for(var[u,s]of Object.entries(a.error))re(u,n)&&(o[u]=s);return o},get getFieldset(){return()=>new Proxy({},{get(o,u,s){return typeof u=="string"?ir(e,r,t,n,u):Reflect.get(o,u,s)}})}},{get(o,u,s){if(a===t)switch(u){case"id":case"errorId":case"descriptionId":X(r,"formId");break;case"key":case"initialValue":case"value":case"valid":case"dirty":X(r,u,"name",n);break;case"errors":case"allErrors":X(r,"error",u==="errors"?"name":"prefix",n);break}return Reflect.get(o,u,s)}})}function ir(e,r,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"",i=arguments.length>4?arguments[4]:void 0,a=typeof i>"u"?n:Q([...N(n),i]);return new Proxy({},{get(o,u,s){var c,p=nr(e,r,t,a),v=e.getState();switch(u){case"formId":return v===t&&X(r,"formId"),e.getFormId();case"required":case"minLength":case"maxLength":case"min":case"max":case"pattern":case"step":case"multiple":return(c=v.constraint[a])===null||c===void 0?void 0:c[u];case"getFieldList":return()=>{var m,g=(m=v.initialValue[a])!==null&&m!==void 0?m:[];if(v===t&&X(r,"initialValue","name",a),!Array.isArray(g))throw new Error("The initial value at the given name is not a list");return Array(g.length).fill(0).map((b,P)=>ir(e,r,t,a,P))}}return Reflect.get(p,u,s)}})}function Wr(e,r,t,n){return new Proxy({},{get(i,a,o){var u=nr(e,r,t),s=e.getState();switch(a){case"context":return{[Br]:e};case"status":return s===t&&X(r,"status"),s.submissionStatus;case"validate":case"update":case"reset":case"insert":case"remove":case"reorder":return e[a];case"onSubmit":return e.submit;case"noValidate":return n}return Reflect.get(u,a,o)}})}function Gr(e){var{onSubmit:r}=e,t=Mr(e);return F(F({},t),{},{submit(n){var i=n.nativeEvent,a=t.submit(i);if(!a.submission||a.submission.status==="success"||a.submission.error===null){if(!a.formData.has(le)){var o;(o=r)===null||o===void 0||o(n,a)}}else n.preventDefault()},onUpdate(n){r=n.onSubmit,t.onUpdate(n)}})}var Xr=["id"],Ce=typeof document>"u"?T.useEffect:T.useLayoutEffect;function Qr(e){var r=T.useId();return e??r}function Yr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,[r,t]=T.useState(e);return Ce(()=>{r||t(!0)},[r]),r}function et(e){var{id:r}=e,t=Hr(e,Xr),n=Qr(r),[i]=T.useState(()=>Gr(F(F({},t),{},{formId:n})));Ce(()=>{var c=i.observe();return document.addEventListener("input",i.onInput),document.addEventListener("focusout",i.onBlur),document.addEventListener("reset",i.onReset),()=>{c(),document.removeEventListener("input",i.onInput),document.removeEventListener("focusout",i.onBlur),document.removeEventListener("reset",i.onReset)}},[i]),Ce(()=>{i.onUpdate(F(F({},t),{},{formId:n}))});var a=qr({pendingIntents:!0}),o=Kr(i,a),u=Yr(e.defaultNoValidate),s=Wr(i,a,o,u);return T.useEffect(()=>{i.runSideEffect(o.pendingIntents)},[i,o.pendingIntents]),[s,s.getFieldset()]}function or(e){for(var r in e)e[r]===void 0&&delete e[r];return e}function rt(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(typeof r.ariaAttributes<"u"&&!r.ariaAttributes)return{};var n=r.ariaInvalid==="allErrors"?!e.valid:typeof e.errors<"u",i=r.ariaDescribedBy;return or({"aria-invalid":t&&n||void 0,"aria-describedby":n?"".concat(e.errorId," ").concat(i??"").trim():i})}function tt(e,r){return or(F({id:e.id,onSubmit:e.onSubmit,noValidate:e.noValidate},rt(e,r)))}function We(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,n)}return t}function w(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?We(Object(t),!0).forEach(function(n){nt(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):We(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function nt(e,r,t){return r=ot(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function it(e,r){if(typeof e!="object"||e===null)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function ot(e){var r=it(e,"string");return typeof r=="symbol"?r:String(r)}function _(e,r,t){function n(u,s){var c;Object.defineProperty(u,"_zod",{value:u._zod??{},enumerable:!1}),(c=u._zod).traits??(c.traits=new Set),u._zod.traits.add(e),r(u,s);for(const p in o.prototype)p in u||Object.defineProperty(u,p,{value:o.prototype[p].bind(u)});u._zod.constr=o,u._zod.def=s}const i=t?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(u){var s;const c=t?.Parent?new a:this;n(c,u),(s=c._zod).deferred??(s.deferred=[]);for(const p of c._zod.deferred)p();return c}return Object.defineProperty(o,"init",{value:n}),Object.defineProperty(o,Symbol.hasInstance,{value:u=>t?.Parent&&u instanceof t.Parent?!0:u?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}class ve extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const at={};function ke(e){return at}function ut(e,r){return typeof r=="bigint"?r.toString():r}function D(e,r,t){Object.defineProperty(e,r,{get(){{const n=t();return e[r]=n,n}},set(n){Object.defineProperty(e,r,{value:n})},configurable:!0})}const ar=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function st(e,r,t){const n=new e._zod.constr(r??e._zod.def);return(!r||t?.parent)&&(n._zod.parent=e),n}function be(e,r=0){for(let t=r;t<e.issues.length;t++)if(e.issues[t]?.continue!==!0)return!0;return!1}function ge(e){return typeof e=="string"?e:e?.message}function Pe(e,r,t){const n={...e,path:e.path??[]};if(!e.message){const i=ge(e.inst?._zod.def?.error?.(e))??ge(r?.error?.(e))??ge(t.customError?.(e))??ge(t.localeError?.(e))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,r?.reportInput||delete n.input,n}const ur=(e,r)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:r,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(r,ut,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},ct=_("$ZodError",ur),Se=_("$ZodError",ur,{Parent:Error}),lt=e=>(r,t,n,i)=>{const a=n?Object.assign(n,{async:!1}):{async:!1},o=r._zod.run({value:t,issues:[]},a);if(o instanceof Promise)throw new ve;if(o.issues.length){const u=new(i?.Err??e)(o.issues.map(s=>Pe(s,a,ke())));throw ar(u,i?.callee),u}return o.value},dt=lt(Se),ft=e=>async(r,t,n,i)=>{const a=n?Object.assign(n,{async:!0}):{async:!0};let o=r._zod.run({value:t,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){const u=new(i?.Err??e)(o.issues.map(s=>Pe(s,a,ke())));throw ar(u,i?.callee),u}return o.value},vt=ft(Se),pt=e=>(r,t,n)=>{const i=n?{...n,async:!1}:{async:!1},a=r._zod.run({value:t,issues:[]},i);if(a instanceof Promise)throw new ve;return a.issues.length?{success:!1,error:new(e??ct)(a.issues.map(o=>Pe(o,i,ke())))}:{success:!0,data:a.value}},$e=pt(Se),yt=e=>async(r,t,n)=>{const i=n?Object.assign(n,{async:!0}):{async:!0};let a=r._zod.run({value:t,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(o=>Pe(o,i,ke())))}:{success:!0,data:a.value}},Re=yt(Se),mt={major:4,minor:0,patch:0},Ee=_("$ZodType",(e,r)=>{var t;e??(e={}),e._zod.def=r,e._zod.bag=e._zod.bag||{},e._zod.version=mt;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const i of n)for(const a of i._zod.onattach)a(e);if(n.length===0)(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const i=(a,o,u)=>{let s=be(a),c;for(const p of o){if(p._zod.def.when){if(!p._zod.def.when(a))continue}else if(s)continue;const v=a.issues.length,m=p._zod.check(a);if(m instanceof Promise&&u?.async===!1)throw new ve;if(c||m instanceof Promise)c=(c??Promise.resolve()).then(async()=>{await m,a.issues.length!==v&&(s||(s=be(a,v)))});else{if(a.issues.length===v)continue;s||(s=be(a,v))}}return c?c.then(()=>a):a};e._zod.run=(a,o)=>{const u=e._zod.parse(a,o);if(u instanceof Promise){if(o.async===!1)throw new ve;return u.then(s=>i(s,n,o))}return i(u,n,o)}}e["~standard"]={validate:i=>{try{const a=$e(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch{return Re(e,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}}),gt=_("$ZodTransform",(e,r)=>{Ee.init(e,r),e._zod.parse=(t,n)=>{const i=r.transform(t.value,t);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(t.value=o,t));if(i instanceof Promise)throw new ve;return t.value=i,t}}),ht=_("$ZodPipe",(e,r)=>{Ee.init(e,r),D(e._zod,"values",()=>r.in._zod.values),D(e._zod,"optin",()=>r.in._zod.optin),D(e._zod,"optout",()=>r.out._zod.optout),e._zod.parse=(t,n)=>{const i=r.in._zod.run(t,n);return i instanceof Promise?i.then(a=>Ge(a,r,n)):Ge(i,r,n)}});function Ge(e,r,t){return be(e)?e:r.out._zod.run({value:e.value,issues:e.issues},t)}const bt=_("$ZodLazy",(e,r)=>{Ee.init(e,r),D(e._zod,"innerType",()=>r.getter()),D(e._zod,"pattern",()=>e._zod.innerType._zod.pattern),D(e._zod,"propValues",()=>e._zod.innerType._zod.propValues),D(e._zod,"optin",()=>e._zod.innerType._zod.optin),D(e._zod,"optout",()=>e._zod.innerType._zod.optout),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Me=_("ZodMiniType",(e,r)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");Ee.init(e,r),e.def=r,e.parse=(t,n)=>dt(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>$e(e,t,n),e.parseAsync=async(t,n)=>vt(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Re(e,t,n),e.check=(...t)=>e.clone({...r,checks:[...r.checks??[],...t.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),e.clone=(t,n)=>st(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e))}),wt=_("ZodMiniTransform",(e,r)=>{gt.init(e,r),Me.init(e,r)});function W(e){return new wt({type:"transform",transform:e})}const Ot=_("ZodMiniPipe",(e,r)=>{ht.init(e,r),Me.init(e,r)});function G(e,r){return new Ot({type:"pipe",in:e,out:r})}const kt=_("ZodMiniLazy",(e,r)=>{bt.init(e,r),Me.init(e,r)});function Pt(e){return new kt({type:"lazy",getter:e})}function se(e){if(typeof e!="string")return e;if(e!=="")return e}function St(e){if(!(typeof File<"u"&&e instanceof File&&e.name===""&&e.size===0))return e}function Et(e){return typeof e!="string"||e.trim()===""?e:Number(e)}function It(e){return typeof e!="string"?e:e==="on"?!0:e}function At(e){if(typeof e!="string")return e;var r=new Date(e);return isNaN(r.getTime())?e:r}function zt(e){if(typeof e!="string"||e.trim()==="")return e;try{return BigInt(e)}catch{return e}}function J(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:n=>n;return n=>t(r(e(n)))}function jt(e,r){var t=e._zod.def;if(t.type==="string"||t.type==="enum")return r.string;if(t.type==="literal"){if(!("values"in t))return r.string;var n=[...t.values][0];return typeof n=="number"?r.number:typeof n=="boolean"?r.boolean:typeof n=="bigint"?r.bigint:r.string}else{if(t.type==="file")return r.file;if(t.type==="number")return r.number;if(t.type==="boolean")return r.boolean;if(t.type==="date")return r.date;if(t.type==="bigint")return r.bigint}return null}function I(e,r){var t,n=r.cache.get(e);if(n)return n;var i=e,a=e._zod,o=a.def,u=a.constr,s=r.coerce(e);if(s)i=G(W(s),e);else if(o.type==="array")i=G(W(v=>Array.isArray(v)?v:typeof v>"u"||typeof r.stripEmptyValue(v)>"u"?[]:[v]),new u(w(w({},o),{},{element:I(o.element,r)})));else if(o.type==="object")i=G(W(v=>typeof v>"u"?{}:v),new u(w(w({},o),{},{shape:Object.fromEntries(Object.entries(o.shape).map(v=>{var[m,g]=v;return[m,I(g,r)]}))})));else if(o.type==="optional"||o.type==="nonoptional")i=G(W(r.stripEmptyValue),new u(w(w({},o),{},{innerType:I(o.innerType,r)})));else if(o.type==="default"||o.type==="prefault"){var c=o.defaultValue;i=G(W(r.stripEmptyValue),new u(w(w({},o),{},{innerType:c!==""?I(o.innerType,r):o.innerType})))}else if(o.type==="catch")i=new u(w(w({},o),{},{innerType:I(o.innerType,r)}));else if(o.type==="intersection")i=new u(w(w({},o),{},{left:I(o.left,r),right:I(o.right,r)}));else if(o.type==="union"&&(t=[...a.traits][0])!==null&&t!==void 0&&t.includes("DiscriminatedUnion"))i=G(W(v=>typeof v>"u"?{}:v),new u(w(w({},o),{},{options:o.options.map(v=>{var m=v._zod.def,g=P=>(P._zod.propValues=v._zod.propValues,P._zod.disc=v._zod.disc,P);if(m.type!=="object")return g(I(v,r));var b=new v._zod.constr(w(w({},m),{},{shape:Object.fromEntries(Object.entries(m.shape).map(P=>{var[C,Z]=P;return[C,I(Z,r)]}))}));return g(b)})})));else if(o.type==="union")i=new u(w(w({},o),{},{options:o.options.map(v=>I(v,r))}));else if(o.type==="tuple")i=new u(w(w({},o),{},{items:o.items.map(v=>I(v,r))}));else if(o.type==="nullable")i=new u(w(w({},o),{},{innerType:I(o.innerType,r)}));else if(o.type==="pipe")i=new u(w(w({},o),{},{in:I(o.in,r),out:I(o.out,r)}));else if(o.type==="lazy"){var p=o.getter();i=Pt(()=>I(p,r))}return e!==i&&r.cache.set(e,i),i}function Tt(e,r){var t=(i,a)=>a||(o=>o),n={string:J(se,t()),file:J(St,t()),number:J(se,t(),t("number",Et)),boolean:J(se,t(),t("boolean",It)),date:J(se,t(),t("date",At)),bigint:J(se,t(),t("bigint",zt))};return I(e,{cache:new Map,stripEmptyValue:J(n.string,n.file),coerce:i=>{var a,o=(a=void 0)!==null&&a!==void 0?a:null;return o===null&&(o=jt(i,n)),o}})}function Vt(e,r){var t={};for(var n of e.issues){var i=Q(n.path.map(o=>{if(typeof o=="symbol")throw new Error("@conform-to/zod does not support symbol paths. Please use a string or number instead.");return o}));switch(n.message){case Xe.VALIDATION_UNDEFINED:return null;case Xe.VALIDATION_SKIPPED:t[i]=null;break;default:{var a=t[i];a!==null&&(a?t[i]=a.concat(n):t[i]=[n]);break}}}return Object.entries(t).reduce((o,u)=>{var[s,c]=u;return o[s]=c?r(c):null,o},{})}function _t(e,r){return _r(e,{resolve(t,n){var i=r.error,a=typeof r.schema=="function"?r.schema(n):r.schema,o=r.disableAutoCoercion?a:Tt(a),u=s=>{var c;return{value:s.success?s.data:void 0,error:s.success?void 0:Vt(s.error,(c=r.formatError)!==null&&c!==void 0?c:p=>p.map(v=>v.message))}};return r.async?Re(o,t,{error:i}).then(s=>u(s)):u($e(o,t,{error:i}))}})}var Xe={VALIDATION_SKIPPED:"__skipped__",VALIDATION_UNDEFINED:"__undefined__"};function Ct(e){function r(i,a){const o=e[a];if(!o)throw new Error(`Unknown client hint: ${typeof a=="string"?a:"Unknown"}`);const u=i.split(";").map(s=>s.trim()).find(s=>s.startsWith(o.cookieName+"="))?.split("=")[1];if(!u)return null;try{return decodeURIComponent(u)}catch(s){return console.warn(`Failed to decode cookie value for ${o.cookieName}:`,s),null}}function t(i){const a=typeof document<"u"?document.cookie:typeof i<"u"?i.headers.get("Cookie")??"":"";return Object.entries(e).reduce((o,[u,s])=>{const c=u;return"transform"in s?o[c]=s.transform(r(a,c)??s.fallback):o[c]=r(a,c)??s.fallback,o},{})}function n(){return`
|
|
2
2
|
// This block of code allows us to check if the client hints have changed and
|
|
3
3
|
// force a reload of the page with updated hints if they have so you don't get
|
|
4
4
|
// a flash of incorrect content.
|
|
@@ -65,4 +65,4 @@ function checkClientHints() {
|
|
|
65
65
|
|
|
66
66
|
checkClientHints();
|
|
67
67
|
`}return{getHints:t,getClientHintCheckScript:n}}const sr={cookieName:"CH-prefers-color-scheme",getValueCode:"window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'",fallback:"light",transform(e){return e==="dark"?"dark":"light"}};function Ft(e,r=sr.cookieName){const t=window.matchMedia("(prefers-color-scheme: dark)");function n(){const i=t.matches?"dark":"light";document.cookie=`${r}=${i}; Max-Age=31536000; SameSite=Lax; Path=/`,e(i)}return t.addEventListener("change",n),function(){t.removeEventListener("change",n)}}const cr={cookieName:"CH-reduced-motion",getValueCode:"window.matchMedia('(prefers-reduced-motion: reduce)').matches ? 'reduce' : 'no-preference'",fallback:"no-preference",transform(e){return e==="reduce"?"reduce":"no-preference"}};function Nt(e,r=cr.cookieName){const t=window.matchMedia("(prefers-reduced-motion: reduce)");function n(){const i=t.matches?"reduce":"no-preference";document.cookie=`${r}=${i}; Max-Age=31536000; SameSite=Lax; Path=/`,e(i)}return t.addEventListener("change",n),function(){t.removeEventListener("change",n)}}const Lt={cookieName:"CH-time-zone",getValueCode:"Intl.DateTimeFormat().resolvedOptions().timeZone",fallback:"UTC"},lr="EpicShop_CH-prefers-color-scheme",dr="EpicShop_CH-reduced-motion",Dt=Ct({theme:{...sr,cookieName:lr},timeZone:{...Lt,cookieName:"EpicShop_CH-time-zone"},reducedMotion:{...cr,cookieName:dr}});function $t(){return Fe().hints}function Qt(){const{revalidate:e}=fr();return T.useEffect(()=>Ft(()=>e(),lr),[e]),T.useEffect(()=>Nt(()=>e(),dr),[e]),j.jsx("script",{dangerouslySetInnerHTML:{__html:Dt.getClientHintCheckScript()}})}function Rt({id:e,errors:r}){const t=r?.filter(Boolean);return t?.length?j.jsx("ul",{id:e,className:"space-y-1",children:t.map(n=>j.jsx("li",{className:"text-foreground-destructive text-[10px]",children:n},n))}):null}const Mt="/theme",Ut=gr({theme:hr(["system","light","dark"])}),Zt=Ut,Ht=_t;function Yt({disableTooltip:e}={}){const r=Fe(),t=mr(),n=vr(),[i]=et({lastResult:n.data,onValidate({formData:c}){return Ht(c,{schema:Zt})}}),a=r.session.theme??"system",o=a==="system"?"light":a==="light"?"dark":"system",u={light:j.jsx(ze,{size:"md",name:"Sun",title:"Light mode"}),dark:j.jsx(ze,{size:"md",name:"Moon",title:"Dark mode"}),system:j.jsx(ze,{size:"md",name:"Laptop",title:"System mode"})},s=j.jsx("button",{type:"submit",name:"intent",value:"update-theme",className:"flex h-8 w-8 cursor-pointer items-center justify-center",children:u[a]});return j.jsxs(n.Form,{method:"POST",action:Mt,...tt(i),children:[j.jsxs("div",{className:"flex gap-2",children:[t,j.jsx("input",{type:"hidden",name:"theme",value:o}),e?s:j.jsx(yr,{content:`Change theme from ${a} mode`,children:s})]}),j.jsx(Rt,{errors:i.errors,id:i.errorId})]})}function en(){const e=$t(),r=Fe(),i=pr().find(a=>a.formData?.get("intent")==="update-theme")?.formData?.get("theme");return i==="system"?e.theme:i==="light"||i==="dark"?i:r.session.theme??e.theme}export{Qt as C,Yt as T,$t as a,en as u};
|
|
68
|
-
//# sourceMappingURL=index-
|
|
68
|
+
//# sourceMappingURL=index-BrVvTrwg.js.map
|