toastory 0.1.2 → 0.2.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.
- package/README.md +15 -1
- package/dist/angular.cjs +1 -3
- package/dist/angular.cjs.map +1 -1
- package/dist/angular.d.cts +12 -5
- package/dist/angular.d.ts +12 -5
- package/dist/angular.js +1 -3
- package/dist/angular.js.map +1 -1
- package/dist/core.cjs +1 -2
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +20 -6
- package/dist/core.d.ts +20 -6
- package/dist/core.js +1 -2
- package/dist/core.js.map +1 -1
- package/dist/{dialog-Buemfm7I.d.ts → dialog-DAgL0wyv.d.ts} +1 -1
- package/dist/{dialog-fziFV6J0.d.cts → dialog-DosUuJM_.d.cts} +1 -1
- package/dist/index.cjs +1 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +6 -5
- package/dist/index.d.ts +6 -5
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/native.cjs +1 -2
- package/dist/native.cjs.map +1 -1
- package/dist/native.d.cts +45 -3
- package/dist/native.d.ts +45 -3
- package/dist/native.js +1 -2
- package/dist/native.js.map +1 -1
- package/dist/react.cjs +1 -3
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +5 -4
- package/dist/react.d.ts +5 -4
- package/dist/react.js +1 -3
- package/dist/react.js.map +1 -1
- package/dist/sound-CedBML6j.d.ts +22 -0
- package/dist/sound-DLGxVNC0.d.cts +22 -0
- package/dist/svelte.cjs +1 -3
- package/dist/svelte.cjs.map +1 -1
- package/dist/svelte.d.cts +3 -2
- package/dist/svelte.d.ts +3 -2
- package/dist/svelte.js +1 -3
- package/dist/svelte.js.map +1 -1
- package/dist/themes/_base.css +1 -1
- package/dist/themes/_base.dialog.css +1 -1
- package/dist/themes/_base.toast.css +1 -1
- package/dist/themes/all.css +1 -1
- package/dist/themes/aurora.css +1 -1
- package/dist/themes/aurora.dialog.css +1 -1
- package/dist/themes/aurora.toast.css +1 -1
- package/dist/themes/basic.css +1 -1
- package/dist/themes/basic.dialog.css +1 -1
- package/dist/themes/basic.toast.css +1 -1
- package/dist/themes/brutal.css +1 -1
- package/dist/themes/brutal.dialog.css +1 -1
- package/dist/themes/brutal.toast.css +1 -1
- package/dist/themes/classic-bar.css +1 -1
- package/dist/themes/classic-bar.dialog.css +1 -1
- package/dist/themes/classic-bar.toast.css +1 -1
- package/dist/themes/classic-stack.css +1 -1
- package/dist/themes/classic-stack.dialog.css +1 -1
- package/dist/themes/classic-stack.toast.css +1 -1
- package/dist/themes/dialogs.css +1 -1
- package/dist/themes/dialogs.dialog.css +1 -1
- package/dist/themes/dialogs.toast.css +1 -1
- package/dist/themes/essentials.css +1 -1
- package/dist/themes/essentials.dialog.css +1 -1
- package/dist/themes/essentials.toast.css +1 -1
- package/dist/themes/flat.css +1 -1
- package/dist/themes/flat.dialog.css +1 -1
- package/dist/themes/flat.toast.css +1 -1
- package/dist/themes/gradient-strip.css +1 -1
- package/dist/themes/gradient-strip.dialog.css +1 -1
- package/dist/themes/gradient-strip.toast.css +1 -1
- package/dist/themes/gradient.css +1 -1
- package/dist/themes/gradient.dialog.css +1 -1
- package/dist/themes/gradient.toast.css +1 -1
- package/dist/themes/ios-glass.css +1 -1
- package/dist/themes/ios-glass.dialog.css +1 -1
- package/dist/themes/ios-glass.toast.css +1 -1
- package/dist/themes/liquid-glass.css +1 -1
- package/dist/themes/liquid-glass.dialog.css +1 -1
- package/dist/themes/liquid-glass.toast.css +1 -1
- package/dist/themes/material.css +1 -1
- package/dist/themes/material.dialog.css +1 -1
- package/dist/themes/material.toast.css +1 -1
- package/dist/themes/minimal.css +1 -1
- package/dist/themes/minimal.dialog.css +1 -1
- package/dist/themes/minimal.toast.css +1 -1
- package/dist/themes/neon.css +1 -1
- package/dist/themes/neon.dialog.css +1 -1
- package/dist/themes/neon.toast.css +1 -1
- package/dist/themes/outline.css +1 -1
- package/dist/themes/outline.dialog.css +1 -1
- package/dist/themes/outline.toast.css +1 -1
- package/dist/themes/pastel.css +1 -1
- package/dist/themes/pastel.dialog.css +1 -1
- package/dist/themes/pastel.toast.css +1 -1
- package/dist/themes/pill.css +1 -1
- package/dist/themes/pill.dialog.css +1 -1
- package/dist/themes/pill.toast.css +1 -1
- package/dist/themes/ripple.css +1 -1
- package/dist/themes/ripple.dialog.css +1 -1
- package/dist/themes/ripple.toast.css +1 -1
- package/dist/themes/showcase.css +1 -1
- package/dist/themes/showcase.dialog.css +1 -1
- package/dist/themes/showcase.toast.css +1 -1
- package/dist/themes/sweet.css +1 -1
- package/dist/themes/sweet.dialog.css +1 -1
- package/dist/themes/sweet.toast.css +1 -1
- package/dist/{toast-api-D6WYDtUy.d.cts → toast-api-Bwjc_Kxh.d.cts} +16 -4
- package/dist/{toast-api-D6WYDtUy.d.ts → toast-api-Bwjc_Kxh.d.ts} +16 -4
- package/dist/{ui-D5FwMD8Y.d.cts → ui-Bdu8EJ3m.d.cts} +4 -2
- package/dist/{ui-Cs1AjRNH.d.ts → ui-DJXC9cko.d.ts} +4 -2
- package/dist/vue.cjs +1 -3
- package/dist/vue.cjs.map +1 -1
- package/dist/vue.d.cts +42 -5
- package/dist/vue.d.ts +42 -5
- package/dist/vue.js +1 -3
- package/dist/vue.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
.gk-root{box-sizing:border-box
|
|
1
|
+
.gk-root,.gk-root *{box-sizing:border-box}.gk-root{font-family:var(--gk-font, system-ui, sans-serif);--gk-ease: cubic-bezier(.22, 1, .36, 1);--gk-duration: .38s}.gk-root [hidden]{display:none!important}.gk-region{position:fixed;z-index:var(--gk-z, 2147483000);width:var(--gk-width, 360px);max-width:calc(100vw - 32px);margin:0;padding:0;pointer-events:none;transition:height var(--gk-duration) var(--gk-ease)}.gk-region[data-contained]{position:absolute}.gk-region[data-position^=top]{top:max(var(--gk-offset-top, 16px),env(safe-area-inset-top,0))}.gk-region[data-position^=bottom]{bottom:max(var(--gk-offset-bottom, 16px),env(safe-area-inset-bottom,0))}.gk-region[data-position$=left]{left:max(var(--gk-offset-left, 16px),env(safe-area-inset-left,0))}.gk-region[data-position$=right]{right:max(var(--gk-offset-right, 16px),env(safe-area-inset-right,0))}.gk-region[data-position$=center],.gk-region[data-position=middle]{left:50%;transform:translate(-50%)}.gk-region:is([data-position=center],[data-position=middle]){top:50%;transform:translate(-50%,-50%)}@media(max-width:600px){.gk-region{width:calc(100vw - var(--gk-mobile-offset,32px))!important;max-width:100vw!important;left:50%!important;right:auto!important;transform:translate(-50%)!important}.gk-region:is([data-position=center],[data-position=middle]){transform:translate(-50%,-50%)!important}.gk-toast{--gk-blur:min(var(--gk-blur),12px)}}.gk-toast-list{position:relative;height:100%;margin:0;padding:0;list-style:none}.gk-toast{--gk-y: calc(var(--gk-dir, 1) * var(--gk-offset, 0px));position:absolute;left:0;right:0;display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px 12px;padding:14px 16px;overflow:hidden;color:var(--gk-fg);background:var(--gk-bg);border:var(--gk-border-w, 1px) solid var(--gk-border);border-radius:var(--gk-radius);box-shadow:var(--gk-shadow);-webkit-backdrop-filter:blur(var(--gk-blur)) saturate(var(--gk-saturate));backdrop-filter:blur(var(--gk-blur)) saturate(var(--gk-saturate));pointer-events:auto;touch-action:pan-y;user-select:none;transform-origin:top;transform:translate(var(--gk-sx, 0px),calc(var(--gk-y) + var(--gk-sy, 0px)));top:0;transition:all var(--gk-duration) var(--gk-ease)}.gk-toast[data-has-close]{padding-inline-end:38px}.gk-region[data-position^=bottom] .gk-toast{top:auto;bottom:0;transform-origin:bottom}.gk-region[data-shadow=false] .gk-toast{box-shadow:none}:is(.gk-toast,.gk-btn,.gk-close,.gk-link):focus-visible{outline:2px solid var(--gk-accent);outline-offset:2px}.gk-region[data-expanded=false] .gk-toast{--gk-y: calc(var(--gk-dir, 1) * var(--gk-index, 0) * 10px);transform:translate(var(--gk-sx, 0px),calc(var(--gk-y) + var(--gk-sy, 0px))) scale(calc(1 - var(--gk-index, 0) * .05))}.gk-region[data-expanded=false] .gk-toast:not(:last-child){height:var(--gk-front);pointer-events:none}.gk-region[data-expanded=false] :is(.gk-toast:not(:last-child)>*,.gk-toast[data-far]){opacity:0}.gk-toast[data-type=success]{--gk-type:var(--gk-success)}.gk-toast[data-type=error]{--gk-type:var(--gk-error)}.gk-toast[data-type=warning]{--gk-type:var(--gk-warning)}.gk-toast[data-type=info]{--gk-type:var(--gk-info)}.gk-toast[data-type=loading]{--gk-type:var(--gk-accent)}.gk-toast[data-rich]{background:color-mix(in srgb,var(--gk-type, transparent) 16%,var(--gk-bg-solid));border-color:var(--gk-type, var(--gk-border))}.gk-toast[data-clickable]{cursor:pointer}.gk-icon{display:flex;flex:none;margin-top:1px;color:var(--gk-type, var(--gk-muted))}.gk-avatar img{display:block;width:32px;height:32px;border-radius:50%;object-fit:cover}.gk-content,.gk-link{flex:1 1 140px;min-width:140px;overflow-wrap:break-word;word-break:normal}.gk-link{display:block;color:inherit;text-decoration:none}.gk-link:hover{text-decoration:underline}.gk-title{font:600 14px/1.4 inherit}.gk-desc{margin-top:2px;font:13px/1.4 inherit;color:var(--gk-muted)}.gk-desc a{color:inherit}.gk-count{display:inline-block;margin-top:4px;padding:0 6px;font:11px/18px inherit;border:1px solid var(--gk-border);border-radius:9px;color:var(--gk-muted)}.gk-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-inline-start:auto}.gk-toast[data-wrap] .gk-actions{width:100%;justify-content:end}.gk-btn,.gk-close{background:transparent;cursor:pointer}.gk-btn{min-height:28px;padding:0 12px;font:600 13px inherit;color:var(--gk-fg);border:1px solid var(--gk-border);border-radius:calc(var(--gk-radius) / 2);white-space:nowrap}.gk-action{color:var(--gk-accent-fg);background:var(--gk-accent);border-color:var(--gk-accent)}.gk-close{position:absolute;top:12px;inset-inline-end:12px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;color:var(--gk-muted);border:0;border-radius:50%;z-index:2}.gk-close svg{width:16px;height:16px}.gk-close:hover{color:var(--gk-fg)}.gk-progress{position:absolute;inset:auto 0 0;height:3px}.gk-progress i{display:block;height:100%;background:var(--gk-type, var(--gk-accent));transform-origin:left;animation:gk-shrink var(--gk-d) linear forwards;animation-delay:var(--gk-delay, 0ms)}[dir=rtl] .gk-progress i{transform-origin:right}.gk-toast[data-paused] .gk-progress i{animation-play-state:paused}.gk-spin{animation:gk-spin .9s linear infinite}@keyframes gk-shrink{to{transform:scaleX(0)}}@keyframes gk-spin{to{transform:rotate(360deg)}}@keyframes gk-bounce{0%{opacity:0;transform:scale(.8)}to{transform:none}}@keyframes gk-zoom{0%{opacity:0;transform:scale(.85)}}@keyframes gk-flip{0%{opacity:0;transform:perspective(600px) rotateX(80deg)}}@keyframes gk-spring{0%{opacity:0;transform:translateY(-35px)}to{transform:none}}@keyframes gk-fade{0%{opacity:0}}.gk-toast[data-animation]{animation:var(--gk-duration) var(--gk-ease)}.gk-toast[data-animation=bounce]{animation-name:gk-bounce}.gk-toast[data-animation=zoom]{animation-name:gk-zoom}.gk-toast[data-animation=flip]{animation-name:gk-flip}.gk-toast[data-animation=spring]{animation-name:gk-spring}.gk-toast[data-animation=fade]{animation-name:gk-fade}.gk-toast[data-animation=none]{animation:none;transition:none}.gk-toast[data-mounted=false]{opacity:0;transform:translateY(calc(var(--gk-y) + var(--gk-dir, 1) * -60%)) scale(.96)}.gk-toast[data-swiping]{transition:none}.gk-toast[data-dismissed]{opacity:0;pointer-events:none}.gk-toast[data-swipe-out=left]{transform:translate(-120%,var(--gk-y))}.gk-toast[data-swipe-out=right]{transform:translate(120%,var(--gk-y))}.gk-toast[data-swipe-out=up]{transform:translateY(calc(var(--gk-y) - 120%))}.gk-toast[data-swipe-out=down]{transform:translateY(calc(var(--gk-y) + 120%))}@supports not (backdrop-filter: blur(1px)){.gk-toast{background:var(--gk-bg-solid)}}@media(prefers-reduced-transparency:reduce){.gk-toast{background:var(--gk-bg-solid);backdrop-filter:none}}@media(forced-colors:active){.gk-toast{background:var(--gk-bg-solid);border-color:ButtonBorder;color:CanvasText}}@media(prefers-reduced-motion:reduce){.gk-toast,.gk-region{transition:opacity .15s ease!important}.gk-toast{animation:gk-fade .15s ease!important}.gk-spin{animation:none}}[data-gk-theme=sweet]{color-scheme:light;--gk-radius:14px;--gk-blur:0px;--gk-saturate:100%;--gk-font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, system-ui, sans-serif;--gk-bg:#ffffff;--gk-bg-solid:#ffffff;--gk-fg:#1d1d1f;--gk-muted:#515156;--gk-border:rgba(60, 60, 67, .22);--gk-shadow:0 12px 34px rgba(0, 0, 0, .2);--gk-accent:#0057c2;--gk-accent-fg:#ffffff;--gk-danger:#b71c1c;--gk-danger-fg:#ffffff;--gk-success:#1a7f37;--gk-error:#b71c1c;--gk-warning:#8a5a00;--gk-info:#0b5cc7}[data-gk-theme=sweet][data-gk-mode=dark],:is(.dark,[data-theme=dark]) [data-gk-theme=sweet]{color-scheme:dark;--gk-bg:#26262b;--gk-bg-solid:#26262b;--gk-fg:#f5f5f7;--gk-muted:#b4b4bb;--gk-border:rgba(255, 255, 255, .16);--gk-shadow:0 12px 34px rgba(0, 0, 0, .55);--gk-accent:#4da3ff;--gk-accent-fg:#00152e;--gk-danger:#ff8a8a;--gk-danger-fg:#2b0000;--gk-success:#4ade80;--gk-error:#ff7b7b;--gk-warning:#ffc857;--gk-info:#6cb6ff}@media(prefers-color-scheme:dark){[data-gk-theme=sweet][data-gk-mode=auto]{color-scheme:dark;--gk-bg:#26262b;--gk-bg-solid:#26262b;--gk-fg:#f5f5f7;--gk-muted:#b4b4bb;--gk-border:rgba(255, 255, 255, .16);--gk-shadow:0 12px 34px rgba(0, 0, 0, .55);--gk-accent:#4da3ff;--gk-accent-fg:#00152e;--gk-danger:#ff8a8a;--gk-danger-fg:#2b0000;--gk-success:#4ade80;--gk-error:#ff7b7b;--gk-warning:#ffc857;--gk-info:#6cb6ff}}.gk-toast[data-gk-theme=sweet]{align-items:center;padding:16px 18px}.gk-toast[data-gk-theme=sweet] .gk-icon{align-items:center;justify-content:center;width:36px;height:36px;margin:0;border:3px solid var(--gk-type,var(--gk-border));border-radius:50%}.gk-toast[data-gk-theme=sweet] .gk-title{font-size:15px;font-weight:700}.gk-toast[data-gk-theme=sweet] .gk-btn{border-radius:10px;transition:all .16s ease}.gk-toast[data-gk-theme=sweet] .gk-action{background:var(--gk-accent);color:var(--gk-accent-fg);border-color:transparent;box-shadow:0 3px 10px color-mix(in srgb,var(--gk-accent) 30%,transparent)}.gk-toast[data-gk-theme=sweet] .gk-btn:not(.gk-action){background:color-mix(in srgb,var(--gk-fg) 8%,transparent);border-color:var(--gk-border)}
|
|
@@ -35,8 +35,8 @@ type Renderable = unknown;
|
|
|
35
35
|
type BuiltInToastType = 'default' | 'message' | 'success' | 'error' | 'info' | 'warning' | 'loading';
|
|
36
36
|
/** Toast type name: a built-in type or custom registered type string. */
|
|
37
37
|
type ToastType = BuiltInToastType | (string & {});
|
|
38
|
-
/** Placements supported by toast regions (
|
|
39
|
-
type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
|
|
38
|
+
/** Placements supported by toast regions (7 positions: 3 top, 1 middle, 3 bottom). */
|
|
39
|
+
type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'center' | 'middle' | 'bottom-left' | 'bottom-center' | 'bottom-right';
|
|
40
40
|
/** The five rows of the dialog placement grid. */
|
|
41
41
|
type DialogRow = 'top' | 'upper' | 'center' | 'lower' | 'bottom';
|
|
42
42
|
/** The three columns of the dialog placement grid. */
|
|
@@ -145,6 +145,10 @@ interface ToastRenderContext {
|
|
|
145
145
|
}
|
|
146
146
|
/** Custom renderer callback. */
|
|
147
147
|
type ToastCustomRenderer = (context: ToastRenderContext) => Renderable;
|
|
148
|
+
/** Built-in sound cue names for audio feedback. */
|
|
149
|
+
type BuiltInSoundCue = 'success' | 'error' | 'warning' | 'info' | 'ding' | 'pop' | 'chime' | 'bell' | 'message' | 'bubble';
|
|
150
|
+
/** Audio feedback sound cue name or custom string. */
|
|
151
|
+
type SoundCue = BuiltInSoundCue | (string & {});
|
|
148
152
|
/**
|
|
149
153
|
* Options accepted by every toast creation call.
|
|
150
154
|
*/
|
|
@@ -201,6 +205,10 @@ interface ToastOptions {
|
|
|
201
205
|
duration?: number;
|
|
202
206
|
/** Screen region placement. */
|
|
203
207
|
position?: ToastPosition;
|
|
208
|
+
/** Play audio feedback cue, sound url, or custom generator. */
|
|
209
|
+
sound?: boolean | SoundCue | string | ((type: ToastType) => void);
|
|
210
|
+
/** Audio playback volume (0.0 to 1.0). Defaults to 0.5. */
|
|
211
|
+
soundVolume?: number;
|
|
204
212
|
/** Primary action button. */
|
|
205
213
|
action?: ToastAction;
|
|
206
214
|
/** Secondary cancel button. */
|
|
@@ -324,6 +332,10 @@ interface GlazeConfig {
|
|
|
324
332
|
startPaused: boolean;
|
|
325
333
|
newestOnTop: boolean;
|
|
326
334
|
dedupeWindow: number;
|
|
335
|
+
/** Global audio cue sound toggle or default cue name. */
|
|
336
|
+
sound?: boolean | SoundCue;
|
|
337
|
+
/** Global sound volume between 0.0 and 1.0. Defaults to 0.5. */
|
|
338
|
+
soundVolume?: number;
|
|
327
339
|
animation?: AnimationType;
|
|
328
340
|
offset?: OffsetConfig;
|
|
329
341
|
mobileOffset?: number | string;
|
|
@@ -702,5 +714,5 @@ interface ToastApi extends ToastFn {
|
|
|
702
714
|
/** Builds the `ui.toast` API on top of a store/manager. */
|
|
703
715
|
declare function createToastApi(store: ToastStore): ToastApi;
|
|
704
716
|
|
|
705
|
-
export { DEFAULT_CONFIG as D, MANUAL_PAUSE as M, createConfigStore as
|
|
706
|
-
export type {
|
|
717
|
+
export { DEFAULT_CONFIG as D, MANUAL_PAUSE as M, createConfigStore as as, createToastApi as at, createToastManager as au, createToastStore as av, createTypeRegistry as aw, defaultClock as ax, resolvePrecedence as ay };
|
|
718
|
+
export type { SoundCue as $, AddToastInput as A, BottomSheetHandle as B, Clock as C, EssentialsToastVariant as E, GlazeConfigPatch as F, GlazeConfig as G, LoadingHandle as H, IosGlassToastVariant as I, LoadingOptions as J, Mode as K, Listener as L, Position as N, OffsetConfig as O, PauseOn as P, PromiseData as Q, PromiseHandle as R, PromiseMessage as S, ToastApi as T, PromiseMessages as U, PromiseOutcome as V, Renderable as W, SheetAction as X, SheetActionStyle as Y, SheetOptions as Z, ShowcaseToastVariant as _, ToastRecord as a, StackMode as a0, Store as a1, SwipeDirection as a2, ThemeName as a3, ToastAction as a4, ToastActionItem as a5, ToastAvatarOption as a6, ToastButton as a7, ToastClassNames as a8, ToastCustomRenderer as a9, ToastFn as aa, ToastId as ab, ToastManager as ac, ToastManagerOptions as ad, ToastOptions as ae, ToastPatch as af, ToastPosition as ag, ToastRenderContext as ah, ToastToggleOption as ai, ToastType as aj, ToastTypeDefinition as ak, ToastVariant as al, ToastoryConfig as am, ToastoryConfigPatch as an, TypeRegistry as ao, TypedDialogOptions as ap, Unsubscribe as aq, ValidateResult as ar, ToastStore as b, AnimationType as c, BottomSheetOptions as d, BuiltInSoundCue as e, BuiltInToastType as f, CloseReason as g, ColorMode as h, Config as i, ConfigStore as j, DialogBackdrop as k, DialogButton as l, DialogChoice as m, DialogColumn as n, DialogHandle as o, DialogIcon as p, DialogInputType as q, DialogOptions as r, DialogPosition as s, DialogResult as t, DialogRow as u, DialogState as v, DialogTone as w, DialogVariant as x, Direction as y, DismissReason as z };
|
|
@@ -35,8 +35,8 @@ type Renderable = unknown;
|
|
|
35
35
|
type BuiltInToastType = 'default' | 'message' | 'success' | 'error' | 'info' | 'warning' | 'loading';
|
|
36
36
|
/** Toast type name: a built-in type or custom registered type string. */
|
|
37
37
|
type ToastType = BuiltInToastType | (string & {});
|
|
38
|
-
/** Placements supported by toast regions (
|
|
39
|
-
type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
|
|
38
|
+
/** Placements supported by toast regions (7 positions: 3 top, 1 middle, 3 bottom). */
|
|
39
|
+
type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'center' | 'middle' | 'bottom-left' | 'bottom-center' | 'bottom-right';
|
|
40
40
|
/** The five rows of the dialog placement grid. */
|
|
41
41
|
type DialogRow = 'top' | 'upper' | 'center' | 'lower' | 'bottom';
|
|
42
42
|
/** The three columns of the dialog placement grid. */
|
|
@@ -145,6 +145,10 @@ interface ToastRenderContext {
|
|
|
145
145
|
}
|
|
146
146
|
/** Custom renderer callback. */
|
|
147
147
|
type ToastCustomRenderer = (context: ToastRenderContext) => Renderable;
|
|
148
|
+
/** Built-in sound cue names for audio feedback. */
|
|
149
|
+
type BuiltInSoundCue = 'success' | 'error' | 'warning' | 'info' | 'ding' | 'pop' | 'chime' | 'bell' | 'message' | 'bubble';
|
|
150
|
+
/** Audio feedback sound cue name or custom string. */
|
|
151
|
+
type SoundCue = BuiltInSoundCue | (string & {});
|
|
148
152
|
/**
|
|
149
153
|
* Options accepted by every toast creation call.
|
|
150
154
|
*/
|
|
@@ -201,6 +205,10 @@ interface ToastOptions {
|
|
|
201
205
|
duration?: number;
|
|
202
206
|
/** Screen region placement. */
|
|
203
207
|
position?: ToastPosition;
|
|
208
|
+
/** Play audio feedback cue, sound url, or custom generator. */
|
|
209
|
+
sound?: boolean | SoundCue | string | ((type: ToastType) => void);
|
|
210
|
+
/** Audio playback volume (0.0 to 1.0). Defaults to 0.5. */
|
|
211
|
+
soundVolume?: number;
|
|
204
212
|
/** Primary action button. */
|
|
205
213
|
action?: ToastAction;
|
|
206
214
|
/** Secondary cancel button. */
|
|
@@ -324,6 +332,10 @@ interface GlazeConfig {
|
|
|
324
332
|
startPaused: boolean;
|
|
325
333
|
newestOnTop: boolean;
|
|
326
334
|
dedupeWindow: number;
|
|
335
|
+
/** Global audio cue sound toggle or default cue name. */
|
|
336
|
+
sound?: boolean | SoundCue;
|
|
337
|
+
/** Global sound volume between 0.0 and 1.0. Defaults to 0.5. */
|
|
338
|
+
soundVolume?: number;
|
|
327
339
|
animation?: AnimationType;
|
|
328
340
|
offset?: OffsetConfig;
|
|
329
341
|
mobileOffset?: number | string;
|
|
@@ -702,5 +714,5 @@ interface ToastApi extends ToastFn {
|
|
|
702
714
|
/** Builds the `ui.toast` API on top of a store/manager. */
|
|
703
715
|
declare function createToastApi(store: ToastStore): ToastApi;
|
|
704
716
|
|
|
705
|
-
export { DEFAULT_CONFIG as D, MANUAL_PAUSE as M, createConfigStore as
|
|
706
|
-
export type {
|
|
717
|
+
export { DEFAULT_CONFIG as D, MANUAL_PAUSE as M, createConfigStore as as, createToastApi as at, createToastManager as au, createToastStore as av, createTypeRegistry as aw, defaultClock as ax, resolvePrecedence as ay };
|
|
718
|
+
export type { SoundCue as $, AddToastInput as A, BottomSheetHandle as B, Clock as C, EssentialsToastVariant as E, GlazeConfigPatch as F, GlazeConfig as G, LoadingHandle as H, IosGlassToastVariant as I, LoadingOptions as J, Mode as K, Listener as L, Position as N, OffsetConfig as O, PauseOn as P, PromiseData as Q, PromiseHandle as R, PromiseMessage as S, ToastApi as T, PromiseMessages as U, PromiseOutcome as V, Renderable as W, SheetAction as X, SheetActionStyle as Y, SheetOptions as Z, ShowcaseToastVariant as _, ToastRecord as a, StackMode as a0, Store as a1, SwipeDirection as a2, ThemeName as a3, ToastAction as a4, ToastActionItem as a5, ToastAvatarOption as a6, ToastButton as a7, ToastClassNames as a8, ToastCustomRenderer as a9, ToastFn as aa, ToastId as ab, ToastManager as ac, ToastManagerOptions as ad, ToastOptions as ae, ToastPatch as af, ToastPosition as ag, ToastRenderContext as ah, ToastToggleOption as ai, ToastType as aj, ToastTypeDefinition as ak, ToastVariant as al, ToastoryConfig as am, ToastoryConfigPatch as an, TypeRegistry as ao, TypedDialogOptions as ap, Unsubscribe as aq, ValidateResult as ar, ToastStore as b, AnimationType as c, BottomSheetOptions as d, BuiltInSoundCue as e, BuiltInToastType as f, CloseReason as g, ColorMode as h, Config as i, ConfigStore as j, DialogBackdrop as k, DialogButton as l, DialogChoice as m, DialogColumn as n, DialogHandle as o, DialogIcon as p, DialogInputType as q, DialogOptions as r, DialogPosition as s, DialogResult as t, DialogRow as u, DialogState as v, DialogTone as w, DialogVariant as x, Direction as y, DismissReason as z };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T as ToastApi,
|
|
2
|
-
import { a as DialogPromise, S as StepsResult } from './dialog-
|
|
1
|
+
import { T as ToastApi, r as DialogOptions, Z as SheetOptions, d as BottomSheetOptions, B as BottomSheetHandle, J as LoadingOptions, H as LoadingHandle, G as GlazeConfig, $ as SoundCue, b as ToastStore } from './toast-api-Bwjc_Kxh.cjs';
|
|
2
|
+
import { a as DialogPromise, S as StepsResult } from './dialog-DosUuJM_.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Theme definitions. The build script turns each definition into a CSS file; the tests check every
|
|
@@ -81,6 +81,8 @@ interface Ui {
|
|
|
81
81
|
loading(options?: LoadingOptions): LoadingHandle;
|
|
82
82
|
/** Sets global configuration. Returns the resulting configuration. */
|
|
83
83
|
configure(patch: Partial<GlazeConfig>): Readonly<GlazeConfig>;
|
|
84
|
+
/** Plays an audio feedback sound cue, synthesizer chime, or audio URL. */
|
|
85
|
+
sound(cue?: SoundCue | string | boolean, volume?: number): void;
|
|
84
86
|
/** Defines a custom theme with tokens and optional CSS rules. */
|
|
85
87
|
defineTheme(name: string, definition: CustomThemeDefinition): string;
|
|
86
88
|
/** The underlying toast store. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T as ToastApi,
|
|
2
|
-
import { a as DialogPromise, S as StepsResult } from './dialog-
|
|
1
|
+
import { T as ToastApi, r as DialogOptions, Z as SheetOptions, d as BottomSheetOptions, B as BottomSheetHandle, J as LoadingOptions, H as LoadingHandle, G as GlazeConfig, $ as SoundCue, b as ToastStore } from './toast-api-Bwjc_Kxh.js';
|
|
2
|
+
import { a as DialogPromise, S as StepsResult } from './dialog-DAgL0wyv.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Theme definitions. The build script turns each definition into a CSS file; the tests check every
|
|
@@ -81,6 +81,8 @@ interface Ui {
|
|
|
81
81
|
loading(options?: LoadingOptions): LoadingHandle;
|
|
82
82
|
/** Sets global configuration. Returns the resulting configuration. */
|
|
83
83
|
configure(patch: Partial<GlazeConfig>): Readonly<GlazeConfig>;
|
|
84
|
+
/** Plays an audio feedback sound cue, synthesizer chime, or audio URL. */
|
|
85
|
+
sound(cue?: SoundCue | string | boolean, volume?: number): void;
|
|
84
86
|
/** Defines a custom theme with tokens and optional CSS rules. */
|
|
85
87
|
defineTheme(name: string, definition: CustomThemeDefinition): string;
|
|
86
88
|
/** The underlying toast store. */
|
package/dist/vue.cjs
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
'use strict';var vue=require('vue');function se(){return typeof document<"u"&&typeof document.createElement=="function"}function p(e,t="",o={},...s){let i=document.createElement(e);t&&(i.className=t);for(let u in o)o[u]!==void 0&&i.setAttribute(u,o[u]);for(let u of s)u&&i.append(u);return i}function Y(e,t){t==null||t===false||(typeof Node<"u"&&t instanceof Node?e.append(t):e.append(String(t)));}var Se=0;function K(e){return Se+=1,`${e}-${Se}`}function ae(){return typeof matchMedia=="function"&&matchMedia("(prefers-reduced-motion: reduce)").matches}function Re(){return typeof matchMedia=="function"&&matchMedia("(prefers-color-scheme: dark)").matches}function be(e){return typeof e=="number"?`${e}px`:e}var ct='a[href],button:not([disabled]),input:not([disabled]):not([type=hidden]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex="-1"])';function Le(e){return [...e.querySelectorAll(ct)].filter(t=>!t.hasAttribute("hidden")&&t.getAttribute("aria-hidden")!=="true")}var ut="http://www.w3.org/2000/svg",de={success:["M12 3a9 9 0 1 0 0 18a9 9 0 0 0 0-18z","M8 12.4l2.6 2.6L16 9.4"],error:["M12 3a9 9 0 1 0 0 18a9 9 0 0 0 0-18z","M9 9l6 6M15 9l-6 6"],warning:["M12 3.5l9.2 16H2.8z","M12 10v4.2M12 17.2h.01"],info:["M12 3a9 9 0 1 0 0 18a9 9 0 0 0 0-18z","M12 11v5.2M12 7.8h.01"],question:["M12 3a9 9 0 1 0 0 18a9 9 0 0 0 0-18z","M9.6 9.6a2.5 2.5 0 1 1 3.6 2.2c-.8.4-1.2 1-1.2 1.8M12 17h.01"],loading:["M12 3a9 9 0 1 0 9 9"],close:["M6 6l12 12M18 6L6 18"],trash:["M3 6h18","M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2","M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6","M10 11v6","M14 11v6"],lock:["M7 11V7a5 5 0 0 1 10 0v4","M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2z"],upload:["M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4","M17 8l-5-5-5 5","M12 3v12"],pencil:["M12 20h9","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"],clock:["M12 2a10 10 0 1 0 0 20a10 10 0 0 0 0-20z","M12 6v6l4 2"],shield:["M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"],check:["M20 6L9 17l-5-5"],bell:["M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9","M13.73 21a2 2 0 0 1-3.46 0"],phone:["M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"],moon:["M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"],star:["M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"],file:["M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z","M14 2v6h6"],mail:["M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z","M22 6l-10 7L2 6"]},ft='viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"';function W(e){let t=(de[e]??de.info).map(i=>`<path d="${i}"/>`).join(""),o=e==="loading"?' class="gk-spin"':"",s=document.createElement("div");return s.innerHTML=`<svg xmlns="${ut}" ${ft}${o}>${t}</svg>`,s.firstElementChild}function Me(e){return e==="success"||e==="error"||e==="warning"||e==="info"||e==="loading"?e:void 0}var gt=new Set("a,abbr,b,blockquote,br,code,div,em,h1,h2,h3,h4,h5,h6,hr,i,img,kbd,li,mark,ol,p,pre,s,small,span,strong,sub,sup,u,ul".split(",")),mt=new Set("href,src,alt,title,target,rel,width,height,lang,dir".split(",")),ht=new Set(["href","src"]),bt=/^(?:https?:|mailto:|tel:|\/|#|\.\/|\.\.\/|[^:]*$)/i;function le(e){return bt.test(e.replace(/[\s\u0000-\u001f]/g,""))}function ye(e){for(let t of [...e.childNodes]){if(t.nodeType===3)continue;if(t.nodeType!==1){e.removeChild(t);continue}let o=t,s=o.tagName.toLowerCase();if(!gt.has(s)){if(/^(script|style|iframe|object|template)$/.test(s))e.removeChild(t);else {for(ye(o);o.firstChild;)e.insertBefore(o.firstChild,o);e.removeChild(o);}continue}for(let i of [...o.attributes]){let u=i.name.toLowerCase(),l=ht.has(u)&&!le(i.value);(!mt.has(u)||l)&&o.removeAttribute(i.name);}o.getAttribute("target")==="_blank"&&o.setAttribute("rel","noopener noreferrer"),ye(o);}}function Q(e){if(!se())return null;let t=globalThis.DOMPurify,o=(t?i=>t.sanitize(i):void 0),s=document.createElement("template");return s.innerHTML=o?o(e):e,o||ye(s.content),s.content}var Oe="banner-light,banner-dark,capsule-success,island-call,hud-silent,system-alert,device-popup,grouped-stack,progress-ring,shake-error,focus-toggle,compact-action".split(","),yt={essentials:"minimal,success,error,warning,accent-bar,badge-title,progress-bar,pill,undo-bar,inline-confirm,loading-percent,avatar".split(","),showcase:"glass-gradient,emerald,neon-error,ios-banner,dev-dark,countdown-ring,stacked,upload-card,island,gradient-border,soft-light,message-actions".split(","),"ios-glass":Oe,"liquid-glass":Oe,dialogs:"warning-confirm,danger-confirm,type-to-confirm,rename-prompt,success,update-info,dark-logout,ios-glass-alert,bottom-sheet-confirm,reauth-password,otp-code,session-countdown".split(",")};function pe(e,t){if(!t)return;let o=yt[e];if(o&&!o.includes(t)){typeof process<"u"&&process.env?.NODE_ENV!=="production"&&console.warn(`[toastory] Unknown variant "${t}" for "${e}".`);return}return t}var kt=["#38bdf8","#818cf8","#ec4899","#f97316","#10b981","#6366f1","#eab308"];function vt(e){let t=0;for(let o=0;o<e.length;o++)t=t*31+e.charCodeAt(o)>>>0;return kt[t%7]}function Tt(e,t="en"){if(typeof e=="string")return e;if(e===true)return "now";let o=e instanceof Date?e.getTime():Number(e)||Date.now(),s=Math.round((Date.now()-o)/6e4);if(!s)return "now";let i=Math.round(s/60),u=Math.round(i/24),[l,h]=i<1?[s,"minute"]:u<1?[i,"hour"]:[u,"day"];try{return new Intl.RelativeTimeFormat(t,{numeric:"auto"}).format(-l,h)}catch{return `${l}${h[0]} ago`}}var ke=e=>`${e.updatedAt}:${e.timerEpoch}:${e.count}`,Pe="button,a,input,select,textarea,[role=button]";function Ae(e){return e.endsWith("left")?["left"]:e.endsWith("right")?["right"]:e.startsWith("top")?["up"]:["down"]}function xt(e){let t=e.toLowerCase().split("+").map(s=>s.trim()).filter(Boolean),o=t.find(s=>!/^(alt|ctrl|control|shift|meta|cmd)$/.test(s));if(o)return {alt:t.includes("alt"),ctrl:t.some(s=>s==="ctrl"||s==="control"),shift:t.includes("shift"),meta:t.some(s=>s==="meta"||s==="cmd"),code:/^[a-z]$/.test(o)?`Key${o.toUpperCase()}`:/^\d$/.test(o)?`Digit${o}`:o}}function wt(){if(!se())return false;let e=document.documentElement;return e.classList.contains("dark")||document.body?.classList.contains("dark")||e.getAttribute("data-theme")==="dark"||e.getAttribute("data-gk-mode")==="dark"||document.body?.getAttribute("data-theme")==="dark"||document.body?.getAttribute("data-gk-mode")==="dark"}function Ct(e,t){return t?e==="dark"||e==="auto"&&(wt()||Re())?"light":"dark":e}function ce(e,t){let o=new Map,s=[],i=null,u=false,l,h=()=>e.config.get(),S=d=>d.pauseOn??h().pauseOn,b=(d,n)=>d??n,a=d=>{let n=d??t?.container??h().container,x=typeof n=="string"?(document.getElementById(n)||document.querySelector(n))??document.body:n instanceof HTMLElement?n:document.body;if(!x)return null;return x},f=d=>{ae()||typeof requestAnimationFrame!="function"?d():requestAnimationFrame(()=>requestAnimationFrame(d));},k=(d,n,x)=>{for(let g of d.items.values())S(g.record).includes(x)&&(n?e.pause(g.record.id,x):e.resume(g.record.id,x));},w=d=>{let n=h().stack,x=n===false||n==="list"?"list":n==="expanded"?"expanded":"stacked",g=x==="expanded"||x==="list"||d.hover||d.focus,E=h().newestOnTop!==false,D=[...d.items.values()],z=E?D.reverse():D,O=h().gap,c=d.key.includes("top-"),N=0,m=0;z.forEach((M,_)=>{let G=M.measured&&M.height>0?M.height:M.el.offsetHeight||50;_===0&&(m=G),M.el.style.setProperty("--gk-index",String(_)),M.el.style.setProperty("--gk-offset",`${N}px`),M.el.style.setProperty("--gk-height",`${G}px`),M.el.style.zIndex=String(1e3-_),_>2?M.el.dataset.far="":delete M.el.dataset.far,N+=G+O;});let L=Math.max(0,N-O);d.el.style.setProperty("--gk-front",`${m}px`),d.el.style.setProperty("--gk-total",`${L}px`),d.el.style.setProperty("--gk-dir",c?"1":"-1"),d.el.style.setProperty("--gk-gap",`${O}px`),d.el.dataset.stackMode=x,d.el.dataset.expanded=String(g),d.el.style.height=`${g?L:m}px`;},P;typeof ResizeObserver=="function"&&(P=new ResizeObserver(d=>{let n=false;for(let x of d){let g=x.target;for(let E of o.values())for(let D of E.items.values())if(D.el===g){let z=x.borderBoxSize?.[0]?.blockSize??x.contentRect.height;Math.abs(D.height-z)>1&&(D.height=z,D.measured=true,n=true);}}n&&o.forEach(w);}));let I=d=>{let n=`${d.container??""}|${d.position}`,x=o.get(n);if(x)return x;let g=a(d.container);if(!g)return;let E=p("ol","gk-toast-list gk-list",{role:"presentation",tabindex:"-1"}),D=p("section","gk-region gk-root",{"aria-label":h().regionLabel,tabindex:"-1",role:"region"},E),z={key:n,el:D,list:E,items:new Map,hover:false,focus:false};D.dataset.position=d.position,g!==document.body&&(D.dataset.contained="");let O=()=>w(z),c=(N,m)=>{z[N]=m,k(z,m,N),O();};return D.addEventListener("pointerenter",()=>c("hover",true)),D.addEventListener("pointerleave",()=>c("hover",false)),D.addEventListener("focusin",()=>c("focus",true)),D.addEventListener("focusout",N=>{N.relatedTarget instanceof Node&&D.contains(N.relatedTarget)||c("focus",false);}),D.addEventListener("keydown",N=>{let m=N.target.closest(".gk-toast"),L=m?[...z.items.values()].find(M=>M.el===m):void 0;if(N.key==="Escape"){if(!L||L.record.dismissible===false)return;N.stopPropagation(),e.dismiss(L.record.id,"user"),i?.focus?.();return}if(N.key==="ArrowDown"||N.key==="ArrowUp"){N.preventDefault();let M=[...z.items.values()].map(ee=>ee.el);if(M.length<=1)return;let _=m?M.indexOf(m):-1,G=N.key==="ArrowDown"?(_+1)%M.length:(_-1+M.length)%M.length;M[G]?.focus();}}),g.append(D),o.set(n,z),z},B=(d,n)=>e.dismiss(d,n),y=(d,n,x,g,E)=>{let D=p("button",d,{type:"button","aria-label":n.ariaLabel},n.label);return D.addEventListener("click",z=>{z.stopPropagation();let O=false;E?.({preventDefault:()=>{O=true;},get defaultPrevented(){return O}}),O||B(x.id,g);}),D},F=d=>{let n=d.record;d.stamp=ke(n);let x=h(),g=n.classNames??{},E=n.unstyled===true,D=(m,L)=>[E?"":m,L].filter(Boolean).join(" "),z=d.el;z.replaceChildren(),z.className=D(`gk-toast gk-toast--${n.type}`,[g.toast,n.className].filter(Boolean).join(" "));let O=p("div",D("gk-toast__content gk-content",g.content));if(n.custom)Y(O,n.custom({id:n.id,dismiss:()=>B(n.id,"api"),update:m=>{e.update(n.id,m);}}));else {if(n.badge!==void 0){let m=typeof n.badge=="object"&&n.badge!==null?n.badge:void 0,L=m?m.tone??"info":n.badge,M=p("div",D("gk-toast__badge gk-badge",g.badge),{"aria-hidden":"true","data-tone":L});m&&m.icon?Y(M,m.icon):m&&m.label?M.textContent=m.label:typeof n.badge=="string"&&!de[L]?M.textContent=n.badge:M.append(W(de[L]?L:"info")),z.append(M);}else {let m=n.icon,L=m===void 0?Me(n.type):void 0,M=e.types.get(n.type),_=m===void 0?M?.icon:m;if(m!==false&&(L||_!==void 0)){let G=p("div",D("gk-toast__icon gk-icon",g.icon),{"aria-hidden":"true"});L?G.append(W(L)):Y(G,_),z.append(G);}}if(n.avatar!==void 0){let m=p("div",D("gk-toast__avatar gk-avatar",g.avatar)),L=n.avatar;if(typeof L=="object"&&L!==null&&!("nodeType"in L)){let M=L;if(M.src)m.append(p("img","",{src:le(M.src)?M.src:"",alt:M.alt??M.name??""}));else {let _=M.initials??(M.name?M.name.split(" ").map(G=>G[0]).join("").slice(0,2).toUpperCase():"?");m.textContent=_,m.style.background=M.color??vt(M.name??_),m.style.color="#fff";}}else typeof L=="string"?m.append(p("img","",{src:le(L)?L:"",alt:""})):Y(m,L);z.append(m);}if(n.title){let m=p("div",D("gk-toast__title gk-title",g.title));Y(m,n.title),O.append(m);}if(n.description||n.html){let m=p("div",D("gk-toast__description gk-desc",g.description));if(Y(m,n.description),n.html){let L=Q(n.html);L&&m.append(L);}O.append(m);}if(n.progressValue!==void 0){let m=Math.max(0,Math.min(100,Math.round(n.progressValue*100))),L=p("i","gk-progress-fill");L.style.width=`${m}%`;let M=p("div","gk-toast__track gk-track",{role:"progressbar","aria-label":n.progressLabel??"Progress","aria-valuenow":String(m),"aria-valuemin":"0","aria-valuemax":"100",...n.progressLabel?{"aria-valuetext":n.progressLabel}:{}},L);O.append(M);}n.count>1&&O.append(p("span",D("gk-toast__count gk-count",g.count),{"aria-hidden":"true"},`${n.count}`));}let c=n.href&&le(n.href)?p("a",D("gk-toast__link gk-link",g.link),{href:n.href,target:n.target??"_self",rel:n.target==="_blank"?"noopener noreferrer":void 0},O):O;if(z.append(c),n.timestamp&&z.append(p("time",D("gk-toast__time gk-time",g.time),{},Tt(n.timestamp,n.timestampLocale))),n.kbd&&z.append(p("kbd",D("gk-toast__kbd gk-kbd",g.kbd),{},n.kbd)),n.toggle){let m=n.toggle,L=p("button","gk-toast__switch gk-sw",{type:"button",role:"switch","aria-checked":String(!!m.checked),"aria-label":m.label??"Toggle option"});L.addEventListener("click",M=>{M.stopPropagation();let _=L.getAttribute("aria-checked")!=="true";L.setAttribute("aria-checked",String(_)),m.onChange?.(_);}),z.append(L);}if(n.progress==="ring"||n.variant==="countdown-ring"||n.variant==="progress-ring"){let L=100.5*(1-(n.progressValue??(n.duration>0?e.getRemaining(n.id)/n.duration:1))),M=document.createElement("div");M.innerHTML=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" class="gk-ring-svg"><circle cx="18" cy="18" r="16" fill="none" stroke="currentColor" stroke-width="3" opacity="0.2"/><circle cx="18" cy="18" r="16" fill="none" stroke="currentColor" stroke-width="3" stroke-dasharray="100.5" stroke-linecap="round" stroke-dashoffset="${L}"/></svg>`,z.append(M.firstElementChild);}if(n.actions?.length){let m=p("div",D("gk-toast__actions gk-actions",g.actions));for(let L of n.actions){let M=L.label??L.text??"Action",_=p("button",`gk-toast__action gk-btn gk-action gk-btn--${L.kind??"secondary"}`,{type:"button","aria-label":M},M);_.addEventListener("click",G=>{G.stopPropagation(),L.onClick?.(G),L.autoDismiss!==false&&!G.defaultPrevented&&B(n.id,"action");}),m.append(_);}z.append(m);}else if(n.action||n.cancel){let m=p("div",D("gk-toast__actions gk-actions",g.actions));n.cancel&&m.append(y(D("gk-toast__cancel gk-btn gk-cancel gk-cancel-btn",g.cancelButton),n.cancel,n,"cancel",n.cancel.onClick)),n.action&&m.append(y(D("gk-toast__action gk-btn gk-action gk-action-btn",g.actionButton),n.action,n,"action",n.action.onClick)),z.append(m);}if(b(n.closeButton,x.closeButton)&&n.dismissible!==false){let m=p("button",D("gk-toast__close gk-close",g.closeButton),{type:"button","aria-label":n.closeButtonLabel??x.closeLabel??"Close notification"},W("close"));m.addEventListener("click",L=>{L.stopPropagation(),B(n.id,"user");}),z.append(m);}if(n.duration>0&&(n.progress==="bar"||n.progress!=="none"&&n.progress!=="ring"&&b(n.progress,x.progress))){let m=p("i");m.style.setProperty("--gk-d",`${n.duration}ms`),m.style.setProperty("--gk-delay",`-${Math.max(0,n.duration-e.getRemaining(n.id))}ms`),z.append(p("div",D("gk-toast__progress gk-progress",g.progress),{"aria-hidden":"true"},m));}d.stamp=ke(n);},$=d=>{let n=d.record,x=h(),g=d.el,E=(_,G)=>{G===void 0?g.removeAttribute(_):g.setAttribute(_,G);},z=((n.container?document.getElementById(n.container):void 0)??g.parentElement?.closest("[data-gk-theme]"))?.getAttribute("data-gk-theme"),O=n.theme??z??x.theme,c=pe(O,n.variant);E("data-gk-variant",c),n.hud||c==="hud-silent"?(E("role","status"),E("aria-live","polite"),E("data-hud","")):(E("role",n.role),E("aria-live",n.ariaLive)),E("aria-atomic","true"),E("data-type",n.type),E("data-gk-theme",O),E("data-gk-mode",Ct(x.mode,b(n.invert,x.invert))),E("data-dir",n.dir??x.dir),E("dir",(n.dir??x.dir)==="auto"?void 0:n.dir??x.dir),E("data-animation",n.animation??x.animation??"slide"),(n.shake||c==="shake-error")&&E("data-shake",""),n.glow&&E("data-glow",""),(n.gradientBorder||c==="gradient-border")&&E("data-gradient-border",""),n.group&&E("data-group",n.group),(n.island||c==="island")&&E("data-island","");let N=e.types.get(n.type)?.color;if(N&&g.style.setProperty("--gk-type",N),E("data-rich",b(n.richColors,x.richColors)?"":void 0),E("data-dismissed",n.dismissed?"":void 0),E("data-state",n.dismissed?"exiting":"entered"),E("data-paused",n.pausedBy.length>0?"":void 0),(n.description||n.html||n.action&&n.cancel||n.actions&&n.actions.length>1)&&E("data-wrap",""),b(n.closeButton,x.closeButton)&&n.dismissible!==false&&E("data-has-close",""),E("data-clickable",b(n.closeOnClick,x.closeOnClick)&&n.dismissible!==false?"":void 0),n.style)for(let _ of Object.keys(n.style))g.style.setProperty(_,String(n.style[_]));let m=n.swipeDirections??Ae(n.position),L=m.some(_=>_==="left"||_==="right"),M=m.some(_=>_==="up"||_==="down");g.style.touchAction=L&&!M?"pan-y":M&&!L?"pan-x":"none";},H=d=>{let n=d.el,x,g,E=false,D=()=>({dirs:d.record.swipeDirections??Ae(d.record.position),threshold:d.record.dragThreshold??h().dragThreshold,on:b(d.record.swipe,h().swipe)&&d.record.dismissible!==false});n.addEventListener("pointerenter",()=>{d.hover=true,!h().stack&&S(d.record).includes("hover")&&e.pause(d.record.id,"hover");}),n.addEventListener("pointerleave",()=>{d.hover=false,h().stack||e.resume(d.record.id,"hover");}),n.addEventListener("click",O=>{E||d.swiping||O.target.closest(Pe)||b(d.record.closeOnClick,h().closeOnClick)&&B(d.record.id,"click");}),n.addEventListener("pointerdown",O=>{!D().on||O.button!==0||O.target.closest(Pe)||(x={x:O.clientX,y:O.clientY,time:performance.now()},g=void 0,E=false);}),n.addEventListener("pointermove",O=>{if(!x)return;let{dirs:c}=D(),N=O.clientX-x.x,m=O.clientY-x.y;if(!g){if(Math.max(Math.abs(N),Math.abs(m))<4)return;g=Math.abs(N)>Math.abs(m)?"x":"y",d.swiping=true,E=true,n.setPointerCapture?.(O.pointerId),n.dataset.swiping="",e.pause(d.record.id,"swipe");}let L=g==="x"?N>0?"right":"left":m>0?"down":"up",M=c.includes(L)?g==="x"?N:m:0;n.style.setProperty("--gk-sx",g==="x"?`${M}px`:"0px"),n.style.setProperty("--gk-sy",g==="y"?`${M}px`:"0px");});let z=O=>{if(!x)return;let{dirs:c,threshold:N}=D(),m=O.clientX-x.x,L=O.clientY-x.y,M=Math.max(1,performance.now()-x.time),_=g==="x"?m>0?"right":"left":L>0?"down":"up",G=Math.abs(g==="x"?m:L),ee=G/M,fe=d.swiping;x=void 0,delete n.dataset.swiping,e.resume(d.record.id,"swipe");let te=g==="x"?n.offsetWidth||350:n.offsetHeight||60,V=N<=1&&N>0?N*te:N;fe&&c.includes(_)&&(G>=V||M>=40&&ee>.6&&G>20)?(n.dataset.swipeOut=_,B(d.record.id,"swipe")):(n.style.setProperty("--gk-sx","0px"),n.style.setProperty("--gk-sy","0px")),setTimeout(()=>{d.swiping=false,E=false;},50);};n.addEventListener("pointerup",z),n.addEventListener("pointercancel",z);},C=false,r=false,v=()=>{if(C){r=true;return}C=true;try{do r=!1,T();while(r)}finally{C=false;}},T=()=>{if(!document.body&&!u){u=true,document.addEventListener("DOMContentLoaded",()=>{u=false,v();},{once:true});return}let d=h(),n=e.getToasts().filter(g=>g.visible),x=new Set;for(let g of n){let E=I(g);if(!E)continue;x.add(`${E.key}#${String(g.id)}`);let D=E.items.get(g.id);if(!D){D={el:p("li"),record:g,stamp:"",hover:false,swiping:false,height:0,measured:false},D.el.dataset.mounted="false",D.el.tabIndex=-1,E.items.set(g.id,D),E.list.append(D.el),P?.observe(D.el),H(D);let z=D;f(()=>{z.el.dataset.mounted="true";});}D.record=g,$(D),D.stamp!==ke(g)&&F(D);}for(let g of o.values()){for(let[c,N]of g.items)x.has(`${g.key}#${String(c)}`)||(P?.unobserve(N.el),N.el.remove(),g.items.delete(c));g.el.setAttribute("data-gk-theme",d.theme),g.el.setAttribute("data-gk-mode",d.mode),g.el.dataset.shadow=String(d.shadow),g.el.setAttribute("aria-label",d.regionLabel);let E=d.dir;E==="auto"?g.el.removeAttribute("dir"):g.el.setAttribute("dir",E);let D=(c,N)=>{N!==void 0&&g.el.style.setProperty(c,typeof N=="number"?`${N}px`:N);},z=d.offset,O=typeof z=="object"&&z!==null;for(let c of ["top","bottom","left","right"])D(`--gk-offset-${c}`,O?z[c]:z);D("--gk-mobile-offset",d.mobileOffset),g.items.size===0?(g.el.remove(),o.delete(g.key)):w(g);}};s.push(e.subscribe(v),e.config.subscribe(v));let R=d=>{for(let n of e.getToasts())S(n).includes("hidden")&&(d?e.pause(n.id,"hidden"):e.resume(n.id,"hidden"));},U=()=>{for(let d of o.values()){let n=[...d.items.values()].filter(x=>!x.record.dismissed).pop();if(n)return i=document.activeElement,n.el.focus(),true}return false},A=(d,n,x)=>{d.addEventListener(n,x),s.push(()=>d.removeEventListener(n,x));};return A(document,"visibilitychange",()=>R(document.visibilityState==="hidden")),A(window,"blur",()=>R(true)),A(window,"focus",()=>R(false)),A(window,"resize",()=>o.forEach(w)),A(document,"keydown",(d=>{let n=xt(h().hotkey);n&&d.code===n.code&&d.altKey===n.alt&&d.ctrlKey===n.ctrl&&d.shiftKey===n.shift&&d.metaKey===n.meta&&U()&&d.preventDefault();})),v(),{focus:U,destroy(){for(let d of s.splice(0))d();P?.disconnect();for(let d of o.values())d.el.remove();o.clear(),l?.host.remove(),l=void 0;}}}function ue(){return se()&&typeof window<"u"}var ge={now:()=>Date.now(),setTimeout:(e,t)=>{let o=setTimeout(e,t);return ()=>clearTimeout(o)},setInterval:(e,t)=>{let o=setInterval(e,t);return ()=>clearInterval(o)}};var Et=0;function Dt(e="gk"){return `${e}-${++Et}`}function Be(e,t="gk"){return e!==void 0&&e!==""?e:Dt(t)}var Ie=Object.freeze({theme:"ios-glass",mode:"auto",position:"top-right",duration:4e3,maxVisible:8,gap:12,stack:true,dir:"auto",hotkey:"alt+t",pauseOn:["hover","focus","hidden"],shadow:true,closeButton:false,richColors:false,invert:false,swipe:true,dragThreshold:45,progress:false,closeOnClick:false,exitDuration:250,historyLimit:100,regionLabel:"Notifications",closeLabel:"Close notification",startPaused:false,newestOnTop:true,dedupeWindow:500,container:void 0});function He(e={}){let t=Object.freeze({...Ie,...$e(e)}),o=new Set,s=()=>{o.forEach(i=>i());};return {get:()=>t,set(i){return t=Object.freeze({...t,...$e(i)}),s(),t},reset(){t=Ie,s();},subscribe(i){return o.add(i),()=>{o.delete(i);}}}}function $e(e){let t={};for(let o in e)e[o]!==void 0&&(t[o]=e[o]);return t}function me(e,t,o=ge){let s=e,i=e,u=0,l,h,S=false,b=false,a=new Map,f=new Set,k=()=>Number.isFinite(i)&&i>0,w=()=>{if(f.size===0)return;let $=P(),H=s>0?Math.max(0,Math.min(1,$/s)):0;for(let C of f)try{C($,H);}catch(r){console.error(r);}},P=()=>b?0:S&&a.size===0?Math.max(0,i-(o.now()-u)):i,I=()=>{l?.(),l=void 0,h?.(),h=void 0;},B=()=>{I(),!(!k()||a.size>0||b)&&(u=o.now(),l=o.setTimeout(()=>{I(),i=0,b=true,S=false,w(),t();},i),f.size>0&&(h=o.setInterval(()=>{w();},50)));};return {start(){b||!k()||(S=true,a.clear(),B(),w());},pause:($="manual")=>{b||(a.set($,(a.get($)??0)+1),S&&a.size===1&&(i=Math.max(0,i-(o.now()-u)),I(),w()));},resume:($="manual")=>{if(b)return;let H=a.get($);H&&(H<=1?a.delete($):a.set($,H-1),S&&a.size===0&&k()&&(B(),w()));},clearReasons(){a.clear(),S&&k()&&B();},add($){if(b||!Number.isFinite(i))return;let H=S&&a.size===0;i=Math.max(1,(H?i-(o.now()-u):i)+$),s=Math.max(s,i),H&&B(),w();},reset($){b=false,i=s=$!==void 0?$:s,S&&a.size===0&&(k()?B():I()),w();},cancel(){I(),S=false,b=true,i=0;},remaining:P,elapsed(){return Math.max(0,s-P())},isRunning:()=>S&&!b&&!a.size&&k(),isPaused:()=>a.size>0,pausedReasons:()=>[...a.keys()],onTick($){return f.add($),S&&a.size===0&&!h&&(h=o.setInterval(w,50)),()=>{f.delete($),f.size===0&&h&&(h(),h=void 0);}}}}var oe=(e,t="polite")=>({color:`var(--gk-${e})`,ariaLive:t}),St={success:oe("success"),error:oe("error","assertive"),warning:oe("warning","assertive"),info:oe("info"),loading:{...oe("info"),defaults:{duration:0,dismissible:false}},message:oe("fg")};function ze(){let e=new Map;return {add(t,o={}){let s=typeof t=="string"?t.trim():"";if(!s)throw new TypeError("toastory: invalid type");e.set(s,o);},remove:t=>e.delete(t),get:t=>e.get(t)??St[t],list:()=>[...e.keys()]}}var Rt=new Set(["user","swipe","click"]),he=(e,...t)=>{try{e?.(...t);}catch(o){console.error(o);}},Lt="manual",Mt={loading:{duration:0}};function Ne(e={}){let t=e.config??He(),o=e.clock??ge,s=e.now??(()=>o.now()),i=e.types??ze(),u=new Map,l=[],h=[],S=[],b=new Set,a=()=>{h=l.map(r=>u.get(r)?.record).filter(Boolean),b.forEach(r=>r());},f=r=>`${r.container??""}|${r.position}`,k=(r,v,T,R)=>{let U=t.get(),A=v.type??"default",d={...Mt[A],...i.get(A)?.defaults,...v},n=d.duration??U.duration,x=Number.isFinite(n)&&n>0?n:0,g=d.important||A==="error",E=s();return {...d,id:r,type:A,duration:x,position:d.position??U.position,ariaLive:d.ariaLive??(g?"assertive":"polite"),role:d.role??(g?"alert":"status"),createdAt:T?.createdAt??E,updatedAt:E,revision:(T?.revision??-1)+1,timerEpoch:T?.timerEpoch??0,count:T?.count??1,visible:T?.visible??false,dismissed:false,pausedBy:T?.pausedBy??(U.startPaused?[Lt]:[]),remaining:T?.remaining??(x||1/0),custom:R}},w=r=>r.record.duration===0?1/0:r.timer.remaining(),P=r=>{if(r.dedupe===false)return;if(typeof r.dedupe=="string")return r.dedupe;let v=typeof r.title=="string"?r.title:"",T=typeof r.description=="string"?r.description:"";return v||T?`${r.type??"default"}|${v}|${T}`:void 0},I=()=>{let r=t.get(),v=new Map;for(let T of l){let R=u.get(T);if(!R||R.record.dismissed)continue;let U=f(R.record),A=v.get(U)??0,d=!!R.record.important;A<r.maxVisible||d?(R.record.visible||(R.record={...R.record,visible:true},!R.record.pausedBy.length&&R.record.duration>0&&R.timer.start()),d||v.set(U,A+1)):R.record.visible&&(R.record={...R.record,visible:false},R.timer.pause());}},B=r=>{r.exitHandle?.(),r.timer.cancel(),u.delete(r.record.id),l=l.filter(v=>v!==r.record.id),S=[{...r.record,dismissed:true},...S].slice(0,t.get().historyLimit),I(),H(),a(),r.closedFired||(r.closedFired=true,he(r.record.onClose,r.record,r.reason??"api"));},y=(r,v)=>{if(r.record.dismissed||r.record.dismissible===false&&Rt.has(v))return;r.reason=v,r.record={...r.record,dismissed:true,remaining:0,revision:r.record.revision+1},r.timer.cancel(),!r.dismissFired&&v!=="auto"&&(r.dismissFired=true,he(r.record.onDismiss,r.record,v)),I(),H(),a();let T=t.get().exitDuration;T<=0||!r.record.visible?B(r):r.exitHandle=o.setTimeout(()=>B(r),T);},F=(r,v)=>{let{custom:T,...R}=v,U=k(r,R,void 0,T),A={opts:R,custom:T,record:U,timer:void 0,dedupeKey:P(R),exitHandle:void 0,reason:void 0,openedFired:false,closedFired:false,dismissFired:false,autoCloseFired:false};return A.timer=me(U.duration,()=>{A.autoCloseFired||(A.autoCloseFired=true,he(A.record.onAutoClose,A.record)),y(A,"auto");},o),U.pausedBy.length&&A.timer.pause(),A},$=r=>{r.timer.cancel(),r.record.duration>0&&(r.timer.reset(r.record.duration),r.record.visible&&!r.record.pausedBy.length&&r.timer.start()),r.record={...r.record,timerEpoch:r.record.timerEpoch+1,remaining:w(r)};},H=()=>{for(let r of l){let v=u.get(r);v&&v.record.visible&&!v.openedFired&&!v.record.dismissed&&(v.openedFired=true,he(v.record.onOpen,v.record));}},C={config:t,types:i,add(r){let v=Be(r.id),T=u.get(v);if(T&&!T.record.dismissed){let{custom:A,...d}=r;return C.update(v,d),A&&(T.custom=A,T.record={...T.record,custom:A},a()),v}T&&B(T);let R=P(r);if(R!==void 0){for(let A of u.values())if(A.dedupeKey===R&&!A.record.dismissed)return A.record={...A.record,count:A.record.count+1,revision:A.record.revision+1,updatedAt:s()},$(A),a(),A.record.id}let U=F(v,r);return u.set(v,U),l=[...l,v],I(),a(),H(),v},update(r,v){let T=u.get(r);if(!T||T.record.dismissed)return false;let{resetTimer:R=true,...U}=v,A={...T.opts};U.type!==void 0&&U.type!==T.record.type&&(delete A.duration,delete A.ariaLive,delete A.role,delete A.icon);let d=false;for(let g in U){let E=U[g];E!==void 0&&(T.opts[g]!==E&&(d=true),A[g]=E);}if(!d&&U.type===void 0&&U.position===void 0)return true;T.opts=A,T.dedupeKey=P(A);let n=k(r,A,T.record,T.custom),x=n.position!==T.record.position;return T.record=n,x&&(T.record={...T.record,visible:false},I()),R||x?$(T):T.record={...T.record,remaining:w(T)},a(),H(),true},dismiss(r,v="api"){if(r===void 0)return C.dismissAll(v);let T=u.get(r);T&&y(T,v);},dismissAll(r="api"){for(let v of u.values())y(v,r);},pause(r,v){let T=r===void 0?[...u.values()]:[u.get(r)].filter(R=>!!R);for(let R of T)R.record.pausedBy.includes(v)||(R.timer.pause(v),R.record={...R.record,pausedBy:[...R.record.pausedBy,v],remaining:w(R)});a();},resume(r,v){let T=r===void 0?[...u.values()]:[u.get(r)].filter(R=>!!R);for(let R of T){if(!R.record.pausedBy.includes(v))continue;R.timer.resume(v);let U=R.record.pausedBy.filter(A=>A!==v);R.record={...R.record,pausedBy:U,remaining:w(R)},!U.length&&R.record.visible&&R.record.duration>0&&R.timer.start();}a();},extend(r,v){let T=u.get(r);!T||T.record.dismissed||(T.timer.add(v),T.record={...T.record,remaining:w(T),timerEpoch:T.record.timerEpoch+1,revision:T.record.revision+1},a());},getRemaining(r){let v=u.get(r);return v?w(v):0},getToasts:()=>h,getHistory:()=>S,clear(){for(let r of u.values())r.exitHandle?.(),r.timer.cancel();u.clear(),l=[],h=[],a();},clearHistory(){S=[],a();},subscribe(r){return b.add(r),()=>{b.delete(r);}}};return C}function Fe(e){return typeof e=="string"?{title:e}:e}function Ot(e){return e instanceof Error?e.message:String(e)}function _e(e,t,o,s={}){let i;try{i=typeof t=="function"?t():t;}catch(a){i=Promise.reject(a);}let{id:u,...l}=s,h=Fe(o.loading),S=e.add({...l,id:u,...h,type:"loading",duration:0}),b=(a,f,k)=>{let w=typeof o.description=="function"?o.description(a==="success"?{status:a,value:k}:{status:a,error:k}):o.description;e.update(S,{duration:l.duration??e.config.get().duration,...Fe(f),type:a,...w!==void 0?{description:w}:{},resetTimer:true});};return i.then(a=>{o.success===void 0?e.dismiss(S):b("success",typeof o.success=="function"?o.success(a):o.success,a);}).catch(a=>{b("error",o.error===void 0?Ot(a):typeof o.error=="function"?o.error(a):o.error,a);}).finally(()=>{try{o.finally?.();}catch(a){console.error(a);}}),{id:S,unwrap:()=>i}}var Ue=e=>e instanceof Error?e.message:String(e);function ne(e){let t={...e},o=null,s,i=true,u=0,l,h=()=>t.inputValue,S=()=>{},b=new Set,a=new Promise(y=>{S=y;}),f={options:t,loading:o,error:s,open:i,revision:u},k=()=>{u+=1,f={options:t,loading:o,error:s,open:i,revision:u};for(let y of [...b])y();},w=y=>{if(!i)return;let F={isConfirmed:false,isDenied:false,isDismissed:false,value:void 0,dismiss:void 0,...y};t.willClose?.(I,F),i=false,l?.cancel(),k(),S(F);},P=y=>{l?.cancel(),l=void 0,y>0&&Number.isFinite(y)&&(l=me(y,()=>{w({isDismissed:true,dismiss:"timer"});}),l.start());},I={result:a,close(y){w(y??{isDismissed:true,dismiss:"close"});},update(y){i&&(t={...t,...y},y.timer!==void 0&&P(y.timer),k());},setLoading(y){i&&(o=y===true?"confirm":y===false?null:y,k());},showError(y){i&&(s=y??void 0,k());},timer:{pause:()=>{l?.pause(),k();},resume:()=>{l?.resume(),k();},add:y=>{l?l.add(y):P(Math.max(1,y)),k();},remaining:()=>l?.remaining()??0,paused:()=>l?!l.isRunning()&&l.remaining()>0:false}};return {handle:I,getState:()=>f,subscribe(y){return b.add(y),()=>{b.delete(y);}},setValueReader(y){h=y;},opened(){i&&(t.timer!==void 0&&P(t.timer),k(),t.didOpen?.(I));},async submit(y){if(!i||o)return;let F=h();if(s!==void 0&&(s=void 0,k()),y==="confirm"&&t.validate){o="confirm",k();let H;try{H=await t.validate(F,I);}catch(C){H=Ue(C);}if(o=null,!i)return;if(typeof H=="string"&&H){s=H,k();return}k();}let $=y==="confirm"?t.preConfirm:t.preDeny;if($){o=y,k();let H;try{H=await $(F,I);}catch(C){o=null,i&&(s=Ue(C),k());return}if(o=null,!i)return;if(H===false){k();return}H!==void 0&&(F=H);}w({isConfirmed:y==="confirm",isDenied:y==="deny",value:F});},dismiss(y){return !i||o&&y!=="timer"||y==="backdrop"&&t.allowOutsideClick===false||y==="esc"&&t.allowEscape===false?false:(w({isDismissed:true,dismiss:y}),true)}}}async function ve(e,t,o="Back"){let s=[],i=0,u={isConfirmed:false,isDenied:false,isDismissed:true,value:void 0,dismiss:"close"};for(;i<e.length;){let l=e[i];if(!l){i+=1;continue}let h=i>0?{...l,denyButton:{show:true,label:o,...l.denyButton}}:l,S=s[i],b=typeof S=="string"||typeof S=="number"||typeof S=="boolean"?S:h.inputValue;if(u=await t({...h,inputValue:b}),u.isConfirmed)s[i]=u.value,i+=1;else if(u.isDenied&&i>0)i-=1;else return {...u,values:s.slice(0,i),step:i}}return {...u,values:s,step:Math.max(0,e.length-1)}}function Ve(e){let t=s=>(i,u={})=>{let l={type:s,...u};return u.type!==void 0&&(l.type=u.type),i!==void 0&&(u.title===void 0?l.title=i:u.description===void 0&&(l.description=i)),e.add(l)},o=t();return o.success=t("success"),o.error=t("error"),o.info=t("info"),o.warning=t("warning"),o.loading=t("loading"),o.message=t("message"),o.custom=(s,i)=>e.add({...i,custom:s}),o.update=e.update,o.dismiss=e.dismiss,o.dismissAll=e.dismissAll,o.getToasts=e.getToasts,o.getHistory=e.getHistory,o.types=e.types,o.promise=(s,i,u)=>_e(e,s,i,u),o}function Ge(e={}){let t=Ne({config:e.config});return {store:t,toast:Ve(t)}}var J=[],Ke=new WeakMap,We=0,qe="",Ye="";function Pt(){if(We++>0)return;let e=document.body,t=window.innerWidth-document.documentElement.clientWidth;qe=e.style.overflow,Ye=e.style.paddingRight,e.style.overflow="hidden",t>0&&(e.style.paddingRight=`${t}px`);}function At(){--We>0||(document.body.style.overflow=qe,document.body.style.paddingRight=Ye);}function je(e){let t=J[J.length-1];if(!t)return;let o=Ke.get(t);if(e.key==="Escape"){e.preventDefault(),e.stopPropagation(),o?.onEscape?.();return}if(e.key!=="Tab"||o?.trap===false)return;let s=t.root,i=Le(s),u=i[0],l=i[i.length-1];if(!u||!l){e.preventDefault();return}let h=document.activeElement;e.shiftKey&&(h===u||!s.contains(h))?(e.preventDefault(),l.focus()):!e.shiftKey&&(h===l||!s.contains(h))&&(e.preventDefault(),u.focus());}function ie(e){let t=e.backdrop??"blur",o=p("div","gk-backdrop"),s=t==="blur"||t==="dim"||t==="none";o.dataset.kind=s?t:"custom",s||(o.style.background=t);let i=p("div",`gk-overlay gk-root${e.className?` ${e.className}`:""}`,{"data-gk-theme":e.theme,"data-gk-mode":e.mode,"data-state":"closed"},o);e.dir!=="auto"&&i.setAttribute("dir",e.dir);let u=document.activeElement,l=[];for(let a of [...document.body.children])/gk-(region|overlay)/.test(a.className)||(l.push({node:a,inert:a.hasAttribute("inert"),aria:a.getAttribute("aria-hidden")}),a.setAttribute("inert",""),a.setAttribute("aria-hidden","true"));Pt();let h=false;i.addEventListener("pointerdown",a=>{h=a.target===i||a.target===o;}),i.addEventListener("click",a=>{h&&(a.target===i||a.target===o)&&e.onBackdrop?.(),h=false;}),document.body.append(i);let S,b={root:i,show(){ae()||typeof requestAnimationFrame!="function"?i.dataset.state="open":requestAnimationFrame(()=>{i.dataset.state="open";});},close(){return S||(S=new Promise(a=>{let f=J.indexOf(b);f>=0&&J.splice(f,1),J.length===0&&document.removeEventListener("keydown",je,true),i.dataset.state="closing";for(let w of l)w.inert||w.node.removeAttribute("inert"),w.aria===null?w.node.removeAttribute("aria-hidden"):w.node.setAttribute("aria-hidden",w.aria);At(),u instanceof HTMLElement&&u.isConnected&&u.focus();let k=()=>{i.remove(),a();};ae()?k():setTimeout(k,220);}),S)}};return Ke.set(b,{trap:e.trap!==false,onEscape:e.onEscape}),J.length===0&&document.addEventListener("keydown",je,true),J.push(b),b}var Xe=Symbol.for("toastory.engine.v1");function j(){let e=globalThis,t=e[Xe];if(t)return t;let{store:o,toast:s}=Ge(),i={store:o,toast:s,autoMount:true,toaster:void 0};return o.subscribe(()=>{i.autoMount&&!i.toaster&&ue()&&o.getToasts().length>0&&(i.toaster=ce(o));}),e[Xe]=i,i}function Te(e){let t=j();t.autoMount=e,!e&&t.toaster?(t.toaster.destroy(),t.toaster=void 0):e&&!t.toaster&&ue()&&t.store.getToasts().length>0&&(t.toaster=ce(t.store));}function Qe(e){return j().store.config.set(e)}function Je(e){return e?Array.isArray(e)?e.map(t=>typeof t=="string"?{value:t,label:t}:t):Object.keys(e).map(t=>({value:t,label:e[t]})):[]}function Ze(e,t){if(t)for(let o in t){let s=t[o];s!==void 0&&e.setAttribute(o,s);}}function et(e,t){let o=e.input;if(!o)return;let s=K("gk-input"),i=e.inputValue,u=e.inputLabel,l=u?p("label","gk-label",{for:s},u):null,h=(...f)=>{let k=p("div","gk-input");for(let w of f)w&&k.append(w);return k},S=f=>{f.id=s,f.classList.add("gk-field"),u||f.setAttribute("aria-labelledby",t),Ze(f,e.inputAttributes);},b=(f,k,w,P)=>({node:h(l,f),focusTarget:k,fields:w,read:P});if(o==="textarea"){let f=p("textarea","",{placeholder:e.placeholder,rows:"3"});return f.value=i===void 0?"":String(i),S(f),b(f,f,[f],()=>f.value)}if(o==="select"){let f=p("select");e.placeholder&&f.append(p("option","",{value:"",disabled:""},e.placeholder));for(let k of Je(e.options))f.append(p("option","",{value:k.value,disabled:k.disabled?"":void 0},k.label));return f.value=i===void 0?"":String(i),S(f),b(f,f,[f],()=>f.value)}if(o==="radio"){let f=p("fieldset","gk-radios");f.append(p("legend",u?"gk-label":"gk-sr",{},u??"")),u||f.setAttribute("aria-labelledby",t);let k=K("gk-radio"),w=[];for(let I of Je(e.options)){let B=p("input","",{type:"radio",name:k,value:I.value,disabled:I.disabled?"":void 0});B.checked=i!==void 0&&String(i)===I.value,w.push(B),f.append(p("label","gk-choice",{},B,p("span","",{},I.label)));}let P=w.find(I=>!I.disabled)??f;return {node:h(f),focusTarget:w.find(I=>I.checked)??P,fields:w,read:()=>w.find(I=>I.checked)?.value}}if(o==="checkbox"){let f=p("input","",{type:"checkbox"});f.checked=i===true||i==="true"||i===1,f.id=s,Ze(f,e.inputAttributes);let k=u??e.placeholder??"";return {node:h(p("label","gk-choice",{for:s},f,p("span","",{},k))),focusTarget:f,fields:[f],read:()=>f.checked}}let a=p("input","",{type:o,placeholder:e.placeholder});if(o!=="file"&&i!==void 0&&(a.value=String(i)),S(a),o==="range"){let f=p("output","gk-output",{for:s},a.value);return a.addEventListener("input",()=>{f.textContent=a.value;}),{node:h(l,a,f),focusTarget:a,fields:[a],read:()=>Number(a.value)}}if(o==="otp"){let f=e.otpLength??6,k=e.otpType==="alphanumeric",w=p("div","gk-otp"),P=[];for(let B=0;B<f;B++){let y=p("input","gk-field gk-otp-input",{type:"text",maxLength:"1",inputmode:k?"text":"numeric",autocomplete:B?"off":"one-time-code","aria-label":`Digit ${B+1} of ${f}`});P.push(y),w.append(y),y.addEventListener("input",()=>{k||(y.value=y.value.replace(/\D/g,"")),y.value&&P[B+1]&&P[B+1]?.focus();let F=P.map($=>$.value).join("");F.length===f&&e.onOtpComplete?.(F);}),y.addEventListener("keydown",F=>{let $=P[B-1],H=P[B+1];F.key==="Backspace"&&!y.value&&$||F.key==="ArrowLeft"&&$?$.focus():F.key==="ArrowRight"&&H&&H.focus();}),y.addEventListener("paste",F=>{let $=F.clipboardData?.getData("text")||"",H=(k?$.replace(/[^a-zA-Z0-9]/g,""):$.replace(/\D/g,"")).slice(0,f);H&&(F.preventDefault(),P.forEach((C,r)=>{C.value=H[r]||"";}),P[Math.min(H.length,f-1)]?.focus(),H.length===f&&e.onOtpComplete?.(H));});}if(typeof e.inputValue=="string"){let B=e.inputValue.slice(0,f);P.forEach((y,F)=>{y.value=B[F]||"";});}let I=null;if(e.resendCooldown!==void 0){let B=e.resendCooldown,y=p("p","gk-otp-resend"),F=p("button","gk-btn-resend",{type:"button"},"Resend code"),$=p("span","",{},B>0?` (${B}s)`:"");if(F.disabled=B>0,y.append("Didn't get it? ",F,$),B>0){let H=setInterval(()=>{--B<=0?(clearInterval(H),$.textContent="",F.disabled=false):$.textContent=` (${B}s)`;},1e3);}F.addEventListener("click",()=>{F.disabled||e.onResend?.();}),I=y;}return {node:h(l,w,I),focusTarget:P[0]??w,fields:P,read:()=>P.map(B=>B.value).join("")}}return b(a,a,[a],()=>o==="file"?a.multiple?[...a.files??[]]:a.files?.[0]:o==="number"?a.value===""?void 0:Number(a.value):a.value)}function xe(e,t,o,s){let i=t?.show??s;e.hidden=!i,e.textContent=t?.label??o,t?.aria?e.setAttribute("aria-label",t.aria):e.removeAttribute("aria-label"),t?.color?e.style.setProperty("--gk-button",t.color):e.style.removeProperty("--gk-button");}function tt(e){if(typeof document>"u")throw new Error("toastory: DOM required");let t=j().store.config.get(),o=ne(e),s=K("gk-title"),i=K("gk-text"),u=K("gk-error"),l,h="",S=ie({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,onEscape:()=>{o.dismiss("esc");},onBackdrop:()=>{o.dismiss("backdrop");}}),b=p("div","gk-dialog",{tabindex:"-1","aria-modal":"true","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode}),a=p("button","gk-dialog-close",{type:"button"},W("close")),f=p("img","gk-image"),k=p("div","gk-dialog-icon"),w=p("h2","gk-dialog-title",{id:s}),P=p("div","gk-dialog-text",{id:i}),I=p("div","gk-dialog-notice",{role:"note"});I.hidden=true;let B=p("span","gk-countdown-num"),y=p("div","gk-countdown-big",{"aria-atomic":"true"},B,"s");y.hidden=true;let F=p("div","gk-input-box"),$=p("div","gk-error",{id:u,role:"alert"}),H=O=>p("button",`gk-btn gk-${O} gk-btn--${O}`,{type:"button"}),C=H("confirm"),r=H("deny"),v=H("cancel"),T=p("div","gk-dialog-buttons gk-dialog-actions",{},v,r,C),R=p("div","gk-dialog-footer"),U=p("i"),A=p("div","gk-timer",{"aria-hidden":"true"},U);b.append(a,f,k,w,P,I,y,F,$,T,R,A),S.root.append(b);let d=-1,n=false,x=O=>{let c=O.options,N=c.theme??e.theme??t.theme,m=pe(N,c.variant??e.variant);m?b.setAttribute("data-gk-variant",m):b.removeAttribute("data-gk-variant"),b.className=["gk-dialog",c.className].filter(Boolean).join(" "),b.dataset.tone=c.tone??"info",b.dataset.grow=c.grow??"";let[L,M]=(c.position??"center-center").split("-");if(S.root.dataset.row=L,S.root.dataset.col=M,b.style.width=c.width===void 0?"":be(c.width),b.style.padding=c.padding===void 0?"":be(c.padding),b.setAttribute("role",!c.input&&(c.tone==="danger"||c.tone==="warning")?"alertdialog":"dialog"),w.textContent=c.title??"",w.hidden=!c.title,c.title?b.setAttribute("aria-labelledby",s):b.removeAttribute("aria-labelledby"),P.replaceChildren(),c.text&&P.append(c.text),c.html){let V=Q(c.html);V&&P.append(V);}if(P.hidden=!c.text&&!c.html,P.hidden?b.removeAttribute("aria-describedby"):b.setAttribute("aria-describedby",i),k.replaceChildren(),k.dataset.tone=c.tone??(c.icon==="warning"?"warning":c.icon==="error"||c.icon==="trash"?"danger":c.icon==="success"?"success":"info"),c.icon==="custom")Y(k,c.iconContent);else if(c.icon){let V=W(c.icon);V&&k.append(V);}if(k.hidden=!c.icon,k.dataset.icon=c.icon??"",I.hidden=!c.notice,c.notice){if(I.replaceChildren(),I.dataset.tone=c.notice.tone??"warning",c.notice.icon)Y(I,c.notice.icon);else {let V=W(c.notice.tone==="danger"?"error":c.notice.tone==="info"?"info":"shield");V&&I.append(V);}I.append(p("span","",{},c.notice.text));}if(y.hidden=c.countdown===void 0,c.countdown!==void 0){let V=Math.max(0,Math.ceil(o.handle.timer.remaining()/1e3));B.textContent=String(V),y.setAttribute("aria-live",V===30||V===10||V===5?"assertive":"off");}c.image&&(f.src=c.image.src,f.alt=c.image.alt,c.image.width&&(f.width=c.image.width),c.image.height&&(f.height=c.image.height)),f.hidden=!c.image,c.closeButtonLabel&&a.setAttribute("aria-label",c.closeButtonLabel),a.hidden=!c.closeButtonLabel;let _=`${c.input??""}|${JSON.stringify(c.options??null)}|${c.inputLabel??""}|${c.placeholder??""}`;if(_!==h){h=_;let V=l?l.read():void 0;if(F.replaceChildren(),l=et(c,s),l){if(F.append(l.node),V!==void 0&&typeof V!="object"){let q=l.focusTarget;q instanceof HTMLInputElement&&q.type!=="checkbox"&&q.type!=="radio"&&(q.value=String(V));}for(let q of l.fields)q.addEventListener("keydown",X=>{let re=X.target,lt=re instanceof HTMLTextAreaElement;X.key==="Enter"&&!(lt&&!X.ctrlKey&&!X.metaKey)&&re.tagName!=="SELECT"&&(X.preventDefault(),o.submit("confirm"));});o.setValueReader(l.read);}else o.setValueReader(()=>{});}F.hidden=!l;for(let V of l?.fields??[])O.error?(V.setAttribute("aria-invalid","true"),V.setAttribute("aria-describedby",u)):(V.removeAttribute("aria-invalid"),V.removeAttribute("aria-describedby"));$.textContent=O.error??"",$.hidden=!O.error,xe(C,c.confirmButton,"OK",true),xe(r,c.denyButton,"No",false),xe(v,c.cancelButton,"Cancel",false),T.dataset.reverse=c.reverseButtons?"true":"false",T.dataset.layout=c.buttonLayout??(m==="update-info"?"stack":m==="ios-glass-alert"?"divided":"row"),T.hidden=C.hidden&&r.hidden&&v.hidden;let G=O.loading,ee=G==="confirm",fe=G==="deny";if(C.disabled=r.disabled=G!==null,C.setAttribute("aria-busy",String(ee)),r.setAttribute("aria-busy",String(fe)),C.dataset.loading=String(ee),r.dataset.loading=String(fe),b.setAttribute("aria-busy",String(G!==null)),c.confirmText){let V=()=>{let q=String(l?l.read():""),X=c.confirmText??"",re=c.caseSensitive?q===X:q.trim().toLowerCase()===X.toLowerCase();C.disabled=!re||O.loading!==null,C.setAttribute("aria-disabled",String(!re));};V();for(let q of l?.fields??[])q.addEventListener("input",V);}if(R.replaceChildren(),c.footer){let V=Q(c.footer);V&&R.append(V);}R.hidden=!c.footer;let te=o.handle.timer.remaining();A.hidden=!(c.timerProgressBar&&te>0),!A.hidden&&Math.abs(te-d)>60&&(d=te,U.style.animation="none",U.offsetWidth,U.style.animation="",U.style.setProperty("--gk-d",`${te}ms`)),U.style.animationPlayState=o.handle.timer.paused()?"paused":"running",O.open||S.close();};if(a.addEventListener("click",()=>{o.dismiss("close");}),C.addEventListener("click",()=>{o.submit("confirm");}),r.addEventListener("click",()=>{o.submit("deny");}),v.addEventListener("click",()=>{o.dismiss("cancel");}),b.addEventListener("pointerenter",()=>{o.handle.timer.remaining()>0&&!o.handle.timer.paused()&&(n=true,o.handle.timer.pause());}),b.addEventListener("pointerleave",()=>{n&&(n=false,o.handle.timer.resume());}),e.draggable){let O,c={x:0,y:0};b.dataset.draggable="true",b.addEventListener("pointerdown",m=>{let L=m.target;L.closest("button,input,select,textarea,a")||!L.closest(".gk-dialog-title,.gk-dialog-icon")||(O={x:m.clientX,y:m.clientY,ox:c.x,oy:c.y},b.setPointerCapture?.(m.pointerId));}),b.addEventListener("pointermove",m=>{O&&(c={x:O.ox+m.clientX-O.x,y:O.oy+m.clientY-O.y},b.style.transform=`translate(${c.x}px, ${c.y}px)`);});let N=()=>{O=void 0;};b.addEventListener("pointerup",N),b.addEventListener("pointercancel",N);}o.subscribe(()=>x(o.getState())),x(o.getState()),S.show();let g=o.getState().options,E=g.focusOn??(l?"input":g.tone==="danger"&&!v.hidden?"cancel":"confirm"),z={confirm:C,deny:r,cancel:v,input:l?.focusTarget,close:a,none:void 0}[E];return z&&!z.hidden?z.focus():E!=="none"&&b.focus(),o.opened(),Object.assign(o.handle.result.then(O=>O),{handle:o.handle})}function we(){if(typeof document>"u")throw new Error("toastory: DOM required")}function ot(e){we();let t=j().store.config.get(),o=ne({allowOutsideClick:e.allowOutsideClick,allowEscape:e.allowEscape}),s=K("gk-title"),i=K("gk-text"),u=ie({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:"gk-overlay-sheet",onEscape:()=>{o.dismiss("esc");},onBackdrop:()=>{o.dismiss("backdrop");}});u.root.dataset.row="bottom",u.root.dataset.col="center";let l=p("div",`gk-sheet${e.className?` ${e.className}`:""}`,{role:"dialog","aria-modal":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode});e.title&&(l.append(p("h2","gk-sheet-title",{id:s},e.title)),l.setAttribute("aria-labelledby",s)),e.message&&(l.append(p("p","gk-sheet-message",{id:i},e.message)),l.setAttribute("aria-describedby",i));let h=p("div","gk-sheet-group",{role:"group"});e.title&&h.setAttribute("aria-labelledby",s);let S;for(let a of e.actions){let f=p("button","gk-sheet-action",{type:"button","data-style":a.style??"default"});if(a.disabled&&(f.disabled=true),a.icon){let k=Q(a.icon);k&&f.append(p("span","gk-sheet-icon",{"aria-hidden":"true"},k));}f.append(p("span","gk-sheet-label",{},a.label)),f.addEventListener("click",()=>{a.style==="cancel"?o.dismiss("cancel"):o.handle.close({isConfirmed:true,value:a.value??a.label});}),!a.disabled&&!S&&(S=f),h.append(f);}l.append(h);let b;return e.cancel!==false&&(b=p("button","gk-sheet-cancel",{type:"button"},e.cancel?.label??"Cancel"),b.addEventListener("click",()=>{o.dismiss("cancel");}),l.append(b)),l.addEventListener("keydown",a=>{if(a.key==="ArrowDown"||a.key==="ArrowUp"){let f=[...l.querySelectorAll("button:not([disabled])")],k=f.indexOf(document.activeElement);k!==-1&&(a.preventDefault(),f[(k+(a.key==="ArrowDown"?1:f.length-1))%f.length]?.focus());}}),u.root.append(l),o.subscribe(()=>{o.getState().open||u.close();}),u.show(),(S??b??l).focus(),o.opened(),Object.assign(o.handle.result.then(a=>a),{handle:o.handle})}function nt(e){we();let t=j().store.config.get(),o=(e.snapPoints?.length?[...e.snapPoints]:[.5]).map(C=>Math.min(1,Math.max(.1,C))).sort((C,r)=>C-r),s=Math.min(o.length-1,Math.max(0,e.initialSnap??0)),i=ne({allowOutsideClick:e.allowOutsideClick,allowEscape:e.allowEscape,willClose:()=>e.willClose?.(H)}),u=K("gk-title"),l=ie({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:"gk-overlay-bottom",onEscape:()=>{i.dismiss("esc");},onBackdrop:()=>{i.dismiss("backdrop");}});l.root.dataset.row="bottom",l.root.dataset.col="center";let h=p("div",`gk-bsheet${e.className?` ${e.className}`:""}`,{role:"dialog","aria-modal":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode});e.variant&&h.setAttribute("data-gk-variant",e.variant);let S=p("button","gk-grab",{type:"button","aria-label":e.handleLabel??"Resize sheet"}),b=p("div","gk-dialog-icon gk-dialog-badge");if(b.hidden=true,e.icon){b.hidden=false,b.dataset.tone=e.tone??"danger";let C=W(e.icon==="trash"?"trash":e.icon==="warning"?"warning":"error");C&&b.append(C);}let a=p("h2","gk-bsheet-title",{id:u}),f=p("div","gk-bsheet-body"),k=p("div","gk-dialog-buttons gk-dialog-actions",{"data-layout":"stack"});if(k.hidden=true,e.confirmButton||e.cancelButton||e.variant==="bottom-sheet-confirm"){k.hidden=false;let C=(r,v,T)=>{let R=p("button",`gk-btn ${r}`,{type:"button"},v);return R.addEventListener("click",T),R};k.append(C("gk-confirm gk-btn--confirm",e.confirmButton?.label??"Confirm",()=>i.submit("confirm")),C("gk-cancel gk-btn--cancel",e.cancelButton?.label??"Cancel",()=>i.dismiss("cancel")));}let w=p("button","gk-dialog-close",{type:"button"});w.append(W("close")),h.append(w,S,b,a,f,k),l.root.append(h);let P=(C,r)=>{h.dataset.dragging=String(!r),h.style.setProperty("--gk-sheet-h",`${C*100}vh`);},I=C=>{if(a.textContent=C.title??"",a.hidden=!C.title,C.title?h.setAttribute("aria-labelledby",u):h.removeAttribute("aria-labelledby"),f.replaceChildren(),C.text&&f.append(C.text),C.html){let r=Q(C.html);r&&f.append(r);}};I(e),S.hidden=e.handle===false,w.hidden=!e.closeButtonLabel,e.closeButtonLabel&&w.setAttribute("aria-label",e.closeButtonLabel),w.addEventListener("click",()=>{i.dismiss("close");}),P(o[s]??.5,true);let B=C=>{s=Math.min(o.length-1,Math.max(0,C)),P(o[s]??.5,true);};S.addEventListener("keydown",C=>{C.key==="ArrowUp"?(C.preventDefault(),B(s+1)):C.key==="ArrowDown"&&(C.preventDefault(),!s&&e.dismissible!==false?i.dismiss("close"):B(s-1));});let y,F=()=>window.innerHeight||1;h.addEventListener("pointerdown",C=>{C.target.closest(".gk-grab,.gk-bsheet-title")&&(y={y:C.clientY,base:o[s]??.5},h.setPointerCapture?.(C.pointerId));}),h.addEventListener("pointermove",C=>{if(!y)return;let r=y.base+(y.y-C.clientY)/F();P(Math.min(o[o.length-1]??1,Math.max(0,r)),false);});let $=C=>{if(!y)return;let r=y.base+(y.y-C.clientY)/F();if(y=void 0,e.dismissible!==false&&r<(o[0]??.5)/2){i.dismiss("close");return}let v=0;o.forEach((T,R)=>{Math.abs(T-r)<Math.abs((o[v]??0)-r)&&(v=R);}),B(v);};h.addEventListener("pointerup",$),h.addEventListener("pointercancel",$);let H={body:f,result:i.handle.result,close:(C="close")=>{i.dismiss(C);},snapTo:B,update:I};return i.subscribe(()=>{i.getState().open||l.close();}),l.show(),(S.hidden?h:S).focus(),e.didOpen?.(H),H}function it(e={}){we();let t=j().store.config.get(),o=true,s=()=>{},i=new Promise(P=>{s=P;}),u=ie({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:`gk-overlay-loading${e.className?` ${e.className}`:""}`,trap:false,onEscape:()=>{e.allowEscape&&w.close();}});u.root.dataset.row="center",u.root.dataset.col="center";let l=W("loading");l.classList.add("gk-loading-spinner"),l.setAttribute("width","32"),l.setAttribute("height","32");let h=p("div","gk-loading-text",{id:K("gk-text")}),S=p("i"),b=p("div","gk-loading-bar",{role:"progressbar","aria-valuemin":"0","aria-valuemax":"100"},S),a=p("div","gk-loading",{role:"status","aria-live":"polite","aria-busy":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode},l,h,b);u.root.append(a);let f={text:e.text??e.title,progress:e.progress},k=P=>{if(f=P,h.textContent=P.text??"",h.hidden=!P.text,P.progress===void 0)b.hidden=true,b.removeAttribute("aria-valuenow");else {let I=Math.round(Math.min(1,Math.max(0,P.progress))*100);b.hidden=false,b.setAttribute("aria-valuenow",String(I)),P.text&&b.setAttribute("aria-label",P.text),S.style.width=`${I}%`;}};k(e),u.show(),a.focus();let w={closed:i,update(P){o&&k({...f,...P});},close(){o&&(o=false,u.close().then(s));}};return w}var rt=e=>`--gk-bg:${e.bg};--gk-bg-solid:${e.solid};--gk-fg:${e.fg};--gk-muted:${e.muted};--gk-border:${e.border};--gk-shadow:${e.shadow};--gk-accent:${e.accent};--gk-accent-fg:${e.accentFg};--gk-danger:${e.danger};--gk-danger-fg:${e.dangerFg};--gk-success:${e.success};--gk-error:${e.error};--gk-warning:${e.warning};--gk-info:${e.info};`;function st(e){let t=`[data-gk-theme="${e.name}"]`,o=`--gk-radius:${e.radius};--gk-blur:${e.blur};--gk-saturate:${e.saturate};`+(e.borderWidth?`--gk-border-w:${e.borderWidth};`:"")+(e.font?`--gk-font:${e.font};`:"")+(e.ease?`--gk-ease:${e.ease};`:"")+(e.duration?`--gk-duration:${e.duration};`:""),s=`${t}[data-gk-mode="dark"],:is(.dark,[data-theme="dark"]) ${t}`,i=(e.css??"").split("&").join(t),u=rt(e.dark);return `${t}{color-scheme:light;${o}${rt(e.light)}}${s}{color-scheme:dark;${u}}@media (prefers-color-scheme:dark){${t}[data-gk-mode="auto"]{color-scheme:dark;${u}}}`+i}var Bt={bg:"#ffffff",solid:"#ffffff",fg:"#1d1d1f",muted:"#515156",border:"rgba(60,60,67,0.22)",shadow:"0 8px 28px rgba(0,0,0,0.14)",accent:"#0057c2",accentFg:"#ffffff",danger:"#b71c1c",dangerFg:"#ffffff",success:"#1a7f37",error:"#b71c1c",warning:"#8a5a00",info:"#0b5cc7"},It={bg:"#1c1c1e",solid:"#1c1c1e",fg:"#f5f5f7",muted:"#b4b4bb",border:"rgba(255,255,255,0.16)",shadow:"0 8px 28px rgba(0,0,0,0.5)",accent:"#4da3ff",accentFg:"#00152e",danger:"#ff8a8a",dangerFg:"#2b0000",success:"#4ade80",error:"#ff7b7b",warning:"#ffc857",info:"#6cb6ff"},$t=new Map;function at(e,t){let o=t.tokens,s=t.light??(o&&typeof o=="object"&&"light"in o?o.light:o),i=t.dark??(o&&typeof o=="object"&&"dark"in o?o.dark:void 0),u={name:e,radius:t.radius??"16px",blur:t.blur??"16px",saturate:t.saturate??"160%",font:t.font,ease:t.ease,duration:t.duration,borderWidth:t.borderWidth,light:{...Bt,...s},dark:{...It,...i},css:t.css,supportedVariants:t.supportedVariants};$t.set(e,u);let l=st(u);if(typeof document<"u"){let h=document.querySelector(`style[data-gk-theme="${e}"]`);h||(h=document.createElement("style"),h.setAttribute("data-gk-theme",e),document.head.append(h)),h.textContent=l;}return l}function Ht(){let e=(t,o,s={})=>tt({...t,...s,cancelButton:{show:o,...t.cancelButton}});return {toast:j().toast,confirm:(t={})=>e(t,true),alert:(t={})=>e(t,false),prompt:(t={})=>e(t,true,{input:t.input??"text"}),steps:(t,o)=>ve(t,s=>e(s,true),o),sheet:ot,bottomSheet:nt,loading:it,configure:Qe,defineTheme:at,get toastStore(){return j().store}}}var Z=Ht(),Ce=j().toast;var Ft=vue.defineComponent({name:"ToastoryToaster",props:{theme:{type:String,default:void 0},mode:{type:String,default:void 0},position:{type:String,default:void 0},duration:{type:Number,default:void 0},maxVisible:{type:Number,default:void 0},gap:{type:Number,default:void 0},stack:{type:Boolean,default:void 0},dir:{type:String,default:void 0},hotkey:{type:String,default:void 0},richColors:{type:Boolean,default:void 0},closeButton:{type:Boolean,default:void 0},shadow:{type:Boolean,default:void 0}},setup(e){let t=j();return vue.onMounted(()=>{let o={};for(let[s,i]of Object.entries(e))i!==void 0&&(o[s]=i);if(Object.keys(o).length>0&&t.store.config.set(o),Te(false),ue()){let s=ce(t.store);vue.onUnmounted(()=>{s.destroy(),Te(true);});}}),()=>null}}),dt=Ft;function nn(){let e=j(),t=vue.shallowRef(e.store.getToasts()),o=e.store.subscribe(()=>{t.value=e.store.getToasts();});return vue.onUnmounted(()=>{o();}),{toast:e.toast,toasts:t}}function _t(){let e=j(),t=vue.shallowRef(e.store.getToasts()),o=vue.shallowRef(e.store.config.get()),s=e.store.subscribe(()=>{t.value=e.store.getToasts();}),i=e.store.config.subscribe(()=>{o.value=e.store.config.get();});return vue.onUnmounted(()=>{s(),i();}),{ui:Z,toast:e.toast,toasts:t,config:o}}var rn=_t,Ut={install(e,t){t&&Z.configure(t),e.config.globalProperties.$toastory=Z,e.config.globalProperties.$glaze=Z,e.config.globalProperties.$toast=Ce,e.provide("toastory",Z),e.provide("glaze",Z),e.provide("toast",Ce),e.component("ToastoryToaster",dt),e.component("GlazeToaster",dt);}},sn=Ut;
|
|
2
|
-
exports.GlazeToaster=dt;exports.ToastoryToaster=Ft;exports.glazekitPlugin=sn;exports.toast=Ce;exports.toastoryPlugin=Ut;exports.ui=Z;exports.useGlazekit=rn;exports.useToast=nn;exports.useToastory=_t;//# sourceMappingURL=vue.cjs.map
|
|
3
|
-
//# sourceMappingURL=vue.cjs.map
|
|
1
|
+
"use strict";var e=require("vue");function t(){return"undefined"!=typeof document&&"function"==typeof document.createElement}function o(){if("undefined"==typeof document)throw new Error("toastory: DOM required")}function n(e,t="",o={},...n){const i=document.createElement(e);t&&(i.className=t);for(const e in o)void 0!==o[e]&&i.setAttribute(e,o[e]);for(const e of n)e&&i.append(e);return i}function i(e,t){null!=t&&!1!==t&&("undefined"!=typeof Node&&t instanceof Node?e.append(t):e.append(String(t)))}var r=0;function s(e){return`${e}-${r+=1}`}function a(){return"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches}function d(e){return"number"==typeof e?`${e}px`:e}var c="M12 3a9 9 0 1 0 0 18a9 9 0 0 0 0-18z",l={success:[c,"M8 12.4l2.6 2.6L16 9.4"],error:[c,"M9 9l6 6M15 9l-6 6"],warning:["M12 3.5l9.2 16H2.8z","M12 10v4.2M12 17.2h.01"],info:[c,"M12 11v5.2M12 7.8h.01"],question:[c,"M9.6 9.6a2.5 2.5 0 1 1 3.6 2.2c-.8.4-1.2 1-1.2 1.8M12 17h.01"],loading:["M12 3a9 9 0 1 0 9 9"],close:["M6 6l12 12M18 6L6 18"],trash:["M3 6h18","M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2","M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"],lock:["M7 11V7a5 5 0 0 1 10 0v4","M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2z"],shield:["M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"],check:["M20 6L9 17l-5-5"]};function u(e){const t=(l[e]??l.info).map(e=>`<path d="${e}"/>`).join(""),o="loading"===e?' class="gk-spin"':"",n=document.createElement("div");return n.innerHTML=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"${o}>${t}</svg>`,n.firstElementChild}var p=new Set("a,abbr,b,blockquote,br,code,div,em,h1,h2,h3,h4,h5,h6,hr,i,img,kbd,li,mark,ol,p,pre,s,small,span,strong,sub,sup,u,ul".split(",")),g=new Set("href,src,alt,title,target,rel,width,height,lang,dir".split(",")),f=new Set(["href","src"]),m=/^(?:https?:|mailto:|tel:|\/|#|\.\/|\.\.\/|[^:]*$)/i;function h(e){return m.test(e.replace(/[\s\u0000-\u001f]/g,""))}function b(e){for(const t of[...e.childNodes]){if(3===t.nodeType)continue;if(1!==t.nodeType){e.removeChild(t);continue}const o=t,n=o.tagName.toLowerCase();if(p.has(n)){for(const e of[...o.attributes]){const t=e.name.toLowerCase(),n=f.has(t)&&!h(e.value);g.has(t)&&!n||o.removeAttribute(e.name)}"_blank"===o.getAttribute("target")&&o.setAttribute("rel","noopener noreferrer"),b(o)}else if(/^(script|style|iframe|object|template)$/.test(n))e.removeChild(t);else{for(b(o);o.firstChild;)e.insertBefore(o.firstChild,o);e.removeChild(o)}}}function v(e){if(!t())return null;const o=globalThis.DOMPurify,n=o?e=>o.sanitize(e):void 0,i=document.createElement("template");return i.innerHTML=n?n(e):e,n||b(i.content),i.content}var y,k="banner-light,banner-dark,capsule-success,island-call,hud-silent,system-alert,device-popup,grouped-stack,progress-ring,shake-error,focus-toggle,compact-action".split(","),w={essentials:"minimal,success,error,warning,accent-bar,badge-title,progress-bar,pill,undo-bar,inline-confirm,loading-percent,avatar".split(","),showcase:"glass-gradient,emerald,neon-error,ios-banner,dev-dark,countdown-ring,stacked,upload-card,island,gradient-border,soft-light,message-actions".split(","),"ios-glass":k,"liquid-glass":k,dialogs:"warning-confirm,danger-confirm,type-to-confirm,rename-prompt,success,update-info,dark-logout,ios-glass-alert,bottom-sheet-confirm,reauth-password,otp-code,session-countdown".split(",")};function x(e,t){if(!t)return;const o=w[e];if(!o||o.includes(t))return t;"undefined"!=typeof process&&"production"!==process.env?.NODE_ENV&&console.warn(`[toastory] Unknown variant "${t}" for "${e}".`)}var E={success:[[392,0,1],[523.3,.1,1]],error:[[233.1,0,1],[185,.13,1]],warning:[[349.2,0,.8],[349.2,.16,.6]],info:[[466.2,0,.9]],ding:[[659.3,0,.9],[880,.08,1]],pop:[[440,0,.7],[880,.03,.9]],chime:[[523.3,0,.8],[659.3,.09,.85],[784,.18,1]],bell:[[587.3,0,1],[1174.6,.04,.5]],message:[[440,0,.8],[659.3,.12,.9]],bubble:[[330,0,.6],[493.9,.06,.8]]};function $(e,t,o,n,i){const r=e.currentTime+n,s=e.createOscillator(),a=e.createGain();s.frequency.value=o,a.gain.setValueAtTime(.001,r),a.gain.exponentialRampToValueAtTime(Math.max(.001,.3*i),r+.02),a.gain.exponentialRampToValueAtTime(1e-4,r+.35),s.connect(a).connect(t),s.start(r),s.stop(r+.4)}function A(e,t=.5){if(!e||"undefined"==typeof window)return;const o=!0===e?"info":String(e);if(/^(https?:|data:audio|blob:)/.test(o)){try{const e=new Audio(o);e.volume=Math.min(1,Math.max(0,t)),e.play().catch(()=>{})}catch{}return}const n=E[o];if(n)try{const e=window.AudioContext||window.webkitAudioContext;if(!e)return;if(y??(y=new e),"suspended"===y.state&&y.resume(),"closed"===y.state)return;const o=y.createGain();o.gain.value=.45*Math.min(1,Math.max(0,t)),o.connect(y.destination);for(const[e,t,i]of n)$(y,o,e,t,i)}catch{}}var L=A;function M(e,t,o){if(!1!==e){if("string"==typeof e)return e;if("function"!=typeof e)return!0===e||!0===t?E[o]?o:"loading"===o?"bubble":"info":"string"==typeof t?t:void 0;try{e(o)}catch{}}}var C=["#38bdf8","#818cf8","#ec4899","#f97316","#10b981","#6366f1","#eab308"];var T=e=>`${e.updatedAt}:${e.timerEpoch}:${e.count}`,B="button,a,input,select,textarea,[role=button]";function S(e){return"center"===e||"middle"===e?["up","down","left","right"]:e.endsWith("left")?["left"]:e.endsWith("right")?["right"]:e.startsWith("top")?["up"]:["down"]}function P(e,o){return o?"dark"===e||"auto"===e&&(function(){if(!t())return!1;const e=document.documentElement;return e.classList.contains("dark")||document.body?.classList.contains("dark")||"dark"===e.getAttribute("data-theme")||"dark"===e.getAttribute("data-gk-mode")||"dark"===document.body?.getAttribute("data-theme")||"dark"===document.body?.getAttribute("data-gk-mode")}()||"function"==typeof matchMedia&&matchMedia("(prefers-color-scheme: dark)").matches)?"light":"dark":e}function D(e,t){const o=new Map,r=[];let s,d=null,c=!1;const p=()=>e.config.get(),g=e=>e.pauseOn??p().pauseOn,f=(e,t)=>e??t,m=e=>{a()||"function"!=typeof requestAnimationFrame?e():requestAnimationFrame(()=>requestAnimationFrame(e))},b=e=>{const t=p().stack,o=!1===t||"list"===t?"list":"expanded"===t?"expanded":"stacked",n="expanded"===o||"list"===o||e.hover||e.focus,i=!1!==p().newestOnTop,r=[...e.items.values()],s=i?r.reverse():r,a=p().gap,d=e.key.includes("top-")||e.key.endsWith("|center")||e.key.endsWith("|middle");let c=0,l=0;s.forEach((e,t)=>{const o=e.measured&&e.height>0?e.height:e.el.offsetHeight||50;0===t&&(l=o),e.el.style.setProperty("--gk-index",String(t)),e.el.style.setProperty("--gk-offset",`${c}px`),e.el.style.setProperty("--gk-height",`${o}px`),e.el.style.zIndex=String(1e3-t),t>2?e.el.dataset.far="":delete e.el.dataset.far,c+=o+a});const u=Math.max(0,c-a);e.el.style.setProperty("--gk-front",`${l}px`),e.el.style.setProperty("--gk-total",`${u}px`),e.el.style.setProperty("--gk-dir",d?"1":"-1"),e.el.style.setProperty("--gk-gap",`${a}px`),e.el.dataset.stackMode=o,e.el.dataset.expanded=String(n),e.el.style.height=`${n?u:l}px`};let y;"function"==typeof ResizeObserver&&(y=new ResizeObserver(e=>{let t=!1;for(const n of e){const e=n.target;for(const i of o.values())for(const o of i.items.values())if(o.el===e){const e=n.borderBoxSize?.[0]?.blockSize??n.contentRect.height;Math.abs(o.height-e)>1&&(o.height=e,o.measured=!0,t=!0)}}t&&o.forEach(b)}));const k=i=>{const r=`${i.container??""}|${i.position}`,s=o.get(r);if(s)return s;const a=(e=>{const o=e??t?.container??p().container;return("string"==typeof o?(document.getElementById(o)||document.querySelector(o))??document.body:o instanceof HTMLElement?o:document.body)||null})(i.container);if(!a)return;const c=n("ol","gk-toast-list gk-list",{role:"presentation",tabindex:"-1"}),l=n("section","gk-region gk-root",{"aria-label":p().regionLabel,tabindex:"-1",role:"region"},c),u={key:r,el:l,list:c,items:new Map,hover:!1,focus:!1};l.dataset.position=i.position,a!==document.body&&(l.dataset.contained="");const f=(t,o)=>{u[t]=o,((t,o,n)=>{for(const i of t.items.values())g(i.record).includes(n)&&(o?e.pause(i.record.id,n):e.resume(i.record.id,n))})(u,o,t),b(u)};return l.addEventListener("pointerenter",()=>f("hover",!0)),l.addEventListener("pointerleave",()=>f("hover",!1)),l.addEventListener("focusin",()=>f("focus",!0)),l.addEventListener("focusout",e=>{e.relatedTarget instanceof Node&&l.contains(e.relatedTarget)||f("focus",!1)}),l.addEventListener("keydown",t=>{const o=t.target.closest(".gk-toast"),n=o?[...u.items.values()].find(e=>e.el===o):void 0;if("Escape"===t.key){if(!n||!1===n.record.dismissible)return;return t.stopPropagation(),e.dismiss(n.record.id,"user"),void d?.focus?.()}if("ArrowDown"===t.key||"ArrowUp"===t.key){t.preventDefault();const e=[...u.items.values()].map(e=>e.el);if(e.length<=1)return;const n=o?e.indexOf(o):-1,i="ArrowDown"===t.key?(n+1)%e.length:(n-1+e.length)%e.length;e[i]?.focus()}}),a.append(l),o.set(r,u),u},w=(t,o)=>e.dismiss(t,o),E=(e,t,o,i,r)=>{const s=n("button",e,{type:"button","aria-label":t.ariaLabel},t.label);return s.addEventListener("click",e=>{e.stopPropagation();let t=!1;r?.({preventDefault:()=>{t=!0},get defaultPrevented(){return t}}),t||w(o.id,i)}),s},$=t=>{const o=t.record;t.stamp=T(o);const r=p(),s=o.classNames??{},a=!0===o.unstyled,d=(e,t,o=e)=>{const n=a?"":`gk-toast__${e} gk-${o}`;return t?n?`${n} ${t}`:t:n},c=t.el;c.replaceChildren(),c.className=[a?"":`gk-toast gk-toast--${o.type}`,s.toast,o.className].filter(Boolean).join(" ");const g=n("div",d("content",s.content));if(o.custom)i(g,o.custom({id:o.id,dismiss:()=>w(o.id,"api"),update:t=>{e.update(o.id,t)}}));else{if(void 0!==o.badge){const e="object"==typeof o.badge&&null!==o.badge?o.badge:void 0,t=e?e.tone??"info":o.badge,r=n("div",d("badge",s.badge),{"aria-hidden":"true","data-tone":t});e&&e.icon?i(r,e.icon):e&&e.label?r.textContent=e.label:"string"!=typeof o.badge||l[t]?r.append(u(l[t]?t:"info")):r.textContent=o.badge,c.append(r)}else{const t=o.icon,r=void 0===t?"success"===(m=o.type)||"error"===m||"warning"===m||"info"===m||"loading"===m?m:void 0:void 0,a=e.types.get(o.type),l=void 0===t?a?.icon:t;if(!1!==t&&(r||void 0!==l)){const e=n("div",d("icon",s.icon),{"aria-hidden":"true"});r?e.append(u(r)):i(e,l),c.append(e)}}if(void 0!==o.avatar){const e=n("div",d("avatar",s.avatar)),t=o.avatar;if("object"!=typeof t||null===t||"nodeType"in t)"string"==typeof t?e.append(n("img","",{src:h(t)?t:"",alt:""})):i(e,t);else{const o=t;if(o.src)e.append(n("img","",{src:h(o.src)?o.src:"",alt:o.alt??o.name??""}));else{const t=o.initials??(o.name?o.name.split(" ").map(e=>e[0]).join("").slice(0,2).toUpperCase():"?");e.textContent=t,e.style.background=o.color??function(e){let t=0;for(let o=0;o<e.length;o++)t=31*t+e.charCodeAt(o)>>>0;return C[t%7]}(o.name??t),e.style.color="#fff"}}c.append(e)}if(o.title){const e=n("div",d("title",s.title));i(e,o.title),g.append(e)}if(o.description||o.html){const e=n("div",d("description",s.description,"desc"));if(i(e,o.description),o.html){const t=v(o.html);t&&e.append(t)}g.append(e)}if(void 0!==o.progressValue){const e=Math.max(0,Math.min(100,Math.round(100*o.progressValue))),t=n("i","gk-progress-fill");t.style.width=`${e}%`;const i=n("div","gk-toast__track gk-track",{role:"progressbar","aria-label":o.progressLabel??"Progress","aria-valuenow":String(e),"aria-valuemin":"0","aria-valuemax":"100",...o.progressLabel?{"aria-valuetext":o.progressLabel}:{}},t);g.append(i)}o.count>1&&g.append(n("span",d("count",s.count),{"aria-hidden":"true"},`${o.count}`))}var m;const b=o.href&&h(o.href)?n("a",d("link",s.link),{href:o.href,target:o.target??"_self",rel:"_blank"===o.target?"noopener noreferrer":void 0},g):g;if(c.append(b),o.timestamp&&c.append(n("time",d("time",s.time),{},function(e,t="en"){if("string"==typeof e)return e;if(!0===e)return"now";const o=e instanceof Date?e.getTime():Number(e)||Date.now(),n=Math.round((Date.now()-o)/6e4);if(!n)return"now";const i=Math.round(n/60),r=Math.round(i/24),[s,a]=i<1?[n,"minute"]:r<1?[i,"hour"]:[r,"day"];try{return new Intl.RelativeTimeFormat(t,{numeric:"auto"}).format(-s,a)}catch{return`${s}${a[0]} ago`}}(o.timestamp,o.timestampLocale))),o.kbd&&c.append(n("kbd",d("kbd",s.kbd),{},o.kbd)),o.toggle){const e=o.toggle,t=n("button","gk-toast__switch gk-sw",{type:"button",role:"switch","aria-checked":String(Boolean(e.checked)),"aria-label":e.label??"Toggle option"});t.addEventListener("click",o=>{o.stopPropagation();const n="true"!==t.getAttribute("aria-checked");t.setAttribute("aria-checked",String(n)),e.onChange?.(n)}),c.append(t)}if("ring"===o.progress||"countdown-ring"===o.variant||"progress-ring"===o.variant){const t=100.5*(1-(o.progressValue??(o.duration>0?e.getRemaining(o.id)/o.duration:1))),n=document.createElement("div");n.innerHTML=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" class="gk-ring-svg"><circle cx="18" cy="18" r="16" fill="none" stroke="currentColor" stroke-width="3" opacity="0.2"/><circle cx="18" cy="18" r="16" fill="none" stroke="currentColor" stroke-width="3" stroke-dasharray="100.5" stroke-linecap="round" stroke-dashoffset="${t}"/></svg>`,c.append(n.firstElementChild)}if(o.actions?.length){const e=n("div",d("actions",s.actions));for(const t of o.actions){const i=t.label??t.text??"Action",r=n("button",`gk-toast__action gk-btn gk-action gk-btn--${t.kind??"secondary"}`,{type:"button","aria-label":i},i);r.addEventListener("click",e=>{e.stopPropagation(),t.onClick?.(e),!1===t.autoDismiss||e.defaultPrevented||w(o.id,"action")}),e.append(r)}c.append(e)}else if(o.action||o.cancel){const e=n("div",d("actions",s.actions));o.cancel&&e.append(E(d("cancel",s.cancelButton,"btn gk-cancel gk-cancel-btn"),o.cancel,o,"cancel",o.cancel.onClick)),o.action&&e.append(E(d("action",s.actionButton,"btn gk-action gk-action-btn"),o.action,o,"action",o.action.onClick)),c.append(e)}if(f(o.closeButton,r.closeButton)&&!1!==o.dismissible){const e=n("button",d("close",s.closeButton),{type:"button","aria-label":o.closeButtonLabel??r.closeLabel??"Close notification"},u("close"));e.addEventListener("click",e=>{e.stopPropagation(),w(o.id,"user")}),c.append(e)}if(o.duration>0&&("bar"===o.progress||"none"!==o.progress&&"ring"!==o.progress&&f(o.progress,r.progress))){const t=n("i");t.style.setProperty("--gk-d",`${o.duration}ms`),t.style.setProperty("--gk-delay",`-${Math.max(0,o.duration-e.getRemaining(o.id))}ms`),c.append(n("div",d("progress",s.progress),{"aria-hidden":"true"},t))}t.stamp=T(o)},L=t=>{const o=t.record,n=p(),i=t.el,r=(e,t)=>{void 0===t?i.removeAttribute(e):i.setAttribute(e,t)},s=(e,t)=>{t?i.setAttribute(e,"string"==typeof t?t:""):i.removeAttribute(e)},a=(o.container?document.getElementById(o.container):void 0)??i.parentElement?.closest("[data-gk-theme]"),d=o.theme??a?.getAttribute("data-gk-theme")??n.theme,c=x(d,o.variant);r("data-gk-variant",c),o.hud||"hud-silent"===c?(r("role","status"),r("aria-live","polite"),r("data-hud","")):(r("role",o.role),r("aria-live",o.ariaLive)),r("aria-atomic","true"),r("data-type",o.type),r("data-gk-theme",d),r("data-gk-mode",P(n.mode,f(o.invert,n.invert))),r("data-dir",o.dir??n.dir),r("dir","auto"===(o.dir??n.dir)?void 0:o.dir??n.dir),r("data-animation",o.animation??n.animation??"slide"),s("data-shake",o.shake||"shake-error"===c),s("data-glow",o.glow),s("data-gradient-border",o.gradientBorder||"gradient-border"===c),s("data-group",o.group),s("data-island",o.island||"island"===c);const l=e.types.get(o.type)?.color;if(l&&i.style.setProperty("--gk-type",l),s("data-rich",f(o.richColors,n.richColors)),s("data-dismissed",o.dismissed),r("data-state",o.dismissed?"exiting":"entered"),s("data-paused",o.pausedBy.length>0),s("data-wrap",o.description||o.html||o.action&&o.cancel||o.actions&&o.actions.length>1),s("data-has-close",f(o.closeButton,n.closeButton)&&!1!==o.dismissible),s("data-clickable",f(o.closeOnClick,n.closeOnClick)&&!1!==o.dismissible),o.style)for(const e of Object.keys(o.style))i.style.setProperty(e,String(o.style[e]));const u=o.swipeDirections??S(o.position),g=u.some(e=>"left"===e||"right"===e),m=u.some(e=>"up"===e||"down"===e);i.style.touchAction=g&&!m?"pan-y":m&&!g?"pan-x":"none"},D=t=>{const o=t.el;let n,i,r=!1;const s=()=>({dirs:t.record.swipeDirections??S(t.record.position),threshold:t.record.dragThreshold??p().dragThreshold,on:f(t.record.swipe,p().swipe)&&!1!==t.record.dismissible});o.addEventListener("pointerenter",()=>{t.hover=!0,!p().stack&&g(t.record).includes("hover")&&e.pause(t.record.id,"hover")}),o.addEventListener("pointerleave",()=>{t.hover=!1,p().stack||e.resume(t.record.id,"hover")}),o.addEventListener("click",e=>{r||t.swiping||e.target.closest(B)||f(t.record.closeOnClick,p().closeOnClick)&&w(t.record.id,"click")}),o.addEventListener("pointerdown",e=>{s().on&&0===e.button&&!e.target.closest(B)&&(n={x:e.clientX,y:e.clientY,time:performance.now()},i=void 0,r=!1)}),o.addEventListener("pointermove",a=>{if(!n)return;const{dirs:d}=s(),c=a.clientX-n.x,l=a.clientY-n.y;if(!i){if(Math.max(Math.abs(c),Math.abs(l))<4)return;i=Math.abs(c)>Math.abs(l)?"x":"y",t.swiping=!0,r=!0,o.setPointerCapture?.(a.pointerId),o.dataset.swiping="",e.pause(t.record.id,"swipe")}const u="x"===i?c>0?"right":"left":l>0?"down":"up",p=d.includes(u)?"x"===i?c:l:0;o.style.setProperty("--gk-sx","x"===i?`${p}px`:"0px"),o.style.setProperty("--gk-sy","y"===i?`${p}px`:"0px")});const a=a=>{if(!n)return;const{dirs:d,threshold:c}=s(),l=a.clientX-n.x,u=a.clientY-n.y,p=Math.max(1,performance.now()-n.time),g="x"===i?l>0?"right":"left":u>0?"down":"up",f=Math.abs("x"===i?l:u),m=f/p,h=t.swiping;n=void 0,delete o.dataset.swiping,e.resume(t.record.id,"swipe");const b="x"===i?o.offsetWidth||350:o.offsetHeight||60,v=c<=1&&c>0?c*b:c;h&&d.includes(g)&&(f>=v||p>=40&&m>.6&&f>20)?(o.dataset.swipeOut=g,w(t.record.id,"swipe")):(o.style.setProperty("--gk-sx","0px"),o.style.setProperty("--gk-sy","0px")),setTimeout(()=>{t.swiping=!1,r=!1},50)};o.addEventListener("pointerup",a),o.addEventListener("pointercancel",a)};let O=!1,N=!1;const z=()=>{if(O)N=!0;else{O=!0;try{do{N=!1,F()}while(N)}finally{O=!1}}},F=()=>{if(!document.body&&!c)return c=!0,void document.addEventListener("DOMContentLoaded",()=>{c=!1,z()},{once:!0});const t=p(),i=e.getToasts().filter(e=>e.visible),r=new Set;for(const e of i){const o=k(e);if(!o)continue;r.add(`${o.key}#${String(e.id)}`);let i=o.items.get(e.id);if(!i){i={el:n("li"),record:e,stamp:"",hover:!1,swiping:!1,height:0,measured:!1},i.el.dataset.mounted="false",i.el.tabIndex=-1,o.items.set(e.id,i),o.list.append(i.el),y?.observe(i.el),D(i);const r=i,s=M(e.sound,t.sound,e.type);s&&A(s,e.soundVolume??t.soundVolume??.5),m(()=>{r.el.dataset.mounted="true"})}i.record=e,L(i),i.stamp!==T(e)&&$(i)}for(const e of o.values()){for(const[t,o]of e.items)r.has(`${e.key}#${String(t)}`)||(y?.unobserve(o.el),o.el.remove(),e.items.delete(t));e.el.setAttribute("data-gk-theme",t.theme),e.el.setAttribute("data-gk-mode",t.mode),e.el.dataset.shadow=String(t.shadow),e.el.setAttribute("aria-label",t.regionLabel);const n=t.dir;"auto"===n?e.el.removeAttribute("dir"):e.el.setAttribute("dir",n);const i=(t,o)=>{void 0!==o&&e.el.style.setProperty(t,"number"==typeof o?`${o}px`:o)},s=t.offset,a="object"==typeof s&&null!==s;for(const e of["top","bottom","left","right"])i(`--gk-offset-${e}`,a?s[e]:s);i("--gk-mobile-offset",t.mobileOffset),0===e.items.size?(e.el.remove(),o.delete(e.key)):b(e)}};r.push(e.subscribe(z),e.config.subscribe(z));const V=t=>{for(const o of e.getToasts())g(o).includes("hidden")&&(t?e.pause(o.id,"hidden"):e.resume(o.id,"hidden"))},R=()=>{for(const e of o.values()){const t=[...e.items.values()].filter(e=>!e.record.dismissed).pop();if(t)return d=document.activeElement,t.el.focus(),!0}return!1},j=(e,t,o)=>{e.addEventListener(t,o),r.push(()=>e.removeEventListener(t,o))};return j(document,"visibilitychange",()=>V("hidden"===document.visibilityState)),j(window,"blur",()=>V(!0)),j(window,"focus",()=>V(!1)),j(window,"resize",()=>o.forEach(b)),j(document,"keydown",e=>{const t=function(e){const t=e.toLowerCase().split("+").map(e=>e.trim()).filter(Boolean),o=t.find(e=>!/^(alt|ctrl|control|shift|meta|cmd)$/.test(e));if(o)return{alt:t.includes("alt"),ctrl:t.some(e=>"ctrl"===e||"control"===e),shift:t.includes("shift"),meta:t.some(e=>"meta"===e||"cmd"===e),code:/^[a-z]$/.test(o)?`Key${o.toUpperCase()}`:/^\d$/.test(o)?`Digit${o}`:o}}(p().hotkey);t&&e.code===t.code&&e.altKey===t.alt&&e.ctrlKey===t.ctrl&&e.shiftKey===t.shift&&e.metaKey===t.meta&&R()&&e.preventDefault()}),z(),{focus:R,destroy(){for(const e of r.splice(0))e();y?.disconnect();for(const e of o.values())e.el.remove();o.clear(),s?.host.remove(),s=void 0}}}function O(){return t()&&"undefined"!=typeof window}var N={now:()=>Date.now(),setTimeout:(e,t)=>{const o=setTimeout(e,t);return()=>clearTimeout(o)},setInterval:(e,t)=>{const o=setInterval(e,t);return()=>clearInterval(o)}},z=0;function F(e,t="gk"){return void 0!==e&&""!==e?e:function(e="gk"){return`${e}-${++z}`}(t)}var V=Object.freeze({theme:"ios-glass",mode:"auto",position:"top-right",duration:4e3,maxVisible:8,gap:12,stack:!0,dir:"auto",hotkey:"alt+t",pauseOn:["hover","focus","hidden"],shadow:!0,closeButton:!1,richColors:!1,invert:!1,swipe:!0,dragThreshold:45,progress:!1,closeOnClick:!1,exitDuration:250,historyLimit:100,regionLabel:"Notifications",closeLabel:"Close notification",startPaused:!1,newestOnTop:!0,dedupeWindow:500,container:void 0,sound:!1,soundVolume:.5});function R(e){const t={};for(const o in e)void 0!==e[o]&&(t[o]=e[o]);return t}function j(e,t,o=N){let n,i,r=e,s=e,a=0,d=!1,c=!1;const l=new Map,u=new Set,p=()=>Number.isFinite(s)&&s>0,g=()=>{if(0===u.size)return;const e=f(),t=r>0?Math.max(0,Math.min(1,e/r)):0;for(const o of u)try{o(e,t)}catch(e){console.error(e)}},f=()=>c?0:d&&0===l.size?Math.max(0,s-(o.now()-a)):s,m=()=>{n?.(),n=void 0,i?.(),i=void 0},h=()=>{m(),!p()||l.size>0||c||(a=o.now(),n=o.setTimeout(()=>{m(),s=0,c=!0,d=!1,g(),t()},s),u.size>0&&(i=o.setInterval(()=>{g()},50)))};return{start(){!c&&p()&&(d=!0,l.clear(),h(),g())},pause:(e="manual")=>{c||(l.set(e,(l.get(e)??0)+1),d&&1===l.size&&(s=Math.max(0,s-(o.now()-a)),m(),g()))},resume:(e="manual")=>{if(c)return;const t=l.get(e);t&&(t<=1?l.delete(e):l.set(e,t-1),d&&0===l.size&&p()&&(h(),g()))},clearReasons(){l.clear(),d&&p()&&h()},add(e){if(c||!Number.isFinite(s))return;const t=d&&0===l.size;s=Math.max(1,(t?s-(o.now()-a):s)+e),r=Math.max(r,s),t&&h(),g()},reset(e){c=!1,s=r=void 0!==e?e:r,d&&0===l.size&&(p()?h():m()),g()},cancel(){m(),d=!1,c=!0,s=0},remaining:f,elapsed:()=>Math.max(0,r-f()),isRunning:()=>d&&!c&&!l.size&&p(),isPaused:()=>l.size>0,pausedReasons:()=>[...l.keys()],onTick:e=>(u.add(e),d&&0===l.size&&!i&&(i=o.setInterval(g,50)),()=>{u.delete(e),0===u.size&&i&&(i(),i=void 0)})}}var H=(e,t="polite")=>({color:`var(--gk-${e})`,ariaLive:t}),I={success:H("success"),error:H("error","assertive"),warning:H("warning","assertive"),info:H("info"),loading:{...H("info"),defaults:{duration:0,dismissible:!1}},message:H("fg")};var q=(e,...t)=>{try{e?.(...t)}catch(e){console.error(e)}},W={loading:{duration:0}};function K(e={}){const t=e.config??function(e={}){let t=Object.freeze({...V,...R(e)});const o=new Set,n=()=>{o.forEach(e=>e())};return{get:()=>t,set:e=>(t=Object.freeze({...t,...R(e)}),n(),t),reset(){t=V,n()},subscribe:e=>(o.add(e),()=>{o.delete(e)})}}(),o=e.clock??N,n=e.now??o.now,i=e.types??function(){const e=new Map;return{add(t,o={}){const n="string"==typeof t?t.trim():"";if(!n)throw new TypeError("toastory: invalid type");e.set(n,o)},remove:t=>e.delete(t),get:t=>e.get(t)??I[t],list:()=>[...e.keys()]}}(),r=new Map;let s=[],a=[],d=[];const c=new Set,l=()=>{a=s.map(e=>r.get(e)?.record).filter(Boolean),c.forEach(e=>e())},u=e=>`${e.container??""}|${e.position}`,p=(e,o,r,s)=>{const a=t.get(),d=o.type??"default",c={...W[d],...i.get(d)?.defaults,...o},l=c.duration??a.duration,u=Number.isFinite(l)&&l>0?l:0,p=c.important||"error"===d,g=n();return{...c,id:e,type:d,duration:u,position:c.position??a.position,ariaLive:c.ariaLive??(p?"assertive":"polite"),role:c.role??(p?"alert":"status"),createdAt:r?.createdAt??g,updatedAt:g,revision:(r?.revision??-1)+1,timerEpoch:r?.timerEpoch??0,count:r?.count??1,visible:r?.visible??!1,dismissed:!1,pausedBy:r?.pausedBy??(a.startPaused?["manual"]:[]),remaining:r?.remaining??(u||1/0),custom:s}},g=e=>0===e.record.duration?1/0:e.timer.remaining(),f=e=>{if(!1===e.dedupe)return;if("string"==typeof e.dedupe)return e.dedupe;const t="string"==typeof e.title?e.title:"",o="string"==typeof e.description?e.description:"";return t||o?`${e.type??"default"}|${t}|${o}`:void 0},m=()=>{const e=t.get(),o=new Map;for(const t of s){const n=r.get(t);if(!n||n.record.dismissed)continue;const i=u(n.record),s=o.get(i)??0,a=!!n.record.important;s<e.maxVisible||a?(n.record.visible||(n.record={...n.record,visible:!0},!n.record.pausedBy.length&&n.record.duration>0&&n.timer.start()),a||o.set(i,s+1)):n.record.visible&&(n.record={...n.record,visible:!1},n.timer.pause())}},h=e=>{e.exitHandle?.(),e.timer.cancel(),r.delete(e.record.id),s=s.filter(t=>t!==e.record.id),d=[{...e.record,dismissed:!0},...d].slice(0,t.get().historyLimit),m(),y(),l(),e.closedFired||(e.closedFired=!0,q(e.record.onClose,e.record,e.reason??"api"))},b=(e,n)=>{if(e.record.dismissed)return;if(!1===e.record.dismissible&&("user"===(i=n)||"swipe"===i||"click"===i))return;var i;e.reason=n,e.record={...e.record,dismissed:!0,remaining:0,revision:e.record.revision+1},e.timer.cancel(),e.dismissFired||"auto"===n||(e.dismissFired=!0,q(e.record.onDismiss,e.record,n)),m(),y(),l();const r=t.get().exitDuration;r<=0||!e.record.visible?h(e):e.exitHandle=o.setTimeout(()=>h(e),r)},v=e=>{e.timer.cancel(),e.record.duration>0&&(e.timer.reset(e.record.duration),e.record.visible&&!e.record.pausedBy.length&&e.timer.start()),e.record={...e.record,timerEpoch:e.record.timerEpoch+1,remaining:g(e)}},y=()=>{for(const e of s){const t=r.get(e);t&&t.record.visible&&!t.openedFired&&!t.record.dismissed&&(t.openedFired=!0,q(t.record.onOpen,t.record))}},k={config:t,types:i,add(e){const t=F(e.id),i=r.get(t);if(i&&!i.record.dismissed){const{custom:o,...n}=e;return k.update(t,n),o&&(i.custom=o,i.record={...i.record,custom:o},l()),t}i&&h(i);const a=f(e);if(void 0!==a)for(const e of r.values())if(e.dedupeKey===a&&!e.record.dismissed)return e.record={...e.record,count:e.record.count+1,revision:e.record.revision+1,updatedAt:n()},v(e),l(),e.record.id;const d=((e,t)=>{const{custom:n,...i}=t,r=p(e,i,void 0,n),s={opts:i,custom:n,record:r,timer:void 0,dedupeKey:f(i),exitHandle:void 0,reason:void 0,openedFired:!1,closedFired:!1,dismissFired:!1,autoCloseFired:!1};return s.timer=j(r.duration,()=>{s.autoCloseFired||(s.autoCloseFired=!0,q(s.record.onAutoClose,s.record)),b(s,"auto")},o),r.pausedBy.length&&s.timer.pause(),s})(t,e);return r.set(t,d),s=[...s,t],m(),l(),y(),t},update(e,t){const o=r.get(e);if(!o||o.record.dismissed)return!1;const{resetTimer:n=!0,...i}=t,s={...o.opts};void 0!==i.type&&i.type!==o.record.type&&(delete s.duration,delete s.ariaLive,delete s.role,delete s.icon);let a=!1;for(const e in i){const t=i[e];void 0!==t&&(o.opts[e]!==t&&(a=!0),s[e]=t)}if(!a&&void 0===i.type&&void 0===i.position)return!0;o.opts=s,o.dedupeKey=f(s);const d=p(e,s,o.record,o.custom),c=d.position!==o.record.position;return o.record=d,c&&(o.record={...o.record,visible:!1},m()),n||c?v(o):o.record={...o.record,remaining:g(o)},l(),y(),!0},dismiss(e,t="api"){if(void 0===e)return k.dismissAll(t);const o=r.get(e);o&&b(o,t)},dismissAll(e="api"){for(const t of r.values())b(t,e)},pause(e,t){const o=void 0===e?[...r.values()]:[r.get(e)].filter(e=>Boolean(e));for(const e of o)e.record.pausedBy.includes(t)||(e.timer.pause(t),e.record={...e.record,pausedBy:[...e.record.pausedBy,t],remaining:g(e)});l()},resume(e,t){const o=void 0===e?[...r.values()]:[r.get(e)].filter(e=>Boolean(e));for(const e of o){if(!e.record.pausedBy.includes(t))continue;e.timer.resume(t);const o=e.record.pausedBy.filter(e=>e!==t);e.record={...e.record,pausedBy:o,remaining:g(e)},!o.length&&e.record.visible&&e.record.duration>0&&e.timer.start()}l()},extend(e,t){const o=r.get(e);o&&!o.record.dismissed&&(o.timer.add(t),o.record={...o.record,remaining:g(o),timerEpoch:o.record.timerEpoch+1,revision:o.record.revision+1},l())},getRemaining(e){const t=r.get(e);return t?g(t):0},getToasts:()=>a,getHistory:()=>d,clear(){for(const e of r.values())e.exitHandle?.(),e.timer.cancel();r.clear(),s=[],a=[],l()},clearHistory(){d=[],l()},subscribe:e=>(c.add(e),()=>{c.delete(e)})};return k}function _(e){return"string"==typeof e?{title:e}:e}function U(e,t,o,n={}){let i;try{i="function"==typeof t?t():t}catch(e){i=Promise.reject(e)}const{id:r,...s}=n,a=_(o.loading),d=e.add({...s,id:r,...a,type:"loading",duration:0}),c=(t,n,i)=>{const r="function"==typeof o.description?o.description("success"===t?{status:t,value:i}:{status:t,error:i}):o.description;e.update(d,{duration:s.duration??e.config.get().duration,..._(n),type:t,...void 0!==r?{description:r}:{},resetTimer:!0})};return i.then(t=>{void 0===o.success?e.dismiss(d):c("success","function"==typeof o.success?o.success(t):o.success,t)}).catch(e=>{c("error",void 0===o.error?function(e){return e instanceof Error?e.message:String(e)}(e):"function"==typeof o.error?o.error(e):o.error,e)}).finally(()=>{try{o.finally?.()}catch(e){console.error(e)}}),{id:d,unwrap:()=>i}}var Y=e=>e instanceof Error?e.message:String(e);function G(e){let t,o,n={...e},i=null,r=!0,s=0,a=()=>n.inputValue,d=()=>{};const c=new Set,l=new Promise(e=>{d=e});let u={options:n,loading:i,error:t,open:r,revision:s};const p=()=>{s+=1,u={options:n,loading:i,error:t,open:r,revision:s};for(const e of[...c])e()},g=e=>{if(!r)return;const t={isConfirmed:!1,isDenied:!1,isDismissed:!1,value:void 0,dismiss:void 0,...e};n.willClose?.(m,t),r=!1,o?.cancel(),p(),d(t)},f=e=>{o?.cancel(),o=void 0,e>0&&Number.isFinite(e)&&(o=j(e,()=>{g({isDismissed:!0,dismiss:"timer"})}),o.start())},m={result:l,close(e){g(e??{isDismissed:!0,dismiss:"close"})},update(e){r&&(n={...n,...e},void 0!==e.timer&&f(e.timer),p())},setLoading(e){r&&(i=!0===e?"confirm":!1===e?null:e,p())},showError(e){r&&(t=e??void 0,p())},timer:{pause:()=>{o?.pause(),p()},resume:()=>{o?.resume(),p()},add:e=>{o?o.add(e):f(Math.max(1,e)),p()},remaining:()=>o?.remaining()??0,paused:()=>!!o&&(!o.isRunning()&&o.remaining()>0)}};return{handle:m,getState:()=>u,subscribe:e=>(c.add(e),()=>{c.delete(e)}),setValueReader(e){a=e},opened(){r&&(void 0!==n.timer&&f(n.timer),p(),n.didOpen?.(m))},async submit(e){if(!r||i)return;let o=a();if(void 0!==t&&(t=void 0,p()),"confirm"===e&&n.validate){let e;i="confirm",p();try{e=await n.validate(o,m)}catch(t){e=Y(t)}if(i=null,!r)return;if("string"==typeof e&&e)return t=e,void p();p()}const s="confirm"===e?n.preConfirm:n.preDeny;if(s){let n;i=e,p();try{n=await s(o,m)}catch(e){return i=null,void(r&&(t=Y(e),p()))}if(i=null,!r)return;if(!1===n)return void p();void 0!==n&&(o=n)}g({isConfirmed:"confirm"===e,isDenied:"deny"===e,value:o})},dismiss:e=>!(!r||i&&"timer"!==e)&&(("backdrop"!==e||!1!==n.allowOutsideClick)&&(("esc"!==e||!1!==n.allowEscape)&&(g({isDismissed:!0,dismiss:e}),!0)))}}function X(e){const t=t=>(o,n={})=>{const i={type:t,...n};return void 0!==n.type&&(i.type=n.type),void 0!==o&&(void 0===n.title?i.title=o:void 0===n.description&&(i.description=o)),e.add(i)},o=t();return o.success=t("success"),o.error=t("error"),o.info=t("info"),o.warning=t("warning"),o.loading=t("loading"),o.message=t("message"),o.custom=(t,o)=>e.add({...o,custom:t}),o.update=e.update,o.dismiss=e.dismiss,o.dismissAll=e.dismissAll,o.getToasts=e.getToasts,o.getHistory=e.getHistory,o.types=e.types,o.promise=(t,o,n)=>U(e,t,o,n),o}var J=[],Z=new WeakMap,Q=0,ee="",te="";function oe(e){const t=J[J.length-1];if(!t)return;const o=Z.get(t);if("Escape"===e.key)return e.preventDefault(),e.stopPropagation(),void o?.onEscape?.();if("Tab"!==e.key||!1===o?.trap)return;const n=t.root,i=function(e){return[...e.querySelectorAll('a[href],button:not([disabled]),input:not([disabled]):not([type=hidden]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("hidden")&&"true"!==e.getAttribute("aria-hidden"))}(n),r=i[0],s=i[i.length-1];if(!r||!s)return void e.preventDefault();const a=document.activeElement;!e.shiftKey||a!==r&&n.contains(a)?e.shiftKey||a!==s&&n.contains(a)||(e.preventDefault(),r.focus()):(e.preventDefault(),s.focus())}function ne(e){const t=e.backdrop??"blur",o=n("div","gk-backdrop"),i="blur"===t||"dim"===t||"none"===t;o.dataset.kind=i?t:"custom",i||(o.style.background=t);const r=n("div","gk-overlay gk-root"+(e.className?` ${e.className}`:""),{"data-gk-theme":e.theme,"data-gk-mode":e.mode,"data-state":"closed"},o);"auto"!==e.dir&&r.setAttribute("dir",e.dir);const s=document.activeElement,d=[];for(const e of[...document.body.children])/gk-(region|overlay)/.test(e.className)||(d.push({node:e,inert:e.hasAttribute("inert"),aria:e.getAttribute("aria-hidden")}),e.setAttribute("inert",""),e.setAttribute("aria-hidden","true"));!function(){if(Q++>0)return;const e=document.body,t=window.innerWidth-document.documentElement.clientWidth;ee=e.style.overflow,te=e.style.paddingRight,e.style.overflow="hidden",t>0&&(e.style.paddingRight=`${t}px`)}();let c,l=!1;r.addEventListener("pointerdown",e=>{l=e.target===r||e.target===o}),r.addEventListener("click",t=>{!l||t.target!==r&&t.target!==o||e.onBackdrop?.(),l=!1}),document.body.append(r);const u={root:r,show(){a()||"function"!=typeof requestAnimationFrame?r.dataset.state="open":requestAnimationFrame(()=>{r.dataset.state="open"})},close:()=>c||(c=new Promise(e=>{const t=J.indexOf(u);t>=0&&J.splice(t,1),0===J.length&&document.removeEventListener("keydown",oe,!0),r.dataset.state="closing";for(const e of d)e.inert||e.node.removeAttribute("inert"),null===e.aria?e.node.removeAttribute("aria-hidden"):e.node.setAttribute("aria-hidden",e.aria);--Q>0||(document.body.style.overflow=ee,document.body.style.paddingRight=te),s instanceof HTMLElement&&s.isConnected&&s.focus();const o=()=>{r.remove(),e()};a()?o():setTimeout(o,220)}),c)};return Z.set(u,{trap:!1!==e.trap,onEscape:e.onEscape}),0===J.length&&document.addEventListener("keydown",oe,!0),J.push(u),u}var ie=Symbol.for("toastory.engine.v1");function re(){const e=globalThis,t=e[ie];if(t)return t;const{store:o,toast:n}=function(e={}){const t=K({config:e.config});return{store:t,toast:X(t)}}(),i={store:o,toast:n,autoMount:!0,toaster:void 0};return o.subscribe(()=>{i.autoMount&&!i.toaster&&O()&&o.getToasts().length>0&&(i.toaster=D(o))}),e[ie]=i,i}function se(e){const t=re();t.autoMount=e,!e&&t.toaster?(t.toaster.destroy(),t.toaster=void 0):e&&!t.toaster&&O()&&t.store.getToasts().length>0&&(t.toaster=D(t.store))}function ae(e){return re().store.config.set(e)}function de(e){return e?Array.isArray(e)?e.map(e=>"string"==typeof e?{value:e,label:e}:e):Object.keys(e).map(t=>({value:t,label:e[t]})):[]}function ce(e,t){if(t)for(const o in t){const n=t[o];void 0!==n&&e.setAttribute(o,n)}}function le(e,t,o,n){const i=t?.show??n;e.hidden=!i,e.textContent=t?.label??o,t?.aria?e.setAttribute("aria-label",t.aria):e.removeAttribute("aria-label"),t?.color?e.style.setProperty("--gk-button",t.color):e.style.removeProperty("--gk-button")}function ue(e){o();const t=re().store.config.get(),r=G(e),a=s("gk-title"),c=s("gk-text"),l=s("gk-error");let p,g="";const f=ne({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,onEscape:()=>{r.dismiss("esc")},onBackdrop:()=>{r.dismiss("backdrop")}}),m=n("div","gk-dialog",{tabindex:"-1","aria-modal":"true","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode}),h=n("button","gk-dialog-close",{type:"button"},u("close")),b=n("img","gk-image"),y=n("div","gk-dialog-icon"),k=n("h2","gk-dialog-title",{id:a}),w=n("div","gk-dialog-text",{id:c}),E=n("div","gk-dialog-notice",{role:"note"});E.hidden=!0;const $=n("span","gk-countdown-num"),A=n("div","gk-countdown-big",{"aria-atomic":"true"},$,"s");A.hidden=!0;const L=n("div","gk-input-box"),M=n("div","gk-error",{id:l,role:"alert"}),C=e=>n("button",`gk-btn gk-${e} gk-btn--${e}`,{type:"button"}),T=C("confirm"),B=C("deny"),S=C("cancel"),P=n("div","gk-dialog-buttons gk-dialog-actions",{},S,B,T),D=n("div","gk-dialog-footer"),O=n("i"),N=n("div","gk-timer",{"aria-hidden":"true"},O);m.append(h,b,y,k,w,E,A,L,M,P,D,N),f.root.append(m);let z=-1,F=!1;const V=o=>{const C=o.options,F=x(C.theme??e.theme??t.theme,C.variant??e.variant);F?m.setAttribute("data-gk-variant",F):m.removeAttribute("data-gk-variant"),m.className=["gk-dialog",C.className].filter(Boolean).join(" "),m.dataset.tone=C.tone??"info",m.dataset.grow=C.grow??"";const[V,R]=(C.position??"center-center").split("-");if(f.root.dataset.row=V,f.root.dataset.col=R,m.style.width=void 0===C.width?"":d(C.width),m.style.padding=void 0===C.padding?"":d(C.padding),m.setAttribute("role",C.input||"danger"!==C.tone&&"warning"!==C.tone?"dialog":"alertdialog"),k.textContent=C.title??"",k.hidden=!C.title,C.title?m.setAttribute("aria-labelledby",a):m.removeAttribute("aria-labelledby"),w.replaceChildren(),C.text&&w.append(C.text),C.html){const e=v(C.html);e&&w.append(e)}if(w.hidden=!C.text&&!C.html,w.hidden?m.removeAttribute("aria-describedby"):m.setAttribute("aria-describedby",c),y.replaceChildren(),y.dataset.tone=C.tone??("warning"===C.icon?"warning":"error"===C.icon||"trash"===C.icon?"danger":"success"===C.icon?"success":"info"),"custom"===C.icon)i(y,C.iconContent);else if(C.icon){const e=u(C.icon);e&&y.append(e)}if(y.hidden=!C.icon,y.dataset.icon=C.icon??"",E.hidden=!C.notice,C.notice){if(E.replaceChildren(),E.dataset.tone=C.notice.tone??"warning",C.notice.icon)i(E,C.notice.icon);else{const e=u("danger"===C.notice.tone?"error":"info"===C.notice.tone?"info":"shield");e&&E.append(e)}E.append(n("span","",{},C.notice.text))}if(A.hidden=void 0===C.countdown,void 0!==C.countdown){const e=Math.max(0,Math.ceil(r.handle.timer.remaining()/1e3));$.textContent=String(e),A.setAttribute("aria-live",30===e||10===e||5===e?"assertive":"off")}C.image&&(b.src=C.image.src,b.alt=C.image.alt,C.image.width&&(b.width=C.image.width),C.image.height&&(b.height=C.image.height)),b.hidden=!C.image,C.closeButtonLabel&&h.setAttribute("aria-label",C.closeButtonLabel),h.hidden=!C.closeButtonLabel;const j=`${C.input??""}|${JSON.stringify(C.options??null)}|${C.inputLabel??""}|${C.placeholder??""}`;if(j!==g){g=j;const e=p?p.read():void 0;if(L.replaceChildren(),p=function(e,t){const o=e.input;if(!o)return;const i=s("gk-input"),r=e.inputValue,a=e.inputLabel,d=a?n("label","gk-label",{for:i},a):null,c=(...e)=>{const t=n("div","gk-input");for(const o of e)o&&t.append(o);return t},l=o=>{o.id=i,o.classList.add("gk-field"),a||o.setAttribute("aria-labelledby",t),ce(o,e.inputAttributes)},u=(e,t,o,n)=>({node:e,focusTarget:t,fields:o,read:n}),p=(e,t,o,n)=>u(c(d,e),t,o,n);if("textarea"===o){const t=n("textarea","",{placeholder:e.placeholder,rows:"3"});return t.value=void 0===r?"":String(r),l(t),p(t,t,[t],()=>t.value)}if("select"===o){const t=n("select");e.placeholder&&t.append(n("option","",{value:"",disabled:""},e.placeholder));for(const o of de(e.options))t.append(n("option","",{value:o.value,disabled:o.disabled?"":void 0},o.label));return t.value=void 0===r?"":String(r),l(t),p(t,t,[t],()=>t.value)}if("radio"===o){const o=n("fieldset","gk-radios");o.append(n("legend",a?"gk-label":"gk-sr",{},a??"")),a||o.setAttribute("aria-labelledby",t);const i=s("gk-radio"),d=[];for(const t of de(e.options)){const e=n("input","",{type:"radio",name:i,value:t.value,disabled:t.disabled?"":void 0});e.checked=void 0!==r&&String(r)===t.value,d.push(e),o.append(n("label","gk-choice",{},e,n("span","",{},t.label)))}const l=d.find(e=>!e.disabled)??o;return u(c(o),d.find(e=>e.checked)??l,d,()=>d.find(e=>e.checked)?.value)}if("checkbox"===o){const t=n("input","",{type:"checkbox"});t.checked=!0===r||"true"===r||1===r,t.id=i,ce(t,e.inputAttributes);const o=a??e.placeholder??"";return u(c(n("label","gk-choice",{for:i},t,n("span","",{},o))),t,[t],()=>t.checked)}const g=n("input","",{type:o,placeholder:e.placeholder});if("file"!==o&&void 0!==r&&(g.value=String(r)),l(g),"range"===o){const e=n("output","gk-output",{for:i},g.value);return g.addEventListener("input",()=>{e.textContent=g.value}),u(c(d,g,e),g,[g],()=>Number(g.value))}if("otp"===o){const t=e.otpLength??6,o="alphanumeric"===e.otpType,i=n("div","gk-otp"),r=[];for(let s=0;s<t;s++){const a=n("input","gk-field gk-otp-input",{type:"text",maxLength:"1",inputmode:o?"text":"numeric",autocomplete:s?"off":"one-time-code","aria-label":`Digit ${s+1} of ${t}`});r.push(a),i.append(a),a.addEventListener("input",()=>{o||(a.value=a.value.replace(/\D/g,"")),a.value&&r[s+1]&&r[s+1]?.focus();const n=r.map(e=>e.value).join("");n.length===t&&e.onOtpComplete?.(n)}),a.addEventListener("keydown",e=>{const t=r[s-1],o=r[s+1];"Backspace"===e.key&&!a.value&&t||"ArrowLeft"===e.key&&t?t.focus():"ArrowRight"===e.key&&o&&o.focus()}),a.addEventListener("paste",n=>{const i=n.clipboardData?.getData("text")||"",s=(o?i.replace(/[^a-zA-Z0-9]/g,""):i.replace(/\D/g,"")).slice(0,t);s&&(n.preventDefault(),r.forEach((e,t)=>{e.value=s[t]||""}),r[Math.min(s.length,t-1)]?.focus(),s.length===t&&e.onOtpComplete?.(s))})}if("string"==typeof e.inputValue){const o=e.inputValue.slice(0,t);r.forEach((e,t)=>{e.value=o[t]||""})}let s=null;if(void 0!==e.resendCooldown){let t=e.resendCooldown;const o=n("p","gk-otp-resend"),i=n("button","gk-btn-resend",{type:"button"},"Resend code"),r=n("span","",{},t>0?` (${t}s)`:"");if(i.disabled=t>0,o.append("Didn't get it? ",i,r),t>0){const e=setInterval(()=>{--t<=0?(clearInterval(e),r.textContent="",i.disabled=!1):r.textContent=` (${t}s)`},1e3)}i.addEventListener("click",()=>{i.disabled||e.onResend?.()}),s=o}return u(c(d,i,s),r[0]??i,r,()=>r.map(e=>e.value).join(""))}return p(g,g,[g],()=>"file"===o?g.multiple?[...g.files??[]]:g.files?.[0]:"number"===o?""===g.value?void 0:Number(g.value):g.value)}(C,a),p){if(L.append(p.node),void 0!==e&&"object"!=typeof e){const t=p.focusTarget;t instanceof HTMLInputElement&&"checkbox"!==t.type&&"radio"!==t.type&&(t.value=String(e))}for(const e of p.fields)e.addEventListener("keydown",e=>{const t=e.target,o=t instanceof HTMLTextAreaElement;"Enter"!==e.key||o&&!e.ctrlKey&&!e.metaKey||"SELECT"===t.tagName||(e.preventDefault(),r.submit("confirm"))});r.setValueReader(p.read)}else r.setValueReader(()=>{})}L.hidden=!p;for(const e of p?.fields??[])o.error?(e.setAttribute("aria-invalid","true"),e.setAttribute("aria-describedby",l)):(e.removeAttribute("aria-invalid"),e.removeAttribute("aria-describedby"));M.textContent=o.error??"",M.hidden=!o.error,le(T,C.confirmButton,"OK",!0),le(B,C.denyButton,"No",!1),le(S,C.cancelButton,"Cancel",!1),P.dataset.reverse=C.reverseButtons?"true":"false",P.dataset.layout=C.buttonLayout??("update-info"===F?"stack":"ios-glass-alert"===F?"divided":"row"),P.hidden=T.hidden&&B.hidden&&S.hidden;const H=o.loading,I="confirm"===H,q="deny"===H;if(T.disabled=B.disabled=null!==H,T.setAttribute("aria-busy",String(I)),B.setAttribute("aria-busy",String(q)),T.dataset.loading=String(I),B.dataset.loading=String(q),m.setAttribute("aria-busy",String(null!==H)),C.confirmText){const e=()=>{const e=String(p?p.read():""),t=C.confirmText??"",n=C.caseSensitive?e===t:e.trim().toLowerCase()===t.toLowerCase();T.disabled=!n||null!==o.loading,T.setAttribute("aria-disabled",String(!n))};e();for(const t of p?.fields??[])t.addEventListener("input",e)}if(D.replaceChildren(),C.footer){const e=v(C.footer);e&&D.append(e)}D.hidden=!C.footer;const W=r.handle.timer.remaining();N.hidden=!(C.timerProgressBar&&W>0),!N.hidden&&Math.abs(W-z)>60&&(z=W,O.style.animation="none",O.offsetWidth,O.style.animation="",O.style.setProperty("--gk-d",`${W}ms`)),O.style.animationPlayState=r.handle.timer.paused()?"paused":"running",o.open||f.close()};if(h.addEventListener("click",()=>{r.dismiss("close")}),T.addEventListener("click",()=>{r.submit("confirm")}),B.addEventListener("click",()=>{r.submit("deny")}),S.addEventListener("click",()=>{r.dismiss("cancel")}),m.addEventListener("pointerenter",()=>{r.handle.timer.remaining()>0&&!r.handle.timer.paused()&&(F=!0,r.handle.timer.pause())}),m.addEventListener("pointerleave",()=>{F&&(F=!1,r.handle.timer.resume())}),e.draggable){let e,t={x:0,y:0};m.dataset.draggable="true",m.addEventListener("pointerdown",o=>{const n=o.target;!n.closest("button,input,select,textarea,a")&&n.closest(".gk-dialog-title,.gk-dialog-icon")&&(e={x:o.clientX,y:o.clientY,ox:t.x,oy:t.y},m.setPointerCapture?.(o.pointerId))}),m.addEventListener("pointermove",o=>{e&&(t={x:e.ox+o.clientX-e.x,y:e.oy+o.clientY-e.y},m.style.transform=`translate(${t.x}px, ${t.y}px)`)});const o=()=>{e=void 0};m.addEventListener("pointerup",o),m.addEventListener("pointercancel",o)}r.subscribe(()=>V(r.getState())),V(r.getState()),f.show();const R=r.getState().options,j=R.focusOn??(p?"input":"danger"!==R.tone||S.hidden?"confirm":"cancel"),H={confirm:T,deny:B,cancel:S,input:p?.focusTarget,close:h,none:void 0}[j];return H&&!H.hidden?H.focus():"none"!==j&&m.focus(),r.opened(),Object.assign(r.handle.result.then(e=>e),{handle:r.handle})}function pe(e){o();const t=re().store.config.get(),i=G({allowOutsideClick:e.allowOutsideClick,allowEscape:e.allowEscape}),r=s("gk-title"),a=s("gk-text"),d=ne({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:"gk-overlay-sheet",onEscape:()=>{i.dismiss("esc")},onBackdrop:()=>{i.dismiss("backdrop")}});d.root.dataset.row="bottom",d.root.dataset.col="center";const c=n("div","gk-sheet"+(e.className?` ${e.className}`:""),{role:"dialog","aria-modal":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode});e.title&&(c.append(n("h2","gk-sheet-title",{id:r},e.title)),c.setAttribute("aria-labelledby",r)),e.message&&(c.append(n("p","gk-sheet-message",{id:a},e.message)),c.setAttribute("aria-describedby",a));const l=n("div","gk-sheet-group",{role:"group"});let u,p;e.title&&l.setAttribute("aria-labelledby",r);for(const t of e.actions){const e=n("button","gk-sheet-action",{type:"button","data-style":t.style??"default"});if(t.disabled&&(e.disabled=!0),t.icon){const o=v(t.icon);o&&e.append(n("span","gk-sheet-icon",{"aria-hidden":"true"},o))}e.append(n("span","gk-sheet-label",{},t.label)),e.addEventListener("click",()=>{"cancel"===t.style?i.dismiss("cancel"):i.handle.close({isConfirmed:!0,value:t.value??t.label})}),t.disabled||u||(u=e),l.append(e)}return c.append(l),!1!==e.cancel&&(p=n("button","gk-sheet-cancel",{type:"button"},e.cancel?.label??"Cancel"),p.addEventListener("click",()=>{i.dismiss("cancel")}),c.append(p)),c.addEventListener("keydown",e=>{if("ArrowDown"===e.key||"ArrowUp"===e.key){const t=[...c.querySelectorAll("button:not([disabled])")],o=t.indexOf(document.activeElement);-1!==o&&(e.preventDefault(),t[(o+("ArrowDown"===e.key?1:t.length-1))%t.length]?.focus())}}),d.root.append(c),i.subscribe(()=>{i.getState().open||d.close()}),d.show(),(u??p??c).focus(),i.opened(),Object.assign(i.handle.result.then(e=>e),{handle:i.handle})}function ge(e){o();const t=re().store.config.get(),i=(e.snapPoints?.length?[...e.snapPoints]:[.5]).map(e=>Math.min(1,Math.max(.1,e))).sort((e,t)=>e-t);let r=Math.min(i.length-1,Math.max(0,e.initialSnap??0));const a=G({allowOutsideClick:e.allowOutsideClick,allowEscape:e.allowEscape,willClose:()=>e.willClose?.(A)}),d=s("gk-title"),c=ne({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:"gk-overlay-bottom",onEscape:()=>{a.dismiss("esc")},onBackdrop:()=>{a.dismiss("backdrop")}});c.root.dataset.row="bottom",c.root.dataset.col="center";const l=n("div","gk-bsheet"+(e.className?` ${e.className}`:""),{role:"dialog","aria-modal":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode});e.variant&&l.setAttribute("data-gk-variant",e.variant);const p=n("button","gk-grab",{type:"button","aria-label":e.handleLabel??"Resize sheet"}),g=n("div","gk-dialog-icon gk-dialog-badge");if(g.hidden=!0,e.icon){g.hidden=!1,g.dataset.tone=e.tone??"danger";const t=u("trash"===e.icon?"trash":"warning"===e.icon?"warning":"error");t&&g.append(t)}const f=n("h2","gk-bsheet-title",{id:d}),m=n("div","gk-bsheet-body"),h=n("div","gk-dialog-buttons gk-dialog-actions",{"data-layout":"stack"});if(h.hidden=!0,e.confirmButton||e.cancelButton||"bottom-sheet-confirm"===e.variant){h.hidden=!1;const t=(e,t,o)=>{const i=n("button",`gk-btn ${e}`,{type:"button"},t);return i.addEventListener("click",o),i};h.append(t("gk-confirm gk-btn--confirm",e.confirmButton?.label??"Confirm",()=>a.submit("confirm")),t("gk-cancel gk-btn--cancel",e.cancelButton?.label??"Cancel",()=>a.dismiss("cancel")))}const b=n("button","gk-dialog-close",{type:"button"});b.append(u("close")),l.append(b,p,g,f,m,h),c.root.append(l);const y=(e,t)=>{l.dataset.dragging=String(!t),l.style.setProperty("--gk-sheet-h",100*e+"vh")},k=e=>{if(f.textContent=e.title??"",f.hidden=!e.title,e.title?l.setAttribute("aria-labelledby",d):l.removeAttribute("aria-labelledby"),m.replaceChildren(),e.text&&m.append(e.text),e.html){const t=v(e.html);t&&m.append(t)}};k(e),p.hidden=!1===e.handle,b.hidden=!e.closeButtonLabel,e.closeButtonLabel&&b.setAttribute("aria-label",e.closeButtonLabel),b.addEventListener("click",()=>{a.dismiss("close")}),y(i[r]??.5,!0);const w=e=>{r=Math.min(i.length-1,Math.max(0,e)),y(i[r]??.5,!0)};let x;p.addEventListener("keydown",t=>{"ArrowUp"===t.key?(t.preventDefault(),w(r+1)):"ArrowDown"===t.key&&(t.preventDefault(),r||!1===e.dismissible?w(r-1):a.dismiss("close"))});const E=()=>window.innerHeight||1;l.addEventListener("pointerdown",e=>{e.target.closest(".gk-grab,.gk-bsheet-title")&&(x={y:e.clientY,base:i[r]??.5},l.setPointerCapture?.(e.pointerId))}),l.addEventListener("pointermove",e=>{if(!x)return;const t=x.base+(x.y-e.clientY)/E();y(Math.min(i[i.length-1]??1,Math.max(0,t)),!1)});const $=t=>{if(!x)return;const o=x.base+(x.y-t.clientY)/E();if(x=void 0,!1!==e.dismissible&&o<(i[0]??.5)/2)return void a.dismiss("close");let n=0;i.forEach((e,t)=>{Math.abs(e-o)<Math.abs((i[n]??0)-o)&&(n=t)}),w(n)};l.addEventListener("pointerup",$),l.addEventListener("pointercancel",$);const A={body:m,result:a.handle.result,close:(e="close")=>{a.dismiss(e)},snapTo:w,update:k};return a.subscribe(()=>{a.getState().open||c.close()}),c.show(),(p.hidden?l:p).focus(),e.didOpen?.(A),A}function fe(e={}){o();const t=re().store.config.get();let i=!0,r=()=>{};const a=new Promise(e=>{r=e}),d=ne({backdrop:e.backdrop,theme:e.theme??t.theme,mode:t.mode,dir:t.dir,className:"gk-overlay-loading"+(e.className?` ${e.className}`:""),trap:!1,onEscape:()=>{e.allowEscape&&b.close()}});d.root.dataset.row="center",d.root.dataset.col="center";const c=u("loading");c.classList.add("gk-loading-spinner"),c.setAttribute("width","32"),c.setAttribute("height","32");const l=n("div","gk-loading-text",{id:s("gk-text")}),p=n("i"),g=n("div","gk-loading-bar",{role:"progressbar","aria-valuemin":"0","aria-valuemax":"100"},p),f=n("div","gk-loading",{role:"status","aria-live":"polite","aria-busy":"true",tabindex:"-1","data-gk-theme":e.theme??t.theme,"data-gk-mode":t.mode},c,l,g);d.root.append(f);let m={text:e.text??e.title,progress:e.progress};const h=e=>{if(m=e,l.textContent=e.text??"",l.hidden=!e.text,void 0===e.progress)g.hidden=!0,g.removeAttribute("aria-valuenow");else{const t=Math.round(100*Math.min(1,Math.max(0,e.progress)));g.hidden=!1,g.setAttribute("aria-valuenow",String(t)),e.text&&g.setAttribute("aria-label",e.text),p.style.width=`${t}%`}};h(e),d.show(),f.focus();const b={closed:a,update(e){i&&h({...m,...e})},close(){i&&(i=!1,d.close().then(r))}};return b}var me=e=>`--gk-bg:${e.bg};--gk-bg-solid:${e.solid};--gk-fg:${e.fg};--gk-muted:${e.muted};--gk-border:${e.border};--gk-shadow:${e.shadow};--gk-accent:${e.accent};--gk-accent-fg:${e.accentFg};--gk-danger:${e.danger};--gk-danger-fg:${e.dangerFg};--gk-success:${e.success};--gk-error:${e.error};--gk-warning:${e.warning};--gk-info:${e.info};`;var he="#ffffff",be="#b71c1c",ve="#1c1c1e",ye={bg:he,solid:he,fg:"#1d1d1f",muted:"#515156",border:"rgba(60,60,67,0.22)",shadow:"0 8px 28px rgba(0,0,0,0.14)",accent:"#0057c2",accentFg:he,danger:be,dangerFg:he,success:"#1a7f37",error:be,warning:"#8a5a00",info:"#0b5cc7"},ke={bg:ve,solid:ve,fg:"#f5f5f7",muted:"#b4b4bb",border:"rgba(255,255,255,0.16)",shadow:"0 8px 28px rgba(0,0,0,0.5)",accent:"#4da3ff",accentFg:"#00152e",danger:"#ff8a8a",dangerFg:"#2b0000",success:"#4ade80",error:"#ff7b7b",warning:"#ffc857",info:"#6cb6ff"},we=new Map;function xe(e,t){const o=t.tokens,n="object"==typeof o&&o?o:void 0,i=t.light??(n&&"light"in n?n.light:n),r=t.dark??(n&&"dark"in n?n.dark:void 0),s={name:e,radius:t.radius??"16px",blur:t.blur??"16px",saturate:t.saturate??"160%",font:t.font,ease:t.ease,duration:t.duration,borderWidth:t.borderWidth,light:{...ye,...i},dark:{...ke,...r},css:t.css,supportedVariants:t.supportedVariants};we.set(e,s);const a=function(e){const t=`[data-gk-theme="${e.name}"]`,o=`--gk-radius:${e.radius};--gk-blur:${e.blur};--gk-saturate:${e.saturate};`+(e.borderWidth?`--gk-border-w:${e.borderWidth};`:"")+(e.font?`--gk-font:${e.font};`:"")+(e.ease?`--gk-ease:${e.ease};`:"")+(e.duration?`--gk-duration:${e.duration};`:""),n=`${t}[data-gk-mode="dark"],:is(.dark,[data-theme="dark"]) ${t}`,i=(e.css??"").split("&").join(t),r=me(e.dark);return`${t}{color-scheme:light;${o}${me(e.light)}}${n}{color-scheme:dark;${r}}@media (prefers-color-scheme:dark){${t}[data-gk-mode="auto"]{color-scheme:dark;${r}}}`+i}(s);if("undefined"!=typeof document){let t=document.querySelector(`style[data-gk-theme="${e}"]`);t||(t=document.createElement("style"),t.setAttribute("data-gk-theme",e),document.head.append(t)),t.textContent=a}return a}function Ee(){const e=(e,t,o={})=>ue({...e,...o,cancelButton:{show:t,...e.cancelButton}});return{toast:re().toast,confirm:(t={})=>e(t,!0),alert:(t={})=>e(t,!1),prompt:(t={})=>e(t,!0,{input:t.input??"text"}),steps:(t,o)=>async function(e,t,o="Back"){const n=[];let i=0,r={isConfirmed:!1,isDenied:!1,isDismissed:!0,value:void 0,dismiss:"close"};for(;i<e.length;){const s=e[i];if(!s){i+=1;continue}const a=i>0?{...s,denyButton:{show:!0,label:o,...s.denyButton}}:s,d=n[i],c="string"==typeof d||"number"==typeof d||"boolean"==typeof d?d:a.inputValue;if(r=await t({...a,inputValue:c}),r.isConfirmed)n[i]=r.value,i+=1;else{if(!(r.isDenied&&i>0))return{...r,values:n.slice(0,i),step:i};i-=1}}return{...r,values:n,step:Math.max(0,e.length-1)}}(t,t=>e(t,!0),o),sheet:pe,bottomSheet:ge,loading:fe,configure:ae,sound:(e,t)=>A(e,t),defineTheme:xe,get toastStore(){return re().store}}}var $e=Ee(),Ae=re().toast,Le=e.defineComponent({name:"ToastoryToaster",props:{theme:{type:String,default:void 0},mode:{type:String,default:void 0},position:{type:String,default:void 0},duration:{type:Number,default:void 0},maxVisible:{type:Number,default:void 0},gap:{type:Number,default:void 0},stack:{type:Boolean,default:void 0},dir:{type:String,default:void 0},hotkey:{type:String,default:void 0},richColors:{type:Boolean,default:void 0},closeButton:{type:Boolean,default:void 0},shadow:{type:Boolean,default:void 0},sound:{type:[Boolean,String],default:void 0},soundVolume:{type:Number,default:void 0}},setup(t){const o=re();return e.onMounted(()=>{const n={};for(const[e,o]of Object.entries(t))void 0!==o&&(n[e]=o);if(Object.keys(n).length>0&&o.store.config.set(n),se(!1),O()){const t=D(o.store);e.onUnmounted(()=>{t.destroy(),se(!0)})}}),()=>null}}),Me=Le;function Ce(){const t=re(),o=e.shallowRef(t.store.getToasts()),n=e.shallowRef(t.store.config.get()),i=t.store.subscribe(()=>{o.value=t.store.getToasts()}),r=t.store.config.subscribe(()=>{n.value=t.store.config.get()});return e.onUnmounted(()=>{i(),r()}),{ui:$e,toast:t.toast,toasts:o,config:n}}var Te=Ce,Be={install(e,t){t&&$e.configure(t),e.config.globalProperties.$toastory=$e,e.config.globalProperties.$glaze=$e,e.config.globalProperties.$toast=Ae,e.provide("toastory",$e),e.provide("glaze",$e),e.provide("toast",Ae),e.component("ToastoryToaster",Me),e.component("GlazeToaster",Me)}},Se=Be;exports.GlazeToaster=Me,exports.ToastoryToaster=Le,exports.chime=L,exports.glazekitPlugin=Se,exports.playSound=A,exports.toast=Ae,exports.toastoryPlugin=Be,exports.ui=$e,exports.useGlazekit=Te,exports.useToast=function(){const t=re(),o=e.shallowRef(t.store.getToasts()),n=t.store.subscribe(()=>{o.value=t.store.getToasts()});return e.onUnmounted(()=>{n()}),{toast:t.toast,toasts:o}},exports.useToastory=Ce;//# sourceMappingURL=vue.cjs.map
|