watch-tail 0.2.0 → 0.3.0

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 (75) hide show
  1. package/README.md +37 -2
  2. package/build/client/_app/immutable/assets/0.CocWI5K4.css +2 -0
  3. package/build/client/_app/immutable/assets/0.CocWI5K4.css.br +0 -0
  4. package/build/client/_app/immutable/assets/0.CocWI5K4.css.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{QerT6gr3.js → CsscK9Dm.js} +1 -1
  6. package/build/client/_app/immutable/chunks/CsscK9Dm.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/CsscK9Dm.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{BesB6AFH.js → KFjMNKuK.js} +1 -1
  9. package/build/client/_app/immutable/chunks/KFjMNKuK.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/KFjMNKuK.js.gz +0 -0
  11. package/build/client/_app/immutable/entry/{app.CzjiNS6M.js → app.CO3UiVLU.js} +2 -2
  12. package/build/client/_app/immutable/entry/app.CO3UiVLU.js.br +0 -0
  13. package/build/client/_app/immutable/entry/app.CO3UiVLU.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/start.t_nX227Y.js +1 -0
  15. package/build/client/_app/immutable/entry/start.t_nX227Y.js.br +0 -0
  16. package/build/client/_app/immutable/entry/start.t_nX227Y.js.gz +0 -0
  17. package/build/client/_app/immutable/nodes/{1.D6GC5CeD.js → 1.Bink5luw.js} +1 -1
  18. package/build/client/_app/immutable/nodes/1.Bink5luw.js.br +0 -0
  19. package/build/client/_app/immutable/nodes/1.Bink5luw.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{2.SS1SkbCf.js → 2.U0ljz8ot.js} +1 -1
  21. package/build/client/_app/immutable/nodes/2.U0ljz8ot.js.br +0 -0
  22. package/build/client/_app/immutable/nodes/2.U0ljz8ot.js.gz +0 -0
  23. package/build/client/_app/version.json +1 -1
  24. package/build/client/_app/version.json.br +0 -0
  25. package/build/client/_app/version.json.gz +0 -0
  26. package/build/handler.js +4 -4
  27. package/build/index.js +4 -4
  28. package/build/server/chunks/chunks/{internal.js-DLSlytOS.js → internal.js-DKaleXjD.js} +2 -2
  29. package/build/server/chunks/chunks/{internal.js-DLSlytOS.js.map → internal.js-DKaleXjD.js.map} +1 -1
  30. package/build/server/chunks/chunks/{state.js-BhSX5geM.js → state.js-B3c1pOs1.js} +2 -2
  31. package/build/server/chunks/chunks/{state.js-BhSX5geM.js.map → state.js-B3c1pOs1.js.map} +1 -1
  32. package/build/server/chunks/entries/fallbacks/{error.svelte.js-BhjmZlem.js → error.svelte.js-DwU8Vh5R.js} +3 -3
  33. package/build/server/chunks/entries/fallbacks/{error.svelte.js-BhjmZlem.js.map → error.svelte.js-DwU8Vh5R.js.map} +1 -1
  34. package/build/server/chunks/entries/pages/{_page.svelte.js-jJckgdLK.js → _page.svelte.js-CsJstkpB.js} +3 -3
  35. package/build/server/chunks/entries/pages/{_page.svelte.js-jJckgdLK.js.map → _page.svelte.js-CsJstkpB.js.map} +1 -1
  36. package/build/server/chunks/{handler-BxmFhnZG.js → handler-Dw17Mzkr.js} +3 -3
  37. package/build/server/chunks/{handler-BxmFhnZG.js.map → handler-Dw17Mzkr.js.map} +1 -1
  38. package/build/server/chunks/{index.js-Bnel_BoF.js → index.js-CAGsYI3V.js} +2 -2
  39. package/build/server/chunks/{index.js-Bnel_BoF.js.map → index.js-CAGsYI3V.js.map} +1 -1
  40. package/build/server/chunks/{manifest.js-BWGL1R_d.js → manifest.js-CVImQuLw.js} +5 -5
  41. package/build/server/chunks/{manifest.js-BWGL1R_d.js.map → manifest.js-CVImQuLw.js.map} +1 -1
  42. package/build/server/chunks/nodes/{0.js-Dl0J9d3p.js → 0.js-Bg4_hDjk.js} +3 -3
  43. package/build/server/chunks/nodes/{0.js-Dl0J9d3p.js.map → 0.js-Bg4_hDjk.js.map} +1 -1
  44. package/build/server/chunks/nodes/{1.js-Xw6DMXPq.js → 1.js-D_fOWpEW.js} +3 -3
  45. package/build/server/chunks/nodes/{1.js-Xw6DMXPq.js.map → 1.js-D_fOWpEW.js.map} +1 -1
  46. package/build/server/chunks/nodes/2.js-t5EYxWxj.js +9 -0
  47. package/build/server/chunks/nodes/{2.js-D-gAbfe_.js.map → 2.js-t5EYxWxj.js.map} +1 -1
  48. package/dist/cli/completions.js +8 -7
  49. package/dist/cli/index.js +73 -2
  50. package/dist/cli/preflight.js +73 -0
  51. package/dist/cli/ui.js +8 -1
  52. package/dist/lib/cli/aws.js +9 -1
  53. package/dist/lib/cli/credentials.js +163 -0
  54. package/dist/lib/types.js +5 -0
  55. package/package.json +1 -1
  56. package/build/client/_app/immutable/assets/0.B1NsRRrX.css +0 -2
  57. package/build/client/_app/immutable/assets/0.B1NsRRrX.css.br +0 -0
  58. package/build/client/_app/immutable/assets/0.B1NsRRrX.css.gz +0 -0
  59. package/build/client/_app/immutable/chunks/BesB6AFH.js.br +0 -2
  60. package/build/client/_app/immutable/chunks/BesB6AFH.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/QerT6gr3.js.br +0 -0
  62. package/build/client/_app/immutable/chunks/QerT6gr3.js.gz +0 -0
  63. package/build/client/_app/immutable/entry/app.CzjiNS6M.js.br +0 -0
  64. package/build/client/_app/immutable/entry/app.CzjiNS6M.js.gz +0 -0
  65. package/build/client/_app/immutable/entry/start.D4ev--zA.js +0 -1
  66. package/build/client/_app/immutable/entry/start.D4ev--zA.js.br +0 -0
  67. package/build/client/_app/immutable/entry/start.D4ev--zA.js.gz +0 -0
  68. package/build/client/_app/immutable/nodes/1.D6GC5CeD.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/1.D6GC5CeD.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/2.SS1SkbCf.js.br +0 -0
  71. package/build/client/_app/immutable/nodes/2.SS1SkbCf.js.gz +0 -0
  72. package/build/server/chunks/nodes/2.js-D-gAbfe_.js +0 -9
  73. /package/build/client/_app/immutable/nodes/{0.D5bYt7iX.js → 0.DHBUWbOo.js} +0 -0
  74. /package/build/client/_app/immutable/nodes/{0.D5bYt7iX.js.br → 0.DHBUWbOo.js.br} +0 -0
  75. /package/build/client/_app/immutable/nodes/{0.D5bYt7iX.js.gz → 0.DHBUWbOo.js.gz} +0 -0
package/README.md CHANGED
@@ -94,12 +94,21 @@ watch-tail [options]
94
94
  -v, --version Show the version
95
95
  ```
96
96
 
97
- Shell completions come from [`@bomb.sh/tab`](https://bomb.sh):
97
+ Shell completions come from [`@bomb.sh/tab`](https://bomb.sh): flags, `--region` values from the
98
+ CloudWatch Logs region list, and `--profile` values from your own `~/.aws/config`. zsh, bash, fish and
99
+ powershell are supported.
98
100
 
99
101
  ```bash
100
- source <(watch-tail complete zsh) # zsh; bash, fish and powershell too
102
+ source <(watch-tail complete zsh) # this shell, now
103
+ watch-tail complete zsh > ~/.watch-tail-completion.zsh # or install it permanently
104
+ echo 'source ~/.watch-tail-completion.zsh' >> ~/.zshrc
101
105
  ```
102
106
 
107
+ The generated script re-invokes `watch-tail complete -- <words>`, so completions keep working after
108
+ you upgrade. Install the [`@bomb.sh/tab`](https://www.npmjs.com/package/@bomb.sh/tab) CLI globally if
109
+ you also want completions for a locally installed copy through your package manager
110
+ (`pnpm watch-tail <TAB>`).
111
+
103
112
  `--profile` sets `AWS_PROFILE` for the server process only. Nothing is written to disk, and any local
104
113
  emulator settings are neutralized for that run, so a stray `.env.local` cannot redirect a real AWS run.
105
114
 
@@ -130,6 +139,32 @@ Two read-only actions are enough; the app never writes logs:
130
139
 
131
140
  Scope `Resource` down with a log-group ARN pattern if you only need a subset.
132
141
 
142
+ ### When credentials are missing
143
+
144
+ On startup the CLI asks the running app for one log group. If AWS refuses because of credentials, it
145
+ works out which login command fixes it - from how your profile is configured, not from guesswork -
146
+ and offers to run it:
147
+
148
+ ```text
149
+ warning: AWS credentials are not usable: ... The SSO session token associated with
150
+ profile=my-profile was not found or is invalid.
151
+ ? Sign in to the SSO session for my-profile. Run `aws sso login --profile my-profile` now? › yes
152
+ running aws sso login --profile my-profile
153
+ signed in - credentials work now
154
+ ```
155
+
156
+ | Your profile | What it runs |
157
+ | -------------------------------------- | ------------------------------------------------------------------------------------------ |
158
+ | `sso_session` / `sso_start_url` | `aws sso login --profile <name>` |
159
+ | `login_session` (console sign-in) | `aws login --profile <name>` |
160
+ | nothing configured yet | `aws login` (which creates the session) |
161
+ | static keys, or a `credential_process` | no login is offered - those are fixed with `aws configure` or where the process is defined |
162
+
163
+ The login runs with your terminal attached, so the browser flow works. `--remote` is added when there
164
+ is no browser (SSH, headless). Decline, or run non-interactively, and the CLI prints the exact command
165
+ instead and keeps the app up - log in elsewhere, then press Refresh. Emulator runs (`--endpoint`,
166
+ `--floci`) skip the check, because those use throwaway credentials by design.
167
+
133
168
  **The region is optional.** Precedence is `--region`, then `AWS_REGION`/`AWS_DEFAULT_REGION`, then the
134
169
  profile's own region, then `[default]` in `~/.aws/config`. Nothing resolvable produces a clear
135
170
  `missing-region` message instead of a silent guess. Log groups, retention and events are per region,
@@ -0,0 +1,2 @@
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-600:oklch(43.9% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-neutral-950:oklch(14.5% 0 none);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-y-0{inset-block:0}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.h-5{height:calc(var(--spacing) * 5)}.h-dvh{height:100dvh}.min-h-0{min-height:0}.min-h-\[30rem\]{min-height:30rem}.min-h-full{min-height:100%}.w-2{width:calc(var(--spacing) * 2)}.w-40{width:calc(var(--spacing) * 40)}.w-\[7\.5rem\]{width:7.5rem}.w-full{width:100%}.w-max{width:max-content}.max-w-\[22rem\]{max-width:22rem}.min-w-0{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.animate-pulse{animation:var(--animate-pulse)}.cursor-col-resize{cursor:col-resize}.touch-none{touch-action:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-amber-700{border-color:var(--color-amber-700)}.border-amber-900{border-color:var(--color-amber-900)}.border-emerald-900{border-color:var(--color-emerald-900)}.border-neutral-700{border-color:var(--color-neutral-700)}.border-neutral-800{border-color:var(--color-neutral-800)}.border-neutral-900{border-color:var(--color-neutral-900)}.border-red-900{border-color:var(--color-red-900)}.border-sky-700{border-color:var(--color-sky-700)}.border-sky-800{border-color:var(--color-sky-800)}.border-sky-900{border-color:var(--color-sky-900)}.border-transparent{border-color:#0000}.border-violet-900{border-color:var(--color-violet-900)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-950\/40{background-color:#46190166}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/40{background-color:color-mix(in oklab, var(--color-amber-950) 40%, transparent)}}.bg-amber-950\/50{background-color:#46190180}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/50{background-color:color-mix(in oklab, var(--color-amber-950) 50%, transparent)}}.bg-amber-950\/70{background-color:#461901b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-950\/70{background-color:color-mix(in oklab, var(--color-amber-950) 70%, transparent)}}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-950\/70{background-color:#002c22b3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-950\/70{background-color:color-mix(in oklab, var(--color-emerald-950) 70%, transparent)}}.bg-neutral-500{background-color:var(--color-neutral-500)}.bg-neutral-800\/60{background-color:#26262699}@supports (color:color-mix(in lab, red, red)){.bg-neutral-800\/60{background-color:color-mix(in oklab, var(--color-neutral-800) 60%, transparent)}}.bg-neutral-800\/80{background-color:#262626cc}@supports (color:color-mix(in lab, red, red)){.bg-neutral-800\/80{background-color:color-mix(in oklab, var(--color-neutral-800) 80%, transparent)}}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-neutral-900\/40{background-color:#17171766}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/40{background-color:color-mix(in oklab, var(--color-neutral-900) 40%, transparent)}}.bg-neutral-900\/60{background-color:#17171799}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/60{background-color:color-mix(in oklab, var(--color-neutral-900) 60%, transparent)}}.bg-neutral-900\/70{background-color:#171717b3}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/70{background-color:color-mix(in oklab, var(--color-neutral-900) 70%, transparent)}}.bg-neutral-950{background-color:var(--color-neutral-950)}.bg-neutral-950\/60{background-color:#0a0a0a99}@supports (color:color-mix(in lab, red, red)){.bg-neutral-950\/60{background-color:color-mix(in oklab, var(--color-neutral-950) 60%, transparent)}}.bg-neutral-950\/90{background-color:#0a0a0ae6}@supports (color:color-mix(in lab, red, red)){.bg-neutral-950\/90{background-color:color-mix(in oklab, var(--color-neutral-950) 90%, transparent)}}.bg-red-400{background-color:var(--color-red-400)}.bg-red-950\/50{background-color:#46080980}@supports (color:color-mix(in lab, red, red)){.bg-red-950\/50{background-color:color-mix(in oklab, var(--color-red-950) 50%, transparent)}}.bg-red-950\/70{background-color:#460809b3}@supports (color:color-mix(in lab, red, red)){.bg-red-950\/70{background-color:color-mix(in oklab, var(--color-red-950) 70%, transparent)}}.bg-sky-400{background-color:var(--color-sky-400)}.bg-sky-950\/50{background-color:#052f4a80}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/50{background-color:color-mix(in oklab, var(--color-sky-950) 50%, transparent)}}.bg-sky-950\/60{background-color:#052f4a99}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/60{background-color:color-mix(in oklab, var(--color-sky-950) 60%, transparent)}}.bg-sky-950\/70{background-color:#052f4ab3}@supports (color:color-mix(in lab, red, red)){.bg-sky-950\/70{background-color:color-mix(in oklab, var(--color-sky-950) 70%, transparent)}}.bg-transparent{background-color:#0000}.bg-violet-950\/60{background-color:#2f0d6899}@supports (color:color-mix(in lab, red, red)){.bg-violet-950\/60{background-color:color-mix(in oklab, var(--color-violet-950) 60%, transparent)}}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pr-1{padding-right:var(--spacing)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.6875rem\]{font-size:.6875rem}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-200{color:var(--color-amber-200)}.text-amber-300{color:var(--color-amber-300)}.text-amber-300\/80{color:#ffd236cc}@supports (color:color-mix(in lab, red, red)){.text-amber-300\/80{color:color-mix(in oklab, var(--color-amber-300) 80%, transparent)}}.text-amber-400\/80{color:#fcbb00cc}@supports (color:color-mix(in lab, red, red)){.text-amber-400\/80{color:color-mix(in oklab, var(--color-amber-400) 80%, transparent)}}.text-emerald-300{color:var(--color-emerald-300)}.text-emerald-400\/80{color:#00d294cc}@supports (color:color-mix(in lab, red, red)){.text-emerald-400\/80{color:color-mix(in oklab, var(--color-emerald-400) 80%, transparent)}}.text-fuchsia-300{color:var(--color-fuchsia-300)}.text-neutral-100{color:var(--color-neutral-100)}.text-neutral-200{color:var(--color-neutral-200)}.text-neutral-300{color:var(--color-neutral-300)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-sky-200{color:var(--color-sky-200)}.text-sky-300{color:var(--color-sky-300)}.text-sky-400{color:var(--color-sky-400)}.text-sky-400\/80{color:#00bcfecc}@supports (color:color-mix(in lab, red, red)){.text-sky-400\/80{color:color-mix(in oklab, var(--color-sky-400) 80%, transparent)}}.text-violet-300{color:var(--color-violet-300)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.selection\:bg-sky-900\/60 ::selection{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.selection\:bg-sky-900\/60 ::selection{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.selection\:bg-sky-900\/60::selection{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.selection\:bg-sky-900\/60::selection{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.placeholder\:text-neutral-600::placeholder{color:var(--color-neutral-600)}@media (hover:hover){.hover\:border-neutral-700:hover{border-color:var(--color-neutral-700)}.hover\:border-neutral-800:hover{border-color:var(--color-neutral-800)}.hover\:border-sky-600:hover{border-color:var(--color-sky-600)}.hover\:bg-neutral-900\/60:hover{background-color:#17171799}@supports (color:color-mix(in lab, red, red)){.hover\:bg-neutral-900\/60:hover{background-color:color-mix(in oklab, var(--color-neutral-900) 60%, transparent)}}.hover\:bg-sky-500\/30:hover{background-color:#00a5ef4d}@supports (color:color-mix(in lab, red, red)){.hover\:bg-sky-500\/30:hover{background-color:color-mix(in oklab, var(--color-sky-500) 30%, transparent)}}.hover\:text-neutral-100:hover{color:var(--color-neutral-100)}.hover\:text-neutral-200:hover{color:var(--color-neutral-200)}}.focus\:border-sky-600:focus{border-color:var(--color-sky-600)}.focus\:bg-sky-500\/50:focus{background-color:#00a5ef80}@supports (color:color-mix(in lab, red, red)){.focus\:bg-sky-500\/50:focus{background-color:color-mix(in oklab, var(--color-sky-500) 50%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=40rem){.sm\:inline{display:inline}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}}@media (width>=64rem){.lg\:block{display:block}.lg\:w-2{width:calc(var(--spacing) * 2)}.lg\:shrink-0{flex-shrink:0}.lg\:flex-row{flex-direction:row}}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
@@ -1 +1 @@
1
- import{A as e,K as t,M as n,U as r,W as i,j as a,k as o,n as s,t as c}from"./ZAD2y5xJ.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function b(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ie=/^\/\((?:[^)]+)\)$/;function ae(e){let t=[];return{pattern:e===`/`||ie.test(e)?/^\/$/:RegExp(`^${se(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return le(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return le(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return le(e)}).join(``)}).join(``)}/?$`),params:t}}function oe(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function se(e){return e.slice(1).split(`/`).filter(oe)}function ce(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function le(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ue({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ae(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ce(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function de(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function fe(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_12j7m8j?.base??``,pe=globalThis.__sveltekit_12j7m8j?.assets??x??``,me=`1789139836412`,he=`sveltekit:snapshot`,ge=`sveltekit:scroll`,_e=`sveltekit:states`,ve=`sveltekit:pageurl`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ye=location.origin;function be(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function T(){return{x:pageXOffset,y:pageYOffset}}function E(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var xe={...w,"":w.hover};function Se(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ce(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Se(e)}}function we(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||O(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ye&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function D(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=E(s,`preload-code`)),i===null&&(i=E(s,`preload-data`)),t===null&&(t=E(s,`keepfocus`)),n===null&&(n=E(s,`noscroll`)),a===null&&(a=E(s,`reload`)),o===null&&(o=E(s,`replacestate`)),s=Se(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:xe[r??`off`],preload_data:xe[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Te(e){let n=t(e),r=!0;function i(){r=!0,n.update(e=>e)}function a(e){r=!1,n.set(e)}function o(e){let t;return n.subscribe(n=>{(t===void 0||r&&n!==t)&&e(t=n)})}return{notify:i,set:a,subscribe:o}}var Ee={v:h};function De(){let{set:e,subscribe:n}=t(!1),r;async function i(){clearTimeout(r);try{let t=await fetch(`${pe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==me;return n&&(e(!0),Ee.v(),clearTimeout(r)),n}catch{return!1}}return{subscribe:n,check:i}}function O(e,t,n){return e.origin!==ye||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Oe(e){}var ke=2**32-1-1,Ae=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function je(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Ae}function Me(e){return Object.prototype.toString.call(e).slice(8,-1)}function Ne(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Pe(e){return!(!Number.isInteger(e)||e<0||e>ke)}function Fe(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Pe(+e)}function Ie(e){for(var t=e.length-1;t>=0&&!Fe(e[t]);t--);return t+1}function Le(e){let t=Object.keys(e);return t.length=Ie(t),t}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Re=Object.freeze({kind:`not-plain`}),ze=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>Me(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Le(e),shapeOf:e=>je(e)?Ne(e).length>0?ze:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Re,get:(e,t)=>e[t]}),Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[ke]=void 0,delete t[ke],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});var Be=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Be],[...new Set([...Be])];function Ve(e){return e.filter(e=>e!=null)}function k(e,t){return e+`/`+t}function He(e){return e instanceof l||e instanceof d?e.status:500}function Ue(e){return e instanceof d?e.text:`Internal Error`}var A,j,We,Ge=s.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(s.toString()),Ke=`a:`;Ge?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Ke)},j={current:null},We={current:!1}):(A=new class{#e=i({});get data(){return o(this.#e)}set data(e){r(this.#e,e)}#t=i(null);get form(){return o(this.#t)}set form(e){r(this.#t,e)}#n=i(null);get error(){return o(this.#n)}set error(e){r(this.#n,e)}#r=i({});get params(){return o(this.#r)}set params(e){r(this.#r,e)}#i=i({id:null});get route(){return o(this.#i)}set route(e){r(this.#i,e)}#a=i({});get state(){return o(this.#a)}set state(e){r(this.#a,e)}#o=i(-1);get status(){return o(this.#o)}set status(e){r(this.#o,e)}#s=i(new URL(Ke));get url(){return o(this.#s)}set url(e){r(this.#s,e)}},j=new class{#e=i(null);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},We=new class{#e=i(!1);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},Ee.v=()=>We.current=!0);function qe(e){Object.assign(A,e)}var{onMount:Je,tick:Ye}=c,Xe=n??(e=>e()),Ze=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),M=null,N=de(`sveltekit:scroll`)??{},P=de(`sveltekit:snapshot`)??{},F={url:Te({}),page:Te({}),navigating:t(null),updated:De()};function Qe(e){N[e]=T()}function $e(e,t){let n=e+1;for(;N[n];)delete N[n],n+=1;for(n=t+1;P[n];)delete P[n],n+=1}function I(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function et(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var tt,nt,L,R,rt,z,it={},at={},B=[],V=[],H=null;function ot(){H?.fork?.then(e=>e?.discard()),H=null,Q={element:void 0,href:void 0}}var st=new Map,ct=new Set,lt=new Set,U=new Set,W={branch:[],error:null,url:null,nav:null},ut=!1,G=!1,dt=!0,K=!1,q=!1,ft=!1,pt=!1,mt,J,Y,X,ht=new Set,gt=new Map,_t=new Map;async function vt(e,t,n){if(globalThis.__sveltekit_12j7m8j.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_12j7m8j.data;for(let t in e)it[t]=e[t];for(let e in n)it[e]=n[e];for(let e in r)it[e]=r[e];for(let e in t)at[e]=t[e]}document.URL!==location.href&&(location.href=location.href),z=e,await e.hooks.init?.(),tt=ue(e),R=document.documentElement,rt=t,nt=e.nodes[0],L=e.nodes[1],nt(),L(),J=history.state?.[S],Y=history.state?.[C],J||(J=Y=Date.now(),history.replaceState({...history.state,[S]:J,[C]:Y},``));let r=N[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await qt(rt,n)):(await Z({type:`enter`,url:be(z.hash?$t(new URL(location.href)):location.href),replace_state:!0}),i()),Kt()}function yt(){B.length=0,pt=!1}function bt(e){V.some(e=>e?.snapshot)&&(P[e]=V.map(e=>e?.snapshot?.capture()))}function xt(e){P[e]?.forEach((e,t)=>{V[t]?.snapshot?.restore(e)})}function St(){Qe(J),fe(ge,N),bt(Y),fe(he,P)}async function Ct(e,t,n,r){let i,o;t.invalidateAll&&ot(),await Z({type:`goto`,url:be(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{if(t.invalidateAll){pt=!0,i=new Set;for(let[e,t]of gt)for(let[n,r]of t)r.resource?.reset(),i.add(k(e,n));o=new Set;for(let[e,t]of _t)for(let n of t.keys())o.add(k(e,n))}t.invalidate&&t.invalidate.forEach(Wt)}}),t.invalidateAll&&a().then(a).then(()=>{for(let[e,t]of gt)for(let[n,{resource:r}]of t)i?.has(k(e,n))&&r.start();for(let[e,t]of _t)for(let[n,{resource:r}]of t)o?.has(k(e,n))&&r.reconnect()})}async function wt(e){if(e.id!==H?.id){ot();let t={};ht.add(t),H={id:e.id,token:t,promise:Pt({...e,preload:t}).then(e=>(ht.delete(t),e.type===`loaded`&&e.state.error&&ot(),e)),fork:null}}return H.promise}async function Tt(e){let t=(await Rt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Et(e,t,n){let r={params:W.params,route:{id:W.route?.id??null},url:new URL(location.href)};if(W={...e.state,nav:r},qe(e.props.page),mt=new z.root({target:t,props:{...e.props,stores:F,components:V},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:N[J]??T()},willUnload:!1,type:`enter`,complete:Promise.resolve()};U.forEach(t=>t(e))}xt(Y),G=!0}async function Dt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Ve(n).map(e=>e.node.component),page:Qt(A)}};s!==void 0&&(l.props.form=s);let u={},d=!A,p=0;for(let e=0;e<Math.max(n.length,W.branch.length);e+=1){let t=n[e],r=W.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!W.url||e.href!==W.url.href||W.error!==a||s!==void 0&&s!==A.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:A.data}),l}async function Ot({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function kt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:G?ne(r,i.href,t):y(r,t)}}function At(e,t,n,r,i,a){if(pt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==W.params[e])return!0;for(let e of i.dependencies)if(B.some(t=>t(new URL(e))))return!0;return!1}function jt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Mt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Nt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Qt(A),constructors:[]}}}async function Pt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(H?.id===e)return ht.delete(H.token),H.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=W.url?e!==Bt(W.url):!1,p=W.route?i.id!==W.route.id:!1,ee=Mt(W.url,n),m=!1,g=d.map(async(e,t)=>{if(!e)return;let a=W.branch[t];return e[1]===a?.loader&&!At(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,Ot({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await g[n])?.data);return e},server_data_node:jt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of g)e.catch(h);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await g[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&&ht.has(a))return Nt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=He(t),c;if(t instanceof l)c=t.body;else{if(await F.updated.check())return await et(),await I(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Ft(e,_,o);return d?Dt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Ht(n,{id:i.id},c,s)}else _.push(void 0);return Dt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ft(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function It({status:e,error:t,url:n,route:r}){let i={};try{return Dt({url:n,params:i,branch:[await Ot({loader:nt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:jt(null)}),{node:await L(),loader:L,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await Ct(new URL(t.location,location.href),{},0);return}let a=await z.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Lt(e){let t=e.href;if(st.has(t))return st.get(t);let n;try{let r=(async()=>{let t=await z.hooks.reroute({url:new URL(e),fetch:async(t,n)=>kt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);z.hash?n.hash=t:n.pathname=t,t=n}return t})();st.set(t,r),n=await r}catch{st.delete(t);return}return n}async function Rt(e,t){if(e&&!O(e,x,z.hash)){let n=await Lt(e);if(!n)return;let r=zt(n);for(let n of tt){let i=n.exec(r);if(i)return{id:Bt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function zt(e){return p(z.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function Bt(e){return(z.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Vt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Zt(W,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||ct.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:n,popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=h,block:p=h,event:ee}){let m=X;X=u;let g=await Rt(n,!1),_=t===`enter`?Zt(W,g,n,t):Vt({url:n,type:t,delta:r?.delta,intent:g,scroll:r?.scroll,event:ee});if(!_){p(),X===u&&(X=m);return}let te=J,v=Y;f(),K=!0,G&&_.navigation.type!==`enter`&&F.navigating.set(j.current=_.navigation);let y=g&&await Pt(g);if(!y){if(O(n,x,z.hash))return await I(n,s);y=await Ht(n,{id:null},await $(new d(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=g?.url||n,X!==u){_.reject(Error(`navigation aborted`));return}if(!y)return;if(y.type===`redirect`){if(l<20){await Z({type:t,url:new URL(y.location,n),popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(y=await It({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!y)return}else if(y.props.page.status>=400&&await F.updated.check())return await et(),await I(n,s);if(yt(),Qe(te),bt(v),y.props.page.url.pathname!==n.pathname&&(n.pathname=y.props.page.url.pathname),c=r?r.state:c,!r){let e=+!s,t={[S]:J+=e,[C]:Y+=e,[_e]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||$e(J,Y)}let ne=g&&H?.id===g.id?H.fork:null;H?.fork&&!ne?ot():(H=null,Q={element:void 0,href:void 0}),y.props.page.state=c;let b;if(G){let t=(await Promise.all(Array.from(lt,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{U.delete(e)})}t.push(e),t.forEach(e=>{U.add(e)})}let r=_.navigation.to;W={...y.state,nav:{params:r.params,route:r.route,url:r.url}},y.props.page&&(y.props.page.url=n),!i&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let a=ne&&await ne;a?b=a.commit():(M=null,mt.$set(y.props),M&&Object.assign(y.props.page,M),qe(y.props.page),b=e?.()),ft=!0}else await Et(y,rt,!1);let{activeElement:re}=document;if(await b,await a(),await a(),X!==u){_.reject(Error(`navigation aborted`));return}y.props.page&&M&&Object.assign(y.props.page,M);let ie=null;if(dt){let e=r?r.scroll:o?T():null;e?scrollTo(e.x,e.y):(ie=n.hash&&document.getElementById(en(n)))?ie.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==re&&document.activeElement!==document.body;!i&&!ae&&Xt(n,!ie),dt=!0,K=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=T()),U.forEach(e=>e(_.navigation)),t===`popstate`&&xt(Y),F.navigating.set(j.current=null)}async function Ht(e,t,n,r,i){return e.origin===ye&&e.pathname===location.pathname&&!ut?await It({status:r,error:n,url:e,route:t}):await I(e,i)}var Q={element:void 0,href:void 0};function Ut(){let e,t;R.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,w.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],w.tap)}R.addEventListener(`mousedown`,n),R.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Tt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Ce(e,R),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=we(r,x,z.hash);if(o||s)return;let c=D(r),l=a&&Bt(W.url)===Bt(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=w.tap;let e=await Rt(a,!1);if(!e)return;wt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Tt(a))}}function a(){r.disconnect();for(let e of R.querySelectorAll(`a`)){let{url:t,external:n,download:i}=we(e,x,z.hash);if(n||i)continue;let a=D(e);a.reload||(a.preload_code===w.viewport&&r.observe(e),a.preload_code===w.eager&&Tt(t))}}U.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=He(e),r=Ue(e);return z.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Wt(e){if(typeof e==`function`)B.push(e);else{let{href:t}=new URL(e,location.href);B.push(e=>e.href===t)}}function Gt(e,t){let n={[S]:J,[C]:Y,[ve]:A.url.href,[_e]:t};history.replaceState(n,``,be(e)),A.state=t,mt.$set({page:Xe(()=>Qt(A))})}function Kt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(St(),!K){let e=Zt(W,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};ct.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&St()}),navigator.connection?.saveData||Ut(),R.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ce(t.composedPath()[0],R);if(!n)return;let{url:r,external:i,target:a,download:o}=we(n,x,z.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=D(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(z.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Vt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=W.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Qe(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),R.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(O(r,x,!1))return;let i=e.target,a=D(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Yt){if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(X={},n===J)return;let r=N[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=W.url?m(location)===m(W.url):!1;if(o===Y&&(ft||s)){i!==A.state&&(A.state=i),e(a),N[J]=T(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),z.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[S]:++J,[C]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ze.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&F.navigating.set(j.current=null)});function e(e){W.url=A.url=e,F.page.set(Qt(A)),F.page.notify()}}async function qt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){ut=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await Rt(l,!1)||{}),d=tt.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Jt(r.uses)),Ot({loader:z.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:jt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Dt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await I(new URL(t.location,location.href));f=await It({status:He(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Et(f,e,p))}function Jt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Yt=!1;function Xt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=en(e);if(n&&document.getElementById(n)){let{x:r,y:i}=T();setTimeout(()=>{let a=history.state;Yt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Yt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Zt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:T()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Qt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function $t(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function en(e){let t;if(z.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Oe as a,A as i,vt as n,j as r,Gt as t};
1
+ import{A as e,K as t,M as n,U as r,W as i,j as a,k as o,n as s,t as c}from"./ZAD2y5xJ.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function b(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ie=/^\/\((?:[^)]+)\)$/;function ae(e){let t=[];return{pattern:e===`/`||ie.test(e)?/^\/$/:RegExp(`^${se(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return le(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return le(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return le(e)}).join(``)}).join(``)}/?$`),params:t}}function oe(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function se(e){return e.slice(1).split(`/`).filter(oe)}function ce(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function le(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ue({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ae(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ce(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function de(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function fe(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_13evn32?.base??``,pe=globalThis.__sveltekit_13evn32?.assets??x??``,me=`1789164607259`,he=`sveltekit:snapshot`,ge=`sveltekit:scroll`,_e=`sveltekit:states`,ve=`sveltekit:pageurl`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ye=location.origin;function be(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function T(){return{x:pageXOffset,y:pageYOffset}}function E(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var xe={...w,"":w.hover};function Se(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ce(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Se(e)}}function we(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||O(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ye&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function D(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=E(s,`preload-code`)),i===null&&(i=E(s,`preload-data`)),t===null&&(t=E(s,`keepfocus`)),n===null&&(n=E(s,`noscroll`)),a===null&&(a=E(s,`reload`)),o===null&&(o=E(s,`replacestate`)),s=Se(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:xe[r??`off`],preload_data:xe[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Te(e){let n=t(e),r=!0;function i(){r=!0,n.update(e=>e)}function a(e){r=!1,n.set(e)}function o(e){let t;return n.subscribe(n=>{(t===void 0||r&&n!==t)&&e(t=n)})}return{notify:i,set:a,subscribe:o}}var Ee={v:h};function De(){let{set:e,subscribe:n}=t(!1),r;async function i(){clearTimeout(r);try{let t=await fetch(`${pe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==me;return n&&(e(!0),Ee.v(),clearTimeout(r)),n}catch{return!1}}return{subscribe:n,check:i}}function O(e,t,n){return e.origin!==ye||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Oe(e){}var ke=2**32-1-1,Ae=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function je(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Ae}function Me(e){return Object.prototype.toString.call(e).slice(8,-1)}function Ne(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Pe(e){return!(!Number.isInteger(e)||e<0||e>ke)}function Fe(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Pe(+e)}function Ie(e){for(var t=e.length-1;t>=0&&!Fe(e[t]);t--);return t+1}function Le(e){let t=Object.keys(e);return t.length=Ie(t),t}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Re=Object.freeze({kind:`not-plain`}),ze=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>Me(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Le(e),shapeOf:e=>je(e)?Ne(e).length>0?ze:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Re,get:(e,t)=>e[t]}),Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[ke]=void 0,delete t[ke],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});var Be=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Be],[...new Set([...Be])];function Ve(e){return e.filter(e=>e!=null)}function k(e,t){return e+`/`+t}function He(e){return e instanceof l||e instanceof d?e.status:500}function Ue(e){return e instanceof d?e.text:`Internal Error`}var A,j,We,Ge=s.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(s.toString()),Ke=`a:`;Ge?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Ke)},j={current:null},We={current:!1}):(A=new class{#e=i({});get data(){return o(this.#e)}set data(e){r(this.#e,e)}#t=i(null);get form(){return o(this.#t)}set form(e){r(this.#t,e)}#n=i(null);get error(){return o(this.#n)}set error(e){r(this.#n,e)}#r=i({});get params(){return o(this.#r)}set params(e){r(this.#r,e)}#i=i({id:null});get route(){return o(this.#i)}set route(e){r(this.#i,e)}#a=i({});get state(){return o(this.#a)}set state(e){r(this.#a,e)}#o=i(-1);get status(){return o(this.#o)}set status(e){r(this.#o,e)}#s=i(new URL(Ke));get url(){return o(this.#s)}set url(e){r(this.#s,e)}},j=new class{#e=i(null);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},We=new class{#e=i(!1);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},Ee.v=()=>We.current=!0);function qe(e){Object.assign(A,e)}var{onMount:Je,tick:Ye}=c,Xe=n??(e=>e()),Ze=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),M=null,N=de(`sveltekit:scroll`)??{},P=de(`sveltekit:snapshot`)??{},F={url:Te({}),page:Te({}),navigating:t(null),updated:De()};function Qe(e){N[e]=T()}function $e(e,t){let n=e+1;for(;N[n];)delete N[n],n+=1;for(n=t+1;P[n];)delete P[n],n+=1}function I(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function et(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var tt,nt,L,R,rt,z,it={},at={},B=[],V=[],H=null;function ot(){H?.fork?.then(e=>e?.discard()),H=null,Q={element:void 0,href:void 0}}var st=new Map,ct=new Set,lt=new Set,U=new Set,W={branch:[],error:null,url:null,nav:null},ut=!1,G=!1,dt=!0,K=!1,q=!1,ft=!1,pt=!1,mt,J,Y,X,ht=new Set,gt=new Map,_t=new Map;async function vt(e,t,n){if(globalThis.__sveltekit_13evn32.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_13evn32.data;for(let t in e)it[t]=e[t];for(let e in n)it[e]=n[e];for(let e in r)it[e]=r[e];for(let e in t)at[e]=t[e]}document.URL!==location.href&&(location.href=location.href),z=e,await e.hooks.init?.(),tt=ue(e),R=document.documentElement,rt=t,nt=e.nodes[0],L=e.nodes[1],nt(),L(),J=history.state?.[S],Y=history.state?.[C],J||(J=Y=Date.now(),history.replaceState({...history.state,[S]:J,[C]:Y},``));let r=N[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await qt(rt,n)):(await Z({type:`enter`,url:be(z.hash?$t(new URL(location.href)):location.href),replace_state:!0}),i()),Kt()}function yt(){B.length=0,pt=!1}function bt(e){V.some(e=>e?.snapshot)&&(P[e]=V.map(e=>e?.snapshot?.capture()))}function xt(e){P[e]?.forEach((e,t)=>{V[t]?.snapshot?.restore(e)})}function St(){Qe(J),fe(ge,N),bt(Y),fe(he,P)}async function Ct(e,t,n,r){let i,o;t.invalidateAll&&ot(),await Z({type:`goto`,url:be(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{if(t.invalidateAll){pt=!0,i=new Set;for(let[e,t]of gt)for(let[n,r]of t)r.resource?.reset(),i.add(k(e,n));o=new Set;for(let[e,t]of _t)for(let n of t.keys())o.add(k(e,n))}t.invalidate&&t.invalidate.forEach(Wt)}}),t.invalidateAll&&a().then(a).then(()=>{for(let[e,t]of gt)for(let[n,{resource:r}]of t)i?.has(k(e,n))&&r.start();for(let[e,t]of _t)for(let[n,{resource:r}]of t)o?.has(k(e,n))&&r.reconnect()})}async function wt(e){if(e.id!==H?.id){ot();let t={};ht.add(t),H={id:e.id,token:t,promise:Pt({...e,preload:t}).then(e=>(ht.delete(t),e.type===`loaded`&&e.state.error&&ot(),e)),fork:null}}return H.promise}async function Tt(e){let t=(await Rt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Et(e,t,n){let r={params:W.params,route:{id:W.route?.id??null},url:new URL(location.href)};if(W={...e.state,nav:r},qe(e.props.page),mt=new z.root({target:t,props:{...e.props,stores:F,components:V},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:N[J]??T()},willUnload:!1,type:`enter`,complete:Promise.resolve()};U.forEach(t=>t(e))}xt(Y),G=!0}async function Dt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Ve(n).map(e=>e.node.component),page:Qt(A)}};s!==void 0&&(l.props.form=s);let u={},d=!A,p=0;for(let e=0;e<Math.max(n.length,W.branch.length);e+=1){let t=n[e],r=W.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!W.url||e.href!==W.url.href||W.error!==a||s!==void 0&&s!==A.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:A.data}),l}async function Ot({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function kt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:G?ne(r,i.href,t):y(r,t)}}function At(e,t,n,r,i,a){if(pt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==W.params[e])return!0;for(let e of i.dependencies)if(B.some(t=>t(new URL(e))))return!0;return!1}function jt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Mt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Nt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Qt(A),constructors:[]}}}async function Pt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(H?.id===e)return ht.delete(H.token),H.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=W.url?e!==Bt(W.url):!1,p=W.route?i.id!==W.route.id:!1,ee=Mt(W.url,n),m=!1,g=d.map(async(e,t)=>{if(!e)return;let a=W.branch[t];return e[1]===a?.loader&&!At(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,Ot({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await g[n])?.data);return e},server_data_node:jt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of g)e.catch(h);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await g[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&&ht.has(a))return Nt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=He(t),c;if(t instanceof l)c=t.body;else{if(await F.updated.check())return await et(),await I(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Ft(e,_,o);return d?Dt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Ht(n,{id:i.id},c,s)}else _.push(void 0);return Dt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ft(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function It({status:e,error:t,url:n,route:r}){let i={};try{return Dt({url:n,params:i,branch:[await Ot({loader:nt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:jt(null)}),{node:await L(),loader:L,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await Ct(new URL(t.location,location.href),{},0);return}let a=await z.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Lt(e){let t=e.href;if(st.has(t))return st.get(t);let n;try{let r=(async()=>{let t=await z.hooks.reroute({url:new URL(e),fetch:async(t,n)=>kt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);z.hash?n.hash=t:n.pathname=t,t=n}return t})();st.set(t,r),n=await r}catch{st.delete(t);return}return n}async function Rt(e,t){if(e&&!O(e,x,z.hash)){let n=await Lt(e);if(!n)return;let r=zt(n);for(let n of tt){let i=n.exec(r);if(i)return{id:Bt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function zt(e){return p(z.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function Bt(e){return(z.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Vt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Zt(W,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||ct.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:n,popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=h,block:p=h,event:ee}){let m=X;X=u;let g=await Rt(n,!1),_=t===`enter`?Zt(W,g,n,t):Vt({url:n,type:t,delta:r?.delta,intent:g,scroll:r?.scroll,event:ee});if(!_){p(),X===u&&(X=m);return}let te=J,v=Y;f(),K=!0,G&&_.navigation.type!==`enter`&&F.navigating.set(j.current=_.navigation);let y=g&&await Pt(g);if(!y){if(O(n,x,z.hash))return await I(n,s);y=await Ht(n,{id:null},await $(new d(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=g?.url||n,X!==u){_.reject(Error(`navigation aborted`));return}if(!y)return;if(y.type===`redirect`){if(l<20){await Z({type:t,url:new URL(y.location,n),popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(y=await It({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!y)return}else if(y.props.page.status>=400&&await F.updated.check())return await et(),await I(n,s);if(yt(),Qe(te),bt(v),y.props.page.url.pathname!==n.pathname&&(n.pathname=y.props.page.url.pathname),c=r?r.state:c,!r){let e=+!s,t={[S]:J+=e,[C]:Y+=e,[_e]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||$e(J,Y)}let ne=g&&H?.id===g.id?H.fork:null;H?.fork&&!ne?ot():(H=null,Q={element:void 0,href:void 0}),y.props.page.state=c;let b;if(G){let t=(await Promise.all(Array.from(lt,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{U.delete(e)})}t.push(e),t.forEach(e=>{U.add(e)})}let r=_.navigation.to;W={...y.state,nav:{params:r.params,route:r.route,url:r.url}},y.props.page&&(y.props.page.url=n),!i&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let a=ne&&await ne;a?b=a.commit():(M=null,mt.$set(y.props),M&&Object.assign(y.props.page,M),qe(y.props.page),b=e?.()),ft=!0}else await Et(y,rt,!1);let{activeElement:re}=document;if(await b,await a(),await a(),X!==u){_.reject(Error(`navigation aborted`));return}y.props.page&&M&&Object.assign(y.props.page,M);let ie=null;if(dt){let e=r?r.scroll:o?T():null;e?scrollTo(e.x,e.y):(ie=n.hash&&document.getElementById(en(n)))?ie.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==re&&document.activeElement!==document.body;!i&&!ae&&Xt(n,!ie),dt=!0,K=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=T()),U.forEach(e=>e(_.navigation)),t===`popstate`&&xt(Y),F.navigating.set(j.current=null)}async function Ht(e,t,n,r,i){return e.origin===ye&&e.pathname===location.pathname&&!ut?await It({status:r,error:n,url:e,route:t}):await I(e,i)}var Q={element:void 0,href:void 0};function Ut(){let e,t;R.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,w.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],w.tap)}R.addEventListener(`mousedown`,n),R.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Tt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Ce(e,R),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=we(r,x,z.hash);if(o||s)return;let c=D(r),l=a&&Bt(W.url)===Bt(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=w.tap;let e=await Rt(a,!1);if(!e)return;wt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Tt(a))}}function a(){r.disconnect();for(let e of R.querySelectorAll(`a`)){let{url:t,external:n,download:i}=we(e,x,z.hash);if(n||i)continue;let a=D(e);a.reload||(a.preload_code===w.viewport&&r.observe(e),a.preload_code===w.eager&&Tt(t))}}U.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=He(e),r=Ue(e);return z.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Wt(e){if(typeof e==`function`)B.push(e);else{let{href:t}=new URL(e,location.href);B.push(e=>e.href===t)}}function Gt(e,t){let n={[S]:J,[C]:Y,[ve]:A.url.href,[_e]:t};history.replaceState(n,``,be(e)),A.state=t,mt.$set({page:Xe(()=>Qt(A))})}function Kt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(St(),!K){let e=Zt(W,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};ct.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&St()}),navigator.connection?.saveData||Ut(),R.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ce(t.composedPath()[0],R);if(!n)return;let{url:r,external:i,target:a,download:o}=we(n,x,z.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=D(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(z.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Vt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=W.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Qe(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),R.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(O(r,x,!1))return;let i=e.target,a=D(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Yt){if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(X={},n===J)return;let r=N[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=W.url?m(location)===m(W.url):!1;if(o===Y&&(ft||s)){i!==A.state&&(A.state=i),e(a),N[J]=T(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),z.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[S]:++J,[C]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ze.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&F.navigating.set(j.current=null)});function e(e){W.url=A.url=e,F.page.set(Qt(A)),F.page.notify()}}async function qt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){ut=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await Rt(l,!1)||{}),d=tt.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Jt(r.uses)),Ot({loader:z.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:jt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Dt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await I(new URL(t.location,location.href));f=await It({status:He(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Et(f,e,p))}function Jt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Yt=!1;function Xt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=en(e);if(n&&document.getElementById(n)){let{x:r,y:i}=T();setTimeout(()=>{let a=history.state;Yt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Yt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Zt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:T()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Qt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function $t(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function en(e){let t;if(z.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Oe as a,A as i,vt as n,j as r,Gt as t};
@@ -1 +1 @@
1
- import"./ZAD2y5xJ.js";import{i as e}from"./QerT6gr3.js";var t={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};export{t};
1
+ import"./ZAD2y5xJ.js";import{i as e}from"./CsscK9Dm.js";var t={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};export{t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.D5bYt7iX.js","../chunks/ZAD2y5xJ.js","../chunks/xihTtKlq.js","../assets/0.B1NsRRrX.css","../nodes/1.D6GC5CeD.js","../chunks/BesB6AFH.js","../chunks/QerT6gr3.js","../nodes/2.SS1SkbCf.js"])))=>i.map(i=>d[i]);
2
- import{C as e,F as t,G as n,I as r,J as i,P as a,Q as o,R as s,S as c,T as l,U as u,V as d,W as f,Y as p,a as m,b as h,g,i as _,j as v,k as y,n as b,r as x,w as S,x as C,z as w}from"../chunks/ZAD2y5xJ.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=S(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=S(`<!> <!>`,1);function M(x,S){p(S,!0);let T=_(S,`components`,23,()=>[]),E=_(S,`data_0`,3,null),D=_(S,`data_1`,3,null);r(()=>S.stores.page.set(S.page)),t(()=>{S.stores,S.page,S.constructors,T(),S.form,E(),D(),S.stores.page.notify()});let O=f(!1),k=f(!1),M=f(null);b(()=>{let e=S.stores.page.subscribe(()=>{y(O)&&(u(k,!0),v().then(()=>{u(M,document.title||`untitled page`,!0)}))});return u(O,!0),e});let N=n(()=>S.constructors[1]);var P=j(),F=w(P),I=t=>{let r=n(()=>S.constructors[0]);var i=e(),a=w(i);g(a,()=>y(r),(t,n)=>{m(n(t,{get data(){return E()},get form(){return S.form},get params(){return S.page.params},children:(t,n)=>{var r=e(),i=w(r);g(i,()=>y(N),(e,t)=>{m(t(e,{get data(){return D()},get form(){return S.form},get params(){return S.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),c(t,r)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),c(t,i)},L=t=>{let r=n(()=>S.constructors[0]);var i=e(),a=w(i);g(a,()=>y(r),(e,t)=>{m(t(e,{get data(){return E()},get form(){return S.form},get params(){return S.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),c(t,i)};h(F,e=>{S.constructors[1]?e(I):e(L,-1)});var R=d(F,2),z=e=>{var t=A(),n=s(t),r=e=>{var t=l();a(()=>C(t,y(M))),c(e,t)};h(n,e=>{y(k)&&e(r)}),o(t),c(e,t)};h(R,e=>{y(O)&&e(z)}),c(x,P),i()}var N=x(M),P=[()=>O(()=>import(`../nodes/0.D5bYt7iX.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),()=>O(()=>import(`../nodes/1.D6GC5CeD.js`),__vite__mapDeps([4,1,2,5,6]),import.meta.url),()=>O(()=>import(`../nodes/2.SS1SkbCf.js`),__vite__mapDeps([7,1,6,2,5]),import.meta.url)],F=[],I={"/":[2]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.DHBUWbOo.js","../chunks/ZAD2y5xJ.js","../chunks/xihTtKlq.js","../assets/0.CocWI5K4.css","../nodes/1.Bink5luw.js","../chunks/KFjMNKuK.js","../chunks/CsscK9Dm.js","../nodes/2.U0ljz8ot.js"])))=>i.map(i=>d[i]);
2
+ import{C as e,F as t,G as n,I as r,J as i,P as a,Q as o,R as s,S as c,T as l,U as u,V as d,W as f,Y as p,a as m,b as h,g,i as _,j as v,k as y,n as b,r as x,w as S,x as C,z as w}from"../chunks/ZAD2y5xJ.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=S(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=S(`<!> <!>`,1);function M(x,S){p(S,!0);let T=_(S,`components`,23,()=>[]),E=_(S,`data_0`,3,null),D=_(S,`data_1`,3,null);r(()=>S.stores.page.set(S.page)),t(()=>{S.stores,S.page,S.constructors,T(),S.form,E(),D(),S.stores.page.notify()});let O=f(!1),k=f(!1),M=f(null);b(()=>{let e=S.stores.page.subscribe(()=>{y(O)&&(u(k,!0),v().then(()=>{u(M,document.title||`untitled page`,!0)}))});return u(O,!0),e});let N=n(()=>S.constructors[1]);var P=j(),F=w(P),I=t=>{let r=n(()=>S.constructors[0]);var i=e(),a=w(i);g(a,()=>y(r),(t,n)=>{m(n(t,{get data(){return E()},get form(){return S.form},get params(){return S.page.params},children:(t,n)=>{var r=e(),i=w(r);g(i,()=>y(N),(e,t)=>{m(t(e,{get data(){return D()},get form(){return S.form},get params(){return S.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),c(t,r)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),c(t,i)},L=t=>{let r=n(()=>S.constructors[0]);var i=e(),a=w(i);g(a,()=>y(r),(e,t)=>{m(t(e,{get data(){return E()},get form(){return S.form},get params(){return S.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),c(t,i)};h(F,e=>{S.constructors[1]?e(I):e(L,-1)});var R=d(F,2),z=e=>{var t=A(),n=s(t),r=e=>{var t=l();a(()=>C(t,y(M))),c(e,t)};h(n,e=>{y(k)&&e(r)}),o(t),c(e,t)};h(R,e=>{y(O)&&e(z)}),c(x,P),i()}var N=x(M),P=[()=>O(()=>import(`../nodes/0.DHBUWbOo.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),()=>O(()=>import(`../nodes/1.Bink5luw.js`),__vite__mapDeps([4,1,2,5,6]),import.meta.url),()=>O(()=>import(`../nodes/2.U0ljz8ot.js`),__vite__mapDeps([7,1,6,2,5]),import.meta.url)],F=[],I={"/":[2]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
@@ -0,0 +1 @@
1
+ import{a as e,n as t}from"../chunks/CsscK9Dm.js";export{e as load_css,t as start};
@@ -1 +1 @@
1
- import{B as e,J as t,P as n,S as r,V as i,Y as a,w as o,x as s,z as c}from"../chunks/ZAD2y5xJ.js";import"../chunks/xihTtKlq.js";import{t as l}from"../chunks/BesB6AFH.js";var u=o(`<h1> </h1> <p> </p>`,1);function d(o,d){a(d,!0);var f=u(),p=c(f),m=e(p,!0),h=i(p,2),g=e(h,!0);n(()=>{s(m,l.status),s(g,l.error?.message)}),r(o,f),t()}export{d as component};
1
+ import{B as e,J as t,P as n,S as r,V as i,Y as a,w as o,x as s,z as c}from"../chunks/ZAD2y5xJ.js";import"../chunks/xihTtKlq.js";import{t as l}from"../chunks/KFjMNKuK.js";var u=o(`<h1> </h1> <p> </p>`,1);function d(o,d){a(d,!0);var f=u(),p=c(f),m=e(p,!0),h=i(p,2),g=e(h,!0);n(()=>{s(m,l.status),s(g,l.error?.message)}),r(o,f),t()}export{d as component};
@@ -1,4 +1,4 @@
1
- import{B as e,C as t,D as n,E as r,F as i,G as a,H as o,J as s,O as c,P as l,Q as u,R as d,S as f,T as p,U as m,V as h,W as g,Y as _,Z as v,a as y,b,c as x,d as S,f as C,i as w,k as T,l as E,m as D,n as O,o as k,p as A,s as j,u as M,v as N,w as P,x as F,y as I,z as ee}from"../chunks/ZAD2y5xJ.js";import{t as te}from"../chunks/QerT6gr3.js";import"../chunks/xihTtKlq.js";import{t as L}from"../chunks/BesB6AFH.js";var R=`--:--:--.---`;function z(e,t=2){return String(Math.trunc(Math.abs(e))).padStart(t,`0`)}function ne(e){if(typeof e!=`number`||!Number.isFinite(e))return R;let t=new Date(e);return Number.isNaN(t.getTime())?R:`${`${z(t.getUTCHours())}:${z(t.getUTCMinutes())}:${z(t.getUTCSeconds())}`}.${z(t.getUTCMilliseconds(),3)}`}function B(e){if(typeof e!=`number`||!Number.isFinite(e))return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?`—`:t.toISOString()}function re(e){let t=e>=100?e.toFixed(0):e.toFixed(1);return t.endsWith(`.0`)?t.slice(0,-2):t}function ie(e){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return`—`;if(e<1024)return`${Math.trunc(e)} B`;let t=[`KiB`,`MiB`,`GiB`,`TiB`],n=e/1024,r=t[0];for(let e=1;e<t.length&&n>=1024;e+=1)n/=1024,r=t[e];return`${re(n)} ${r}`}function V(e){if(typeof e!=`number`||!Number.isFinite(e))return`0`;let t=Math.trunc(e);return(t<0?`-`:``)+String(Math.abs(t)).replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function ae(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=t.toLowerCase();return n.includes(`floci`)?`floci`:n.includes(`localstack`)?`localstack`:H(t)===`4566`?`floci`:`local emulator`}function H(e){return U(e)?.port||null}function U(e){try{return new URL(e)}catch{return null}}function oe(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=ae(t);return n===null?null:(U(t)?.hostname.toLowerCase()??t.toLowerCase()).startsWith(n)?t:`${n} ${t}`}var se=P(`<span data-testid="credentials-hint" class="text-[0.6875rem] text-neutral-500">dev creds</span>`),ce=P(`<span class="inline-flex items-center gap-1.5"><span data-testid="endpoint-badge" class="rounded-full border border-violet-900 bg-violet-950/60 px-2.5 py-1 text-xs font-medium text-violet-300"> </span> <!></span>`);function le(n,r){_(r,!0);let i=w(r,`endpoint`,3,null),o=w(r,`credentials`,3,null),c=a(()=>oe(i())),p=a(()=>o()===`emulator-default`),m=a(()=>T(p)?`Local emulator endpoint - using floci's throwaway credentials (no ambient AWS credentials found)`:`Local emulator endpoint`);var g=t(),v=ee(g),y=t=>{var n=ce(),r=d(n),i=e(r,!0),a=h(r,2),o=e=>{var t=se();f(e,t)};b(a,e=>{T(p)&&e(o)}),u(n),l(()=>{x(n,`title`,T(m)),x(r,`title`,T(m)),F(i,T(c))}),f(t,n)};b(v,e=>{T(c)!==null&&e(y)}),f(n,g),s()}var W={sidebarWidth:`watch-stream:sidebar-width`,prefixWidth:`watch-stream:prefix-width`,wrap:`watch-stream:wrap`,jsonView:`watch-stream:json-view`},G={defaultRem:22,minRem:16,maxVw:44},ue={defaultRem:14,minRem:4,maxRem:40};function K(e,t,n){let r=Math.min(t,n),i=Math.max(t,n);return Number.isNaN(e)?r:Math.min(Math.max(e,r),i)}function de(e,t,n,r){if(typeof e!=`string`||e.trim()===``)return K(t,n,r);let i=Number(e);return K(Number.isFinite(i)?i:t,n,r)}function fe(e){let{startWidth:t,startX:n,currentX:r,min:i,max:a}=e;return K(t+(r-n),i,a)}function q(e){let{width:t,key:n,step:r=16,min:i,max:a}=e;return K(n!==`ArrowLeft`&&n!==`ArrowRight`?t:t+(n===`ArrowLeft`?-r:r),i,a)}function pe(e,t=16){let n=e/t;return`${Number.isInteger(n)?n:Number(n.toFixed(3))}rem`}function J(e,t=16){return e*t}var Y=P(`<div role="separator" aria-orientation="vertical" tabindex="0"></div>`);function me(e,t){_(t,!0);let r=w(t,`class`,3,``),i=w(t,`style`,3,``),a=null;function o(e){a={x:e.clientX,width:t.width},e.currentTarget.setPointerCapture?.(e.pointerId),e.preventDefault()}function u(e){a!==null&&(t.onChange(fe({startWidth:a.width,startX:a.x,currentX:e.clientX,min:t.min,max:t.max})),e.preventDefault())}function d(e){a!==null&&(a=null,e.currentTarget.releasePointerCapture?.(e.pointerId),t.onCommit?.(t.width))}function p(e){let n=q({width:t.width,key:e.key,min:t.min,max:t.max});n!==t.width&&(e.preventDefault(),t.onChange(n),t.onCommit?.(n))}var m=Y();l(e=>{x(m,`aria-label`,t.label),x(m,`aria-valuemin`,t.min),x(m,`aria-valuemax`,t.max),x(m,`aria-valuenow`,e),x(m,`title`,`${t.label??``} (drag or use the arrow keys)`),x(m,`data-testid`,t.testId),A(m,1,`cursor-col-resize touch-none bg-transparent hover:bg-sky-500/30 focus:bg-sky-500/50 focus:outline-none ${r()??``}`),C(m,i())},[()=>Math.round(t.width)]),n(`pointerdown`,m,o),n(`pointermove`,m,u),n(`pointerup`,m,d),c(`pointercancel`,m,d),n(`keydown`,m,p),f(e,m),s()}r([`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var X=[`15m`,`1h`,`3h`,`12h`,`24h`,`5d`],he={"15m":`15 min`,"1h":`1 hour`,"3h":`3 hours`,"12h":`12 hours`,"24h":`24 hours`,"5d":`5 days`};function ge(e){return X.includes(e)}function Z(e){return ge(e)?he[e]:e}function Q(e){return String(e).padStart(2,`0`)}function _e(e){let t=new Date(e);return`${t.getFullYear()}-${Q(t.getMonth()+1)}-${Q(t.getDate())}T${Q(t.getHours())}:${Q(t.getMinutes())}`}function ve(e){if(typeof e!=`string`||e.trim()===``)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function $(e,t){let n=new Date(e),r=`${String(n.getHours()).padStart(2,`0`)}:${String(n.getMinutes()).padStart(2,`0`)}`;return new Date(t).toDateString()===n.toDateString()?r:`${n.toLocaleDateString(void 0,{day:`numeric`,month:`short`})} ${r}`}function ye(e,t){if(e===null||e.startTime===void 0)return{mode:`live`,label:`live`,title:`Tailing new events`,clamped:!1};let n=e.clamped===!0;if(e.mode!==`historic`||e.endTime===null||e.endTime===void 0)return{mode:`live`,label:`live`,title:`Live since ${$(e.startTime,t)}`,clamped:n};let r=$(e.startTime,t),i=$(e.endTime,t),a=e.preset===null||e.preset===void 0?null:Z(e.preset);return{mode:`historic`,label:a===null?`${r} → ${i}`:`${a} · ${r} → ${i}`,title:n?`Historic window, clamped to the last 14 days that CloudWatch Logs keeps`:`Historic window`,clamped:n}}var be=P(`<button type="button"> </button>`),xe=P(`<div class="flex flex-wrap items-center gap-1" role="group" aria-label="Historic range"><!> <button type="button" data-testid="preset-custom"> </button></div>`),Se=P(`<span class="text-xs text-amber-300" data-testid="range-loading">loading window…</span>`),Ce=P(`<span class="text-xs text-neutral-500"> </span>`),we=P(`<span class="text-xs text-red-300" role="alert" data-testid="custom-error"> </span>`),Te=P(`<div class="flex flex-wrap items-center gap-2 rounded-lg border border-neutral-800 bg-neutral-900/70 p-2" data-testid="custom-window"><label class="flex items-center gap-1 text-xs text-neutral-400">From <input type="datetime-local" data-testid="custom-from" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <label class="flex items-center gap-1 text-xs text-neutral-400">To <input type="datetime-local" data-testid="custom-to" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <button type="button" data-testid="custom-apply" class="rounded-md border border-sky-800 bg-sky-950/60 px-2 py-1 text-xs font-medium text-sky-200 hover:border-sky-600">Apply</button> <!></div>`),Ee=P(`<div class="flex flex-wrap items-center gap-2" data-testid="range-controls"><div class="flex items-center gap-1 rounded-lg border border-neutral-800 bg-neutral-900 p-0.5" role="group" aria-label="Tail mode"><button type="button" data-testid="mode-live">Live</button> <button type="button" data-testid="mode-historic">Historic</button></div> <!> <!> <!></div>`);function De(t,r){_(r,!0);let o=w(r,`mode`,3,`live`),c=w(r,`range`,3,`15m`),p=w(r,`from`,3,null),v=w(r,`to`,3,null),y=w(r,`disabled`,3,!1),S=w(r,`loading`,3,!1),C=g(!1),E=g(``),D=g(``),O=g(null);i(()=>{let e=p()??(v()??Date.now())-36e5,t=v()??Date.now();m(E,_e(e),!0),m(D,_e(t),!0),m(C,o()===`historic`&&c()===``&&p()!==null&&v()!==null,!0)});function M(e){e!==o()&&r.onApply?.({mode:e,range:e===`live`?``:c()===``?`15m`:c(),from:null,to:null})}function P(e){m(O,null),r.onApply?.({mode:`historic`,range:e,from:null,to:null})}function I(){m(O,null),m(C,!0)}function ee(){let e=ve(T(E)),t=ve(T(D));if(e===null||t===null){m(O,`Pick both a start and an end time.`);return}if(t<=e){m(O,`The end must be after the start.`);return}if(t-e>12096e5){m(O,`CloudWatch Logs only keeps 14 days.`);return}m(O,null),r.onApply?.({mode:`historic`,range:``,from:e,to:t})}let te=a(()=>o()===`historic`&&c()===``&&p()!==null&&v()!==null?`${_e(p()).replace(`T`,` `)} → ${_e(v()).replace(`T`,` `)}`:`Custom…`);var L=Ee(),R=d(L),z=d(R),ne=h(z,2);u(R);var B=h(R,2),re=t=>{var r=xe(),i=d(r);N(i,16,()=>X,e=>e,(t,r)=>{var i=be(),a=e(i,!0);l(()=>{x(i,`aria-pressed`,c()===r),x(i,`data-testid`,`preset-${r??``}`),i.disabled=y(),A(i,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===r?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`} disabled:opacity-40`),F(a,he[r])}),n(`click`,i,()=>P(r)),f(t,i)});var a=h(i,2),o=e(a,!0);u(r),l(()=>{x(a,`aria-pressed`,c()===``),a.disabled=y(),A(a,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===``?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`}`),F(o,T(te))}),n(`click`,a,I),f(t,r)};b(B,e=>{o()===`historic`&&e(re)});var ie=h(B,2),V=e=>{var t=Se();f(e,t)},ae=t=>{var n=Ce(),r=e(n);l(e=>F(r,`last ${e??``}`),[()=>Z(c())]),f(t,n)};b(ie,e=>{S()?e(V):o()===`historic`&&c()!==``&&e(ae,1)});var H=h(ie,2),U=t=>{var r=Te(),i=d(r),a=h(d(i));j(a),u(i);var o=h(i,2),s=h(d(o));j(s),u(o);var c=h(o,2),p=h(c,2),g=t=>{var n=we(),r=e(n,!0);l(()=>F(r,T(O))),f(t,n)};b(p,e=>{T(O)!==null&&e(g)}),u(r),k(a,()=>T(E),e=>m(E,e)),k(s,()=>T(D),e=>m(D,e)),n(`click`,c,ee),f(t,r)};b(H,e=>{T(C)&&o()===`historic`&&e(U)}),u(L),l(()=>{x(z,`aria-pressed`,o()===`live`),A(z,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`live`?`border-sky-700 bg-sky-950/60 text-sky-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`),x(ne,`aria-pressed`,o()===`historic`),A(ne,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`historic`?`border-amber-700 bg-amber-950/50 text-amber-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`)}),n(`click`,z,()=>M(`live`)),n(`click`,ne,()=>M(`historic`)),f(t,L),s()}r([`click`]);var Oe=`us-east-1.us-east-2.us-west-1.us-west-2.ca-central-1.ca-west-1.mx-central-1.sa-east-1.eu-west-1.eu-west-2.eu-west-3.eu-central-1.eu-central-2.eu-north-1.eu-south-1.eu-south-2.af-south-1.me-south-1.me-central-1.il-central-1.ap-east-1.ap-south-1.ap-south-2.ap-southeast-1.ap-southeast-2.ap-southeast-3.ap-southeast-4.ap-southeast-5.ap-southeast-6.ap-southeast-7.ap-northeast-1.ap-northeast-2.ap-northeast-3`.split(`.`),ke=class extends Error{status;code;details;constructor(e,t={}){super(e,{cause:t.cause}),this.name=`ApiError`,this.status=t.status??0,this.code=t.code,this.details=t.details}};function Ae(e,t){if(typeof e!=`object`||!e)return;let n=e[t];return typeof n==`string`?n:void 0}function je(e,t=`Unexpected API error`){return Ae(e,`error`)??t}function Me(e){let t=new URLSearchParams;e.region&&t.set(`region`,e.region),e.prefix&&t.set(`prefix`,e.prefix),typeof e.limit==`number`&&Number.isFinite(e.limit)&&t.set(`limit`,String(e.limit));let n=t.toString();return n===``?`/api/log-groups`:`/api/log-groups?${n}`}function Ne(e){return e instanceof Error&&e.name===`AbortError`}async function Pe(e,t){let n=t.fetchImpl??fetch,r;try{r=await n(e,{headers:{accept:`application/json`},signal:t.signal})}catch(t){throw Ne(t)?t:new ke(`Could not reach ${e}.`,{cause:t})}let i=await r.text(),a=null;if(i.trim()!==``)try{a=JSON.parse(i)}catch{a=null}if(!r.ok)throw new ke(je(a,`Request to ${e} failed with ${r.status}.`),{status:r.status,code:Ae(a,`code`),details:Ae(a,`details`)});return a}function Fe(e={}){return Pe(`/api/regions`,e)}function Ie(e={}){return Pe(`/api/health`,e)}function Le(e){return Pe(Me(e),e)}function Re(e){return`No log groups found in ${e}. Start floci and run \`pnpm seed\` to create sample groups.`}function ze(e){return e.trim().replace(/\.+$/,``)}function Be(e,t){if(t instanceof ke){let n=t.details?` ${t.details}`:``;return`Could not list log groups in ${e}: ${ze(t.message)}.${n}`}return`Could not reach the watch-stream API for ${e}. ${t instanceof Error&&t.message!==``?t.message:String(t)}`}function Ve(e,t,n){return`${n} (${t===null||t===``?e:`${t} in ${e}`})`}var He=P(`<p role="alert" data-testid="group-error" class="rounded-md border border-red-900 bg-red-950/50 px-3 py-2 text-xs leading-5 text-red-300"> </p>`),Ue=P(`<div class="h-5 animate-pulse rounded bg-neutral-800/80"></div>`),We=P(`<div class="flex flex-col gap-2" data-testid="group-loading" aria-busy="true"><!> <p class="text-xs text-neutral-500">Loading log groups…</p></div>`),Ge=P(`<p data-testid="group-empty" class="rounded-md border border-neutral-800 bg-neutral-900/60 px-3 py-2 text-xs leading-5 text-neutral-400"> </p>`),Ke=P(`<p data-testid="group-no-match" class="px-1 py-2 text-xs text-neutral-500"> </p>`),qe=P(`<span class="shrink-0 text-[0.6875rem] text-neutral-500"> </span>`),Je=P(`<li><button type="button" data-testid="group-row"><span class="truncate font-mono"> </span> <!></button></li>`),Ye=P(`<p class="text-[0.6875rem] text-neutral-500" data-testid="group-truncated"> </p>`),Xe=P(`<ul class="flex min-h-0 flex-1 flex-col gap-1 overflow-y-auto pr-1"></ul> <!>`,1),Ze=P(`<section class="flex min-h-0 flex-1 flex-col gap-3"><div class="flex items-center justify-between gap-2"><div class="flex items-baseline gap-2"><h2 class="text-sm font-semibold text-neutral-200">Log groups</h2> <span class="text-xs text-neutral-500" data-testid="group-count"> </span></div> <button type="button" class="rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:text-neutral-100 disabled:cursor-not-allowed disabled:opacity-50"> </button></div> <div class="flex flex-col gap-1.5"><label class="sr-only" for="group-search">Search log groups</label> <input id="group-search" type="search" placeholder="Search log groups" class="w-full rounded-md border border-neutral-800 bg-neutral-900 px-2.5 py-1.5 text-sm text-neutral-100 outline-none transition-colors placeholder:text-neutral-600 hover:border-neutral-700 focus:border-sky-600"/></div> <!></section>`);function Qe(t,r){_(r,!0);let i=w(r,`groups`,19,()=>[]),o=w(r,`region`,3,``),c=w(r,`selected`,3,null),p=w(r,`loading`,3,!1),y=w(r,`error`,3,null),S=w(r,`maxRows`,3,500),C=g(``),D=a(()=>i().filter(e=>e.name.toLowerCase().includes(T(C).trim().toLowerCase()))),O=a(()=>T(D).slice(0,S())),k=a(()=>T(D).length>T(O).length),M=a(()=>T(C).trim());function P(e){return e===c()?`border-sky-800 bg-sky-950/50 text-sky-200`:`border-transparent bg-neutral-900/60 text-neutral-300 hover:border-neutral-800 hover:text-neutral-100`}var te=Ze(),L=d(te),R=d(L),z=h(d(R),2),ne=e(z);u(R);var B=h(R,2),re=e(B,!0);u(L);var ae=h(L,2),H=h(d(ae),2);j(H),u(ae);var U=h(ae,2),oe=t=>{var n=He(),r=e(n,!0);l(()=>F(r,y())),f(t,n)},se=e=>{var t=We(),n=d(t);N(n,16,()=>Array.from({length:5}),I,(e,t)=>{var n=Ue();f(e,n)}),v(2),u(t),f(e,t)},ce=t=>{var n=Ge(),r=e(n,!0);l(e=>F(r,e),[()=>Re(o())]),f(t,n)},le=t=>{var n=Ke(),r=e(n);l(()=>F(r,`No log groups match “${T(M)??``}”.`)),f(t,n)},W=t=>{var i=Xe(),a=ee(i);N(a,21,()=>T(O),e=>e.arn??e.name,(t,i)=>{var a=Je(),o=d(a),s=d(o),p=e(s,!0),m=h(s,2),g=t=>{var n=qe(),r=e(n,!0);l(e=>F(r,e),[()=>ie(T(i).storedBytes)]),f(t,n)};b(m,e=>{T(i).storedBytes!==void 0&&e(g)}),u(o),u(a),l(e=>{x(o,`aria-current`,T(i).name===c()?`true`:void 0),A(o,1,`flex w-full items-center justify-between gap-2 rounded-md border px-2.5 py-1.5 text-left text-xs transition-colors ${e??``}`),F(p,T(i).name)},[()=>P(T(i).name)]),n(`click`,o,()=>r.onSelect?.(T(i).name)),f(t,a)}),u(a);var o=h(a,2),s=t=>{var n=Ye(),r=e(n);l((e,t)=>F(r,`Showing first ${e??``} of ${t??``} groups.`),[()=>V(S()),()=>V(T(D).length)]),f(t,n)};b(o,e=>{T(k)&&e(s)}),f(t,i)};b(U,e=>{y()!==null&&y()!==``?e(oe):p()&&i().length===0?e(se,1):i().length===0?e(ce,2):T(O).length===0?e(le,3):e(W,-1)}),u(te),l((e,t)=>{F(ne,`${e??``} of ${t??``}`),B.disabled=p(),F(re,p()?`Refreshing…`:`Refresh`),E(H,T(C))},[()=>V(T(D).length),()=>V(i().length)]),n(`click`,B,()=>r.onRefresh?.()),n(`input`,H,e=>m(C,e.currentTarget.value,!0)),f(t,te),s()}r([`click`,`input`]);var $e=P(`<span data-testid="status-badge"><span aria-hidden="true"></span> </span>`);function et(e,t){let n={idle:`idle`,connecting:`connecting`,live:`live`,reconnecting:`reconnecting`,error:`error`,ended:`ended`},r={idle:`border-neutral-700 bg-neutral-800/60 text-neutral-400`,connecting:`border-sky-900 bg-sky-950/70 text-sky-300`,live:`border-emerald-900 bg-emerald-950/70 text-emerald-300`,reconnecting:`border-amber-900 bg-amber-950/70 text-amber-300`,error:`border-red-900 bg-red-950/70 text-red-300`,ended:`border-neutral-700 bg-neutral-800/60 text-neutral-400`},i={idle:`bg-neutral-500`,connecting:`bg-sky-400 animate-pulse`,live:`bg-emerald-400`,reconnecting:`bg-amber-400 animate-pulse`,error:`bg-red-400`,ended:`bg-neutral-500`},o=a(()=>r[t.status]),s=a(()=>i[t.status]),c=a(()=>n[t.status]);var p=$e(),m=d(p),g=h(m);u(p),l(()=>{x(p,`data-status`,t.status),A(p,1,`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs font-medium ${T(o)??``}`),A(m,1,`size-1.5 rounded-full ${T(s)??``}`),F(g,` ${T(c)??``}`)}),f(e,p)}var tt=5e3,nt=/\b(ERROR|FATAL|CRITICAL|CRIT|PANIC|EXCEPTION|TRACEBACK|SEVERE|FAILED|FAILURE)\b/,rt=/\b(WARN|WARNING)\b/,it=/\b(DEBUG|TRACE|VERBOSE)\b/;function at(e){let t=(e??``).toUpperCase();return nt.test(t)?`error`:rt.test(t)?`warn`:it.test(t)?`debug`:`info`}function ot(e){switch(e){case`error`:return`text-red-400`;case`warn`:return`text-amber-300`;case`debug`:return`text-neutral-500`;default:return`text-neutral-200`}}function st(e,t){return`${e.id??`no-id`}:${e.timestamp}:${t}`}function ct(e,t){let n=(t??``).trim().toLowerCase();return n===``||`${e.message??``} ${e.streamName??``}`.toLowerCase().includes(n)}function lt(e,t){return(t??``).trim()===``?e.slice():e.filter(e=>ct(e,t))}function ut(e){return Array.from({length:e})}var dt=class{capacity;#e;#t=0;#n=0;#r=0;constructor(e=tt){if(!Number.isInteger(e)||e<=0)throw RangeError(`capacity must be a positive integer, received ${e}`);this.capacity=e,this.#e=ut(e)}get size(){return this.#n}get dropped(){return this.#r}get full(){return this.#n===this.capacity}push(e){this.#n===this.capacity&&(this.#r+=1,this.#t=(this.#t+1)%this.capacity,--this.#n);let t=(this.#t+this.#n)%this.capacity;this.#e[t]=e,this.#n+=1}pushMany(e){for(let t of e)this.push(t)}toArray(){let e=ut(this.#n);for(let t=0;t<this.#n;t+=1)e[t]=this.#e[(this.#t+t)%this.capacity];return e}first(){return this.#n===0?void 0:this.#e[this.#t]}last(){return this.#n===0?void 0:this.#e[(this.#t+this.#n-1)%this.capacity]}clear(){this.#e=ut(this.capacity),this.#t=0,this.#n=0,this.#r=0}},ft=class{buffer;#e;#t=!1;constructor(e=tt){this.buffer=new dt(e),this.#e=new dt(e)}get paused(){return this.#t}get size(){return this.buffer.size}get pendingCount(){return this.#e.size}get droppedCount(){return this.buffer.dropped}push(e){if(this.#t){this.#e.pushMany(e);return}this.buffer.pushMany(e)}setPaused(e){return e===this.#t?[]:(this.#t=e,e?[]:this.flush())}pause(){this.#t=!0}resume(){return this.#t=!1,this.flush()}flush(){let e=this.#e.toArray();return this.#e.clear(),this.buffer.pushMany(e),e}toArray(){return this.buffer.toArray()}clear(){this.buffer.clear(),this.#e.clear()}};function pt(e){if(typeof e!=`string`)return null;let t=e.trim();if(t.length===0)return null;let n=t[0];if(n!==`{`&&n!==`[`)return null;try{let e=JSON.parse(t);return typeof e!=`object`||!e?null:e}catch{return null}}function mt(e,t={}){let{prettyJson:n=!0}=t,r=pt(e);return r===null||!n?{text:e,isJson:r!==null,value:r}:{text:JSON.stringify(r,null,2),isJson:!0,value:r}}var ht=/^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function gt(e){let t=[],n=0,r=(e,n)=>{n.length>0&&t.push({type:e,text:n})};for(;n<e.length;){let t=e[n];if(t===` `||t===`
1
+ import{B as e,C as t,D as n,E as r,F as i,G as a,H as o,J as s,O as c,P as l,Q as u,R as d,S as f,T as p,U as m,V as h,W as g,Y as _,Z as v,a as y,b,c as x,d as S,f as C,i as w,k as T,l as E,m as D,n as O,o as k,p as A,s as j,u as M,v as N,w as P,x as F,y as I,z as ee}from"../chunks/ZAD2y5xJ.js";import{t as te}from"../chunks/CsscK9Dm.js";import"../chunks/xihTtKlq.js";import{t as L}from"../chunks/KFjMNKuK.js";var R=`--:--:--.---`;function z(e,t=2){return String(Math.trunc(Math.abs(e))).padStart(t,`0`)}function ne(e){if(typeof e!=`number`||!Number.isFinite(e))return R;let t=new Date(e);return Number.isNaN(t.getTime())?R:`${`${z(t.getUTCHours())}:${z(t.getUTCMinutes())}:${z(t.getUTCSeconds())}`}.${z(t.getUTCMilliseconds(),3)}`}function B(e){if(typeof e!=`number`||!Number.isFinite(e))return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?`—`:t.toISOString()}function re(e){let t=e>=100?e.toFixed(0):e.toFixed(1);return t.endsWith(`.0`)?t.slice(0,-2):t}function ie(e){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return`—`;if(e<1024)return`${Math.trunc(e)} B`;let t=[`KiB`,`MiB`,`GiB`,`TiB`],n=e/1024,r=t[0];for(let e=1;e<t.length&&n>=1024;e+=1)n/=1024,r=t[e];return`${re(n)} ${r}`}function V(e){if(typeof e!=`number`||!Number.isFinite(e))return`0`;let t=Math.trunc(e);return(t<0?`-`:``)+String(Math.abs(t)).replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function ae(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=t.toLowerCase();return n.includes(`floci`)?`floci`:n.includes(`localstack`)?`localstack`:H(t)===`4566`?`floci`:`local emulator`}function H(e){return U(e)?.port||null}function U(e){try{return new URL(e)}catch{return null}}function oe(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=ae(t);return n===null?null:(U(t)?.hostname.toLowerCase()??t.toLowerCase()).startsWith(n)?t:`${n} ${t}`}var se=P(`<span data-testid="credentials-hint" class="text-[0.6875rem] text-neutral-500">dev creds</span>`),ce=P(`<span class="inline-flex items-center gap-1.5"><span data-testid="endpoint-badge" class="rounded-full border border-violet-900 bg-violet-950/60 px-2.5 py-1 text-xs font-medium text-violet-300"> </span> <!></span>`);function le(n,r){_(r,!0);let i=w(r,`endpoint`,3,null),o=w(r,`credentials`,3,null),c=a(()=>oe(i())),p=a(()=>o()===`emulator-default`),m=a(()=>T(p)?`Local emulator endpoint - using floci's throwaway credentials (no ambient AWS credentials found)`:`Local emulator endpoint`);var g=t(),v=ee(g),y=t=>{var n=ce(),r=d(n),i=e(r,!0),a=h(r,2),o=e=>{var t=se();f(e,t)};b(a,e=>{T(p)&&e(o)}),u(n),l(()=>{x(n,`title`,T(m)),x(r,`title`,T(m)),F(i,T(c))}),f(t,n)};b(v,e=>{T(c)!==null&&e(y)}),f(n,g),s()}var W={sidebarWidth:`watch-stream:sidebar-width`,prefixWidth:`watch-stream:prefix-width`,wrap:`watch-stream:wrap`,jsonView:`watch-stream:json-view`},G={defaultRem:22,minRem:16,maxVw:44},ue={defaultRem:14,minRem:4,maxRem:40};function K(e,t,n){let r=Math.min(t,n),i=Math.max(t,n);return Number.isNaN(e)?r:Math.min(Math.max(e,r),i)}function de(e,t,n,r){if(typeof e!=`string`||e.trim()===``)return K(t,n,r);let i=Number(e);return K(Number.isFinite(i)?i:t,n,r)}function fe(e){let{startWidth:t,startX:n,currentX:r,min:i,max:a}=e;return K(t+(r-n),i,a)}function q(e){let{width:t,key:n,step:r=16,min:i,max:a}=e;return K(n!==`ArrowLeft`&&n!==`ArrowRight`?t:t+(n===`ArrowLeft`?-r:r),i,a)}function pe(e,t=16){let n=e/t;return`${Number.isInteger(n)?n:Number(n.toFixed(3))}rem`}function J(e,t=16){return e*t}var Y=P(`<div role="separator" aria-orientation="vertical" tabindex="0"></div>`);function me(e,t){_(t,!0);let r=w(t,`class`,3,``),i=w(t,`style`,3,``),a=null;function o(e){a={x:e.clientX,width:t.width},e.currentTarget.setPointerCapture?.(e.pointerId),e.preventDefault()}function u(e){a!==null&&(t.onChange(fe({startWidth:a.width,startX:a.x,currentX:e.clientX,min:t.min,max:t.max})),e.preventDefault())}function d(e){a!==null&&(a=null,e.currentTarget.releasePointerCapture?.(e.pointerId),t.onCommit?.(t.width))}function p(e){let n=q({width:t.width,key:e.key,min:t.min,max:t.max});n!==t.width&&(e.preventDefault(),t.onChange(n),t.onCommit?.(n))}var m=Y();l(e=>{x(m,`aria-label`,t.label),x(m,`aria-valuemin`,t.min),x(m,`aria-valuemax`,t.max),x(m,`aria-valuenow`,e),x(m,`title`,`${t.label??``} (drag or use the arrow keys)`),x(m,`data-testid`,t.testId),A(m,1,`cursor-col-resize touch-none bg-transparent hover:bg-sky-500/30 focus:bg-sky-500/50 focus:outline-none ${r()??``}`),C(m,i())},[()=>Math.round(t.width)]),n(`pointerdown`,m,o),n(`pointermove`,m,u),n(`pointerup`,m,d),c(`pointercancel`,m,d),n(`keydown`,m,p),f(e,m),s()}r([`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var X=[`15m`,`1h`,`3h`,`12h`,`24h`,`5d`],he={"15m":`15 min`,"1h":`1 hour`,"3h":`3 hours`,"12h":`12 hours`,"24h":`24 hours`,"5d":`5 days`};function ge(e){return X.includes(e)}function Z(e){return ge(e)?he[e]:e}function Q(e){return String(e).padStart(2,`0`)}function _e(e){let t=new Date(e);return`${t.getFullYear()}-${Q(t.getMonth()+1)}-${Q(t.getDate())}T${Q(t.getHours())}:${Q(t.getMinutes())}`}function ve(e){if(typeof e!=`string`||e.trim()===``)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function $(e,t){let n=new Date(e),r=`${String(n.getHours()).padStart(2,`0`)}:${String(n.getMinutes()).padStart(2,`0`)}`;return new Date(t).toDateString()===n.toDateString()?r:`${n.toLocaleDateString(void 0,{day:`numeric`,month:`short`})} ${r}`}function ye(e,t){if(e===null||e.startTime===void 0)return{mode:`live`,label:`live`,title:`Tailing new events`,clamped:!1};let n=e.clamped===!0;if(e.mode!==`historic`||e.endTime===null||e.endTime===void 0)return{mode:`live`,label:`live`,title:`Live since ${$(e.startTime,t)}`,clamped:n};let r=$(e.startTime,t),i=$(e.endTime,t),a=e.preset===null||e.preset===void 0?null:Z(e.preset);return{mode:`historic`,label:a===null?`${r} → ${i}`:`${a} · ${r} → ${i}`,title:n?`Historic window, clamped to the last 14 days that CloudWatch Logs keeps`:`Historic window`,clamped:n}}var be=P(`<button type="button"> </button>`),xe=P(`<div class="flex flex-wrap items-center gap-1" role="group" aria-label="Historic range"><!> <button type="button" data-testid="preset-custom"> </button></div>`),Se=P(`<span class="text-xs text-amber-300" data-testid="range-loading">loading window…</span>`),Ce=P(`<span class="text-xs text-neutral-500"> </span>`),we=P(`<span class="text-xs text-red-300" role="alert" data-testid="custom-error"> </span>`),Te=P(`<div class="flex flex-wrap items-center gap-2 rounded-lg border border-neutral-800 bg-neutral-900/70 p-2" data-testid="custom-window"><label class="flex items-center gap-1 text-xs text-neutral-400">From <input type="datetime-local" data-testid="custom-from" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <label class="flex items-center gap-1 text-xs text-neutral-400">To <input type="datetime-local" data-testid="custom-to" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <button type="button" data-testid="custom-apply" class="rounded-md border border-sky-800 bg-sky-950/60 px-2 py-1 text-xs font-medium text-sky-200 hover:border-sky-600">Apply</button> <!></div>`),Ee=P(`<div class="flex flex-wrap items-center gap-2" data-testid="range-controls"><div class="flex items-center gap-1 rounded-lg border border-neutral-800 bg-neutral-900 p-0.5" role="group" aria-label="Tail mode"><button type="button" data-testid="mode-live">Live</button> <button type="button" data-testid="mode-historic">Historic</button></div> <!> <!> <!></div>`);function De(t,r){_(r,!0);let o=w(r,`mode`,3,`live`),c=w(r,`range`,3,`15m`),p=w(r,`from`,3,null),v=w(r,`to`,3,null),y=w(r,`disabled`,3,!1),S=w(r,`loading`,3,!1),C=g(!1),E=g(``),D=g(``),O=g(null);i(()=>{let e=p()??(v()??Date.now())-36e5,t=v()??Date.now();m(E,_e(e),!0),m(D,_e(t),!0),m(C,o()===`historic`&&c()===``&&p()!==null&&v()!==null,!0)});function M(e){e!==o()&&r.onApply?.({mode:e,range:e===`live`?``:c()===``?`15m`:c(),from:null,to:null})}function P(e){m(O,null),r.onApply?.({mode:`historic`,range:e,from:null,to:null})}function I(){m(O,null),m(C,!0)}function ee(){let e=ve(T(E)),t=ve(T(D));if(e===null||t===null){m(O,`Pick both a start and an end time.`);return}if(t<=e){m(O,`The end must be after the start.`);return}if(t-e>12096e5){m(O,`CloudWatch Logs only keeps 14 days.`);return}m(O,null),r.onApply?.({mode:`historic`,range:``,from:e,to:t})}let te=a(()=>o()===`historic`&&c()===``&&p()!==null&&v()!==null?`${_e(p()).replace(`T`,` `)} → ${_e(v()).replace(`T`,` `)}`:`Custom…`);var L=Ee(),R=d(L),z=d(R),ne=h(z,2);u(R);var B=h(R,2),re=t=>{var r=xe(),i=d(r);N(i,16,()=>X,e=>e,(t,r)=>{var i=be(),a=e(i,!0);l(()=>{x(i,`aria-pressed`,c()===r),x(i,`data-testid`,`preset-${r??``}`),i.disabled=y(),A(i,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===r?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`} disabled:opacity-40`),F(a,he[r])}),n(`click`,i,()=>P(r)),f(t,i)});var a=h(i,2),o=e(a,!0);u(r),l(()=>{x(a,`aria-pressed`,c()===``),a.disabled=y(),A(a,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===``?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`}`),F(o,T(te))}),n(`click`,a,I),f(t,r)};b(B,e=>{o()===`historic`&&e(re)});var ie=h(B,2),V=e=>{var t=Se();f(e,t)},ae=t=>{var n=Ce(),r=e(n);l(e=>F(r,`last ${e??``}`),[()=>Z(c())]),f(t,n)};b(ie,e=>{S()?e(V):o()===`historic`&&c()!==``&&e(ae,1)});var H=h(ie,2),U=t=>{var r=Te(),i=d(r),a=h(d(i));j(a),u(i);var o=h(i,2),s=h(d(o));j(s),u(o);var c=h(o,2),p=h(c,2),g=t=>{var n=we(),r=e(n,!0);l(()=>F(r,T(O))),f(t,n)};b(p,e=>{T(O)!==null&&e(g)}),u(r),k(a,()=>T(E),e=>m(E,e)),k(s,()=>T(D),e=>m(D,e)),n(`click`,c,ee),f(t,r)};b(H,e=>{T(C)&&o()===`historic`&&e(U)}),u(L),l(()=>{x(z,`aria-pressed`,o()===`live`),A(z,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`live`?`border-sky-700 bg-sky-950/60 text-sky-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`),x(ne,`aria-pressed`,o()===`historic`),A(ne,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`historic`?`border-amber-700 bg-amber-950/50 text-amber-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`)}),n(`click`,z,()=>M(`live`)),n(`click`,ne,()=>M(`historic`)),f(t,L),s()}r([`click`]);var Oe=`us-east-1.us-east-2.us-west-1.us-west-2.ca-central-1.ca-west-1.mx-central-1.sa-east-1.eu-west-1.eu-west-2.eu-west-3.eu-central-1.eu-central-2.eu-north-1.eu-south-1.eu-south-2.af-south-1.me-south-1.me-central-1.il-central-1.ap-east-1.ap-south-1.ap-south-2.ap-southeast-1.ap-southeast-2.ap-southeast-3.ap-southeast-4.ap-southeast-5.ap-southeast-6.ap-southeast-7.ap-northeast-1.ap-northeast-2.ap-northeast-3`.split(`.`),ke=class extends Error{status;code;details;constructor(e,t={}){super(e,{cause:t.cause}),this.name=`ApiError`,this.status=t.status??0,this.code=t.code,this.details=t.details}};function Ae(e,t){if(typeof e!=`object`||!e)return;let n=e[t];return typeof n==`string`?n:void 0}function je(e,t=`Unexpected API error`){return Ae(e,`error`)??t}function Me(e){let t=new URLSearchParams;e.region&&t.set(`region`,e.region),e.prefix&&t.set(`prefix`,e.prefix),typeof e.limit==`number`&&Number.isFinite(e.limit)&&t.set(`limit`,String(e.limit));let n=t.toString();return n===``?`/api/log-groups`:`/api/log-groups?${n}`}function Ne(e){return e instanceof Error&&e.name===`AbortError`}async function Pe(e,t){let n=t.fetchImpl??fetch,r;try{r=await n(e,{headers:{accept:`application/json`},signal:t.signal})}catch(t){throw Ne(t)?t:new ke(`Could not reach ${e}.`,{cause:t})}let i=await r.text(),a=null;if(i.trim()!==``)try{a=JSON.parse(i)}catch{a=null}if(!r.ok)throw new ke(je(a,`Request to ${e} failed with ${r.status}.`),{status:r.status,code:Ae(a,`code`),details:Ae(a,`details`)});return a}function Fe(e={}){return Pe(`/api/regions`,e)}function Ie(e={}){return Pe(`/api/health`,e)}function Le(e){return Pe(Me(e),e)}function Re(e){return`No log groups found in ${e}. Start floci and run \`pnpm seed\` to create sample groups.`}function ze(e){return e.trim().replace(/\.+$/,``)}function Be(e,t){if(t instanceof ke){let n=t.details?` ${t.details}`:``;return`Could not list log groups in ${e}: ${ze(t.message)}.${n}`}return`Could not reach the watch-stream API for ${e}. ${t instanceof Error&&t.message!==``?t.message:String(t)}`}function Ve(e,t,n){return`${n} (${t===null||t===``?e:`${t} in ${e}`})`}var He=P(`<p role="alert" data-testid="group-error" class="rounded-md border border-red-900 bg-red-950/50 px-3 py-2 text-xs leading-5 text-red-300"> </p>`),Ue=P(`<div class="h-5 animate-pulse rounded bg-neutral-800/80"></div>`),We=P(`<div class="flex flex-col gap-2" data-testid="group-loading" aria-busy="true"><!> <p class="text-xs text-neutral-500">Loading log groups…</p></div>`),Ge=P(`<p data-testid="group-empty" class="rounded-md border border-neutral-800 bg-neutral-900/60 px-3 py-2 text-xs leading-5 text-neutral-400"> </p>`),Ke=P(`<p data-testid="group-no-match" class="px-1 py-2 text-xs text-neutral-500"> </p>`),qe=P(`<span class="shrink-0 text-[0.6875rem] text-neutral-500"> </span>`),Je=P(`<li><button type="button" data-testid="group-row"><span class="truncate font-mono"> </span> <!></button></li>`),Ye=P(`<p class="text-[0.6875rem] text-neutral-500" data-testid="group-truncated"> </p>`),Xe=P(`<ul class="flex min-h-0 flex-1 flex-col gap-1 overflow-y-auto pr-1"></ul> <!>`,1),Ze=P(`<section class="flex min-h-0 flex-1 flex-col gap-3"><div class="flex items-center justify-between gap-2"><div class="flex items-baseline gap-2"><h2 class="text-sm font-semibold text-neutral-200">Log groups</h2> <span class="text-xs text-neutral-500" data-testid="group-count"> </span></div> <button type="button" class="rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:text-neutral-100 disabled:cursor-not-allowed disabled:opacity-50"> </button></div> <div class="flex flex-col gap-1.5"><label class="sr-only" for="group-search">Search log groups</label> <input id="group-search" type="search" placeholder="Search log groups" class="w-full rounded-md border border-neutral-800 bg-neutral-900 px-2.5 py-1.5 text-sm text-neutral-100 outline-none transition-colors placeholder:text-neutral-600 hover:border-neutral-700 focus:border-sky-600"/></div> <!></section>`);function Qe(t,r){_(r,!0);let i=w(r,`groups`,19,()=>[]),o=w(r,`region`,3,``),c=w(r,`selected`,3,null),p=w(r,`loading`,3,!1),y=w(r,`error`,3,null),S=w(r,`maxRows`,3,500),C=g(``),D=a(()=>i().filter(e=>e.name.toLowerCase().includes(T(C).trim().toLowerCase()))),O=a(()=>T(D).slice(0,S())),k=a(()=>T(D).length>T(O).length),M=a(()=>T(C).trim());function P(e){return e===c()?`border-sky-800 bg-sky-950/50 text-sky-200`:`border-transparent bg-neutral-900/60 text-neutral-300 hover:border-neutral-800 hover:text-neutral-100`}var te=Ze(),L=d(te),R=d(L),z=h(d(R),2),ne=e(z);u(R);var B=h(R,2),re=e(B,!0);u(L);var ae=h(L,2),H=h(d(ae),2);j(H),u(ae);var U=h(ae,2),oe=t=>{var n=He(),r=e(n,!0);l(()=>F(r,y())),f(t,n)},se=e=>{var t=We(),n=d(t);N(n,16,()=>Array.from({length:5}),I,(e,t)=>{var n=Ue();f(e,n)}),v(2),u(t),f(e,t)},ce=t=>{var n=Ge(),r=e(n,!0);l(e=>F(r,e),[()=>Re(o())]),f(t,n)},le=t=>{var n=Ke(),r=e(n);l(()=>F(r,`No log groups match “${T(M)??``}”.`)),f(t,n)},W=t=>{var i=Xe(),a=ee(i);N(a,21,()=>T(O),e=>e.arn??e.name,(t,i)=>{var a=Je(),o=d(a),s=d(o),p=e(s,!0),m=h(s,2),g=t=>{var n=qe(),r=e(n,!0);l(e=>F(r,e),[()=>ie(T(i).storedBytes)]),f(t,n)};b(m,e=>{T(i).storedBytes!==void 0&&e(g)}),u(o),u(a),l(e=>{x(o,`aria-current`,T(i).name===c()?`true`:void 0),A(o,1,`flex w-full items-center justify-between gap-2 rounded-md border px-2.5 py-1.5 text-left text-xs transition-colors ${e??``}`),F(p,T(i).name)},[()=>P(T(i).name)]),n(`click`,o,()=>r.onSelect?.(T(i).name)),f(t,a)}),u(a);var o=h(a,2),s=t=>{var n=Ye(),r=e(n);l((e,t)=>F(r,`Showing first ${e??``} of ${t??``} groups.`),[()=>V(S()),()=>V(T(D).length)]),f(t,n)};b(o,e=>{T(k)&&e(s)}),f(t,i)};b(U,e=>{y()!==null&&y()!==``?e(oe):p()&&i().length===0?e(se,1):i().length===0?e(ce,2):T(O).length===0?e(le,3):e(W,-1)}),u(te),l((e,t)=>{F(ne,`${e??``} of ${t??``}`),B.disabled=p(),F(re,p()?`Refreshing…`:`Refresh`),E(H,T(C))},[()=>V(T(D).length),()=>V(i().length)]),n(`click`,B,()=>r.onRefresh?.()),n(`input`,H,e=>m(C,e.currentTarget.value,!0)),f(t,te),s()}r([`click`,`input`]);var $e=P(`<span data-testid="status-badge"><span aria-hidden="true"></span> </span>`);function et(e,t){let n={idle:`idle`,connecting:`connecting`,live:`live`,reconnecting:`reconnecting`,error:`error`,ended:`ended`},r={idle:`border-neutral-700 bg-neutral-800/60 text-neutral-400`,connecting:`border-sky-900 bg-sky-950/70 text-sky-300`,live:`border-emerald-900 bg-emerald-950/70 text-emerald-300`,reconnecting:`border-amber-900 bg-amber-950/70 text-amber-300`,error:`border-red-900 bg-red-950/70 text-red-300`,ended:`border-neutral-700 bg-neutral-800/60 text-neutral-400`},i={idle:`bg-neutral-500`,connecting:`bg-sky-400 animate-pulse`,live:`bg-emerald-400`,reconnecting:`bg-amber-400 animate-pulse`,error:`bg-red-400`,ended:`bg-neutral-500`},o=a(()=>r[t.status]),s=a(()=>i[t.status]),c=a(()=>n[t.status]);var p=$e(),m=d(p),g=h(m);u(p),l(()=>{x(p,`data-status`,t.status),A(p,1,`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs font-medium ${T(o)??``}`),A(m,1,`size-1.5 rounded-full ${T(s)??``}`),F(g,` ${T(c)??``}`)}),f(e,p)}var tt=5e3,nt=/\b(ERROR|FATAL|CRITICAL|CRIT|PANIC|EXCEPTION|TRACEBACK|SEVERE|FAILED|FAILURE)\b/,rt=/\b(WARN|WARNING)\b/,it=/\b(DEBUG|TRACE|VERBOSE)\b/;function at(e){let t=(e??``).toUpperCase();return nt.test(t)?`error`:rt.test(t)?`warn`:it.test(t)?`debug`:`info`}function ot(e){switch(e){case`error`:return`text-red-400`;case`warn`:return`text-amber-300`;case`debug`:return`text-neutral-500`;default:return`text-neutral-200`}}function st(e,t){return`${e.id??`no-id`}:${e.timestamp}:${t}`}function ct(e,t){let n=(t??``).trim().toLowerCase();return n===``||`${e.message??``} ${e.streamName??``}`.toLowerCase().includes(n)}function lt(e,t){return(t??``).trim()===``?e.slice():e.filter(e=>ct(e,t))}function ut(e){return Array.from({length:e})}var dt=class{capacity;#e;#t=0;#n=0;#r=0;constructor(e=tt){if(!Number.isInteger(e)||e<=0)throw RangeError(`capacity must be a positive integer, received ${e}`);this.capacity=e,this.#e=ut(e)}get size(){return this.#n}get dropped(){return this.#r}get full(){return this.#n===this.capacity}push(e){this.#n===this.capacity&&(this.#r+=1,this.#t=(this.#t+1)%this.capacity,--this.#n);let t=(this.#t+this.#n)%this.capacity;this.#e[t]=e,this.#n+=1}pushMany(e){for(let t of e)this.push(t)}toArray(){let e=ut(this.#n);for(let t=0;t<this.#n;t+=1)e[t]=this.#e[(this.#t+t)%this.capacity];return e}first(){return this.#n===0?void 0:this.#e[this.#t]}last(){return this.#n===0?void 0:this.#e[(this.#t+this.#n-1)%this.capacity]}clear(){this.#e=ut(this.capacity),this.#t=0,this.#n=0,this.#r=0}},ft=class{buffer;#e;#t=!1;constructor(e=tt){this.buffer=new dt(e),this.#e=new dt(e)}get paused(){return this.#t}get size(){return this.buffer.size}get pendingCount(){return this.#e.size}get droppedCount(){return this.buffer.dropped}push(e){if(this.#t){this.#e.pushMany(e);return}this.buffer.pushMany(e)}setPaused(e){return e===this.#t?[]:(this.#t=e,e?[]:this.flush())}pause(){this.#t=!0}resume(){return this.#t=!1,this.flush()}flush(){let e=this.#e.toArray();return this.#e.clear(),this.buffer.pushMany(e),e}toArray(){return this.buffer.toArray()}clear(){this.buffer.clear(),this.#e.clear()}};function pt(e){if(typeof e!=`string`)return null;let t=e.trim();if(t.length===0)return null;let n=t[0];if(n!==`{`&&n!==`[`)return null;try{let e=JSON.parse(t);return typeof e!=`object`||!e?null:e}catch{return null}}function mt(e,t={}){let{prettyJson:n=!0}=t,r=pt(e);return r===null||!n?{text:e,isJson:r!==null,value:r}:{text:JSON.stringify(r,null,2),isJson:!0,value:r}}var ht=/^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function gt(e){let t=[],n=0,r=(e,n)=>{n.length>0&&t.push({type:e,text:n})};for(;n<e.length;){let t=e[n];if(t===` `||t===`
2
2
  `||t===` `||t===`\r`){let t=n;for(;t<e.length&&`
3
3
  \r`.includes(e[t]);)t+=1;r(`whitespace`,e.slice(n,t)),n=t;continue}if(t===`"`){let t=n+1;for(;t<e.length;){if(e[t]===`\\`){t+=2;continue}if(e[t]===`"`)break;t+=1}let i=e.slice(n,Math.min(t+1,e.length)),a=n+i.length;for(;a<e.length&&`
4
4
  \r`.includes(e[a]);)a+=1;r(e[a]===`:`?`key`:`string`,i),n+=i.length;continue}if(t===`{`||t===`}`||t===`[`||t===`]`||t===`,`||t===`:`){r(`punctuation`,t),n+=1;continue}if(e.startsWith(`true`,n)||e.startsWith(`false`,n)){let t=e.startsWith(`true`,n)?`true`:`false`;r(`boolean`,t),n+=t.length;continue}if(e.startsWith(`null`,n)){r(`null`,`null`),n+=4;continue}let i=n;for(;i<e.length&&!`{}[],:"
@@ -1 +1 @@
1
- {"version":"1789139836412"}
1
+ {"version":"1789164607259"}
Binary file
Binary file
package/build/handler.js CHANGED
@@ -2,9 +2,9 @@ import './shims.js';
2
2
  import 'node:fs';
3
3
  import 'node:path';
4
4
  import 'node:process';
5
- export { h as handler } from './server/chunks/handler-BxmFhnZG.js';
6
- import './server/chunks/index.js-Bnel_BoF.js';
7
- import './server/chunks/manifest.js-BWGL1R_d.js';
5
+ export { h as handler } from './server/chunks/handler-Dw17Mzkr.js';
6
+ import './server/chunks/index.js-CAGsYI3V.js';
7
+ import './server/chunks/manifest.js-CVImQuLw.js';
8
8
  import './env.js';
9
9
  import 'node:buffer';
10
10
  import 'node:crypto';
@@ -16,7 +16,7 @@ import './server/chunks/chunks/shared.js-CgjUIvRK.js';
16
16
  import './server/chunks/chunks/uneval.js-DaakSYFQ.js';
17
17
  import './server/chunks/chunks/utils.js-BIlHjgGW.js';
18
18
  import 'node:url';
19
- import './server/chunks/chunks/internal.js-DLSlytOS.js';
19
+ import './server/chunks/chunks/internal.js-DKaleXjD.js';
20
20
  import './server/chunks/chunks/server.js-ByNB8uti.js';
21
21
  import './server/chunks/chunks/internal2.js-DZ8ZzzjN.js';
22
22
  import './server/chunks/chunks/shared-server.js-Dn5XheXH.js';
package/build/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import http from 'node:http';
2
2
  import fs__default from 'node:fs';
3
3
  import process from 'node:process';
4
- import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-BxmFhnZG.js';
4
+ import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-Dw17Mzkr.js';
5
5
  import { env, timeout_env } from './env.js';
6
6
  import { rm } from 'node:fs/promises';
7
7
  import './shims.js';
@@ -14,13 +14,13 @@ import 'node:stream';
14
14
  import './server/chunks/chunks/shared.js-CgjUIvRK.js';
15
15
  import './server/chunks/chunks/uneval.js-DaakSYFQ.js';
16
16
  import './server/chunks/chunks/utils.js-BIlHjgGW.js';
17
- import './server/chunks/index.js-Bnel_BoF.js';
18
- import './server/chunks/chunks/internal.js-DLSlytOS.js';
17
+ import './server/chunks/index.js-CAGsYI3V.js';
18
+ import './server/chunks/chunks/internal.js-DKaleXjD.js';
19
19
  import './server/chunks/chunks/server.js-ByNB8uti.js';
20
20
  import './server/chunks/chunks/internal2.js-DZ8ZzzjN.js';
21
21
  import './server/chunks/chunks/shared-server.js-Dn5XheXH.js';
22
22
  import './server/chunks/chunks/exports.js-CvFPPbaH.js';
23
- import './server/chunks/manifest.js-BWGL1R_d.js';
23
+ import './server/chunks/manifest.js-CVImQuLw.js';
24
24
  import 'node:url';
25
25
 
26
26
  const path = env('SOCKET_PATH', false);
@@ -1166,7 +1166,7 @@ var options = {
1166
1166
  app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <meta name=\"text-scale\" content=\"scale\" />\n " + head + "\n </head>\n <body data-sveltekit-preload-data=\"hover\">\n <div style=\"display: contents\">" + body + "</div>\n </body>\n</html>\n",
1167
1167
  error: error_template_default
1168
1168
  },
1169
- version_hash: "12j7m8j"
1169
+ version_hash: "13evn32"
1170
1170
  };
1171
1171
  async function get_hooks() {
1172
1172
  let handle;
@@ -1188,4 +1188,4 @@ async function get_hooks() {
1188
1188
  }
1189
1189
 
1190
1190
  export { __commonJSMin as _, get_hooks as g, index_server_exports as i, options as o, read_implementation as r, set_read_implementation as s };
1191
- //# sourceMappingURL=internal.js-DLSlytOS.js.map
1191
+ //# sourceMappingURL=internal.js-DKaleXjD.js.map