gadidae 0.0.1 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +410 -3
  2. package/package.json +11 -2
package/dist/index.js CHANGED
@@ -1,3 +1,410 @@
1
- //#region src/index.ts
2
- console.log("fih");
3
- //#endregion
1
+ var e=`*, :after, :before, ::backdrop, ::file-selector-button {
2
+ box-sizing: border-box;
3
+ border: 0 solid;
4
+ margin: 0;
5
+ padding: 0;
6
+ }
7
+
8
+ html, :host {
9
+ -webkit-text-size-adjust: 100%;
10
+ tab-size: 4;
11
+ font-feature-settings: normal;
12
+ font-variation-settings: normal;
13
+ -webkit-tap-highlight-color: transparent;
14
+ font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
15
+ line-height: 1.5;
16
+ }
17
+
18
+ hr {
19
+ height: 0;
20
+ color: inherit;
21
+ border-top-width: 1px;
22
+ }
23
+
24
+ abbr:where([title]) {
25
+ text-decoration: underline dotted;
26
+ }
27
+
28
+ h1, h2, h3, h4, h5, h6 {
29
+ font-size: inherit;
30
+ font-weight: inherit;
31
+ }
32
+
33
+ a {
34
+ color: inherit;
35
+ -webkit-text-decoration: inherit;
36
+ text-decoration: inherit;
37
+ }
38
+
39
+ b, strong {
40
+ font-weight: bolder;
41
+ }
42
+
43
+ code, kbd, samp, pre {
44
+ font-feature-settings: normal;
45
+ font-variation-settings: normal;
46
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
47
+ font-size: 1em;
48
+ }
49
+
50
+ small {
51
+ font-size: 80%;
52
+ }
53
+
54
+ sub, sup {
55
+ vertical-align: baseline;
56
+ font-size: 75%;
57
+ line-height: 0;
58
+ position: relative;
59
+ }
60
+
61
+ sub {
62
+ bottom: -.25em;
63
+ }
64
+
65
+ sup {
66
+ top: -.5em;
67
+ }
68
+
69
+ table {
70
+ text-indent: 0;
71
+ border-color: inherit;
72
+ border-collapse: collapse;
73
+ }
74
+
75
+ :-moz-focusring {
76
+ outline: auto;
77
+ }
78
+
79
+ progress {
80
+ vertical-align: baseline;
81
+ }
82
+
83
+ summary {
84
+ display: list-item;
85
+ }
86
+
87
+ ol, ul, menu {
88
+ list-style: none;
89
+ }
90
+
91
+ img, svg, video, canvas, audio, iframe, embed, object {
92
+ vertical-align: middle;
93
+ display: block;
94
+ }
95
+
96
+ img, video {
97
+ max-width: 100%;
98
+ height: auto;
99
+ }
100
+
101
+ button, input, select, optgroup, textarea, ::file-selector-button {
102
+ font: inherit;
103
+ font-feature-settings: inherit;
104
+ font-variation-settings: inherit;
105
+ letter-spacing: inherit;
106
+ color: inherit;
107
+ opacity: 1;
108
+ background-color: #0000;
109
+ border-radius: 0;
110
+ }
111
+
112
+ :where(select:is([multiple], [size])) optgroup {
113
+ font-weight: bolder;
114
+ }
115
+
116
+ :where(select:is([multiple], [size])) optgroup option {
117
+ padding-inline-start: 20px;
118
+ }
119
+
120
+ ::file-selector-button {
121
+ margin-inline-end: 4px;
122
+ }
123
+
124
+ ::placeholder {
125
+ opacity: 1;
126
+ }
127
+
128
+ @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
129
+ ::placeholder {
130
+ color: color-mix(in oklab, currentcolor 50%, transparent);
131
+ }
132
+ }
133
+
134
+ textarea {
135
+ resize: vertical;
136
+ }
137
+
138
+ ::-webkit-search-decoration {
139
+ -webkit-appearance: none;
140
+ }
141
+
142
+ ::-webkit-date-and-time-value {
143
+ min-height: 1lh;
144
+ text-align: inherit;
145
+ }
146
+
147
+ ::-webkit-datetime-edit {
148
+ display: inline-flex;
149
+ }
150
+
151
+ ::-webkit-datetime-edit-fields-wrapper {
152
+ padding: 0;
153
+ }
154
+
155
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
156
+ padding-block: 0;
157
+ }
158
+
159
+ ::-webkit-calendar-picker-indicator {
160
+ line-height: 1;
161
+ }
162
+
163
+ :-moz-ui-invalid {
164
+ box-shadow: none;
165
+ }
166
+
167
+ button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
168
+ appearance: button;
169
+ }
170
+
171
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
172
+ height: auto;
173
+ }
174
+
175
+ [hidden]:where(:not([hidden="until-found"])) {
176
+ display: none !important;
177
+ }
178
+
179
+ :root {
180
+ color-scheme: light dark;
181
+ background-color: var(--m3c-surface);
182
+ color: var(--m3c-on-surface);
183
+ accent-color: var(--m3c-primary);
184
+ --m3c-surface: light-dark(#daffec, #00120a);
185
+ --m3c-surface-container-lowest: light-dark(#fff, #000);
186
+ --m3c-surface-container-low: light-dark(#c1fee3, #00170f);
187
+ --m3c-surface-container: light-dark(#b4f6d9, #001e14);
188
+ --m3c-surface-container-high: light-dark(#aaf1d3, #00251a);
189
+ --m3c-surface-container-highest: light-dark(#a0eccc, #002c1f);
190
+ --m3c-on-surface: light-dark(#003627, #daffec);
191
+ --m3c-on-surface-variant: light-dark(#326552, #81b69f);
192
+ --m3c-outline: light-dark(#4e816c, #4c7f6b);
193
+ --m3c-outline-variant: light-dark(#83b8a1, #1c513f);
194
+ --m3c-inverse-surface: light-dark(#00120a, #e7fff2);
195
+ --m3c-inverse-on-surface: light-dark(#74a891, #2b5e4b);
196
+ --m3c-primary: light-dark(#006940, #b1ffcd);
197
+ --m3c-on-primary: light-dark(#caffdb, #00663e);
198
+ --m3c-primary-container: #07ffa2;
199
+ --m3c-on-primary-container: #005c37;
200
+ --m3c-inverse-primary: light-dark(#07ffa2, #006d42);
201
+ --m3c-secondary: light-dark(#00684e, #65fcc8);
202
+ --m3c-on-secondary: light-dark(#c6ffe5, #005e45);
203
+ --m3c-secondary-container: light-dark(#65fcc8, #006c50);
204
+ --m3c-on-secondary-container: light-dark(#005e45, #dfffef);
205
+ --m3c-tertiary: light-dark(#00647a, #70ddff);
206
+ --m3c-on-tertiary: light-dark(#e1f6ff, #004c5e);
207
+ --m3c-tertiary-container: #00d2fe;
208
+ --m3c-on-tertiary-container: #004352;
209
+ --m3c-error: light-dark(#b31b25, #ff716c);
210
+ --m3c-on-error: light-dark(#ffefee, #490006);
211
+ --m3c-error-container: light-dark(#fb5151, #9f0519);
212
+ --m3c-on-error-container: light-dark(#570008, #ffa8a3);
213
+ --m3c-shadow: #000;
214
+ --m3c-scrim: #000;
215
+ --m3c-on-on-primary: light-dark(#006940, #aeffcc);
216
+ --m3c-primary-container-subtle: light-dark(#00f299, #00341d);
217
+ --m3c-on-primary-container-subtle: light-dark(#005532, #00c37b);
218
+ --m3c-secondary-container-subtle: light-dark(#54edbb, #003324);
219
+ --m3c-on-secondary-container-subtle: light-dark(#00543e, #00c293);
220
+ --m3c-tertiary-container-subtle: light-dark(#87e1ff, #00313d);
221
+ --m3c-on-tertiary-container-subtle: light-dark(#005063, #00bae1);
222
+ --m3c-error-container-subtle: light-dark(#ffc7c3, #60000a);
223
+ --m3c-on-error-container-subtle: light-dark(#970016, #ff8983);
224
+ }
225
+ `,t=`body {
226
+ grid-template-rows: 1fr auto;
227
+ place-items: center;
228
+ height: 100dvh;
229
+ display: grid;
230
+ }
231
+
232
+ body > button {
233
+ border-radius: 6rem;
234
+ height: 6rem;
235
+ padding-inline: 1rem;
236
+ transition: background-color .2s, color .2s;
237
+ display: flex;
238
+
239
+ &:enabled {
240
+ background-color: var(--m3c-secondary-container);
241
+ color: var(--m3c-on-secondary-container);
242
+ cursor: pointer;
243
+ }
244
+ }
245
+
246
+ body > a {
247
+ border: solid 1px var(--m3c-outline-variant);
248
+ height: 2rem;
249
+ color: var(--m3c-on-surface-variant);
250
+ border-radius: 2rem;
251
+ align-items: center;
252
+ margin: .5rem;
253
+ padding-inline: 1rem;
254
+ font-size: .75rem;
255
+ display: flex;
256
+
257
+ & > span {
258
+ color: var(--m3c-primary);
259
+ align-items: center;
260
+ gap: .1em;
261
+ margin-left: .4em;
262
+ display: flex;
263
+ }
264
+
265
+ & > u {
266
+ margin-left: .4em;
267
+ }
268
+ }
269
+ `,n=`<svg
270
+ xmlns="http://www.w3.org/2000/svg"
271
+ viewBox="0 0 32 16"
272
+ style="color-scheme: light dark; overflow: visible"
273
+ >
274
+ <style>
275
+ .codehs-logo {
276
+ animation: codehs-logo 2.4s ease-in-out forwards;
277
+ transform-origin: 8px 8px;
278
+ }
279
+
280
+ .cod-logo {
281
+ animation: cod-logo 2.4s cubic-bezier(.2, .8, .2, 1) forwards;
282
+ opacity: 0;
283
+ transform: scale(.38);
284
+ transform-box: fill-box;
285
+ transform-origin: center;
286
+ }
287
+
288
+ .loader-text {
289
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
290
+ font-size: 7px;
291
+ font-weight: 700;
292
+ letter-spacing: 0;
293
+ animation: text 2.4s ease-in-out forwards;
294
+ }
295
+
296
+ .removed-text {
297
+ animation: removed-text 2.4s ease-in-out forwards;
298
+ }
299
+
300
+ @keyframes codehs-logo {
301
+ 0%, 30% { opacity: 1; transform: scale(1); }
302
+ 55%, 100% { opacity: 0; transform: scale(.7); }
303
+ }
304
+
305
+ @keyframes cod-logo {
306
+ 0%, 25% { opacity: 0; transform: scale(.3); }
307
+ 58%, 100% { opacity: 1; transform: scale(1); }
308
+ }
309
+
310
+ @keyframes text {
311
+ 0%, 32% { fill: light-dark(#015189, #8ed8ff); }
312
+ 58%, 100% { fill: currentColor; }
313
+ }
314
+
315
+ @keyframes removed-text {
316
+ 0%, 32% { opacity: 1 }
317
+ 58%, 100% { opacity: 0 }
318
+ }
319
+ </style>
320
+
321
+ <g class="codehs-logo">
322
+ <path fill="none" stroke="light-dark(#24a9e0, #8ed8ff)" stroke-linejoin="round" stroke-width=".64" d="M1.8 1.15h12.55v9.45H1.8z" />
323
+ <path fill="light-dark(#24a9e0, #8ed8ff)" d="M2.4 14.8c-.17-.09-.18-.12-.19-.66v-.48l.12-.68c.06-.38.13-.7.14-.74s.05-.08.08-.1l.07-.07h1.43l1.43-.01.01-.15c.03-.23.11-.53.2-.76l.1-.23h4.57l.08.2c.1.22.19.55.21.78l.02.16h1.4c1.37 0 1.4 0 1.48.05q.09.05.11.12a9 9 0 0 1 .25 1.85c0 .57 0 .62-.13.7-.07.05-.21.05-5.68.05-5.32 0-5.62 0-5.7-.03m10.87-.73v-.13H2.87l-.02.1v.12c.02.03.8.04 5.22.04h5.2Zm-.1-1.07-.06-.29H3.02l-.04.24-.05.3-.02.05h10.3Zm-3.15-.99c0-.1-.08-.4-.14-.56l-.18-.33-.1-.2H6.55l-.07.13a2 2 0 0 0-.35.89l-.02.12h1.95c1.95 0 1.95 0 1.95-.05" />
324
+ <path fill="none" stroke="light-dark(#24a9e0, #8ed8ff)" stroke-linejoin="round" stroke-width=".64" d="M2.93 2.34h10.28v7.1H2.93z" />
325
+ <rect x="3.964" y="3.276" width="6.006" height=".95" rx=".054" fill="light-dark(#015189, #8ed8ff)" />
326
+ <rect x="10.588" y="3.276" width="1.591" height=".95" rx=".054" fill="light-dark(#005ba7, #7ccfff)" />
327
+ <rect x="3.964" y="4.7" width="1.591" height=".95" rx=".054" fill="light-dark(#005ba7, #7ccfff)" />
328
+ <rect x="6.172" y="4.7" width="1.591" height=".95" rx=".054" fill="light-dark(#2273b9, #9edfff)" />
329
+ <rect x="8.38" y="4.7" width="3.798" height=".95" rx=".054" fill="light-dark(#1899d5, #aee7ff)" />
330
+ <rect x="3.964" y="6.125" width="3.798" height=".95" rx=".054" fill="light-dark(#24a9e0, #b7ecff)" />
331
+ <rect x="8.38" y="6.125" width="1.591" height=".95" rx=".054" fill="light-dark(#5facde, #c8f1ff)" />
332
+ <rect x="10.588" y="6.125" width="1.591" height=".95" rx=".054" fill="light-dark(#5facde, #c8f1ff)" />
333
+ <rect x="3.964" y="7.549" width="1.591" height=".95" rx=".054" fill="light-dark(#61b6e5, #d7f5ff)" />
334
+ <rect x="6.172" y="7.549" width="3.798" height=".95" rx=".054" fill="light-dark(#8ec6e8, #e4f9ff)" />
335
+ <rect x="10.588" y="7.549" width="1.591" height=".95" rx=".054" fill="light-dark(#8ec6e8, #e4f9ff)" />
336
+ </g>
337
+
338
+ <g class="cod-logo" shape-rendering="crispEdges">
339
+ <path fill="#c6a271" d="M11 1h1v1H11zM12 3h1v1H12zM10 4h1v1H10zM8 5h1v1H8zM10 5h1v1H10zM6 6h2v1H6zM9 6h1v1H9zM6 7h1v1H6zM8 7h1v1H8zM4 8h2v1H4zM9 8h1v1H9zM5 9h1v1H5zM8 9h1v1H8zM3 10h2v1H3zM6 10h1v1H6zM4 11h1v1H4zM6 11h1v1H6zM3 12h3v1H3z" />
340
+ <path fill="#b18953" d="M12 1h1v1H12zM13 3h1v1H13zM5 4h2v1H5zM11 4h2v1H11zM4 5h1v1H4zM9 5h1v1H9zM4 6h1v1H4zM8 6h1v1H8zM10 6h1v1H10zM5 7h1v1H5zM7 7h1v1H7zM9 7h1v1H9zM6 8h1v1H6zM7 10h1v1H7zM5 11h1v1H5zM3 13h2v1H3z" />
341
+ <path fill="#d6c5ad" d="M11 2h2v1H11zM10 3h2v1H10zM5 5h2v1H5zM5 6h1v1H5zM7 8h2v1H7zM6 9h2v1H6z" />
342
+ <path fill="#986d4e" d="M13 2h1v1H13zM14 3h1v1H14zM8 4h2v1H8zM13 4h2v1H13zM7 5h1v1H7zM11 5h2v1H11zM4 7h1v1H4zM10 7h1v1H10zM3 8h1v1H3zM10 8h1v1H10zM3 9h2v1H3zM9 9h1v1H9zM2 10h1v1H2zM5 10h1v1H5zM8 10h2v1H8zM2 11h1v1H2zM7 11h2v1H7zM2 12h1v1H2zM6 12h2v1H6zM5 13h1v1H5z" />
343
+ <path fill="#6b442b" d="M13 5h2v1H13zM11 6h1v1H11zM11 7h1v1H11zM11 8h1v1H11zM10 9h1v1H10zM10 10h1v1H10zM9 11h1v1H9zM8 12h1v1H8zM2 13h1v1H2zM6 13h2v1H6zM3 14h3v1H3z" />
344
+ <path fill="#000" d="M3 11h1v1H3z" />
345
+ </g>
346
+
347
+ <text class="loader-text" x="16" y="10.7"><tspan>Cod</tspan><tspan class="removed-text">eHS</tspan></text>
348
+ </svg>
349
+ `,r=`<svg viewBox="0 0 24 24" width="1em" height="1em" xmlns="http://www.w3.org/2000/svg">
350
+ <path stroke="currentColor" fill="none" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"
351
+ d="M12 9 12 2 8.5 5.5M12 2l3.5 3.5M15 12 22 12 18.5 8.5M22 12l-3.5 3.5M9 12 2 12 5.5 8.5M2 12l3.5 3.5M12 15 12 22 15.5 18.5M12 22l-3.5-3.5" />
352
+ </svg>
353
+ `,i=`body {
354
+ background: var(--m3c-surface-container-lowest);
355
+ height: 100dvh;
356
+ position: relative;
357
+ overflow: hidden;
358
+ }
359
+ `;const a=globalThis.process?.env?.NODE_ENV;var o=a&&!a.toLowerCase().startsWith(`prod`),s=Array.isArray,c=Array.prototype.indexOf,l=Array.prototype.includes,u=Array.from,d=Object.defineProperty,f=Object.getOwnPropertyDescriptor,p=Object.getOwnPropertyDescriptors,m=Object.prototype,h=Array.prototype,g=Object.getPrototypeOf,_=Object.isExtensible;const ee=()=>{};function te(e){for(var t=0;t<e.length;t++)e[t]()}function ne(){var e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}const v=1024,y=2048,re=4096,ie=8192,ae=32768,oe=1<<25,se=65536,ce=1<<21,le=1<<23,ue=Symbol(`$state`),de=Symbol(``),fe=Symbol(`proxy path`),pe=Symbol(`attributes`),me=Symbol(`class`),he=Symbol(`style`),ge=Symbol(`text`),_e=new class extends Error{name=`StaleReactionError`;message="The reaction that called `getAbortSignal()` was re-run or destroyed"};globalThis.document?.contentType;function ve(){if(o){let e=Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/async_derived_orphan`)}function ye(){if(o){let e=Error(`derived_references_self
360
+ A derived value cannot reference itself recursively
361
+ https://svelte.dev/e/derived_references_self`);throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/derived_references_self`)}function be(){if(o){let e=Error(`effect_update_depth_exceeded
362
+ Maximum update depth exceeded. This typically indicates that an effect reads and writes the same piece of state
363
+ https://svelte.dev/e/effect_update_depth_exceeded`);throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/effect_update_depth_exceeded`)}function xe(e){if(o){let t=Error(`rune_outside_svelte\nThe \`${e}\` rune is only available inside \`.svelte\` and \`.svelte.js/ts\` files\nhttps://svelte.dev/e/rune_outside_svelte`);throw t.name=`Svelte error`,t}else throw Error(`https://svelte.dev/e/rune_outside_svelte`)}function Se(){if(o){let e=Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/state_descriptors_fixed`)}function Ce(){if(o){let e=Error(`state_prototype_fixed
364
+ Cannot set prototype of \`$state\` object
365
+ https://svelte.dev/e/state_prototype_fixed`);throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/state_prototype_fixed`)}function we(){if(o){let e=Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/state_unsafe_mutation`)}function Te(){if(o){let e=Error("svelte_boundary_reset_onerror\nA `<svelte:boundary>` `reset` function cannot be called while an error is still being handled\nhttps://svelte.dev/e/svelte_boundary_reset_onerror");throw e.name=`Svelte error`,e}else throw Error(`https://svelte.dev/e/svelte_boundary_reset_onerror`)}const b=Symbol(`uninitialized`),Ee=Symbol(`filename`);var De=`font-weight: bold`,Oe=`font-weight: normal`;function ke(e){o?console.warn(`%c[svelte] await_reactivity_loss\n%cDetected reactivity loss when reading \`${e}\`. This happens when state is read in an async function after an earlier \`await\`\nhttps://svelte.dev/e/await_reactivity_loss`,De,Oe):console.warn(`https://svelte.dev/e/await_reactivity_loss`)}function Ae(e,t){o?console.warn(`%c[svelte] await_waterfall\n%cAn async derived, \`${e}\` (${t}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app\nhttps://svelte.dev/e/await_waterfall`,De,Oe):console.warn(`https://svelte.dev/e/await_waterfall`)}function je(){o?console.warn(`%c[svelte] derived_inert
366
+ %cReading a derived belonging to a now-destroyed effect may result in stale values
367
+ https://svelte.dev/e/derived_inert`,De,Oe):console.warn(`https://svelte.dev/e/derived_inert`)}function Me(e){o?console.warn(`%c[svelte] state_proxy_equality_mismatch\n%cReactive \`$state(...)\` proxies and the values they proxy have different identities. Because of this, comparisons with \`${e}\` will produce unexpected results\nhttps://svelte.dev/e/state_proxy_equality_mismatch`,De,Oe):console.warn(`https://svelte.dev/e/state_proxy_equality_mismatch`)}function Ne(){o?console.warn("%c[svelte] svelte_boundary_reset_noop\n%cA `<svelte:boundary>` `reset` function only resets the boundary the first time it is called\nhttps://svelte.dev/e/svelte_boundary_reset_noop",De,Oe):console.warn(`https://svelte.dev/e/svelte_boundary_reset_noop`)}function Pe(e){return e===this.v}function Fe(e,t){return e==e?e!==t||typeof e==`object`&&!!e||typeof e==`function`:t==t}function Ie(e){return!Fe(e,this.v)}function x(e,t){return e.label=t,Le(e.v,t),e}function Le(e,t){return e?.[fe]?.(t),e}function Re(e){let t=Error(),n=ze();return n.length===0?null:(n.unshift(`
368
+ `),d(t,`stack`,{value:n.join(`
369
+ `)}),d(t,`name`,{value:e}),t)}function ze(){let e=Error.stackTraceLimit;Error.stackTraceLimit=1/0;let t=Error().stack;if(Error.stackTraceLimit=e,!t)return[];let n=t.split(`
370
+ `),r=[];for(let e=0;e<n.length;e++){let t=n[e],i=t.replaceAll(`\\`,`/`);if(t.trim()!==`Error`){if(t.includes(`validate_each_keys`))return[];i.includes(`svelte/src/internal`)||i.includes(`node_modules/.vite`)||r.push(t)}}return r}let S=null;function C(e){S=e}let w=null;function Be(e){w=e}let Ve=null;function He(e){Ve=e}function Ue(e,t=!1,n){S={p:S,i:!1,c:null,e:null,s:e,x:null,r:W,l:null},o&&(S.function=n,Ve=n)}function We(e){var t=S,n=t.e;if(n!==null){t.e=null;for(var r of n)mn(r)}return e!==void 0&&(t.x=e),t.i=!0,S=t.p,o&&(Ve=S?.function??null),e??{}}function Ge(){return!0}let T=[];function Ke(){var e=T;T=[],te(e)}function qe(e){if(T.length===0&&!it){var t=T;queueMicrotask(()=>{t===T&&Ke()})}T.push(e)}const Je=new WeakMap;function Ye(e){var t=W;if(t===null)return V.f|=le,e;if(o&&e instanceof Error&&!Je.has(e)&&Je.set(e,Xe(e,t)),!(t.f&32768)&&!(t.f&4))throw o&&!t.parent&&e instanceof Error&&Ze(e),e;E(e,t)}function E(e,t){for(;t!==null;){if(t.f&128){if(!(t.f&32768))throw e;try{t.b.error(e);return}catch(t){e=t}}t=t.parent}throw o&&e instanceof Error&&Ze(e),e}function Xe(e,t){let n=f(e,`message`);if(!(n&&!n.configurable)){for(var r=$t?` `:` `,i=`\n${r}in ${t.fn?.name||`<unknown>`}`,a=t.ctx;a!==null;)i+=`\n${r}in ${a.function?.[Ee].split(`/`).pop()}`,a=a.p;return{message:e.message+`\n${i}\n`,stack:e.stack?.split(`
371
+ `).filter(e=>!e.includes(`svelte/src/internal`)).join(`
372
+ `)}}}function Ze(e){let t=Je.get(e);t&&(d(e,`message`,{value:t.message}),d(e,`stack`,{value:t.stack}))}function D(e,t){e.f=e.f&-7169|t}function Qe(e){e.f&512||e.deps===null?D(e,v):D(e,re)}function $e(e){if(e!==null)for(let t of e)!(t.f&2)||!(t.f&65536)||(t.f^=se,$e(t.deps))}function et(e,t,n){e.f&2048?t.add(e):e.f&4096&&n.add(e),$e(e.deps),D(e,v)}let tt=null,O=null,nt=null,k=null,rt=null,it=!1,at=!1,A=null,ot=null;var st=0,ct=new Set;let lt=1;var ut=class e{id=lt++;#e=!1;linked=!0;#t=null;#n=null;async_deriveds=new Map;current=new Map;previous=new Map;unblocked=new Set;#r=new Set;#i=new Set;#a=new Set;#o=0;#s=new Map;#c=null;#l=[];#u=[];#d=new Set;#f=new Set;#p=new Map;#m=new Set;is_fork=!1;#h=!1;#g(){if(this.is_fork)return!0;for(let n of this.#s.keys()){for(var e=n,t=!1;e.parent!==null;){if(this.#p.has(e)){t=!0;break}e=e.parent}if(!t)return!0}return!1}skip_effect(e){this.#p.has(e)||this.#p.set(e,{d:[],m:[]}),this.#m.delete(e)}unskip_effect(e,t=e=>this.schedule(e)){var n=this.#p.get(e);if(n){this.#p.delete(e);for(var r of n.d)D(r,y),t(r);for(r of n.m)D(r,re),t(r)}this.#m.add(e)}#_(){if(this.#e=!0,st++>1e3&&(this.#C(),dt()),o)for(let e of this.current.keys())ct.add(e);if(!this.#g()){for(let e of this.#d)this.#f.delete(e),D(e,y),this.schedule(e);for(let e of this.#f)D(e,re),this.schedule(e)}let t=this.#l;this.#l=[],this.apply();var n=A=[],r=[],i=ot=[];for(let e of t)try{this.#v(e,n,r)}catch(t){throw _t(e),t}if(O=null,i.length>0){var a=e.ensure();for(let e of i)a.schedule(e)}if(A=null,ot=null,this.#g()){this.#x(r),this.#x(n);for(let[e,t]of this.#p)gt(e,t);i.length>0&&O.#_();return}let s=this.#y();if(s){s.#b(this);return}this.#d.clear(),this.#f.clear();for(let e of this.#r)e(this);this.#r.clear(),nt=this,ft(r),ft(n),nt=null,this.#c?.resolve();var c=O;if(this.linked&&this.#o===0&&this.#C(),this.#l.length>0){c===null&&(c=this,this.#S());let e=c;e.#l.push(...this.#l.filter(t=>!e.#l.includes(t)))}c!==null&&c.#_()}#v(e,t,n){e.f^=v;for(var r=e.first;r!==null;){var i=r.f,a=(i&96)!=0;if(!(a&&i&1024||i&8192||this.#p.has(r))&&r.fn!==null){a?r.f^=v:i&4?t.push(r):Rn(r)&&(i&16&&this.#f.add(r),Q(r));var o=r.first;if(o!==null){r=o;continue}}for(;r!==null;){var s=r.next;if(s!==null){r=s;break}r=r.parent}}}#y(){for(var e=this.#t;e!==null;){if(!e.is_fork){for(let[t,[,n]]of this.current)if(e.current.has(t)&&!n)return e}e=e.#t}return null}#b(e){for(let[t,n]of e.current)!this.previous.has(t)&&e.previous.has(t)&&this.previous.set(t,e.previous.get(t)),this.current.set(t,n);for(let[t,n]of e.async_deriveds){let e=this.async_deriveds.get(t);e&&n.promise.then(e.resolve)}let t=e=>{var n=e.reactions;if(n!==null)for(let e of n){var r=e.f;if(r&2)t(e);else{var i=e;r&4194320&&!this.async_deriveds.has(i)&&(this.#f.delete(i),D(i,y),this.schedule(i))}}};for(let e of this.current.keys())t(e);this.oncommit(()=>e.discard()),e.#C(),O=this,this.#_()}#x(e){for(var t=0;t<e.length;t+=1)et(e[t],this.#d,this.#f)}capture(e,t,n=!1){e.v!==b&&!this.previous.has(e)&&this.previous.set(e,e.v),e.f&8388608||(this.current.set(e,[t,n]),k?.set(e,t)),this.is_fork||(e.v=t)}activate(){O=this}deactivate(){O=null,k=null}flush(){try{o&&ct.clear(),at=!0,O=this,this.#_()}finally{if(st=0,rt=null,A=null,ot=null,at=!1,O=null,k=null,P.clear(),o)for(let e of ct)e.updated=null}}discard(){for(let e of this.#i)e(this);this.#i.clear(),this.#a.clear(),this.#C()}register_created_effect(e){this.#u.push(e)}increment(e,t){if(this.#o+=1,e){let e=this.#s.get(t)??0;this.#s.set(t,e+1)}}decrement(e,t){if(--this.#o,e){let e=this.#s.get(t)??0;e===1?this.#s.delete(t):this.#s.set(t,e-1)}this.#h||(this.#h=!0,qe(()=>{this.#h=!1,this.linked&&this.flush()}))}transfer_effects(e,t){for(let t of e)this.#d.add(t);for(let e of t)this.#f.add(e);e.clear(),t.clear()}oncommit(e){this.#r.add(e)}ondiscard(e){this.#i.add(e)}on_fork_commit(e){this.#a.add(e)}run_fork_commit_callbacks(){for(let e of this.#a)e(this);this.#a.clear()}settled(){return(this.#c??=ne()).promise}static ensure(){if(O===null){let t=O=new e;t.#S(),!at&&qe(()=>{t.#e||t.flush()})}return O}apply(){k=null}schedule(e){if(rt=e,e.b?.is_pending&&e.f&16777228&&!(e.f&32768)){e.b.defer_effect(e);return}for(var t=e;t.parent!==null;){t=t.parent;var n=t.f;if(A!==null&&t===W&&(V===null||!(V.f&2)))return;if(n&96){if(!(n&1024))return;t.f^=v}}this.#l.push(t)}#S(){tt===null?tt=this:(tt.#n=this,this.#t=tt),tt=this}#C(){var e=this.#t,t=this.#n;e===null||(e.#n=t),t===null?tt=e:t.#t=e,this.linked=!1}};function dt(){if(o){var e=new Map;for(let n of O.current.keys())for(let[r,i]of n.updated??[]){var t=e.get(r);t||(t={error:i.error,count:0},e.set(r,t)),t.count+=i.count}for(let t of e.values())t.error&&console.error(t.error)}try{be()}catch(e){o&&d(e,`stack`,{value:``}),E(e,rt)}}let j=null;function ft(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if(!(r.f&24576)&&Rn(r)&&(j=new Set,Q(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&Dn(r),j?.size>0)){P.clear();for(let e of j){if(e.f&24576)continue;let t=[e],n=e.parent;for(;n!==null;)j.has(n)&&(j.delete(n),t.push(n)),n=n.parent;for(let e=t.length-1;e>=0;e--){let n=t[e];n.f&24576||Q(n)}}j.clear()}}j=null}}function pt(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(let i of e.reactions){let e=i.f;e&2?pt(i,t,n,r):e&4194320&&!(e&2048)&&mt(i,t,r)&&(D(i,y),ht(i))}}function mt(e,t,n){let r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(let r of e.deps){if(l.call(t,r))return!0;if(r.f&2&&mt(r,t,n))return n.set(r,!0),!0}return n.set(e,!1),!1}function ht(e){O.schedule(e)}function gt(e,t){if(!(e.f&32&&e.f&1024)){e.f&2048?t.d.push(e):e.f&4096&&t.m.push(e),D(e,v);for(var n=e.first;n!==null;)gt(n,t),n=n.next}}function _t(e){D(e,v);for(var t=e.first;t!==null;)_t(t),t=t.next}function vt(e){let t=0,n=Vt(0),r;return o&&x(n,`createSubscriber version`),()=>{fn()&&($(n),vn(()=>(t===0&&(r=Gn(()=>e(()=>Wt(n)))),t+=1,()=>{qe(()=>{--t,t===0&&(r?.(),r=void 0,Wt(n))})})))}}var yt=589824;function bt(e,t,n,r){new xt(e,t,n,r)}var xt=class{parent;is_pending=!1;transform_error;#e;#t;#n;#r;#i=null;#a=null;#o=null;#s=null;#c=0;#l=0;#u=!1;#d=new Set;#f=new Set;#p=null;#m=vt(()=>(this.#p=Vt(this.#c),o&&x(this.#p,`$effect.pending()`),()=>{this.#p=null}));constructor(e,t,n,r){this.#e=e,this.#t=t,this.#n=e=>{var t=W;t.b=this,t.f|=128,n(e)},this.parent=W.b,this.transform_error=r??this.parent?.transform_error??(e=>e),this.#r=bn(()=>{this.#h()},yt)}#h(){try{if(this.is_pending=this.has_pending_snippet(),this.#l=0,this.#c=0,this.#i=Sn(()=>{this.#n(this.#e)}),this.#l>0){var e=this.#s=document.createDocumentFragment();An(this.#i,e);let t=this.#t.pending;this.#a=Sn(()=>t(this.#e))}else this.#g(O)}catch(e){this.error(e)}}#g(e){this.is_pending=!1,e.transfer_effects(this.#d,this.#f)}defer_effect(e){et(e,this.#d,this.#f)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#t.pending}#_(e){var t=W,n=V,r=S;G(this.#r),U(this.#r),C(this.#r.ctx);try{return ut.ensure(),e()}catch(e){return Ye(e),null}finally{G(t),U(n),C(r)}}#v(e,t){if(!this.has_pending_snippet()){this.parent&&this.parent.#v(e,t);return}this.#l+=e,this.#l===0&&(this.#g(t),this.#a&&On(this.#a,()=>{this.#a=null}),this.#s&&=(this.#e.before(this.#s),null))}update_pending_count(e,t){this.#v(e,t),this.#c+=e,!(!this.#p||this.#u)&&(this.#u=!0,qe(()=>{this.#u=!1,this.#p&&Ht(this.#p,this.#c)}))}get_effect_pending(){return this.#m(),$(this.#p)}error(e){if(!this.#t.onerror&&!this.#t.failed)throw e;O?.is_fork?(this.#i&&O.skip_effect(this.#i),this.#a&&O.skip_effect(this.#a),this.#o&&O.skip_effect(this.#o),O.on_fork_commit(()=>{this.#y(e)})):this.#y(e)}#y(e){this.#i&&=(z(this.#i),null),this.#a&&=(z(this.#a),null),this.#o&&=(z(this.#o),null);var t=this.#t.onerror;let n=this.#t.failed;var r=!1,i=!1;let a=()=>{if(r){Ne();return}r=!0,i&&Te(),this.#o!==null&&On(this.#o,()=>{this.#o=null}),this.#_(()=>{this.#h()})},o=e=>{try{i=!0,t?.(e,a),i=!1}catch(e){E(e,this.#r&&this.#r.parent)}n&&(this.#o=this.#_(()=>{try{return Sn(()=>{var t=W;t.b=this,t.f|=128,n(this.#e,()=>e,()=>a)})}catch(e){return E(e,this.#r.parent),null}}))};qe(()=>{var t;try{t=this.transform_error(e)}catch(e){E(e,this.#r&&this.#r.parent);return}typeof t==`object`&&t&&typeof t.then==`function`?t.then(o,e=>E(e,this.#r&&this.#r.parent)):o(t)})}};function St(e,t,n,r){let i=Ge()?Ot:jt;var a=e.filter(e=>!e.settled);if(n.length===0&&a.length===0){r(t.map(i));return}var o=W,s=Ct(),c=a.length===1?a[0].promise:a.length>1?Promise.all(a.map(e=>e.promise)):null;function l(e){if(!(o.f&16384)){s();try{r(e)}catch(e){E(e,o)}wt()}}var u=Tt();if(n.length===0){c.then(()=>l(t.map(i))).finally(u);return}function d(){Promise.all(n.map(e=>At(e))).then(e=>l([...t.map(i),...e])).catch(e=>E(e,o)).finally(u)}c?c.then(()=>{s(),d(),wt()}):d()}function Ct(){var e=W,t=V,n=S,r=O;if(o)var i=w;return function(a=!0){G(e),U(t),C(n),a&&!(e.f&16384)&&(r?.activate(),r?.apply()),o&&(Et(null),Be(i))}}function wt(e=!0){G(null),U(null),C(null),e&&O?.deactivate(),o&&(Et(null),Be(null))}function Tt(){var e=W,t=e.b,n=O,r=t.is_rendered();return t.update_pending_count(1,n),n.increment(r,e),()=>{t.update_pending_count(-1,n),n.decrement(r,e)}}let M=null;function Et(e){M=e}const Dt=new Set;function Ot(e){return W!==null&&(W.f|=524288),{ctx:S,deps:null,effects:null,equals:Pe,f:2050,fn:e,reactions:null,rv:0,v:b,wv:0,parent:W,ac:null}}const kt=Symbol(`obsolete`);function At(e,t,n){let r=W;r===null&&ve();var i=void 0,a=Vt(b);o&&(a.label=t??e.toString());var s=!V,c=new Set;return _n(()=>{var t=W;o&&(M={effect:t,effect_deps:new Set,warned:!1});var l=ne();i=l.promise;try{Promise.resolve(e()).then(l.resolve,e=>{e!==_e&&l.reject(e)}).finally(wt)}catch(e){l.reject(e),wt()}if(o){if(M){if(t.deps!==null)for(let e=0;e<J;e+=1)M.effect_deps.add(t.deps[e]);if(q!==null)for(let e=0;e<q.length;e+=1)M.effect_deps.add(q[e])}M=null}var u=O;if(s){if(t.f&32768)var d=Tt();if(r.b.is_rendered())u.async_deriveds.get(t)?.reject(kt);else for(let e of c.values())e.reject(kt);c.add(l),u.async_deriveds.set(t,l)}let f=(e,r=void 0)=>{o&&(M=null),d?.(),c.delete(l),r!==kt&&(u.activate(),r?(a.f|=le,Ht(a,r)):(a.f&8388608&&(a.f^=le),Ht(a,e),o&&n!==void 0&&(Dt.add(a),setTimeout(()=>{Dt.has(a)&&!(t.f&16384)&&(Ae(a.label,n),Dt.delete(a))}))),u.deactivate())};l.promise.then(f,e=>f(null,e||`unknown`))}),pn(()=>{for(let e of c)e.reject(kt)}),o&&(a.f|=4194304),new Promise(e=>{function t(n){function r(){n===i?e(a):t(i)}n.then(r,r)}t(i)})}function jt(e){let t=Ot(e);return t.equals=Ie,t}function Mt(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)z(t[n])}}let Nt=[];function Pt(e){var t,n=W,r=e.parent;if(!B&&r!==null&&e.v!==b&&r.f&24576)return je(),e.v;if(G(r),o){let r=N;Rt(new Set);try{l.call(Nt,e)&&ye(),Nt.push(e),e.f&=-65537,Mt(e),t=Bn(e)}finally{G(n),Rt(r),Nt.pop()}}else try{e.f&=-65537,Mt(e),t=Bn(e)}finally{G(n)}return t}function Ft(e){var t=Pt(e);if(!e.equals(t)&&(e.wv=Ln(),(!O?.is_fork||e.deps===null)&&(O===null?e.v=t:(O.capture(e,t,!0),nt?.capture(e,t,!0)),e.deps===null))){D(e,v);return}B||(k===null?Qe(e):(fn()||O?.is_fork)&&k.set(e,t))}function It(e){if(e.effects!==null)for(let t of e.effects)(t.teardown||t.ac)&&(t.teardown?.(),t.ac?.abort(_e),t.fn!==null&&(t.teardown=ee),t.ac=null,Hn(t,0),wn(t))}function Lt(e){if(e.effects!==null)for(let t of e.effects)t.teardown&&t.fn!==null&&Q(t)}let N=new Set;const P=new Map;function Rt(e){N=e}let zt=!1;function Bt(){zt=!0}function Vt(e,t){return{f:0,v:e,reactions:null,equals:Pe,rv:0,wv:0}}function F(e,t){let n=Vt(e,t);return Nn(n),n}function I(e,t,n=!1){V!==null&&(!H||V.f&131072)&&Ge()&&V.f&4325394&&(K===null||!l.call(K,e))&&we();let r=n?qt(t):t;return o&&Le(r,e.label),Ht(e,r,ot)}function Ht(e,t,n=null){if(!e.equals(t)){P.set(e,B?t:e.v);var r=ut.ensure();if(r.capture(e,t),o){if(W!==null){e.updated??=new Map;let t=(e.updated.get(``)?.count??0)+1;if(e.updated.set(``,{error:null,count:t}),t>5){let t=Re(`updated at`);if(t!==null){let n=e.updated.get(t.stack);n||(n={error:t,count:0},e.updated.set(t.stack,n)),n.count++}}}W!==null&&(e.set_during_effect=!0)}if(e.f&2){let t=e;e.f&2048&&Pt(t),k===null&&Qe(t)}e.wv=Ln(),Gt(e,y,n),Ge()&&W!==null&&W.f&1024&&!(W.f&96)&&(Y===null?Pn([e]):Y.push(e)),!r.is_fork&&N.size>0&&!zt&&Ut()}return t}function Ut(){zt=!1;for(let e of N){e.f&1024&&D(e,re);let t;try{t=Rn(e)}catch{t=!0}t&&Q(e)}N.clear()}function Wt(e){I(e,e.v+1)}function Gt(e,t,n){var r=e.reactions;if(r!==null)for(var i=Ge(),a=r.length,o=0;o<a;o++){var s=r[o],c=s.f;if(!(!i&&s===W)){var l=(c&y)==0;if(l&&D(s,t),c&131072)N.add(s);else if(c&2){var u=s;k?.delete(u),c&65536||(c&512&&(W===null||!(W.f&2097152))&&(s.f|=se),Gt(u,re,n))}else if(l){var d=s;c&16&&j!==null&&j.add(d),n===null?ht(d):n.push(d)}}}}const Kt=/^[a-zA-Z_$][a-zA-Z_$0-9]*$/;function qt(e){if(typeof e!=`object`||!e||ue in e)return e;let t=g(e);if(t!==m&&t!==h)return e;var n=new Map,r=s(e),i=F(0),a=null,c=Z,l=e=>{if(Z===c)return e();var t=V,n=Z;U(null),In(c);var r=e();return U(t),In(n),r};r&&(n.set(`length`,F(e.length,a)),o&&(e=Xt(e)));var u=``;let d=!1;function p(e){if(!d){d=!0,u=e,x(i,`${u} version`);for(let[e,t]of n)x(t,L(u,e));d=!1}}return new Proxy(e,{defineProperty(e,t,r){(!(`value`in r)||r.configurable===!1||r.enumerable===!1||r.writable===!1)&&Se();var i=n.get(t);return i===void 0?l(()=>{var e=F(r.value,a);return n.set(t,e),o&&typeof t==`string`&&x(e,L(u,t)),e}):I(i,r.value,!0),!0},deleteProperty(e,t){var r=n.get(t);if(r===void 0){if(t in e){let e=l(()=>F(b,a));n.set(t,e),Wt(i),o&&x(e,L(u,t))}}else I(r,b),Wt(i);return!0},get(t,r,i){if(r===ue)return e;if(o&&r===fe)return p;var s=n.get(r),c=r in t;if(s===void 0&&(!c||f(t,r)?.writable)&&(s=l(()=>{var e=F(qt(c?t[r]:b),a);return o&&x(e,L(u,r)),e}),n.set(r,s)),s!==void 0){var d=$(s);return d===b?void 0:d}return Reflect.get(t,r,i)},getOwnPropertyDescriptor(e,t){var r=Reflect.getOwnPropertyDescriptor(e,t);if(r&&`value`in r){var i=n.get(t);i&&(r.value=$(i))}else if(r===void 0){var a=n.get(t),o=a?.v;if(a!==void 0&&o!==b)return{enumerable:!0,configurable:!0,value:o,writable:!0}}return r},has(e,t){if(t===ue)return!0;var r=n.get(t),i=r!==void 0&&r.v!==b||Reflect.has(e,t);return(r!==void 0||W!==null&&(!i||f(e,t)?.writable))&&(r===void 0&&(r=l(()=>{var n=F(i?qt(e[t]):b,a);return o&&x(n,L(u,t)),n}),n.set(t,r)),$(r)===b)?!1:i},set(e,t,s,c){var d=n.get(t),p=t in e;if(r&&t===`length`)for(var m=s;m<d.v;m+=1){var h=n.get(m+``);h===void 0?m in e&&(h=l(()=>F(b,a)),n.set(m+``,h),o&&x(h,L(u,m))):I(h,b)}if(d===void 0)(!p||f(e,t)?.writable)&&(d=l(()=>F(void 0,a)),o&&x(d,L(u,t)),I(d,qt(s)),n.set(t,d));else{p=d.v!==b;var g=l(()=>qt(s));I(d,g)}var _=Reflect.getOwnPropertyDescriptor(e,t);if(_?.set&&_.set.call(c,s),!p){if(r&&typeof t==`string`){var ee=n.get(`length`),te=Number(t);Number.isInteger(te)&&te>=ee.v&&I(ee,te+1)}Wt(i)}return!0},ownKeys(e){$(i);var t=Reflect.ownKeys(e).filter(e=>{var t=n.get(e);return t===void 0||t.v!==b});for(var[r,a]of n)a.v!==b&&!(r in e)&&t.push(r);return t},setPrototypeOf(){Ce()}})}function L(e,t){return typeof t==`symbol`?`${e}[Symbol(${t.description??``})]`:Kt.test(t)?`${e}.${t}`:/^\d+$/.test(t)?`${e}[${t}]`:`${e}['${t}']`}function Jt(e){try{if(typeof e==`object`&&e&&ue in e)return e[ue]}catch{}return e}const Yt=new Set([`copyWithin`,`fill`,`pop`,`push`,`reverse`,`shift`,`sort`,`splice`,`unshift`]);function Xt(e){return new Proxy(e,{get(e,t,n){var r=Reflect.get(e,t,n);return Yt.has(t)?function(...e){Bt();var t=r.apply(this,e);return Ut(),t}:r}})}function Zt(){let e=Array.prototype,t=Array.__svelte_cleanup;t&&t();let{indexOf:n,lastIndexOf:r,includes:i}=e;e.indexOf=function(e,t){let r=n.call(this,e,t);if(r===-1){for(let n=t??0;n<this.length;n+=1)if(Jt(this[n])===e){Me(`array.indexOf(...)`);break}}return r},e.lastIndexOf=function(e,t){let n=r.call(this,e,t??this.length-1);if(n===-1){for(let n=0;n<=(t??this.length-1);n+=1)if(Jt(this[n])===e){Me(`array.lastIndexOf(...)`);break}}return n},e.includes=function(e,t){let n=i.call(this,e,t);if(!n){for(let t=0;t<this.length;t+=1)if(Jt(this[t])===e){Me(`array.includes(...)`);break}}return n},Array.__svelte_cleanup=()=>{e.indexOf=n,e.lastIndexOf=r,e.includes=i}}var Qt,$t,en,tn;function nn(){if(Qt===void 0){Qt=window,$t=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;en=f(t,`firstChild`).get,tn=f(t,`nextSibling`).get,_(e)&&(e[me]=void 0,e[pe]=null,e[he]=void 0,e.__e=void 0),_(n)&&(n[ge]=void 0),o&&(e.__svelte_meta=null,Zt())}}function rn(e=``){return document.createTextNode(e)}function an(e){return en.call(e)}function on(e){return tn.call(e)}function sn(e,t=!1){var n=an(e);return n instanceof Comment&&n.data===``?on(n):n}function cn(e,t=1,n=!1){let r=e;for(;t--;)r=on(r);return r}function ln(e,t,n){let r=n?{is:n}:void 0;return document.createElementNS(t??`http://www.w3.org/1999/xhtml`,e,r)}function un(e){var t=V,n=W;U(null),G(null);try{return e()}finally{U(t),G(n)}}function dn(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function R(e,t){var n=W;if(o)for(;n!==null&&n.f&131072;)n=n.parent;n!==null&&n.f&8192&&(e|=ie);var r={ctx:S,deps:null,nodes:null,f:e|2560,first:null,fn:t,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};o&&(r.component_function=Ve),O?.register_created_effect(r);var i=r;if(e&4)A===null?ut.ensure().schedule(r):A.push(r);else if(t!==null){try{Q(r)}catch(e){throw z(r),e}i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&!(i.f&524288)&&(i=i.first,e&16&&e&65536&&i!==null&&(i.f|=65536))}if(i!==null&&(i.parent=n,n!==null&&dn(i,n),V!==null&&V.f&2&&!(e&64))){var a=V;(a.effects??=[]).push(i)}return r}function fn(){return V!==null&&!H}function pn(e){let t=R(8,null);return D(t,v),t.teardown=e,t}function mn(e){return R(1048580,e)}function hn(e){ut.ensure();let t=R(524352,e);return(e={})=>new Promise(n=>{e.outro?On(t,()=>{z(t),n(void 0)}):(z(t),n(void 0))})}function gn(e){return R(4,e)}function _n(e){return R(4718592,e)}function vn(e,t=0){return R(8|t,e)}function yn(e,t=[],n=[],r=[]){St(r,t,n,t=>{R(8,()=>e(...t.map($)))})}function bn(e,t=0){var n=R(16|t,e);return o&&(n.dev_stack=w),n}function xn(e,t=0){var n=R(16777216|t,e);return o&&(n.dev_stack=w),n}function Sn(e){return R(524320,e)}function Cn(e){var t=e.teardown;if(t!==null){let e=B,n=V;Mn(!0),U(null);try{t.call(null)}finally{Mn(e),U(n)}}}function wn(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){let e=n.ac;e!==null&&un(()=>{e.abort(_e)});var r=n.next;n.f&64?n.parent=null:z(n,t),n=r}}function Tn(e){for(var t=e.first;t!==null;){var n=t.next;t.f&32||z(t),t=n}}function z(e,t=!0){var n=!1;(t||e.f&262144)&&e.nodes!==null&&e.nodes.end!==null&&(En(e.nodes.start,e.nodes.end),n=!0),D(e,oe),wn(e,t&&!n),Hn(e,0);var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)e.stop();Cn(e),e.f^=oe,e.f|=16384;var i=e.parent;i!==null&&i.first!==null&&Dn(e),o&&(e.component_function=null),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=e.b=null}function En(e,t){for(;e!==null;){var n=e===t?null:on(e);e.remove(),e=n}}function Dn(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function On(e,t,n=!0){var r=[];kn(e,r,!0);var i=()=>{n&&z(e),t&&t()},a=r.length;if(a>0){var o=()=>--a||i();for(var s of r)s.out(o)}else i()}function kn(e,t,n){if(!(e.f&8192)){e.f^=ie;var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)(e.is_global||n)&&t.push(e);for(var i=e.first;i!==null;){var a=i.next;if(!(i.f&64)){var o=(i.f&65536)!=0||(i.f&32)!=0&&(e.f&16)!=0;kn(i,t,o?n:!1)}i=a}}}function An(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var i=n===r?null:on(n);t.append(n),n=i}}let jn=!1,B=!1;function Mn(e){B=e}let V=null,H=!1;function U(e){V=e}let W=null;function G(e){W=e}let K=null;function Nn(e){V!==null&&(K===null?K=[e]:K.push(e))}let q=null,J=0,Y=null;function Pn(e){Y=e}let Fn=1,X=0,Z=X;function In(e){Z=e}function Ln(){return++Fn}function Rn(e){var t=e.f;if(t&2048)return!0;if(t&2&&(e.f&=-65537),t&4096){for(var n=e.deps,r=n.length,i=0;i<r;i++){var a=n[i];if(Rn(a)&&Ft(a),a.wv>e.wv)return!0}t&512&&k===null&&D(e,v)}return!1}function zn(e,t,n=!0){var r=e.reactions;if(r!==null&&!(K!==null&&l.call(K,e)))for(var i=0;i<r.length;i++){var a=r[i];a.f&2?zn(a,t,!1):t===a&&(n?D(a,y):a.f&1024&&D(a,re),ht(a))}}function Bn(e){var t=q,n=J,r=Y,i=V,a=K,o=S,s=H,c=Z,l=e.f;q=null,J=0,Y=null,V=l&96?null:e,K=null,C(e.ctx),H=!1,Z=++X,e.ac!==null&&(un(()=>{e.ac.abort(_e)}),e.ac=null);try{e.f|=ce;var u=e.fn,d=u();e.f|=ae;var f=e.deps,p=O?.is_fork;if(q!==null){var m;if(p||Hn(e,J),f!==null&&J>0)for(f.length=J+q.length,m=0;m<q.length;m++)f[J+m]=q[m];else e.deps=f=q;if(fn()&&e.f&512)for(m=J;m<f.length;m++)(f[m].reactions??=[]).push(e)}else !p&&f!==null&&J<f.length&&(Hn(e,J),f.length=J);if(Ge()&&Y!==null&&!H&&f!==null&&!(e.f&6146))for(m=0;m<Y.length;m++)zn(Y[m],e);if(i!==null&&i!==e){if(X++,i.deps!==null)for(let e=0;e<n;e+=1)i.deps[e].rv=X;if(t!==null)for(let e of t)e.rv=X;Y!==null&&(r===null?r=Y:r.push(...Y))}return e.f&8388608&&(e.f^=le),d}catch(e){return Ye(e)}finally{e.f^=ce,q=t,J=n,Y=r,V=i,K=a,C(o),H=s,Z=c}}function Vn(e,t){let n=t.reactions;if(n!==null){var r=c.call(n,e);if(r!==-1){var i=n.length-1;i===0?n=t.reactions=null:(n[r]=n[i],n.pop())}}if(n===null&&t.f&2&&(q===null||!l.call(q,t))){var a=t;a.f&512&&(a.f^=512,a.f&=-65537),a.v!==b&&Qe(a),It(a),Hn(a,0)}}function Hn(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)Vn(e,n[r])}function Q(e){var t=e.f;if(!(t&16384)){D(e,v);var n=W,r=jn;if(W=e,jn=!0,o){var i=Ve;He(e.component_function);var a=w;Be(e.dev_stack??w)}try{t&16777232?Tn(e):wn(e),Cn(e);var s=Bn(e);e.teardown=typeof s==`function`?s:null,e.wv=Fn}finally{jn=r,W=n,o&&(He(i),Be(a))}}}function $(e){var t=(e.f&2)!=0;if(V!==null&&!H&&!(W!==null&&W.f&16384)&&(K===null||!l.call(K,e))){var n=V.deps;if(V.f&2097152)e.rv<X&&(e.rv=X,q===null&&n!==null&&n[J]===e?J++:q===null?q=[e]:q.push(e));else{V.deps??=[],l.call(V.deps,e)||V.deps.push(e);var r=e.reactions;r===null?e.reactions=[V]:l.call(r,V)||r.push(V)}}if(o){if(!H&&M&&!M.warned&&!(M.effect.f&2097152)&&!M.effect_deps.has(e)){M.warned=!0,ke(e.label);var i=Re(`traced at`);i&&console.warn(i)}Dt.delete(e)}if(B&&P.has(e))return P.get(e);if(t){var a=e;if(B){var s=a.v;return(!(a.f&1024)&&a.reactions!==null||Wn(a))&&(s=Pt(a)),P.set(a,s),s}var c=(a.f&512)==0&&!H&&V!==null&&(jn||(V.f&512)!=0),u=(a.f&ae)==0;Rn(a)&&(c&&(a.f|=512),Ft(a)),c&&!u&&(Lt(a),Un(a))}if(k?.has(e))return k.get(e);if(e.f&8388608)throw e.v;return e.v}function Un(e){if(e.f|=512,e.deps!==null)for(let t of e.deps)(t.reactions??=[]).push(e),t.f&2&&!(t.f&512)&&(Lt(t),Un(t))}function Wn(e){if(e.v===b)return!0;if(e.deps===null)return!1;for(let t of e.deps)if(P.has(t)||t.f&2&&Wn(t))return!0;return!1}function Gn(e){var t=H;try{return H=!0,e()}finally{H=t}}[...`allowfullscreen.async.autofocus.autoplay.checked.controls.default.disabled.formnovalidate.indeterminate.inert.ismap.loop.multiple.muted.nomodule.novalidate.open.playsinline.readonly.required.reversed.seamless.selected.webkitdirectory.defer.disablepictureinpicture.disableremoteplayback`.split(`.`)];const Kn=[`touchstart`,`touchmove`];function qn(e){return Kn.includes(e)}var Jn=new Map;function Yn(e,t){var n=Jn.get(e);n||(n=new Set,Jn.set(e,n)),n.add(t)}const Xn=Symbol(`events`),Zn=new Set,Qn=new Set;let $n=null;function er(e){var t=this,n=t.ownerDocument,r=e.type,i=e.composedPath?.()||[],a=i[0]||e.target;$n=e;var o=0,s=$n===e&&e[Xn];if(s){var c=i.indexOf(s);if(c!==-1&&(t===document||t===window)){e[Xn]=t;return}var l=i.indexOf(t);if(l===-1)return;c<=l&&(o=c)}if(a=i[o]||e.target,a!==t){d(e,`currentTarget`,{configurable:!0,get(){return a||n}});var u=V,f=W;U(null),G(null);try{for(var p,m=[];a!==null;){var h=a.assignedSlot||a.parentNode||a.host||null;try{var g=a[Xn]?.[r];g!=null&&(!a.disabled||e.target===a)&&g.call(a,e)}catch(e){p?m.push(e):p=e}if(e.cancelBubble||h===t||h===null)break;a=h}if(p){for(let e of m)queueMicrotask(()=>{throw e});throw p}}finally{e[Xn]=t,delete e.currentTarget,U(u),G(f)}}}const tr=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy(`svelte-trusted-html`,{createHTML:e=>e});function nr(e){return tr?.createHTML(e)??e}function rr(e){var t=ln(`template`);return t.innerHTML=nr(e.replaceAll(`<!>`,`<!---->`)),t.content}function ir(e,t){var n=W;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function ar(e,t){var n=(t&1)!=0,r=(t&2)!=0,i,a=!e.startsWith(`<!>`);return()=>{i===void 0&&(i=rr(a?e:`<!>`+e),n||(i=an(i)));var t=r||$t?document.importNode(i,!0):i.cloneNode(!0);if(n){var o=an(t),s=t.lastChild;ir(o,s)}else ir(t,t);return t}}function or(e,t){e!==null&&e.before(t)}function sr(e,t){return lr(e,t)}const cr=new Map;function lr(e,{target:t,anchor:n,props:r={},events:i,context:a,intro:o=!0,transformError:s}){nn();var c=void 0,l=hn(()=>{var o=n??t.appendChild(rn());bt(o,{pending:()=>{}},t=>{Ue({});var n=S;a&&(n.c=a),i&&(r.$$events=i),c=e(t,r)||{},We()},s);var l=new Set,d=e=>{for(var n=0;n<e.length;n++){var r=e[n];if(!l.has(r)){l.add(r);var i=qn(r);for(let e of[t,document]){var a=cr.get(e);a===void 0&&(a=new Map,cr.set(e,a));var o=a.get(r);o===void 0?(e.addEventListener(r,er,{passive:i}),a.set(r,1)):a.set(r,o+1)}}}};return d(u(Zn)),Qn.add(d),()=>{for(var e of l)for(let n of[t,document]){var r=cr.get(n),i=r.get(e);--i==0?(n.removeEventListener(e,er),r.delete(e),r.size===0&&cr.delete(n)):r.set(e,i)}Qn.delete(d),o!==n&&o.parentNode?.removeChild(o)}});return ur.set(c,l),c}let ur=new WeakMap;function dr(e,t){gn(()=>{var n=e.getRootNode(),r=n.host?n:n.head??n.ownerDocument.head;if(!r.querySelector(`#`+t.hash)){let e=ln(`style`);e.id=t.hash,e.textContent=t.code,r.appendChild(e),o&&Yn(t.hash,e)}})}function fr(e,t){var n=void 0,r;xn(()=>{n!==(n=t())&&(r&&=(z(r),null),n&&(r=Sn(()=>{gn(()=>n(e))})))})}const pr=[...`
373
+ \r\f\xA0\v`];function mr(e,t,n){var r=e==null?``:``+e;if(t&&(r=r?r+` `+t:t),n){for(var i of Object.keys(n))if(n[i])r=r?r+` `+i:i;else if(r.length)for(var a=i.length,o=0;(o=r.indexOf(i,o))>=0;){var s=o+a;(o===0||pr.includes(r[o-1]))&&(s===r.length||pr.includes(r[s]))?r=(o===0?``:r.substring(0,o))+r.substring(s+1):o=s}}return r===``?null:r}function hr(e,t,n,r,i,a){var o=e[me];if(o!==n||o===void 0){var s=mr(n,r,a);s==null?e.removeAttribute(`class`):t?e.className=s:e.setAttribute(`class`,s),e[me]=n}else if(a&&i!==a)for(var c in a){var l=!!a[c];(i==null||l!==!!i[c])&&e.classList.toggle(c,l)}return a}const gr=Symbol(`is custom element`),_r=Symbol(`is html`);function vr(e,t,n,r){var i=yr(e);i[t]!==(i[t]=n)&&(t===`loading`&&(e[de]=n),n==null?e.removeAttribute(t):typeof n!=`string`&&xr(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function yr(e){return e[pe]??={[gr]:e.nodeName.includes(`-`),[_r]:e.namespaceURI===`http://www.w3.org/1999/xhtml`}}var br=new Map;function xr(e){var t=e.getAttribute(`is`)||e.nodeName,n=br.get(t);if(n)return n;br.set(t,n=[]);for(var r,i=e,a=Element.prototype;a!==i;){for(var o in r=p(i),r)r[o].set&&o!==`innerHTML`&&o!==`textContent`&&o!==`innerText`&&n.push(o);i=g(i)}return n}if(o){function e(e){if(!(e in globalThis)){let t;Object.defineProperty(globalThis,e,{configurable:!0,get:()=>{if(t!==void 0)return t;xe(e)},set:e=>{t=e}})}}e(`$state`),e(`$effect`),e(`$derived`),e(`$inspect`),e(`$props`),e(`$bindable`)}typeof window<`u`&&((window.__svelte??={}).v??=new Set).add(`5`);var Sr=`data:image/webp;base64,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`;const Cr=e=>{let t=new Map;return{start(e,n={}){if(t.has(e))throw Error(`spawn id already running: ${e}`);return new Promise((r,i)=>{t.set(e,{output:``,resolve:r,reject:i,resolveOnOutput:n.resolveOnOutput??(()=>!1)})})},handleOutput(n,r){let i=r?.id,a=i?t.get(i):void 0;if(!a){e(n,r);return}let o=String(r?.data??``);a.output+=o,e(n,o),a.resolveOnOutput(o)&&(t.delete(i),a.resolve())},handleExit(e){let n=e?.id,r=n?t.get(n):void 0;if(!n||!r)return;t.delete(n);let i=e?.data;if((i?.code??0)===0&&!i?.signal){r.resolve();return}r.reject(Error(`${n} exited with code ${i?.code??`null`} signal ${i?.signal??`null`}: ${r.output}`))}}},wr=(e,t,n)=>{let r=new WebSocket(`wss://scalinghub.codehs.com/user/${e}/spawn/?watch=true&EIO=3&transport=websocket`),i=!1,a,o=new Promise(e=>{a=e}),s=(e,t)=>{!i||r.readyState!==WebSocket.OPEN||r.send(`42${JSON.stringify([e,t])}`)};return t.setInterval(()=>{s(`keepalive`,null)},2e4),r.addEventListener(`message`,e=>{if(typeof e.data==`string`){if(e.data.startsWith(`0`)){r.send(`40`);return}if(e.data===`40`){i=!0,a();return}if(e.data.startsWith(`42`)){let[t,r]=JSON.parse(e.data.slice(2));t===`stdout`?n.onStdout?.(r):t===`stderr`?n.onStderr?.(r):t===`exit`?n.onExit?.(r):t===`transferComplete`&&n.onTransferComplete?.(r);return}e.data===`2`&&r.send(`3`)}}),r.addEventListener(`close`,()=>{i=!1}),{ready:o,spawn(e){s(`spawn`,e)},transfer(e){s(`transfer`,e)}}},Tr=(e,t,n=()=>{})=>{let r=Cr(n),i=[],a=wr(e,t,{onStdout:e=>r.handleOutput(`stdout`,e),onStderr:e=>r.handleOutput(`stderr`,e),onExit:e=>r.handleExit(e),onTransferComplete:()=>i.shift()?.()});return{ready:a.ready,spawnCommand:(e,t,n={})=>{let i=n.untracked?void 0:r.start(e,n);return a.spawn({cmd:`bash`,args:n.args??[`-lc`,t],id:e,options:{type:n.type??`normal`,env:n.env}}),i},transfer(e){let t=new Promise(e=>{i.push(e)});return a.transfer(e),t}}};var Er=ar(`<div class="screen svelte-1ywbbn9"></div> <img alt="Loading Cod"/>`,1);const Dr={hash:`svelte-1ywbbn9`,code:`.screen.svelte-1ywbbn9 {position:absolute;inset:0;overflow:visible;canvas {max-width:none;max-height:none;object-fit:none;}}.cod-loader.svelte-1ywbbn9 {position:absolute;inset:0;margin:auto;width:min(50vw, 50vh, 24rem);height:auto;transition:opacity 100ms;&.hidden {visibility:hidden;opacity:0;}}`};function Or(e,t){Ue(t,!0),dr(e,Dr);let n=String.raw`import os
374
+ import subprocess
375
+ import time
376
+
377
+ print("STAGE probe started", flush=True)
378
+ print("DISPLAY", os.environ.get("DISPLAY"), flush=True)
379
+
380
+ def run(label, cmd):
381
+ try:
382
+ out = subprocess.run(cmd, text=True, capture_output=True, timeout=10)
383
+ print(label, "rc=", out.returncode, flush=True)
384
+ for line in out.stdout.splitlines():
385
+ if "dimensions:" in line:
386
+ print(label, line.strip(), flush=True)
387
+ if out.stdout:
388
+ print(label, "stdout", out.stdout[:1200], flush=True)
389
+ if out.stderr:
390
+ print(label, "stderr", out.stderr[:1200], flush=True)
391
+ except Exception as exc:
392
+ print(label, "failed", repr(exc), flush=True)
393
+
394
+ run("XDPYINFO_INITIAL", ["xdpyinfo"])
395
+
396
+ for cmd in (["xsetroot", "-solid", "#253040"], ["xeyes"], ["xclock"], ["xcalc"]):
397
+ try:
398
+ print("START", " ".join(cmd), flush=True)
399
+ subprocess.Popen(cmd)
400
+ except Exception as exc:
401
+ print("FAILED", " ".join(cmd), repr(exc), flush=True)
402
+
403
+ for i in range(30):
404
+ if i in (2, 8, 16):
405
+ run("XDPYINFO_POLL_%02d" % i, ["xdpyinfo"])
406
+ time.sleep(10)
407
+ `,r=F(!0),i=(e,t)=>new Promise((n,r)=>{if([...e.scripts].find(e=>e.src===t)){n();return}let i=e.createElement(`script`);i.src=t,i.onload=()=>n(),i.onerror=()=>r(Error(`failed to load ${t}`)),e.head.appendChild(i)}),a=e=>{let t=e.getBoundingClientRect();return{width:Math.max(1,Math.round(t.width)),height:Math.max(1,Math.round(t.height))}},o=e=>{let t=e.querySelector(`canvas`);t instanceof HTMLCanvasElement&&(t.style.width=`${t.width}px`,t.style.height=`${t.height}px`,t.style.maxWidth=`none`,t.style.maxHeight=`none`,t.style.objectFit=`fill`)},s=e=>{let t,n=()=>{let n=e.querySelector(`canvas`);if(!(n instanceof HTMLCanvasElement))return!1;t?.disconnect();let r=new MutationObserver(()=>o(e));return t=r,r.observe(n,{attributes:!0,attributeFilter:[`width`,`height`]}),o(e),!0},r=new MutationObserver(()=>{n()&&r.disconnect()});n()||r.observe(e,{childList:!0,subtree:!0})},c=(e,n,r)=>{let i=!1,a=()=>{let o=t.appWindow.RFB;if(!o)return;i=!1;let s=new o(e,n,{});s.scaleViewport=!1,s.resizeSession=!1,s.clipViewport=!0,s.focusOnClick=!0,s.addEventListener(`disconnect`,e=>{if(i){console.warn(`[rfb] disconnected`,e);return}t.appWindow.setTimeout(a,1e3)}),s.addEventListener(`credentialsrequired`,e=>{console.warn(`[rfb] credentials required`,e)}),s.addEventListener(`securityfailure`,e=>{console.warn(`[rfb] security failure`,e)}),s.addEventListener(`connect`,()=>{i=!0,r()})};a()},l=(e,t)=>{let n=Math.max(1,Math.round(t.width)),r=Math.max(1,Math.round(t.height)),i=[`set -eu`,`WIDTH=${n}`,`HEIGHT=${r}`,'echo "restarting graphics stack at ${WIDTH}x${HEIGHT}"',`pkill -9 Xvfb || true`,`pkill -9 x11vnc || true`,`pkill -9 python3.8 || true`,`pkill -9 python3 || true`,`for i in $(seq 1 30); do`,` if ! pgrep Xvfb >/dev/null 2>&1 && ! pgrep x11vnc >/dev/null 2>&1 && ! pgrep python3.8 >/dev/null 2>&1 && ! pgrep python3 >/dev/null 2>&1; then`,` break`,` fi`,` sleep 0.1`,`done`,`rm -f /tmp/.X99-lock /tmp/.X11-unix/X99`,"nohup /usr/bin/Xvfb :99 -screen 0 ${WIDTH}x${HEIGHT}x16 -ac +extension GLX +extension RANDR >/tmp/cod-xvfb.log 2>&1 &",`for i in $(seq 1 50); do`,` if xdpyinfo -display :99 >/tmp/cod-xdpyinfo.log 2>&1; then`,` break`,` fi`,` sleep 0.1`,`done`,`xdpyinfo -display :99 >/tmp/cod-xdpyinfo.log 2>&1`,`nohup x11vnc -noxrecord -xrandr -noncache -display :99 -forever -rfbport 5900 >/tmp/cod-x11vnc.log 2>&1 &`,`for i in $(seq 1 50); do`,` if timeout 1 bash -lc '</dev/tcp/127.0.0.1/5900' >/dev/null 2>&1; then`,` break`,` fi`,` sleep 0.1`,`done`,`timeout 1 bash -lc '</dev/tcp/127.0.0.1/5900' >/dev/null 2>&1`,`cd /usr/local/websockify && nohup /usr/bin/python3.8 -m websockify 1337 :5900 >/tmp/cod-websockify.log 2>&1 &`,`for i in $(seq 1 50); do`,` if timeout 1 bash -lc '</dev/tcp/127.0.0.1/1337' >/dev/null 2>&1; then`,` break`,` fi`,` sleep 0.1`,`done`,`timeout 1 bash -lc '</dev/tcp/127.0.0.1/1337' >/dev/null 2>&1`,`echo "graphics stack ready"`].join(`
408
+ `);return e.spawnCommand(`graphics-bootstrap`,i,{resolveOnOutput:e=>e.includes(`graphics stack ready`)})},u=e=>e.transfer({"main.py":n}),d=e=>{let t=`set -e
409
+ source "./.pyvenv311/bin/activate"
410
+ python -B "$MAIN_FILE"`;e.spawnCommand(`console`,t,{args:[`-i`,`-c`,t],type:`echopty`,env:{MAIN_FILE:`main.py`,DEBUG_MODE:0},untracked:!0})},f=async e=>{let n=`wss://scalinghub.codehs.com/user/${t.uid}/graphics`;s(e);let f=Tr(t.uid,t.appWindow,(e,t)=>{e===`stderr`&&console.warn(`[spawn]`,t)});if(await f.ready,await l(f,a(e)),await u(f),d(f),await i(t.appWindow.document,`https://static1.codehs.com/lib/noVNC/noVNC.js`),!t.appWindow.RFB)throw Error(`noVNC RFB global did not load`);c(e,n,()=>{I(r,!1),o(e)})},p=e=>{f(e)};var m=Er(),h=sn(m);fr(h,()=>p);var g=cn(h,2);let _;yn(()=>{_=hr(g,1,`cod-loader svelte-1ywbbn9`,null,_,{hidden:!$(r)}),vr(g,`src`,Sr)}),or(e,m),We()}const kr=(t,n)=>{let{document:r}=n;r.title=`New Tab`;let a=r.createElement(`style`);a.textContent=e+i,r.head.appendChild(a),sr(Or,{target:r.body,props:{uid:t,appWindow:n}})},Ar=(Math.random()*1e5).toFixed(0),jr=fetch(`https://scalinghub.codehs.com/hub/api/spinup/${Ar}/config/default`,{credentials:`include`}),Mr=document.createElement(`style`);Mr.textContent=e+t,document.head.appendChild(Mr);const Nr=document.createElement(`button`);Nr.innerHTML=n,Nr.disabled=!0;const Pr=document.createElement(`a`);Pr.innerHTML=`Made by <span>${r} Abundance</span>, the makers of <u>0K</u>`,Pr.href=`https://cdn.jsdelivr.net/gh/abndnce/b0k@main/jsdelivr/index.svg`,Pr.target=`_blank`,document.body.replaceChildren(Nr,Pr),jr.then(()=>{Nr.disabled=!1,Nr.onclick=()=>{let e=window.open(`about:blank`,`_blank`);if(!e)throw Error(`failed to open`);kr(Ar,e)}});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "gadidae",
3
3
  "type": "module",
4
- "version": "0.0.1",
4
+ "version": "0.1.1",
5
5
  "description": "cod",
6
6
  "license": "UNLICENSED",
7
7
  "exports": {
@@ -12,15 +12,24 @@
12
12
  "dist"
13
13
  ],
14
14
  "devDependencies": {
15
+ "@tsdown/css": "^0.22.0",
15
16
  "@types/node": "^25.6.2",
17
+ "@unocss/reset": "^66.7.0",
16
18
  "bumpp": "^11.1.0",
19
+ "prettier-plugin-svelte": "^4.0.1",
20
+ "svelte": "^5.55.9",
21
+ "svelte-check": "^4.4.8",
17
22
  "tsdown": "^0.22.0",
18
23
  "typescript": "^6.0.3"
19
24
  },
25
+ "inlinedDependencies": {
26
+ "esm-env": "1.2.2",
27
+ "svelte": "5.55.9"
28
+ },
20
29
  "scripts": {
21
30
  "build": "tsdown",
22
31
  "dev": "tsdown --watch",
23
- "check": "tsc --noEmit",
32
+ "check": "svelte-check --tsconfig ./tsconfig.json && tsc --noEmit",
24
33
  "bump": "bumpp"
25
34
  }
26
35
  }