@juspay/svelte-ui-components 4.31.2 → 4.32.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/dist/Accordion/Accordion.svelte +6 -1
- package/dist/Animations/ModalAnimation.svelte +71 -8
- package/dist/Animations/OverlayAnimation.svelte +29 -4
- package/dist/Animations/tokenizedFly.d.ts +17 -0
- package/dist/Animations/tokenizedFly.js +153 -0
- package/dist/AreaChart/AreaChart.svelte +7 -5
- package/dist/BarChart/BarChart.svelte +2 -1
- package/dist/Book/Book.svelte +6 -3
- package/dist/ChatBubble/ChatBubble.svelte +18 -3
- package/dist/Checkbox/Checkbox.svelte +15 -3
- package/dist/Choicebox/Choicebox.svelte +24 -2
- package/dist/Combobox/Combobox.svelte +15 -1
- package/dist/CommandMenu/CommandMenu.svelte +72 -2
- package/dist/ContextMenu/ContextMenu.svelte +41 -1
- package/dist/DualAxisBarChart/DualAxisBarChart.svelte +4 -3
- package/dist/FunnelChart/FunnelChart.svelte +5 -4
- package/dist/Gallery/Gallery.svelte +53 -1
- package/dist/Gallery/properties.d.ts +5 -3
- package/dist/Gauge/Gauge.svelte +2 -1
- package/dist/LineChart/LineChart.svelte +7 -5
- package/dist/MediaPlayer/MediaPlayer.svelte +9 -1
- package/dist/MediaPlayer/MediaPlayer.svelte.d.ts +1 -1
- package/dist/MediaUpload/MediaUpload.svelte +1 -1
- package/dist/Menu/Menu.svelte +38 -1
- package/dist/Modal/Modal.svelte +18 -4
- package/dist/Pagination/Pagination.svelte +9 -1
- package/dist/PieChart/PieChart.svelte +2 -2
- package/dist/Radio/Radio.svelte +14 -2
- package/dist/RatingGroup/RatingGroup.svelte +9 -0
- package/dist/SankeyChart/SankeyChart.svelte +6 -3
- package/dist/Select/Select.svelte +26 -4
- package/dist/Sheet/Sheet.svelte +34 -2
- package/dist/Slider/Slider.svelte +26 -5
- package/dist/Table/Table.svelte +9 -2
- package/dist/Tabs/Tabs.svelte +27 -4
- package/dist/TaskList/TaskList.svelte +10 -2
- package/dist/ThemeSwitcher/ThemeSwitcher.svelte +13 -6
- package/dist/ThinkingIndicator/ThinkingIndicator.svelte +5 -3
- package/dist/Toast/Toast.svelte +216 -116
- package/dist/Toggle/Toggle.svelte +8 -4
- package/dist/ToolCallLog/ToolCallLog.svelte +10 -2
- package/dist/Tooltip/Tooltip.svelte +4 -2
- package/dist-wc/index.d.ts +1 -1
- package/dist-wc/index.js +611 -410
- package/package.json +2 -2
package/dist-wc/index.js
CHANGED
|
@@ -140,6 +140,9 @@ function hydration_html_changed(e) {
|
|
|
140
140
|
function hydration_mismatch(e) {
|
|
141
141
|
console.warn("https://svelte.dev/e/hydration_mismatch");
|
|
142
142
|
}
|
|
143
|
+
function invalid_raw_snippet_render() {
|
|
144
|
+
console.warn("https://svelte.dev/e/invalid_raw_snippet_render");
|
|
145
|
+
}
|
|
143
146
|
function lifecycle_double_unmount() {
|
|
144
147
|
console.warn("https://svelte.dev/e/lifecycle_double_unmount");
|
|
145
148
|
}
|
|
@@ -2297,6 +2300,14 @@ function snippet(e, t, ...n) {
|
|
|
2297
2300
|
i.ensure(e, e && ((t) => e(t, ...n)));
|
|
2298
2301
|
}, EFFECT_TRANSPARENT);
|
|
2299
2302
|
}
|
|
2303
|
+
function createRawSnippet(e) {
|
|
2304
|
+
return (t, ...n) => {
|
|
2305
|
+
var i = e(...n), a;
|
|
2306
|
+
hydrating ? (a = hydrate_node, hydrate_next()) : (a = /* @__PURE__ */ get_first_child(create_fragment_from_html(i.render().trim())), t.before(a));
|
|
2307
|
+
let o = i.setup?.(a);
|
|
2308
|
+
assign_nodes(a, a), typeof o == "function" && teardown(o);
|
|
2309
|
+
};
|
|
2310
|
+
}
|
|
2300
2311
|
function onMount(e) {
|
|
2301
2312
|
component_context === null && lifecycle_outside_component("onMount"), legacy_mode_flag && component_context.l !== null ? init_update_callbacks(component_context).m.push(e) : user_effect(() => {
|
|
2302
2313
|
let t = untrack(e);
|
|
@@ -2682,7 +2693,7 @@ function css_to_keyframe(e) {
|
|
|
2682
2693
|
}
|
|
2683
2694
|
return t;
|
|
2684
2695
|
}
|
|
2685
|
-
var linear$
|
|
2696
|
+
var linear$2 = (e) => e, animation_effect_override = null;
|
|
2686
2697
|
function set_animation_effect_override(e) {}
|
|
2687
2698
|
function transition(e, t, n, i) {
|
|
2688
2699
|
var a = (e & 1) != 0, o = (e & 2) != 0, s = a && o, c = (e & 4) != 0, l = s ? "both" : a ? "in" : "out", u, f = t.inert, p = t.style.overflow, h, S;
|
|
@@ -2749,7 +2760,7 @@ function animate(e, t, n, i, a, o) {
|
|
|
2749
2760
|
reset: noop,
|
|
2750
2761
|
t: () => i
|
|
2751
2762
|
};
|
|
2752
|
-
let { delay: u = 0, css: f, tick: p, easing: h = linear$
|
|
2763
|
+
let { delay: u = 0, css: f, tick: p, easing: h = linear$2 } = t;
|
|
2753
2764
|
var S = [];
|
|
2754
2765
|
if (s && n === void 0 && (p && p(0, 1), f)) {
|
|
2755
2766
|
var C = css_to_keyframe(f(0, 1));
|
|
@@ -5027,7 +5038,7 @@ create_custom_element(Button, {
|
|
|
5027
5038
|
//#region src/lib/Book/Book.svelte
|
|
5028
5039
|
var root$104 = /* @__PURE__ */ from_html("<div><!></div>"), root_1$93 = /* @__PURE__ */ from_html("<div class=\"page svelte-1qrpci6\"><!></div>"), root_2$71 = /* @__PURE__ */ from_html("<div class=\"page page-slide svelte-1qrpci6\"><!></div>"), root_3$62 = /* @__PURE__ */ from_html("<button></button>"), root_4$50 = /* @__PURE__ */ from_html("<div class=\"page-indicator svelte-1qrpci6\"></div>"), root_5$40 = /* @__PURE__ */ from_html("<div role=\"region\" tabindex=\"0\"><div class=\"book-viewport svelte-1qrpci6\"><!> <div class=\"pages-container svelte-1qrpci6\"></div> <!></div> <!></div>"), $$css$192 = {
|
|
5029
5040
|
hash: "svelte-1qrpci6",
|
|
5030
|
-
code: ".book.svelte-1qrpci6 {width:var(--book-width, 100%);background-color:var(--book-background, #ffffff);border-radius:var(--book-border-radius, var(--radius, 4px));border:var(--book-border, 1px solid #e0e0e0);outline:none;}\n\n /* role=\"region\" tabindex=\"0\" above makes this a real Tab stop (arrow keys\n then page it via handleKeyDown), so removing its outline unconditionally\n left a keyboard user with no visible sign it was focused. :focus-visible\n so tapping/clicking into the book to swipe doesn't show a ring. */.book.svelte-1qrpci6:focus-visible {outline:var(--book-focus-outline, 2px solid #2563eb);outline-offset:var(--book-focus-outline-offset, 2px);}.book-viewport.svelte-1qrpci6 {position:relative;display:flex;align-items:center;}.pages-container.svelte-1qrpci6 {position:relative;width:100%;height:var(--book-height, 400px);overflow:var(--book-overflow, hidden);}.page.svelte-1qrpci6 {width:100%;height:100%;}.page-slide.svelte-1qrpci6 {position:absolute;top:0;left:0;transition:transform var(--book-transition-duration, 0.3s) ease;}.page-fade.svelte-1qrpci6 {position:absolute;top:0;left:0;opacity:0;transition:opacity var(--book-transition-duration, 0.3s) ease;pointer-events:none;}.page-fade.page-active.svelte-1qrpci6 {opacity:1;pointer-events:auto;}.nav-button.svelte-1qrpci6 {display:flex;align-items:center;justify-content:center;--button-width: var(--book-nav-size, 36px);--button-height: var(--book-nav-size, 36px);--button-min-width: var(--book-nav-size, 36px);--button-background: var(--book-nav-background, rgba(0, 0, 0, 0.05));--button-border: none;--button-border-radius: var(--book-nav-border-radius, 50%);--button-padding: 0;--button-color: var(--book-nav-color, #333333);--button-hover-background: var(--book-nav-hover-background, rgba(0, 0, 0, 0.1));}.nav-disabled.svelte-1qrpci6 {opacity:var(--book-nav-disabled-opacity, 0.3);}.nav-button.svelte-1qrpci6 svg {width:18px;height:18px;}.nav-prev.svelte-1qrpci6 {margin-right:4px;}.nav-next.svelte-1qrpci6 {margin-left:4px;}.page-indicator.svelte-1qrpci6 {display:flex;justify-content:center;align-items:center;gap:var(--book-dot-gap, 8px);padding:var(--book-indicator-padding, 12px 0);}.dot.svelte-1qrpci6 {width:var(--book-dot-size, 8px);height:var(--book-dot-size, 8px);border-radius:var(--book-dot-border-radius, 50%);background-color:var(--book-dot-color, #cccccc);border:none;padding:0;cursor:pointer;transition:background-color
|
|
5041
|
+
code: ".book.svelte-1qrpci6 {width:var(--book-width, 100%);background-color:var(--book-background, #ffffff);border-radius:var(--book-border-radius, var(--radius, 4px));border:var(--book-border, 1px solid #e0e0e0);outline:none;}\n\n /* role=\"region\" tabindex=\"0\" above makes this a real Tab stop (arrow keys\n then page it via handleKeyDown), so removing its outline unconditionally\n left a keyboard user with no visible sign it was focused. :focus-visible\n so tapping/clicking into the book to swipe doesn't show a ring. */.book.svelte-1qrpci6:focus-visible {outline:var(--book-focus-outline, 2px solid #2563eb);outline-offset:var(--book-focus-outline-offset, 2px);}.book-viewport.svelte-1qrpci6 {position:relative;display:flex;align-items:center;}.pages-container.svelte-1qrpci6 {position:relative;width:100%;height:var(--book-height, 400px);overflow:var(--book-overflow, hidden);}.page.svelte-1qrpci6 {width:100%;height:100%;}.page-slide.svelte-1qrpci6 {position:absolute;top:0;left:0;transition:transform var(--book-transition-duration, var(--motion-duration, 0.3s))\n var(--book-transition-easing, var(--motion-easing, ease));}.page-fade.svelte-1qrpci6 {position:absolute;top:0;left:0;opacity:0;transition:opacity var(--book-transition-duration, var(--motion-duration, 0.3s))\n var(--book-transition-easing, var(--motion-easing, ease));pointer-events:none;}.page-fade.page-active.svelte-1qrpci6 {opacity:1;pointer-events:auto;}.nav-button.svelte-1qrpci6 {display:flex;align-items:center;justify-content:center;--button-width: var(--book-nav-size, 36px);--button-height: var(--book-nav-size, 36px);--button-min-width: var(--book-nav-size, 36px);--button-background: var(--book-nav-background, rgba(0, 0, 0, 0.05));--button-border: none;--button-border-radius: var(--book-nav-border-radius, 50%);--button-padding: 0;--button-color: var(--book-nav-color, #333333);--button-hover-background: var(--book-nav-hover-background, rgba(0, 0, 0, 0.1));}.nav-disabled.svelte-1qrpci6 {opacity:var(--book-nav-disabled-opacity, 0.3);}.nav-button.svelte-1qrpci6 svg {width:18px;height:18px;}.nav-prev.svelte-1qrpci6 {margin-right:4px;}.nav-next.svelte-1qrpci6 {margin-left:4px;}.page-indicator.svelte-1qrpci6 {display:flex;justify-content:center;align-items:center;gap:var(--book-dot-gap, 8px);padding:var(--book-indicator-padding, 12px 0);}.dot.svelte-1qrpci6 {width:var(--book-dot-size, 8px);height:var(--book-dot-size, 8px);border-radius:var(--book-dot-border-radius, 50%);background-color:var(--book-dot-color, #cccccc);border:none;padding:0;cursor:pointer;transition:background-color\n var(--book-dot-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--book-dot-transition-easing, var(--motion-easing, ease));}.dot-active.svelte-1qrpci6 {background-color:var(--book-dot-active-color, #333333);}\n\n /* The page turn is a transform, which is the movement prefers-reduced-motion\n exists for. Both ends of the transition are meaningful on their own -- a page\n is either turned or not -- so removing it leaves no misleading frame, unlike\n the timed loaders in Button and ListItem. This block lives in the component's\n own <style> because that is the only stylesheet reaching inside the shadow\n root a custom-element consumer gets. */\n @media (prefers-reduced-motion: reduce) {.page.svelte-1qrpci6 {transition:none;}\n }"
|
|
5031
5042
|
};
|
|
5032
5043
|
function Book(e, t) {
|
|
5033
5044
|
push(t, !0), append_styles$1(e, $$css$192);
|
|
@@ -6362,7 +6373,7 @@ function describeField(e, t) {
|
|
|
6362
6373
|
//#region src/lib/assets/checkmark.svg?raw
|
|
6363
6374
|
var checkmark_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <polyline points=\"20 6 9 17 4 12\"></polyline>\n</svg>\n", minus_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"></line>\n</svg>\n", root$100 = /* @__PURE__ */ from_html("<span class=\"icon svelte-f1in4m\"></span>"), root_1$89 = /* @__PURE__ */ from_html("<span class=\"icon dash svelte-f1in4m\"></span>"), root_2$68 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-f1in4m\"> </div>"), root_3$59 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-f1in4m\"> </div>"), root_4$48 = /* @__PURE__ */ from_html("<label><input type=\"checkbox\" class=\"native-checkbox svelte-f1in4m\" aria-hidden=\"true\"/> <span><!> <!></span> <span class=\"label svelte-f1in4m\"> </span></label> <!> <!>", 1), $$css$184 = {
|
|
6364
6375
|
hash: "svelte-f1in4m",
|
|
6365
|
-
code: ".container.svelte-f1in4m {display:var(--checkbox-container-display, inline-flex);align-items:var(--checkbox-container-align-items, center);gap:var(--checkbox-container-gap, 8px);cursor:var(--checkbox-container-cursor, pointer);}.container.disabled.svelte-f1in4m {opacity:var(--checkbox-disabled-opacity, 0.4);cursor:var(--checkbox-disabled-cursor, not-allowed);}.native-checkbox.svelte-f1in4m {position:absolute;opacity:0;width:0;height:0;pointer-events:none;}.box.svelte-f1in4m {display:inline-flex;align-items:center;justify-content:center;width:var(--checkbox-size, 20px);height:var(--checkbox-size, 20px);border:var(--checkbox-border, 2px solid #757575);border-radius:var(--checkbox-border-radius, var(--radius, 4px));background-color:var(--checkbox-background, transparent)
|
|
6376
|
+
code: ".container.svelte-f1in4m {display:var(--checkbox-container-display, inline-flex);align-items:var(--checkbox-container-align-items, center);gap:var(--checkbox-container-gap, 8px);cursor:var(--checkbox-container-cursor, pointer);}.container.disabled.svelte-f1in4m {opacity:var(--checkbox-disabled-opacity, 0.4);cursor:var(--checkbox-disabled-cursor, not-allowed);}.native-checkbox.svelte-f1in4m {position:absolute;opacity:0;width:0;height:0;pointer-events:none;}.box.svelte-f1in4m {display:inline-flex;align-items:center;justify-content:center;width:var(--checkbox-size, 20px);height:var(--checkbox-size, 20px);border:var(--checkbox-border, 2px solid #757575);border-radius:var(--checkbox-border-radius, var(--radius, 4px));background-color:var(--checkbox-background, transparent);\n /* --checkbox-transition wraps the WHOLE value (matching Choicebox/Toggle's\n own \"-transition\" tokens), not just the duration -- a consumer filling it\n with e.g. \"0.3s ease-in-out\" replaces the entire expression cleanly. Putting\n it in only the duration slot with a separate -easing term appended after\n would make that same override produce an invalid transition (two\n timing-function components), dropping the whole declaration to its\n initial value instead of just using a different timing. */transition:var(\n --checkbox-transition,\n background-color\n var(--checkbox-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--checkbox-transition-easing, var(--motion-easing, ease)),\n border var(--checkbox-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--checkbox-transition-easing, var(--motion-easing, ease))\n );flex-shrink:0;}.box.svelte-f1in4m:focus-visible {outline:none;box-shadow:var(--checkbox-focus-ring, 0 0 0 3px rgba(33, 150, 243, 0.3));}.container.svelte-f1in4m:not(.disabled) .box:where(.svelte-f1in4m):hover {border-color:var(--checkbox-hover-border-color, #212121);}.box.checked.svelte-f1in4m {background-color:var(--checkbox-checked-background, #2196f3);border:var(--checkbox-checked-border, 2px solid #2196f3);}.box.indeterminate.svelte-f1in4m {background-color:var(--checkbox-indeterminate-background, #2196f3);border:var(--checkbox-indeterminate-border, 2px solid #2196f3);}.icon.svelte-f1in4m {display:inline-flex;align-items:center;justify-content:center;width:var(--checkbox-icon-size, 14px);height:var(--checkbox-icon-size, 14px);color:var(--checkbox-checkmark-color, white);}.icon.svelte-f1in4m svg {width:100%;height:100%;}.icon.dash.svelte-f1in4m {color:var(--checkbox-dash-color, white);}.label.svelte-f1in4m {font-size:var(--checkbox-label-font-size, 14px);font-weight:var(--checkbox-label-font-weight, 400);color:var(--checkbox-label-color, #212121);}.field-error.svelte-f1in4m {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-f1in4m {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}"
|
|
6366
6377
|
};
|
|
6367
6378
|
function Checkbox(e, t) {
|
|
6368
6379
|
let n = props_id();
|
|
@@ -8151,7 +8162,7 @@ function closestInEventPath(e, t) {
|
|
|
8151
8162
|
//#region src/lib/Slider/Slider.svelte
|
|
8152
8163
|
var root$95 = /* @__PURE__ */ from_html("<span class=\"slider-value svelte-17e64va\"> </span>"), root_1$84 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-17e64va\"> </div>"), root_2$64 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-17e64va\"> </div>"), root_3$56 = /* @__PURE__ */ from_html("<div><input type=\"range\" class=\"slider-input svelte-17e64va\"/> <!></div> <!> <!>", 1), $$css$178 = {
|
|
8153
8164
|
hash: "svelte-17e64va",
|
|
8154
|
-
code: ".slider-container.svelte-17e64va {display:flex;align-items:center;gap:12px;width:var(--slider-container-width, 100%);padding:var(--slider-container-padding, 4px 0);}.slider-container.disabled.svelte-17e64va {opacity:var(--slider-disabled-opacity, 0.5);cursor:var(--slider-disabled-cursor, not-allowed);}.slider-input.svelte-17e64va {-webkit-appearance:none;appearance:none;width:100%;height:var(--slider-track-height, 6px);border-radius:var(--slider-track-border-radius, var(--radius, 4px));background:var(\n --slider-track,\n linear-gradient(\n to right,\n var(--slider-track-active-color, #2196f3) 0%,\n var(--slider-track-active-color, #2196f3) var(--slider-fill-percent, 0%),\n var(--slider-track-background, #e0e0e0) var(--slider-fill-percent, 0%),\n var(--slider-track-background, #e0e0e0) 100%\n )\n );outline:none;transition:var(--slider-transition,
|
|
8165
|
+
code: ".slider-container.svelte-17e64va {display:flex;align-items:center;gap:12px;width:var(--slider-container-width, 100%);padding:var(--slider-container-padding, 4px 0);}.slider-container.disabled.svelte-17e64va {opacity:var(--slider-disabled-opacity, 0.5);cursor:var(--slider-disabled-cursor, not-allowed);}.slider-input.svelte-17e64va {-webkit-appearance:none;appearance:none;width:100%;height:var(--slider-track-height, 6px);border-radius:var(--slider-track-border-radius, var(--radius, 4px));background:var(\n --slider-track,\n linear-gradient(\n to right,\n var(--slider-track-active-color, #2196f3) 0%,\n var(--slider-track-active-color, #2196f3) var(--slider-fill-percent, 0%),\n var(--slider-track-background, #e0e0e0) var(--slider-fill-percent, 0%),\n var(--slider-track-background, #e0e0e0) 100%\n )\n );outline:none;transition:var(\n --slider-transition,\n background\n var(--slider-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--slider-transition-easing, var(--motion-easing, ease))\n );cursor:pointer;}.slider-container.disabled.svelte-17e64va .slider-input:where(.svelte-17e64va) {cursor:var(--slider-disabled-cursor, not-allowed);pointer-events:none;}.slider-input.svelte-17e64va::-webkit-slider-thumb {-webkit-appearance:none;appearance:none;width:var(--slider-thumb-size, 20px);height:var(--slider-thumb-size, 20px);border-radius:var(--slider-thumb-border-radius, 50%);background:var(--slider-thumb-background, #ffffff);border:var(--slider-thumb-border, 2px solid #2196f3);box-shadow:var(--slider-thumb-shadow, 0 1px 3px rgba(0, 0, 0, 0.2));opacity:var(--slider-thumb-opacity, 1);cursor:pointer;transition:transform\n var(\n --slider-thumb-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--slider-thumb-transition-easing, var(--motion-easing, ease)),\n opacity\n var(\n --slider-thumb-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--slider-thumb-transition-easing, var(--motion-easing, ease));}.slider-input.svelte-17e64va::-moz-range-thumb {width:var(--slider-thumb-size, 20px);height:var(--slider-thumb-size, 20px);border-radius:var(--slider-thumb-border-radius, 50%);background:var(--slider-thumb-background, #ffffff);border:var(--slider-thumb-border, 2px solid #2196f3);box-shadow:var(--slider-thumb-shadow, 0 1px 3px rgba(0, 0, 0, 0.2));opacity:var(--slider-thumb-opacity, 1);cursor:pointer;transition:transform\n var(\n --slider-thumb-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--slider-thumb-transition-easing, var(--motion-easing, ease)),\n opacity\n var(\n --slider-thumb-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--slider-thumb-transition-easing, var(--motion-easing, ease));}.slider-input.svelte-17e64va:hover::-webkit-slider-thumb {transform:scale(var(--slider-thumb-hover-scale, 1.15));opacity:var(--slider-thumb-hover-opacity, var(--slider-thumb-opacity, 1));}.slider-input.svelte-17e64va:hover::-moz-range-thumb {transform:scale(var(--slider-thumb-hover-scale, 1.15));opacity:var(--slider-thumb-hover-opacity, var(--slider-thumb-opacity, 1));}.slider-input.svelte-17e64va:focus-visible::-webkit-slider-thumb {outline:var(--slider-focus-ring, 2px solid #2196f3);outline-offset:2px;}.slider-input.svelte-17e64va:focus-visible::-moz-range-thumb {outline:var(--slider-focus-ring, 2px solid #2196f3);outline-offset:2px;}.slider-input.svelte-17e64va::-moz-range-track {height:var(--slider-track-height, 6px);border-radius:var(--slider-track-border-radius, var(--radius, 4px));background:transparent;}.slider-value.svelte-17e64va {font-size:var(--slider-value-font-size, 14px);font-weight:var(--slider-value-font-weight, 500);color:var(--slider-value-color, #333333);white-space:nowrap;}.field-error.svelte-17e64va {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-17e64va {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}"
|
|
8155
8166
|
};
|
|
8156
8167
|
function Slider(e, t) {
|
|
8157
8168
|
let n = props_id();
|
|
@@ -9091,7 +9102,7 @@ customElements.define("sui-color-picker", create_custom_element(ColorPicker_wc,
|
|
|
9091
9102
|
//#region src/lib/Combobox/Combobox.svelte
|
|
9092
9103
|
var root$92 = /* @__PURE__ */ from_html("<div class=\"combobox-input-prefix svelte-178p70i\"><!></div>"), root_1$81 = /* @__PURE__ */ from_html("<div class=\"combobox-input-suffix svelte-178p70i\"><!></div>"), root_2$61 = /* @__PURE__ */ from_html("<div class=\"combobox-dropdown-header svelte-178p70i\"><!></div>"), root_3$53 = /* @__PURE__ */ from_html("<div class=\"combobox-limit svelte-178p70i\" role=\"alert\"> </div>"), root_4$44 = /* @__PURE__ */ from_html("<div class=\"combobox-empty svelte-178p70i\"> </div>"), root_5$36 = /* @__PURE__ */ from_html("<div role=\"option\" tabindex=\"-1\"><!></div>"), root_6$31 = /* @__PURE__ */ from_html("<div role=\"option\" aria-selected=\"false\" tabindex=\"-1\"><span class=\"combobox-create-icon svelte-178p70i\" aria-hidden=\"true\"><svg viewBox=\"0 0 20 20\" width=\"14\" height=\"14\" fill=\"none\"><path d=\"M10 4v12M4 10h12\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\"></path></svg></span> </div>"), root_7$28 = /* @__PURE__ */ from_html("<span class=\"combobox-action-icon svelte-178p70i\" aria-hidden=\"true\"><!></span>"), root_8$23 = /* @__PURE__ */ from_html("<div role=\"option\" aria-selected=\"false\" tabindex=\"-1\"><!> </div>"), root_9$19 = /* @__PURE__ */ from_html("<div class=\"combobox-dropdown-footer svelte-178p70i\"><!></div>"), root_10$16 = /* @__PURE__ */ from_html("<div class=\"combobox-dropdown svelte-178p70i\" role=\"listbox\"><!> <!> <!> <!> <!></div>"), root_11$14 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-178p70i\"> </div>"), root_12$13 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-178p70i\"> </div>"), root_13$11 = /* @__PURE__ */ from_html("<div><div><!> <!> <div class=\"combobox-input svelte-178p70i\"><!></div> <!></div> <!></div> <!> <!>", 1), $$css$174 = {
|
|
9093
9104
|
hash: "svelte-178p70i",
|
|
9094
|
-
code: ".field-error.svelte-178p70i {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-178p70i {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}.combobox.svelte-178p70i {position:relative;width:var(--combobox-width, 100%);font-family:var(--combobox-font-family, inherit);font-size:var(--combobox-font-size, 14px);color:var(--combobox-color, #333333);}.combobox.disabled.svelte-178p70i {opacity:var(--combobox-disabled-opacity, 0.5);cursor:var(--combobox-disabled-cursor, not-allowed);pointer-events:none;}.combobox-input-wrapper.svelte-178p70i {display:flex;align-items:center;background:var(--combobox-input-background, #ffffff);border:var(--combobox-input-border, 1px solid #cccccc);border-radius:var(--combobox-input-border-radius, var(--radius, 4px));transition:var(--combobox-input-transition
|
|
9105
|
+
code: ".field-error.svelte-178p70i {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-178p70i {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}.combobox.svelte-178p70i {position:relative;width:var(--combobox-width, 100%);font-family:var(--combobox-font-family, inherit);font-size:var(--combobox-font-size, 14px);color:var(--combobox-color, #333333);}.combobox.disabled.svelte-178p70i {opacity:var(--combobox-disabled-opacity, 0.5);cursor:var(--combobox-disabled-cursor, not-allowed);pointer-events:none;}.combobox-input-wrapper.svelte-178p70i {display:flex;align-items:center;background:var(--combobox-input-background, #ffffff);border:var(--combobox-input-border, 1px solid #cccccc);border-radius:var(--combobox-input-border-radius, var(--radius, 4px));transition:var(\n --combobox-input-transition,\n border-color\n var(\n --combobox-input-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--combobox-input-transition-easing, var(--motion-easing, ease)),\n box-shadow\n var(\n --combobox-input-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--combobox-input-transition-easing, var(--motion-easing, ease))\n );}\n\n /* Multi-select control: pills wrap above the typeahead input. */.combobox-input-wrapper.multiple.svelte-178p70i {flex-wrap:wrap;gap:var(--combobox-pill-gap, 4px);padding:var(--combobox-multiple-padding, 4px 6px);cursor:text;}.combobox-input-wrapper.svelte-178p70i:hover {border-color:var(--combobox-input-hover-border-color, #999999);}.combobox-input-wrapper.svelte-178p70i:focus-within {border-color:var(--combobox-input-focus-border-color, #2563eb);box-shadow:var(--combobox-input-focus-shadow, 0 0 0 2px rgba(37, 99, 235, 0.2));}.combobox-input-prefix.svelte-178p70i {display:flex;align-items:center;padding-left:var(--combobox-input-prefix-padding, 8px);flex-shrink:0;}.combobox-input-suffix.svelte-178p70i {display:flex;align-items:center;padding-right:var(--combobox-input-suffix-padding, 8px);flex-shrink:0;}.combobox-input.svelte-178p70i {flex:1;min-width:0;--input-border: none;--input-focus-border: none;--input-box-shadow: none;--input-margin: 0;--input-width: 100%;--input-padding: var(--combobox-input-padding, 8px 12px);--input-background: transparent;--input-font-size: inherit;--input-font-family: inherit;--input-font-weight: inherit;--input-text-color: inherit;--input-radius: 0;}.combobox-input-wrapper.multiple.svelte-178p70i .combobox-input:where(.svelte-178p70i) {flex:1 1 60px;min-width:60px;--input-padding: var(--combobox-multiple-input-padding, 2px 4px);}.combobox-input.svelte-178p70i::placeholder {color:var(--combobox-placeholder-color, #999999);}.combobox-dropdown.svelte-178p70i {position:absolute;top:var(--combobox-dropdown-top, 100%);left:var(--combobox-dropdown-left, 0);right:var(--combobox-dropdown-right, 0);margin-top:var(--combobox-dropdown-gap, 4px);background:var(--combobox-dropdown-background, #ffffff);border:var(--combobox-dropdown-border, 1px solid #cccccc);border-radius:var(--combobox-dropdown-border-radius, var(--radius, 4px));box-shadow:var(--combobox-dropdown-shadow, 0 4px 12px rgba(0, 0, 0, 0.1));max-height:var(--combobox-dropdown-max-height, 200px);overflow-y:auto;z-index:var(--combobox-dropdown-z-index, 10);padding:var(--combobox-dropdown-padding, 0);}.combobox-option.svelte-178p70i {display:flex;align-items:center;gap:var(--combobox-option-gap, 8px);padding:var(--combobox-option-padding, 8px 12px);color:var(--combobox-option-color, #333333);font-size:var(--combobox-option-font-size, inherit);font-weight:var(--combobox-option-font-weight, inherit);cursor:pointer;transition:background var(--combobox-option-transition-duration, var(--motion-duration, 0.1s))\n var(--combobox-option-transition-easing, var(--motion-easing, ease));}.combobox-option.svelte-178p70i:hover,\n .combobox-option.highlighted.svelte-178p70i {background:var(--combobox-option-hover-background, #f0f0f0);color:var(--combobox-option-hover-color, var(--combobox-option-color, #333333));}.combobox-option.selected.svelte-178p70i {background:var(--combobox-option-selected-background, #e8f0fe);color:var(--combobox-option-selected-color, var(--combobox-option-color, #333333));font-weight:var(\n --combobox-option-selected-font-weight,\n var(--combobox-option-font-weight, inherit)\n );}.combobox-option.selected.highlighted.svelte-178p70i {background:var(\n --combobox-option-selected-hover-background,\n var(--combobox-option-selected-background, #e8f0fe)\n );}.combobox-option-disabled.svelte-178p70i {opacity:var(--combobox-option-disabled-opacity, 0.4);cursor:var(--combobox-option-disabled-cursor, not-allowed);pointer-events:none;}.combobox-create.svelte-178p70i {color:var(--combobox-create-color, #2563eb);}.combobox-action.svelte-178p70i {color:var(--combobox-action-color, #374151);}.combobox-option.with-divider.svelte-178p70i {border-top:var(--combobox-divider, 1px solid #e5e7eb);}.combobox-create-icon.svelte-178p70i,\n .combobox-action-icon.svelte-178p70i {display:inline-flex;align-items:center;flex-shrink:0;}.combobox-action-icon.svelte-178p70i svg {width:14px;height:14px;}.combobox-limit.svelte-178p70i {display:flex;align-items:center;gap:6px;padding:var(--combobox-limit-padding, 8px 12px);font-size:var(--combobox-limit-font-size, 13px);font-weight:500;color:var(--combobox-limit-color, #b45309);background:var(--combobox-limit-background, #fffbeb);}.combobox-dropdown-header.svelte-178p70i {border-bottom:var(--combobox-dropdown-header-border, none);padding:var(--combobox-dropdown-header-padding, 0);}.combobox-dropdown-footer.svelte-178p70i {border-top:var(--combobox-dropdown-footer-border, none);padding:var(--combobox-dropdown-footer-padding, 0);}.combobox-empty.svelte-178p70i {padding:var(--combobox-empty-padding, 8px 12px);color:var(--combobox-empty-color, #999999);font-style:var(--combobox-empty-font-style, italic);}"
|
|
9095
9106
|
};
|
|
9096
9107
|
function Combobox(e, t) {
|
|
9097
9108
|
let n = props_id();
|
|
@@ -10239,6 +10250,114 @@ customElements.define("sui-combobox", create_custom_element(Combobox_wc, {
|
|
|
10239
10250
|
innerControlIsNotTheValue: !0
|
|
10240
10251
|
})));
|
|
10241
10252
|
//#endregion
|
|
10253
|
+
//#region node_modules/.pnpm/svelte@5.56.3_@typescript-eslint+types@8.60.1/node_modules/svelte/src/easing/index.js
|
|
10254
|
+
function linear$1(e) {
|
|
10255
|
+
return e;
|
|
10256
|
+
}
|
|
10257
|
+
function cubicOut(e) {
|
|
10258
|
+
let t = e - 1;
|
|
10259
|
+
return t * t * t + 1;
|
|
10260
|
+
}
|
|
10261
|
+
//#endregion
|
|
10262
|
+
//#region src/lib/reduced-motion.svelte.ts
|
|
10263
|
+
var query = typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia("(prefers-reduced-motion: reduce)") : null, current = /* @__PURE__ */ state(proxy(query?.matches ?? !1));
|
|
10264
|
+
query?.addEventListener("change", (e) => {
|
|
10265
|
+
set(current, e.matches, !0);
|
|
10266
|
+
});
|
|
10267
|
+
var reducedMotion = { get current() {
|
|
10268
|
+
return get(current);
|
|
10269
|
+
} }, parseCssTime = (e) => {
|
|
10270
|
+
let t = e.trim();
|
|
10271
|
+
if (t.endsWith("ms")) {
|
|
10272
|
+
let e = Number.parseFloat(t);
|
|
10273
|
+
return Number.isFinite(e) ? e : null;
|
|
10274
|
+
}
|
|
10275
|
+
if (t.endsWith("s")) {
|
|
10276
|
+
let e = Number.parseFloat(t);
|
|
10277
|
+
return Number.isFinite(e) ? e * 1e3 : null;
|
|
10278
|
+
}
|
|
10279
|
+
return null;
|
|
10280
|
+
}, parseCssLength = (e) => {
|
|
10281
|
+
let t = e.trim();
|
|
10282
|
+
if (!t.endsWith("px")) return null;
|
|
10283
|
+
let n = Number.parseFloat(t);
|
|
10284
|
+
return Number.isFinite(n) ? n : null;
|
|
10285
|
+
}, CSS_KEYWORD_EASINGS = {
|
|
10286
|
+
ease: [
|
|
10287
|
+
.25,
|
|
10288
|
+
.1,
|
|
10289
|
+
.25,
|
|
10290
|
+
1
|
|
10291
|
+
],
|
|
10292
|
+
"ease-in": [
|
|
10293
|
+
.42,
|
|
10294
|
+
0,
|
|
10295
|
+
1,
|
|
10296
|
+
1
|
|
10297
|
+
],
|
|
10298
|
+
"ease-out": [
|
|
10299
|
+
0,
|
|
10300
|
+
0,
|
|
10301
|
+
.58,
|
|
10302
|
+
1
|
|
10303
|
+
],
|
|
10304
|
+
"ease-in-out": [
|
|
10305
|
+
.42,
|
|
10306
|
+
0,
|
|
10307
|
+
.58,
|
|
10308
|
+
1
|
|
10309
|
+
]
|
|
10310
|
+
};
|
|
10311
|
+
function cubicBezierEasing(e, t, n, i) {
|
|
10312
|
+
let a = (e, t) => 1 - 3 * t + 3 * e, o = (e, t) => 3 * t - 6 * e, s = (e) => 3 * e, c = (e, t, n) => ((a(t, n) * e + o(t, n)) * e + s(t)) * e, l = (e, t, n) => 3 * a(t, n) * e * e + 2 * o(t, n) * e + s(t), u = (t) => {
|
|
10313
|
+
let i = t;
|
|
10314
|
+
for (let a = 0; a < 8; a += 1) {
|
|
10315
|
+
let a = l(i, e, n);
|
|
10316
|
+
if (Math.abs(a) < 1e-6) break;
|
|
10317
|
+
i -= (c(i, e, n) - t) / a;
|
|
10318
|
+
}
|
|
10319
|
+
return i;
|
|
10320
|
+
};
|
|
10321
|
+
return (e) => e <= 0 ? 0 : e >= 1 ? 1 : c(u(e), t, i);
|
|
10322
|
+
}
|
|
10323
|
+
var BEZIER_PATTERN = /^cubic-bezier\(\s*(-?[\d.]+)\s*,\s*(-?[\d.]+)\s*,\s*(-?[\d.]+)\s*,\s*(-?[\d.]+)\s*\)$/;
|
|
10324
|
+
function parseCssEasing(e) {
|
|
10325
|
+
let t = e.trim();
|
|
10326
|
+
if (t === "") return null;
|
|
10327
|
+
if (t === "linear") return (e) => e;
|
|
10328
|
+
let n = CSS_KEYWORD_EASINGS[t];
|
|
10329
|
+
if (n) return cubicBezierEasing(...n);
|
|
10330
|
+
let i = BEZIER_PATTERN.exec(t);
|
|
10331
|
+
if (!i) return null;
|
|
10332
|
+
let [a, o, s, c] = i.slice(1).map(Number.parseFloat);
|
|
10333
|
+
return a < 0 || a > 1 || s < 0 || s > 1 ? null : cubicBezierEasing(a, o, s, c);
|
|
10334
|
+
}
|
|
10335
|
+
var resolveToken = (e, t) => {
|
|
10336
|
+
for (let n of t) {
|
|
10337
|
+
let t = e.getPropertyValue(n).trim();
|
|
10338
|
+
if (t !== "") return t;
|
|
10339
|
+
}
|
|
10340
|
+
return null;
|
|
10341
|
+
};
|
|
10342
|
+
function tokenizedFly(e, t) {
|
|
10343
|
+
let n = getComputedStyle(e), i = resolveToken(n, t.durationTokens), a = (i === null ? null : parseCssTime(i)) ?? t.fallbackDuration, o = t.x ?? 0, s = t.y ?? 0;
|
|
10344
|
+
if (t.distanceTokens) {
|
|
10345
|
+
let e = resolveToken(n, t.distanceTokens), i = (e === null ? null : parseCssLength(e)) ?? t.fallbackDistance ?? Math.max(Math.abs(o), Math.abs(s)), a = Math.abs(i);
|
|
10346
|
+
o = o === 0 ? 0 : Math.sign(o) * a, s = s === 0 ? 0 : Math.sign(s) * a;
|
|
10347
|
+
}
|
|
10348
|
+
let c = t.easingTokens ? resolveToken(n, t.easingTokens) : null, l = (c === null ? null : parseCssEasing(c)) ?? t.easing ?? cubicOut;
|
|
10349
|
+
reducedMotion.current && (a = .001);
|
|
10350
|
+
let u = +n.opacity, f = n.transform === "none" ? "" : n.transform;
|
|
10351
|
+
return {
|
|
10352
|
+
duration: a,
|
|
10353
|
+
easing: l,
|
|
10354
|
+
css: (e) => `
|
|
10355
|
+
transform: ${f} translate(${(1 - e) * o}px, ${(1 - e) * s}px);
|
|
10356
|
+
opacity: ${u * e};
|
|
10357
|
+
`
|
|
10358
|
+
};
|
|
10359
|
+
}
|
|
10360
|
+
//#endregion
|
|
10242
10361
|
//#region src/lib/assets/search.svg?raw
|
|
10243
10362
|
var search_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"11\" cy=\"11\" r=\"8\"></circle>\n <line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\"></line>\n</svg>\n", root$90 = /* @__PURE__ */ from_html("<span class=\"command-menu-search-icon svelte-rk55q\"></span>"), root_1$80 = /* @__PURE__ */ from_html("<div class=\"command-menu-empty svelte-rk55q\"> </div>"), root_2$60 = /* @__PURE__ */ from_html("<div class=\"command-menu-group-heading svelte-rk55q\"> </div>"), root_3$52 = /* @__PURE__ */ from_html("<span class=\"command-menu-item-icon svelte-rk55q\"><!></span>"), root_4$43 = /* @__PURE__ */ from_html("<div class=\"command-menu-item-icon-img-wrapper svelte-rk55q\"><!></div>"), root_5$35 = /* @__PURE__ */ from_html("<kbd class=\"command-menu-kbd svelte-rk55q\"> </kbd>"), root_6$30 = /* @__PURE__ */ from_html("<span class=\"command-menu-item-shortcut svelte-rk55q\"></span>"), root_7$27 = /* @__PURE__ */ from_html("<button type=\"button\" role=\"option\" tabindex=\"-1\"><!> <span class=\"command-menu-item-label svelte-rk55q\"> </span> <!></button>"), root_8$22 = /* @__PURE__ */ from_html("<!> <!>", 1), root_9$18 = /* @__PURE__ */ from_html("<div role=\"dialog\" aria-modal=\"true\" aria-label=\"Command menu\" tabindex=\"-1\"><div class=\"command-menu-dialog svelte-rk55q\"><div class=\"command-menu-input-wrapper svelte-rk55q\"><!> <input type=\"text\" class=\"command-menu-input svelte-rk55q\" autocomplete=\"off\" spellcheck=\"false\" role=\"combobox\" aria-autocomplete=\"list\"/></div> <div class=\"command-menu-separator svelte-rk55q\"></div> <div class=\"command-menu-list svelte-rk55q\" role=\"listbox\"><!></div></div></div>"), $$css$172 = {
|
|
10244
10363
|
hash: "svelte-rk55q",
|
|
@@ -10247,68 +10366,83 @@ var search_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentC
|
|
|
10247
10366
|
function CommandMenu(e, t) {
|
|
10248
10367
|
let n = props_id();
|
|
10249
10368
|
push(t, !0), append_styles$1(e, $$css$172);
|
|
10250
|
-
let i = prop(t, "items", 7), a = prop(t, "open", 15, !1), o = prop(t, "placeholder", 7, "Search commands..."), s = prop(t, "emptyText", 7, "No results found."), c = prop(t, "testId", 7), l = prop(t, "itemIcon", 7), u = prop(t, "searchIcon", 7), f = prop(t, "onselect", 7), p = prop(t, "onclose", 7), h = prop(t, "classes", 7), S = `command-menu-listbox-${n}`, C =
|
|
10251
|
-
|
|
10252
|
-
|
|
10369
|
+
let i = prop(t, "items", 7), a = prop(t, "open", 15, !1), o = prop(t, "placeholder", 7, "Search commands..."), s = prop(t, "emptyText", 7, "No results found."), c = prop(t, "testId", 7), l = prop(t, "itemIcon", 7), u = prop(t, "searchIcon", 7), f = prop(t, "onselect", 7), p = prop(t, "onclose", 7), h = prop(t, "classes", 7), S = `command-menu-listbox-${n}`, C = {
|
|
10370
|
+
y: 30,
|
|
10371
|
+
durationTokens: [
|
|
10372
|
+
"--command-menu-panel-transition-duration",
|
|
10373
|
+
"--duration-base",
|
|
10374
|
+
"--motion-duration"
|
|
10375
|
+
],
|
|
10376
|
+
fallbackDuration: 200,
|
|
10377
|
+
distanceTokens: ["--command-menu-panel-transition-distance", "--distance-large"],
|
|
10378
|
+
fallbackDistance: 30,
|
|
10379
|
+
easingTokens: [
|
|
10380
|
+
"--command-menu-panel-transition-easing",
|
|
10381
|
+
"--ease-smooth-out",
|
|
10382
|
+
"--motion-easing"
|
|
10383
|
+
]
|
|
10384
|
+
}, k = /* @__PURE__ */ state(""), R = /* @__PURE__ */ state(0), te = /* @__PURE__ */ state(null), ne = /* @__PURE__ */ state(null), re = /* @__PURE__ */ state(null), G = null, be = /* @__PURE__ */ user_derived(() => {
|
|
10385
|
+
if (get(k).trim() === "") return i();
|
|
10386
|
+
let e = get(k).toLowerCase();
|
|
10253
10387
|
return i().filter((t) => t.label.toLowerCase().includes(e));
|
|
10254
|
-
}),
|
|
10388
|
+
}), Me = /* @__PURE__ */ user_derived(() => {
|
|
10255
10389
|
let e = new SvelteMap();
|
|
10256
|
-
for (let t of get(
|
|
10390
|
+
for (let t of get(be)) {
|
|
10257
10391
|
let n = t.group ?? "";
|
|
10258
10392
|
e.has(n) || e.set(n, []);
|
|
10259
10393
|
let i = e.get(n);
|
|
10260
10394
|
Array.isArray(i) && i.push(t);
|
|
10261
10395
|
}
|
|
10262
10396
|
return e;
|
|
10263
|
-
}),
|
|
10397
|
+
}), Re = /* @__PURE__ */ user_derived(() => {
|
|
10264
10398
|
let e = [];
|
|
10265
|
-
for (let [, t] of get(
|
|
10399
|
+
for (let [, t] of get(Me)) for (let n of t) e.push(n);
|
|
10266
10400
|
return e;
|
|
10267
|
-
}),
|
|
10401
|
+
}), Ue = /* @__PURE__ */ user_derived(() => {
|
|
10268
10402
|
let e = new SvelteMap();
|
|
10269
|
-
for (let t = 0; t < get(
|
|
10270
|
-
let n = get(
|
|
10403
|
+
for (let t = 0; t < get(Re).length; t++) {
|
|
10404
|
+
let n = get(Re).at(t);
|
|
10271
10405
|
typeof n == "object" && e.set(n.value, t);
|
|
10272
10406
|
}
|
|
10273
10407
|
return e;
|
|
10274
|
-
}),
|
|
10275
|
-
function
|
|
10276
|
-
a(!1), set(
|
|
10408
|
+
}), it = /* @__PURE__ */ user_derived(() => get(Re).length > 0 ? `command-menu-option-${n}-${get(R)}` : null);
|
|
10409
|
+
function at() {
|
|
10410
|
+
a() && (a(!1), set(k, ""), set(R, 0), p()?.());
|
|
10277
10411
|
}
|
|
10278
|
-
function
|
|
10279
|
-
e.disabled || (f()?.(e),
|
|
10412
|
+
function ot(e) {
|
|
10413
|
+
!a() || e.disabled || (f()?.(e), at());
|
|
10280
10414
|
}
|
|
10281
|
-
function
|
|
10415
|
+
function ct(e, t) {
|
|
10282
10416
|
let n = e + t;
|
|
10283
|
-
for (; n >= 0 && n < get(
|
|
10284
|
-
let e = get(
|
|
10417
|
+
for (; n >= 0 && n < get(Re).length;) {
|
|
10418
|
+
let e = get(Re).at(n);
|
|
10285
10419
|
if (typeof e == "object" && !e.disabled) return n;
|
|
10286
10420
|
n += t;
|
|
10287
10421
|
}
|
|
10288
10422
|
return -1;
|
|
10289
10423
|
}
|
|
10290
|
-
function
|
|
10424
|
+
function lt(e) {
|
|
10291
10425
|
if (a()) switch (e.key) {
|
|
10292
10426
|
case "ArrowDown": {
|
|
10293
10427
|
e.preventDefault();
|
|
10294
|
-
let t =
|
|
10295
|
-
t >= 0 && (set(
|
|
10428
|
+
let t = ct(get(R), 1);
|
|
10429
|
+
t >= 0 && (set(R, t, !0), dt());
|
|
10296
10430
|
break;
|
|
10297
10431
|
}
|
|
10298
10432
|
case "ArrowUp": {
|
|
10299
10433
|
e.preventDefault();
|
|
10300
|
-
let t =
|
|
10301
|
-
t >= 0 && (set(
|
|
10434
|
+
let t = ct(get(R), -1);
|
|
10435
|
+
t >= 0 && (set(R, t, !0), dt());
|
|
10302
10436
|
break;
|
|
10303
10437
|
}
|
|
10304
10438
|
case "Enter": {
|
|
10305
10439
|
e.preventDefault();
|
|
10306
|
-
let t = get(
|
|
10307
|
-
typeof t == "object" && !t.disabled &&
|
|
10440
|
+
let t = get(Re).at(get(R));
|
|
10441
|
+
typeof t == "object" && !t.disabled && ot(t);
|
|
10308
10442
|
break;
|
|
10309
10443
|
}
|
|
10310
10444
|
case "Tab": {
|
|
10311
|
-
let t =
|
|
10445
|
+
let t = ut();
|
|
10312
10446
|
if (t.length === 0) break;
|
|
10313
10447
|
e.preventDefault();
|
|
10314
10448
|
let n = getActiveElement(t[0] ?? null), i = ((n instanceof HTMLElement ? t.indexOf(n) : -1) + (e.shiftKey ? -1 : 1) + t.length) % t.length;
|
|
@@ -10317,40 +10451,40 @@ function CommandMenu(e, t) {
|
|
|
10317
10451
|
}
|
|
10318
10452
|
}
|
|
10319
10453
|
}
|
|
10320
|
-
function
|
|
10321
|
-
return get(
|
|
10454
|
+
function ut() {
|
|
10455
|
+
return get(re) === null ? [] : [...get(re).querySelectorAll("a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]")].filter((e) => e.getAttribute("tabindex") !== "-1" && (e.offsetParent !== null || e === getActiveElement(e)));
|
|
10322
10456
|
}
|
|
10323
|
-
async function
|
|
10324
|
-
if (await tick(), get(
|
|
10325
|
-
let e = get(
|
|
10457
|
+
async function dt() {
|
|
10458
|
+
if (await tick(), get(ne) !== null) {
|
|
10459
|
+
let e = get(ne).querySelector("[data-active=\"true\"]");
|
|
10326
10460
|
e !== null && e.scrollIntoView({ block: "nearest" });
|
|
10327
10461
|
}
|
|
10328
10462
|
}
|
|
10329
|
-
function dt(e) {
|
|
10330
|
-
e.target === e.currentTarget && it();
|
|
10331
|
-
}
|
|
10332
10463
|
function ft(e) {
|
|
10333
|
-
|
|
10464
|
+
e.target === e.currentTarget && at();
|
|
10334
10465
|
}
|
|
10335
10466
|
function pt(e) {
|
|
10467
|
+
(e.metaKey || e.ctrlKey) && e.key === "k" && (e.preventDefault(), a() ? at() : a(!0));
|
|
10468
|
+
}
|
|
10469
|
+
function mt(e) {
|
|
10336
10470
|
let t = getActiveElement(e);
|
|
10337
|
-
|
|
10471
|
+
G === null && t instanceof HTMLElement && (G = t), lockBodyScroll();
|
|
10338
10472
|
let n = registerDismissible({
|
|
10339
|
-
element: () => get(
|
|
10340
|
-
onEscape:
|
|
10473
|
+
element: () => get(re),
|
|
10474
|
+
onEscape: at
|
|
10341
10475
|
});
|
|
10342
10476
|
return tick().then(() => {
|
|
10343
|
-
get(
|
|
10477
|
+
get(te) !== null && get(te).focus();
|
|
10344
10478
|
}), { destroy() {
|
|
10345
|
-
n(), unlockBodyScroll(),
|
|
10479
|
+
n(), unlockBodyScroll(), G !== null && (G.focus(), G = null);
|
|
10346
10480
|
} };
|
|
10347
10481
|
}
|
|
10348
10482
|
onMount(() => {
|
|
10349
|
-
window.addEventListener("keydown",
|
|
10483
|
+
window.addEventListener("keydown", pt);
|
|
10350
10484
|
}), onDestroy(() => {
|
|
10351
|
-
typeof window < "u" && window.removeEventListener("keydown",
|
|
10485
|
+
typeof window < "u" && window.removeEventListener("keydown", pt);
|
|
10352
10486
|
});
|
|
10353
|
-
var
|
|
10487
|
+
var ht = {
|
|
10354
10488
|
get items() {
|
|
10355
10489
|
return i();
|
|
10356
10490
|
},
|
|
@@ -10411,25 +10545,25 @@ function CommandMenu(e, t) {
|
|
|
10411
10545
|
set classes(e) {
|
|
10412
10546
|
h(e), flushSync();
|
|
10413
10547
|
}
|
|
10414
|
-
},
|
|
10415
|
-
var t = root_9$18(), i = child(t),
|
|
10548
|
+
}, gt = comment(), _t = first_child(gt), vt = (e) => {
|
|
10549
|
+
var t = root_9$18(), i = child(t), f = child(i), p = child(f), G = (e) => {
|
|
10416
10550
|
var t = comment();
|
|
10417
10551
|
snippet(first_child(t), u), append(e, t);
|
|
10418
|
-
},
|
|
10552
|
+
}, be = (e) => {
|
|
10419
10553
|
var t = root$90();
|
|
10420
10554
|
html(t, () => search_default, !0), reset(t), append(e, t);
|
|
10421
10555
|
};
|
|
10422
|
-
if_block(
|
|
10423
|
-
typeof u() == "function" ? e(
|
|
10556
|
+
if_block(p, (e) => {
|
|
10557
|
+
typeof u() == "function" ? e(G) : e(be, -1);
|
|
10424
10558
|
});
|
|
10425
|
-
var
|
|
10426
|
-
remove_input_defaults(
|
|
10427
|
-
var
|
|
10559
|
+
var at = sibling(p, 2);
|
|
10560
|
+
remove_input_defaults(at), bind_this(at, (e) => set(te, e), () => get(te)), reset(f);
|
|
10561
|
+
var ct = sibling(f, 4), ut = child(ct), dt = (e) => {
|
|
10428
10562
|
var t = root_1$80(), n = child(t, !0);
|
|
10429
10563
|
reset(t), template_effect(() => set_text(n, s())), append(e, t);
|
|
10430
|
-
},
|
|
10564
|
+
}, pt = (e) => {
|
|
10431
10565
|
var t = comment();
|
|
10432
|
-
each(first_child(t), 17, () => get(
|
|
10566
|
+
each(first_child(t), 17, () => get(Me), ([e, t]) => e, (e, t) => {
|
|
10433
10567
|
var i = /* @__PURE__ */ user_derived(() => to_array(get(t), 2));
|
|
10434
10568
|
let a = () => get(i)[0], o = () => get(i)[1];
|
|
10435
10569
|
var s = root_8$22(), u = first_child(s), f = (e) => {
|
|
@@ -10439,7 +10573,7 @@ function CommandMenu(e, t) {
|
|
|
10439
10573
|
if_block(u, (e) => {
|
|
10440
10574
|
a() !== "" && e(f);
|
|
10441
10575
|
}), each(sibling(u, 2), 17, o, (e) => e.value, (e, t) => {
|
|
10442
|
-
let i = /* @__PURE__ */ user_derived(() => get(
|
|
10576
|
+
let i = /* @__PURE__ */ user_derived(() => get(Ue).get(get(t).value) ?? -1);
|
|
10443
10577
|
var a = root_7$27();
|
|
10444
10578
|
let o;
|
|
10445
10579
|
var s = child(a), u = (e) => {
|
|
@@ -10471,26 +10605,26 @@ function CommandMenu(e, t) {
|
|
|
10471
10605
|
typeof get(t).shortcut == "string" && get(t).shortcut.length > 0 && e(C);
|
|
10472
10606
|
}), reset(a), template_effect(() => {
|
|
10473
10607
|
set_attribute(a, "id", `command-menu-option-${n}-${get(i)}`), o = set_class(a, 1, "command-menu-item svelte-rk55q", null, o, {
|
|
10474
|
-
active: get(i) === get(
|
|
10608
|
+
active: get(i) === get(R),
|
|
10475
10609
|
disabled: get(t).disabled
|
|
10476
|
-
}), set_attribute(a, "data-active", get(i) === get(
|
|
10477
|
-
}), delegated("click", a, () =>
|
|
10478
|
-
get(t).disabled || set(
|
|
10610
|
+
}), set_attribute(a, "data-active", get(i) === get(R)), set_attribute(a, "aria-selected", get(i) === get(R)), set_attribute(a, "aria-disabled", get(t).disabled), set_attribute(a, "data-pw", typeof c() == "string" ? `${c()}-item-${get(t).value}` : null), set_attribute(a, "testid", typeof c() == "string" ? `${c()}-item-${get(t).value}` : null), set_text(h, get(t).label);
|
|
10611
|
+
}), delegated("click", a, () => ot(get(t))), event("mouseenter", a, () => {
|
|
10612
|
+
get(t).disabled || set(R, get(i), !0);
|
|
10479
10613
|
}), append(e, a);
|
|
10480
10614
|
}), append(e, s);
|
|
10481
10615
|
}), append(e, t);
|
|
10482
10616
|
};
|
|
10483
|
-
if_block(
|
|
10484
|
-
get(
|
|
10485
|
-
}), reset(
|
|
10486
|
-
set_class(t, 1, `command-menu-overlay ${h() ?? "" ?? ""}`, "svelte-rk55q"), set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null), set_attribute(
|
|
10487
|
-
}), delegated("click", t,
|
|
10488
|
-
set(
|
|
10489
|
-
}), bind_value(
|
|
10617
|
+
if_block(ut, (e) => {
|
|
10618
|
+
get(Re).length === 0 ? e(dt) : e(pt, -1);
|
|
10619
|
+
}), reset(ct), bind_this(ct, (e) => set(ne, e), () => get(ne)), reset(i), bind_this(i, (e) => set(re, e), () => get(re)), reset(t), action(t, (e) => mt?.(e)), template_effect(() => {
|
|
10620
|
+
set_class(t, 1, `command-menu-overlay ${h() ?? "" ?? ""}`, "svelte-rk55q"), t.inert = !a(), set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null), i.inert = !a(), set_attribute(at, "placeholder", o()), set_attribute(at, "aria-expanded", get(Re).length > 0), set_attribute(at, "aria-controls", S), set_attribute(at, "aria-activedescendant", get(it)), set_attribute(at, "data-pw", typeof c() == "string" ? `${c()}-input` : null), set_attribute(at, "testid", typeof c() == "string" ? `${c()}-input` : null), set_attribute(ct, "id", S);
|
|
10621
|
+
}), delegated("click", t, ft), delegated("keydown", t, lt), delegated("input", at, () => {
|
|
10622
|
+
set(R, 0);
|
|
10623
|
+
}), bind_value(at, () => get(k), (e) => set(k, e)), transition(1, i, () => tokenizedFly, () => C), transition(2, i, () => tokenizedFly, () => C), append(e, t);
|
|
10490
10624
|
};
|
|
10491
|
-
return if_block(
|
|
10492
|
-
a() && e(
|
|
10493
|
-
}), append(e,
|
|
10625
|
+
return if_block(_t, (e) => {
|
|
10626
|
+
a() && e(vt);
|
|
10627
|
+
}), append(e, gt), pop(ht);
|
|
10494
10628
|
}
|
|
10495
10629
|
delegate([
|
|
10496
10630
|
"click",
|
|
@@ -10562,7 +10696,7 @@ customElements.define("sui-command-menu", create_custom_element(CommandMenu_wc,
|
|
|
10562
10696
|
//#region src/lib/Gauge/Gauge.svelte
|
|
10563
10697
|
var root$88 = /* @__PURE__ */ from_html("<div class=\"label svelte-ms0oc6\"><!></div>"), root_1$79 = /* @__PURE__ */ from_html("<div role=\"progressbar\"><svg class=\"svelte-ms0oc6\"><circle class=\"track svelte-ms0oc6\" fill=\"none\"></circle><circle class=\"bar svelte-ms0oc6\" fill=\"none\" stroke-linecap=\"round\"></circle></svg> <!></div>"), $$css$170 = {
|
|
10564
10698
|
hash: "svelte-ms0oc6",
|
|
10565
|
-
code: ".gauge.svelte-ms0oc6 {position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--gauge-size, 120px);height:var(--gauge-size, 120px);}svg.svelte-ms0oc6 {display:block;width:100%;height:100%;}.track.svelte-ms0oc6 {stroke:var(--gauge-track-color, #e0e0e0);stroke-width:var(--gauge-stroke-width, 8);}.bar.svelte-ms0oc6 {stroke:var(--gauge-bar-color, #2196f3);stroke-width:var(--gauge-stroke-width, 8);transition:stroke-dashoffset var(--gauge-transition-duration, 0.3s) ease;}.label.svelte-ms0oc6 {position:absolute;font-size:var(--gauge-label-font-size, 24px);font-weight:var(--gauge-label-font-weight, 600);font-family:var(--gauge-label-font-family, inherit);color:var(--gauge-label-color, #333);}"
|
|
10699
|
+
code: ".gauge.svelte-ms0oc6 {position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--gauge-size, 120px);height:var(--gauge-size, 120px);}svg.svelte-ms0oc6 {display:block;width:100%;height:100%;}.track.svelte-ms0oc6 {stroke:var(--gauge-track-color, #e0e0e0);stroke-width:var(--gauge-stroke-width, 8);}.bar.svelte-ms0oc6 {stroke:var(--gauge-bar-color, #2196f3);stroke-width:var(--gauge-stroke-width, 8);transition:stroke-dashoffset var(--gauge-transition-duration, var(--motion-duration, 0.3s))\n var(--gauge-transition-easing, var(--motion-easing, ease));}.label.svelte-ms0oc6 {position:absolute;font-size:var(--gauge-label-font-size, 24px);font-weight:var(--gauge-label-font-weight, 600);font-family:var(--gauge-label-font-family, inherit);color:var(--gauge-label-color, #333);}"
|
|
10566
10700
|
};
|
|
10567
10701
|
function Gauge(e, t) {
|
|
10568
10702
|
push(t, !0), append_styles$1(e, $$css$170);
|
|
@@ -11798,7 +11932,7 @@ customElements.define("sui-loading-dots", create_custom_element(LoadingDots_wc,
|
|
|
11798
11932
|
//#region src/lib/Pagination/Pagination.svelte
|
|
11799
11933
|
var root$81 = /* @__PURE__ */ from_html("<span class=\"ellipsis svelte-1sajc2w\">…</span>"), root_1$73 = /* @__PURE__ */ from_html("<button> </button>"), root_2$56 = /* @__PURE__ */ from_html("<button class=\"page-button load-more-button svelte-1sajc2w\" aria-label=\"Load more\">›</button>"), root_3$50 = /* @__PURE__ */ from_html("<button class=\"page-button next-button svelte-1sajc2w\" aria-label=\"Next page\">›</button>"), root_4$42 = /* @__PURE__ */ from_html("<nav><button class=\"page-button prev-button svelte-1sajc2w\" aria-label=\"Previous page\">‹</button> <!> <!></nav>"), $$css$153 = {
|
|
11800
11934
|
hash: "svelte-1sajc2w",
|
|
11801
|
-
code: ".pagination.svelte-1sajc2w {display:var(--pagination-display, flex);gap:var(--pagination-gap, 4px);align-items:var(--pagination-align-items, center);}.pagination.disabled.svelte-1sajc2w {opacity:var(--pagination-disabled-opacity, 0.5);cursor:var(--pagination-disabled-cursor, not-allowed);}.page-button.svelte-1sajc2w {padding:var(--pagination-button-padding, 6px 10px);font-size:var(--pagination-button-font-size, 14px);font-weight:var(--pagination-button-font-weight, 400);font-family:var(--pagination-button-font-family, inherit);\n /* Base state (and .load-more-button below) pairs its text with a\n transparent background, not one of its own -- same shape as the table\n title bug. A hardcoded literal here doesn't track a dark ambient\n surface, so prev/next/page buttons went unreadable on a themed dark\n page even though .active and :hover are safe (each pairs its colour\n with its own opaque background). Inheriting keeps it tied to whatever\n text colour the surrounding surface already resolved to. */color:var(--pagination-button-color, inherit);background:var(--pagination-button-background, transparent);border:var(--pagination-button-border, 1px solid #d1d5db);border-radius:var(--pagination-button-border-radius, var(--radius, 4px));cursor:var(--pagination-button-cursor, pointer);min-width:var(--pagination-button-min-width, 36px);height:var(--pagination-button-height, 36px);display:flex;align-items:center;justify-content:center;transition:var(--pagination-transition,
|
|
11935
|
+
code: ".pagination.svelte-1sajc2w {display:var(--pagination-display, flex);gap:var(--pagination-gap, 4px);align-items:var(--pagination-align-items, center);}.pagination.disabled.svelte-1sajc2w {opacity:var(--pagination-disabled-opacity, 0.5);cursor:var(--pagination-disabled-cursor, not-allowed);}.page-button.svelte-1sajc2w {padding:var(--pagination-button-padding, 6px 10px);font-size:var(--pagination-button-font-size, 14px);font-weight:var(--pagination-button-font-weight, 400);font-family:var(--pagination-button-font-family, inherit);\n /* Base state (and .load-more-button below) pairs its text with a\n transparent background, not one of its own -- same shape as the table\n title bug. A hardcoded literal here doesn't track a dark ambient\n surface, so prev/next/page buttons went unreadable on a themed dark\n page even though .active and :hover are safe (each pairs its colour\n with its own opaque background). Inheriting keeps it tied to whatever\n text colour the surrounding surface already resolved to. */color:var(--pagination-button-color, inherit);background:var(--pagination-button-background, transparent);border:var(--pagination-button-border, 1px solid #d1d5db);border-radius:var(--pagination-button-border-radius, var(--radius, 4px));cursor:var(--pagination-button-cursor, pointer);min-width:var(--pagination-button-min-width, 36px);height:var(--pagination-button-height, 36px);display:flex;align-items:center;justify-content:center;transition:var(\n --pagination-transition,\n background\n var(--pagination-transition-duration, var(--duration-quick, var(--motion-duration, 0.15s)))\n var(--pagination-transition-easing, var(--motion-easing, ease)),\n color\n var(--pagination-transition-duration, var(--duration-quick, var(--motion-duration, 0.15s)))\n var(--pagination-transition-easing, var(--motion-easing, ease))\n );}.page-button.svelte-1sajc2w:hover:not(:disabled):not(.active) {color:var(--pagination-button-hover-color, #111827);background:var(--pagination-button-hover-background, #f3f4f6);}.page-button.active.svelte-1sajc2w {color:var(--pagination-active-color, #ffffff);background:var(--pagination-active-background, #3a4550);border:var(--pagination-active-border, 1px solid #3a4550);font-weight:var(--pagination-active-font-weight, 600);}.load-more-button.svelte-1sajc2w {width:var(--pagination-load-more-width, auto);padding:var(--pagination-load-more-padding, 6px 14px);color:var(--pagination-load-more-color, inherit);background:var(--pagination-load-more-background, transparent);border-color:var(--pagination-load-more-border-color, #d1d5db);}.load-more-button.svelte-1sajc2w:hover:not(:disabled) {color:var(--pagination-load-more-hover-color, #111827);background:var(--pagination-load-more-hover-background, #f3f4f6);}.page-button.svelte-1sajc2w:disabled {opacity:var(--pagination-disabled-opacity, 0.5);cursor:var(--pagination-disabled-cursor, not-allowed);}.pagination.disabled.svelte-1sajc2w .page-button:where(.svelte-1sajc2w) {opacity:1;}.ellipsis.svelte-1sajc2w {color:var(--pagination-ellipsis-color, #6b7280);font-size:var(--pagination-ellipsis-font-size, 14px);min-width:var(--pagination-button-min-width, 36px);height:var(--pagination-button-height, 36px);display:flex;align-items:center;justify-content:center;}"
|
|
11802
11936
|
};
|
|
11803
11937
|
function Pagination(e, t) {
|
|
11804
11938
|
push(t, !0), append_styles$1(e, $$css$153);
|
|
@@ -12238,7 +12372,7 @@ customElements.define("sui-progress", create_custom_element(Progress_wc, {
|
|
|
12238
12372
|
//#region src/lib/Radio/Radio.svelte
|
|
12239
12373
|
var root$79 = /* @__PURE__ */ from_html("<span> </span>"), root_1$71 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-14bh706\"> </div>"), root_2$55 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-14bh706\"> </div>"), root_3$49 = /* @__PURE__ */ from_html("<label><input type=\"radio\" class=\"radio-input svelte-14bh706\"/> <span><span></span></span> <!></label> <!> <!>", 1), $$css$148 = {
|
|
12240
12374
|
hash: "svelte-14bh706",
|
|
12241
|
-
code: ".radio-container.svelte-14bh706 {display:var(--radio-container-display, inline-flex);align-items:var(--radio-container-align-items, center);gap:var(--radio-container-gap, 8px);cursor:var(--radio-container-cursor, pointer);opacity:var(--radio-container-opacity, 1);}.radio-container.disabled.svelte-14bh706 {cursor:not-allowed;}.radio-input.svelte-14bh706 {position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none;}.radio-indicator.svelte-14bh706 {display:inline-flex;align-items:center;justify-content:center;width:var(--radio-size, 20px);height:var(--radio-size, 20px);border:var(--radio-border, 2px solid #9e9e9e);border-radius:var(--radio-border-radius, 50%);background-color:var(--radio-background, #ffffff)
|
|
12375
|
+
code: ".radio-container.svelte-14bh706 {display:var(--radio-container-display, inline-flex);align-items:var(--radio-container-align-items, center);gap:var(--radio-container-gap, 8px);cursor:var(--radio-container-cursor, pointer);opacity:var(--radio-container-opacity, 1);}.radio-container.disabled.svelte-14bh706 {cursor:not-allowed;}.radio-input.svelte-14bh706 {position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none;}.radio-indicator.svelte-14bh706 {display:inline-flex;align-items:center;justify-content:center;width:var(--radio-size, 20px);height:var(--radio-size, 20px);border:var(--radio-border, 2px solid #9e9e9e);border-radius:var(--radio-border-radius, 50%);background-color:var(--radio-background, #ffffff);\n /* --radio-transition wraps the WHOLE value, not just the duration -- see the\n matching comment on Checkbox's .box rule for why appending a separate\n easing term after it (the prior shape here) breaks a consumer override\n that already includes its own timing function. */transition:var(\n --radio-transition,\n var(--radio-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--radio-transition-easing, var(--motion-easing, ease))\n );box-sizing:border-box;flex-shrink:0;}.radio-indicator.checked.svelte-14bh706 {border:var(--radio-selected-border, 2px solid #2196f3);background-color:var(--radio-selected-background, #ffffff);}.radio-indicator.disabled.svelte-14bh706 {border:var(--radio-disabled-border, 2px solid #cccccc);background-color:var(--radio-disabled-background, #f5f5f5);}.radio-container.svelte-14bh706:not(.disabled):hover .radio-indicator:where(.svelte-14bh706):not(.checked) {border:var(--radio-hover-border, 2px solid #2196f3);}.radio-input.svelte-14bh706:focus-visible + .radio-indicator:where(.svelte-14bh706) {box-shadow:var(--radio-focus-shadow, 0 0 0 3px rgba(33, 150, 243, 0.3));}.radio-dot.svelte-14bh706 {width:0;height:0;border-radius:var(--radio-dot-border-radius, 50%);background-color:var(--radio-dot-color, #2196f3);transition:var(\n --radio-transition,\n var(--radio-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--radio-transition-easing, var(--motion-easing, ease))\n );}.radio-dot.checked.svelte-14bh706 {width:var(--radio-dot-size, 10px);height:var(--radio-dot-size, 10px);}.radio-dot.checked.disabled.svelte-14bh706 {background-color:var(--radio-disabled-dot-color, #cccccc);}.radio-text.svelte-14bh706 {font-size:var(--radio-text-font-size, 14px);font-weight:var(--radio-text-font-weight, 400);color:var(--radio-text-color, #333333);}.radio-text.disabled.svelte-14bh706 {color:var(--radio-disabled-text-color, #999999);}.field-error.svelte-14bh706 {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-14bh706 {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}"
|
|
12242
12376
|
};
|
|
12243
12377
|
function Radio(e, t) {
|
|
12244
12378
|
let n = props_id();
|
|
@@ -12537,7 +12671,7 @@ create_custom_element(PortalContentRenderer, { snippet: {} }, [], [], { mode: "o
|
|
|
12537
12671
|
//#region src/lib/Tooltip/Tooltip.svelte
|
|
12538
12672
|
var root_1$70 = /* @__PURE__ */ from_html("<span class=\"tooltip-icon svelte-1xxu8em\" aria-hidden=\"true\"><!></span>"), root_2$54 = /* @__PURE__ */ from_html("<span class=\"tooltip-text svelte-1xxu8em\"> </span>"), root_3$48 = /* @__PURE__ */ from_html("<div role=\"tooltip\"><div class=\"tooltip-arrow svelte-1xxu8em\"></div> <!></div>"), root_4$41 = /* @__PURE__ */ from_html("<div role=\"none\"><!> <!> <!> <!></div>"), $$css$146 = {
|
|
12539
12673
|
hash: "svelte-1xxu8em",
|
|
12540
|
-
code: ".tooltip-container.svelte-1xxu8em {position:relative;display:var(--tooltip-container-display, inline-flex);}.tooltip-icon.svelte-1xxu8em {display:contents;color:var(--tooltip-icon-color, currentColor);}.tooltip-bubble.svelte-1xxu8em {position:absolute;z-index:var(--tooltip-z-index, 1000);max-width:var(--tooltip-max-width, 200px);background:var(--tooltip-background, #333333);color:var(--tooltip-color, #ffffff);font-size:var(--tooltip-font-size, 12px);font-weight:var(--tooltip-font-weight, 400);font-family:var(--tooltip-font-family, inherit);padding:var(--tooltip-padding, 6px 10px);border-radius:var(--tooltip-border-radius, var(--radius, 4px));border:var(--tooltip-border, none);box-shadow:var(--tooltip-box-shadow, 0 2px 6px rgba(0, 0, 0, 0.15));white-space:normal;word-wrap:break-word;pointer-events:none;opacity:1;transition:opacity
|
|
12674
|
+
code: ".tooltip-container.svelte-1xxu8em {position:relative;display:var(--tooltip-container-display, inline-flex);}.tooltip-icon.svelte-1xxu8em {display:contents;color:var(--tooltip-icon-color, currentColor);}.tooltip-bubble.svelte-1xxu8em {position:absolute;z-index:var(--tooltip-z-index, 1000);max-width:var(--tooltip-max-width, 200px);background:var(--tooltip-background, #333333);color:var(--tooltip-color, #ffffff);font-size:var(--tooltip-font-size, 12px);font-weight:var(--tooltip-font-weight, 400);font-family:var(--tooltip-font-family, inherit);padding:var(--tooltip-padding, 6px 10px);border-radius:var(--tooltip-border-radius, var(--radius, 4px));border:var(--tooltip-border, none);box-shadow:var(--tooltip-box-shadow, 0 2px 6px rgba(0, 0, 0, 0.15));white-space:normal;word-wrap:break-word;pointer-events:none;opacity:1;transition:opacity\n var(--tooltip-opacity-duration, var(--duration-quick, var(--motion-duration, 0.15s)))\n var(--tooltip-opacity-easing, var(--ease-in-out, var(--motion-easing, ease-in-out)));}.tooltip-arrow.svelte-1xxu8em {position:absolute;width:0;height:0;border-style:solid;}\n\n /* Top position. --tooltip-shift is the viewport-edge clamp: the bubble slides\n along its cross axis to stay on screen while the arrow compensates the other\n way so it keeps pointing at the trigger. */.top.svelte-1xxu8em {bottom:calc(100% + var(--tooltip-offset, 8px));left:50%;transform:translateX(calc(-50% + var(--tooltip-shift, 0px)));}.top.svelte-1xxu8em .tooltip-arrow:where(.svelte-1xxu8em) {top:100%;left:calc(50% - var(--tooltip-shift, 0px));transform:translateX(-50%);border-width:var(--tooltip-arrow-size, 5px) var(--tooltip-arrow-size, 5px) 0\n var(--tooltip-arrow-size, 5px);border-color:var(--tooltip-arrow-color, var(--tooltip-background, #333333)) transparent\n transparent transparent;}\n\n /* Bottom position */.bottom.svelte-1xxu8em {top:calc(100% + var(--tooltip-offset, 8px));left:50%;transform:translateX(calc(-50% + var(--tooltip-shift, 0px)));}.bottom.svelte-1xxu8em .tooltip-arrow:where(.svelte-1xxu8em) {bottom:100%;left:calc(50% - var(--tooltip-shift, 0px));transform:translateX(-50%);border-width:0 var(--tooltip-arrow-size, 5px) var(--tooltip-arrow-size, 5px)\n var(--tooltip-arrow-size, 5px);border-color:transparent transparent\n var(--tooltip-arrow-color, var(--tooltip-background, #333333)) transparent;}\n\n /* Left position */.left.svelte-1xxu8em {right:calc(100% + var(--tooltip-offset, 8px));top:50%;transform:translateY(calc(-50% + var(--tooltip-shift, 0px)));}.left.svelte-1xxu8em .tooltip-arrow:where(.svelte-1xxu8em) {left:100%;top:calc(50% - var(--tooltip-shift, 0px));transform:translateY(-50%);border-width:var(--tooltip-arrow-size, 5px) 0 var(--tooltip-arrow-size, 5px)\n var(--tooltip-arrow-size, 5px);border-color:transparent transparent transparent\n var(--tooltip-arrow-color, var(--tooltip-background, #333333));}\n\n /* Right position */.right.svelte-1xxu8em {left:calc(100% + var(--tooltip-offset, 8px));top:50%;transform:translateY(calc(-50% + var(--tooltip-shift, 0px)));}.right.svelte-1xxu8em .tooltip-arrow:where(.svelte-1xxu8em) {right:100%;top:calc(50% - var(--tooltip-shift, 0px));transform:translateY(-50%);border-width:var(--tooltip-arrow-size, 5px) var(--tooltip-arrow-size, 5px)\n var(--tooltip-arrow-size, 5px) 0;border-color:transparent var(--tooltip-arrow-color, var(--tooltip-background, #333333))\n transparent transparent;}.tooltip-text.svelte-1xxu8em {color:var(--tooltip-color, #ffffff);}"
|
|
12541
12675
|
};
|
|
12542
12676
|
function Tooltip(e, t) {
|
|
12543
12677
|
push(t, !0), append_styles$1(e, $$css$146);
|
|
@@ -12624,7 +12758,7 @@ function Tooltip(e, t) {
|
|
|
12624
12758
|
"white-space:normal",
|
|
12625
12759
|
"word-wrap:break-word",
|
|
12626
12760
|
"pointer-events:none",
|
|
12627
|
-
"transition:opacity var(--tooltip-opacity-duration,0.15s) ease-in-out"
|
|
12761
|
+
"transition:opacity var(--tooltip-opacity-duration,var(--duration-quick,var(--motion-duration,0.15s))) var(--tooltip-opacity-easing,var(--ease-in-out,var(--motion-easing,ease-in-out)))"
|
|
12628
12762
|
].join(";");
|
|
12629
12763
|
let c = document.createElement("div");
|
|
12630
12764
|
if (c.style.cssText = at(t), i.appendChild(c), typeof f() == "function") {
|
|
@@ -14100,7 +14234,7 @@ customElements.define("sui-stepper", create_custom_element(Stepper_wc, {
|
|
|
14100
14234
|
//#region src/lib/assets/chevron-up.svg?raw
|
|
14101
14235
|
var chevron_up_default = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <polyline points=\"18 15 12 9 6 15\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n", chevron_down_default = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <polyline points=\"6 9 12 15 18 9\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n", root$72 = /* @__PURE__ */ from_html("<button class=\"tabs-arrow tabs-arrow-start svelte-18eaq6o\"><!></button>"), root_1$66 = /* @__PURE__ */ from_html("<div class=\"tabs-section-label svelte-18eaq6o\" aria-hidden=\"true\"> </div>"), root_2$52 = /* @__PURE__ */ from_html("<span aria-hidden=\"true\"></span>"), root_3$46 = /* @__PURE__ */ from_html("<!> <span class=\"tabs-item-label svelte-18eaq6o\"> </span> <!>", 1), root_4$39 = /* @__PURE__ */ from_html("<!> <div role=\"tab\"><!></div>", 1), root_5$34 = /* @__PURE__ */ from_html("<span class=\"tabs-indicator svelte-18eaq6o\" aria-hidden=\"true\"></span>"), root_6$29 = /* @__PURE__ */ from_html("<button class=\"tabs-arrow tabs-arrow-end svelte-18eaq6o\"><!></button>"), root_7$26 = /* @__PURE__ */ from_html("<div><!> <div role=\"tablist\"><!> <!></div> <!></div>"), $$css$132 = {
|
|
14102
14236
|
hash: "svelte-18eaq6o",
|
|
14103
|
-
code: ".tabs-wrapper.svelte-18eaq6o {display:flex;align-items:stretch;position:relative;max-width:100%;background:var(--tabs-bar-background, #ffffff);border-bottom:var(--tabs-bar-border-bottom, 1px solid #e0e0e0);border-radius:var(--tabs-bar-border-radius, 0);}.tabs-wrapper.disabled.svelte-18eaq6o {opacity:var(--tabs-disabled-opacity, 0.5);pointer-events:none;}.tabs-bar.svelte-18eaq6o {display:flex;flex:1;min-width:0;padding:var(--tabs-bar-padding, 0px);gap:var(--tabs-bar-gap, 0px);overflow-x:auto;scrollbar-width:none;position:relative;}.tabs-bar.svelte-18eaq6o::-webkit-scrollbar {display:none;}\n\n /* Each fade holds FULLY transparent for the first --tabs-fade-solid px before\n ramping to opaque: a plain 0→fade-size ramp still renders the clipped tab\n label at ~20% opacity a few px from the edge, which reads as a stray glyph\n fragment beside the scroll arrow. The solid zone guarantees nothing is\n perceptible there. */.tabs-bar.fade-left.svelte-18eaq6o {mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-right.svelte-18eaq6o {mask-image:linear-gradient(\n to left,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to left,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-left.fade-right.svelte-18eaq6o {mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );-webkit-mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );}.tabs-arrow.svelte-18eaq6o {display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--tabs-arrow-size, 28px);padding:var(--tabs-arrow-padding, 0);border:var(--tabs-arrow-border, none);background:var(--tabs-arrow-background, var(--tabs-bar-background, #ffffff));color:var(--tabs-arrow-color, var(--tabs-item-color, #666666));cursor:pointer;z-index:1;transition:var(--tabs-arrow-transition, color 0.2s ease);font-family:inherit;}.tabs-arrow.svelte-18eaq6o:hover {color:var(--tabs-arrow-hover-color, var(--tabs-active-color, #0b57d0));background:var(\n --tabs-arrow-hover-background,\n var(--tabs-arrow-background, var(--tabs-bar-background, #ffffff))\n );}.tabs-item.svelte-18eaq6o {display:flex;align-items:center;gap:var(--tabs-item-gap, 8px);position:relative;padding:var(--tabs-item-padding, 12px 16px);font-size:var(--tabs-item-font-size, 14px);font-weight:var(--tabs-item-font-weight, 400);font-family:var(--tabs-item-font-family, inherit);color:var(--tabs-item-color, #666666);cursor:var(--tabs-item-cursor, pointer);background:var(--tabs-item-background, transparent);border:var(--tabs-item-border, none);border-radius:var(--tabs-item-border-radius, 0);outline:none;white-space:nowrap;flex-shrink:0;user-select:none;transition:var(--tabs-transition, color 0.2s ease, background 0.2s ease);}\n\n /* Roving focus really does move (see focusedKey/focusTabAt above) -- this\n just replaces the INDICATOR that outline:none above strips, which is what\n was actually missing (WCAG 2.4.7). :focus-visible only, so a mouse click\n that activates a tab still shows nothing new, matching the rest of this\n file's pattern (Sheet's .sheet-panel, Select's .select-clear, ...).\n currentColor tracks --tabs-item-color / --tabs-active-color, which are\n already themed per-mode and per-state, so the ring stays visible against\n --tabs-bar-background in both themes with no extra token needed here. The\n offset is inset, not the usual outward one: .tabs-bar is a same-axis\n overflow:auto scroller with 0px padding/gap by default, so an outward ring\n on an edge tab would be clipped by the scroll container's own edge. */.tabs-item.svelte-18eaq6o:focus-visible {outline:var(--tabs-item-focus-outline, 2px solid currentColor);outline-offset:var(--tabs-item-focus-outline-offset, -2px);}.tabs-item.svelte-18eaq6o .tabs-item-icon {--image-width: var(--tabs-item-icon-size, 16px);--image-height: var(--tabs-item-icon-size, 16px);--image-object-fit: contain;color:var(--tabs-item-icon-color, inherit);flex-shrink:0;}\n\n /* Reserves the active-state (bolder) width of the label so selecting a tab\n never reflows the tab bar: without this, .tabs-item.active's font-weight\n jump makes the tab (and every tab after it) physically resize, which\n visibly shifts sibling tabs and defeats the indicator's slide animation\n with a jump. The ::after ghost renders data-text at the active weight\n with height:0/visibility:hidden -- invisible, but its width still sets\n the shrink-to-fit width of the inline-block label, so the box is already\n as wide as the active state needs even while showing the lighter weight. */.tabs-item-label.svelte-18eaq6o {position:relative;display:inline-block;}.tabs-item-label.svelte-18eaq6o::after {content:attr(data-text);display:block;height:0;overflow:hidden;visibility:hidden;font-weight:var(--tabs-active-font-weight, 600);}\n\n /* Trailing status dot for nav/menu tabs. margin-left:auto pushes it to the row's\n end (e.g. a settings menu); harmless on a normal tab bar where the item shrinks\n to content. */.tabs-item-status.svelte-18eaq6o {width:var(--tabs-item-status-size, 8px);height:var(--tabs-item-status-size, 8px);margin-left:auto;border-radius:50%;flex-shrink:0;background:transparent;}\n\n /* Neutral \"has activity / configured\" dot — blue by default, matching the app's\n --text-color-focus. Maps from a settings menu's Default circle type. */.tabs-item-status.status-default.svelte-18eaq6o {background:var(--tabs-item-status-default-color, #1a73e8);}.tabs-item-status.status-pending.svelte-18eaq6o {background:var(--tabs-item-status-pending-color, #f59e0b);}.tabs-item-status.status-error.svelte-18eaq6o {background:var(--tabs-item-status-error-color, #e7000b);}.tabs-item-status.status-success.svelte-18eaq6o {background:var(--tabs-item-status-success-color, #16a34a);}.tabs-item.svelte-18eaq6o:hover:not(.active):not([aria-disabled]) {color:var(--tabs-hover-color, #333333);background:var(--tabs-hover-background, #f5f5f5);}.tabs-item.active.svelte-18eaq6o {color:var(--tabs-active-color, #0b57d0);font-weight:var(--tabs-active-font-weight, 600);background:var(--tabs-active-background, transparent);}.tabs-item[aria-disabled].svelte-18eaq6o {cursor:var(--tabs-disabled-cursor, not-allowed);}.tabs-indicator.svelte-18eaq6o {position:absolute;bottom:0;height:var(--tabs-indicator-height, 2px);background-color:var(--tabs-indicator-color, #1a73e8);border-radius:var(--tabs-indicator-border-radius, 2px 2px 0 0);transition:var(--tabs-indicator-transition, left 0.3s ease, width 0.3s ease);pointer-events:none;}\n\n /* ---------- Vertical orientation (nav / menu rail) ---------- */.tabs-wrapper.vertical.svelte-18eaq6o {flex-direction:column;align-items:stretch;max-width:none;border-bottom:none;}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-bar:where(.svelte-18eaq6o) {flex-direction:column;overflow-x:hidden;overflow-y:auto;}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-item:where(.svelte-18eaq6o) {\n /* Full-width rows: label sits at the leading edge, the status dot's margin-left:auto\n pushes it to the trailing edge (the settings-menu look). */width:100%;box-sizing:border-box;justify-content:flex-start;}.tabs-bar.fade-top.svelte-18eaq6o {mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-bottom.svelte-18eaq6o {mask-image:linear-gradient(\n to top,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to top,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-top.fade-bottom.svelte-18eaq6o {mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );-webkit-mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-indicator:where(.svelte-18eaq6o) {top:0;bottom:auto;left:0;width:var(--tabs-indicator-height, 2px);height:var(--tabs-indicator-height, 2px);border-radius:var(--tabs-indicator-border-radius-vertical, 0 2px 2px 0);transition:var(--tabs-indicator-transition-vertical, top 0.3s ease, height 0.3s ease);}\n\n /* Section header rendered above a group of vertical nav items. */.tabs-section-label.svelte-18eaq6o {padding:var(--tabs-section-label-padding, 12px 16px 4px);font-size:var(--tabs-section-label-font-size, 11px);font-weight:var(--tabs-section-label-font-weight, 700);letter-spacing:var(--tabs-section-label-letter-spacing, 0.04em);text-transform:var(--tabs-section-label-text-transform, uppercase);color:var(--tabs-section-label-color, var(--tabs-item-color, #666666));white-space:nowrap;user-select:none;}\n\n @media (prefers-reduced-motion: reduce) {.tabs-indicator.svelte-18eaq6o,\n .tabs-wrapper.vertical.svelte-18eaq6o .tabs-indicator:where(.svelte-18eaq6o) {transition:none;}\n }"
|
|
14237
|
+
code: ".tabs-wrapper.svelte-18eaq6o {display:flex;align-items:stretch;position:relative;max-width:100%;background:var(--tabs-bar-background, #ffffff);border-bottom:var(--tabs-bar-border-bottom, 1px solid #e0e0e0);border-radius:var(--tabs-bar-border-radius, 0);}.tabs-wrapper.disabled.svelte-18eaq6o {opacity:var(--tabs-disabled-opacity, 0.5);pointer-events:none;}.tabs-bar.svelte-18eaq6o {display:flex;flex:1;min-width:0;padding:var(--tabs-bar-padding, 0px);gap:var(--tabs-bar-gap, 0px);overflow-x:auto;scrollbar-width:none;position:relative;}.tabs-bar.svelte-18eaq6o::-webkit-scrollbar {display:none;}\n\n /* Each fade holds FULLY transparent for the first --tabs-fade-solid px before\n ramping to opaque: a plain 0→fade-size ramp still renders the clipped tab\n label at ~20% opacity a few px from the edge, which reads as a stray glyph\n fragment beside the scroll arrow. The solid zone guarantees nothing is\n perceptible there. */.tabs-bar.fade-left.svelte-18eaq6o {mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-right.svelte-18eaq6o {mask-image:linear-gradient(\n to left,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to left,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-left.fade-right.svelte-18eaq6o {mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );-webkit-mask-image:linear-gradient(\n to right,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );}.tabs-arrow.svelte-18eaq6o {display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--tabs-arrow-size, 28px);padding:var(--tabs-arrow-padding, 0);border:var(--tabs-arrow-border, none);background:var(--tabs-arrow-background, var(--tabs-bar-background, #ffffff));color:var(--tabs-arrow-color, var(--tabs-item-color, #666666));cursor:pointer;z-index:1;transition:var(\n --tabs-arrow-transition,\n color\n var(--tabs-arrow-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--tabs-arrow-transition-easing, var(--motion-easing, ease))\n );font-family:inherit;}.tabs-arrow.svelte-18eaq6o:hover {color:var(--tabs-arrow-hover-color, var(--tabs-active-color, #0b57d0));background:var(\n --tabs-arrow-hover-background,\n var(--tabs-arrow-background, var(--tabs-bar-background, #ffffff))\n );}.tabs-item.svelte-18eaq6o {display:flex;align-items:center;gap:var(--tabs-item-gap, 8px);position:relative;padding:var(--tabs-item-padding, 12px 16px);font-size:var(--tabs-item-font-size, 14px);font-weight:var(--tabs-item-font-weight, 400);font-family:var(--tabs-item-font-family, inherit);color:var(--tabs-item-color, #666666);cursor:var(--tabs-item-cursor, pointer);background:var(--tabs-item-background, transparent);border:var(--tabs-item-border, none);border-radius:var(--tabs-item-border-radius, 0);outline:none;white-space:nowrap;flex-shrink:0;user-select:none;transition:var(\n --tabs-transition,\n color var(--tabs-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--tabs-transition-easing, var(--motion-easing, ease)),\n background var(--tabs-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--tabs-transition-easing, var(--motion-easing, ease))\n );}\n\n /* Roving focus really does move (see focusedKey/focusTabAt above) -- this\n just replaces the INDICATOR that outline:none above strips, which is what\n was actually missing (WCAG 2.4.7). :focus-visible only, so a mouse click\n that activates a tab still shows nothing new, matching the rest of this\n file's pattern (Sheet's .sheet-panel, Select's .select-clear, ...).\n currentColor tracks --tabs-item-color / --tabs-active-color, which are\n already themed per-mode and per-state, so the ring stays visible against\n --tabs-bar-background in both themes with no extra token needed here. The\n offset is inset, not the usual outward one: .tabs-bar is a same-axis\n overflow:auto scroller with 0px padding/gap by default, so an outward ring\n on an edge tab would be clipped by the scroll container's own edge. */.tabs-item.svelte-18eaq6o:focus-visible {outline:var(--tabs-item-focus-outline, 2px solid currentColor);outline-offset:var(--tabs-item-focus-outline-offset, -2px);}.tabs-item.svelte-18eaq6o .tabs-item-icon {--image-width: var(--tabs-item-icon-size, 16px);--image-height: var(--tabs-item-icon-size, 16px);--image-object-fit: contain;color:var(--tabs-item-icon-color, inherit);flex-shrink:0;}\n\n /* Reserves the active-state (bolder) width of the label so selecting a tab\n never reflows the tab bar: without this, .tabs-item.active's font-weight\n jump makes the tab (and every tab after it) physically resize, which\n visibly shifts sibling tabs and defeats the indicator's slide animation\n with a jump. The ::after ghost renders data-text at the active weight\n with height:0/visibility:hidden -- invisible, but its width still sets\n the shrink-to-fit width of the inline-block label, so the box is already\n as wide as the active state needs even while showing the lighter weight. */.tabs-item-label.svelte-18eaq6o {position:relative;display:inline-block;}.tabs-item-label.svelte-18eaq6o::after {content:attr(data-text);display:block;height:0;overflow:hidden;visibility:hidden;font-weight:var(--tabs-active-font-weight, 600);}\n\n /* Trailing status dot for nav/menu tabs. margin-left:auto pushes it to the row's\n end (e.g. a settings menu); harmless on a normal tab bar where the item shrinks\n to content. */.tabs-item-status.svelte-18eaq6o {width:var(--tabs-item-status-size, 8px);height:var(--tabs-item-status-size, 8px);margin-left:auto;border-radius:50%;flex-shrink:0;background:transparent;}\n\n /* Neutral \"has activity / configured\" dot — blue by default, matching the app's\n --text-color-focus. Maps from a settings menu's Default circle type. */.tabs-item-status.status-default.svelte-18eaq6o {background:var(--tabs-item-status-default-color, #1a73e8);}.tabs-item-status.status-pending.svelte-18eaq6o {background:var(--tabs-item-status-pending-color, #f59e0b);}.tabs-item-status.status-error.svelte-18eaq6o {background:var(--tabs-item-status-error-color, #e7000b);}.tabs-item-status.status-success.svelte-18eaq6o {background:var(--tabs-item-status-success-color, #16a34a);}.tabs-item.svelte-18eaq6o:hover:not(.active):not([aria-disabled]) {color:var(--tabs-hover-color, #333333);background:var(--tabs-hover-background, #f5f5f5);}.tabs-item.active.svelte-18eaq6o {color:var(--tabs-active-color, #0b57d0);font-weight:var(--tabs-active-font-weight, 600);background:var(--tabs-active-background, transparent);}.tabs-item[aria-disabled].svelte-18eaq6o {cursor:var(--tabs-disabled-cursor, not-allowed);}.tabs-indicator.svelte-18eaq6o {position:absolute;bottom:0;height:var(--tabs-indicator-height, 2px);background-color:var(--tabs-indicator-color, #1a73e8);border-radius:var(--tabs-indicator-border-radius, 2px 2px 0 0);transition:var(\n --tabs-indicator-transition,\n left var(--tabs-indicator-transition-duration, var(--motion-duration, 0.3s))\n var(--tabs-indicator-transition-easing, var(--motion-easing, ease)),\n width var(--tabs-indicator-transition-duration, var(--motion-duration, 0.3s))\n var(--tabs-indicator-transition-easing, var(--motion-easing, ease))\n );pointer-events:none;}\n\n /* ---------- Vertical orientation (nav / menu rail) ---------- */.tabs-wrapper.vertical.svelte-18eaq6o {flex-direction:column;align-items:stretch;max-width:none;border-bottom:none;}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-bar:where(.svelte-18eaq6o) {flex-direction:column;overflow-x:hidden;overflow-y:auto;}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-item:where(.svelte-18eaq6o) {\n /* Full-width rows: label sits at the leading edge, the status dot's margin-left:auto\n pushes it to the trailing edge (the settings-menu look). */width:100%;box-sizing:border-box;justify-content:flex-start;}.tabs-bar.fade-top.svelte-18eaq6o {mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-bottom.svelte-18eaq6o {mask-image:linear-gradient(\n to top,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );-webkit-mask-image:linear-gradient(\n to top,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px)\n );}.tabs-bar.fade-top.fade-bottom.svelte-18eaq6o {mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );-webkit-mask-image:linear-gradient(\n to bottom,\n transparent var(--tabs-fade-solid, 8px),\n black var(--tabs-fade-size, 32px),\n black calc(100% - var(--tabs-fade-size, 32px)),\n transparent calc(100% - var(--tabs-fade-solid, 8px))\n );}.tabs-wrapper.vertical.svelte-18eaq6o .tabs-indicator:where(.svelte-18eaq6o) {top:0;bottom:auto;left:0;width:var(--tabs-indicator-height, 2px);height:var(--tabs-indicator-height, 2px);border-radius:var(--tabs-indicator-border-radius-vertical, 0 2px 2px 0);transition:var(\n --tabs-indicator-transition-vertical,\n top var(--tabs-indicator-transition-vertical-duration, var(--motion-duration, 0.3s))\n var(--tabs-indicator-transition-vertical-easing, var(--motion-easing, ease)),\n height var(--tabs-indicator-transition-vertical-duration, var(--motion-duration, 0.3s))\n var(--tabs-indicator-transition-vertical-easing, var(--motion-easing, ease))\n );}\n\n /* Section header rendered above a group of vertical nav items. */.tabs-section-label.svelte-18eaq6o {padding:var(--tabs-section-label-padding, 12px 16px 4px);font-size:var(--tabs-section-label-font-size, 11px);font-weight:var(--tabs-section-label-font-weight, 700);letter-spacing:var(--tabs-section-label-letter-spacing, 0.04em);text-transform:var(--tabs-section-label-text-transform, uppercase);color:var(--tabs-section-label-color, var(--tabs-item-color, #666666));white-space:nowrap;user-select:none;}\n\n @media (prefers-reduced-motion: reduce) {.tabs-indicator.svelte-18eaq6o,\n .tabs-wrapper.vertical.svelte-18eaq6o .tabs-indicator:where(.svelte-18eaq6o) {transition:none;}\n }"
|
|
14104
14238
|
};
|
|
14105
14239
|
function Tabs(e, t) {
|
|
14106
14240
|
push(t, !0), append_styles$1(e, $$css$132);
|
|
@@ -14641,7 +14775,7 @@ customElements.define("sui-tabs", create_custom_element(Tabs_wc, {
|
|
|
14641
14775
|
//#region src/lib/assets/sun.svg?raw
|
|
14642
14776
|
var sun_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"5\"></circle>\n <line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"3\"></line>\n <line x1=\"12\" y1=\"21\" x2=\"12\" y2=\"23\"></line>\n <line x1=\"4.22\" y1=\"4.22\" x2=\"5.64\" y2=\"5.64\"></line>\n <line x1=\"18.36\" y1=\"18.36\" x2=\"19.78\" y2=\"19.78\"></line>\n <line x1=\"1\" y1=\"12\" x2=\"3\" y2=\"12\"></line>\n <line x1=\"21\" y1=\"12\" x2=\"23\" y2=\"12\"></line>\n <line x1=\"4.22\" y1=\"19.78\" x2=\"5.64\" y2=\"18.36\"></line>\n <line x1=\"18.36\" y1=\"5.64\" x2=\"19.78\" y2=\"4.22\"></line>\n</svg>\n", moon_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z\"></path>\n</svg>\n", monitor_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\" ry=\"2\"></rect>\n <line x1=\"8\" y1=\"21\" x2=\"16\" y2=\"21\"></line>\n <line x1=\"12\" y1=\"17\" x2=\"12\" y2=\"21\"></line>\n</svg>\n", palette_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"13.5\" cy=\"6.5\" r=\"0.5\" fill=\"currentColor\"></circle>\n <circle cx=\"17.5\" cy=\"10.5\" r=\"0.5\" fill=\"currentColor\"></circle>\n <circle cx=\"8.5\" cy=\"7.5\" r=\"0.5\" fill=\"currentColor\"></circle>\n <circle cx=\"6.5\" cy=\"12.5\" r=\"0.5\" fill=\"currentColor\"></circle>\n <path d=\"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z\"></path>\n</svg>\n", root$70 = /* @__PURE__ */ from_html("<span><!></span>"), root_1$64 = /* @__PURE__ */ from_html("<button aria-label=\"Switch theme\"></button>"), root_2$51 = /* @__PURE__ */ from_html("<button><span class=\"icon svelte-yg7rya\"><!></span></button>"), root_3$45 = /* @__PURE__ */ from_html("<div><div class=\"segment-indicator svelte-yg7rya\"></div> <!></div>"), $$css$130 = {
|
|
14643
14777
|
hash: "svelte-yg7rya",
|
|
14644
|
-
code: ".toggle-button.svelte-yg7rya {position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--theme-switcher-size, 36px);height:var(--theme-switcher-size, 36px);padding:0;border:none;border-radius:var(--theme-switcher-border-radius, var(--radius, 4px));background-color:var(--theme-switcher-bg, transparent);cursor:pointer;color:var(--theme-switcher-icon-color, #374151);transition:background-color
|
|
14778
|
+
code: ".toggle-button.svelte-yg7rya {position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--theme-switcher-size, 36px);height:var(--theme-switcher-size, 36px);padding:0;border:none;border-radius:var(--theme-switcher-border-radius, var(--radius, 4px));background-color:var(--theme-switcher-bg, transparent);cursor:pointer;color:var(--theme-switcher-icon-color, #374151);transition:background-color\n var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease));font-family:inherit;}.toggle-button.svelte-yg7rya:hover {background-color:var(--theme-switcher-bg-hover, #f3f4f6);}.toggle-button.svelte-yg7rya:active {background-color:var(--theme-switcher-bg-pressed, #e5e7eb);}.icon.svelte-yg7rya {display:inline-flex;align-items:center;justify-content:center;width:var(--theme-switcher-icon-size, 18px);height:var(--theme-switcher-icon-size, 18px);transition:opacity var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease)),\n transform var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease));}.icon.svelte-yg7rya svg {width:100%;height:100%;}.toggle-button.svelte-yg7rya .icon:where(.svelte-yg7rya) {position:absolute;}.toggle-button.svelte-yg7rya .icon:where(.svelte-yg7rya):not(.active) {opacity:0;transform:scale(0.5) rotate(90deg);}.toggle-button.svelte-yg7rya .icon.active:where(.svelte-yg7rya) {opacity:1;transform:scale(1) rotate(0deg);}.segment-control.svelte-yg7rya {position:relative;display:inline-flex;align-items:center;gap:var(--theme-switcher-segment-gap, 2px);padding:var(--theme-switcher-segment-padding, 4px);background-color:var(--theme-switcher-segment-bg, #f3f4f6);border-radius:var(--theme-switcher-border-radius, var(--radius, 4px));}.segment-indicator.svelte-yg7rya {position:absolute;top:var(--theme-switcher-segment-padding, 4px);bottom:var(--theme-switcher-segment-padding, 4px);border-radius:var(--theme-switcher-segment-border-radius, var(--radius, 4px));background-color:var(--theme-switcher-segment-active-bg, #ffffff);box-shadow:var(--theme-switcher-segment-shadow, 0 1px 2px rgba(0, 0, 0, 0.1));transition:left var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease)),\n width var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease));z-index:0;}.segment-button.svelte-yg7rya {position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;padding:var(--theme-switcher-segment-button-padding, 6px 10px);border:none;border-radius:var(--theme-switcher-segment-border-radius, var(--radius, 4px));background:transparent;cursor:pointer;color:var(--theme-switcher-icon-color, #374151);transition:color var(--theme-switcher-transition-duration, var(--motion-duration, 0.3s))\n var(--theme-switcher-transition-easing, var(--motion-easing, ease));font-family:inherit;}.segment-button.selected.svelte-yg7rya {color:var(--theme-switcher-icon-color-active, #1f2937);}\n\n /* Unlike the two progress-bar loaders elsewhere in this library, every\n transition here moves between two states that are each fully meaningful\n on their own (a background tint, an icon's shown/hidden pose, the\n indicator's resting position, a label's active color) -- there is no\n in-between frame that could be misread as a different state. Dropping the\n transition just makes the swap instant instead of animated; nothing is\n stranded mid-motion the way a freeze mid-fill would be. Four separate\n rules declare `transition` in this file (toggle background, icon\n opacity/transform, segment indicator left/width, segment label color) --\n all four are covered here, not just the two the icon/indicator case calls\n out, so no motion in this component is left unguarded. Lives in the\n component's own <style> because that is the only stylesheet that reaches\n inside the shadow root a custom-element consumer gets. */\n @media (prefers-reduced-motion: reduce) {.toggle-button.svelte-yg7rya,\n .icon.svelte-yg7rya,\n .segment-indicator.svelte-yg7rya,\n .segment-button.svelte-yg7rya {transition:none;}\n }"
|
|
14645
14779
|
};
|
|
14646
14780
|
function ThemeSwitcher(e, t) {
|
|
14647
14781
|
push(t, !0), append_styles$1(e, $$css$130);
|
|
@@ -14831,7 +14965,7 @@ customElements.define("sui-theme-switcher", create_custom_element(ThemeSwitcher_
|
|
|
14831
14965
|
//#region src/lib/Toggle/Toggle.svelte
|
|
14832
14966
|
var root$69 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-1kpnf4s\"> </div>"), root_1$63 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-1kpnf4s\"> </div>"), root_2$50 = /* @__PURE__ */ from_html("<div><label class=\"text svelte-1kpnf4s\"> </label> <label class=\"switch svelte-1kpnf4s\"><input class=\"input-checkbox svelte-1kpnf4s\" type=\"checkbox\"/> <span class=\"slider round svelte-1kpnf4s\"></span></label></div> <!> <!>", 1), $$css$128 = {
|
|
14833
14967
|
hash: "svelte-1kpnf4s",
|
|
14834
|
-
code: ".container.svelte-1kpnf4s {display:var(--toggle-container-display, flex);align-items:var(--toggle-container-align-items, center);gap:var(--toggle-container-gap, 8px);}.container.disabled.svelte-1kpnf4s {opacity:var(--toggle-disabled-opacity, 0.4);cursor:not-allowed;pointer-events:none;}.text.svelte-1kpnf4s {font-size:var(--toggle-text-font-size, 14px);font-weight:var(--toggle-text-font-weight, 400);color:var(--toggle-text-color, #4a4a4a);margin:var(--toggle-text-margin, 0px 8px 0px 0px);order:var(--toggle-text-order, 0);}.switch.svelte-1kpnf4s {position:relative;display:inline-block;width:var(--toggle-switch-width, 46px);height:var(--toggle-switch-height, 25px);}.switch.svelte-1kpnf4s .input-checkbox:where(.svelte-1kpnf4s) {opacity:0;width:0;height:0;}.slider.svelte-1kpnf4s {position:absolute;cursor:pointer;top:var(--toggle-slider-top, 0);left:var(--toggle-slider-left, 0);right:var(--toggle-slider-right, 0);bottom:var(--toggle-slider-bottom, 0);background-color:var(--slider-unchecked-color, #ccc);-webkit-transition:var(\n --toggle-slider-transition,\n all
|
|
14968
|
+
code: ".container.svelte-1kpnf4s {display:var(--toggle-container-display, flex);align-items:var(--toggle-container-align-items, center);gap:var(--toggle-container-gap, 8px);}.container.disabled.svelte-1kpnf4s {opacity:var(--toggle-disabled-opacity, 0.4);cursor:not-allowed;pointer-events:none;}.text.svelte-1kpnf4s {font-size:var(--toggle-text-font-size, 14px);font-weight:var(--toggle-text-font-weight, 400);color:var(--toggle-text-color, #4a4a4a);margin:var(--toggle-text-margin, 0px 8px 0px 0px);order:var(--toggle-text-order, 0);}.switch.svelte-1kpnf4s {position:relative;display:inline-block;width:var(--toggle-switch-width, 46px);height:var(--toggle-switch-height, 25px);}.switch.svelte-1kpnf4s .input-checkbox:where(.svelte-1kpnf4s) {opacity:0;width:0;height:0;}.slider.svelte-1kpnf4s {position:absolute;cursor:pointer;top:var(--toggle-slider-top, 0);left:var(--toggle-slider-left, 0);right:var(--toggle-slider-right, 0);bottom:var(--toggle-slider-bottom, 0);background-color:var(--slider-unchecked-color, #ccc);-webkit-transition:var(\n --toggle-slider-transition,\n all\n var(--toggle-slider-transition-duration, var(--duration-slow, var(--motion-duration, 0.4s)))\n var(--toggle-slider-transition-easing, var(--motion-easing, ease))\n );transition:var(\n --toggle-slider-transition,\n all\n var(--toggle-slider-transition-duration, var(--duration-slow, var(--motion-duration, 0.4s)))\n var(--toggle-slider-transition-easing, var(--motion-easing, ease))\n );}.slider.svelte-1kpnf4s:before {position:absolute;content:'';height:var(--toggle-ball-height, 23px);width:var(--toggle-ball-width, 23px);left:var(--toggle-slider-before-left, 2px);bottom:var(--toggle-slider-before-bottom, 1px);top:var(--toggle-slider-before-top, 1px);background-color:var(--toggle-slider-before-background-color, white);-webkit-transition:var(\n --toggle-slider-transition,\n all\n var(--toggle-slider-transition-duration, var(--duration-slow, var(--motion-duration, 0.4s)))\n var(--toggle-slider-transition-easing, var(--motion-easing, ease))\n );transition:var(\n --toggle-slider-transition,\n all\n var(--toggle-slider-transition-duration, var(--duration-slow, var(--motion-duration, 0.4s)))\n var(--toggle-slider-transition-easing, var(--motion-easing, ease))\n );}.input-checkbox.svelte-1kpnf4s:checked + .slider:where(.svelte-1kpnf4s) {background-color:var(--slider-checked-color, #2196f3);}.input-checkbox.svelte-1kpnf4s:focus + .slider:where(.svelte-1kpnf4s) {box-shadow:var(--toggle-focus-ring, 0 0 0 3px rgba(33, 150, 243, 0.3));}.input-checkbox.svelte-1kpnf4s:checked + .slider:where(.svelte-1kpnf4s):before {-webkit-transform:translateX(19px);-ms-transform:translateX(19px);transform:translateX(19px);}.slider.round.svelte-1kpnf4s {border-radius:var(--slider-border-radius, 23px);}.slider.round.svelte-1kpnf4s:before {border-radius:var(--slider-border-radius-before, 50%);}.field-error.svelte-1kpnf4s {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-1kpnf4s {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}"
|
|
14835
14969
|
};
|
|
14836
14970
|
function Toggle(e, t) {
|
|
14837
14971
|
let n = props_id();
|
|
@@ -15097,7 +15231,7 @@ customElements.define("sui-toggle", create_custom_element(Toggle_wc, {
|
|
|
15097
15231
|
//#region src/lib/Accordion/Accordion.svelte
|
|
15098
15232
|
var root$68 = /* @__PURE__ */ from_html("<div role=\"button\"><!></div>"), root_1$62 = /* @__PURE__ */ from_html("<!> <div><div class=\"accordion-content svelte-1p9ezsm\"><!></div></div>", 1), $$css$126 = {
|
|
15099
15233
|
hash: "svelte-1p9ezsm",
|
|
15100
|
-
code: ".accordion-trigger.svelte-1p9ezsm {cursor:var(--accordion-trigger-cursor, pointer);}.accordion-trigger.disabled.svelte-1p9ezsm {cursor:var(--accordion-trigger-disabled-cursor, not-allowed);}.accordion.svelte-1p9ezsm {display:grid;grid-template-rows:0fr;overflow:hidden;\n /* overflow: hidden drops this element's automatic minimum size to zero, so\n when it is placed as an item of a consumer's own grid or flex container\n it is otherwise free to be stretched down to whatever size that\n container hands it -- as small as 0px -- independent of how tall its\n own children actually are (issue #550). align-self: start opts the\n panel out of that stretch so it always sizes from its own expanded\n content instead. It is inert when the panel is not a grid or flex item,\n and does not change the collapse animation: collapsed still resolves\n to 0px either way.\n\n Exposed as --accordion-align-self rather than hardcoded: Svelte's\n scoped class raises .accordion's specificity above a plain utility\n class passed through `classes`, so a consumer who legitimately wants\n the panel stretched (or centered, etc.) could not otherwise override\n this one declaration without reaching for :global() or !important. */align-self:var(--accordion-align-self, start);transition:grid-template-rows
|
|
15234
|
+
code: ".accordion-trigger.svelte-1p9ezsm {cursor:var(--accordion-trigger-cursor, pointer);}.accordion-trigger.disabled.svelte-1p9ezsm {cursor:var(--accordion-trigger-disabled-cursor, not-allowed);}.accordion.svelte-1p9ezsm {display:grid;grid-template-rows:0fr;overflow:hidden;\n /* overflow: hidden drops this element's automatic minimum size to zero, so\n when it is placed as an item of a consumer's own grid or flex container\n it is otherwise free to be stretched down to whatever size that\n container hands it -- as small as 0px -- independent of how tall its\n own children actually are (issue #550). align-self: start opts the\n panel out of that stretch so it always sizes from its own expanded\n content instead. It is inert when the panel is not a grid or flex item,\n and does not change the collapse animation: collapsed still resolves\n to 0px either way.\n\n Exposed as --accordion-align-self rather than hardcoded: Svelte's\n scoped class raises .accordion's specificity above a plain utility\n class passed through `classes`, so a consumer who legitimately wants\n the panel stretched (or centered, etc.) could not otherwise override\n this one declaration without reaching for :global() or !important. */align-self:var(--accordion-align-self, start);transition:grid-template-rows\n var(\n --accordion-transition,\n var(--accordion-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--accordion-transition-easing, var(--ease-out, var(--motion-easing, ease-out)))\n );}.accordion.expanded.svelte-1p9ezsm {grid-template-rows:1fr;}\n\n /* The expand/collapse is a real size change, which is what the preference is\n about, and nothing was stopping it: DESIGN_PRINCIPLES.md section 1 reasons a\n finite transition needs no guard because --motion-duration handles it, but\n this rule reads --accordion-transition, and no stylesheet in this library\n assigns either token -- both exist purely as fallback rungs for a consumer to\n reach. Safe to drop outright because the transition is finite: the panel\n lands open or closed rather than stranded part-way, unlike an indefinite\n animation collapsed onto its 0% keyframe.\n\n Declared on `.accordion` to match the base rule's specificity and placed\n after it, so it wins; `.accordion.expanded` sets only grid-template-rows and\n never re-declares the transition, so it cannot silently override this. */\n @media (prefers-reduced-motion: reduce) {.accordion.svelte-1p9ezsm {transition:none;}\n }.accordion-content.svelte-1p9ezsm {min-height:0;}"
|
|
15101
15235
|
};
|
|
15102
15236
|
function Accordion(e, t) {
|
|
15103
15237
|
let n = props_id();
|
|
@@ -15246,10 +15380,6 @@ function cubic_out(e) {
|
|
|
15246
15380
|
let t = e - 1;
|
|
15247
15381
|
return t * t * t + 1;
|
|
15248
15382
|
}
|
|
15249
|
-
function split_css_unit(e) {
|
|
15250
|
-
let t = typeof e == "string" && e.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);
|
|
15251
|
-
return t ? [parseFloat(t[1]), t[2] || "px"] : [e, "px"];
|
|
15252
|
-
}
|
|
15253
15383
|
function fade(e, { delay: t = 0, duration: n = 400, easing: i = linear } = {}) {
|
|
15254
15384
|
let a = +getComputedStyle(e).opacity;
|
|
15255
15385
|
return {
|
|
@@ -15259,17 +15389,6 @@ function fade(e, { delay: t = 0, duration: n = 400, easing: i = linear } = {}) {
|
|
|
15259
15389
|
css: (e) => `opacity: ${e * a}`
|
|
15260
15390
|
};
|
|
15261
15391
|
}
|
|
15262
|
-
function fly(e, { delay: t = 0, duration: n = 400, easing: i = cubic_out, x: a = 0, y: o = 0, opacity: s = 0 } = {}) {
|
|
15263
|
-
let c = getComputedStyle(e), l = +c.opacity, u = c.transform === "none" ? "" : c.transform, f = l * (1 - s), [p, h] = split_css_unit(a), [S, C] = split_css_unit(o);
|
|
15264
|
-
return {
|
|
15265
|
-
delay: t,
|
|
15266
|
-
duration: n,
|
|
15267
|
-
easing: i,
|
|
15268
|
-
css: (e, t) => `
|
|
15269
|
-
transform: ${u} translate(${(1 - e) * p}${h}, ${(1 - e) * S}${C});
|
|
15270
|
-
opacity: ${l - f * t}`
|
|
15271
|
-
};
|
|
15272
|
-
}
|
|
15273
15392
|
var slide_warning = !1;
|
|
15274
15393
|
function slide(e, { delay: t = 0, duration: n = 400, easing: i = cubic_out, axis: a = "y" } = {}) {
|
|
15275
15394
|
let o = getComputedStyle(e), s = +o.opacity, c = a === "y" ? "height" : "width", l = parseFloat(o[c]), u = a === "y" ? ["top", "bottom"] : ["left", "right"], f = u.map((e) => `${e[0].toUpperCase()}${e.slice(1)}`), p = parseFloat(o[`padding${f[0]}`]), h = parseFloat(o[`padding${f[1]}`]), S = parseFloat(o[`margin${f[0]}`]), C = parseFloat(o[`margin${f[1]}`]), k = parseFloat(o[`border${f[0]}Width`]), R = parseFloat(o[`border${f[1]}Width`]);
|
|
@@ -16144,7 +16263,7 @@ function moveWithinChoiceboxGroup(e, t) {
|
|
|
16144
16263
|
//#region src/lib/Choicebox/Choicebox.svelte
|
|
16145
16264
|
var root$62 = /* @__PURE__ */ from_html("<span class=\"indicator-icon svelte-1s9or1q\"></span>"), root_1$58 = /* @__PURE__ */ from_html("<span aria-hidden=\"true\"><!></span>"), root_2$47 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"field-error svelte-1s9or1q\"> </div>"), root_3$42 = /* @__PURE__ */ from_html("<div class=\"field-info svelte-1s9or1q\"> </div>"), root_4$37 = /* @__PURE__ */ from_html("<div><input class=\"native-control svelte-1s9or1q\" aria-hidden=\"true\"/> <!> <!></div> <!> <!>", 1), $$css$117 = {
|
|
16146
16265
|
hash: "svelte-1s9or1q",
|
|
16147
|
-
code: ".native-control.svelte-1s9or1q {position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none;}.field-error.svelte-1s9or1q {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-1s9or1q {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}.choicebox.svelte-1s9or1q {display:var(--choicebox-display, flex);align-items:var(--choicebox-align-items, center);padding:var(--choicebox-padding, 16px);border:var(--choicebox-border, 2px solid #d0d0d0);border-radius:var(--choicebox-border-radius, var(--radius, 4px));background:var(--choicebox-background, #ffffff);gap:var(--choicebox-gap, 12px);cursor:var(--choicebox-cursor, pointer);font-family:var(--choicebox-font-family, inherit);transition:var(--choicebox-transition
|
|
16266
|
+
code: ".native-control.svelte-1s9or1q {position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none;}.field-error.svelte-1s9or1q {color:var(--field-error-color, #c5120a);font-size:var(--field-error-font-size, 12px);margin:var(--field-error-margin, 4px 0 0 0);}.field-info.svelte-1s9or1q {color:var(--field-info-color, #6b7280);font-size:var(--field-info-font-size, 12px);margin:var(--field-info-margin, 4px 0 0 0);}.choicebox.svelte-1s9or1q {display:var(--choicebox-display, flex);align-items:var(--choicebox-align-items, center);padding:var(--choicebox-padding, 16px);border:var(--choicebox-border, 2px solid #d0d0d0);border-radius:var(--choicebox-border-radius, var(--radius, 4px));background:var(--choicebox-background, #ffffff);gap:var(--choicebox-gap, 12px);cursor:var(--choicebox-cursor, pointer);font-family:var(--choicebox-font-family, inherit);transition:var(\n --choicebox-transition,\n border-color\n var(--choicebox-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--choicebox-transition-easing, var(--motion-easing, ease)),\n background\n var(--choicebox-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--choicebox-transition-easing, var(--motion-easing, ease))\n );-webkit-tap-highlight-color:transparent;}.choicebox.svelte-1s9or1q:focus-visible {outline:none;box-shadow:var(--choicebox-focus-ring, 0 0 0 3px rgba(33, 150, 243, 0.3));}\n\n /* Exclude the selected state from hover: without :not(.selected) this rule\n (specificity 0,3,0) outranks .choicebox.selected (0,2,0), so hovering a\n selected card repaints it with the neutral hover border/fill until the\n cursor leaves. Excluding selected lets .choicebox.selected show through. */.choicebox.svelte-1s9or1q:not(.disabled):not(.selected):hover {border-color:var(--choicebox-hover-border-color, #9e9e9e);background:var(--choicebox-hover-background, var(--choicebox-background, #ffffff));}.choicebox.selected.svelte-1s9or1q {border-color:var(--choicebox-selected-border-color, #2196f3);background:var(--choicebox-selected-background, var(--choicebox-background, #ffffff));}.choicebox.disabled.svelte-1s9or1q {opacity:var(--choicebox-disabled-opacity, 0.4);cursor:var(--choicebox-disabled-cursor, not-allowed);}.indicator.svelte-1s9or1q {flex:0 0 auto;order:var(--choicebox-indicator-order, 1);margin-inline-start:var(--choicebox-indicator-margin-inline-start, auto);display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--choicebox-indicator-size, 20px);height:var(--choicebox-indicator-size, 20px);border:var(--choicebox-indicator-border, 2px solid #757575);background:var(--choicebox-indicator-background, transparent);transition:var(\n --choicebox-indicator-transition,\n background\n var(\n --choicebox-indicator-transition-duration,\n var(--duration-base, var(--motion-duration, 0.2s))\n )\n var(--choicebox-indicator-transition-easing, var(--motion-easing, ease)),\n border-color\n var(\n --choicebox-indicator-transition-duration,\n var(--duration-base, var(--motion-duration, 0.2s))\n )\n var(--choicebox-indicator-transition-easing, var(--motion-easing, ease))\n );}.indicator.radio.svelte-1s9or1q {border-radius:50%;}.indicator.checkbox.svelte-1s9or1q {border-radius:var(--choicebox-indicator-border-radius, var(--radius, 4px));}.indicator.selected.svelte-1s9or1q {border:var(--choicebox-indicator-selected-border, 2px solid #2196f3);background:var(--choicebox-indicator-selected-background, #2196f3);}.indicator.radio.selected.svelte-1s9or1q {box-shadow:inset 0 0 0 var(--choicebox-indicator-dot-inset, 4px)\n var(--choicebox-background, #ffffff);}.indicator-icon.svelte-1s9or1q {display:flex;width:var(--choicebox-indicator-icon-size, 14px);height:var(--choicebox-indicator-icon-size, 14px);color:var(--choicebox-indicator-icon-color, #ffffff);}.indicator-icon.svelte-1s9or1q svg {width:100%;height:100%;}"
|
|
16148
16267
|
};
|
|
16149
16268
|
function Choicebox(e, t) {
|
|
16150
16269
|
let n = props_id();
|
|
@@ -17251,80 +17370,96 @@ var root$57 = /* @__PURE__ */ from_html("<div class=\"context-menu-separator sve
|
|
|
17251
17370
|
};
|
|
17252
17371
|
function ContextMenu(e, t) {
|
|
17253
17372
|
push(t, !0), append_styles$1(e, $$css$109);
|
|
17254
|
-
let n = prop(t, "items", 7), i = prop(t, "open", 15, !1), a = prop(t, "maxHeight", 7, "240px"), o = prop(t, "testId", 7), s = prop(t, "children", 7), c = prop(t, "onselect", 7), l = prop(t, "onopen", 7), u = prop(t, "onclose", 7), f = prop(t, "classes", 7), p = /* @__PURE__ */ state(null), h = /* @__PURE__ */ state(null), S = /* @__PURE__ */ state(-1), C = /* @__PURE__ */ state(0), k = /* @__PURE__ */ state(0), R = /* @__PURE__ */ state(null), te =
|
|
17255
|
-
|
|
17256
|
-
|
|
17373
|
+
let n = prop(t, "items", 7), i = prop(t, "open", 15, !1), a = prop(t, "maxHeight", 7, "240px"), o = prop(t, "testId", 7), s = prop(t, "children", 7), c = prop(t, "onselect", 7), l = prop(t, "onopen", 7), u = prop(t, "onclose", 7), f = prop(t, "classes", 7), p = /* @__PURE__ */ state(null), h = /* @__PURE__ */ state(null), S = /* @__PURE__ */ state(-1), C = /* @__PURE__ */ state(0), k = /* @__PURE__ */ state(0), R = /* @__PURE__ */ state(null), te = {
|
|
17374
|
+
y: 12,
|
|
17375
|
+
durationTokens: [
|
|
17376
|
+
"--context-menu-panel-transition-duration",
|
|
17377
|
+
"--duration-quick",
|
|
17378
|
+
"--motion-duration"
|
|
17379
|
+
],
|
|
17380
|
+
fallbackDuration: 150,
|
|
17381
|
+
distanceTokens: ["--context-menu-panel-transition-distance", "--distance-medium"],
|
|
17382
|
+
fallbackDistance: 12,
|
|
17383
|
+
easingTokens: [
|
|
17384
|
+
"--context-menu-panel-transition-easing",
|
|
17385
|
+
"--ease-smooth-out",
|
|
17386
|
+
"--motion-easing"
|
|
17387
|
+
]
|
|
17388
|
+
}, ne = /* @__PURE__ */ user_derived(() => n().filter((e) => !e.separator && !e.disabled)), re = null;
|
|
17389
|
+
function G() {
|
|
17390
|
+
re !== null && (cancelAnimationFrame(re), re = null);
|
|
17257
17391
|
}
|
|
17258
|
-
function
|
|
17259
|
-
set(C, e, !0), set(k, t, !0), i(!0), set(S, 0), l()?.(),
|
|
17260
|
-
|
|
17392
|
+
function be(e, t) {
|
|
17393
|
+
set(C, e, !0), set(k, t, !0), i(!0), set(S, 0), l()?.(), G(), re = requestAnimationFrame(() => {
|
|
17394
|
+
re = null, Ue(), it(0);
|
|
17261
17395
|
});
|
|
17262
17396
|
}
|
|
17263
|
-
function
|
|
17264
|
-
|
|
17397
|
+
function Me() {
|
|
17398
|
+
if (!i()) return;
|
|
17399
|
+
G(), i(!1), set(S, -1), u()?.();
|
|
17265
17400
|
let e = get(R);
|
|
17266
17401
|
if (set(R, null), e === null) return;
|
|
17267
17402
|
let t = getActiveElement(e);
|
|
17268
17403
|
(t === null || t === document.body || (get(p)?.contains(t) ?? !1)) && e.focus();
|
|
17269
17404
|
}
|
|
17270
|
-
function
|
|
17271
|
-
e.disabled || (c()?.(e),
|
|
17405
|
+
function Re(e) {
|
|
17406
|
+
!i() || e.disabled || (c()?.(e), Me());
|
|
17272
17407
|
}
|
|
17273
|
-
function
|
|
17408
|
+
function Ue() {
|
|
17274
17409
|
if (get(p) === null) return;
|
|
17275
17410
|
let e = get(p).getBoundingClientRect(), t = window.innerWidth, n = window.innerHeight;
|
|
17276
17411
|
get(C) + e.width > t && set(C, t - e.width - 4), get(k) + e.height > n && set(k, n - e.height - 4), get(C) < 0 && set(C, 4), get(k) < 0 && set(k, 4);
|
|
17277
17412
|
}
|
|
17278
|
-
function
|
|
17413
|
+
function it(e) {
|
|
17279
17414
|
if (get(p) === null) return;
|
|
17280
17415
|
let t = get(p).querySelectorAll("[role=\"menuitem\"]:not([aria-disabled=\"true\"])");
|
|
17281
17416
|
e >= 0 && e < t.length && t[e].focus();
|
|
17282
17417
|
}
|
|
17283
|
-
function it(e) {
|
|
17284
|
-
return get(te).indexOf(e);
|
|
17285
|
-
}
|
|
17286
17418
|
function at(e) {
|
|
17419
|
+
return get(ne).indexOf(e);
|
|
17420
|
+
}
|
|
17421
|
+
function ot(e) {
|
|
17287
17422
|
e.preventDefault();
|
|
17288
17423
|
let t = e.target instanceof Node ? getActiveElement(e.target) : null;
|
|
17289
|
-
set(R, t instanceof HTMLElement && t !== document.body ? t : null, !0),
|
|
17424
|
+
set(R, t instanceof HTMLElement && t !== document.body ? t : null, !0), be(e.clientX, e.clientY);
|
|
17290
17425
|
}
|
|
17291
|
-
function
|
|
17426
|
+
function ct(e) {
|
|
17292
17427
|
switch (e.key) {
|
|
17293
17428
|
case "ArrowDown": {
|
|
17294
17429
|
e.preventDefault();
|
|
17295
17430
|
let t = get(S) + 1;
|
|
17296
|
-
set(S, t >= get(
|
|
17431
|
+
set(S, t >= get(ne).length ? 0 : t, !0), it(get(S));
|
|
17297
17432
|
break;
|
|
17298
17433
|
}
|
|
17299
17434
|
case "ArrowUp": {
|
|
17300
17435
|
e.preventDefault();
|
|
17301
17436
|
let t = get(S) - 1;
|
|
17302
|
-
set(S, t < 0 ? get(
|
|
17437
|
+
set(S, t < 0 ? get(ne).length - 1 : t, !0), it(get(S));
|
|
17303
17438
|
break;
|
|
17304
17439
|
}
|
|
17305
17440
|
case "Home":
|
|
17306
|
-
e.preventDefault(), set(S, 0),
|
|
17441
|
+
e.preventDefault(), set(S, 0), it(get(S));
|
|
17307
17442
|
break;
|
|
17308
17443
|
case "End":
|
|
17309
|
-
e.preventDefault(), set(S, get(
|
|
17444
|
+
e.preventDefault(), set(S, get(ne).length - 1), it(get(S));
|
|
17310
17445
|
break;
|
|
17311
17446
|
case "Enter":
|
|
17312
17447
|
case " ":
|
|
17313
|
-
e.preventDefault(), get(S) >= 0 && get(S) < get(
|
|
17448
|
+
e.preventDefault(), get(S) >= 0 && get(S) < get(ne).length && Re(get(ne)[get(S)]);
|
|
17314
17449
|
break;
|
|
17315
17450
|
case "Tab":
|
|
17316
|
-
|
|
17451
|
+
Me();
|
|
17317
17452
|
break;
|
|
17318
17453
|
}
|
|
17319
17454
|
}
|
|
17320
|
-
function
|
|
17455
|
+
function lt(e) {
|
|
17321
17456
|
return { destroy: registerDismissible({
|
|
17322
17457
|
element: () => get(p),
|
|
17323
|
-
onEscape:
|
|
17324
|
-
onOutside:
|
|
17458
|
+
onEscape: Me,
|
|
17459
|
+
onOutside: Me
|
|
17325
17460
|
}) };
|
|
17326
17461
|
}
|
|
17327
|
-
var
|
|
17462
|
+
var ut = {
|
|
17328
17463
|
get items() {
|
|
17329
17464
|
return n();
|
|
17330
17465
|
},
|
|
@@ -17379,22 +17514,22 @@ function ContextMenu(e, t) {
|
|
|
17379
17514
|
set classes(e) {
|
|
17380
17515
|
f(e), flushSync();
|
|
17381
17516
|
}
|
|
17382
|
-
},
|
|
17383
|
-
attribute_effect(
|
|
17517
|
+
}, dt = root_5$31(), ft = first_child(dt);
|
|
17518
|
+
attribute_effect(ft, () => ({
|
|
17384
17519
|
class: `context-menu-container ${f() ?? "" ?? ""}`,
|
|
17385
|
-
oncontextmenu:
|
|
17520
|
+
oncontextmenu: ot,
|
|
17386
17521
|
...i() ? { role: "application" } : {},
|
|
17387
17522
|
"data-pw": o(),
|
|
17388
17523
|
testID: o()
|
|
17389
17524
|
}), void 0, void 0, void 0, "svelte-1hf60pq");
|
|
17390
|
-
var
|
|
17525
|
+
var pt = child(ft), mt = (e) => {
|
|
17391
17526
|
var t = comment();
|
|
17392
17527
|
snippet(first_child(t), s), append(e, t);
|
|
17393
17528
|
};
|
|
17394
|
-
if_block(
|
|
17395
|
-
typeof s() == "function" && e(
|
|
17396
|
-
}), reset(
|
|
17397
|
-
var
|
|
17529
|
+
if_block(pt, (e) => {
|
|
17530
|
+
typeof s() == "function" && e(mt);
|
|
17531
|
+
}), reset(ft), bind_this(ft, (e) => set(h, e), () => get(h));
|
|
17532
|
+
var ht = sibling(ft, 2), gt = (e) => {
|
|
17398
17533
|
var t = root_4$34();
|
|
17399
17534
|
each(t, 21, n, (e) => e.value, (e, t) => {
|
|
17400
17535
|
var n = comment(), i = first_child(n), a = (e) => {
|
|
@@ -17422,20 +17557,22 @@ function ContextMenu(e, t) {
|
|
|
17422
17557
|
"context-menu-item-danger": get(t).danger,
|
|
17423
17558
|
"context-menu-item-disabled": get(t).disabled
|
|
17424
17559
|
}), set_attribute(n, "tabindex", get(t).disabled ? -1 : 0), set_attribute(n, "aria-disabled", get(t).disabled ? "true" : null), set_attribute(n, "data-pw", o() ? `${o()}-item-${get(t).value}` : null), set_attribute(n, "testid", o() ? `${o()}-item-${get(t).value}` : null), set_text(l, get(t).label);
|
|
17425
|
-
}), delegated("click", n, () =>
|
|
17426
|
-
(e.key === "Enter" || e.key === " ") && (e.preventDefault(),
|
|
17560
|
+
}), delegated("click", n, () => Re(get(t))), delegated("keydown", n, (e) => {
|
|
17561
|
+
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), Re(get(t)));
|
|
17427
17562
|
}), event("focus", n, () => {
|
|
17428
|
-
get(t).disabled || set(S,
|
|
17563
|
+
get(t).disabled || set(S, at(get(t)), !0);
|
|
17429
17564
|
}), append(e, n);
|
|
17430
17565
|
};
|
|
17431
17566
|
if_block(i, (e) => {
|
|
17432
17567
|
get(t).separator ? e(a) : e(s, -1);
|
|
17433
17568
|
}), append(e, n);
|
|
17434
|
-
}), reset(t), bind_this(t, (e) => set(p, e), () => get(p)), action(t, (e) =>
|
|
17569
|
+
}), reset(t), bind_this(t, (e) => set(p, e), () => get(p)), action(t, (e) => lt?.(e)), template_effect(() => {
|
|
17570
|
+
set_style(t, `left: ${get(C) ?? ""}px; top: ${get(k) ?? ""}px; --context-menu-max-height: ${a() ?? ""};`), t.inert = !i();
|
|
17571
|
+
}), delegated("keydown", t, ct), transition(1, t, () => tokenizedFly, () => te), transition(2, t, () => tokenizedFly, () => te), append(e, t);
|
|
17435
17572
|
};
|
|
17436
|
-
return if_block(
|
|
17437
|
-
i() && e(
|
|
17438
|
-
}), append(e,
|
|
17573
|
+
return if_block(ht, (e) => {
|
|
17574
|
+
i() && e(gt);
|
|
17575
|
+
}), append(e, dt), pop(ut);
|
|
17439
17576
|
}
|
|
17440
17577
|
delegate(["keydown", "click"]), create_custom_element(ContextMenu, {
|
|
17441
17578
|
items: {},
|
|
@@ -18377,7 +18514,22 @@ function Menu(e, t) {
|
|
|
18377
18514
|
let e = get(G).getBoundingClientRect(), t = get(be).getBoundingClientRect(), n = window.innerWidth, i = window.innerHeight, a = e.left + t.width > n - 8, o = e.right - t.width >= 8, s = a && o ? "right" : "left", c = e.bottom + t.height > i - 8, l = e.top - t.height >= 8;
|
|
18378
18515
|
return `${c && l ? "top" : "bottom"}-${s}`;
|
|
18379
18516
|
}
|
|
18380
|
-
let pt = 4
|
|
18517
|
+
let pt = 4, mt = {
|
|
18518
|
+
y: 12,
|
|
18519
|
+
durationTokens: [
|
|
18520
|
+
"--menu-panel-transition-duration",
|
|
18521
|
+
"--duration-quick",
|
|
18522
|
+
"--motion-duration"
|
|
18523
|
+
],
|
|
18524
|
+
fallbackDuration: 150,
|
|
18525
|
+
distanceTokens: ["--menu-panel-transition-distance", "--distance-medium"],
|
|
18526
|
+
fallbackDistance: 12,
|
|
18527
|
+
easingTokens: [
|
|
18528
|
+
"--menu-panel-transition-easing",
|
|
18529
|
+
"--ease-smooth-out",
|
|
18530
|
+
"--motion-easing"
|
|
18531
|
+
]
|
|
18532
|
+
};
|
|
18381
18533
|
user_effect(() => {
|
|
18382
18534
|
if (!ne() || !i() || typeof window > "u") return;
|
|
18383
18535
|
let e = null, t = () => {
|
|
@@ -18392,12 +18544,12 @@ function Menu(e, t) {
|
|
|
18392
18544
|
window.removeEventListener("scroll", t, { capture: !0 }), window.removeEventListener("resize", t), e !== null && cancelAnimationFrame(e);
|
|
18393
18545
|
};
|
|
18394
18546
|
});
|
|
18395
|
-
let
|
|
18547
|
+
let ht = (e) => {
|
|
18396
18548
|
let t = e.getRootNode();
|
|
18397
18549
|
return t instanceof ShadowRoot ? t : document.body;
|
|
18398
|
-
},
|
|
18399
|
-
if (ne()) return
|
|
18400
|
-
},
|
|
18550
|
+
}, gt = (e) => {
|
|
18551
|
+
if (ne()) return ht(e).appendChild(e), { destroy: () => e.remove() };
|
|
18552
|
+
}, _t = /* @__PURE__ */ user_derived(() => {
|
|
18401
18553
|
if (!ne() || !i() || get(G) === null) return "";
|
|
18402
18554
|
get(it);
|
|
18403
18555
|
let e = get(G).getBoundingClientRect(), t = typeof window > "u" ? {
|
|
@@ -18422,21 +18574,21 @@ function Menu(e, t) {
|
|
|
18422
18574
|
viewport: t
|
|
18423
18575
|
});
|
|
18424
18576
|
return `position:fixed;left:${n}px;top:${a}px;right:auto;bottom:auto;margin:0;z-index:var(--menu-z-index,1000);`;
|
|
18425
|
-
}),
|
|
18426
|
-
function
|
|
18427
|
-
i() ?
|
|
18577
|
+
}), vt = /* @__PURE__ */ user_derived(() => n().filter((e) => e.separator !== !0 && e.disabled !== !0)), yt = /* @__PURE__ */ user_derived(() => new SvelteMap(get(vt).map((e, t) => [e, t])));
|
|
18578
|
+
function bt() {
|
|
18579
|
+
i() ? St() : xt();
|
|
18428
18580
|
}
|
|
18429
|
-
function
|
|
18581
|
+
function xt(e = null) {
|
|
18430
18582
|
i(!0), te() === "auto" ? (set(lt, "bottom-left"), set(ut, !0)) : (set(lt, te()), set(ut, !1));
|
|
18431
|
-
let t = h() == null ? null : n().find((e) => e.value === h() && e.disabled !== !0) ?? null, a = e ?? (t === null ? 0 :
|
|
18583
|
+
let t = h() == null ? null : n().find((e) => e.value === h() && e.disabled !== !0) ?? null, a = e ?? (t === null ? 0 : Et(t));
|
|
18432
18584
|
set(at, a, !0), l()?.(), tick().then(() => {
|
|
18433
|
-
te() === "auto" && (set(lt, ft(), !0), set(ut, !1)),
|
|
18585
|
+
te() === "auto" && (set(lt, ft(), !0), set(ut, !1)), Tt(a);
|
|
18434
18586
|
});
|
|
18435
18587
|
}
|
|
18436
|
-
function xt() {
|
|
18437
|
-
i(!1), set(at, -1), set(ot, ""), u()?.(), St();
|
|
18438
|
-
}
|
|
18439
18588
|
function St() {
|
|
18589
|
+
i() && (i(!1), set(at, -1), set(ot, ""), u()?.(), Ct());
|
|
18590
|
+
}
|
|
18591
|
+
function Ct() {
|
|
18440
18592
|
if (get(Me) !== null) {
|
|
18441
18593
|
if (s()) {
|
|
18442
18594
|
let e = get(Me).querySelector("button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])");
|
|
@@ -18448,79 +18600,79 @@ function Menu(e, t) {
|
|
|
18448
18600
|
get(Me).focus({ preventScroll: !0 });
|
|
18449
18601
|
}
|
|
18450
18602
|
}
|
|
18451
|
-
function Ct(e) {
|
|
18452
|
-
e.disabled !== !0 && (c()?.(e), xt());
|
|
18453
|
-
}
|
|
18454
18603
|
function wt(e) {
|
|
18604
|
+
!i() || e.disabled === !0 || (c()?.(e), St());
|
|
18605
|
+
}
|
|
18606
|
+
function Tt(e) {
|
|
18455
18607
|
if (get(be) === null) return;
|
|
18456
18608
|
let t = get(be).querySelectorAll(`[role="${get(re)}"]:not([aria-disabled="true"])`), n = t.item(e);
|
|
18457
18609
|
e >= 0 && e < t.length && n instanceof HTMLElement && n.focus();
|
|
18458
18610
|
}
|
|
18459
|
-
function Tt(e) {
|
|
18460
|
-
return get(vt).get(e) ?? -1;
|
|
18461
|
-
}
|
|
18462
18611
|
function Et(e) {
|
|
18463
|
-
|
|
18612
|
+
return get(yt).get(e) ?? -1;
|
|
18464
18613
|
}
|
|
18465
18614
|
function Dt(e) {
|
|
18466
|
-
e.key === "ArrowDown" ? (e.preventDefault(),
|
|
18615
|
+
e.key === "Enter" || e.key === " " || e.key === "ArrowDown" ? (e.preventDefault(), xt()) : e.key === "ArrowUp" && (e.preventDefault(), xt(get(vt).length - 1));
|
|
18467
18616
|
}
|
|
18468
18617
|
function Ot(e) {
|
|
18618
|
+
e.key === "ArrowDown" ? (e.preventDefault(), xt()) : e.key === "ArrowUp" && (e.preventDefault(), xt(get(vt).length - 1));
|
|
18619
|
+
}
|
|
18620
|
+
function kt(e) {
|
|
18469
18621
|
switch (e.key) {
|
|
18470
18622
|
case "ArrowDown": {
|
|
18471
18623
|
e.preventDefault();
|
|
18472
18624
|
let t = get(at) + 1;
|
|
18473
|
-
set(at, t >= get(
|
|
18625
|
+
set(at, t >= get(vt).length ? 0 : t, !0), Tt(get(at));
|
|
18474
18626
|
break;
|
|
18475
18627
|
}
|
|
18476
18628
|
case "ArrowUp": {
|
|
18477
18629
|
e.preventDefault();
|
|
18478
18630
|
let t = get(at) - 1;
|
|
18479
|
-
set(at, t < 0 ? get(
|
|
18631
|
+
set(at, t < 0 ? get(vt).length - 1 : t, !0), Tt(get(at));
|
|
18480
18632
|
break;
|
|
18481
18633
|
}
|
|
18482
18634
|
case "Home":
|
|
18483
|
-
e.preventDefault(), set(at, 0),
|
|
18635
|
+
e.preventDefault(), set(at, 0), Tt(get(at));
|
|
18484
18636
|
break;
|
|
18485
18637
|
case "End":
|
|
18486
|
-
e.preventDefault(), set(at, get(
|
|
18638
|
+
e.preventDefault(), set(at, get(vt).length - 1), Tt(get(at));
|
|
18487
18639
|
break;
|
|
18488
18640
|
case "Enter":
|
|
18489
18641
|
case " ": {
|
|
18490
18642
|
e.preventDefault();
|
|
18491
|
-
let t = get(
|
|
18492
|
-
get(at) >= 0 && t !== void 0 &&
|
|
18643
|
+
let t = get(vt).at(get(at));
|
|
18644
|
+
get(at) >= 0 && t !== void 0 && wt(t);
|
|
18493
18645
|
break;
|
|
18494
18646
|
}
|
|
18495
18647
|
case "Tab":
|
|
18496
|
-
|
|
18648
|
+
St();
|
|
18497
18649
|
break;
|
|
18498
18650
|
default:
|
|
18499
|
-
e.key.length === 1 && !e.ctrlKey && !e.metaKey && (e.preventDefault(),
|
|
18651
|
+
e.key.length === 1 && !e.ctrlKey && !e.metaKey && (e.preventDefault(), At(e.key));
|
|
18500
18652
|
break;
|
|
18501
18653
|
}
|
|
18502
18654
|
}
|
|
18503
|
-
function
|
|
18655
|
+
function At(e) {
|
|
18504
18656
|
get(ct) !== null && clearTimeout(get(ct)), set(ot, get(ot) + e.toLowerCase()), set(ct, setTimeout(() => {
|
|
18505
18657
|
set(ot, "");
|
|
18506
18658
|
}, 500), !0);
|
|
18507
|
-
let t = get(
|
|
18508
|
-
t >= 0 && (set(at, t, !0),
|
|
18509
|
-
}
|
|
18510
|
-
function At(e) {
|
|
18511
|
-
eventHitsInside(get(be), e) || xt();
|
|
18659
|
+
let t = get(vt).findIndex((e) => e.label.toLowerCase().startsWith(get(ot)));
|
|
18660
|
+
t >= 0 && (set(at, t, !0), Tt(get(at)));
|
|
18512
18661
|
}
|
|
18513
18662
|
function jt(e) {
|
|
18663
|
+
eventHitsInside(get(be), e) || St();
|
|
18664
|
+
}
|
|
18665
|
+
function Mt(e) {
|
|
18514
18666
|
return { destroy: registerDismissible({
|
|
18515
18667
|
element: () => get(G),
|
|
18516
|
-
onEscape:
|
|
18517
|
-
onOutside:
|
|
18668
|
+
onEscape: St,
|
|
18669
|
+
onOutside: jt
|
|
18518
18670
|
}) };
|
|
18519
18671
|
}
|
|
18520
18672
|
onDestroy(() => {
|
|
18521
18673
|
get(ct) !== null && clearTimeout(get(ct));
|
|
18522
18674
|
});
|
|
18523
|
-
var
|
|
18675
|
+
var Nt = {
|
|
18524
18676
|
get items() {
|
|
18525
18677
|
return n();
|
|
18526
18678
|
},
|
|
@@ -18623,12 +18775,12 @@ function Menu(e, t) {
|
|
|
18623
18775
|
set usePortal(e = !1) {
|
|
18624
18776
|
ne(e), flushSync();
|
|
18625
18777
|
}
|
|
18626
|
-
},
|
|
18778
|
+
}, Pt = root_7$23(), It = child(Pt), Lt = (e) => {
|
|
18627
18779
|
var t = root_1$51(), n = child(t), a = (e) => {
|
|
18628
18780
|
var t = comment();
|
|
18629
18781
|
snippet(first_child(t), o, () => ({
|
|
18630
|
-
onclick:
|
|
18631
|
-
onkeydown:
|
|
18782
|
+
onclick: bt,
|
|
18783
|
+
onkeydown: Ot,
|
|
18632
18784
|
ariaHaspopup: "menu",
|
|
18633
18785
|
ariaExpanded: i()
|
|
18634
18786
|
})), append(e, t);
|
|
@@ -18636,12 +18788,12 @@ function Menu(e, t) {
|
|
|
18636
18788
|
if_block(n, (e) => {
|
|
18637
18789
|
typeof o() == "function" && e(a);
|
|
18638
18790
|
}), reset(t), bind_this(t, (e) => set(Me, e), () => get(Me)), append(e, t);
|
|
18639
|
-
},
|
|
18791
|
+
}, Rt = (e) => {
|
|
18640
18792
|
var t = root_2$40(), n = child(t), a = (e) => {
|
|
18641
18793
|
var t = comment();
|
|
18642
18794
|
snippet(first_child(t), o, () => ({
|
|
18643
|
-
onclick:
|
|
18644
|
-
onkeydown:
|
|
18795
|
+
onclick: bt,
|
|
18796
|
+
onkeydown: Dt,
|
|
18645
18797
|
ariaHaspopup: "menu",
|
|
18646
18798
|
ariaExpanded: i()
|
|
18647
18799
|
})), append(e, t);
|
|
@@ -18650,14 +18802,14 @@ function Menu(e, t) {
|
|
|
18650
18802
|
typeof o() == "function" && e(a);
|
|
18651
18803
|
}), reset(t), bind_this(t, (e) => set(Me, e), () => get(Me)), template_effect(() => {
|
|
18652
18804
|
set_attribute(t, "aria-expanded", i()), set_attribute(t, "aria-label", k() ?? null);
|
|
18653
|
-
}), delegated("click", t,
|
|
18805
|
+
}), delegated("click", t, bt), delegated("keydown", t, Dt), append(e, t);
|
|
18654
18806
|
};
|
|
18655
|
-
if_block(
|
|
18656
|
-
s() ? e(
|
|
18807
|
+
if_block(It, (e) => {
|
|
18808
|
+
s() ? e(Lt) : e(Rt, -1);
|
|
18657
18809
|
});
|
|
18658
|
-
var
|
|
18810
|
+
var zt = sibling(It, 2), Bt = (e) => {
|
|
18659
18811
|
var t = root_6$25();
|
|
18660
|
-
let
|
|
18812
|
+
let o;
|
|
18661
18813
|
each(t, 21, n, (e) => e.value, (e, t) => {
|
|
18662
18814
|
var n = comment(), i = first_child(n), o = (e) => {
|
|
18663
18815
|
append(e, root_3$36());
|
|
@@ -18688,22 +18840,22 @@ function Menu(e, t) {
|
|
|
18688
18840
|
"menu-item-disabled": get(t).disabled === !0,
|
|
18689
18841
|
"menu-item-selected": h() != null && get(t).value === h()
|
|
18690
18842
|
}), set_attribute(n, "role", get(re)), set_attribute(n, "id", get(t).id), set_attribute(n, "tabindex", get(t).disabled === !0 || S() === "listbox" ? -1 : 0), set_attribute(n, "aria-disabled", get(t).disabled === !0 ? "true" : null), set_attribute(n, "aria-selected", e), set_attribute(n, "data-pw", typeof a() == "string" ? `${a()}-item-${get(t).value}` : null), set_attribute(n, "testid", typeof a() == "string" ? `${a()}-item-${get(t).value}` : null), set_text(l, get(t).label);
|
|
18691
|
-
}, [() => S() === "listbox" ? h() == null ? get(at) ===
|
|
18692
|
-
get(t).disabled !== !0 && set(at,
|
|
18843
|
+
}, [() => S() === "listbox" ? h() == null ? get(at) === Et(get(t)) ? !0 : null : get(t).value === h() : null]), delegated("click", n, () => wt(get(t))), event("focus", n, () => {
|
|
18844
|
+
get(t).disabled !== !0 && set(at, Et(get(t)), !0);
|
|
18693
18845
|
}), append(e, n);
|
|
18694
18846
|
};
|
|
18695
18847
|
if_block(i, (e) => {
|
|
18696
18848
|
get(t).separator === !0 ? e(o) : e(s, -1);
|
|
18697
18849
|
}), append(e, n);
|
|
18698
|
-
}), reset(t), bind_this(t, (e) => set(be, e), () => get(be)), effect(() => bind_element_size(t, "clientWidth", (e) => set(Re, e))), effect(() => bind_element_size(t, "clientHeight", (e) => set(Ue, e))), action(t, (e) =>
|
|
18699
|
-
|
|
18700
|
-
}), delegated("keydown", t,
|
|
18850
|
+
}), reset(t), bind_this(t, (e) => set(be, e), () => get(be)), effect(() => bind_element_size(t, "clientWidth", (e) => set(Re, e))), effect(() => bind_element_size(t, "clientHeight", (e) => set(Ue, e))), action(t, (e) => gt?.(e)), action(t, (e) => Mt?.(e)), template_effect(() => {
|
|
18851
|
+
o = set_class(t, 1, `menu-dropdown menu-dropdown-${(te() === "auto" ? get(lt) : te()) ?? ""}`, "svelte-ahcnny", o, { "menu-dropdown-measuring": get(ut) }), set_attribute(t, "role", S()), set_attribute(t, "id", R()), set_attribute(t, "aria-label", C()), t.inert = !i(), set_style(t, get(_t));
|
|
18852
|
+
}), delegated("keydown", t, kt), transition(1, t, () => tokenizedFly, () => mt), transition(2, t, () => tokenizedFly, () => mt), append(e, t);
|
|
18701
18853
|
};
|
|
18702
|
-
return if_block(
|
|
18703
|
-
i() && e(
|
|
18704
|
-
}), reset(
|
|
18705
|
-
set_class(
|
|
18706
|
-
}), append(e,
|
|
18854
|
+
return if_block(zt, (e) => {
|
|
18855
|
+
i() && e(Bt);
|
|
18856
|
+
}), reset(Pt), bind_this(Pt, (e) => set(G, e), () => get(G)), template_effect(() => {
|
|
18857
|
+
set_class(Pt, 1, `menu-container ${f() ?? "" ?? ""}`, "svelte-ahcnny"), set_attribute(Pt, "data-pw", typeof a() == "string" ? a() : null), set_attribute(Pt, "testid", typeof a() == "string" ? a() : null);
|
|
18858
|
+
}), append(e, Pt), pop(Nt);
|
|
18707
18859
|
}
|
|
18708
18860
|
delegate(["click", "keydown"]), create_custom_element(Menu, {
|
|
18709
18861
|
items: {},
|
|
@@ -18840,8 +18992,50 @@ function ModalAnimation(e, t) {
|
|
|
18840
18992
|
};
|
|
18841
18993
|
default: return e;
|
|
18842
18994
|
}
|
|
18843
|
-
}), u = /* @__PURE__ */ user_derived(() => ({ duration: prefersReducedMotion() ? 0 : 300 })), f = /* @__PURE__ */ user_derived(() =>
|
|
18844
|
-
|
|
18995
|
+
}), u = /* @__PURE__ */ user_derived(() => ({ duration: prefersReducedMotion() ? 0 : 300 })), f = /* @__PURE__ */ user_derived(() => ({
|
|
18996
|
+
x: get(l).x,
|
|
18997
|
+
y: get(l).y,
|
|
18998
|
+
durationTokens: ["--modal-content-open-transition-duration", "--motion-duration"],
|
|
18999
|
+
fallbackDuration: get(l).duration,
|
|
19000
|
+
distanceTokens: ["--modal-content-open-transition-distance", "--distance-overlay"],
|
|
19001
|
+
fallbackDistance: 60,
|
|
19002
|
+
easingTokens: [
|
|
19003
|
+
"--modal-content-open-transition-easing",
|
|
19004
|
+
"--ease-smooth-out",
|
|
19005
|
+
"--motion-easing"
|
|
19006
|
+
]
|
|
19007
|
+
})), p = /* @__PURE__ */ user_derived(() => ({
|
|
19008
|
+
x: get(l).x,
|
|
19009
|
+
y: get(l).y,
|
|
19010
|
+
durationTokens: ["--modal-content-close-transition-duration", "--motion-duration"],
|
|
19011
|
+
fallbackDuration: get(l).duration,
|
|
19012
|
+
distanceTokens: ["--modal-content-close-transition-distance", "--distance-overlay"],
|
|
19013
|
+
fallbackDistance: 60,
|
|
19014
|
+
easingTokens: [
|
|
19015
|
+
"--modal-content-close-transition-easing",
|
|
19016
|
+
"--ease-smooth-out",
|
|
19017
|
+
"--motion-easing"
|
|
19018
|
+
]
|
|
19019
|
+
})), h = /* @__PURE__ */ user_derived(() => ({
|
|
19020
|
+
durationTokens: ["--modal-content-open-transition-duration", "--motion-duration"],
|
|
19021
|
+
fallbackDuration: get(u).duration,
|
|
19022
|
+
easingTokens: [
|
|
19023
|
+
"--modal-content-open-transition-easing",
|
|
19024
|
+
"--ease-smooth-out",
|
|
19025
|
+
"--motion-easing"
|
|
19026
|
+
],
|
|
19027
|
+
easing: linear$1
|
|
19028
|
+
})), S = /* @__PURE__ */ user_derived(() => ({
|
|
19029
|
+
durationTokens: ["--modal-content-close-transition-duration", "--motion-duration"],
|
|
19030
|
+
fallbackDuration: get(u).duration,
|
|
19031
|
+
easingTokens: [
|
|
19032
|
+
"--modal-content-close-transition-easing",
|
|
19033
|
+
"--ease-smooth-out",
|
|
19034
|
+
"--motion-easing"
|
|
19035
|
+
],
|
|
19036
|
+
easing: linear$1
|
|
19037
|
+
})), C = /* @__PURE__ */ user_derived(() => o() == null ? i() === "top" || i() === "bottom" : o() !== "fade"), k = /* @__PURE__ */ user_derived(() => a() === "ALL");
|
|
19038
|
+
var R = {
|
|
18845
19039
|
get enable() {
|
|
18846
19040
|
return n();
|
|
18847
19041
|
},
|
|
@@ -18878,38 +19072,38 @@ function ModalAnimation(e, t) {
|
|
|
18878
19072
|
set testId(e) {
|
|
18879
19073
|
c(e), flushSync();
|
|
18880
19074
|
}
|
|
18881
|
-
},
|
|
19075
|
+
}, te = comment(), ne = first_child(te), re = (e) => {
|
|
18882
19076
|
var t = comment(), n = first_child(t), i = (e) => {
|
|
18883
19077
|
var t = root$54();
|
|
18884
19078
|
snippet(child(t), () => s() ?? noop), reset(t), template_effect(() => {
|
|
18885
19079
|
set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null);
|
|
18886
|
-
}), transition(5, t, () =>
|
|
19080
|
+
}), transition(5, t, () => tokenizedFly, () => get(f)), transition(6, t, () => tokenizedFly, () => get(p)), append(e, t);
|
|
18887
19081
|
}, a = (e) => {
|
|
18888
19082
|
var t = root$54();
|
|
18889
19083
|
snippet(child(t), () => s() ?? noop), reset(t), template_effect(() => {
|
|
18890
19084
|
set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null);
|
|
18891
|
-
}), transition(5, t, () =>
|
|
19085
|
+
}), transition(5, t, () => tokenizedFly, () => get(f)), append(e, t);
|
|
18892
19086
|
}, o = (e) => {
|
|
18893
19087
|
var t = root$54();
|
|
18894
19088
|
snippet(child(t), () => s() ?? noop), reset(t), template_effect(() => {
|
|
18895
19089
|
set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null);
|
|
18896
|
-
}), transition(5, t, () =>
|
|
18897
|
-
},
|
|
19090
|
+
}), transition(5, t, () => tokenizedFly, () => get(h)), transition(6, t, () => tokenizedFly, () => get(S)), append(e, t);
|
|
19091
|
+
}, l = (e) => {
|
|
18898
19092
|
var t = root$54();
|
|
18899
19093
|
snippet(child(t), () => s() ?? noop), reset(t), template_effect(() => {
|
|
18900
19094
|
set_attribute(t, "data-pw", typeof c() == "string" ? c() : null), set_attribute(t, "testid", typeof c() == "string" ? c() : null);
|
|
18901
|
-
}), transition(5, t, () =>
|
|
19095
|
+
}), transition(5, t, () => tokenizedFly, () => get(h)), append(e, t);
|
|
18902
19096
|
};
|
|
18903
19097
|
if_block(n, (e) => {
|
|
18904
|
-
get(
|
|
19098
|
+
get(C) && get(k) ? e(i) : get(C) ? e(a, 1) : get(k) ? e(o, 2) : e(l, -1);
|
|
18905
19099
|
}), append(e, t);
|
|
18906
|
-
},
|
|
19100
|
+
}, G = (e) => {
|
|
18907
19101
|
var t = comment();
|
|
18908
19102
|
snippet(first_child(t), () => s() ?? noop), append(e, t);
|
|
18909
19103
|
};
|
|
18910
|
-
return if_block(
|
|
18911
|
-
n() ? e(
|
|
18912
|
-
}), append(e,
|
|
19104
|
+
return if_block(ne, (e) => {
|
|
19105
|
+
n() ? e(re) : e(G, -1);
|
|
19106
|
+
}), append(e, te), pop(R);
|
|
18913
19107
|
}
|
|
18914
19108
|
create_custom_element(ModalAnimation, {
|
|
18915
19109
|
enable: {},
|
|
@@ -18924,8 +19118,16 @@ create_custom_element(ModalAnimation, {
|
|
|
18924
19118
|
var root$53 = /* @__PURE__ */ from_html("<div><!></div>");
|
|
18925
19119
|
function OverlayAnimation(e, t) {
|
|
18926
19120
|
push(t, !0);
|
|
18927
|
-
let n = prop(t, "children", 7), i = prop(t, "testId", 7), a = prop(t, "fadeIn", 7, !1)
|
|
18928
|
-
|
|
19121
|
+
let n = prop(t, "children", 7), i = prop(t, "testId", 7), a = prop(t, "fadeIn", 7, !1), o = {
|
|
19122
|
+
durationTokens: ["--modal-overlay-open-transition-duration", "--motion-duration"],
|
|
19123
|
+
fallbackDuration: 350,
|
|
19124
|
+
easing: linear$1
|
|
19125
|
+
}, s = {
|
|
19126
|
+
durationTokens: ["--modal-overlay-close-transition-duration", "--motion-duration"],
|
|
19127
|
+
fallbackDuration: 350,
|
|
19128
|
+
easing: linear$1
|
|
19129
|
+
};
|
|
19130
|
+
var c = {
|
|
18929
19131
|
get children() {
|
|
18930
19132
|
return n();
|
|
18931
19133
|
},
|
|
@@ -18944,20 +19146,20 @@ function OverlayAnimation(e, t) {
|
|
|
18944
19146
|
set fadeIn(e = !1) {
|
|
18945
19147
|
a(e), flushSync();
|
|
18946
19148
|
}
|
|
18947
|
-
},
|
|
19149
|
+
}, l = comment(), u = first_child(l), f = (e) => {
|
|
18948
19150
|
var t = root$53();
|
|
18949
19151
|
snippet(child(t), () => n() ?? noop), reset(t), template_effect(() => {
|
|
18950
19152
|
set_attribute(t, "data-pw", typeof i() == "string" ? i() : null), set_attribute(t, "testid", typeof i() == "string" ? i() : null);
|
|
18951
|
-
}), transition(5, t, () =>
|
|
18952
|
-
},
|
|
19153
|
+
}), transition(5, t, () => tokenizedFly, () => o), transition(2, t, () => tokenizedFly, () => s), append(e, t);
|
|
19154
|
+
}, p = (e) => {
|
|
18953
19155
|
var t = root$53();
|
|
18954
19156
|
snippet(child(t), () => n() ?? noop), reset(t), template_effect(() => {
|
|
18955
19157
|
set_attribute(t, "data-pw", typeof i() == "string" ? i() : null), set_attribute(t, "testid", typeof i() == "string" ? i() : null);
|
|
18956
|
-
}), transition(2, t, () =>
|
|
19158
|
+
}), transition(2, t, () => tokenizedFly, () => s), append(e, t);
|
|
18957
19159
|
};
|
|
18958
|
-
return if_block(
|
|
18959
|
-
a() ? e(
|
|
18960
|
-
}), append(e,
|
|
19160
|
+
return if_block(u, (e) => {
|
|
19161
|
+
a() ? e(f) : e(p, -1);
|
|
19162
|
+
}), append(e, l), pop(c);
|
|
18961
19163
|
}
|
|
18962
19164
|
create_custom_element(OverlayAnimation, {
|
|
18963
19165
|
children: {},
|
|
@@ -18987,7 +19189,9 @@ function Modal(e, t) {
|
|
|
18987
19189
|
}
|
|
18988
19190
|
};
|
|
18989
19191
|
}, Ct = () => {
|
|
18990
|
-
set(a, !0),
|
|
19192
|
+
set(a, !0), bt(() => {
|
|
19193
|
+
be()?.(), ct()?.();
|
|
19194
|
+
});
|
|
18991
19195
|
}, wt = (e) => {
|
|
18992
19196
|
Me()?.(e);
|
|
18993
19197
|
}, Tt = (e) => {
|
|
@@ -19010,7 +19214,9 @@ function Modal(e, t) {
|
|
|
19010
19214
|
t !== null && (e.preventDefault(), t.focus());
|
|
19011
19215
|
}
|
|
19012
19216
|
}, At = () => {
|
|
19013
|
-
|
|
19217
|
+
bt(() => {
|
|
19218
|
+
at()?.(), ct()?.();
|
|
19219
|
+
});
|
|
19014
19220
|
}, jt = (e) => {
|
|
19015
19221
|
(e.key === "Enter" || e.key === " ") && get(vt) && e.target === get(n) && (e.preventDefault(), bt(() => {
|
|
19016
19222
|
at()?.(), ct()?.();
|
|
@@ -20073,7 +20279,7 @@ function computeSelectDropdownPosition(e) {
|
|
|
20073
20279
|
//#region src/lib/Select/Select.svelte
|
|
20074
20280
|
var root_1$46 = /* @__PURE__ */ from_html("<div class=\"select-empty svelte-52lifo\">No results</div>"), root_2$35 = /* @__PURE__ */ from_html("<span class=\"select-option-check svelte-52lifo\"></span>"), root_3$32 = /* @__PURE__ */ from_html("<span class=\"select-option-dash svelte-52lifo\"></span>"), root_4$27 = /* @__PURE__ */ from_html("<span aria-hidden=\"true\"><!></span>"), root_5$25 = /* @__PURE__ */ from_html("<div><!> </div>"), root_6$23 = /* @__PURE__ */ from_html("<span class=\"select-option-tick svelte-52lifo\" aria-hidden=\"true\"></span>"), root_7$21 = /* @__PURE__ */ from_html("<div><!> <!> <span class=\"select-option-label svelte-52lifo\"> </span> <!></div>"), root_8$19 = /* @__PURE__ */ from_html("<div class=\"select-bottom-content svelte-52lifo\"><!></div>"), root_9$16 = /* @__PURE__ */ from_html("<!> <!>", 1), root_10$15 = /* @__PURE__ */ from_html("<input type=\"hidden\"/>"), root_11$13 = /* @__PURE__ */ from_html("<input class=\"select-search svelte-52lifo\" type=\"text\" autocomplete=\"off\"/>"), root_12$12 = /* @__PURE__ */ from_html("<span class=\"select-placeholder svelte-52lifo\"> </span>"), root_13$10 = /* @__PURE__ */ from_html("<span> </span>"), root_14$9 = /* @__PURE__ */ from_html("<button type=\"button\" class=\"select-clear svelte-52lifo\" aria-label=\"Clear selection\"><span aria-hidden=\"true\">×</span></button>"), root_15$7 = /* @__PURE__ */ from_html("<div role=\"alert\" class=\"select-error-message svelte-52lifo\"> </div>"), root_16$6 = /* @__PURE__ */ from_html("<div><input class=\"select-menu-search svelte-52lifo\" type=\"search\" aria-label=\"Search options\" autocomplete=\"off\"/> <div class=\"select-menu-list svelte-52lifo\" role=\"listbox\" tabindex=\"-1\"><!></div> <!></div>"), root_17$6 = /* @__PURE__ */ from_html("<div role=\"listbox\"><!></div>"), root_18$5 = /* @__PURE__ */ from_html("<div><!> <div><div><!> <!> <span class=\"select-arrow svelte-52lifo\"></span></div> <!></div> <!> <!></div>"), $$css$95 = {
|
|
20075
20281
|
hash: "svelte-52lifo",
|
|
20076
|
-
code: ".select.svelte-52lifo {position:relative;width:var(--select-width, 100%);font-family:var(--select-font-family, inherit);font-size:var(--select-font-size, 14px);color:var(--select-color, #333333);}.select.disabled.svelte-52lifo {opacity:var(--select-disabled-opacity, 0.5);cursor:var(--select-disabled-cursor, not-allowed);pointer-events:none;}.select-trigger.svelte-52lifo {display:flex;flex-wrap:wrap;align-items:center;gap:var(--select-trigger-gap, 4px);min-height:var(--select-trigger-min-height, 40px);padding:var(--select-trigger-padding, 8px 12px);background:var(--select-trigger-background, #ffffff);border:var(--select-trigger-border, 1px solid #cccccc);border-radius:var(--select-trigger-border-radius, var(--radius, 4px));cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:var(--select-trigger-transition, border-color 0.15s, box-shadow 0.15s);}.select-trigger.svelte-52lifo .select-left-icon {--image-width: var(--select-left-icon-size, 16px);--image-height: var(--select-left-icon-size, 16px);--image-object-fit: contain;\n\n /* The icon inlines, so a currentColor asset resolves against this. Defaults to\n `inherit` — the trigger's text colour, which is what it already did — so this is\n a hook, not a change. Without it a consumer cannot tint the icon independently\n of the label, and an icon migrated to currentColor is forced to match its label\n exactly, flattening any deliberate muted-icon/strong-label hierarchy. */color:var(--select-left-icon-color, inherit);flex:none;}.select-trigger.svelte-52lifo:hover:not(.disabled:where(.svelte-52lifo) .select-trigger:where(.svelte-52lifo)) {border-color:var(--select-trigger-hover-border-color, #999999);}.select-trigger.svelte-52lifo:focus-within,\n .select.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-trigger-focus-border-color, #2563eb);box-shadow:var(--select-trigger-focus-shadow, 0 0 0 2px rgba(37, 99, 235, 0.2));}\n\n /* Pressed feedback on the trigger. `:active` only, so it lasts exactly as\n long as the pointer is down and never lingers as a stuck state the way a\n class-driven one can. */.select.svelte-52lifo:not(.disabled) .select-trigger:where(.svelte-52lifo):active {background:var(--select-trigger-pressed-background, #ededed);}\n\n /* The error border has to outrank BOTH hover and focus/open, or the field\n stops reading as invalid the moment the user enters it -- which is the one\n moment they most need to see it. Listed after them, at equal or higher\n specificity, rather than reached for with !important. */.select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo),\n .select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):hover,\n .select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):focus-within,\n .select.error.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-trigger-error-border-color, #dc2626);}.select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):focus-within,\n .select.error.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {box-shadow:var(--select-trigger-error-shadow, 0 0 0 2px rgba(220, 38, 38, 0.2));}.select-error-message.svelte-52lifo {margin-top:var(--select-error-message-margin-top, 4px);font-size:var(--select-error-message-font-size, 12px);color:var(--select-error-message-color, #dc2626);}.select-control.svelte-52lifo {position:relative;}.select-control.has-clear.svelte-52lifo .select-trigger:where(.svelte-52lifo) {padding-inline-end:calc(var(--select-clear-size, 18px) + 36px);}.select-control.has-clear.svelte-52lifo .select-arrow:where(.svelte-52lifo) {position:absolute;right:12px;}.select-clear.svelte-52lifo {position:absolute;right:32px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--select-clear-size, 18px);height:var(--select-clear-size, 18px);margin:0;padding:0;border:none;border-radius:var(--select-clear-border-radius, var(--radius, 4px));background:var(--select-clear-background, transparent);color:var(--select-clear-color, #666666);font-size:var(--select-clear-font-size, 16px);line-height:1;cursor:pointer;}.select-clear.svelte-52lifo:focus-visible {outline:var(--select-clear-focus-outline, 2px solid currentColor);outline-offset:2px;}.select-clear.svelte-52lifo:hover {background:var(--select-clear-hover-background, #ededed);color:var(--select-clear-hover-color, #111111);}.select-clear.svelte-52lifo:active {background:var(--select-clear-pressed-background, #e0e0e0);}.select-value.svelte-52lifo {flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:var(--select-value-align, left);}.select-placeholder.svelte-52lifo {flex:1;color:var(--select-placeholder-color, #666666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:var(--select-value-align, left);}.select-search.svelte-52lifo {flex:1;min-width:60px;border:none;outline:none;background:transparent;font-family:inherit;font-size:inherit;color:inherit;padding:0;cursor:text;}.select-search.svelte-52lifo::placeholder {color:var(--select-placeholder-color, #6b7280);}.select-arrow.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;width:var(--select-arrow-size, 16px);height:var(--select-arrow-size, 16px);color:var(--select-arrow-color, #666666);flex-shrink:0;transition:transform var(--select-arrow-transition-duration, var(--motion-duration, 0.15s))\n var(--select-arrow-transition-easing, var(--motion-easing, ease));}.select.open.svelte-52lifo .select-arrow:where(.svelte-52lifo) {transform:rotate(180deg);}.select-arrow.svelte-52lifo svg {width:100%;height:100%;}\n\n /* Anchors the in-flow panel above the trigger. `margin-top` is what the\n downward panel uses for the gap, so it has to be unset here or the panel\n sits a gap's width too high. */.select-dropdown.select-dropdown-up.svelte-52lifo {top:auto;bottom:100%;margin-top:0;margin-bottom:var(--select-dropdown-gap, 4px);}\n\n /* One-tick measuring pass for placement=\"auto\": the panel needs rendered\n dimensions before the corner is chosen, without a visible flash at the\n wrong corner. */.select-dropdown.select-dropdown-measuring.svelte-52lifo {visibility:hidden;}.select-dropdown.svelte-52lifo {position:absolute;top:100%;left:var(--select-dropdown-left, 0);right:var(--select-dropdown-right, 0);min-width:var(--select-dropdown-min-width, auto);max-width:var(--select-dropdown-max-width, none);width:var(--select-dropdown-width, auto);margin-top:var(--select-dropdown-gap, 4px);background:var(--select-dropdown-background, #ffffff);border:var(--select-dropdown-border, 1px solid #cccccc);border-radius:var(--select-dropdown-border-radius, var(--radius, 4px));box-shadow:var(--select-dropdown-shadow, 0 4px 12px rgba(0, 0, 0, 0.1));max-height:var(--select-dropdown-max-height, 200px);overflow-y:auto;z-index:var(--select-dropdown-z-index, 10);}\n\n /* With the search box inside the panel, the PANEL must stop scrolling and\n the list scroll instead -- otherwise the search box scrolls away as soon\n as the user moves down the results, which is the one control they still\n need. The max-height moves down with the scrolling, so the panel keeps\n growing to fit the search box plus a list of the same height as before. */.select-dropdown.svelte-52lifo:has(> .select-menu-list:where(.svelte-52lifo)) {max-height:none;overflow-y:visible;display:flex;flex-direction:column;}.select-menu-list.svelte-52lifo {max-height:var(--select-dropdown-max-height, 200px);overflow-y:auto;}.select-menu-search.svelte-52lifo {flex:none;margin:var(--select-menu-search-margin, 6px);padding:var(--select-menu-search-padding, 6px 8px);border:var(--select-menu-search-border, 1px solid #cccccc);border-radius:var(--select-menu-search-border-radius, var(--radius, 4px));background:var(--select-menu-search-background, #ffffff);color:var(--select-menu-search-color, inherit);font-family:inherit;font-size:var(--select-menu-search-font-size, inherit);outline:none;}.select-menu-search.svelte-52lifo:focus-visible {border-color:var(--select-menu-search-focus-border-color, #2563eb);box-shadow:var(--select-menu-search-focus-shadow, 0 0 0 2px rgba(37, 99, 235, 0.2));}.select-dropdown-right.svelte-52lifo {left:auto;right:var(--select-dropdown-right, 0);min-width:var(--select-dropdown-min-width, 100%);max-width:var(--select-dropdown-max-width, none);width:var(--select-dropdown-width, max-content);}.select-dropdown.select-dropdown-portal.svelte-52lifo {\n /* Portaled to <body>: fixed positioning escapes overflow/scroll ancestors\n (e.g. a table cell). Placement (top/left/width/min-width) is set inline\n from the trigger rect, so neutralise the in-flow anchoring here. */position:fixed;right:auto;margin-top:0;\n /* In the root stacking context the panel competes with modals/sheets rather\n than painting above same-container siblings, so default it into the\n top-layer band (consumers still override via --select-dropdown-z-index). */z-index:var(--select-dropdown-z-index, 1000);}.select-option.svelte-52lifo {padding:var(--select-option-padding, 8px 12px);color:var(--select-option-color, #333333);font-size:var(--select-option-font-size, inherit);cursor:pointer;transition:background var(--select-option-transition-duration, var(--motion-duration, 0.1s))\n var(--select-option-transition-easing, var(--motion-easing, ease));}\n\n /* Per-option leading icon (SelectItem.icon). Kept inline + vertically centred so\n it needs no change to the option's display and can't regress icon-less lists. */.select-option.svelte-52lifo .select-option-icon {--image-width: var(--select-option-icon-size, 16px);--image-height: var(--select-option-icon-size, 16px);--image-object-fit: contain;color:var(--select-option-icon-color, inherit);vertical-align:middle;margin-right:var(--select-option-icon-gap, 8px);}.select-option.multi.svelte-52lifo {display:flex;align-items:center;gap:var(--select-option-gap, 0);}.select-option.svelte-52lifo:hover,\n .select-option.highlighted.svelte-52lifo {background:var(--select-option-hover-background, #f0f0f0);color:var(--select-option-hover-color, var(--select-option-color, #333333));}.select-option.selected.svelte-52lifo {background:var(--select-option-selected-background, #e8f0fe);color:var(--select-option-selected-color, var(--select-option-color, #333333));}.select-option-disabled.svelte-52lifo {opacity:var(--select-option-disabled-opacity, 0.4);cursor:var(--select-option-disabled-cursor, not-allowed);pointer-events:none;}.select-option.selected.highlighted.svelte-52lifo {background:var(\n --select-option-selected-hover-background,\n var(--select-option-selected-background, #e8f0fe)\n );}\n\n /* Pressed feedback comes last, and each selector carries enough specificity\n to outrank its non-active counterpart above. An option is always hovered\n when pressed and is often selected too, so a single low-specificity rule\n earlier in the sheet would be correct in isolation and invisible in\n practice -- which is how a pressed state ends up shipping as dead CSS.\n A press on an already-selected row still has to confirm the tap landed. */.select-option.svelte-52lifo:active,\n .select-option.selected.svelte-52lifo:active,\n .select-option.selected.highlighted.svelte-52lifo:active {background:var(--select-option-pressed-background, #ededed);}.select-option-indicator.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:var(--select-option-indicator-size, 18px);height:var(--select-option-indicator-size, 18px);border:var(--select-option-indicator-border, 2px solid #757575);border-radius:var(--select-option-indicator-border-radius, var(--radius, 4px));background-color:var(--select-option-indicator-background, transparent);color:var(--select-option-indicator-color, currentColor);transition:background-color\n var(--select-option-indicator-transition-duration, var(--motion-duration, 0.15s))\n var(--select-option-indicator-transition-easing, var(--motion-easing, ease)),\n border-color var(--select-option-indicator-transition-duration, var(--motion-duration, 0.15s))\n var(--select-option-indicator-transition-easing, var(--motion-easing, ease));}.select-option-indicator.checked.svelte-52lifo {background-color:var(--select-option-indicator-checked-background, #2196f3);border-color:var(--select-option-indicator-checked-border-color, #2196f3);}.select-option-check.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;width:var(--select-option-indicator-check-size, 12px);height:var(--select-option-indicator-check-size, 12px);color:var(--select-option-indicator-check-color, #ffffff);}.select-option-check.svelte-52lifo svg {width:100%;height:100%;}.select-option-indicator.indeterminate.svelte-52lifo {background-color:var(--select-option-indicator-checked-background, #2196f3);border-color:var(--select-option-indicator-checked-border-color, #2196f3);}.select-option-dash.svelte-52lifo {width:var(--select-option-indicator-dash-size, 10px);height:var(--select-option-indicator-dash-thickness, 2px);border-radius:1px;background-color:var(--select-option-indicator-dash-color, #ffffff);}.select-option.select-all.svelte-52lifo {border-bottom:var(--select-all-border, none);font-weight:var(--select-all-font-weight, inherit);}.select-empty.svelte-52lifo {padding:var(--select-empty-padding, 8px 12px);color:var(--select-empty-color, #999999);font-style:var(--select-empty-font-style, italic);font-size:var(--select-empty-font-size, inherit);}.select-bottom-content.svelte-52lifo {border-top:var(--select-bottom-content-border, none);padding:var(--select-bottom-content-padding, 8px 12px);}.select-trigger.svelte-52lifo .pill {--pill-background: var(--select-pill-background, #e0e0e0);--pill-color: var(--select-pill-color, #333333);--pill-border-radius: var(--select-pill-border-radius, 999px);--pill-padding: var(--select-pill-padding, 2px 8px);--pill-font-size: var(--select-pill-font-size, 13px);}\n\n /* Ghost hierarchy: transparent, borderless trigger */.select.ghost.svelte-52lifo .select-trigger:where(.svelte-52lifo) {background:var(--select-ghost-trigger-background, transparent);border-color:var(--select-ghost-trigger-border-color, transparent);box-shadow:none;}.select.ghost.svelte-52lifo .select-trigger:where(.svelte-52lifo):hover:not(.disabled:where(.svelte-52lifo) .select-trigger:where(.svelte-52lifo)) {border-color:var(--select-ghost-trigger-hover-border-color, transparent);background:var(--select-ghost-trigger-hover-background, rgba(0, 0, 0, 0.04));}.select.ghost.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-ghost-trigger-open-border-color, transparent);background:var(--select-ghost-trigger-open-background, rgba(0, 0, 0, 0.06));box-shadow:none;}\n\n /* Single-select right-edge tick (showSelectedTick) */.select-option.tickable.svelte-52lifo {display:flex;align-items:center;gap:8px;}.select-option.tickable.svelte-52lifo .select-option-label:where(.svelte-52lifo) {flex:1 1 auto;min-width:0;}.select-option-tick.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--select-option-tick-size, 16px);height:var(--select-option-tick-size, 16px);color:var(--select-option-tick-color, #2563eb);}.select-option-tick.svelte-52lifo svg {width:100%;height:100%;}\n\n /* The chevron rotates between closed and open. Small, but it is a transform,\n and the two end states are each meaningful, so dropping the tween just makes\n the flip instant. */\n @media (prefers-reduced-motion: reduce) {.select-arrow.svelte-52lifo {transition:none;}\n }"
|
|
20282
|
+
code: ".select.svelte-52lifo {position:relative;width:var(--select-width, 100%);font-family:var(--select-font-family, inherit);font-size:var(--select-font-size, 14px);color:var(--select-color, #333333);}.select.disabled.svelte-52lifo {opacity:var(--select-disabled-opacity, 0.5);cursor:var(--select-disabled-cursor, not-allowed);pointer-events:none;}.select-trigger.svelte-52lifo {display:flex;flex-wrap:wrap;align-items:center;gap:var(--select-trigger-gap, 4px);min-height:var(--select-trigger-min-height, 40px);padding:var(--select-trigger-padding, 8px 12px);background:var(--select-trigger-background, #ffffff);border:var(--select-trigger-border, 1px solid #cccccc);border-radius:var(--select-trigger-border-radius, var(--radius, 4px));cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:var(\n --select-trigger-transition,\n border-color\n var(\n --select-trigger-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--select-trigger-transition-easing, var(--motion-easing, ease)),\n box-shadow\n var(\n --select-trigger-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--select-trigger-transition-easing, var(--motion-easing, ease))\n );}.select-trigger.svelte-52lifo .select-left-icon {--image-width: var(--select-left-icon-size, 16px);--image-height: var(--select-left-icon-size, 16px);--image-object-fit: contain;\n\n /* The icon inlines, so a currentColor asset resolves against this. Defaults to\n `inherit` — the trigger's text colour, which is what it already did — so this is\n a hook, not a change. Without it a consumer cannot tint the icon independently\n of the label, and an icon migrated to currentColor is forced to match its label\n exactly, flattening any deliberate muted-icon/strong-label hierarchy. */color:var(--select-left-icon-color, inherit);flex:none;}.select-trigger.svelte-52lifo:hover:not(.disabled:where(.svelte-52lifo) .select-trigger:where(.svelte-52lifo)) {border-color:var(--select-trigger-hover-border-color, #999999);}.select-trigger.svelte-52lifo:focus-within,\n .select.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-trigger-focus-border-color, #2563eb);box-shadow:var(--select-trigger-focus-shadow, 0 0 0 2px rgba(37, 99, 235, 0.2));}\n\n /* Pressed feedback on the trigger. `:active` only, so it lasts exactly as\n long as the pointer is down and never lingers as a stuck state the way a\n class-driven one can. */.select.svelte-52lifo:not(.disabled) .select-trigger:where(.svelte-52lifo):active {background:var(--select-trigger-pressed-background, #ededed);}\n\n /* The error border has to outrank BOTH hover and focus/open, or the field\n stops reading as invalid the moment the user enters it -- which is the one\n moment they most need to see it. Listed after them, at equal or higher\n specificity, rather than reached for with !important. */.select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo),\n .select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):hover,\n .select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):focus-within,\n .select.error.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-trigger-error-border-color, #dc2626);}.select.error.svelte-52lifo .select-trigger:where(.svelte-52lifo):focus-within,\n .select.error.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {box-shadow:var(--select-trigger-error-shadow, 0 0 0 2px rgba(220, 38, 38, 0.2));}.select-error-message.svelte-52lifo {margin-top:var(--select-error-message-margin-top, 4px);font-size:var(--select-error-message-font-size, 12px);color:var(--select-error-message-color, #dc2626);}.select-control.svelte-52lifo {position:relative;}.select-control.has-clear.svelte-52lifo .select-trigger:where(.svelte-52lifo) {padding-inline-end:calc(var(--select-clear-size, 18px) + 36px);}.select-control.has-clear.svelte-52lifo .select-arrow:where(.svelte-52lifo) {position:absolute;right:12px;}.select-clear.svelte-52lifo {position:absolute;right:32px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--select-clear-size, 18px);height:var(--select-clear-size, 18px);margin:0;padding:0;border:none;border-radius:var(--select-clear-border-radius, var(--radius, 4px));background:var(--select-clear-background, transparent);color:var(--select-clear-color, #666666);font-size:var(--select-clear-font-size, 16px);line-height:1;cursor:pointer;}.select-clear.svelte-52lifo:focus-visible {outline:var(--select-clear-focus-outline, 2px solid currentColor);outline-offset:2px;}.select-clear.svelte-52lifo:hover {background:var(--select-clear-hover-background, #ededed);color:var(--select-clear-hover-color, #111111);}.select-clear.svelte-52lifo:active {background:var(--select-clear-pressed-background, #e0e0e0);}.select-value.svelte-52lifo {flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:var(--select-value-align, left);}.select-placeholder.svelte-52lifo {flex:1;color:var(--select-placeholder-color, #666666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:var(--select-value-align, left);}.select-search.svelte-52lifo {flex:1;min-width:60px;border:none;outline:none;background:transparent;font-family:inherit;font-size:inherit;color:inherit;padding:0;cursor:text;}.select-search.svelte-52lifo::placeholder {color:var(--select-placeholder-color, #6b7280);}.select-arrow.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;width:var(--select-arrow-size, 16px);height:var(--select-arrow-size, 16px);color:var(--select-arrow-color, #666666);flex-shrink:0;transition:transform\n var(--select-arrow-transition-duration, var(--duration-quick, var(--motion-duration, 0.15s)))\n var(--select-arrow-transition-easing, var(--motion-easing, ease));}.select.open.svelte-52lifo .select-arrow:where(.svelte-52lifo) {transform:rotate(180deg);}.select-arrow.svelte-52lifo svg {width:100%;height:100%;}\n\n /* Anchors the in-flow panel above the trigger. `margin-top` is what the\n downward panel uses for the gap, so it has to be unset here or the panel\n sits a gap's width too high. */.select-dropdown.select-dropdown-up.svelte-52lifo {top:auto;bottom:100%;margin-top:0;margin-bottom:var(--select-dropdown-gap, 4px);}\n\n /* One-tick measuring pass for placement=\"auto\": the panel needs rendered\n dimensions before the corner is chosen, without a visible flash at the\n wrong corner. */.select-dropdown.select-dropdown-measuring.svelte-52lifo {visibility:hidden;}.select-dropdown.svelte-52lifo {position:absolute;top:100%;left:var(--select-dropdown-left, 0);right:var(--select-dropdown-right, 0);min-width:var(--select-dropdown-min-width, auto);max-width:var(--select-dropdown-max-width, none);width:var(--select-dropdown-width, auto);margin-top:var(--select-dropdown-gap, 4px);background:var(--select-dropdown-background, #ffffff);border:var(--select-dropdown-border, 1px solid #cccccc);border-radius:var(--select-dropdown-border-radius, var(--radius, 4px));box-shadow:var(--select-dropdown-shadow, 0 4px 12px rgba(0, 0, 0, 0.1));max-height:var(--select-dropdown-max-height, 200px);overflow-y:auto;z-index:var(--select-dropdown-z-index, 10);}\n\n /* With the search box inside the panel, the PANEL must stop scrolling and\n the list scroll instead -- otherwise the search box scrolls away as soon\n as the user moves down the results, which is the one control they still\n need. The max-height moves down with the scrolling, so the panel keeps\n growing to fit the search box plus a list of the same height as before. */.select-dropdown.svelte-52lifo:has(> .select-menu-list:where(.svelte-52lifo)) {max-height:none;overflow-y:visible;display:flex;flex-direction:column;}.select-menu-list.svelte-52lifo {max-height:var(--select-dropdown-max-height, 200px);overflow-y:auto;}.select-menu-search.svelte-52lifo {flex:none;margin:var(--select-menu-search-margin, 6px);padding:var(--select-menu-search-padding, 6px 8px);border:var(--select-menu-search-border, 1px solid #cccccc);border-radius:var(--select-menu-search-border-radius, var(--radius, 4px));background:var(--select-menu-search-background, #ffffff);color:var(--select-menu-search-color, inherit);font-family:inherit;font-size:var(--select-menu-search-font-size, inherit);outline:none;}.select-menu-search.svelte-52lifo:focus-visible {border-color:var(--select-menu-search-focus-border-color, #2563eb);box-shadow:var(--select-menu-search-focus-shadow, 0 0 0 2px rgba(37, 99, 235, 0.2));}.select-dropdown-right.svelte-52lifo {left:auto;right:var(--select-dropdown-right, 0);min-width:var(--select-dropdown-min-width, 100%);max-width:var(--select-dropdown-max-width, none);width:var(--select-dropdown-width, max-content);}.select-dropdown.select-dropdown-portal.svelte-52lifo {\n /* Portaled to <body>: fixed positioning escapes overflow/scroll ancestors\n (e.g. a table cell). Placement (top/left/width/min-width) is set inline\n from the trigger rect, so neutralise the in-flow anchoring here. */position:fixed;right:auto;margin-top:0;\n /* In the root stacking context the panel competes with modals/sheets rather\n than painting above same-container siblings, so default it into the\n top-layer band (consumers still override via --select-dropdown-z-index). */z-index:var(--select-dropdown-z-index, 1000);}.select-option.svelte-52lifo {padding:var(--select-option-padding, 8px 12px);color:var(--select-option-color, #333333);font-size:var(--select-option-font-size, inherit);cursor:pointer;transition:background var(--select-option-transition-duration, var(--motion-duration, 0.1s))\n var(--select-option-transition-easing, var(--motion-easing, ease));}\n\n /* Per-option leading icon (SelectItem.icon). Kept inline + vertically centred so\n it needs no change to the option's display and can't regress icon-less lists. */.select-option.svelte-52lifo .select-option-icon {--image-width: var(--select-option-icon-size, 16px);--image-height: var(--select-option-icon-size, 16px);--image-object-fit: contain;color:var(--select-option-icon-color, inherit);vertical-align:middle;margin-right:var(--select-option-icon-gap, 8px);}.select-option.multi.svelte-52lifo {display:flex;align-items:center;gap:var(--select-option-gap, 0);}.select-option.svelte-52lifo:hover,\n .select-option.highlighted.svelte-52lifo {background:var(--select-option-hover-background, #f0f0f0);color:var(--select-option-hover-color, var(--select-option-color, #333333));}.select-option.selected.svelte-52lifo {background:var(--select-option-selected-background, #e8f0fe);color:var(--select-option-selected-color, var(--select-option-color, #333333));}.select-option-disabled.svelte-52lifo {opacity:var(--select-option-disabled-opacity, 0.4);cursor:var(--select-option-disabled-cursor, not-allowed);pointer-events:none;}.select-option.selected.highlighted.svelte-52lifo {background:var(\n --select-option-selected-hover-background,\n var(--select-option-selected-background, #e8f0fe)\n );}\n\n /* Pressed feedback comes last, and each selector carries enough specificity\n to outrank its non-active counterpart above. An option is always hovered\n when pressed and is often selected too, so a single low-specificity rule\n earlier in the sheet would be correct in isolation and invisible in\n practice -- which is how a pressed state ends up shipping as dead CSS.\n A press on an already-selected row still has to confirm the tap landed. */.select-option.svelte-52lifo:active,\n .select-option.selected.svelte-52lifo:active,\n .select-option.selected.highlighted.svelte-52lifo:active {background:var(--select-option-pressed-background, #ededed);}.select-option-indicator.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:var(--select-option-indicator-size, 18px);height:var(--select-option-indicator-size, 18px);border:var(--select-option-indicator-border, 2px solid #757575);border-radius:var(--select-option-indicator-border-radius, var(--radius, 4px));background-color:var(--select-option-indicator-background, transparent);color:var(--select-option-indicator-color, currentColor);transition:background-color\n var(\n --select-option-indicator-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--select-option-indicator-transition-easing, var(--motion-easing, ease)),\n border-color\n var(\n --select-option-indicator-transition-duration,\n var(--duration-quick, var(--motion-duration, 0.15s))\n )\n var(--select-option-indicator-transition-easing, var(--motion-easing, ease));}.select-option-indicator.checked.svelte-52lifo {background-color:var(--select-option-indicator-checked-background, #2196f3);border-color:var(--select-option-indicator-checked-border-color, #2196f3);}.select-option-check.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;width:var(--select-option-indicator-check-size, 12px);height:var(--select-option-indicator-check-size, 12px);color:var(--select-option-indicator-check-color, #ffffff);}.select-option-check.svelte-52lifo svg {width:100%;height:100%;}.select-option-indicator.indeterminate.svelte-52lifo {background-color:var(--select-option-indicator-checked-background, #2196f3);border-color:var(--select-option-indicator-checked-border-color, #2196f3);}.select-option-dash.svelte-52lifo {width:var(--select-option-indicator-dash-size, 10px);height:var(--select-option-indicator-dash-thickness, 2px);border-radius:1px;background-color:var(--select-option-indicator-dash-color, #ffffff);}.select-option.select-all.svelte-52lifo {border-bottom:var(--select-all-border, none);font-weight:var(--select-all-font-weight, inherit);}.select-empty.svelte-52lifo {padding:var(--select-empty-padding, 8px 12px);color:var(--select-empty-color, #999999);font-style:var(--select-empty-font-style, italic);font-size:var(--select-empty-font-size, inherit);}.select-bottom-content.svelte-52lifo {border-top:var(--select-bottom-content-border, none);padding:var(--select-bottom-content-padding, 8px 12px);}.select-trigger.svelte-52lifo .pill {--pill-background: var(--select-pill-background, #e0e0e0);--pill-color: var(--select-pill-color, #333333);--pill-border-radius: var(--select-pill-border-radius, 999px);--pill-padding: var(--select-pill-padding, 2px 8px);--pill-font-size: var(--select-pill-font-size, 13px);}\n\n /* Ghost hierarchy: transparent, borderless trigger */.select.ghost.svelte-52lifo .select-trigger:where(.svelte-52lifo) {background:var(--select-ghost-trigger-background, transparent);border-color:var(--select-ghost-trigger-border-color, transparent);box-shadow:none;}.select.ghost.svelte-52lifo .select-trigger:where(.svelte-52lifo):hover:not(.disabled:where(.svelte-52lifo) .select-trigger:where(.svelte-52lifo)) {border-color:var(--select-ghost-trigger-hover-border-color, transparent);background:var(--select-ghost-trigger-hover-background, rgba(0, 0, 0, 0.04));}.select.ghost.open.svelte-52lifo .select-trigger:where(.svelte-52lifo) {border-color:var(--select-ghost-trigger-open-border-color, transparent);background:var(--select-ghost-trigger-open-background, rgba(0, 0, 0, 0.06));box-shadow:none;}\n\n /* Single-select right-edge tick (showSelectedTick) */.select-option.tickable.svelte-52lifo {display:flex;align-items:center;gap:8px;}.select-option.tickable.svelte-52lifo .select-option-label:where(.svelte-52lifo) {flex:1 1 auto;min-width:0;}.select-option-tick.svelte-52lifo {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--select-option-tick-size, 16px);height:var(--select-option-tick-size, 16px);color:var(--select-option-tick-color, #2563eb);}.select-option-tick.svelte-52lifo svg {width:100%;height:100%;}\n\n /* The chevron rotates between closed and open. Small, but it is a transform,\n and the two end states are each meaningful, so dropping the tween just makes\n the flip instant. */\n @media (prefers-reduced-motion: reduce) {.select-arrow.svelte-52lifo {transition:none;}\n }"
|
|
20077
20283
|
};
|
|
20078
20284
|
function Select(e, t) {
|
|
20079
20285
|
let n = props_id();
|
|
@@ -20995,14 +21201,8 @@ customElements.define("sui-select", create_custom_element(Select_wc, {
|
|
|
20995
21201
|
innerControlIsNotTheValue: !0
|
|
20996
21202
|
})));
|
|
20997
21203
|
//#endregion
|
|
20998
|
-
//#region src/lib/
|
|
20999
|
-
var
|
|
21000
|
-
query?.addEventListener("change", (e) => {
|
|
21001
|
-
set(current, e.matches, !0);
|
|
21002
|
-
});
|
|
21003
|
-
var reducedMotion = { get current() {
|
|
21004
|
-
return get(current);
|
|
21005
|
-
} }, root$48 = /* @__PURE__ */ from_html("<span class=\"sheet-title svelte-1dln6bq\"> </span>"), root_1$45 = /* @__PURE__ */ from_html("<div class=\"sheet-close-button svelte-1dln6bq\"><!></div>"), root_2$34 = /* @__PURE__ */ from_html("<div class=\"sheet-header svelte-1dln6bq\"><!> <!></div>"), root_3$31 = /* @__PURE__ */ from_html("<div class=\"sheet-footer svelte-1dln6bq\"><!></div>"), root_4$26 = /* @__PURE__ */ from_html("<div tabindex=\"-1\"><div role=\"dialog\" aria-modal=\"true\" tabindex=\"-1\"><!> <div class=\"sheet-content svelte-1dln6bq\"><!></div> <!></div></div>"), $$css$93 = {
|
|
21204
|
+
//#region src/lib/Sheet/Sheet.svelte
|
|
21205
|
+
var root$48 = /* @__PURE__ */ from_html("<span class=\"sheet-title svelte-1dln6bq\"> </span>"), root_1$45 = /* @__PURE__ */ from_html("<div class=\"sheet-close-button svelte-1dln6bq\"><!></div>"), root_2$34 = /* @__PURE__ */ from_html("<div class=\"sheet-header svelte-1dln6bq\"><!> <!></div>"), root_3$31 = /* @__PURE__ */ from_html("<div class=\"sheet-footer svelte-1dln6bq\"><!></div>"), root_4$26 = /* @__PURE__ */ from_html("<div tabindex=\"-1\"><div role=\"dialog\" aria-modal=\"true\" tabindex=\"-1\"><!> <div class=\"sheet-content svelte-1dln6bq\"><!></div> <!></div></div>"), $$css$93 = {
|
|
21006
21206
|
hash: "svelte-1dln6bq",
|
|
21007
21207
|
code: ".sheet-overlay.svelte-1dln6bq {position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--sheet-overlay-z-index, 15);-webkit-tap-highlight-color:transparent;}.overlay-visible.svelte-1dln6bq {background-color:var(--sheet-overlay-background, #00000066);}.overlay-invisible.svelte-1dln6bq {background-color:transparent;}.overlay-interactive.svelte-1dln6bq {pointer-events:auto;}.overlay-noninteractive.svelte-1dln6bq {pointer-events:none;}.sheet-panel.svelte-1dln6bq {position:fixed;display:flex;flex-direction:column;background-color:var(--sheet-background, #ffffff);box-shadow:var(--sheet-box-shadow, -2px 0 8px rgba(0, 0, 0, 0.15));z-index:var(--sheet-z-index, 16);pointer-events:auto;outline:none;}\n\n /* The panel itself is the initial focus target on open (scrollLockAction\n focuses it directly, and it's the Tab-trap's own boundary), so removing\n its outline unconditionally left a keyboard user with no visible sign\n focus had moved into the sheet at all -- particularly visible on the\n \"Raw\" variant, which has no focusable child for focus to land on\n instead. :focus-visible restores a ring precisely when the browser\n judges it's from keyboard/programmatic focus rather than a mouse click,\n so clicking the trigger still shows nothing new. outline-offset is\n negative (inset) rather than the usual positive offset other components\n in this library use, because left/right/top/bottom panels sit flush\n against a viewport edge -- a positive offset would clip there. */.sheet-panel.svelte-1dln6bq:focus-visible {outline:var(--sheet-panel-focus-outline, 2px solid #2563eb);outline-offset:var(--sheet-panel-focus-outline-offset, -2px);}\n\n /* --sheet-top/-right/-bottom/-left all default to the previous hardcoded\n edge-to-edge values below, so an unconfigured Sheet renders unchanged.\n Overriding one (e.g. --sheet-top to clear a fixed header, or --sheet-bottom:\n auto to size to content) turns the panel from an edge-to-edge slide-in into\n an anchored floating panel, without needing a different component. */.sheet-panel.left.svelte-1dln6bq,\n .sheet-panel.right.svelte-1dln6bq {top:var(--sheet-top, 0);bottom:var(--sheet-bottom, 0);width:var(--sheet-width, 400px);max-width:var(--sheet-max-width, 100vw);}.sheet-panel.left.svelte-1dln6bq {left:var(--sheet-left, 0);border-right:var(--sheet-border, none);}.sheet-panel.right.svelte-1dln6bq {right:var(--sheet-right, 0);border-left:var(--sheet-border, none);}\n\n /* Top/bottom stretch edge to edge by default, exactly as before: --sheet-\n band-width is `auto`, so `margin-inline: auto` has nothing to distribute\n and the panel still spans --sheet-left to --sheet-right.\n\n Setting --sheet-band-width (or --sheet-band-max-width) caps it, and the\n auto margins then centre it between those same two insets -- which is the\n shape a bottom \"launch\" sheet wants above phone widths, and previously\n had to be faked with hand-computed calc() offsets.\n\n Deliberately NOT --sheet-width/--sheet-max-width, even though the issue\n proposed those names. Those already mean \"the width of a left/right\n panel\", so a consumer who themes them for their side sheets would find\n their bottom sheets silently reshaped by an upgrade. side=\"center\" avoids\n the same collision the same way, with its own --sheet-center-* tokens. */.sheet-panel.top.svelte-1dln6bq,\n .sheet-panel.bottom.svelte-1dln6bq {left:var(--sheet-left, 0);right:var(--sheet-right, 0);height:var(--sheet-height, 300px);max-height:var(--sheet-max-height, 100vh);width:var(--sheet-band-width, auto);max-width:var(--sheet-band-max-width, none);box-sizing:var(--sheet-band-box-sizing, content-box);margin-inline:auto;border:var(--sheet-band-border, none);}\n\n /* A capped panel is a floating card and needs all four edges; an\n edge-to-edge one deliberately draws only the edge it enters from. The\n entering edge falls back through --sheet-border so an existing theme that\n sets only that keeps rendering exactly as it did. */.sheet-panel.top.svelte-1dln6bq {top:var(--sheet-top, 0);border-bottom:var(--sheet-band-border, var(--sheet-border, none));}.sheet-panel.bottom.svelte-1dln6bq {bottom:var(--sheet-bottom, 0);border-top:var(--sheet-band-border, var(--sheet-border, none));}\n\n /* `side=\"center\"` is a fixed-size floating dialog, not an edge-anchored\n panel: no top/bottom/left/right offset, sized by its own tokens rather\n than --sheet-width/--sheet-height (so an existing left/right/top/bottom\n theme is untouched by adding this variant), and centered with a\n transform instead of stretching to an edge. */.sheet-panel.center.svelte-1dln6bq {top:50%;left:50%;transform:translate(-50%, -50%);width:var(--sheet-center-width, 480px);max-width:var(--sheet-center-max-width, calc(100vw - 32px));max-height:var(--sheet-center-max-height, 90vh);}.sheet-header.svelte-1dln6bq {display:flex;align-items:center;padding:var(--sheet-header-padding, 16px 20px);background-color:var(--sheet-header-background, inherit);border-bottom:var(--sheet-header-border-bottom, 1px solid #e0e0e0);flex-shrink:0;}.sheet-title.svelte-1dln6bq {flex:1;font-size:var(--sheet-title-font-size, 18px);font-weight:var(--sheet-title-font-weight, 600);font-family:var(--sheet-title-font-family, inherit);color:var(--sheet-title-color, #1a1a1a);line-height:var(--sheet-title-line-height, 1.4);}.sheet-close-button.svelte-1dln6bq {--button-width: var(--sheet-close-button-size, 32px);--button-height: var(--sheet-close-button-size, 32px);--button-border: none;--button-border-radius: var(--sheet-close-button-border-radius, var(--radius, 4px));--button-color: var(--sheet-close-button-background, transparent);--button-text-color: var(--sheet-close-button-color, #666666);--button-font-size: var(--sheet-close-button-font-size, 16px);--button-padding: 0;--button-hover-color: var(--sheet-close-button-hover-background, #f0f0f0);flex-shrink:0;display:flex;align-items:center;justify-content:center;}.sheet-content.svelte-1dln6bq {flex:1;overflow-y:var(--sheet-content-overflow-y, auto);padding:var(--sheet-content-padding, 20px);scrollbar-width:var(--sheet-scrollbar-width, none);}.sheet-content.svelte-1dln6bq::-webkit-scrollbar {display:none;}.sheet-footer.svelte-1dln6bq {padding:var(--sheet-footer-padding, 16px 20px);background-color:var(--sheet-footer-background, inherit);border-top:var(--sheet-footer-border-top, 1px solid #e0e0e0);flex-shrink:0;}"
|
|
21008
21208
|
};
|
|
@@ -21041,16 +21241,28 @@ function Sheet(e, t) {
|
|
|
21041
21241
|
duration: 300
|
|
21042
21242
|
};
|
|
21043
21243
|
}
|
|
21044
|
-
})
|
|
21045
|
-
|
|
21046
|
-
|
|
21047
|
-
|
|
21048
|
-
|
|
21049
|
-
|
|
21244
|
+
}), G = /* @__PURE__ */ user_derived(() => ({
|
|
21245
|
+
x: get(re).x,
|
|
21246
|
+
y: get(re).y,
|
|
21247
|
+
durationTokens: ["--sheet-panel-transition-duration", "--motion-duration"],
|
|
21248
|
+
fallbackDuration: get(re).duration,
|
|
21249
|
+
distanceTokens: ["--sheet-panel-transition-distance", "--distance-overlay"],
|
|
21250
|
+
fallbackDistance: 60,
|
|
21251
|
+
easingTokens: [
|
|
21252
|
+
"--sheet-panel-transition-easing",
|
|
21253
|
+
"--ease-smooth-out",
|
|
21254
|
+
"--motion-easing"
|
|
21255
|
+
]
|
|
21256
|
+
}));
|
|
21257
|
+
function be() {
|
|
21258
|
+
n() && (n(!1), S()?.());
|
|
21050
21259
|
}
|
|
21051
21260
|
function Me(e) {
|
|
21261
|
+
e.target === get(te) && s() && be();
|
|
21262
|
+
}
|
|
21263
|
+
function Re(e) {
|
|
21052
21264
|
if ((e.key === "Enter" || e.key === " ") && s() && e.target === get(te)) {
|
|
21053
|
-
e.preventDefault(),
|
|
21265
|
+
e.preventDefault(), be();
|
|
21054
21266
|
return;
|
|
21055
21267
|
}
|
|
21056
21268
|
if (e.key === "Tab") {
|
|
@@ -21062,12 +21274,12 @@ function Sheet(e, t) {
|
|
|
21062
21274
|
t !== null && (e.preventDefault(), t.focus());
|
|
21063
21275
|
}
|
|
21064
21276
|
}
|
|
21065
|
-
function
|
|
21277
|
+
function Ue(e) {
|
|
21066
21278
|
let t = getActiveElement(e), n = !0;
|
|
21067
21279
|
lockBodyScroll();
|
|
21068
21280
|
let i = registerDismissible({
|
|
21069
21281
|
element: () => get(ne),
|
|
21070
|
-
onEscape:
|
|
21282
|
+
onEscape: be
|
|
21071
21283
|
});
|
|
21072
21284
|
return tick().then(() => {
|
|
21073
21285
|
n && get(ne) !== null && get(ne).focus();
|
|
@@ -21077,14 +21289,14 @@ function Sheet(e, t) {
|
|
|
21077
21289
|
t instanceof HTMLElement && t.isConnected && (a === null || a === document.body || e.contains(a)) && t.focus();
|
|
21078
21290
|
} };
|
|
21079
21291
|
}
|
|
21080
|
-
function
|
|
21292
|
+
function it() {
|
|
21081
21293
|
typeof C() == "function" && C()();
|
|
21082
21294
|
}
|
|
21083
|
-
function
|
|
21295
|
+
function at() {
|
|
21084
21296
|
typeof k() == "function" && k()();
|
|
21085
21297
|
}
|
|
21086
|
-
let
|
|
21087
|
-
var
|
|
21298
|
+
let ot = /* @__PURE__ */ user_derived(() => typeof u() == "number" && Number.isInteger(u()) && u() >= 1 && u() <= 6 ? `h${u()}` : null);
|
|
21299
|
+
var ct = {
|
|
21088
21300
|
get open() {
|
|
21089
21301
|
return n();
|
|
21090
21302
|
},
|
|
@@ -21175,12 +21387,12 @@ function Sheet(e, t) {
|
|
|
21175
21387
|
set classes(e) {
|
|
21176
21388
|
R(e), flushSync();
|
|
21177
21389
|
}
|
|
21178
|
-
},
|
|
21390
|
+
}, lt = comment(), ut = first_child(lt), dt = (e) => {
|
|
21179
21391
|
var t = root_4$26(), n = child(t), u = child(n), S = (e) => {
|
|
21180
21392
|
var t = root_2$34(), n = child(t), i = (e) => {
|
|
21181
21393
|
var t = comment(), n = first_child(t), i = (e) => {
|
|
21182
21394
|
var t = comment();
|
|
21183
|
-
element(first_child(t), () => get(
|
|
21395
|
+
element(first_child(t), () => get(ot), !1, (e, t) => {
|
|
21184
21396
|
set_class(e, 0, "sheet-title svelte-1dln6bq");
|
|
21185
21397
|
var n = text();
|
|
21186
21398
|
template_effect(() => set_text(n, a())), append(t, n);
|
|
@@ -21190,7 +21402,7 @@ function Sheet(e, t) {
|
|
|
21190
21402
|
reset(t), template_effect(() => set_text(n, a())), append(e, t);
|
|
21191
21403
|
};
|
|
21192
21404
|
if_block(n, (e) => {
|
|
21193
|
-
get(
|
|
21405
|
+
get(ot) === null ? e(o, -1) : e(i);
|
|
21194
21406
|
}), append(e, t);
|
|
21195
21407
|
};
|
|
21196
21408
|
if_block(n, (e) => {
|
|
@@ -21199,7 +21411,7 @@ function Sheet(e, t) {
|
|
|
21199
21411
|
var o = sibling(n, 2), s = (e) => {
|
|
21200
21412
|
var t = root_1$45();
|
|
21201
21413
|
Button(child(t), spread_props({
|
|
21202
|
-
onclick:
|
|
21414
|
+
onclick: be,
|
|
21203
21415
|
ariaLabel: "Close"
|
|
21204
21416
|
}, () => typeof f() == "string" ? { testId: `${f()}-close` } : {}, {
|
|
21205
21417
|
children: (e, t) => {
|
|
@@ -21217,19 +21429,19 @@ function Sheet(e, t) {
|
|
|
21217
21429
|
});
|
|
21218
21430
|
var C = sibling(u, 2);
|
|
21219
21431
|
snippet(child(C), p), reset(C);
|
|
21220
|
-
var k = sibling(C, 2),
|
|
21432
|
+
var k = sibling(C, 2), re = (e) => {
|
|
21221
21433
|
var t = root_3$31();
|
|
21222
21434
|
snippet(child(t), h), reset(t), append(e, t);
|
|
21223
21435
|
};
|
|
21224
21436
|
if_block(k, (e) => {
|
|
21225
|
-
typeof h() == "function" && e(
|
|
21226
|
-
}), reset(n), bind_this(n, (e) => set(ne, e), () => get(ne)), reset(t), bind_this(t, (e) => set(te, e), () => get(te)), action(t, (e) =>
|
|
21437
|
+
typeof h() == "function" && e(re);
|
|
21438
|
+
}), reset(n), bind_this(n, (e) => set(ne, e), () => get(ne)), reset(t), bind_this(t, (e) => set(te, e), () => get(te)), action(t, (e) => Ue?.(e)), template_effect((e) => {
|
|
21227
21439
|
set_class(t, 1, `sheet-overlay ${o() ? "overlay-visible" : "overlay-invisible"} ${o() || s() ? "overlay-interactive" : "overlay-noninteractive"} ${R() ?? "" ?? ""}`, "svelte-1dln6bq"), set_attribute(t, "role", s() ? "button" : null), set_attribute(t, "aria-label", e), set_attribute(t, "data-pw", typeof f() == "string" ? f() : null), set_attribute(t, "testid", typeof f() == "string" ? f() : null), set_class(n, 1, `sheet-panel ${i() ?? ""}`, "svelte-1dln6bq"), set_attribute(n, "aria-label", a() ?? "Sheet"), set_attribute(n, "data-pw", typeof f() == "string" ? `${f()}-panel` : null), set_attribute(n, "testid", typeof f() == "string" ? `${f()}-panel` : null);
|
|
21228
|
-
}, [() => s() ? c()?.trim() || "Close sheet" : null]), delegated("click", t,
|
|
21440
|
+
}, [() => s() ? c()?.trim() || "Close sheet" : null]), delegated("click", t, Me), delegated("keydown", t, Re), event("introend", n, it), event("outroend", n, at), transition(7, n, () => tokenizedFly, () => get(G)), transition(3, t, () => fade, () => ({ duration: 200 })), append(e, t);
|
|
21229
21441
|
};
|
|
21230
|
-
return if_block(
|
|
21231
|
-
n() && e(
|
|
21232
|
-
}), append(e,
|
|
21442
|
+
return if_block(ut, (e) => {
|
|
21443
|
+
n() && e(dt);
|
|
21444
|
+
}), append(e, lt), pop(ct);
|
|
21233
21445
|
}
|
|
21234
21446
|
delegate(["click", "keydown"]), create_custom_element(Sheet, {
|
|
21235
21447
|
open: {},
|
|
@@ -22624,7 +22836,7 @@ delegate(["click", "keydown"]), create_custom_element(BuiltinCell, {
|
|
|
22624
22836
|
//#region src/lib/assets/sort-default.svg?raw
|
|
22625
22837
|
var sort_default_default = "<svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.64645 1.64645C5.84171 1.45118 6.15829 1.45118 6.35355 1.64645L8.85355 4.14645C9.04882 4.34171 9.04882 4.65829 8.85355 4.85355C8.65829 5.04882 8.34171 5.04882 8.14645 4.85355L6 2.70711L3.85355 4.85355C3.65829 5.04882 3.34171 5.04882 3.14645 4.85355C2.95118 4.65829 2.95118 4.34171 3.14645 4.14645L5.64645 1.64645Z\" fill=\"currentColor\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3.14645 7.14645C3.34171 6.95118 3.65829 6.95118 3.85355 7.14645L6 9.29289L8.14645 7.14645C8.34171 6.95118 8.65829 6.95118 8.85355 7.14645C9.04882 7.34171 9.04882 7.65829 8.85355 7.85355L6.35355 10.3536C6.15829 10.5488 5.84171 10.5488 5.64645 10.3536L3.14645 7.85355C2.95118 7.65829 2.95118 7.34171 3.14645 7.14645Z\" fill=\"currentColor\"/>\n</svg>\n", root$44 = /* @__PURE__ */ from_html("<div class=\"table-title svelte-171ci2i\"> </div>"), root_1$41 = /* @__PURE__ */ from_html("<button class=\"table-search-clear svelte-171ci2i\" type=\"button\"></button>"), root_2$31 = /* @__PURE__ */ from_html("<div class=\"table-search svelte-171ci2i\"><span class=\"table-search-icon svelte-171ci2i\"></span> <input class=\"table-search-input svelte-171ci2i\" type=\"search\" autocomplete=\"off\"/> <!></div>"), root_3$28 = /* @__PURE__ */ from_html("<div class=\"table-toolbar svelte-171ci2i\"><!></div>"), root_4$24 = /* @__PURE__ */ from_html("<caption class=\"sr-only svelte-171ci2i\"> </caption>"), root_5$23 = /* @__PURE__ */ from_html("<th><!></th>"), root_6$21 = /* @__PURE__ */ from_html("<th></th>"), root_7$19 = /* @__PURE__ */ from_html("<th> </th>"), root_8$17 = /* @__PURE__ */ from_html("<span> </span>"), root_9$14 = /* @__PURE__ */ from_html("<span class=\"table-header-filter-icon svelte-171ci2i\"></span>"), root_10$13 = /* @__PURE__ */ from_html("<span><!></span>"), root_11$11 = /* @__PURE__ */ from_html("<span class=\"table-header-filter svelte-171ci2i\"><!></span>"), root_12$10 = /* @__PURE__ */ from_html("<span class=\"sort-icon sort-icon-asc\"></span>"), root_13$8 = /* @__PURE__ */ from_html("<span class=\"sort-icon sort-icon-desc\"></span>"), root_14$7 = /* @__PURE__ */ from_html("<span class=\"sort-icon sort-icon-idle\"></span>"), root_15$5 = /* @__PURE__ */ from_html("<div class=\"sort-button svelte-171ci2i\"><!></div>"), root_16$4 = /* @__PURE__ */ from_html("<!> <span class=\"table-inline-search-clear svelte-171ci2i\"><!></span>", 1), root_17$4 = /* @__PURE__ */ from_html("<span class=\"table-inline-search-trigger svelte-171ci2i\"><!></span>"), root_18$3 = /* @__PURE__ */ from_html("<span class=\"table-header-inline-search svelte-171ci2i\"><!></span>"), root_19$3 = /* @__PURE__ */ from_html("<th><span class=\"table-header-content svelte-171ci2i\"><!> <!> <!> <!></span></th>"), root_20$3 = /* @__PURE__ */ from_html("<tr class=\"svelte-171ci2i\"><td class=\"table-empty svelte-171ci2i\"><!></td></tr>"), root_21$2 = /* @__PURE__ */ from_html("<span class=\"table-mobile-label svelte-171ci2i\" aria-hidden=\"true\">Select</span>"), root_22$2 = /* @__PURE__ */ from_html("<td class=\"table-content table-checkbox-col svelte-171ci2i\"><!><!></td>"), root_23$2 = /* @__PURE__ */ from_html("<span class=\"table-mobile-label svelte-171ci2i\" aria-hidden=\"true\"> </span>"), root_24$2 = /* @__PURE__ */ from_html("<td class=\"table-content table-row-number-col svelte-171ci2i\"><!><span class=\"table-mobile-value svelte-171ci2i\"> </span></td>"), root_25$1 = /* @__PURE__ */ from_html("<div><!></div>"), root_26$1 = /* @__PURE__ */ from_html("<td><!><!></td>"), root_27 = /* @__PURE__ */ from_html("<tr><!><!><!></tr>"), root_28 = /* @__PURE__ */ from_html("<div class=\"table-footer svelte-171ci2i\"><!></div>"), root_29 = /* @__PURE__ */ from_html("<span class=\"table-paginator-size svelte-171ci2i\"><!></span>"), root_30 = /* @__PURE__ */ from_html("<span class=\"table-paginator-controls svelte-171ci2i\"><!> <!></span>"), root_31 = /* @__PURE__ */ from_html("<div class=\"table-footer table-paginator svelte-171ci2i\"><span class=\"table-paginator-range svelte-171ci2i\"> </span> <!></div>"), root_32 = /* @__PURE__ */ from_html("<div><div><div class=\"table-scroll svelte-171ci2i\"><table class=\"svelte-171ci2i\"><!><thead class=\"svelte-171ci2i\"><tr class=\"svelte-171ci2i\"><!><!><!></tr></thead><tbody class=\"svelte-171ci2i\"><!></tbody></table></div></div> <!></div>"), root_33 = /* @__PURE__ */ from_html("<!> <!> <!> <!>", 1), $$css$86 = {
|
|
22626
22838
|
hash: "svelte-171ci2i",
|
|
22627
|
-
code: "\n /* ── Title ─────────────────────────────────────────────────────────────── */.table-title.svelte-171ci2i {margin:var(--table-title-margin, 0px 0px 12px 0px);font-size:var(--table-title-font-size, var(--table-tile-font-size, 18px));font-weight:var(--table-title-font-weight, 600);\n /* Unlike .table-content, a heading legitimately has no background of its\n own -- it sits directly on whatever surface the consumer places it on.\n The old #111827 literal ignored that surface entirely: on a dark page\n it measured a contrast of 1.03 against #1a1a26, i.e. invisible. `color`\n already inherits by default, so `inherit` states that explicitly and\n lets the title track its container's text colour; `currentColor` would\n resolve to the same value here (the spec special-cases it to mean\n exactly `inherit` for the `color` property) but reads as if it were\n referencing a colour set elsewhere on this rule, which it isn't. */color:var(--table-title-color, inherit);font-family:var(--table-title-font-family, inherit);padding:var(--table-title-padding);}\n\n /* ── C2-3 Search bar ────────────────────────────────────────────────────── */.table-search.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-search-gap, 8px);padding:var(--table-search-padding, 8px 12px);border:var(--table-search-border, 1px solid #e5e7eb);border-radius:var(--table-search-border-radius, var(--radius, 4px));background-color:var(--table-search-background, #ffffff);margin-bottom:var(--table-search-margin-bottom, 8px);}.table-search-icon.svelte-171ci2i {display:inline-flex;align-items:center;color:var(--table-search-icon-color, #9ca3af);flex-shrink:0;}.table-search-icon.svelte-171ci2i svg {width:var(--table-search-icon-size, 16px);height:var(--table-search-icon-size, 16px);}.table-search-input.svelte-171ci2i {flex:1;border:none;outline:none;background:transparent;font-size:var(--table-search-font-size, 14px);color:var(--table-search-color, #111827);min-width:0;}.table-search-input.svelte-171ci2i:focus-visible {outline:2px solid var(--table-focus-outline-color, #3b82f6);outline-offset:2px;border-radius:var(--table-search-focus-border-radius, var(--radius, 4px));}.table-search-input.svelte-171ci2i::placeholder {color:var(--table-search-placeholder-color, #4b5563);}\n\n /* Hide browser-default clear button on search inputs */.table-search-input.svelte-171ci2i::-webkit-search-cancel-button {display:none;}.table-search-clear.svelte-171ci2i {display:inline-flex;align-items:center;padding:2px;border:none;background:transparent;color:var(--table-search-clear-color, #6b7280);cursor:pointer;border-radius:4px;flex-shrink:0;}.table-search-clear.svelte-171ci2i:hover {color:var(--table-search-clear-hover-color, #111827);background-color:var(--table-search-clear-hover-background, rgba(0, 0, 0, 0.05));}.table-search-clear.svelte-171ci2i svg {width:var(--table-search-clear-icon-size, 14px);height:var(--table-search-clear-icon-size, 14px);}.table-header-inline-search.svelte-171ci2i {display:inline-flex;align-items:center;gap:var(--table-inline-search-gap, 6px);margin-left:auto;}.table-inline-search-trigger.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: var(--table-inline-search-trigger-padding, 4px);--button-text-color: var(--table-inline-search-icon-color, #9ca3af);}.table-inline-search-trigger.svelte-171ci2i svg {width:var(--table-inline-search-icon-size, 16px);height:var(--table-inline-search-icon-size, 16px);display:block;}.table-inline-search-input.svelte-171ci2i {--input-margin: 0;width:var(--table-inline-search-input-width, 160px);}.table-inline-search-clear.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: var(--table-inline-search-clear-padding, 2px);--button-text-color: var(--table-inline-search-clear-color, #6b7280);}.table-inline-search-clear.svelte-171ci2i svg {width:var(--table-inline-search-clear-icon-size, 14px);height:var(--table-inline-search-clear-icon-size, 14px);}\n\n /* ── Container ──────────────────────────────────────────────────────────── */\n /* `hidden` is the default because it is what clips the table's corners to\n this element's border-radius; without it the first and last cells square\n off over the rounded border. A consumer who needs the container itself to\n scroll sideways sets this to `auto` and accepts that trade. Note the\n scrollable variant below sets `overflow-y`, and per the CSS overflow spec\n a `visible` on one axis computes to `auto` when the other is not visible,\n so `visible` here does not survive on a scrollable table. */.table-container.svelte-171ci2i {border:var(--table-border, 1px solid #e5e7eb);border-radius:var(--table-border-radius, var(--radius, 4px));width:var(--table-container-width, 100%);overflow:var(--table-container-overflow, hidden);}.scrollable-table.svelte-171ci2i {height:var(--table-container-height, 143px);overflow-y:auto;}.table-scroll-shell.svelte-171ci2i {position:relative;min-width:0;}\n\n /* Edge scrims: fade the clipped side of the table into its background so\n hidden columns read as \"more content this way\". Class-driven from live\n scroll state — never shown when the table fits. pointer-events: none\n keeps cells under the fade clickable; z-index 2 paints above sticky\n headers (z-index 1). */.table-scroll-shell.svelte-171ci2i::before,\n .table-scroll-shell.svelte-171ci2i::after {content:'';position:absolute;top:0;bottom:0;width:var(--table-scroll-scrim-width, 32px);opacity:0;pointer-events:none;transition:opacity var(--table-scroll-scrim-transition-duration, var(--motion-duration, 0.2s))\n var(--table-scroll-scrim-transition-easing, var(--motion-easing, ease));z-index:2;}.table-scroll-shell.svelte-171ci2i::before {left:0;border-radius:var(--table-border-radius, var(--radius, 4px)) 0 0\n var(--table-border-radius, var(--radius, 4px));background:linear-gradient(to right, var(--table-scroll-scrim-color, #ffffff), transparent);}.table-scroll-shell.svelte-171ci2i::after {right:0;border-radius:0 var(--table-border-radius, var(--radius, 4px))\n var(--table-border-radius, var(--radius, 4px)) 0;background:linear-gradient(to left, var(--table-scroll-scrim-color, #ffffff), transparent);}.table-scroll-shell.scrollable-left.svelte-171ci2i::before {opacity:1;}.table-scroll-shell.scrollable-right.svelte-171ci2i::after {opacity:1;}.table-scroll.svelte-171ci2i {overflow-x:auto;min-width:0;scrollbar-width:thin;}table.svelte-171ci2i {width:var(--table-width, 100%);border-collapse:var(--table-border-collapse, collapse);}.table-header.svelte-171ci2i,\n .table-content.svelte-171ci2i {border:var(--table-inner-border, none);padding:var(--table-padding, 12px 16px);text-align:var(--table-text-align, left);width:var(--table-column-width);\n /* Wrap at word boundaries; only a single word wider than the column may\n split as a last resort. break-word (not anywhere) keeps each column's\n min-content width at its longest word, so ordinary labels never split\n mid-word — the old break-all default did. Opt back in per consumer via\n --table-word-break / --table-overflow-wrap. */word-break:var(--table-word-break, normal);overflow-wrap:var(--table-overflow-wrap, break-word);}.scrollable-content.svelte-171ci2i {overflow-y:auto;height:var(--scrollable-column-height, 20px);}.table-header.svelte-171ci2i {background-color:var(--table-header-background, var(--table-header-border-bgcolor, #f9fafb));font-size:var(--table-header-font-size, 13px);font-family:var(--table-header-font-family, inherit);font-weight:var(--table-header-font-weight, 600);letter-spacing:var(--table-header-letter-spacing, 0.02em);text-transform:var(--table-header-text-transform, inherit);color:var(--table-header-color, var(--table-header-font-color, #6b7280));border-bottom:var(--table-header-border, var(--table-inner-border, none));}.table-header-content.svelte-171ci2i {display:flex;align-items:center;gap:4px;justify-content:var(--table-header-justify, flex-start);}.table-header-label.svelte-171ci2i {text-decoration:var(--table-header-tooltip-underline, underline dotted);text-underline-offset:2px;cursor:help;}.table-header-label-plain.svelte-171ci2i {text-decoration:none;}.table-header-filter.svelte-171ci2i {display:inline-flex;align-items:center;}.table-header-filter-trigger.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: 2px;--button-margin: 0;--button-width: fit-content;--button-height: fit-content;--button-text-color: var(--table-sort-button-color, inherit);--button-border-radius: 4px;--button-hover-color: var(--table-sort-button-hover-background, rgba(0, 0, 0, 0.05));display:inline-flex;align-items:center;opacity:var(--table-sort-idle-opacity, 0.5);}.table-header-filter-trigger.svelte-171ci2i:hover {opacity:var(--table-sort-idle-hover-opacity, 0.85);}.table-header-filter-active.svelte-171ci2i {opacity:1;color:var(--table-filter-active-color, #2563eb);}.table-header-filter-icon.svelte-171ci2i svg {width:var(--table-sort-icon-size, 14px);height:var(--table-sort-icon-size, 14px);display:block;}.table-cell-clamp.svelte-171ci2i {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.table-header-sticky.svelte-171ci2i {position:sticky;top:var(--table-header-sticky-top, 0);z-index:1;}.table-content.svelte-171ci2i {\n /* The terminal #ffffff matters as much as the colour beside it. Without it\n the whole declaration is invalid at computed-value time when neither\n variable is set, so the cell falls back to `transparent` and inherits\n whatever surface it lands on -- while `color` still resolves to a\n hardcoded near-black. On a dark page that is #111827 on #1a1a26: a\n measured contrast of 1.03, i.e. invisible. The header row never had the\n bug because it pairs its colour with a background of its own. */background-color:var(--table-content-background, var(--table-content-border-bgcolor, #ffffff));font-size:var(--table-content-font-size, 14px);font-family:var(--table-content-font-family, inherit);color:var(--table-content-color, var(--table-content-font-color, #111827));}\n\n /* Column highlight (TableColumn.highlighted). Row hover keeps higher\n specificity and row selection is declared later at equal specificity, so\n both row states paint over the column wash. */.table-header.table-col-highlighted.svelte-171ci2i {background-color:var(\n --table-col-highlight-header-background,\n var(--table-col-highlight-background, #f3f9ff)\n );}.table-content.table-col-highlighted.svelte-171ci2i {background-color:var(--table-col-highlight-background, #f3f9ff);}.table-row.svelte-171ci2i {border-bottom:var(--table-row-border, 1px solid #f3f4f6);background-color:var(--table-row-background);}.table-row.svelte-171ci2i:last-child {border-bottom:var(--table-row-last-border, none);}.table-row.svelte-171ci2i:nth-child(even) {background-color:var(--table-row-alt-background, var(--table-row-background));}.table-row.svelte-171ci2i:hover {background-color:var(--table-row-hover-background);}.table-row.svelte-171ci2i:hover > .table-content:where(.svelte-171ci2i) {background-color:var(\n --table-row-hover-background,\n var(--table-content-background, var(--table-content-border-bgcolor))\n );}.table-row-clickable.svelte-171ci2i {cursor:pointer;}.table-row-clickable.svelte-171ci2i:focus-visible {outline:2px solid var(--table-focus-outline-color, #3b82f6);outline-offset:-2px;}\n\n /* C2-1: Selected row highlight */.table-row-selected.svelte-171ci2i {background-color:var(--table-row-selected-background, #eff6ff);}.table-row-selected.svelte-171ci2i > .table-content:where(.svelte-171ci2i) {background-color:var(--table-row-selected-background, #eff6ff);}\n\n /* Summary/period-total row (summaryRowIndex): both the row and its cells,\n since a themed --table-content-background would otherwise paint over a\n row-level background. Falls back to the regular cell background. */.table-summary-row.svelte-171ci2i {background-color:var(--table-summary-row-background, var(--table-content-background));}.table-summary-row.svelte-171ci2i > .table-content:where(.svelte-171ci2i) {background-color:var(--table-summary-row-background, var(--table-content-background));}\n\n /* ── C2-1 Checkbox column ───────────────────────────────────────────────── */\n /* The column renders the library Checkbox. The table's own --table-checkbox-*\n tokens stay the public API and are bridged onto Checkbox's --checkbox-*\n variables here, so a consumer theming the table keeps working and a\n consumer theming Checkbox app-wide is overridden only inside the table. */.table-checkbox-col.svelte-171ci2i {width:var(--table-checkbox-col-width, 44px);padding:var(--table-checkbox-col-padding, 12px 12px);--checkbox-container-gap: 0;--checkbox-size: var(--table-checkbox-size, 18px);--checkbox-border: var(--table-checkbox-border, 2px solid #9ca3af);--checkbox-border-radius: var(--table-checkbox-border-radius, var(--radius, 4px));--checkbox-background: var(--table-checkbox-background, transparent);--checkbox-hover-border-color: var(--table-checkbox-hover-border-color, #6b7280);--checkbox-checked-background: var(--table-checkbox-checked-background, #2563eb);--checkbox-checked-border: var(\n --table-checkbox-checked-border,\n 2px solid var(--table-checkbox-checked-border-color, #2563eb)\n );--checkbox-indeterminate-background: var(--table-checkbox-indeterminate-background, #2563eb);--checkbox-indeterminate-border: var(\n --table-checkbox-indeterminate-border,\n 2px solid var(--table-checkbox-indeterminate-border-color, #2563eb)\n );--checkbox-disabled-opacity: var(--table-checkbox-disabled-opacity, 0.4);--checkbox-focus-ring: var(--table-checkbox-focus-ring, 0 0 0 3px rgba(59, 130, 246, 0.3));--checkbox-icon-size: var(--table-checkbox-icon-size, 12px);--checkbox-checkmark-color: var(--table-checkbox-icon-color, #ffffff);--checkbox-dash-color: var(--table-checkbox-icon-color, #ffffff);\n /* Named so a consumer can reach it. Table sets the Checkbox child's token\n directly, and a rule on the element beats anything declared at :root, so\n through <sui-table> the selection checkboxes' transition could not be\n slowed or stopped by any means -- custom properties are the only route\n across a shadow boundary and this one was already spoken for. */--checkbox-transition: var(--table-checkbox-transition, 0.15s);}\n\n /* ── Sort button ────────────────────────────────────────────────────────── */.sort-button.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: 2px;--button-margin: 0;--button-text-color: var(--table-sort-button-color, inherit);--button-border-radius: 4px;--button-width: fit-content;--button-height: fit-content;--button-hover-color: var(--table-sort-button-hover-background, rgba(0, 0, 0, 0.05));--button-hover-text-color: var(\n --table-sort-button-hover-color,\n var(--table-sort-button-color, inherit)\n );display:inline-flex;align-items:center;line-height:1;}.sort-button.svelte-171ci2i .sort-icon {display:inline-flex;align-items:center;}\n\n /* The sorted-direction half paints via currentColor; without an explicit\n color it inherits the Button's text color (white on the default button\n theme), which disappears on light headers. Default to the design\n system's active blue. */.sort-button.svelte-171ci2i .sort-icon:not(.sort-icon-idle) {color:var(--table-sort-active-color, #1b85ff);}.sort-button.svelte-171ci2i .sort-icon svg {width:var(--table-sort-icon-size, 14px);height:var(--table-sort-icon-size, 14px);display:block;}\n\n /* Two-tone state painting. The shared sort-default.svg asset stays\n color-agnostic (fill=\"currentColor\", like every other icon asset); the\n state colors live here. All halves default to the inactive fill, then\n the sorted direction's half is released back to currentColor (the\n active color above). Path order in the asset is up-chevron first,\n down-chevron second. */.sort-button.svelte-171ci2i .sort-icon svg path {fill:var(--table-sort-inactive-color, #c7c7c7);}.sort-button.svelte-171ci2i .sort-icon-asc svg path:first-child,\n .sort-button.svelte-171ci2i .sort-icon-desc svg path:last-child {fill:currentColor;}\n\n /* The design system draws every sort state fully opaque — faintness comes\n from the glyph fills (inactive halves #C7C7C7, active direction\n currentColor), never from transparency. The opacity vars remain for\n consumers that prefer a fade but now default to solid; hover steps the\n inactive halves to the design system's hover gray. */.sort-button.svelte-171ci2i .sort-icon-idle {opacity:var(--table-sort-idle-opacity, 1);}.sort-button.svelte-171ci2i:hover .sort-icon-idle {opacity:var(--table-sort-idle-hover-opacity, 1);--table-sort-inactive-color: var(--table-sort-hover-color, #797979);}\n\n /* ── Empty ──────────────────────────────────────────────────────────────── */.table-empty.svelte-171ci2i {padding:var(--table-empty-padding, 32px 24px);text-align:center;color:var(--table-empty-color, #9ca3af);}\n\n /* ── Footer ─────────────────────────────────────────────────────────────── */.table-footer.svelte-171ci2i {border-top:var(--table-footer-border, 1px solid #e5e7eb);padding:var(--table-footer-padding, 8px 16px);background-color:var(--table-footer-background, transparent);}.table-paginator.svelte-171ci2i {display:flex;align-items:center;justify-content:space-between;gap:var(--table-paginator-gap, 12px);flex-wrap:wrap;}.table-paginator-range.svelte-171ci2i {font-size:var(--table-paginator-range-font-size, 13px);color:var(--table-paginator-range-color, #6b7280);font-variant-numeric:tabular-nums;}.table-paginator-controls.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-paginator-gap, 12px);}.table-paginator-size.svelte-171ci2i {display:inline-flex;min-width:var(--table-paginator-size-width, 72px);\n /* Select's standalone defaults (40px min-height, 8px 12px padding) render\n 58px tall next to the 36px pagination buttons sharing this row. Match the\n steppers instead of towering over them. */--select-trigger-min-height: var(--table-paginator-size-height, 36px);--select-trigger-padding: var(--table-paginator-size-padding, 0 8px);}\n\n /* ── Toolbar (bulk actions) ─────────────────────────────────────────────── */.table-toolbar.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-toolbar-gap, 12px);padding:var(--table-toolbar-padding, 8px 12px);border:var(--table-toolbar-border, 1px solid #e5e7eb);border-radius:var(--table-toolbar-border-radius, var(--radius, 4px));background-color:var(--table-toolbar-background, #f9fafb);margin-bottom:var(--table-toolbar-margin-bottom, 8px);}\n\n /* ── Row-number column ──────────────────────────────────────────────────── */.table-row-number-col.svelte-171ci2i {width:var(--table-row-number-col-width, 48px);color:var(--table-row-number-color, #6b7280);font-variant-numeric:tabular-nums;text-align:var(--table-row-number-align, var(--table-text-align, left));}\n\n /* ── Accessibility ──────────────────────────────────────────────────────── */.sr-only.svelte-171ci2i {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}\n\n /* ── Mobile record cards (opt-in via `mobileCardLayout`) ──────────────────\n The label span is always in the DOM -- rendering it only under the media\n query below would mean an AT that queries computed style rather than\n layout (or a print stylesheet, or a future breakpoint change) sees no\n label at all until the exact 640px condition is re-evaluated. Keeping the\n element and toggling `display` is what lets `aria-hidden` on it (see the\n template) stay meaningful at every width: hidden today, but never a\n generated-content trick that could not carry that attribute in the first\n place. */.table-mobile-label.svelte-171ci2i {display:none;}\n\n /* The breakpoint is a literal, not `var(--table-mobile-breakpoint)`: a\n custom property can't be read inside an `@media` condition (only inside\n a declaration value), so a themable breakpoint was never on the table --\n documented in docs/Table.md rather than silently unsupported. */\n @media (max-width: 640px) {\n /* `display: table` (and its `-row`/`-cell`/etc. companions) is what gives\n a table its IMPLICIT header/cell ARIA semantics -- switching every one\n of these to `block` for the stacked-card look throws that away, which\n is exactly why `mobileRole()` in the script restates it explicitly as\n `table`/`rowgroup`/`row`/`columnheader`/`cell` on the elements below.\n Without both halves this rule would silently turn every consumer's\n table into an AX-tree list the moment their viewport narrowed. */.table-mobile-cards.svelte-171ci2i table:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i thead:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i tr:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i th:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i td:where(.svelte-171ci2i) {display:block;width:100%;}\n\n /* Headers are not shown as a row anymore -- their text now repeats per\n card as the `.table-mobile-label` beside each value -- but they stay\n in the DOM (not `display: none`) so `role=\"columnheader\"` continues\n naming its `role=\"cell\"` for any reading that still associates the\n two by DOM structure rather than only by the label span's text. */.table-mobile-cards.svelte-171ci2i thead:where(.svelte-171ci2i) {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}\n\n /* The horizontal-scroll affordance this table uses at desktop width (see\n .table-scroll / .table-scroll-shell above) has nothing to scroll once\n every cell is a full-width block, and a lingering scrim would fade a\n card edge that no longer clips anything. */.table-mobile-cards.svelte-171ci2i .table-scroll:where(.svelte-171ci2i) {overflow-x:visible;}.table-mobile-cards.svelte-171ci2i .table-scroll-shell:where(.svelte-171ci2i)::before,\n .table-mobile-cards.svelte-171ci2i .table-scroll-shell:where(.svelte-171ci2i)::after {display:none;}.table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i) tr.table-row:where(.svelte-171ci2i) {border:var(--table-mobile-card-border, 1px solid #e5e7eb);border-radius:var(\n --table-mobile-card-radius,\n var(--table-border-radius, var(--radius, 4px))\n );padding:var(--table-mobile-card-padding, 12px);margin-block-end:var(--table-mobile-card-gap, 12px);}.table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i) tr.table-row:where(.svelte-171ci2i):last-child {margin-block-end:0;}\n\n /* Each cell becomes a label/value pair instead of a table column; the\n label span (hidden above) is the only thing `display: inline` turns\n back on inside this query. */.table-mobile-cards.svelte-171ci2i td.table-content:where(.svelte-171ci2i) {display:flex;align-items:baseline;gap:var(--table-mobile-label-gap, 8px);border:none;}.table-mobile-cards.svelte-171ci2i .table-mobile-label:where(.svelte-171ci2i) {display:inline;flex:0 0 var(--table-mobile-label-width, 40%);font-weight:var(--table-mobile-label-font-weight, 600);color:var(--table-mobile-label-color, #6b7280);}.table-mobile-cards.svelte-171ci2i .table-mobile-value:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i td.table-content:where(.svelte-171ci2i) > div:where(.svelte-171ci2i) {flex:1 1 auto;min-width:0;}\n }"
|
|
22839
|
+
code: "\n /* ── Title ─────────────────────────────────────────────────────────────── */.table-title.svelte-171ci2i {margin:var(--table-title-margin, 0px 0px 12px 0px);font-size:var(--table-title-font-size, var(--table-tile-font-size, 18px));font-weight:var(--table-title-font-weight, 600);\n /* Unlike .table-content, a heading legitimately has no background of its\n own -- it sits directly on whatever surface the consumer places it on.\n The old #111827 literal ignored that surface entirely: on a dark page\n it measured a contrast of 1.03 against #1a1a26, i.e. invisible. `color`\n already inherits by default, so `inherit` states that explicitly and\n lets the title track its container's text colour; `currentColor` would\n resolve to the same value here (the spec special-cases it to mean\n exactly `inherit` for the `color` property) but reads as if it were\n referencing a colour set elsewhere on this rule, which it isn't. */color:var(--table-title-color, inherit);font-family:var(--table-title-font-family, inherit);padding:var(--table-title-padding);}\n\n /* ── C2-3 Search bar ────────────────────────────────────────────────────── */.table-search.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-search-gap, 8px);padding:var(--table-search-padding, 8px 12px);border:var(--table-search-border, 1px solid #e5e7eb);border-radius:var(--table-search-border-radius, var(--radius, 4px));background-color:var(--table-search-background, #ffffff);margin-bottom:var(--table-search-margin-bottom, 8px);}.table-search-icon.svelte-171ci2i {display:inline-flex;align-items:center;color:var(--table-search-icon-color, #9ca3af);flex-shrink:0;}.table-search-icon.svelte-171ci2i svg {width:var(--table-search-icon-size, 16px);height:var(--table-search-icon-size, 16px);}.table-search-input.svelte-171ci2i {flex:1;border:none;outline:none;background:transparent;font-size:var(--table-search-font-size, 14px);color:var(--table-search-color, #111827);min-width:0;}.table-search-input.svelte-171ci2i:focus-visible {outline:2px solid var(--table-focus-outline-color, #3b82f6);outline-offset:2px;border-radius:var(--table-search-focus-border-radius, var(--radius, 4px));}.table-search-input.svelte-171ci2i::placeholder {color:var(--table-search-placeholder-color, #4b5563);}\n\n /* Hide browser-default clear button on search inputs */.table-search-input.svelte-171ci2i::-webkit-search-cancel-button {display:none;}.table-search-clear.svelte-171ci2i {display:inline-flex;align-items:center;padding:2px;border:none;background:transparent;color:var(--table-search-clear-color, #6b7280);cursor:pointer;border-radius:4px;flex-shrink:0;}.table-search-clear.svelte-171ci2i:hover {color:var(--table-search-clear-hover-color, #111827);background-color:var(--table-search-clear-hover-background, rgba(0, 0, 0, 0.05));}.table-search-clear.svelte-171ci2i svg {width:var(--table-search-clear-icon-size, 14px);height:var(--table-search-clear-icon-size, 14px);}.table-header-inline-search.svelte-171ci2i {display:inline-flex;align-items:center;gap:var(--table-inline-search-gap, 6px);margin-left:auto;}.table-inline-search-trigger.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: var(--table-inline-search-trigger-padding, 4px);--button-text-color: var(--table-inline-search-icon-color, #9ca3af);}.table-inline-search-trigger.svelte-171ci2i svg {width:var(--table-inline-search-icon-size, 16px);height:var(--table-inline-search-icon-size, 16px);display:block;}.table-inline-search-input.svelte-171ci2i {--input-margin: 0;width:var(--table-inline-search-input-width, 160px);}.table-inline-search-clear.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: var(--table-inline-search-clear-padding, 2px);--button-text-color: var(--table-inline-search-clear-color, #6b7280);}.table-inline-search-clear.svelte-171ci2i svg {width:var(--table-inline-search-clear-icon-size, 14px);height:var(--table-inline-search-clear-icon-size, 14px);}\n\n /* ── Container ──────────────────────────────────────────────────────────── */\n /* `hidden` is the default because it is what clips the table's corners to\n this element's border-radius; without it the first and last cells square\n off over the rounded border. A consumer who needs the container itself to\n scroll sideways sets this to `auto` and accepts that trade. Note the\n scrollable variant below sets `overflow-y`, and per the CSS overflow spec\n a `visible` on one axis computes to `auto` when the other is not visible,\n so `visible` here does not survive on a scrollable table. */.table-container.svelte-171ci2i {border:var(--table-border, 1px solid #e5e7eb);border-radius:var(--table-border-radius, var(--radius, 4px));width:var(--table-container-width, 100%);overflow:var(--table-container-overflow, hidden);}.scrollable-table.svelte-171ci2i {height:var(--table-container-height, 143px);overflow-y:auto;}.table-scroll-shell.svelte-171ci2i {position:relative;min-width:0;}\n\n /* Edge scrims: fade the clipped side of the table into its background so\n hidden columns read as \"more content this way\". Class-driven from live\n scroll state — never shown when the table fits. pointer-events: none\n keeps cells under the fade clickable; z-index 2 paints above sticky\n headers (z-index 1). */.table-scroll-shell.svelte-171ci2i::before,\n .table-scroll-shell.svelte-171ci2i::after {content:'';position:absolute;top:0;bottom:0;width:var(--table-scroll-scrim-width, 32px);opacity:0;pointer-events:none;transition:opacity\n var(\n --table-scroll-scrim-transition-duration,\n var(--duration-base, var(--motion-duration, 0.2s))\n )\n var(--table-scroll-scrim-transition-easing, var(--motion-easing, ease));z-index:2;}.table-scroll-shell.svelte-171ci2i::before {left:0;border-radius:var(--table-border-radius, var(--radius, 4px)) 0 0\n var(--table-border-radius, var(--radius, 4px));background:linear-gradient(to right, var(--table-scroll-scrim-color, #ffffff), transparent);}.table-scroll-shell.svelte-171ci2i::after {right:0;border-radius:0 var(--table-border-radius, var(--radius, 4px))\n var(--table-border-radius, var(--radius, 4px)) 0;background:linear-gradient(to left, var(--table-scroll-scrim-color, #ffffff), transparent);}.table-scroll-shell.scrollable-left.svelte-171ci2i::before {opacity:1;}.table-scroll-shell.scrollable-right.svelte-171ci2i::after {opacity:1;}.table-scroll.svelte-171ci2i {overflow-x:auto;min-width:0;scrollbar-width:thin;}table.svelte-171ci2i {width:var(--table-width, 100%);border-collapse:var(--table-border-collapse, collapse);}.table-header.svelte-171ci2i,\n .table-content.svelte-171ci2i {border:var(--table-inner-border, none);padding:var(--table-padding, 12px 16px);text-align:var(--table-text-align, left);width:var(--table-column-width);\n /* Wrap at word boundaries; only a single word wider than the column may\n split as a last resort. break-word (not anywhere) keeps each column's\n min-content width at its longest word, so ordinary labels never split\n mid-word — the old break-all default did. Opt back in per consumer via\n --table-word-break / --table-overflow-wrap. */word-break:var(--table-word-break, normal);overflow-wrap:var(--table-overflow-wrap, break-word);}.scrollable-content.svelte-171ci2i {overflow-y:auto;height:var(--scrollable-column-height, 20px);}.table-header.svelte-171ci2i {background-color:var(--table-header-background, var(--table-header-border-bgcolor, #f9fafb));font-size:var(--table-header-font-size, 13px);font-family:var(--table-header-font-family, inherit);font-weight:var(--table-header-font-weight, 600);letter-spacing:var(--table-header-letter-spacing, 0.02em);text-transform:var(--table-header-text-transform, inherit);color:var(--table-header-color, var(--table-header-font-color, #6b7280));border-bottom:var(--table-header-border, var(--table-inner-border, none));}.table-header-content.svelte-171ci2i {display:flex;align-items:center;gap:4px;justify-content:var(--table-header-justify, flex-start);}.table-header-label.svelte-171ci2i {text-decoration:var(--table-header-tooltip-underline, underline dotted);text-underline-offset:2px;cursor:help;}.table-header-label-plain.svelte-171ci2i {text-decoration:none;}.table-header-filter.svelte-171ci2i {display:inline-flex;align-items:center;}.table-header-filter-trigger.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: 2px;--button-margin: 0;--button-width: fit-content;--button-height: fit-content;--button-text-color: var(--table-sort-button-color, inherit);--button-border-radius: 4px;--button-hover-color: var(--table-sort-button-hover-background, rgba(0, 0, 0, 0.05));display:inline-flex;align-items:center;opacity:var(--table-sort-idle-opacity, 0.5);}.table-header-filter-trigger.svelte-171ci2i:hover {opacity:var(--table-sort-idle-hover-opacity, 0.85);}.table-header-filter-active.svelte-171ci2i {opacity:1;color:var(--table-filter-active-color, #2563eb);}.table-header-filter-icon.svelte-171ci2i svg {width:var(--table-sort-icon-size, 14px);height:var(--table-sort-icon-size, 14px);display:block;}.table-cell-clamp.svelte-171ci2i {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.table-header-sticky.svelte-171ci2i {position:sticky;top:var(--table-header-sticky-top, 0);z-index:1;}.table-content.svelte-171ci2i {\n /* The terminal #ffffff matters as much as the colour beside it. Without it\n the whole declaration is invalid at computed-value time when neither\n variable is set, so the cell falls back to `transparent` and inherits\n whatever surface it lands on -- while `color` still resolves to a\n hardcoded near-black. On a dark page that is #111827 on #1a1a26: a\n measured contrast of 1.03, i.e. invisible. The header row never had the\n bug because it pairs its colour with a background of its own. */background-color:var(--table-content-background, var(--table-content-border-bgcolor, #ffffff));font-size:var(--table-content-font-size, 14px);font-family:var(--table-content-font-family, inherit);color:var(--table-content-color, var(--table-content-font-color, #111827));}\n\n /* Column highlight (TableColumn.highlighted). Row hover keeps higher\n specificity and row selection is declared later at equal specificity, so\n both row states paint over the column wash. */.table-header.table-col-highlighted.svelte-171ci2i {background-color:var(\n --table-col-highlight-header-background,\n var(--table-col-highlight-background, #f3f9ff)\n );}.table-content.table-col-highlighted.svelte-171ci2i {background-color:var(--table-col-highlight-background, #f3f9ff);}.table-row.svelte-171ci2i {border-bottom:var(--table-row-border, 1px solid #f3f4f6);background-color:var(--table-row-background);}.table-row.svelte-171ci2i:last-child {border-bottom:var(--table-row-last-border, none);}.table-row.svelte-171ci2i:nth-child(even) {background-color:var(--table-row-alt-background, var(--table-row-background));}.table-row.svelte-171ci2i:hover {background-color:var(--table-row-hover-background);}.table-row.svelte-171ci2i:hover > .table-content:where(.svelte-171ci2i) {background-color:var(\n --table-row-hover-background,\n var(--table-content-background, var(--table-content-border-bgcolor))\n );}.table-row-clickable.svelte-171ci2i {cursor:pointer;}.table-row-clickable.svelte-171ci2i:focus-visible {outline:2px solid var(--table-focus-outline-color, #3b82f6);outline-offset:-2px;}\n\n /* C2-1: Selected row highlight */.table-row-selected.svelte-171ci2i {background-color:var(--table-row-selected-background, #eff6ff);}.table-row-selected.svelte-171ci2i > .table-content:where(.svelte-171ci2i) {background-color:var(--table-row-selected-background, #eff6ff);}\n\n /* Summary/period-total row (summaryRowIndex): both the row and its cells,\n since a themed --table-content-background would otherwise paint over a\n row-level background. Falls back to the regular cell background. */.table-summary-row.svelte-171ci2i {background-color:var(--table-summary-row-background, var(--table-content-background));}.table-summary-row.svelte-171ci2i > .table-content:where(.svelte-171ci2i) {background-color:var(--table-summary-row-background, var(--table-content-background));}\n\n /* ── C2-1 Checkbox column ───────────────────────────────────────────────── */\n /* The column renders the library Checkbox. The table's own --table-checkbox-*\n tokens stay the public API and are bridged onto Checkbox's --checkbox-*\n variables here, so a consumer theming the table keeps working and a\n consumer theming Checkbox app-wide is overridden only inside the table. */.table-checkbox-col.svelte-171ci2i {width:var(--table-checkbox-col-width, 44px);padding:var(--table-checkbox-col-padding, 12px 12px);--checkbox-container-gap: 0;--checkbox-size: var(--table-checkbox-size, 18px);--checkbox-border: var(--table-checkbox-border, 2px solid #9ca3af);--checkbox-border-radius: var(--table-checkbox-border-radius, var(--radius, 4px));--checkbox-background: var(--table-checkbox-background, transparent);--checkbox-hover-border-color: var(--table-checkbox-hover-border-color, #6b7280);--checkbox-checked-background: var(--table-checkbox-checked-background, #2563eb);--checkbox-checked-border: var(\n --table-checkbox-checked-border,\n 2px solid var(--table-checkbox-checked-border-color, #2563eb)\n );--checkbox-indeterminate-background: var(--table-checkbox-indeterminate-background, #2563eb);--checkbox-indeterminate-border: var(\n --table-checkbox-indeterminate-border,\n 2px solid var(--table-checkbox-indeterminate-border-color, #2563eb)\n );--checkbox-disabled-opacity: var(--table-checkbox-disabled-opacity, 0.4);--checkbox-focus-ring: var(--table-checkbox-focus-ring, 0 0 0 3px rgba(59, 130, 246, 0.3));--checkbox-icon-size: var(--table-checkbox-icon-size, 12px);--checkbox-checkmark-color: var(--table-checkbox-icon-color, #ffffff);--checkbox-dash-color: var(--table-checkbox-icon-color, #ffffff);\n /* Named so a consumer can reach it. Table sets the Checkbox child's token\n directly, and a rule on the element beats anything declared at :root, so\n through <sui-table> the selection checkboxes' transition could not be\n slowed or stopped by any means -- custom properties are the only route\n across a shadow boundary and this one was already spoken for. */--checkbox-transition: var(\n --table-checkbox-transition,\n var(--duration-quick, var(--motion-duration, 0.15s))\n );}\n\n /* ── Sort button ────────────────────────────────────────────────────────── */.sort-button.svelte-171ci2i {--button-color: transparent;--button-border: none;--button-padding: 2px;--button-margin: 0;--button-text-color: var(--table-sort-button-color, inherit);--button-border-radius: 4px;--button-width: fit-content;--button-height: fit-content;--button-hover-color: var(--table-sort-button-hover-background, rgba(0, 0, 0, 0.05));--button-hover-text-color: var(\n --table-sort-button-hover-color,\n var(--table-sort-button-color, inherit)\n );display:inline-flex;align-items:center;line-height:1;}.sort-button.svelte-171ci2i .sort-icon {display:inline-flex;align-items:center;}\n\n /* The sorted-direction half paints via currentColor; without an explicit\n color it inherits the Button's text color (white on the default button\n theme), which disappears on light headers. Default to the design\n system's active blue. */.sort-button.svelte-171ci2i .sort-icon:not(.sort-icon-idle) {color:var(--table-sort-active-color, #1b85ff);}.sort-button.svelte-171ci2i .sort-icon svg {width:var(--table-sort-icon-size, 14px);height:var(--table-sort-icon-size, 14px);display:block;}\n\n /* Two-tone state painting. The shared sort-default.svg asset stays\n color-agnostic (fill=\"currentColor\", like every other icon asset); the\n state colors live here. All halves default to the inactive fill, then\n the sorted direction's half is released back to currentColor (the\n active color above). Path order in the asset is up-chevron first,\n down-chevron second. */.sort-button.svelte-171ci2i .sort-icon svg path {fill:var(--table-sort-inactive-color, #c7c7c7);}.sort-button.svelte-171ci2i .sort-icon-asc svg path:first-child,\n .sort-button.svelte-171ci2i .sort-icon-desc svg path:last-child {fill:currentColor;}\n\n /* The design system draws every sort state fully opaque — faintness comes\n from the glyph fills (inactive halves #C7C7C7, active direction\n currentColor), never from transparency. The opacity vars remain for\n consumers that prefer a fade but now default to solid; hover steps the\n inactive halves to the design system's hover gray. */.sort-button.svelte-171ci2i .sort-icon-idle {opacity:var(--table-sort-idle-opacity, 1);}.sort-button.svelte-171ci2i:hover .sort-icon-idle {opacity:var(--table-sort-idle-hover-opacity, 1);--table-sort-inactive-color: var(--table-sort-hover-color, #797979);}\n\n /* ── Empty ──────────────────────────────────────────────────────────────── */.table-empty.svelte-171ci2i {padding:var(--table-empty-padding, 32px 24px);text-align:center;color:var(--table-empty-color, #9ca3af);}\n\n /* ── Footer ─────────────────────────────────────────────────────────────── */.table-footer.svelte-171ci2i {border-top:var(--table-footer-border, 1px solid #e5e7eb);padding:var(--table-footer-padding, 8px 16px);background-color:var(--table-footer-background, transparent);}.table-paginator.svelte-171ci2i {display:flex;align-items:center;justify-content:space-between;gap:var(--table-paginator-gap, 12px);flex-wrap:wrap;}.table-paginator-range.svelte-171ci2i {font-size:var(--table-paginator-range-font-size, 13px);color:var(--table-paginator-range-color, #6b7280);font-variant-numeric:tabular-nums;}.table-paginator-controls.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-paginator-gap, 12px);}.table-paginator-size.svelte-171ci2i {display:inline-flex;min-width:var(--table-paginator-size-width, 72px);\n /* Select's standalone defaults (40px min-height, 8px 12px padding) render\n 58px tall next to the 36px pagination buttons sharing this row. Match the\n steppers instead of towering over them. */--select-trigger-min-height: var(--table-paginator-size-height, 36px);--select-trigger-padding: var(--table-paginator-size-padding, 0 8px);}\n\n /* ── Toolbar (bulk actions) ─────────────────────────────────────────────── */.table-toolbar.svelte-171ci2i {display:flex;align-items:center;gap:var(--table-toolbar-gap, 12px);padding:var(--table-toolbar-padding, 8px 12px);border:var(--table-toolbar-border, 1px solid #e5e7eb);border-radius:var(--table-toolbar-border-radius, var(--radius, 4px));background-color:var(--table-toolbar-background, #f9fafb);margin-bottom:var(--table-toolbar-margin-bottom, 8px);}\n\n /* ── Row-number column ──────────────────────────────────────────────────── */.table-row-number-col.svelte-171ci2i {width:var(--table-row-number-col-width, 48px);color:var(--table-row-number-color, #6b7280);font-variant-numeric:tabular-nums;text-align:var(--table-row-number-align, var(--table-text-align, left));}\n\n /* ── Accessibility ──────────────────────────────────────────────────────── */.sr-only.svelte-171ci2i {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}\n\n /* ── Mobile record cards (opt-in via `mobileCardLayout`) ──────────────────\n The label span is always in the DOM -- rendering it only under the media\n query below would mean an AT that queries computed style rather than\n layout (or a print stylesheet, or a future breakpoint change) sees no\n label at all until the exact 640px condition is re-evaluated. Keeping the\n element and toggling `display` is what lets `aria-hidden` on it (see the\n template) stay meaningful at every width: hidden today, but never a\n generated-content trick that could not carry that attribute in the first\n place. */.table-mobile-label.svelte-171ci2i {display:none;}\n\n /* The breakpoint is a literal, not `var(--table-mobile-breakpoint)`: a\n custom property can't be read inside an `@media` condition (only inside\n a declaration value), so a themable breakpoint was never on the table --\n documented in docs/Table.md rather than silently unsupported. */\n @media (max-width: 640px) {\n /* `display: table` (and its `-row`/`-cell`/etc. companions) is what gives\n a table its IMPLICIT header/cell ARIA semantics -- switching every one\n of these to `block` for the stacked-card look throws that away, which\n is exactly why `mobileRole()` in the script restates it explicitly as\n `table`/`rowgroup`/`row`/`columnheader`/`cell` on the elements below.\n Without both halves this rule would silently turn every consumer's\n table into an AX-tree list the moment their viewport narrowed. */.table-mobile-cards.svelte-171ci2i table:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i thead:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i tr:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i th:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i td:where(.svelte-171ci2i) {display:block;width:100%;}\n\n /* Headers are not shown as a row anymore -- their text now repeats per\n card as the `.table-mobile-label` beside each value -- but they stay\n in the DOM (not `display: none`) so `role=\"columnheader\"` continues\n naming its `role=\"cell\"` for any reading that still associates the\n two by DOM structure rather than only by the label span's text. */.table-mobile-cards.svelte-171ci2i thead:where(.svelte-171ci2i) {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}\n\n /* The horizontal-scroll affordance this table uses at desktop width (see\n .table-scroll / .table-scroll-shell above) has nothing to scroll once\n every cell is a full-width block, and a lingering scrim would fade a\n card edge that no longer clips anything. */.table-mobile-cards.svelte-171ci2i .table-scroll:where(.svelte-171ci2i) {overflow-x:visible;}.table-mobile-cards.svelte-171ci2i .table-scroll-shell:where(.svelte-171ci2i)::before,\n .table-mobile-cards.svelte-171ci2i .table-scroll-shell:where(.svelte-171ci2i)::after {display:none;}.table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i) tr.table-row:where(.svelte-171ci2i) {border:var(--table-mobile-card-border, 1px solid #e5e7eb);border-radius:var(\n --table-mobile-card-radius,\n var(--table-border-radius, var(--radius, 4px))\n );padding:var(--table-mobile-card-padding, 12px);margin-block-end:var(--table-mobile-card-gap, 12px);}.table-mobile-cards.svelte-171ci2i tbody:where(.svelte-171ci2i) tr.table-row:where(.svelte-171ci2i):last-child {margin-block-end:0;}\n\n /* Each cell becomes a label/value pair instead of a table column; the\n label span (hidden above) is the only thing `display: inline` turns\n back on inside this query. */.table-mobile-cards.svelte-171ci2i td.table-content:where(.svelte-171ci2i) {display:flex;align-items:baseline;gap:var(--table-mobile-label-gap, 8px);border:none;}.table-mobile-cards.svelte-171ci2i .table-mobile-label:where(.svelte-171ci2i) {display:inline;flex:0 0 var(--table-mobile-label-width, 40%);font-weight:var(--table-mobile-label-font-weight, 600);color:var(--table-mobile-label-color, #6b7280);}.table-mobile-cards.svelte-171ci2i .table-mobile-value:where(.svelte-171ci2i),\n .table-mobile-cards.svelte-171ci2i td.table-content:where(.svelte-171ci2i) > div:where(.svelte-171ci2i) {flex:1 1 auto;min-width:0;}\n }"
|
|
22628
22840
|
};
|
|
22629
22841
|
function Table(e, t) {
|
|
22630
22842
|
push(t, !0), append_styles$1(e, $$css$86);
|
|
@@ -23757,71 +23969,47 @@ customElements.define("sui-table", create_custom_element(Table_wc, {
|
|
|
23757
23969
|
//#region src/lib/Toast/Toast.svelte
|
|
23758
23970
|
var root$42 = /* @__PURE__ */ from_html("<div class=\"toast-icon-wrapper svelte-37crwe\"><!></div>"), root_1$39 = /* @__PURE__ */ from_html("<div class=\"toast-subtext svelte-37crwe\"> </div>"), root_2$30 = /* @__PURE__ */ from_html("<div class=\"close-button svelte-37crwe\" tabindex=\"0\" role=\"button\"><!></div>"), root_3$27 = /* @__PURE__ */ from_html("<div role=\"alert\" aria-live=\"assertive\"><!> <div class=\"toast-message svelte-37crwe\"> <!> <!></div> <!></div>"), $$css$84 = {
|
|
23759
23971
|
hash: "svelte-37crwe",
|
|
23760
|
-
code: ".toast.svelte-37crwe {padding:var(--toast-padding, 10px);font-size:var(--toast-font-size, 14px);font-family:var(--toast-font-family, inherit);font-weight:var(--toast-font-weight, inherit);height:var(--toast-height, fit-content);border-radius:var(--toast-border-radius, var(--radius, 4px));border:var(--toast-border, none);border-style:var(--toast-border-style);width:var(--toast-width, fit-content);align-items:var(--toast-align-items, center);margin:var(--toast-margin, 0px 10px 10px 10px);justify-content:var(--toast-justify-content, space-between);z-index:var(--toast-z-index, 1000);
|
|
23972
|
+
code: ".toast.svelte-37crwe {padding:var(--toast-padding, 10px);font-size:var(--toast-font-size, 14px);font-family:var(--toast-font-family, inherit);font-weight:var(--toast-font-weight, inherit);height:var(--toast-height, fit-content);border-radius:var(--toast-border-radius, var(--radius, 4px));border:var(--toast-border, none);border-style:var(--toast-border-style);width:var(--toast-width, fit-content);align-items:var(--toast-align-items, center);margin:var(--toast-margin, 0px 10px 10px 10px);justify-content:var(--toast-justify-content, space-between);z-index:var(--toast-z-index, 1000);position:var(--toast-position, absolute);top:var(--toast-top, 10px);left:var(--toast-left, 0);right:var(--toast-right, 0);bottom:var(--toast-bottom, auto);background-color:var(--toast-background-color, #87ceeb);box-sizing:var(--toast-box-sizing);\n\n /* A toast is a transient status overlay, not a click target: it floats\n above page content (often over drawer/footer CTAs) and used to swallow\n clicks meant for the controls beneath it for its whole duration.\n Click-through by default; the close button re-enables its own hit\n area below, and consumers with actionable bottomContent can opt the\n whole toast back in via --toast-pointer-events: auto. */pointer-events:var(--toast-pointer-events, none);\n\n /* Closed / pre-enter state. `@starting-style` below reuses these same\n values for the entrance's \"before\" frame, and removing `.is-visible`\n transitions back to these same values for the exit -- one shared\n \"hidden\" declaration, not independent in/out targets the way\n `in:fly`/`out:fly` configs could be. */display:none;opacity:0;transform:translate(var(--toast-enter-x, 0px), var(--toast-enter-y, 0px));\n\n /* max(50ms, …) rather than trusting the JS-side floor alone (toDurationStyle,\n in the script block): that only clamps the inAnimationDuration/\n outAnimationDuration PROP path. A consumer overriding --toast-close-duration\n directly via CSS -- the whole point of exposing it as a token -- bypasses\n the prop entirely, and a 0s/1ms transition never starts, so it never fires\n transitionend, so ontoasthide never runs. The floor has to live wherever\n the duration is actually consumed, not just where the props feed it. */transition:opacity max(50ms, var(--toast-close-duration, var(--motion-duration, 0.8s)))\n var(--toast-close-easing, var(--motion-easing, ease-in)),\n transform max(50ms, var(--toast-close-duration, var(--motion-duration, 0.8s)))\n var(--toast-close-easing, var(--motion-easing, ease-in)),\n display max(50ms, var(--toast-close-duration, var(--motion-duration, 0.8s))) allow-discrete;}.toast.is-visible.svelte-37crwe {display:var(--toast-display, flex);opacity:var(--toast-opacity, 1);transform:translate(0, 0);\n\n /* 400ms matches --duration-slow exactly (DESIGN_PRINCIPLES.md #1's scale),\n so it sits in this chain as the named tier; 800ms (the close side above)\n matches no named tier and skips straight to the root token. */\n /* Same max(50ms, …) floor as the closed-state block below, and for the same\n reason -- a consumer-set --toast-open-duration can bypass the JS-side\n floor on the inAnimationDuration prop just as easily as the close side. */transition:opacity\n max(50ms, var(--toast-open-duration, var(--duration-slow, var(--motion-duration, 0.4s))))\n var(--toast-open-easing, var(--ease-out, var(--motion-easing, ease-out))),\n transform\n max(50ms, var(--toast-open-duration, var(--duration-slow, var(--motion-duration, 0.4s))))\n var(--toast-open-easing, var(--ease-out, var(--motion-easing, ease-out))),\n display\n max(50ms, var(--toast-open-duration, var(--duration-slow, var(--motion-duration, 0.4s))))\n allow-discrete;\n\n @starting-style {opacity:0;transform:translate(var(--toast-enter-x, 0px), var(--toast-enter-y, 0px));\n }}.no-page-overlap.svelte-37crwe {position:var(--toast-position, relative);}.toast[data-direction='left-to-right'].svelte-37crwe {--toast-enter-x: calc(-1 * var(--distance-overlay, 60px));}.toast[data-direction='right-to-left'].svelte-37crwe {--toast-enter-x: var(--distance-overlay, 60px);}.toast[data-direction='bottom-to-top'].svelte-37crwe {--toast-enter-y: var(--distance-overlay, 60px);}.toast[data-direction='top-to-bottom'].svelte-37crwe {--toast-enter-y: calc(-1 * var(--distance-overlay, 60px));}\n\n /* Vertical directions travel a shorter, fixed distance in non-overlap mode --\n today's own literal (20px), kept as its own value rather than forced onto\n `--distance-overlay`: that token replaces the old 500px \"flying\" default,\n and 20px was already reasonable (DESIGN_PRINCIPLES.md #1). Horizontal\n directions never varied with `overlapPage` before this migration (see the\n pre-migration `getAnimationConfig` switch), so they get no non-overlap\n override here either. */.toast.no-page-overlap[data-direction='bottom-to-top'].svelte-37crwe {--toast-enter-y: 20px;}.toast.no-page-overlap[data-direction='top-to-bottom'].svelte-37crwe {--toast-enter-y: -20px;}\n\n /* Accessibility guard, not a style preference -- `!important` is deliberate.\n It has to outrank both the direction rules above and any per-instance\n inline `--toast-enter-x`/`-y` the component sets from `inAnimationOffset`/\n `outAnimationOffset` above (an inline style otherwise beats any selector in\n this sheet). Duration floors at 0.05s rather than 0s so the\n `transitionend` listener that fires `ontoasthide` still runs -- a `0s`\n transition never starts, so it never ends, and (empirically, under heavy\n main-thread jank) even a 1ms duration can get coalesced across a single\n style recalc with no observable \"before\" frame, which drops\n `transitionend` the same way. 50ms clears a normal frame budget with\n margin while staying well under perceptible motion. See\n DESIGN_PRINCIPLES.md #1 on matching a guard's specificity to what it has\n to override. */\n @media (prefers-reduced-motion: reduce) {.toast.svelte-37crwe,\n .toast.is-visible.svelte-37crwe {--toast-enter-x: 0px !important;--toast-enter-y: 0px !important;transition-duration:0.05s !important;}\n }.toast-icon-wrapper.svelte-37crwe {display:flex;width:var(--toast-icon-wrapper-width, 20px);height:var(--toast-icon-wrapper-height, 20px);margin:var(--toast-icon-margin, 0px 6px 0px 0px);padding:var(--toast-icon-wrapper-padding, 1px);align-items:center;--image-height: var(--toast-icon-height, 100%);--image-width: fit-content;--image-filter: var(--toast-icon-filter, none);--image-border-radius: var(--toast-icon-border-radius, 50%);}.toast-message.svelte-37crwe {display:var(--toast-message-display, flex);flex:var(--toast-message-flex, 1);padding:var(--toast-message-padding, 1px);flex-direction:column;}.toast-subtext.svelte-37crwe {color:var(--toast-subtext-color, #c7c7c7);font-size:var(--toast-subtext-font-size, 10px);font-weight:var(--toast-subtext-font-weight, 400);margin:var(--toast-subtext-margin, 10px 0px 0px 0px);}.close-button.svelte-37crwe {pointer-events:auto;width:var(--toast-close-button-width, 20px);height:var(--toast-close-button-height, 20px);cursor:var(--toast-close-button-cursor, pointer);gap:var(--toast-close-button-gap, 6px);margin:var(--toast-close-button-margin, 0px 0px 0px 10px);display:var(--toast-close-button-display, flex);align-items:var(--toast-close-button-align-items, center);justify-content:var(--toast-close-button-justify-content, center);padding:var(--toast-close-button-padding, 1px);--image-height: var(--toast-icon-height, 100%);--image-width: fit-content;--image-filter: var(--toast-icon-filter, none);--image-border-radius: var(--toast-icon-border-radius, 50%);}.success.svelte-37crwe {color:var(--toast-success-text, #fff);background-color:var(--toast-success-background-color, var(--toast-background-color, #24aa5a));--toast-border: var(--toast-success-border);}.info.svelte-37crwe {color:var(--toast-info-text, #fff);background-color:var(--toast-info-background-color, var(--toast-background-color, #87ceeb));--toast-border: var(--toast-info-border);}.warn.svelte-37crwe {color:var(--toast-warn-text, #fff);background-color:var(--toast-warn-background-color, var(--toast-background-color, #f3a42d));--toast-border: var(--toast-warn-border);}.error.svelte-37crwe {color:var(--toast-error-text, #fff);background-color:var(--toast-error-background-color, var(--toast-background-color, #f04438));--toast-border: var(--toast-error-border);}"
|
|
23761
23973
|
};
|
|
23762
23974
|
function Toast(e, t) {
|
|
23763
23975
|
push(t, !0), append_styles$1(e, $$css$84);
|
|
23764
|
-
let n = prop(t, "duration", 7, 2e3), i = prop(t, "leftIcon", 7), a = prop(t, "message", 7, ""), o = prop(t, "subtext", 7), s = prop(t, "rightIcon", 7), c = prop(t, "type", 7), l = prop(t, "direction", 7), u = prop(t, "overlapPage", 7, !0), f = prop(t, "inAnimationOffset", 7), p = prop(t, "inAnimationDuration", 7), h = prop(t, "outAnimationOffset", 7), S = prop(t, "outAnimationDuration", 7), C = prop(t, "testId", 7), k = prop(t, "messageTestId", 7), R = prop(t, "subTextTestId", 7), te = prop(t, "closeIconTestId", 7), ne = prop(t, "ontoasthide", 7), re = prop(t, "bottomContent", 7), G = prop(t, "classes", 7), be = /* @__PURE__ */
|
|
23976
|
+
let n = prop(t, "duration", 7, 2e3), i = prop(t, "leftIcon", 7), a = prop(t, "message", 7, ""), o = prop(t, "subtext", 7), s = prop(t, "rightIcon", 7), c = prop(t, "type", 7), l = prop(t, "direction", 7), u = prop(t, "overlapPage", 7, !0), f = prop(t, "inAnimationOffset", 7), p = prop(t, "inAnimationDuration", 7), h = prop(t, "outAnimationOffset", 7), S = prop(t, "outAnimationDuration", 7), C = prop(t, "testId", 7), k = prop(t, "messageTestId", 7), R = prop(t, "subTextTestId", 7), te = prop(t, "closeIconTestId", 7), ne = prop(t, "ontoasthide", 7), re = prop(t, "bottomContent", 7), G = prop(t, "classes", 7), be = /* @__PURE__ */ state(!0), Me = /* @__PURE__ */ user_derived(() => [
|
|
23765
23977
|
"toast",
|
|
23766
23978
|
c() ?? "",
|
|
23767
23979
|
G() ?? ""
|
|
23768
|
-
].filter((e) => e.length > 0).join(" "));
|
|
23769
|
-
function Ue() {
|
|
23770
|
-
|
|
23980
|
+
].filter((e) => e.length > 0).join(" ")), Re = /* @__PURE__ */ user_derived(() => l() ?? "top-to-bottom");
|
|
23981
|
+
function Ue(e, t) {
|
|
23982
|
+
switch (e) {
|
|
23983
|
+
case "left-to-right": return { x: -t };
|
|
23984
|
+
case "right-to-left": return { x: t };
|
|
23985
|
+
case "bottom-to-top": return { y: t };
|
|
23986
|
+
default: return { y: -t };
|
|
23987
|
+
}
|
|
23988
|
+
}
|
|
23989
|
+
let it = /* @__PURE__ */ user_derived(() => {
|
|
23990
|
+
let e = f() ?? h();
|
|
23991
|
+
return e == null ? {} : Ue(get(Re), e);
|
|
23992
|
+
});
|
|
23993
|
+
function at(e) {
|
|
23994
|
+
return typeof e == "number" ? `${Math.max(e, 50)}ms` : null;
|
|
23771
23995
|
}
|
|
23772
|
-
|
|
23773
|
-
|
|
23996
|
+
let ot = /* @__PURE__ */ user_derived(() => at(p())), ct = /* @__PURE__ */ user_derived(() => at(S()));
|
|
23997
|
+
function lt() {
|
|
23998
|
+
set(be, !1);
|
|
23774
23999
|
}
|
|
23775
|
-
function
|
|
23776
|
-
|
|
23777
|
-
switch (t) {
|
|
23778
|
-
case "left-to-right":
|
|
23779
|
-
n = -1 * (f() ?? 500), a = -1 * (h() ?? 500);
|
|
23780
|
-
break;
|
|
23781
|
-
case "right-to-left":
|
|
23782
|
-
n = f() ?? 500, a = h() ?? 500;
|
|
23783
|
-
break;
|
|
23784
|
-
case "bottom-to-top":
|
|
23785
|
-
i = f() ?? (e ? 500 : 20), o = h() ?? (e ? 500 : 20);
|
|
23786
|
-
break;
|
|
23787
|
-
default:
|
|
23788
|
-
i = -1 * (f() ?? (e ? 500 : 20)), o = -1 * (h() ?? (e ? 100 : 20));
|
|
23789
|
-
break;
|
|
23790
|
-
}
|
|
23791
|
-
return prefersReducedMotion() ? {
|
|
23792
|
-
in: {
|
|
23793
|
-
x: 0,
|
|
23794
|
-
y: 0,
|
|
23795
|
-
duration: 0
|
|
23796
|
-
},
|
|
23797
|
-
out: {
|
|
23798
|
-
x: 0,
|
|
23799
|
-
y: 0,
|
|
23800
|
-
duration: 0
|
|
23801
|
-
}
|
|
23802
|
-
} : {
|
|
23803
|
-
in: {
|
|
23804
|
-
x: n,
|
|
23805
|
-
y: i,
|
|
23806
|
-
duration: p() ?? 400
|
|
23807
|
-
},
|
|
23808
|
-
out: {
|
|
23809
|
-
x: a,
|
|
23810
|
-
y: o,
|
|
23811
|
-
duration: S() ?? 800
|
|
23812
|
-
}
|
|
23813
|
-
};
|
|
24000
|
+
function ut(e) {
|
|
24001
|
+
e.target === e.currentTarget && e.propertyName === "opacity" && !get(be) && ne()?.();
|
|
23814
24002
|
}
|
|
23815
24003
|
user_effect(() => {
|
|
23816
24004
|
a(), n(), untrack(() => {
|
|
23817
|
-
set(
|
|
24005
|
+
set(be, !0);
|
|
23818
24006
|
});
|
|
23819
|
-
let e = setTimeout(
|
|
24007
|
+
let e = setTimeout(lt, n());
|
|
23820
24008
|
return () => {
|
|
23821
24009
|
clearTimeout(e);
|
|
23822
24010
|
};
|
|
23823
24011
|
});
|
|
23824
|
-
var
|
|
24012
|
+
var dt = {
|
|
23825
24013
|
get duration() {
|
|
23826
24014
|
return n();
|
|
23827
24015
|
},
|
|
@@ -23936,63 +24124,66 @@ function Toast(e, t) {
|
|
|
23936
24124
|
set classes(e) {
|
|
23937
24125
|
G(e), flushSync();
|
|
23938
24126
|
}
|
|
23939
|
-
},
|
|
23940
|
-
|
|
23941
|
-
|
|
23942
|
-
var
|
|
23943
|
-
|
|
23944
|
-
|
|
23945
|
-
|
|
23946
|
-
|
|
23947
|
-
|
|
23948
|
-
|
|
23949
|
-
|
|
23950
|
-
|
|
23951
|
-
|
|
23952
|
-
|
|
23953
|
-
|
|
23954
|
-
|
|
23955
|
-
|
|
23956
|
-
var
|
|
23957
|
-
|
|
23958
|
-
|
|
23959
|
-
|
|
23960
|
-
|
|
23961
|
-
|
|
23962
|
-
|
|
23963
|
-
|
|
23964
|
-
|
|
23965
|
-
var
|
|
23966
|
-
|
|
23967
|
-
|
|
23968
|
-
|
|
23969
|
-
|
|
23970
|
-
|
|
23971
|
-
|
|
23972
|
-
var
|
|
23973
|
-
|
|
23974
|
-
|
|
23975
|
-
|
|
23976
|
-
|
|
23977
|
-
|
|
23978
|
-
|
|
23979
|
-
|
|
23980
|
-
fallback: ""
|
|
23981
|
-
}), reset(t), template_effect(() => {
|
|
23982
|
-
set_attribute(t, "data-pw", te()), set_attribute(t, "testid", te());
|
|
23983
|
-
}), delegated("click", t, Ue), delegated("keydown", t, (e) => {
|
|
23984
|
-
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), Ue());
|
|
23985
|
-
}), append(e, t);
|
|
23986
|
-
};
|
|
23987
|
-
if_block(Me, (e) => {
|
|
23988
|
-
typeof s() == "string" && s().length > 0 && e(at);
|
|
24127
|
+
}, ft = root_3$27();
|
|
24128
|
+
let pt, mt;
|
|
24129
|
+
var ht = child(ft), gt = (e) => {
|
|
24130
|
+
var t = root$42();
|
|
24131
|
+
Img(child(t), {
|
|
24132
|
+
inlineSvg: !0,
|
|
24133
|
+
get src() {
|
|
24134
|
+
return i();
|
|
24135
|
+
},
|
|
24136
|
+
alt: "",
|
|
24137
|
+
fallback: ""
|
|
24138
|
+
}), reset(t), append(e, t);
|
|
24139
|
+
};
|
|
24140
|
+
if_block(ht, (e) => {
|
|
24141
|
+
typeof i() == "string" && i().length > 0 && e(gt);
|
|
24142
|
+
});
|
|
24143
|
+
var _t = sibling(ht, 2), vt = child(_t), yt = sibling(vt), bt = (e) => {
|
|
24144
|
+
var t = root_1$39(), n = child(t, !0);
|
|
24145
|
+
reset(t), template_effect(() => {
|
|
24146
|
+
set_attribute(t, "data-pw", R()), set_attribute(t, "testid", R()), set_text(n, o());
|
|
24147
|
+
}), append(e, t);
|
|
24148
|
+
};
|
|
24149
|
+
if_block(yt, (e) => {
|
|
24150
|
+
typeof o() == "string" && o().length > 0 && e(bt);
|
|
24151
|
+
});
|
|
24152
|
+
var xt = sibling(yt, 2), St = (e) => {
|
|
24153
|
+
var t = comment();
|
|
24154
|
+
snippet(first_child(t), re), append(e, t);
|
|
24155
|
+
};
|
|
24156
|
+
if_block(xt, (e) => {
|
|
24157
|
+
typeof re() == "function" && e(St);
|
|
24158
|
+
}), reset(_t);
|
|
24159
|
+
var Ct = sibling(_t, 2), wt = (e) => {
|
|
24160
|
+
var t = root_2$30();
|
|
24161
|
+
Img(child(t), {
|
|
24162
|
+
inlineSvg: !0,
|
|
24163
|
+
get src() {
|
|
24164
|
+
return s();
|
|
24165
|
+
},
|
|
24166
|
+
alt: "Close",
|
|
24167
|
+
fallback: ""
|
|
23989
24168
|
}), reset(t), template_effect(() => {
|
|
23990
|
-
|
|
23991
|
-
}),
|
|
24169
|
+
set_attribute(t, "data-pw", te()), set_attribute(t, "testid", te());
|
|
24170
|
+
}), delegated("click", t, lt), delegated("keydown", t, (e) => {
|
|
24171
|
+
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), lt());
|
|
24172
|
+
}), append(e, t);
|
|
23992
24173
|
};
|
|
23993
|
-
return if_block(
|
|
23994
|
-
|
|
23995
|
-
}),
|
|
24174
|
+
return if_block(Ct, (e) => {
|
|
24175
|
+
typeof s() == "string" && s().length > 0 && e(wt);
|
|
24176
|
+
}), reset(ft), template_effect(() => {
|
|
24177
|
+
pt = set_class(ft, 1, clsx(get(Me)), "svelte-37crwe", pt, {
|
|
24178
|
+
"is-visible": get(be),
|
|
24179
|
+
"no-page-overlap": !u()
|
|
24180
|
+
}), set_attribute(ft, "data-direction", get(Re)), set_attribute(ft, "data-pw", C()), set_attribute(ft, "testid", C()), mt = set_style(ft, "", mt, {
|
|
24181
|
+
"--toast-open-duration": get(ot),
|
|
24182
|
+
"--toast-close-duration": get(ct),
|
|
24183
|
+
"--toast-enter-x": get(it).x,
|
|
24184
|
+
"--toast-enter-y": get(it).y
|
|
24185
|
+
}), set_attribute(_t, "data-pw", k()), set_attribute(_t, "testid", k()), set_text(vt, `${a() ?? ""} `);
|
|
24186
|
+
}), event("transitionend", ft, ut), append(e, ft), pop(dt);
|
|
23996
24187
|
}
|
|
23997
24188
|
delegate(["click", "keydown"]), create_custom_element(Toast, {
|
|
23998
24189
|
duration: {},
|
|
@@ -34838,7 +35029,7 @@ function dismissOnOutsidePointerDown(e, t) {
|
|
|
34838
35029
|
//#region src/lib/PieChart/PieChart.svelte
|
|
34839
35030
|
var root$31 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1478ug\"><!></div>"), root_1$29 = /* @__PURE__ */ from_html("<button type=\"button\"><span class=\"legend-swatch svelte-1478ug\"></span> <span class=\"legend-label svelte-1478ug\"> </span></button>"), root_2$21 = /* @__PURE__ */ from_html("<div class=\"pie-legend-sync svelte-1478ug\"></div>"), root_3$20 = /* @__PURE__ */ from_svg("<text text-anchor=\"middle\" dominant-baseline=\"middle\"> </text>"), root_4$19 = /* @__PURE__ */ from_svg("<path tabindex=\"0\" role=\"button\"></path><!>", 1), root_5$18 = /* @__PURE__ */ from_svg("<foreignObject><div class=\"pie-center-content svelte-1478ug\" xmlns=\"http://www.w3.org/1999/xhtml\"><!></div></foreignObject>"), root_6$18 = /* @__PURE__ */ from_svg("<g><!><!></g>"), root_7$16 = /* @__PURE__ */ from_html("<div class=\"pie-delta-badge svelte-1478ug\"><!></div>"), root_8$14 = /* @__PURE__ */ from_html("<li class=\"pie-legend-row svelte-1478ug\"><span class=\"pie-legend-swatch svelte-1478ug\"></span> <span class=\"pie-legend-label svelte-1478ug\"> </span> <span class=\"pie-legend-value svelte-1478ug\"><!></span></li>"), root_9$11 = /* @__PURE__ */ from_html("<button> </button>"), root_10$10 = /* @__PURE__ */ from_html("<div class=\"pie-legend-column svelte-1478ug\"><ul class=\"pie-legend-values svelte-1478ug\"></ul> <!></div>"), root_11$8 = /* @__PURE__ */ from_html("<div class=\"sr-only svelte-1478ug\" role=\"status\" aria-live=\"polite\" data-pw=\"pie-status\"> </div> <!> <!> <!> <!> <!>", 1), root_12$7 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$66 = {
|
|
34840
35031
|
hash: "svelte-1478ug",
|
|
34841
|
-
code: ".pie-chart.svelte-1478ug {width:100%;position:relative;}.slice.svelte-1478ug {stroke:var(--piechart-stroke-color, #fff);stroke-width:var(--piechart-stroke-width, 2);transition:transform var(--chart-transition-duration, var(--motion-duration, 0.2s))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--motion-duration, 0.2s))\n var(--chart-transition-easing, var(--motion-easing, ease));transform-origin:0 0;cursor:pointer;}.slice.hovered.svelte-1478ug {transform:scale(var(--piechart-hover-scale, 1.05));opacity:1;}.slice.dimmed.svelte-1478ug {opacity:var(--piechart-dimmed-opacity, 0.3);}.slice.svelte-1478ug:focus-visible {outline:var(--piechart-slice-focus-outline, 2px solid currentColor);outline-offset:var(--piechart-slice-focus-outline-offset, 2px);}.slice-label.svelte-1478ug {fill:var(--piechart-label-color, #333);font-size:var(--piechart-label-font-size, 12px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.slice-label.label-outside.svelte-1478ug {fill:var(--piechart-label-color, #555);}.pie-center-content.svelte-1478ug {width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;}.pie-delta-badge.svelte-1478ug {position:absolute;top:var(--piechart-delta-top, 8px);right:var(--piechart-delta-right, 8px);z-index:2;pointer-events:none;}.chart-empty.svelte-1478ug {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, #9ca3af);text-align:center;}\n /* Standard visually-hidden recipe (matches ChatComposer's .sr-only): present\n for assistive tech, removed from layout and the visual canvas. */.sr-only.svelte-1478ug {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}.pie-legend-sync.svelte-1478ug {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--chart-legend-gap, 16px);font-family:var(--chart-font-family, inherit);padding:8px 0;}.pie-legend-sync-item.svelte-1478ug {display:flex;align-items:center;gap:6px;background:none;border:none;margin:0;padding:var(--piechart-legend-sync-padding, 2px 4px);font:inherit;cursor:var(--cursor, pointer);border-radius:var(--piechart-legend-sync-radius, var(--radius, 4px));}.pie-legend-sync-item.svelte-1478ug .legend-swatch:where(.svelte-1478ug) {display:inline-block;width:var(--chart-legend-swatch-size, 12px);height:var(--chart-legend-swatch-size, 12px);border-radius:var(--chart-swatch-radius, 2px);flex-shrink:0;}.pie-legend-sync-item.svelte-1478ug .legend-label:where(.svelte-1478ug) {font-size:var(--chart-legend-font-size, 12px);color:var(--chart-legend-color, light-dark(#333, #e5e7eb));}.pie-legend-sync-item.legend-sync-active.svelte-1478ug {background:var(\n --piechart-legend-sync-active-background,\n light-dark(rgba(0, 0, 0, 0.06), rgba(255, 255, 255, 0.1))\n );}.pie-legend-sync-item.svelte-1478ug:focus-visible {outline:var(--piechart-legend-sync-focus-outline, 2px solid currentColor);outline-offset:2px;}.pie-legend-values.svelte-1478ug {display:flex;flex-direction:column;gap:var(--piechart-legend-gap, 8px);padding:var(--piechart-legend-padding, 12px 0 0 0);font-family:var(--chart-font-family, inherit);list-style:none;margin:0;}.pie-legend-row.svelte-1478ug {display:flex;align-items:center;gap:var(--piechart-legend-row-gap, 6px);}.pie-legend-swatch.svelte-1478ug {display:inline-block;width:var(--chart-legend-swatch-size, 12px);height:var(--chart-legend-swatch-size, 12px);border-radius:var(--piechart-legend-swatch-radius, var(--radius, 4px));flex-shrink:0;}.pie-legend-label.svelte-1478ug {font-size:var(--chart-legend-font-size, 12px);color:var(--chart-legend-color, #333);min-width:var(--piechart-legend-label-min-width, 120px);}.pie-legend-value.svelte-1478ug {margin-left:auto;font-size:var(--piechart-legend-value-font-size, 12px);color:var(--piechart-legend-value-color, #333);min-width:var(--piechart-legend-value-min-width, 60px);text-align:right;}\n\n /* The column wrapper is present in both placements so the markup does not\n fork; as a plain block it changes nothing about the default below-chart\n rendering. */.pie-legend-column.svelte-1478ug {display:flex;flex-direction:column;}\n\n /* Only the values legend moves beside the chart -- the plain top legend is\n mutually exclusive with it, and the delta badge and tooltip are both\n absolutely positioned, so they stay out of this flex row entirely. */.pie-chart.legend-right.svelte-1478ug {display:flex;flex-direction:row;align-items:center;gap:var(--piechart-legend-column-gap, 16px);}.pie-chart.legend-right.svelte-1478ug .chart-container {\n /* flex-basis 0 rather than auto: the container carries width:100%, which\n as a flex item would otherwise claim the whole row and squeeze the\n legend to nothing. */flex:1 1 0;min-width:0;}.pie-chart.legend-right.svelte-1478ug .pie-legend-column:where(.svelte-1478ug) {flex:0 0 auto;max-width:var(--piechart-legend-column-max-width, 50%);}.pie-chart.legend-right.svelte-1478ug .pie-legend-values:where(.svelte-1478ug) {padding:var(--piechart-legend-column-padding, 0);}.pie-legend-more.svelte-1478ug {align-self:flex-start;margin-top:var(--piechart-legend-more-margin-top, 8px);padding:var(--piechart-legend-more-padding, 2px 4px);border:none;background:none;cursor:var(--cursor, pointer);font-size:var(--piechart-legend-more-font-size, 12px);font-family:inherit;color:var(--piechart-legend-more-color, #2563eb);}.pie-legend-more.svelte-1478ug:hover {text-decoration:underline;}.pie-legend-more.svelte-1478ug:focus-visible {outline:var(--piechart-legend-more-focus-outline, 2px solid currentColor);outline-offset:2px;}"
|
|
35032
|
+
code: ".pie-chart.svelte-1478ug {width:100%;position:relative;}.slice.svelte-1478ug {stroke:var(--piechart-stroke-color, #fff);stroke-width:var(--piechart-stroke-width, 2);transition:transform var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));transform-origin:0 0;cursor:pointer;}.slice.hovered.svelte-1478ug {transform:scale(var(--piechart-hover-scale, 1.05));opacity:1;}.slice.dimmed.svelte-1478ug {opacity:var(--piechart-dimmed-opacity, 0.3);}.slice.svelte-1478ug:focus-visible {outline:var(--piechart-slice-focus-outline, 2px solid currentColor);outline-offset:var(--piechart-slice-focus-outline-offset, 2px);}.slice-label.svelte-1478ug {fill:var(--piechart-label-color, #333);font-size:var(--piechart-label-font-size, 12px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.slice-label.label-outside.svelte-1478ug {fill:var(--piechart-label-color, #555);}.pie-center-content.svelte-1478ug {width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;}.pie-delta-badge.svelte-1478ug {position:absolute;top:var(--piechart-delta-top, 8px);right:var(--piechart-delta-right, 8px);z-index:2;pointer-events:none;}.chart-empty.svelte-1478ug {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, #9ca3af);text-align:center;}\n /* Standard visually-hidden recipe (matches ChatComposer's .sr-only): present\n for assistive tech, removed from layout and the visual canvas. */.sr-only.svelte-1478ug {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}.pie-legend-sync.svelte-1478ug {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--chart-legend-gap, 16px);font-family:var(--chart-font-family, inherit);padding:8px 0;}.pie-legend-sync-item.svelte-1478ug {display:flex;align-items:center;gap:6px;background:none;border:none;margin:0;padding:var(--piechart-legend-sync-padding, 2px 4px);font:inherit;cursor:var(--cursor, pointer);border-radius:var(--piechart-legend-sync-radius, var(--radius, 4px));}.pie-legend-sync-item.svelte-1478ug .legend-swatch:where(.svelte-1478ug) {display:inline-block;width:var(--chart-legend-swatch-size, 12px);height:var(--chart-legend-swatch-size, 12px);border-radius:var(--chart-swatch-radius, 2px);flex-shrink:0;}.pie-legend-sync-item.svelte-1478ug .legend-label:where(.svelte-1478ug) {font-size:var(--chart-legend-font-size, 12px);color:var(--chart-legend-color, light-dark(#333, #e5e7eb));}.pie-legend-sync-item.legend-sync-active.svelte-1478ug {background:var(\n --piechart-legend-sync-active-background,\n light-dark(rgba(0, 0, 0, 0.06), rgba(255, 255, 255, 0.1))\n );}.pie-legend-sync-item.svelte-1478ug:focus-visible {outline:var(--piechart-legend-sync-focus-outline, 2px solid currentColor);outline-offset:2px;}.pie-legend-values.svelte-1478ug {display:flex;flex-direction:column;gap:var(--piechart-legend-gap, 8px);padding:var(--piechart-legend-padding, 12px 0 0 0);font-family:var(--chart-font-family, inherit);list-style:none;margin:0;}.pie-legend-row.svelte-1478ug {display:flex;align-items:center;gap:var(--piechart-legend-row-gap, 6px);}.pie-legend-swatch.svelte-1478ug {display:inline-block;width:var(--chart-legend-swatch-size, 12px);height:var(--chart-legend-swatch-size, 12px);border-radius:var(--piechart-legend-swatch-radius, var(--radius, 4px));flex-shrink:0;}.pie-legend-label.svelte-1478ug {font-size:var(--chart-legend-font-size, 12px);color:var(--chart-legend-color, #333);min-width:var(--piechart-legend-label-min-width, 120px);}.pie-legend-value.svelte-1478ug {margin-left:auto;font-size:var(--piechart-legend-value-font-size, 12px);color:var(--piechart-legend-value-color, #333);min-width:var(--piechart-legend-value-min-width, 60px);text-align:right;}\n\n /* The column wrapper is present in both placements so the markup does not\n fork; as a plain block it changes nothing about the default below-chart\n rendering. */.pie-legend-column.svelte-1478ug {display:flex;flex-direction:column;}\n\n /* Only the values legend moves beside the chart -- the plain top legend is\n mutually exclusive with it, and the delta badge and tooltip are both\n absolutely positioned, so they stay out of this flex row entirely. */.pie-chart.legend-right.svelte-1478ug {display:flex;flex-direction:row;align-items:center;gap:var(--piechart-legend-column-gap, 16px);}.pie-chart.legend-right.svelte-1478ug .chart-container {\n /* flex-basis 0 rather than auto: the container carries width:100%, which\n as a flex item would otherwise claim the whole row and squeeze the\n legend to nothing. */flex:1 1 0;min-width:0;}.pie-chart.legend-right.svelte-1478ug .pie-legend-column:where(.svelte-1478ug) {flex:0 0 auto;max-width:var(--piechart-legend-column-max-width, 50%);}.pie-chart.legend-right.svelte-1478ug .pie-legend-values:where(.svelte-1478ug) {padding:var(--piechart-legend-column-padding, 0);}.pie-legend-more.svelte-1478ug {align-self:flex-start;margin-top:var(--piechart-legend-more-margin-top, 8px);padding:var(--piechart-legend-more-padding, 2px 4px);border:none;background:none;cursor:var(--cursor, pointer);font-size:var(--piechart-legend-more-font-size, 12px);font-family:inherit;color:var(--piechart-legend-more-color, #2563eb);}.pie-legend-more.svelte-1478ug:hover {text-decoration:underline;}.pie-legend-more.svelte-1478ug:focus-visible {outline:var(--piechart-legend-more-focus-outline, 2px solid currentColor);outline-offset:2px;}"
|
|
34842
35033
|
};
|
|
34843
35034
|
function PieChart(e, t) {
|
|
34844
35035
|
let n = props_id();
|
|
@@ -35579,7 +35770,7 @@ customElements.define("sui-pie-chart", create_custom_element(PieChart_wc, {
|
|
|
35579
35770
|
//#region src/lib/SankeyChart/SankeyChart.svelte
|
|
35580
35771
|
var root$30 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1rqxby\"><!></div>"), root_1$28 = /* @__PURE__ */ from_svg("<text class=\"sankey-col-label svelte-1rqxby\" text-anchor=\"middle\" dominant-baseline=\"auto\"> <title> </title></text>"), root_2$20 = /* @__PURE__ */ from_svg("<path class=\"sankey-link svelte-1rqxby\" fill=\"none\" tabindex=\"0\" role=\"button\"></path>"), root_3$19 = /* @__PURE__ */ from_svg("<rect tabindex=\"0\" role=\"button\"></rect>"), root_4$18 = /* @__PURE__ */ from_svg("<text dominant-baseline=\"middle\"> <title> </title></text>"), root_5$17 = /* @__PURE__ */ from_svg("<g><rect class=\"sankey-plot-bg svelte-1rqxby\"></rect><!><!><!><!></g>"), root_6$17 = /* @__PURE__ */ from_html("<!> <!>", 1), root_7$15 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$64 = {
|
|
35581
35772
|
hash: "svelte-1rqxby",
|
|
35582
|
-
code: ".sankey-chart.svelte-1rqxby {width:100%;position:relative;}.sankey-plot-bg.svelte-1rqxby {fill:var(--sankey-plot-background, transparent);pointer-events:none;}.sankey-link.svelte-1rqxby {transition:stroke-opacity
|
|
35773
|
+
code: ".sankey-chart.svelte-1rqxby {width:100%;position:relative;}.sankey-plot-bg.svelte-1rqxby {fill:var(--sankey-plot-background, transparent);pointer-events:none;}.sankey-link.svelte-1rqxby {transition:stroke-opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.sankey-link.svelte-1rqxby:focus-visible {outline:var(--sankey-focus-outline, 2px solid currentColor);outline-offset:var(--sankey-focus-outline-offset, 2px);}.sankey-node.svelte-1rqxby {transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.sankey-node.svelte-1rqxby:focus-visible {outline:var(--sankey-focus-outline, 2px solid currentColor);outline-offset:var(--sankey-focus-outline-offset, 2px);}.sankey-node.node-dimmed.svelte-1rqxby {opacity:var(--sankey-dimmed-opacity, 0.15);}.sankey-label.svelte-1rqxby {fill:var(--sankey-label-color, #333);font-size:var(--sankey-label-font-size, 12px);font-weight:var(--sankey-label-font-weight, 400);font-family:var(--chart-font-family, inherit);\n /* Highcharts-style text outline: node labels render over link ribbons, so\n a halo in the chart's background colour keeps them legible at any flow\n density. Off (transparent / 0) by default. */paint-order:stroke;stroke:var(--sankey-label-halo-color, transparent);stroke-width:var(--sankey-label-halo-width, 0);stroke-linejoin:round;pointer-events:none;transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));}.sankey-col-label.svelte-1rqxby {fill:var(--sankey-col-label-color, #666);font-size:var(--sankey-col-label-font-size, 11px);font-weight:var(--sankey-col-label-font-weight, 400);font-family:var(--chart-font-family, inherit);pointer-events:none;}.sankey-label.node-dimmed.svelte-1rqxby {opacity:var(--sankey-dimmed-opacity, 0.15);}.chart-empty.svelte-1rqxby {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, #9ca3af);text-align:center;}"
|
|
35583
35774
|
};
|
|
35584
35775
|
function SankeyChart(e, t) {
|
|
35585
35776
|
push(t, !0), append_styles$1(e, $$css$64);
|
|
@@ -36532,7 +36723,7 @@ function formatSeriesAggregate(e, t, n) {
|
|
|
36532
36723
|
//#region src/lib/AreaChart/AreaChart.svelte
|
|
36533
36724
|
var root$28 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-63gwba\"><!></div>"), root_1$26 = /* @__PURE__ */ from_svg("<linearGradient x1=\"0\" y1=\"0\" x2=\"0\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0%\"></stop><stop offset=\"100%\"></stop></linearGradient>"), root_2$18 = /* @__PURE__ */ from_svg("<defs></defs>"), root_3$17 = /* @__PURE__ */ from_svg("<g><!></g>"), root_4$16 = /* @__PURE__ */ from_svg("<path fill=\"none\"></path>"), root_5$15 = /* @__PURE__ */ from_svg("<circle></circle>"), root_6$15 = /* @__PURE__ */ from_svg("<circle class=\"dot svelte-63gwba\"></circle>"), root_7$13 = /* @__PURE__ */ from_svg("<text class=\"point-value svelte-63gwba\" text-anchor=\"middle\"> </text>"), root_8$12 = /* @__PURE__ */ from_svg("<circle class=\"focus-target svelte-63gwba\" tabindex=\"0\" role=\"button\"></circle>"), root_9$10 = /* @__PURE__ */ from_svg("<path></path><!><!><!><!><!>", 1), root_10$9 = /* @__PURE__ */ from_svg("<line class=\"hover-line svelte-63gwba\"></line>"), root_11$7 = /* @__PURE__ */ from_svg("<!><g><!><!><!><!><rect class=\"hover-overlay svelte-63gwba\" fill=\"transparent\"></rect></g>", 1), root_12$6 = /* @__PURE__ */ from_html("<!> <div class=\"chart-plot svelte-63gwba\"><!> <!></div>", 1), root_13$5 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$61 = {
|
|
36534
36725
|
hash: "svelte-63gwba",
|
|
36535
|
-
code: ".area-chart.svelte-63gwba {width:100%;position:relative;}.chart-plot.svelte-63gwba {position:relative;}.area-fill.svelte-63gwba {transition:fill-opacity
|
|
36726
|
+
code: ".area-chart.svelte-63gwba {width:100%;position:relative;}.chart-plot.svelte-63gwba {position:relative;}.area-fill.svelte-63gwba {transition:fill-opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));pointer-events:none;}.area-fill.dimmed.svelte-63gwba {opacity:var(--areachart-dimmed-opacity, 0.1);}.area-line.svelte-63gwba {transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}.area-line.dimmed.svelte-63gwba {opacity:var(--areachart-dimmed-opacity, 0.1);}.single-point.svelte-63gwba {pointer-events:none;}.single-point.dimmed.svelte-63gwba {opacity:var(--areachart-dimmed-opacity, 0.1);}.dot.svelte-63gwba {transition:r var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));stroke:var(--chart-dot-stroke, light-dark(#fff, #111827));stroke-width:2;pointer-events:none;}.focus-target.svelte-63gwba {fill:transparent;pointer-events:none;}.focus-target.svelte-63gwba:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:1px;}.point-value.svelte-63gwba {fill:var(--areachart-value-color, light-dark(#333, #e5e7eb));font-size:var(--areachart-value-font-size, 11px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.hover-line.svelte-63gwba {stroke:var(\n --areachart-hover-line-color,\n var(--linechart-hover-line-color, light-dark(#ccc, #4b5563))\n );stroke-width:1;stroke-dasharray:var(--areachart-hover-line-dash, var(--linechart-hover-line-dash, 4 4));pointer-events:none;}.hover-overlay.svelte-63gwba {cursor:crosshair;}.chart-empty.svelte-63gwba {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, light-dark(#9ca3af, #6b7280));text-align:center;}"
|
|
36536
36727
|
};
|
|
36537
36728
|
function AreaChart(e, t) {
|
|
36538
36729
|
push(t, !0), append_styles$1(e, $$css$61);
|
|
@@ -37381,7 +37572,7 @@ customElements.define("sui-area-chart", create_custom_element(AreaChart_wc, {
|
|
|
37381
37572
|
//#region src/lib/BarChart/BarChart.svelte
|
|
37382
37573
|
var root$27 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1mivkru\"><!></div>"), root_1$25 = /* @__PURE__ */ from_svg("<line x1=\"0\" y2=\"0\"></line>"), root_2$17 = /* @__PURE__ */ from_svg("<line x1=\"0\" y2=\"0\"></line><line x1=\"0\" y1=\"0\"></line>", 1), root_3$16 = /* @__PURE__ */ from_svg("<circle></circle>"), root_4$15 = /* @__PURE__ */ from_svg("<pattern patternUnits=\"userSpaceOnUse\"><rect></rect><!></pattern>"), root_5$14 = /* @__PURE__ */ from_svg("<stop></stop>"), root_6$14 = /* @__PURE__ */ from_svg("<linearGradient gradientUnits=\"userSpaceOnUse\"></linearGradient>"), root_7$12 = /* @__PURE__ */ from_svg("<defs></defs>"), root_8$11 = /* @__PURE__ */ from_svg("<g><!></g>"), root_9$9 = /* @__PURE__ */ from_svg("<path tabindex=\"0\" role=\"button\"></path>"), root_10$8 = /* @__PURE__ */ from_svg("<text> </text>"), root_11$6 = /* @__PURE__ */ from_svg("<!><!>", 1), root_12$5 = /* @__PURE__ */ from_svg("<!><g><!><!><!><!></g>", 1), root_13$4 = /* @__PURE__ */ from_html("<!> <div class=\"chart-plot svelte-1mivkru\"><div class=\"chart-scroll-area svelte-1mivkru\" role=\"region\"><div><!></div></div> <!></div>", 1), root_14$4 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$59 = {
|
|
37383
37574
|
hash: "svelte-1mivkru",
|
|
37384
|
-
code: ".bar-chart.svelte-1mivkru {width:100%;position:relative;}.chart-scroll-area.svelte-1mivkru {width:100%;}.chart-plot.svelte-1mivkru {position:relative;}.bar.svelte-1mivkru {transition:opacity
|
|
37575
|
+
code: ".bar-chart.svelte-1mivkru {width:100%;position:relative;}.chart-scroll-area.svelte-1mivkru {width:100%;}.chart-plot.svelte-1mivkru {position:relative;}.bar.svelte-1mivkru {transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.bar.hovered.svelte-1mivkru {opacity:var(--barchart-bar-hover-opacity, 1);}.bar.highlighted.svelte-1mivkru {opacity:var(--barchart-bar-highlighted-opacity, 1);}.bar.dimmed.svelte-1mivkru {opacity:var(--barchart-bar-dimmed-opacity, 0.3);}.bar.svelte-1mivkru:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:1px;}.bar-value.svelte-1mivkru {fill:var(--barchart-value-color, light-dark(#333, #e5e7eb));font-size:var(--barchart-value-font-size, 14px);font-weight:var(--barchart-value-font-weight, 600);font-family:var(--chart-font-family, inherit);pointer-events:none;}.bar-value-inside.svelte-1mivkru {paint-order:stroke;stroke-width:2px;stroke-opacity:0.35;stroke-linejoin:round;}.chart-empty.svelte-1mivkru {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, light-dark(#9ca3af, #6b7280));text-align:center;}"
|
|
37385
37576
|
};
|
|
37386
37577
|
function BarChart(e, t) {
|
|
37387
37578
|
push(t, !0), append_styles$1(e, $$css$59);
|
|
@@ -38514,7 +38705,7 @@ customElements.define("sui-bar-chart", create_custom_element(BarChart_wc, {
|
|
|
38514
38705
|
//#region src/lib/DualAxisBarChart/DualAxisBarChart.svelte
|
|
38515
38706
|
var root$26 = /* @__PURE__ */ from_svg("<text class=\"axis-title axis-title-left svelte-1rqgr0s\" text-anchor=\"middle\"> </text>"), root_1$24 = /* @__PURE__ */ from_svg("<text class=\"axis-title axis-title-right svelte-1rqgr0s\" text-anchor=\"middle\"> </text>"), root_2$16 = /* @__PURE__ */ from_svg("<path role=\"img\"></path>"), root_3$15 = /* @__PURE__ */ from_svg("<path class=\"line-series svelte-1rqgr0s\" fill=\"none\"></path>"), root_4$14 = /* @__PURE__ */ from_svg("<circle style=\"stroke: var(--dual-axis-dot-stroke, light-dark(#fff, #111827)); stroke-width: var(--dual-axis-dot-stroke-width, 1.5);\" role=\"img\"></circle>"), root_5$13 = /* @__PURE__ */ from_svg("<!><!>", 1), root_6$13 = /* @__PURE__ */ from_svg("<rect class=\"hover-target svelte-1rqgr0s\" fill=\"transparent\" tabindex=\"0\" role=\"button\"></rect>"), root_7$11 = /* @__PURE__ */ from_svg("<line class=\"hover-guideline svelte-1rqgr0s\"></line>"), root_8$10 = /* @__PURE__ */ from_svg("<g><!><g><!></g><g><!></g><!><!><!><!><!><!></g><defs><marker></marker></defs>", 1), root_9$8 = /* @__PURE__ */ from_html("<!> <div class=\"chart-plot svelte-1rqgr0s\"><!> <!></div>", 1), root_10$7 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1rqgr0s\">No data available.</div>"), root_11$5 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$57 = {
|
|
38516
38707
|
hash: "svelte-1rqgr0s",
|
|
38517
|
-
code: ".dual-axis-bar-chart.svelte-1rqgr0s {width:100%;position:relative;}.chart-plot.svelte-1rqgr0s {position:relative;}.bar-shape.svelte-1rqgr0s {transition:opacity
|
|
38708
|
+
code: ".dual-axis-bar-chart.svelte-1rqgr0s {width:100%;position:relative;}.chart-plot.svelte-1rqgr0s {position:relative;}.bar-shape.svelte-1rqgr0s {transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.bar-hovered.svelte-1rqgr0s {opacity:var(--dual-axis-bar-hover-opacity, 1);}.bar-dimmed.svelte-1rqgr0s {opacity:var(--dual-axis-bar-dimmed-opacity, 0.3);}.line-series.svelte-1rqgr0s {stroke-width:var(--dual-axis-line-stroke-width, 2);stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}.line-dot.svelte-1rqgr0s {transition:r var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.dot-dimmed.svelte-1rqgr0s {opacity:var(--dual-axis-bar-dimmed-opacity, 0.3);}.hover-target.svelte-1rqgr0s {cursor:pointer;}.hover-target.svelte-1rqgr0s:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:-2px;}.hover-guideline.svelte-1rqgr0s {stroke:var(--dual-axis-guideline-color, light-dark(#aaa, #4b5563));stroke-width:var(--dual-axis-guideline-width, 1);stroke-dasharray:var(--dual-axis-guideline-dash, 4 3);pointer-events:none;opacity:0.6;}.axis-title.svelte-1rqgr0s {fill:var(--chart-axis-label-color, light-dark(#333, #e5e7eb));font-size:var(--chart-axis-label-font-size, 11px);font-family:var(--chart-font-family, inherit);font-weight:500;}.chart-empty.svelte-1rqgr0s {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, light-dark(#9ca3af, #6b7280));text-align:center;}"
|
|
38518
38709
|
};
|
|
38519
38710
|
function DualAxisBarChart(e, t) {
|
|
38520
38711
|
push(t, !0), append_styles$1(e, $$css$57);
|
|
@@ -39142,7 +39333,7 @@ customElements.define("sui-dual-axis-bar-chart", create_custom_element(DualAxisB
|
|
|
39142
39333
|
//#region src/lib/FunnelChart/FunnelChart.svelte
|
|
39143
39334
|
var root$25 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1ork53m\"><!></div>"), root_1$23 = /* @__PURE__ */ from_svg("<text class=\"funnel-value-label svelte-1ork53m\" text-anchor=\"middle\" dominant-baseline=\"middle\" pointer-events=\"none\"> </text>"), root_2$15 = /* @__PURE__ */ from_svg("<text class=\"funnel-category-label svelte-1ork53m\" text-anchor=\"middle\" dominant-baseline=\"auto\"> </text><rect tabindex=\"0\" role=\"button\"></rect><!>", 1), root_3$14 = /* @__PURE__ */ from_svg("<polygon class=\"funnel-connector svelte-1ork53m\" pointer-events=\"none\"></polygon>"), root_4$13 = /* @__PURE__ */ from_svg("<g><!><!></g>"), root_5$12 = /* @__PURE__ */ from_html("<div class=\"chart-plot svelte-1ork53m\"><!> <!></div>"), root_6$12 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$55 = {
|
|
39144
39335
|
hash: "svelte-1ork53m",
|
|
39145
|
-
code: ".funnel-chart.svelte-1ork53m {width:100%;}.chart-plot.svelte-1ork53m {position:relative;}.funnel-category-label.svelte-1ork53m {fill:var(--funnel-chart-label-color, light-dark(#666, #9ca3af));font-size:var(--funnel-chart-label-font-size, 11px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.funnel-bar.svelte-1ork53m {transition:opacity var(--chart-transition-duration, var(--motion-duration, 0.2s))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n y var(--chart-transition-duration, var(--motion-duration, 0.2s))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n height var(--chart-transition-duration, var(--motion-duration, 0.2s))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.funnel-bar-hovered.svelte-1ork53m {opacity:var(--funnel-chart-bar-hover-opacity, 1);}.funnel-bar-dimmed.svelte-1ork53m {opacity:var(--funnel-chart-bar-dimmed-opacity, 0.35);}.funnel-bar.svelte-1ork53m:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:1px;}.funnel-value-label.svelte-1ork53m {font-size:var(--funnel-chart-value-font-size, 11px);font-family:var(--chart-font-family, inherit);paint-order:stroke;stroke-width:2px;stroke-opacity:0.35;stroke-linejoin:round;}.funnel-connector.svelte-1ork53m {transition:d
|
|
39336
|
+
code: ".funnel-chart.svelte-1ork53m {width:100%;}.chart-plot.svelte-1ork53m {position:relative;}.funnel-category-label.svelte-1ork53m {fill:var(--funnel-chart-label-color, light-dark(#666, #9ca3af));font-size:var(--funnel-chart-label-font-size, 11px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.funnel-bar.svelte-1ork53m {transition:opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n y var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n height var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));cursor:pointer;}.funnel-bar-hovered.svelte-1ork53m {opacity:var(--funnel-chart-bar-hover-opacity, 1);}.funnel-bar-dimmed.svelte-1ork53m {opacity:var(--funnel-chart-bar-dimmed-opacity, 0.35);}.funnel-bar.svelte-1ork53m:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:1px;}.funnel-value-label.svelte-1ork53m {font-size:var(--funnel-chart-value-font-size, 11px);font-family:var(--chart-font-family, inherit);paint-order:stroke;stroke-width:2px;stroke-opacity:0.35;stroke-linejoin:round;}.funnel-connector.svelte-1ork53m {transition:d\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));}.chart-empty.svelte-1ork53m {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, light-dark(#6b7280, #9ca3af));text-align:center;}"
|
|
39146
39337
|
};
|
|
39147
39338
|
function FunnelChart(e, t) {
|
|
39148
39339
|
push(t, !0), append_styles$1(e, $$css$55);
|
|
@@ -39552,7 +39743,7 @@ customElements.define("sui-funnel-chart", create_custom_element(FunnelChart_wc,
|
|
|
39552
39743
|
//#region src/lib/LineChart/LineChart.svelte
|
|
39553
39744
|
var root$24 = /* @__PURE__ */ from_html("<div class=\"chart-empty svelte-1iyxwjy\"><!></div>"), root_1$22 = /* @__PURE__ */ from_svg("<linearGradient x1=\"0\" y1=\"0\" x2=\"0\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0%\"></stop><stop offset=\"100%\"></stop></linearGradient>"), root_2$14 = /* @__PURE__ */ from_svg("<!><!>", 1), root_3$13 = /* @__PURE__ */ from_svg("<defs></defs>"), root_4$12 = /* @__PURE__ */ from_svg("<g><!></g>"), root_5$11 = /* @__PURE__ */ from_svg("<circle class=\"dot-halo svelte-1iyxwjy\"></circle>"), root_6$11 = /* @__PURE__ */ from_svg("<path></path>"), root_7$10 = /* @__PURE__ */ from_svg("<text class=\"point-value svelte-1iyxwjy\" text-anchor=\"middle\"> </text>"), root_8$9 = /* @__PURE__ */ from_svg("<!><path fill=\"none\"></path><!>", 1), root_9$7 = /* @__PURE__ */ from_svg("<circle></circle>"), root_10$6 = /* @__PURE__ */ from_svg("<circle class=\"focus-target svelte-1iyxwjy\" tabindex=\"0\" role=\"button\"></circle>"), root_11$4 = /* @__PURE__ */ from_svg("<line class=\"hover-line svelte-1iyxwjy\"></line>"), root_12$4 = /* @__PURE__ */ from_svg("<!><g><!><!><!><!><!><!><!><rect class=\"hover-overlay svelte-1iyxwjy\" fill=\"transparent\" data-pw=\"hover-overlay\" testID=\"hover-overlay\"></rect></g>", 1), root_13$3 = /* @__PURE__ */ from_html("<div class=\"sr-only svelte-1iyxwjy\" role=\"status\" aria-live=\"polite\" data-pw=\"line-status\"> </div> <!> <div class=\"chart-plot svelte-1iyxwjy\"><!> <!></div>", 1), root_14$3 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$53 = {
|
|
39554
39745
|
hash: "svelte-1iyxwjy",
|
|
39555
|
-
code: ".line-chart.svelte-1iyxwjy {width:100%;position:relative;}.chart-plot.svelte-1iyxwjy {position:relative;}.line-area-fill.svelte-1iyxwjy {transition:fill-opacity
|
|
39746
|
+
code: ".line-chart.svelte-1iyxwjy {width:100%;position:relative;}.chart-plot.svelte-1iyxwjy {position:relative;}.line-area-fill.svelte-1iyxwjy {transition:fill-opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));pointer-events:none;}.line-area-fill.dimmed.svelte-1iyxwjy {opacity:var(--linechart-dimmed-opacity, 0.2);}.line-path.svelte-1iyxwjy {transition:opacity\n var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}.line-path.dimmed.svelte-1iyxwjy {opacity:var(--linechart-dimmed-opacity, 0.2);}.single-point.svelte-1iyxwjy {pointer-events:none;}.single-point.dimmed.svelte-1iyxwjy {opacity:var(--linechart-dimmed-opacity, 0.2);}.dot.svelte-1iyxwjy {transition:r var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease)),\n opacity var(--chart-transition-duration, var(--duration-base, var(--motion-duration, 0.2s)))\n var(--chart-transition-easing, var(--motion-easing, ease));stroke:var(--chart-dot-stroke, light-dark(#fff, #111827));stroke-width:2;pointer-events:none;}.dot.dimmed.svelte-1iyxwjy {opacity:var(--linechart-dimmed-opacity, 0.2);}.dot.highlighted.svelte-1iyxwjy {stroke:var(--linechart-highlight-ring-color, light-dark(#fff, #111827));stroke-width:var(--linechart-highlight-ring-width, 2.5);}.dot-halo.svelte-1iyxwjy {opacity:0.25;pointer-events:none;}.focus-target.svelte-1iyxwjy {fill:transparent;pointer-events:none;}.focus-target.svelte-1iyxwjy:focus-visible {outline:2px solid var(--chart-axis-label-color, light-dark(#333, #e5e7eb));outline-offset:1px;}\n /* Standard visually-hidden recipe (matches PieChart's own .sr-only): present\n for assistive tech, removed from layout and the visual canvas. */.sr-only.svelte-1iyxwjy {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border-width:0;}.point-value.svelte-1iyxwjy {fill:var(--linechart-value-color, light-dark(#333, #e5e7eb));font-size:var(--linechart-value-font-size, 11px);font-family:var(--chart-font-family, inherit);pointer-events:none;}.hover-line.svelte-1iyxwjy {stroke:var(--linechart-hover-line-color, light-dark(#ccc, #4b5563));stroke-width:1;stroke-dasharray:var(--linechart-hover-line-dash, 4 4);pointer-events:none;}.hover-overlay.svelte-1iyxwjy {cursor:crosshair;}.chart-empty.svelte-1iyxwjy {padding:var(--chart-empty-padding, 32px 24px);color:var(--chart-empty-color, light-dark(#9ca3af, #6b7280));text-align:center;}"
|
|
39556
39747
|
};
|
|
39557
39748
|
function LineChart(e, t) {
|
|
39558
39749
|
let n = props_id();
|
|
@@ -41126,7 +41317,7 @@ customElements.define("sui-draggable", create_custom_element(Draggable_wc, {
|
|
|
41126
41317
|
//#region src/lib/assets/play.svg?raw
|
|
41127
41318
|
var play_default = "<svg viewBox=\"0 0 24 24\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8 5v14l11-7z\" />\n</svg>\n", pause_default = "<svg viewBox=\"0 0 24 24\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"6\" y=\"5\" width=\"4\" height=\"14\" rx=\"1\" />\n <rect x=\"14\" y=\"5\" width=\"4\" height=\"14\" rx=\"1\" />\n</svg>\n", volume_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 9v6h4l5 5V4L8 9H4z\" fill=\"currentColor\" stroke=\"none\" />\n <path d=\"M16 8.5a4 4 0 0 1 0 7\" />\n <path d=\"M18.5 6a7 7 0 0 1 0 12\" />\n</svg>\n", mute_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 9v6h4l5 5V4L8 9H4z\" fill=\"currentColor\" stroke=\"none\" />\n <line x1=\"16\" y1=\"9\" x2=\"21\" y2=\"14\" />\n <line x1=\"21\" y1=\"9\" x2=\"16\" y2=\"14\" />\n</svg>\n", fullscreen_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 9V5.5A1.5 1.5 0 0 1 5.5 4H9\" />\n <path d=\"M15 4h3.5A1.5 1.5 0 0 1 20 5.5V9\" />\n <path d=\"M20 15v3.5a1.5 1.5 0 0 1-1.5 1.5H15\" />\n <path d=\"M9 20H5.5A1.5 1.5 0 0 1 4 18.5V15\" />\n</svg>\n", exit_fullscreen_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9 4v3.5A1.5 1.5 0 0 1 7.5 9H4\" />\n <path d=\"M20 9h-3.5A1.5 1.5 0 0 1 15 7.5V4\" />\n <path d=\"M15 20v-3.5a1.5 1.5 0 0 1 1.5-1.5H20\" />\n <path d=\"M4 15h3.5A1.5 1.5 0 0 1 9 16.5V20\" />\n</svg>\n", root_1$20 = /* @__PURE__ */ from_html("<span class=\"media-image svelte-16jqa96\"><!></span>"), root_2$13 = /* @__PURE__ */ from_html("<track kind=\"captions\"/>"), root_3$12 = /* @__PURE__ */ from_html("<div class=\"seek svelte-16jqa96\"><!></div>"), root_4$11 = /* @__PURE__ */ from_html("<span class=\"time svelte-16jqa96\"> </span>"), root_5$10 = /* @__PURE__ */ from_html("<div class=\"control bottom-control svelte-16jqa96\"><!></div>"), root_6$10 = /* @__PURE__ */ from_html("<div class=\"overlay svelte-16jqa96\"><div class=\"center-controls svelte-16jqa96\"><div class=\"control center-control svelte-16jqa96\"><!></div></div> <div><!> <!> <div class=\"control bottom-control svelte-16jqa96\"><!></div> <!></div></div>"), root_7$9 = /* @__PURE__ */ from_html("<video class=\"media svelte-16jqa96\" playsinline=\"\"><!></video> <!>", 3), root_8$8 = /* @__PURE__ */ from_html("<div><!></div>"), $$css$47 = {
|
|
41128
41319
|
hash: "svelte-16jqa96",
|
|
41129
|
-
code: ".media-player.svelte-16jqa96 {box-sizing:border-box;display:flex;position:relative;height:var(--media-player-height, 400px);width:var(--media-player-width, fit-content);border-radius:var(--media-player-border-radius, 14px);overflow:var(--media-player-overflow, hidden);background:var(--media-player-background, transparent);}.media.svelte-16jqa96 {height:var(--media-player-media-height, 100%);width:var(--media-player-media-width, fit-content);object-fit:var(--media-player-media-object-fit, contain);border-radius:var(--media-player-media-border-radius, inherit);display:block;}video.media.svelte-16jqa96 {cursor:var(--media-player-media-cursor, pointer);}.media-image.svelte-16jqa96 {display:contents;--image-height: var(--media-player-media-height, 100%);--image-width: var(--media-player-media-width, fit-content);--image-object-fit: var(--media-player-media-object-fit, contain);--image-border-radius: var(--media-player-media-border-radius, 0px);--image-padding: 0px;--image-margin: 0px;}.overlay.svelte-16jqa96 {position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box;z-index:var(--media-player-overlay-z-index, 20);border-radius:inherit;background-color:var(--media-player-overlay-color, transparent);transition:var(--media-player-overlay-transition
|
|
41320
|
+
code: ".media-player.svelte-16jqa96 {box-sizing:border-box;display:flex;position:relative;height:var(--media-player-height, 400px);width:var(--media-player-width, fit-content);border-radius:var(--media-player-border-radius, 14px);overflow:var(--media-player-overflow, hidden);background:var(--media-player-background, transparent);}.media.svelte-16jqa96 {height:var(--media-player-media-height, 100%);width:var(--media-player-media-width, fit-content);object-fit:var(--media-player-media-object-fit, contain);border-radius:var(--media-player-media-border-radius, inherit);display:block;}video.media.svelte-16jqa96 {cursor:var(--media-player-media-cursor, pointer);}.media-image.svelte-16jqa96 {display:contents;--image-height: var(--media-player-media-height, 100%);--image-width: var(--media-player-media-width, fit-content);--image-object-fit: var(--media-player-media-object-fit, contain);--image-border-radius: var(--media-player-media-border-radius, 0px);--image-padding: 0px;--image-margin: 0px;}.overlay.svelte-16jqa96 {position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box;z-index:var(--media-player-overlay-z-index, 20);border-radius:inherit;background-color:var(--media-player-overlay-color, transparent);transition:var(\n --media-player-overlay-transition,\n background-color\n var(\n --media-player-overlay-transition-duration,\n var(--duration-base, var(--motion-duration, 0.2s))\n )\n var(--media-player-overlay-transition-easing, var(--motion-easing, ease))\n );--center-controls-visibility: var(--media-player-center-controls-visibility, hidden);--bottom-controls-visibility: var(--media-player-bottom-controls-visibility, hidden);}\n\n /* :focus-within alongside :hover so the overlay controls (play/pause, mute) are\n reachable for keyboard users too -- :hover alone left them visibility:hidden (and\n so out of the tab order) for anyone not using a mouse. */.overlay.svelte-16jqa96:hover,\n .overlay.svelte-16jqa96:focus-within {background-color:var(--media-player-overlay-hover-color, #0000004d);--center-controls-visibility: visible;--bottom-controls-visibility: visible;}.center-controls.svelte-16jqa96 {display:flex;flex:1;justify-content:center;align-items:center;visibility:var(--center-controls-visibility);}.bottom-controls.svelte-16jqa96 {display:flex;width:100%;height:fit-content;justify-content:var(--media-player-bottom-controls-justify, flex-end);box-sizing:border-box;padding:var(--media-player-bottom-controls-padding, 12px);visibility:var(--bottom-controls-visibility);}\n\n /* With a seek bar, time or fullscreen present the row becomes a transport bar: the\n seek bar takes the free space and the rest sit beside it, centred on each other. */.bottom-controls.transport.svelte-16jqa96 {justify-content:var(--media-player-transport-justify, flex-start);align-items:center;gap:var(--media-player-transport-gap, 12px);}.seek.svelte-16jqa96 {flex:1;min-width:0;--slider-track-color: var(--media-player-seek-track-color, #ffffff59);--slider-fill-color: var(--media-player-seek-fill-color, #ffffff);--slider-thumb-color: var(--media-player-seek-thumb-color, #ffffff);}.time.svelte-16jqa96 {flex-shrink:0;font-family:var(--media-player-time-font-family, inherit);font-size:var(--media-player-time-font-size, 12px);font-variant-numeric:tabular-nums;color:var(--media-player-time-color, #ffffff);white-space:nowrap;}\n\n /* In fullscreen the container is the fullscreen element, so it must fill the screen\n rather than keep the fixed height a page layout gave it. */.media-player.fullscreen.svelte-16jqa96 {height:100%;width:100%;background:var(--media-player-fullscreen-background, #000000);}.media-player.fullscreen.svelte-16jqa96 .media:where(.svelte-16jqa96) {height:100%;width:100%;}.control.svelte-16jqa96 {--button-padding: var(--media-player-control-padding, 0px);--button-border: var(--media-player-control-border, none);--button-border-radius: var(--media-player-control-border-radius, 50%);--button-color: var(--media-player-control-background-color, transparent);--button-text-color: var(--media-player-control-color, #ffffff);--button-content-gap: 0px;--button-hover-color: var(\n --media-player-control-hover-background-color,\n var(--media-player-control-background-color, transparent)\n );--button-hover-text-color: var(\n --media-player-control-hover-color,\n var(--media-player-control-color, #ffffff)\n );}.center-control.svelte-16jqa96 {--button-width: var(--media-player-center-control-size, 64px);--button-height: var(--media-player-center-control-size, 64px);}.bottom-control.svelte-16jqa96 {--button-width: var(--media-player-bottom-control-size, 24px);--button-height: var(--media-player-bottom-control-size, 24px);}.control.svelte-16jqa96 svg,\n .control.svelte-16jqa96 img {height:var(--media-player-control-icon-size, 100%);width:var(--media-player-control-icon-size, 100%);object-fit:contain;}"
|
|
41130
41321
|
};
|
|
41131
41322
|
function MediaPlayer(e, t) {
|
|
41132
41323
|
push(t, !0), append_styles$1(e, $$css$47);
|
|
@@ -41795,7 +41986,7 @@ customElements.define("sui-media-player", create_custom_element(MediaPlayer_wc,
|
|
|
41795
41986
|
//#region src/lib/assets/add.svg?raw
|
|
41796
41987
|
var add_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\" />\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n</svg>\n", file_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M14 3v5h5\" />\n <path d=\"M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8l-5-5z\" />\n</svg>\n", root$21 = /* @__PURE__ */ from_html("<div class=\"label svelte-nabf7u\"> </div>"), root_1$19 = /* @__PURE__ */ from_html("<div class=\"counter svelte-nabf7u\"><!></div>"), root_2$12 = /* @__PURE__ */ from_html("<div class=\"counter svelte-nabf7u\"> </div>"), root_3$11 = /* @__PURE__ */ from_html("<div class=\"header svelte-nabf7u\"><!> <!></div>"), root_4$10 = /* @__PURE__ */ from_html("<div class=\"description svelte-nabf7u\"> </div>"), root_5$9 = /* @__PURE__ */ from_html("<span class=\"thumb svelte-nabf7u\"><!></span>"), root_6$9 = /* @__PURE__ */ from_html("<span class=\"thumb-loading svelte-nabf7u\"><!></span>"), root_7$8 = /* @__PURE__ */ from_html("<div class=\"file-icon svelte-nabf7u\"><!></div>"), root_8$7 = /* @__PURE__ */ from_html("<span class=\"meta-name svelte-nabf7u\"> </span>"), root_9$6 = /* @__PURE__ */ from_html("<span class=\"meta-size svelte-nabf7u\"> </span>"), root_10$5 = /* @__PURE__ */ from_html("<div class=\"meta svelte-nabf7u\"><!> <!></div>"), root_11$3 = /* @__PURE__ */ from_html("<div class=\"remove svelte-nabf7u\"><!></div>"), root_12$3 = /* @__PURE__ */ from_html("<div><!> <!> <!></div>"), root_13$2 = /* @__PURE__ */ from_html("<span class=\"drop-text svelte-nabf7u\"> </span>"), root_14$2 = /* @__PURE__ */ from_html("<span class=\"drop-hint svelte-nabf7u\"> </span>"), root_15$2 = /* @__PURE__ */ from_html("<label><span class=\"drop-icon svelte-nabf7u\"><!></span> <!> <!> <input type=\"file\" class=\"file-input\" hidden=\"\"/></label>"), root_16$1 = /* @__PURE__ */ from_html("<div class=\"error svelte-nabf7u\" role=\"alert\"> </div>"), root_17$1 = /* @__PURE__ */ from_html("<div><!> <!> <div class=\"grid svelte-nabf7u\"><!> <!></div> <!></div>"), $$css$45 = {
|
|
41797
41988
|
hash: "svelte-nabf7u",
|
|
41798
|
-
code: ".media-upload.svelte-nabf7u {box-sizing:border-box;display:flex;flex-direction:column;width:var(--media-upload-width, fit-content);font-family:var(--media-upload-font-family, inherit);color:var(--media-upload-color, inherit);}.media-upload.disabled.svelte-nabf7u {opacity:var(--media-upload-disabled-opacity, 0.55);}.header.svelte-nabf7u {display:flex;align-items:baseline;justify-content:space-between;gap:var(--media-upload-header-gap, 12px);margin:var(--media-upload-label-margin, 0 0 4px 0);}.label.svelte-nabf7u {font-size:var(--media-upload-label-font-size, 14px);font-weight:var(--media-upload-label-font-weight, 600);color:var(--media-upload-label-color, #242833);}.counter.svelte-nabf7u {font-size:var(--media-upload-counter-font-size, 12px);font-weight:var(--media-upload-counter-font-weight, 500);color:var(--media-upload-counter-color, #5a5a5a);font-variant-numeric:tabular-nums;}.description.svelte-nabf7u {font-size:var(--media-upload-description-font-size, 12px);color:var(--media-upload-description-color, #656565);margin:var(--media-upload-description-margin, 0);}.grid.svelte-nabf7u {display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--media-upload-gap, 12px);margin:var(--media-upload-content-margin, 12px 0 0 0);}.card.svelte-nabf7u,\n .drop-tile.svelte-nabf7u {box-sizing:border-box;height:var(--media-upload-item-height, 110px);width:var(--media-upload-item-width, 110px);border-radius:var(--media-upload-item-border-radius, 14px);}.card.svelte-nabf7u {position:relative;overflow:hidden;border:var(--media-upload-item-border, 1px solid #e4e4e7);background-color:var(--media-upload-item-background-color, #fafafa);box-shadow:var(--media-upload-item-box-shadow, 0 1px 2px rgba(0, 0, 0, 0.06));transition:var(--media-upload-item-transition, box-shadow 0.2s ease, transform 0.2s ease);}.card.svelte-nabf7u:hover {box-shadow:var(--media-upload-item-hover-box-shadow, 0 6px 18px rgba(0, 0, 0, 0.14));transform:var(--media-upload-item-hover-transform, translateY(-2px));}.thumb.svelte-nabf7u {display:contents;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--media-upload-item-object-fit, cover);--image-border-radius: 0px;--image-padding: 0px;--image-margin: 0px;}.thumb-loading.svelte-nabf7u {display:contents;--shimmer-width: 100%;--shimmer-height: 100%;--shimmer-border-radius: 0px;}.file-icon.svelte-nabf7u {display:flex;height:100%;width:100%;justify-content:center;align-items:center;color:var(--media-upload-file-icon-color, #8a8f98);}.file-icon.svelte-nabf7u svg,\n .file-icon.svelte-nabf7u img {height:var(--media-upload-file-icon-size, 36px);width:var(--media-upload-file-icon-size, 36px);object-fit:contain;}.meta.svelte-nabf7u {position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:2px;box-sizing:border-box;padding:var(--media-upload-meta-padding, 6px 8px);background:var(\n --media-upload-meta-background,\n linear-gradient(to top, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0))\n );color:var(--media-upload-meta-color, #ffffff);}.is-file.svelte-nabf7u .meta:where(.svelte-nabf7u) {background:var(--media-upload-file-meta-background, transparent);color:var(--media-upload-file-meta-color, #52525b);}.meta-name.svelte-nabf7u {font-size:var(--media-upload-meta-name-font-size, 11px);font-weight:var(--media-upload-meta-name-font-weight, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.meta-size.svelte-nabf7u {font-size:var(--media-upload-meta-size-font-size, 10px);opacity:var(--media-upload-meta-size-opacity, 0.85);font-variant-numeric:tabular-nums;}.remove.svelte-nabf7u {position:absolute;top:var(--media-upload-remove-inset, 6px);right:var(--media-upload-remove-inset, 6px);opacity:var(--media-upload-remove-opacity, 0);transition:var(--media-upload-remove-transition, opacity 0.18s ease);--button-width: var(--media-upload-remove-size, 24px);--button-height: var(--media-upload-remove-size, 24px);--button-padding: var(--media-upload-remove-padding, 4px);--button-border: var(--media-upload-remove-border, none);--button-border-radius: var(--media-upload-remove-border-radius, 50%);--button-color: var(--media-upload-remove-background-color, rgba(0, 0, 0, 0.55));--button-text-color: var(--media-upload-remove-color, #ffffff);--button-content-gap: 0px;--button-hover-color: var(--media-upload-remove-hover-background-color, rgba(0, 0, 0, 0.78));--button-hover-text-color: var(\n --media-upload-remove-hover-color,\n var(--media-upload-remove-color, #ffffff)\n );}.card.svelte-nabf7u:hover .remove:where(.svelte-nabf7u),\n .remove.svelte-nabf7u:focus-within {opacity:1;}.remove.svelte-nabf7u svg,\n .remove.svelte-nabf7u img {height:var(--media-upload-remove-icon-size, 100%);width:var(--media-upload-remove-icon-size, 100%);object-fit:contain;}.drop-tile.svelte-nabf7u {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--media-upload-add-gap, 6px);box-sizing:border-box;padding:var(--media-upload-add-padding, 12px);text-align:center;background-color:var(--media-upload-add-background-color, #fafafa);border:var(--media-upload-add-border, 1.5px dashed #c8ccd2);color:var(--media-upload-add-color, #4b5563);cursor:pointer;transition:var(\n --media-upload-add-transition,\n border-color 0.18s ease,\n background-color 0.18s ease,\n color 0.18s ease\n );}.drop-tile.svelte-nabf7u:hover {background-color:var(--media-upload-add-hover-background-color, #f1f5ff);border:var(--media-upload-add-hover-border, 1.5px dashed #6d8eff);color:var(--media-upload-add-hover-color, #3b5bdb);}.drop-tile.dragging.svelte-nabf7u {background-color:var(--media-upload-add-dragging-background-color, #e7efff);border:var(--media-upload-add-dragging-border, 1.5px solid #3b5bdb);color:var(--media-upload-add-dragging-color, #3b5bdb);}.drop-icon.svelte-nabf7u {display:flex;justify-content:center;align-items:center;}.drop-icon.svelte-nabf7u svg,\n .drop-icon.svelte-nabf7u img {height:var(--media-upload-add-icon-size, 22px);width:var(--media-upload-add-icon-size, 22px);object-fit:contain;}.drop-text.svelte-nabf7u {font-size:var(--media-upload-add-text-font-size, 11px);line-height:var(--media-upload-add-text-line-height, 1.3);}.drop-hint.svelte-nabf7u {font-size:var(--media-upload-add-hint-font-size, 10px);color:var(--media-upload-add-hint-color, #4b5563);}.error.svelte-nabf7u {font-size:var(--media-upload-error-font-size, 12px);color:var(--media-upload-error-color, #e0334b);margin:var(--media-upload-error-margin, 8px 0 0 0);}\n\n /* `--media-upload-item-transition` defaults to a box-shadow AND transform lift\n on hover. The shadow alone would be fine; the transform is movement, and a\n consumer overriding the token is most likely adding more of it. Dropping the\n whole declaration is right here because every end state is a resting state. */\n @media (prefers-reduced-motion: reduce) {.
|
|
41989
|
+
code: ".media-upload.svelte-nabf7u {box-sizing:border-box;display:flex;flex-direction:column;width:var(--media-upload-width, fit-content);font-family:var(--media-upload-font-family, inherit);color:var(--media-upload-color, inherit);}.media-upload.disabled.svelte-nabf7u {opacity:var(--media-upload-disabled-opacity, 0.55);}.header.svelte-nabf7u {display:flex;align-items:baseline;justify-content:space-between;gap:var(--media-upload-header-gap, 12px);margin:var(--media-upload-label-margin, 0 0 4px 0);}.label.svelte-nabf7u {font-size:var(--media-upload-label-font-size, 14px);font-weight:var(--media-upload-label-font-weight, 600);color:var(--media-upload-label-color, #242833);}.counter.svelte-nabf7u {font-size:var(--media-upload-counter-font-size, 12px);font-weight:var(--media-upload-counter-font-weight, 500);color:var(--media-upload-counter-color, #5a5a5a);font-variant-numeric:tabular-nums;}.description.svelte-nabf7u {font-size:var(--media-upload-description-font-size, 12px);color:var(--media-upload-description-color, #656565);margin:var(--media-upload-description-margin, 0);}.grid.svelte-nabf7u {display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--media-upload-gap, 12px);margin:var(--media-upload-content-margin, 12px 0 0 0);}.card.svelte-nabf7u,\n .drop-tile.svelte-nabf7u {box-sizing:border-box;height:var(--media-upload-item-height, 110px);width:var(--media-upload-item-width, 110px);border-radius:var(--media-upload-item-border-radius, 14px);}.card.svelte-nabf7u {position:relative;overflow:hidden;border:var(--media-upload-item-border, 1px solid #e4e4e7);background-color:var(--media-upload-item-background-color, #fafafa);box-shadow:var(--media-upload-item-box-shadow, 0 1px 2px rgba(0, 0, 0, 0.06));transition:var(--media-upload-item-transition, box-shadow 0.2s ease, transform 0.2s ease);}.card.svelte-nabf7u:hover {box-shadow:var(--media-upload-item-hover-box-shadow, 0 6px 18px rgba(0, 0, 0, 0.14));transform:var(--media-upload-item-hover-transform, translateY(-2px));}.thumb.svelte-nabf7u {display:contents;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--media-upload-item-object-fit, cover);--image-border-radius: 0px;--image-padding: 0px;--image-margin: 0px;}.thumb-loading.svelte-nabf7u {display:contents;--shimmer-width: 100%;--shimmer-height: 100%;--shimmer-border-radius: 0px;}.file-icon.svelte-nabf7u {display:flex;height:100%;width:100%;justify-content:center;align-items:center;color:var(--media-upload-file-icon-color, #8a8f98);}.file-icon.svelte-nabf7u svg,\n .file-icon.svelte-nabf7u img {height:var(--media-upload-file-icon-size, 36px);width:var(--media-upload-file-icon-size, 36px);object-fit:contain;}.meta.svelte-nabf7u {position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:2px;box-sizing:border-box;padding:var(--media-upload-meta-padding, 6px 8px);background:var(\n --media-upload-meta-background,\n linear-gradient(to top, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0))\n );color:var(--media-upload-meta-color, #ffffff);}.is-file.svelte-nabf7u .meta:where(.svelte-nabf7u) {background:var(--media-upload-file-meta-background, transparent);color:var(--media-upload-file-meta-color, #52525b);}.meta-name.svelte-nabf7u {font-size:var(--media-upload-meta-name-font-size, 11px);font-weight:var(--media-upload-meta-name-font-weight, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.meta-size.svelte-nabf7u {font-size:var(--media-upload-meta-size-font-size, 10px);opacity:var(--media-upload-meta-size-opacity, 0.85);font-variant-numeric:tabular-nums;}.remove.svelte-nabf7u {position:absolute;top:var(--media-upload-remove-inset, 6px);right:var(--media-upload-remove-inset, 6px);opacity:var(--media-upload-remove-opacity, 0);transition:var(--media-upload-remove-transition, opacity 0.18s ease);--button-width: var(--media-upload-remove-size, 24px);--button-height: var(--media-upload-remove-size, 24px);--button-padding: var(--media-upload-remove-padding, 4px);--button-border: var(--media-upload-remove-border, none);--button-border-radius: var(--media-upload-remove-border-radius, 50%);--button-color: var(--media-upload-remove-background-color, rgba(0, 0, 0, 0.55));--button-text-color: var(--media-upload-remove-color, #ffffff);--button-content-gap: 0px;--button-hover-color: var(--media-upload-remove-hover-background-color, rgba(0, 0, 0, 0.78));--button-hover-text-color: var(\n --media-upload-remove-hover-color,\n var(--media-upload-remove-color, #ffffff)\n );}.card.svelte-nabf7u:hover .remove:where(.svelte-nabf7u),\n .remove.svelte-nabf7u:focus-within {opacity:1;}.remove.svelte-nabf7u svg,\n .remove.svelte-nabf7u img {height:var(--media-upload-remove-icon-size, 100%);width:var(--media-upload-remove-icon-size, 100%);object-fit:contain;}.drop-tile.svelte-nabf7u {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--media-upload-add-gap, 6px);box-sizing:border-box;padding:var(--media-upload-add-padding, 12px);text-align:center;background-color:var(--media-upload-add-background-color, #fafafa);border:var(--media-upload-add-border, 1.5px dashed #c8ccd2);color:var(--media-upload-add-color, #4b5563);cursor:pointer;transition:var(\n --media-upload-add-transition,\n border-color 0.18s ease,\n background-color 0.18s ease,\n color 0.18s ease\n );}.drop-tile.svelte-nabf7u:hover {background-color:var(--media-upload-add-hover-background-color, #f1f5ff);border:var(--media-upload-add-hover-border, 1.5px dashed #6d8eff);color:var(--media-upload-add-hover-color, #3b5bdb);}.drop-tile.dragging.svelte-nabf7u {background-color:var(--media-upload-add-dragging-background-color, #e7efff);border:var(--media-upload-add-dragging-border, 1.5px solid #3b5bdb);color:var(--media-upload-add-dragging-color, #3b5bdb);}.drop-icon.svelte-nabf7u {display:flex;justify-content:center;align-items:center;}.drop-icon.svelte-nabf7u svg,\n .drop-icon.svelte-nabf7u img {height:var(--media-upload-add-icon-size, 22px);width:var(--media-upload-add-icon-size, 22px);object-fit:contain;}.drop-text.svelte-nabf7u {font-size:var(--media-upload-add-text-font-size, 11px);line-height:var(--media-upload-add-text-line-height, 1.3);}.drop-hint.svelte-nabf7u {font-size:var(--media-upload-add-hint-font-size, 10px);color:var(--media-upload-add-hint-color, #4b5563);}.error.svelte-nabf7u {font-size:var(--media-upload-error-font-size, 12px);color:var(--media-upload-error-color, #e0334b);margin:var(--media-upload-error-margin, 8px 0 0 0);}\n\n /* `--media-upload-item-transition` defaults to a box-shadow AND transform lift\n on hover. The shadow alone would be fine; the transform is movement, and a\n consumer overriding the token is most likely adding more of it. Dropping the\n whole declaration is right here because every end state is a resting state. */\n @media (prefers-reduced-motion: reduce) {.card.svelte-nabf7u {transition:none;}\n }"
|
|
41799
41990
|
};
|
|
41800
41991
|
function MediaUpload(e, t) {
|
|
41801
41992
|
let n = props_id();
|
|
@@ -42633,7 +42824,7 @@ var edit_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.
|
|
|
42633
42824
|
}), append(e, i);
|
|
42634
42825
|
}, root$18 = /* @__PURE__ */ from_html("<span class=\"grid-image-wrap svelte-14wkit2\"><!></span> <!>", 1), root_1$16 = /* @__PURE__ */ from_html("<span class=\"list-caption svelte-14wkit2\"> </span>"), root_2$10 = /* @__PURE__ */ from_html("<span class=\"list-text svelte-14wkit2\"><span class=\"list-title svelte-14wkit2\"> </span> <!></span>"), root_3$10 = /* @__PURE__ */ from_html("<!> <!>", 1), root_4$9 = /* @__PURE__ */ from_html("<button class=\"gallery-item-content svelte-14wkit2\"><!></button>"), root_5$8 = /* @__PURE__ */ from_html("<div class=\"gallery-item-content svelte-14wkit2\"><!></div>"), root_6$8 = /* @__PURE__ */ from_html("<div class=\"gallery-item-action svelte-14wkit2\"><!></div>"), root_7$7 = /* @__PURE__ */ from_html("<div class=\"gallery-item-actions svelte-14wkit2\"><!> <!></div>"), root_8$6 = /* @__PURE__ */ from_html("<div class=\"gallery-item svelte-14wkit2\" role=\"listitem\"><!> <!></div>"), root_9$5 = /* @__PURE__ */ from_html("<div class=\"lightbox-previous svelte-14wkit2\"><!></div>"), root_10$4 = /* @__PURE__ */ from_html("<figcaption class=\"lightbox-caption svelte-14wkit2\"> </figcaption>"), root_11$2 = /* @__PURE__ */ from_html("<figure class=\"lightbox-figure svelte-14wkit2\"><!> <!></figure>"), root_12$2 = /* @__PURE__ */ from_html("<div class=\"lightbox-next svelte-14wkit2\"><!></div>"), root_13$1 = /* @__PURE__ */ from_html("<div class=\"lightbox-counter svelte-14wkit2\" aria-live=\"polite\"> </div>"), root_14$1 = /* @__PURE__ */ from_html("<div role=\"dialog\" aria-modal=\"true\" tabindex=\"-1\"><div class=\"lightbox-close svelte-14wkit2\"><!></div> <!> <!> <!> <!></div>"), root_15$1 = /* @__PURE__ */ from_html("<div role=\"list\"></div> <!>", 1), $$css$39 = {
|
|
42635
42826
|
hash: "svelte-14wkit2",
|
|
42636
|
-
code: ".gallery.svelte-14wkit2 {width:var(--gallery-width, 100%);padding:var(--gallery-padding, 0px);margin:var(--gallery-margin, 0px);background:var(--gallery-background, transparent);}.gallery.grid.svelte-14wkit2 {display:grid;grid-template-columns:var(\n --gallery-grid-template-columns,\n repeat(var(--gallery-columns, 3), 1fr)\n );gap:var(--gallery-gap, 8px);}.gallery.list.svelte-14wkit2 {display:flex;flex-direction:column;gap:var(--gallery-gap, 8px);}.gallery-item.svelte-14wkit2 {position:relative;}.grid.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {aspect-ratio:var(--gallery-item-aspect-ratio, 1);border-radius:var(--gallery-item-border-radius, 0px);overflow:hidden;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--gallery-item-image-fit, cover);--image-border-radius: var(--gallery-item-border-radius, 0px);--image-transition: var(--gallery-item-image-transition);}.grid.has-item-footer.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {aspect-ratio:auto;overflow:visible;border-radius:0px;}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {display:flex;align-items:center;border-radius:var(--gallery-list-item-border-radius, 0px);background:var(--gallery-list-item-background, transparent);--image-width: var(--gallery-list-thumbnail-width, 56px);--image-height: var(--gallery-list-thumbnail-height, 56px);--image-object-fit: var(--gallery-list-thumbnail-fit, cover);--image-border-radius: var(--gallery-list-thumbnail-border-radius, 0px);--image-transition: var(--gallery-item-image-transition);--image-flex-shrink: 0;}.gallery-item-content.svelte-14wkit2 {font:inherit;color:inherit;border:var(--gallery-item-border, none);background:transparent;}button.gallery-item-content.svelte-14wkit2 {cursor:var(--gallery-item-cursor, pointer);transition:var(--gallery-item-transition);}.grid.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:block;width:100%;height:100%;padding:0;border-radius:var(--gallery-item-border-radius, 0px);}.grid.has-item-footer.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:flex;flex-direction:column;height:auto;border-radius:var(--gallery-item-border-radius, 0px);overflow:hidden;}.grid-image-wrap.svelte-14wkit2 {display:block;aspect-ratio:var(--gallery-item-aspect-ratio, 1);overflow:hidden;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--gallery-item-image-fit, cover);--image-border-radius: 0px;--image-transition: var(--gallery-item-image-transition);}.list.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:flex;align-items:center;text-align:left;flex:1;min-width:0;gap:var(--gallery-list-item-gap, 12px);padding:var(--gallery-list-item-padding, 8px);}.grid.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):hover {opacity:var(--gallery-item-hover-opacity, 1);transform:var(--gallery-item-hover-transform);}.grid.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):focus-visible {outline:var(--gallery-item-focus-outline, 2px solid currentColor);outline-offset:var(--gallery-item-focus-outline-offset, 2px);}.list.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):focus-visible {outline:none;}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2):has(button.gallery-item-content:where(.svelte-14wkit2)):hover {background:var(--gallery-list-item-hover-background, transparent);}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2):has(button.gallery-item-content:where(.svelte-14wkit2):focus-visible) {outline:var(--gallery-item-focus-outline, 2px solid currentColor);outline-offset:var(--gallery-item-focus-outline-offset, 2px);}.list-text.svelte-14wkit2 {display:flex;flex-direction:column;gap:var(--gallery-list-text-gap, 2px);min-width:0;}.list-title.svelte-14wkit2,\n .list-caption.svelte-14wkit2 {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.list-title.svelte-14wkit2 {color:var(--gallery-list-title-color, inherit);font-size:var(--gallery-list-title-font-size, 14px);font-weight:var(--gallery-list-title-font-weight, 500);font-family:var(--gallery-list-title-font-family, inherit);}.list-caption.svelte-14wkit2 {color:var(--gallery-list-caption-color, inherit);font-size:var(--gallery-list-caption-font-size, 12px);font-family:var(--gallery-list-caption-font-family, inherit);}.gallery-item-actions.svelte-14wkit2 {display:flex;align-items:center;gap:var(--gallery-item-actions-gap, 4px);}.grid.svelte-14wkit2 .gallery-item-actions:where(.svelte-14wkit2) {position:absolute;top:var(--gallery-item-actions-top, 8px);right:var(--gallery-item-actions-right, 8px);}.list.svelte-14wkit2 .gallery-item-actions:where(.svelte-14wkit2) {flex-shrink:0;padding-right:var(--gallery-item-actions-right, 8px);}.gallery-item-action.svelte-14wkit2 {border-radius:var(--gallery-item-action-border-radius, 8px);--button-color: transparent;--button-hover-color: transparent;--button-padding: var(--gallery-item-action-padding, 6px);--button-border-radius: var(--gallery-item-action-border-radius, 8px);--icon-container-padding: 0px;--icon-padding: 0px;--icon-width: var(--gallery-item-action-icon-size, 16px);--icon-height: var(--gallery-item-action-icon-size, 16px);}.grid.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2) {background:var(--gallery-item-action-background, #00000066);-webkit-backdrop-filter:var(--gallery-item-action-backdrop-filter, blur(8px));backdrop-filter:var(--gallery-item-action-backdrop-filter, blur(8px));--button-text-color: var(--gallery-item-action-color, #ffffff);}.grid.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2):hover {background:var(--gallery-item-action-hover-background, #00000099);}.list.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2) {background:var(--gallery-item-action-background, transparent);--button-text-color: var(--gallery-item-action-color, currentColor);}.list.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2):hover {background:var(--gallery-item-action-hover-background, #80808026);}.lightbox.svelte-14wkit2 {position:fixed;top:0;bottom:0;left:0;right:0;z-index:var(--gallery-lightbox-z-index, 15);display:flex;justify-content:center;align-items:center;background:var(--gallery-lightbox-background, #000000e6);-webkit-tap-highlight-color:transparent;}.lightbox.svelte-14wkit2:focus {outline:none;}\n\n /* lightboxAction focuses this element directly on open (and goToIndex\n re-focuses it whenever focus isn't already inside), and it's the\n Tab-trap's own boundary, so the unconditional :focus suppression above\n left a keyboard user with no visible sign focus had moved into the\n lightbox at all. :focus-visible wins the cascade over the plain :focus\n rule above (equal specificity, later in source, and a strict subset) only\n when the browser judges this came from keyboard/programmatic focus, so\n the thumbnail click that opens the lightbox still shows nothing new.\n outline-offset is negative (inset), matching Sheet's sheet-panel: the\n lightbox sits flush against all four viewport edges, so a positive offset\n would clip. */.lightbox.svelte-14wkit2:focus-visible {outline:var(--gallery-lightbox-focus-outline, 2px solid #2563eb);outline-offset:var(--gallery-lightbox-focus-outline-offset, -2px);}.lightbox-figure.svelte-14wkit2 {display:flex;flex-direction:column;align-items:center;gap:var(--gallery-lightbox-caption-gap, 12px);margin:0;pointer-events:none;--image-width: var(--gallery-lightbox-image-width, 85vw);--image-height: var(--gallery-lightbox-image-height, 75vh);--image-object-fit: var(--gallery-lightbox-image-fit, contain);--image-border-radius: var(--gallery-lightbox-image-border-radius, 0px);}.lightbox-caption.svelte-14wkit2 {color:var(--gallery-lightbox-caption-color, #ffffff);font-size:var(--gallery-lightbox-caption-font-size, 14px);font-family:var(--gallery-lightbox-caption-font-family, inherit);text-align:center;max-width:var(--gallery-lightbox-image-width, 85vw);}.lightbox-counter.svelte-14wkit2 {position:absolute;bottom:var(--gallery-lightbox-counter-bottom, 16px);left:50%;transform:translateX(-50%);color:var(--gallery-lightbox-counter-color, #ffffff);font-size:var(--gallery-lightbox-counter-font-size, 13px);font-family:var(--gallery-lightbox-counter-font-family, inherit);}.lightbox-close.svelte-14wkit2,\n .lightbox-previous.svelte-14wkit2,\n .lightbox-next.svelte-14wkit2 {position:absolute;--button-color: var(--gallery-lightbox-control-background, transparent);--button-text-color: var(--gallery-lightbox-control-color, #ffffff);--button-hover-color: var(--gallery-lightbox-control-hover-background, #ffffff1f);--button-padding: var(--gallery-lightbox-control-padding, 8px);--button-border-radius: var(--gallery-lightbox-control-border-radius, 50%);--icon-container-padding: 0px;--icon-padding: 0px;--icon-width: var(--gallery-lightbox-control-icon-size, 24px);--icon-height: var(--gallery-lightbox-control-icon-size, 24px);}.lightbox-close.svelte-14wkit2 {top:var(--gallery-lightbox-close-top, 16px);right:var(--gallery-lightbox-close-right, 16px);}.lightbox-previous.svelte-14wkit2,\n .lightbox-next.svelte-14wkit2 {top:50%;transform:translateY(-50%);}.lightbox-previous.svelte-14wkit2 {left:var(--gallery-lightbox-nav-inset, 16px);}.lightbox-next.svelte-14wkit2 {right:var(--gallery-lightbox-nav-inset, 16px);}"
|
|
42827
|
+
code: ".gallery.svelte-14wkit2 {width:var(--gallery-width, 100%);padding:var(--gallery-padding, 0px);margin:var(--gallery-margin, 0px);background:var(--gallery-background, transparent);}.gallery.grid.svelte-14wkit2 {display:grid;grid-template-columns:var(\n --gallery-grid-template-columns,\n repeat(var(--gallery-columns, 3), 1fr)\n );gap:var(--gallery-gap, 8px);}.gallery.list.svelte-14wkit2 {display:flex;flex-direction:column;gap:var(--gallery-gap, 8px);}.gallery-item.svelte-14wkit2 {position:relative;}.grid.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {aspect-ratio:var(--gallery-item-aspect-ratio, 1);border-radius:var(--gallery-item-border-radius, 0px);overflow:hidden;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--gallery-item-image-fit, cover);--image-border-radius: var(--gallery-item-border-radius, 0px);--image-transition: var(--gallery-item-image-transition);}.grid.has-item-footer.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {aspect-ratio:auto;overflow:visible;border-radius:0px;}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2) {display:flex;align-items:center;border-radius:var(--gallery-list-item-border-radius, 0px);background:var(--gallery-list-item-background, transparent);--image-width: var(--gallery-list-thumbnail-width, 56px);--image-height: var(--gallery-list-thumbnail-height, 56px);--image-object-fit: var(--gallery-list-thumbnail-fit, cover);--image-border-radius: var(--gallery-list-thumbnail-border-radius, 0px);--image-transition: var(--gallery-item-image-transition);--image-flex-shrink: 0;}.gallery-item-content.svelte-14wkit2 {font:inherit;color:inherit;border:var(--gallery-item-border, none);background:transparent;}button.gallery-item-content.svelte-14wkit2 {cursor:var(--gallery-item-cursor, pointer);transition:var(--gallery-item-transition);}.grid.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:block;width:100%;height:100%;padding:0;border-radius:var(--gallery-item-border-radius, 0px);}.grid.has-item-footer.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:flex;flex-direction:column;height:auto;border-radius:var(--gallery-item-border-radius, 0px);overflow:hidden;}.grid-image-wrap.svelte-14wkit2 {display:block;aspect-ratio:var(--gallery-item-aspect-ratio, 1);overflow:hidden;--image-width: 100%;--image-height: 100%;--image-object-fit: var(--gallery-item-image-fit, cover);--image-border-radius: 0px;--image-transition: var(--gallery-item-image-transition);}.list.svelte-14wkit2 .gallery-item-content:where(.svelte-14wkit2) {display:flex;align-items:center;text-align:left;flex:1;min-width:0;gap:var(--gallery-list-item-gap, 12px);padding:var(--gallery-list-item-padding, 8px);}.grid.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):hover {opacity:var(--gallery-item-hover-opacity, 1);transform:var(--gallery-item-hover-transform);}.grid.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):focus-visible {outline:var(--gallery-item-focus-outline, 2px solid currentColor);outline-offset:var(--gallery-item-focus-outline-offset, 2px);}.list.svelte-14wkit2 button.gallery-item-content:where(.svelte-14wkit2):focus-visible {outline:none;}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2):has(button.gallery-item-content:where(.svelte-14wkit2)):hover {background:var(--gallery-list-item-hover-background, transparent);}.list.svelte-14wkit2 .gallery-item:where(.svelte-14wkit2):has(button.gallery-item-content:where(.svelte-14wkit2):focus-visible) {outline:var(--gallery-item-focus-outline, 2px solid currentColor);outline-offset:var(--gallery-item-focus-outline-offset, 2px);}.list-text.svelte-14wkit2 {display:flex;flex-direction:column;gap:var(--gallery-list-text-gap, 2px);min-width:0;}.list-title.svelte-14wkit2,\n .list-caption.svelte-14wkit2 {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.list-title.svelte-14wkit2 {color:var(--gallery-list-title-color, inherit);font-size:var(--gallery-list-title-font-size, 14px);font-weight:var(--gallery-list-title-font-weight, 500);font-family:var(--gallery-list-title-font-family, inherit);}.list-caption.svelte-14wkit2 {color:var(--gallery-list-caption-color, inherit);font-size:var(--gallery-list-caption-font-size, 12px);font-family:var(--gallery-list-caption-font-family, inherit);}.gallery-item-actions.svelte-14wkit2 {display:flex;align-items:center;gap:var(--gallery-item-actions-gap, 4px);}.grid.svelte-14wkit2 .gallery-item-actions:where(.svelte-14wkit2) {position:absolute;top:var(--gallery-item-actions-top, 8px);right:var(--gallery-item-actions-right, 8px);}.list.svelte-14wkit2 .gallery-item-actions:where(.svelte-14wkit2) {flex-shrink:0;padding-right:var(--gallery-item-actions-right, 8px);}.gallery-item-action.svelte-14wkit2 {border-radius:var(--gallery-item-action-border-radius, 8px);--button-color: transparent;--button-hover-color: transparent;--button-padding: var(--gallery-item-action-padding, 6px);--button-border-radius: var(--gallery-item-action-border-radius, 8px);--icon-container-padding: 0px;--icon-padding: 0px;--icon-width: var(--gallery-item-action-icon-size, 16px);--icon-height: var(--gallery-item-action-icon-size, 16px);}.grid.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2) {background:var(--gallery-item-action-background, #00000066);-webkit-backdrop-filter:var(--gallery-item-action-backdrop-filter, blur(8px));backdrop-filter:var(--gallery-item-action-backdrop-filter, blur(8px));--button-text-color: var(--gallery-item-action-color, #ffffff);}.grid.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2):hover {background:var(--gallery-item-action-hover-background, #00000099);}.list.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2) {background:var(--gallery-item-action-background, transparent);--button-text-color: var(--gallery-item-action-color, currentColor);}.list.svelte-14wkit2 .gallery-item-action:where(.svelte-14wkit2):hover {background:var(--gallery-item-action-hover-background, #80808026);}.lightbox.svelte-14wkit2 {position:fixed;top:0;bottom:0;left:0;right:0;z-index:var(--gallery-lightbox-z-index, 15);display:flex;justify-content:center;align-items:center;background:var(--gallery-lightbox-background, #000000e6);-webkit-tap-highlight-color:transparent;--_gallery-lightbox-transition-duration: var(\n --gallery-lightbox-transition-duration,\n var(--duration-base, var(--motion-duration))\n );}.lightbox.svelte-14wkit2:focus {outline:none;}\n\n /* lightboxAction focuses this element directly on open (and goToIndex\n re-focuses it whenever focus isn't already inside), and it's the\n Tab-trap's own boundary, so the unconditional :focus suppression above\n left a keyboard user with no visible sign focus had moved into the\n lightbox at all. :focus-visible wins the cascade over the plain :focus\n rule above (equal specificity, later in source, and a strict subset) only\n when the browser judges this came from keyboard/programmatic focus, so\n the thumbnail click that opens the lightbox still shows nothing new.\n outline-offset is negative (inset), matching Sheet's sheet-panel: the\n lightbox sits flush against all four viewport edges, so a positive offset\n would clip. */.lightbox.svelte-14wkit2:focus-visible {outline:var(--gallery-lightbox-focus-outline, 2px solid #2563eb);outline-offset:var(--gallery-lightbox-focus-outline-offset, -2px);}.lightbox-figure.svelte-14wkit2 {display:flex;flex-direction:column;align-items:center;gap:var(--gallery-lightbox-caption-gap, 12px);margin:0;pointer-events:none;--image-width: var(--gallery-lightbox-image-width, 85vw);--image-height: var(--gallery-lightbox-image-height, 75vh);--image-object-fit: var(--gallery-lightbox-image-fit, contain);--image-border-radius: var(--gallery-lightbox-image-border-radius, 0px);}.lightbox-caption.svelte-14wkit2 {color:var(--gallery-lightbox-caption-color, #ffffff);font-size:var(--gallery-lightbox-caption-font-size, 14px);font-family:var(--gallery-lightbox-caption-font-family, inherit);text-align:center;max-width:var(--gallery-lightbox-image-width, 85vw);}.lightbox-counter.svelte-14wkit2 {position:absolute;bottom:var(--gallery-lightbox-counter-bottom, 16px);left:50%;transform:translateX(-50%);color:var(--gallery-lightbox-counter-color, #ffffff);font-size:var(--gallery-lightbox-counter-font-size, 13px);font-family:var(--gallery-lightbox-counter-font-family, inherit);}.lightbox-close.svelte-14wkit2,\n .lightbox-previous.svelte-14wkit2,\n .lightbox-next.svelte-14wkit2 {position:absolute;--button-color: var(--gallery-lightbox-control-background, transparent);--button-text-color: var(--gallery-lightbox-control-color, #ffffff);--button-hover-color: var(--gallery-lightbox-control-hover-background, #ffffff1f);--button-padding: var(--gallery-lightbox-control-padding, 8px);--button-border-radius: var(--gallery-lightbox-control-border-radius, 50%);--icon-container-padding: 0px;--icon-padding: 0px;--icon-width: var(--gallery-lightbox-control-icon-size, 24px);--icon-height: var(--gallery-lightbox-control-icon-size, 24px);}.lightbox-close.svelte-14wkit2 {top:var(--gallery-lightbox-close-top, 16px);right:var(--gallery-lightbox-close-right, 16px);}.lightbox-previous.svelte-14wkit2,\n .lightbox-next.svelte-14wkit2 {top:50%;transform:translateY(-50%);}.lightbox-previous.svelte-14wkit2 {left:var(--gallery-lightbox-nav-inset, 16px);}.lightbox-next.svelte-14wkit2 {right:var(--gallery-lightbox-nav-inset, 16px);}"
|
|
42637
42828
|
};
|
|
42638
42829
|
function Gallery(e, t) {
|
|
42639
42830
|
push(t, !0), append_styles$1(e, $$css$39);
|
|
@@ -42705,41 +42896,50 @@ function Gallery(e, t) {
|
|
|
42705
42896
|
unlockBodyScroll(), dt !== null && (dt.focus(), dt = null);
|
|
42706
42897
|
} };
|
|
42707
42898
|
}
|
|
42708
|
-
function xt(e
|
|
42899
|
+
function xt(e) {
|
|
42900
|
+
let t = e.trim();
|
|
42901
|
+
if (t.length === 0) return null;
|
|
42902
|
+
let n = Number.parseFloat(t);
|
|
42903
|
+
return Number.isFinite(n) ? t.endsWith("ms") ? n : t.endsWith("s") ? n * 1e3 : null : null;
|
|
42904
|
+
}
|
|
42905
|
+
function St(e) {
|
|
42906
|
+
return typeof at() == "number" ? fade(e, { duration: at() }) : fade(e, { duration: xt(getComputedStyle(e).getPropertyValue("--_gallery-lightbox-transition-duration")) ?? 200 });
|
|
42907
|
+
}
|
|
42908
|
+
function Ct(e, t) {
|
|
42709
42909
|
t instanceof HTMLElement && (dt = t), s(e), o(!0), be()?.(e);
|
|
42710
42910
|
}
|
|
42711
|
-
function
|
|
42911
|
+
function wt() {
|
|
42712
42912
|
o(!1), Me()?.();
|
|
42713
42913
|
}
|
|
42714
|
-
async function
|
|
42914
|
+
async function Tt(e) {
|
|
42715
42915
|
e < 0 || e >= i().length || (s(e), Re()?.(s()), await tick(), get(ot) !== null && !get(ot).contains(getActiveElement(get(ot))) && get(ot).focus());
|
|
42716
42916
|
}
|
|
42717
|
-
function
|
|
42718
|
-
s() > 0 ?
|
|
42917
|
+
function Et() {
|
|
42918
|
+
s() > 0 ? Tt(s() - 1) : l() && i().length > 1 && Tt(i().length - 1);
|
|
42719
42919
|
}
|
|
42720
|
-
function
|
|
42721
|
-
s() < i().length - 1 ?
|
|
42920
|
+
function Dt() {
|
|
42921
|
+
s() < i().length - 1 ? Tt(s() + 1) : l() && i().length > 1 && Tt(0);
|
|
42722
42922
|
}
|
|
42723
|
-
function
|
|
42724
|
-
ne()?.(e, t), c() &&
|
|
42923
|
+
function Ot(e, t) {
|
|
42924
|
+
ne()?.(e, t), c() && Ct(e, t.currentTarget);
|
|
42725
42925
|
}
|
|
42726
|
-
function
|
|
42926
|
+
function kt(e, t) {
|
|
42727
42927
|
re()?.(e, t);
|
|
42728
42928
|
}
|
|
42729
|
-
function
|
|
42929
|
+
function At(e, t) {
|
|
42730
42930
|
G()?.(e, t);
|
|
42731
42931
|
}
|
|
42732
|
-
function
|
|
42932
|
+
function jt(e) {
|
|
42733
42933
|
let t = get(ct)?.querySelector("button") ?? null, n = (get(ut) ?? get(lt) ?? get(ct))?.querySelector("button") ?? null;
|
|
42734
42934
|
t === null || n === null || (e.shiftKey && (getActiveElement(get(ot)) === t || getActiveElement(get(ot)) === get(ot)) ? (e.preventDefault(), n.focus()) : !e.shiftKey && getActiveElement(get(ot)) === n && (e.preventDefault(), t.focus()));
|
|
42735
42935
|
}
|
|
42736
|
-
function
|
|
42737
|
-
Ue()?.(e), e.key === "Escape" ?
|
|
42936
|
+
function Mt(e) {
|
|
42937
|
+
Ue()?.(e), e.key === "Escape" ? wt() : e.key === "ArrowLeft" ? (e.preventDefault(), Et()) : e.key === "ArrowRight" ? (e.preventDefault(), Dt()) : e.key === "Home" ? (e.preventDefault(), Tt(0)) : e.key === "End" ? (e.preventDefault(), Tt(i().length - 1)) : e.key === "Tab" && jt(e);
|
|
42738
42938
|
}
|
|
42739
|
-
function
|
|
42740
|
-
e.target === get(ot) &&
|
|
42939
|
+
function Nt(e) {
|
|
42940
|
+
e.target === get(ot) && wt();
|
|
42741
42941
|
}
|
|
42742
|
-
var
|
|
42942
|
+
var Pt = {
|
|
42743
42943
|
get images() {
|
|
42744
42944
|
return i();
|
|
42745
42945
|
},
|
|
@@ -42884,11 +43084,11 @@ function Gallery(e, t) {
|
|
|
42884
43084
|
set lightboxTransitionDuration(e) {
|
|
42885
43085
|
at(e), flushSync();
|
|
42886
43086
|
}
|
|
42887
|
-
},
|
|
42888
|
-
each(
|
|
43087
|
+
}, It = root_15$1(), Lt = first_child(It);
|
|
43088
|
+
each(Lt, 21, i, index, (e, t, a) => {
|
|
42889
43089
|
var o = root_8$6(), s = child(o), l = (e) => {
|
|
42890
43090
|
var o = root_4$9();
|
|
42891
|
-
n(child(o), () => get(t), () => a), reset(o), template_effect(() => set_attribute(o, "aria-label", c() ? `View image ${a + 1} of ${i().length}: ${get(t).alt}` : get(t).alt)), delegated("click", o, (e) =>
|
|
43091
|
+
n(child(o), () => get(t), () => a), reset(o), template_effect(() => set_attribute(o, "aria-label", c() ? `View image ${a + 1} of ${i().length}: ${get(t).alt}` : get(t).alt)), delegated("click", o, (e) => Ot(a, e)), append(e, o);
|
|
42892
43092
|
}, u = (e) => {
|
|
42893
43093
|
var i = root_5$8();
|
|
42894
43094
|
n(child(i), () => get(t), () => a), reset(i), append(e, i);
|
|
@@ -42905,7 +43105,7 @@ function Gallery(e, t) {
|
|
|
42905
43105
|
get ariaLabel() {
|
|
42906
43106
|
return get(e);
|
|
42907
43107
|
},
|
|
42908
|
-
onclick: (e) =>
|
|
43108
|
+
onclick: (e) => kt(a, e),
|
|
42909
43109
|
children: (e, t) => {
|
|
42910
43110
|
controlIcon(e, () => edit_default, C);
|
|
42911
43111
|
},
|
|
@@ -42925,7 +43125,7 @@ function Gallery(e, t) {
|
|
|
42925
43125
|
get ariaLabel() {
|
|
42926
43126
|
return get(e);
|
|
42927
43127
|
},
|
|
42928
|
-
onclick: (e) =>
|
|
43128
|
+
onclick: (e) => At(a, e),
|
|
42929
43129
|
children: (e, t) => {
|
|
42930
43130
|
controlIcon(e, () => delete_default, k);
|
|
42931
43131
|
},
|
|
@@ -42941,12 +43141,12 @@ function Gallery(e, t) {
|
|
|
42941
43141
|
if_block(f, (e) => {
|
|
42942
43142
|
get(yt) && e(p);
|
|
42943
43143
|
}), reset(o), append(e, o);
|
|
42944
|
-
}), reset(
|
|
42945
|
-
var
|
|
43144
|
+
}), reset(Lt);
|
|
43145
|
+
var Rt = sibling(Lt, 2), zt = (e) => {
|
|
42946
43146
|
var t = root_14$1(), n = child(t);
|
|
42947
43147
|
Button(child(n), {
|
|
42948
43148
|
ariaLabel: "Close gallery",
|
|
42949
|
-
onclick:
|
|
43149
|
+
onclick: wt,
|
|
42950
43150
|
children: (e, t) => {
|
|
42951
43151
|
controlIcon(e, () => close_default, S);
|
|
42952
43152
|
},
|
|
@@ -42956,7 +43156,7 @@ function Gallery(e, t) {
|
|
|
42956
43156
|
var t = root_9$5();
|
|
42957
43157
|
Button(child(t), {
|
|
42958
43158
|
ariaLabel: "Previous image",
|
|
42959
|
-
onclick:
|
|
43159
|
+
onclick: Et,
|
|
42960
43160
|
children: (e, t) => {
|
|
42961
43161
|
controlIcon(e, () => chevron_left_lg_default, p);
|
|
42962
43162
|
},
|
|
@@ -42994,7 +43194,7 @@ function Gallery(e, t) {
|
|
|
42994
43194
|
var t = root_12$2();
|
|
42995
43195
|
Button(child(t), {
|
|
42996
43196
|
ariaLabel: "Next image",
|
|
42997
|
-
onclick:
|
|
43197
|
+
onclick: Dt,
|
|
42998
43198
|
children: (e, t) => {
|
|
42999
43199
|
controlIcon(e, () => chevron_right_lg_default, h);
|
|
43000
43200
|
},
|
|
@@ -43012,13 +43212,13 @@ function Gallery(e, t) {
|
|
|
43012
43212
|
u() && typeof get(ft) == "object" && e(te);
|
|
43013
43213
|
}), reset(t), bind_this(t, (e) => set(ot, e), () => get(ot)), action(t, (e) => bt?.(e)), template_effect(() => {
|
|
43014
43214
|
set_class(t, 1, `lightbox ${it() ?? "" ?? ""}`, "svelte-14wkit2"), set_attribute(t, "aria-label", typeof get(ft) == "object" ? get(ft).alt : "Image gallery");
|
|
43015
|
-
}), delegated("click", t,
|
|
43215
|
+
}), delegated("click", t, Nt), delegated("keydown", t, Mt), transition(3, t, () => St), append(e, t);
|
|
43016
43216
|
};
|
|
43017
|
-
return if_block(
|
|
43018
|
-
o() && e(
|
|
43217
|
+
return if_block(Rt, (e) => {
|
|
43218
|
+
o() && e(zt);
|
|
43019
43219
|
}), template_effect(() => {
|
|
43020
|
-
set_class(
|
|
43021
|
-
}), append(e,
|
|
43220
|
+
set_class(Lt, 1, `gallery ${a() ?? ""} ${get(gt) ? "has-item-footer" : ""} ${it() ?? "" ?? ""}`, "svelte-14wkit2"), set_attribute(Lt, "data-pw", typeof te() == "string" ? te() : null);
|
|
43221
|
+
}), append(e, It), pop(Pt);
|
|
43022
43222
|
}
|
|
43023
43223
|
delegate(["click", "keydown"]), create_custom_element(Gallery, {
|
|
43024
43224
|
images: {},
|
|
@@ -51845,7 +52045,7 @@ delegate(["click"]), create_custom_element(ChatSuggestions, {
|
|
|
51845
52045
|
//#region src/lib/ThinkingIndicator/ThinkingIndicator.svelte
|
|
51846
52046
|
var root$10 = /* @__PURE__ */ from_html("<span class=\"avatar svelte-uzfrw6\"><!></span>"), root_1$9 = /* @__PURE__ */ from_svg("<svg viewBox=\"0 0 16 16\" fill=\"none\" class=\"svelte-uzfrw6\"><path d=\"M4 6l4 4 4-4\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-uzfrw6\"></path></svg>"), root_2$5 = /* @__PURE__ */ from_html("<span class=\"elapsed svelte-uzfrw6\"> </span>"), root_3$5 = /* @__PURE__ */ from_html("<span class=\"status-row svelte-uzfrw6\"><!> <span class=\"label-cluster svelte-uzfrw6\"><span> </span> <span aria-hidden=\"true\"><!></span></span></span> <!>", 1), root_4$4 = /* @__PURE__ */ from_svg("<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\" class=\"svelte-uzfrw6\"><circle cx=\"11\" cy=\"11\" r=\"7\" class=\"svelte-uzfrw6\"></circle><path d=\"m21 21-4.3-4.3\" stroke-linecap=\"round\" class=\"svelte-uzfrw6\"></path></svg>"), root_5$3 = /* @__PURE__ */ from_html("<span class=\"trace-query-wrap svelte-uzfrw6\"><!></span>"), root_6$3 = /* @__PURE__ */ from_html("<span> </span>"), root_7$3 = /* @__PURE__ */ from_html("<span class=\"added svelte-uzfrw6\"> </span>"), root_8$3 = /* @__PURE__ */ from_html("<span class=\"removed svelte-uzfrw6\"> </span>"), root_9$2 = /* @__PURE__ */ from_html("<span class=\"row-diffstat svelte-uzfrw6\"><!> <!></span>"), root_10$2 = /* @__PURE__ */ from_html("<button type=\"button\"><b class=\"row-primary svelte-uzfrw6\"> </b> <!> <!></button>"), root_11 = /* @__PURE__ */ from_html("<span class=\"row-secondary svelte-uzfrw6\"> </span>"), root_12 = /* @__PURE__ */ from_html("<a class=\"trace-row linked svelte-uzfrw6\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"row-badge svelte-uzfrw6\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-uzfrw6\"><path d=\"M20 6 9 17l-5-5\" class=\"svelte-uzfrw6\"></path></svg></span> <b class=\"row-primary svelte-uzfrw6\"> </b> <!></a>"), root_13 = /* @__PURE__ */ from_svg("<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-uzfrw6\"><path d=\"M20 6 9 17l-5-5\" class=\"svelte-uzfrw6\"></path></svg>"), root_14 = /* @__PURE__ */ from_html("<span class=\"row-icon svelte-uzfrw6\" aria-hidden=\"true\"><!></span>"), root_15 = /* @__PURE__ */ from_html("<span class=\"row-badge svelte-uzfrw6\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-uzfrw6\"><path d=\"M20 6 9 17l-5-5\" class=\"svelte-uzfrw6\"></path></svg></span>"), root_16 = /* @__PURE__ */ from_html("<b class=\"row-primary svelte-uzfrw6\"> </b>"), root_17 = /* @__PURE__ */ from_html("<div><!> <!> <!> <!></div>"), root_18 = /* @__PURE__ */ from_html("<div class=\"trace-more svelte-uzfrw6\"> </div>"), root_19 = /* @__PURE__ */ from_html("<!> <div class=\"trace-body svelte-uzfrw6\"><span class=\"trace-connector svelte-uzfrw6\" aria-hidden=\"true\"></span> <div class=\"trace-rows svelte-uzfrw6\"></div></div> <!>", 1), root_20 = /* @__PURE__ */ from_html("<p class=\"detail svelte-uzfrw6\"> </p>"), root_21 = /* @__PURE__ */ from_html("<div class=\"thinking-indicator-body svelte-uzfrw6\"><!></div>"), root_22 = /* @__PURE__ */ from_html("<div><div class=\"toggle svelte-uzfrw6\"><!></div> <!></div>"), root_23 = /* @__PURE__ */ from_html("<span class=\"svelte-uzfrw6\"> </span>"), root_24 = /* @__PURE__ */ from_html("<span><!></span>"), root_25 = /* @__PURE__ */ from_html("<div aria-live=\"polite\" aria-atomic=\"true\"><span class=\"chip-icon svelte-uzfrw6\"><!></span> <span> </span></div>"), root_26 = /* @__PURE__ */ from_html("<div><span class=\"status-row svelte-uzfrw6\"><span class=\"avatar svelte-uzfrw6\"><!></span> <span> </span></span> <!></div>"), $$css$30 = {
|
|
51847
52047
|
hash: "svelte-uzfrw6",
|
|
51848
|
-
code: "\n @keyframes svelte-uzfrw6-thinking-indicator-shimmer {\n 0% {\n background-position: 200% 0;\n }\n\n 100% {\n background-position: -200% 0;\n }\n }\n\n @keyframes svelte-uzfrw6-thinking-indicator-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }\n\n @keyframes svelte-uzfrw6-thinking-indicator-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }.thinking-indicator.svelte-uzfrw6 {box-sizing:border-box;width:100%;}.expandable.svelte-uzfrw6 {border-bottom:var(--thinking-indicator-border-bottom, 1px solid #e4e4e7);padding-block:var(--thinking-indicator-padding-block, 0.5rem);margin-bottom:var(--thinking-indicator-margin-bottom, 1rem);min-height:0;transition:min-height 400ms\n var(--thinking-indicator-trace-ease, cubic-bezier(0.23, 1, 0.32, 1));}.expandable.busy.svelte-uzfrw6 {min-height:var(--thinking-indicator-trace-busy-min-height, 0px);}.toggle.svelte-uzfrw6 {width:100%;--button-color: transparent;--button-border: none;--button-box-shadow: none;--button-hover-box-shadow: none;--button-active-box-shadow: none;--button-width: 100%;--button-padding: 0;--button-justify-content: flex-start;--button-text-color: inherit;--button-content-gap: var(--thinking-indicator-header-gap, 0.375rem);}\n\n /* A flex ROW host makes the inner status-row hug its content, so the shimmer\n gradient maps to the text's own width rather than the full container. Neither\n form stretches to fill the width — a trailing gap after a short label is real\n empty space, not a reserved box, so nothing pushes the elapsed counter away. */.status-host.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-header-gap, 0.375rem);}.status-row.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-gap, 0.25rem);min-width:0;}.avatar.svelte-uzfrw6 {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--thinking-indicator-avatar-size, 1.5rem);height:var(--thinking-indicator-avatar-size, 1.5rem);--loader-width: var(--thinking-indicator-avatar-loader-size, 1rem);--loader-height: var(--thinking-indicator-avatar-loader-size, 1rem);}\n\n /* The chevron lives in the same flex cluster as the label so it hugs the text\n immediately, instead of drifting to the far edge of the toggle button. */.label-cluster.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-arrow-gap, 0.125rem);min-width:0;}.status-label.svelte-uzfrw6 {flex:0 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left;font-size:var(--thinking-indicator-font-size, 0.75rem);line-height:var(--thinking-indicator-line-height, 1.25rem);color:var(--thinking-indicator-label-color, #858585);background:var(\n --thinking-indicator-shimmer-gradient,\n linear-gradient(90deg, #858585 0%, #bebebe 50%, #858585 100%)\n );background-size:200% 100%;background-clip:text;-webkit-text-fill-color:transparent;\n animation: svelte-uzfrw6-thinking-indicator-shimmer var(--thinking-indicator-shimmer-duration, 2s) linear\n infinite;}\n\n /* A settled label (no live busy phase) holds still instead of shimmering. */.static-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-label-color, #858585);}\n\n /* ---- chip variant: a self-contained floating pill (no ancestor supplies\n background/layout, unlike bare) — deliberately not `width: 100%`/box-sizing\n from `.thinking-indicator`, since a pill hugs its content. */.thinking-indicator-chip.svelte-uzfrw6 {box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--thinking-indicator-chip-gap, 8px);width:fit-content;padding:var(--thinking-indicator-chip-padding, 8px 14px);background:var(--thinking-indicator-chip-background, #ffffff);border:var(--thinking-indicator-chip-border, 1px solid #e4e4e7);border-radius:var(--thinking-indicator-chip-border-radius, 999px);box-shadow:var(--thinking-indicator-chip-box-shadow, 0 6px 20px rgba(0, 0, 0, 0.08));max-width:var(--thinking-indicator-chip-max-width, 100%);}.chip-icon.svelte-uzfrw6 {display:inline-flex;align-items:center;flex-shrink:0;color:var(--thinking-indicator-chip-icon-color, currentColor);--loader-foreground: var(--thinking-indicator-chip-spinner-color, currentColor);--loader-foreground-end: var(--thinking-indicator-chip-spinner-color-end, transparent);--loader-width: var(--thinking-indicator-chip-spinner-size, 14px);--loader-height: var(--thinking-indicator-chip-spinner-size, 14px);--loader-before-width: 7px;--loader-before-height: 7px;--loader-after-width: 11px;--loader-after-height: 11px;--loader-background: var(--thinking-indicator-chip-background, #ffffff);}.chip-label.svelte-uzfrw6 {flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--thinking-indicator-chip-font-size, 0.85rem);font-weight:var(--thinking-indicator-chip-font-weight, 500);color:var(--thinking-indicator-chip-color, #52525b);background:var(\n --thinking-indicator-chip-shimmer-gradient,\n linear-gradient(90deg, #52525b 0%, #a0a0a0 50%, #52525b 100%)\n );background-size:200% 100%;background-clip:text;-webkit-text-fill-color:transparent;\n animation: svelte-uzfrw6-thinking-indicator-shimmer var(--thinking-indicator-chip-shimmer-duration, 2s) linear\n infinite;}\n\n /* Chip defaults to a static label (unlike the default/bare variants) since it\n mirrors ChatToolStatus, which never shimmered — pass `busy` explicitly to\n opt in. Higher specificity than the generic `.static-label` rule above, so\n it correctly overrides with the chip's own color token, not the default\n variant's. */.chip-label.static-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-chip-color, #52525b);}.arrow.svelte-uzfrw6 {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--thinking-indicator-arrow-size, 1rem);height:var(--thinking-indicator-arrow-size, 1rem);color:var(--thinking-indicator-arrow-color, #7a7a7a);transform:rotate(-90deg);transition:var(--thinking-indicator-arrow-transition, transform 0.2s ease-in-out);}.arrow.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:100%;height:100%;}.arrow.expanded.svelte-uzfrw6 {transform:rotate(0deg);}.detail.svelte-uzfrw6 {margin:0;padding-top:var(--thinking-indicator-detail-padding-top, 0.5rem);font-size:var(--thinking-indicator-detail-font-size, 0.875rem);line-height:var(--thinking-indicator-detail-line-height, 1.5);\n /* Resting text, not the shimmer highlight — needs its own readable default\n rather than reusing the shimmer's light sweep color. Matches\n --thinking-indicator-trace-prose-color, the same prose-at-rest ink used\n for the reasoning trace's paragraph rows. */color:var(--thinking-indicator-detail-color, #6b6b6b);text-align:left;}.elapsed.svelte-uzfrw6 {flex-shrink:0;font-variant-numeric:tabular-nums;color:var(--thinking-indicator-elapsed-color, #4b5563);font-size:var(--thinking-indicator-elapsed-font-size, 0.75rem);}\n\n /* ---- Trace body (rows?: ThinkingIndicatorTraceRow[]) ---- */\n\n /* Wrapper exists only to carry `inert` while the Accordion has it collapsed —\n no box of its own, so it can't disturb the detail/trace layout it wraps. */.thinking-indicator-body.svelte-uzfrw6 {display:contents;}.trace-query-wrap.svelte-uzfrw6 {display:inline-flex;margin:var(--thinking-indicator-trace-query-margin, 10px 0 0);--pill-width: auto;--pill-justify-content: flex-start;--pill-cursor: default;--pill-gap: 6px;--pill-background: var(--thinking-indicator-trace-query-background, #f1f1f1);--pill-color: var(--thinking-indicator-trace-query-color, #6b6b6b);--pill-border-radius: var(--thinking-indicator-trace-query-radius, 999px);--pill-padding: var(--thinking-indicator-trace-query-padding, 3px 11px);--pill-font-size: var(--thinking-indicator-trace-query-font-size, 0.8125rem);--pill-font-weight: 400;}.trace-query-wrap.svelte-uzfrw6 svg {width:11px;height:11px;}.trace-body.svelte-uzfrw6 {display:flex;gap:var(--thinking-indicator-trace-body-gap, 12px);padding-top:var(--thinking-indicator-trace-body-padding-top, 10px);}.trace-connector.svelte-uzfrw6 {width:2px;border-radius:999px;background:var(--thinking-indicator-trace-connector-color, #dcdcdc);margin-left:6px;flex-shrink:0;transition:height 500ms var(--thinking-indicator-trace-ease, cubic-bezier(0.23, 1, 0.32, 1));}.trace-rows.svelte-uzfrw6 {flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--thinking-indicator-trace-row-gap, 7px);align-self:flex-start;}.trace-row.svelte-uzfrw6 {display:flex;align-items:baseline;gap:8px;font-size:var(--thinking-indicator-trace-row-font-size, 0.8125rem);color:var(--thinking-indicator-trace-row-color, #2b2b2b);\n animation: svelte-uzfrw6-thinking-indicator-fade-up 320ms\n var(--thinking-indicator-trace-ease, cubic-bezier(0.23, 1, 0.32, 1)) both;text-decoration:none;}.trace-row.prose.svelte-uzfrw6 {color:var(--thinking-indicator-trace-prose-color, #6b6b6b);}.trace-row.selectable.svelte-uzfrw6 {border:none;background:none;font:inherit;text-align:left;padding:3px 6px;margin:-3px -6px;border-radius:var(--thinking-indicator-trace-row-radius, 6px);cursor:pointer;transition:background\n var(--thinking-indicator-trace-row-transition-duration, var(--motion-duration, 150ms))\n var(--thinking-indicator-trace-row-transition-easing, var(--motion-easing, ease));width:calc(100% + 12px);}.trace-row.selectable.svelte-uzfrw6:hover {background:var(--thinking-indicator-trace-row-hover-background, #f4f4f4);}.trace-row.selectable.selected.svelte-uzfrw6 {background:var(--thinking-indicator-trace-row-selected-background, #ececec);}.trace-row.linked.svelte-uzfrw6:hover .row-primary:where(.svelte-uzfrw6) {text-decoration:underline;}.row-primary.svelte-uzfrw6 {font-weight:var(--thinking-indicator-trace-row-weight, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.row-secondary.svelte-uzfrw6 {color:var(--thinking-indicator-trace-secondary-color, #4b5563);font-size:var(--thinking-indicator-trace-secondary-font-size, 0.75rem);white-space:nowrap;}.row-secondary.mono.svelte-uzfrw6 {font-family:var(--thinking-indicator-trace-mono-font, ui-monospace, Menlo, monospace);}\n\n /* Steps kind: a static check icon, or — on the frontier row while busy — the\n library Loader, recoloured/resized to match the row's small icon footprint. */.row-icon.svelte-uzfrw6 {display:inline-flex;align-self:center;width:14px;flex-shrink:0;color:var(--thinking-indicator-trace-icon-color, #9a9a9a);--loader-width: var(--thinking-indicator-trace-spinner-size, 11px);--loader-height: var(--thinking-indicator-trace-spinner-size, 11px);--loader-before-width: 5px;--loader-before-height: 5px;--loader-after-width: 8px;--loader-after-height: 8px;--loader-foreground: var(--thinking-indicator-trace-spinner-color, #6b6b6b);--loader-foreground-end: var(--thinking-indicator-trace-spinner-color-end, transparent);--loader-background: var(--thinking-indicator-trace-spinner-track-color, #dcdcdc);}.row-icon.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:12px;height:12px;}.row-badge.svelte-uzfrw6 {width:15px;height:15px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--thinking-indicator-trace-badge-check-color, #fff);flex-shrink:0;align-self:center;}.row-badge[data-tone='1'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-1, #2f6fec);}.row-badge[data-tone='2'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-2, #e56d24);}.row-badge[data-tone='3'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-3, #1f7a5f);}.row-badge.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:9px;height:9px;}.row-diffstat.svelte-uzfrw6 {margin-left:auto;font-family:var(--thinking-indicator-trace-mono-font, ui-monospace, Menlo, monospace);font-size:0.75rem;font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex;gap:5px;}.row-diffstat.svelte-uzfrw6 .added:where(.svelte-uzfrw6) {color:var(--thinking-indicator-trace-added-color, #1f7a5f);}.row-diffstat.svelte-uzfrw6 .removed:where(.svelte-uzfrw6) {color:var(--thinking-indicator-trace-removed-color, #c93f38);}.trace-more.svelte-uzfrw6 {font-size:var(--thinking-indicator-trace-more-font-size, 0.75rem);color:var(--thinking-indicator-trace-more-color, #9a9a9a);padding:6px 0 0 22px;\n animation: svelte-uzfrw6-thinking-indicator-fade-in\n var(--thinking-indicator-trace-more-animation-duration, var(--motion-duration, 300ms))\n var(--thinking-indicator-trace-more-animation-easing, var(--motion-easing, ease)) both;}\n\n @media (prefers-reduced-motion: reduce) {.status-label.svelte-uzfrw6,\n .chip-label.svelte-uzfrw6,\n .trace-row.svelte-uzfrw6,\n .trace-more.svelte-uzfrw6 {animation-duration:0.001s;}.expandable.svelte-uzfrw6,\n .trace-connector.svelte-uzfrw6,\n .arrow.svelte-uzfrw6 {transition-duration:0.001s;}.status-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-label-color, #858585);}.chip-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-chip-color, #52525b);}\n }"
|
|
52048
|
+
code: "\n @keyframes svelte-uzfrw6-thinking-indicator-shimmer {\n 0% {\n background-position: 200% 0;\n }\n\n 100% {\n background-position: -200% 0;\n }\n }\n\n @keyframes svelte-uzfrw6-thinking-indicator-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }\n\n @keyframes svelte-uzfrw6-thinking-indicator-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }.thinking-indicator.svelte-uzfrw6 {box-sizing:border-box;width:100%;}.expandable.svelte-uzfrw6 {border-bottom:var(--thinking-indicator-border-bottom, 1px solid #e4e4e7);padding-block:var(--thinking-indicator-padding-block, 0.5rem);margin-bottom:var(--thinking-indicator-margin-bottom, 1rem);min-height:0;transition:min-height 400ms\n var(--thinking-indicator-trace-ease, var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1)));}.expandable.busy.svelte-uzfrw6 {min-height:var(--thinking-indicator-trace-busy-min-height, 0px);}.toggle.svelte-uzfrw6 {width:100%;--button-color: transparent;--button-border: none;--button-box-shadow: none;--button-hover-box-shadow: none;--button-active-box-shadow: none;--button-width: 100%;--button-padding: 0;--button-justify-content: flex-start;--button-text-color: inherit;--button-content-gap: var(--thinking-indicator-header-gap, 0.375rem);}\n\n /* A flex ROW host makes the inner status-row hug its content, so the shimmer\n gradient maps to the text's own width rather than the full container. Neither\n form stretches to fill the width — a trailing gap after a short label is real\n empty space, not a reserved box, so nothing pushes the elapsed counter away. */.status-host.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-header-gap, 0.375rem);}.status-row.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-gap, 0.25rem);min-width:0;}.avatar.svelte-uzfrw6 {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--thinking-indicator-avatar-size, 1.5rem);height:var(--thinking-indicator-avatar-size, 1.5rem);--loader-width: var(--thinking-indicator-avatar-loader-size, 1rem);--loader-height: var(--thinking-indicator-avatar-loader-size, 1rem);}\n\n /* The chevron lives in the same flex cluster as the label so it hugs the text\n immediately, instead of drifting to the far edge of the toggle button. */.label-cluster.svelte-uzfrw6 {display:flex;align-items:center;gap:var(--thinking-indicator-arrow-gap, 0.125rem);min-width:0;}.status-label.svelte-uzfrw6 {flex:0 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left;font-size:var(--thinking-indicator-font-size, 0.75rem);line-height:var(--thinking-indicator-line-height, 1.25rem);color:var(--thinking-indicator-label-color, #858585);background:var(\n --thinking-indicator-shimmer-gradient,\n linear-gradient(90deg, #858585 0%, #bebebe 50%, #858585 100%)\n );background-size:200% 100%;background-clip:text;-webkit-text-fill-color:transparent;\n animation: svelte-uzfrw6-thinking-indicator-shimmer var(--thinking-indicator-shimmer-duration, 2s) linear\n infinite;}\n\n /* A settled label (no live busy phase) holds still instead of shimmering. */.static-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-label-color, #858585);}\n\n /* ---- chip variant: a self-contained floating pill (no ancestor supplies\n background/layout, unlike bare) — deliberately not `width: 100%`/box-sizing\n from `.thinking-indicator`, since a pill hugs its content. */.thinking-indicator-chip.svelte-uzfrw6 {box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--thinking-indicator-chip-gap, 8px);width:fit-content;padding:var(--thinking-indicator-chip-padding, 8px 14px);background:var(--thinking-indicator-chip-background, #ffffff);border:var(--thinking-indicator-chip-border, 1px solid #e4e4e7);border-radius:var(--thinking-indicator-chip-border-radius, 999px);box-shadow:var(--thinking-indicator-chip-box-shadow, 0 6px 20px rgba(0, 0, 0, 0.08));max-width:var(--thinking-indicator-chip-max-width, 100%);}.chip-icon.svelte-uzfrw6 {display:inline-flex;align-items:center;flex-shrink:0;color:var(--thinking-indicator-chip-icon-color, currentColor);--loader-foreground: var(--thinking-indicator-chip-spinner-color, currentColor);--loader-foreground-end: var(--thinking-indicator-chip-spinner-color-end, transparent);--loader-width: var(--thinking-indicator-chip-spinner-size, 14px);--loader-height: var(--thinking-indicator-chip-spinner-size, 14px);--loader-before-width: 7px;--loader-before-height: 7px;--loader-after-width: 11px;--loader-after-height: 11px;--loader-background: var(--thinking-indicator-chip-background, #ffffff);}.chip-label.svelte-uzfrw6 {flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--thinking-indicator-chip-font-size, 0.85rem);font-weight:var(--thinking-indicator-chip-font-weight, 500);color:var(--thinking-indicator-chip-color, #52525b);background:var(\n --thinking-indicator-chip-shimmer-gradient,\n linear-gradient(90deg, #52525b 0%, #a0a0a0 50%, #52525b 100%)\n );background-size:200% 100%;background-clip:text;-webkit-text-fill-color:transparent;\n animation: svelte-uzfrw6-thinking-indicator-shimmer var(--thinking-indicator-chip-shimmer-duration, 2s) linear\n infinite;}\n\n /* Chip defaults to a static label (unlike the default/bare variants) since it\n mirrors ChatToolStatus, which never shimmered — pass `busy` explicitly to\n opt in. Higher specificity than the generic `.static-label` rule above, so\n it correctly overrides with the chip's own color token, not the default\n variant's. */.chip-label.static-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-chip-color, #52525b);}.arrow.svelte-uzfrw6 {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--thinking-indicator-arrow-size, 1rem);height:var(--thinking-indicator-arrow-size, 1rem);color:var(--thinking-indicator-arrow-color, #7a7a7a);transform:rotate(-90deg);transition:var(--thinking-indicator-arrow-transition, transform 0.2s ease-in-out);}.arrow.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:100%;height:100%;}.arrow.expanded.svelte-uzfrw6 {transform:rotate(0deg);}.detail.svelte-uzfrw6 {margin:0;padding-top:var(--thinking-indicator-detail-padding-top, 0.5rem);font-size:var(--thinking-indicator-detail-font-size, 0.875rem);line-height:var(--thinking-indicator-detail-line-height, 1.5);\n /* Resting text, not the shimmer highlight — needs its own readable default\n rather than reusing the shimmer's light sweep color. Matches\n --thinking-indicator-trace-prose-color, the same prose-at-rest ink used\n for the reasoning trace's paragraph rows. */color:var(--thinking-indicator-detail-color, #6b6b6b);text-align:left;}.elapsed.svelte-uzfrw6 {flex-shrink:0;font-variant-numeric:tabular-nums;color:var(--thinking-indicator-elapsed-color, #4b5563);font-size:var(--thinking-indicator-elapsed-font-size, 0.75rem);}\n\n /* ---- Trace body (rows?: ThinkingIndicatorTraceRow[]) ---- */\n\n /* Wrapper exists only to carry `inert` while the Accordion has it collapsed —\n no box of its own, so it can't disturb the detail/trace layout it wraps. */.thinking-indicator-body.svelte-uzfrw6 {display:contents;}.trace-query-wrap.svelte-uzfrw6 {display:inline-flex;margin:var(--thinking-indicator-trace-query-margin, 10px 0 0);--pill-width: auto;--pill-justify-content: flex-start;--pill-cursor: default;--pill-gap: 6px;--pill-background: var(--thinking-indicator-trace-query-background, #f1f1f1);--pill-color: var(--thinking-indicator-trace-query-color, #6b6b6b);--pill-border-radius: var(--thinking-indicator-trace-query-radius, 999px);--pill-padding: var(--thinking-indicator-trace-query-padding, 3px 11px);--pill-font-size: var(--thinking-indicator-trace-query-font-size, 0.8125rem);--pill-font-weight: 400;}.trace-query-wrap.svelte-uzfrw6 svg {width:11px;height:11px;}.trace-body.svelte-uzfrw6 {display:flex;gap:var(--thinking-indicator-trace-body-gap, 12px);padding-top:var(--thinking-indicator-trace-body-padding-top, 10px);}.trace-connector.svelte-uzfrw6 {width:2px;border-radius:999px;background:var(--thinking-indicator-trace-connector-color, #dcdcdc);margin-left:6px;flex-shrink:0;transition:height 500ms\n var(--thinking-indicator-trace-ease, var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1)));}.trace-rows.svelte-uzfrw6 {flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--thinking-indicator-trace-row-gap, 7px);align-self:flex-start;}.trace-row.svelte-uzfrw6 {display:flex;align-items:baseline;gap:8px;font-size:var(--thinking-indicator-trace-row-font-size, 0.8125rem);color:var(--thinking-indicator-trace-row-color, #2b2b2b);\n animation: svelte-uzfrw6-thinking-indicator-fade-up 320ms\n var(--thinking-indicator-trace-ease, var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1)))\n both;text-decoration:none;}.trace-row.prose.svelte-uzfrw6 {color:var(--thinking-indicator-trace-prose-color, #6b6b6b);}.trace-row.selectable.svelte-uzfrw6 {border:none;background:none;font:inherit;text-align:left;padding:3px 6px;margin:-3px -6px;border-radius:var(--thinking-indicator-trace-row-radius, 6px);cursor:pointer;transition:background\n var(--thinking-indicator-trace-row-transition-duration, var(--motion-duration, 150ms))\n var(--thinking-indicator-trace-row-transition-easing, var(--motion-easing, ease));width:calc(100% + 12px);}.trace-row.selectable.svelte-uzfrw6:hover {background:var(--thinking-indicator-trace-row-hover-background, #f4f4f4);}.trace-row.selectable.selected.svelte-uzfrw6 {background:var(--thinking-indicator-trace-row-selected-background, #ececec);}.trace-row.linked.svelte-uzfrw6:hover .row-primary:where(.svelte-uzfrw6) {text-decoration:underline;}.row-primary.svelte-uzfrw6 {font-weight:var(--thinking-indicator-trace-row-weight, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.row-secondary.svelte-uzfrw6 {color:var(--thinking-indicator-trace-secondary-color, #4b5563);font-size:var(--thinking-indicator-trace-secondary-font-size, 0.75rem);white-space:nowrap;}.row-secondary.mono.svelte-uzfrw6 {font-family:var(--thinking-indicator-trace-mono-font, ui-monospace, Menlo, monospace);}\n\n /* Steps kind: a static check icon, or — on the frontier row while busy — the\n library Loader, recoloured/resized to match the row's small icon footprint. */.row-icon.svelte-uzfrw6 {display:inline-flex;align-self:center;width:14px;flex-shrink:0;color:var(--thinking-indicator-trace-icon-color, #9a9a9a);--loader-width: var(--thinking-indicator-trace-spinner-size, 11px);--loader-height: var(--thinking-indicator-trace-spinner-size, 11px);--loader-before-width: 5px;--loader-before-height: 5px;--loader-after-width: 8px;--loader-after-height: 8px;--loader-foreground: var(--thinking-indicator-trace-spinner-color, #6b6b6b);--loader-foreground-end: var(--thinking-indicator-trace-spinner-color-end, transparent);--loader-background: var(--thinking-indicator-trace-spinner-track-color, #dcdcdc);}.row-icon.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:12px;height:12px;}.row-badge.svelte-uzfrw6 {width:15px;height:15px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--thinking-indicator-trace-badge-check-color, #fff);flex-shrink:0;align-self:center;}.row-badge[data-tone='1'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-1, #2f6fec);}.row-badge[data-tone='2'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-2, #e56d24);}.row-badge[data-tone='3'].svelte-uzfrw6 {background:var(--thinking-indicator-trace-tone-3, #1f7a5f);}.row-badge.svelte-uzfrw6 svg:where(.svelte-uzfrw6) {width:9px;height:9px;}.row-diffstat.svelte-uzfrw6 {margin-left:auto;font-family:var(--thinking-indicator-trace-mono-font, ui-monospace, Menlo, monospace);font-size:0.75rem;font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex;gap:5px;}.row-diffstat.svelte-uzfrw6 .added:where(.svelte-uzfrw6) {color:var(--thinking-indicator-trace-added-color, #1f7a5f);}.row-diffstat.svelte-uzfrw6 .removed:where(.svelte-uzfrw6) {color:var(--thinking-indicator-trace-removed-color, #c93f38);}.trace-more.svelte-uzfrw6 {font-size:var(--thinking-indicator-trace-more-font-size, 0.75rem);color:var(--thinking-indicator-trace-more-color, #9a9a9a);padding:6px 0 0 22px;\n animation: svelte-uzfrw6-thinking-indicator-fade-in\n var(--thinking-indicator-trace-more-animation-duration, var(--motion-duration, 300ms))\n var(--thinking-indicator-trace-more-animation-easing, var(--motion-easing, ease)) both;}\n\n @media (prefers-reduced-motion: reduce) {.status-label.svelte-uzfrw6,\n .chip-label.svelte-uzfrw6,\n .trace-row.svelte-uzfrw6,\n .trace-more.svelte-uzfrw6 {animation-duration:0.001s;}.expandable.svelte-uzfrw6,\n .trace-connector.svelte-uzfrw6,\n .arrow.svelte-uzfrw6 {transition-duration:0.001s;}.status-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-label-color, #858585);}.chip-label.svelte-uzfrw6 {\n animation: none;-webkit-text-fill-color:var(--thinking-indicator-chip-color, #52525b);}\n }"
|
|
51849
52049
|
};
|
|
51850
52050
|
function ThinkingIndicator(e, t) {
|
|
51851
52051
|
push(t, !0), append_styles$1(e, $$css$30);
|
|
@@ -54164,7 +54364,7 @@ customElements.define("sui-chat-tool-status", create_custom_element(ChatToolStat
|
|
|
54164
54364
|
//#region src/lib/assets/chat.svg?raw
|
|
54165
54365
|
var chat_default = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\" />\n</svg>\n", root_1$6 = /* @__PURE__ */ from_html("<div class=\"panel svelte-15b7gm8\" role=\"dialog\" tabindex=\"-1\"><!></div>"), root_2$4 = /* @__PURE__ */ from_html("<div class=\"panel-anchor svelte-15b7gm8\"><!></div>"), root_3$4 = /* @__PURE__ */ from_html("<div><!> <div class=\"launcher svelte-15b7gm8\"><!></div></div>"), $$css$18 = {
|
|
54166
54366
|
hash: "svelte-15b7gm8",
|
|
54167
|
-
code: ".chat-bubble.svelte-15b7gm8 {position:fixed;z-index:var(--chat-bubble-z-index, 1000);transition:var(--chat-bubble-snap-transition
|
|
54367
|
+
code: ".chat-bubble.svelte-15b7gm8 {position:fixed;z-index:var(--chat-bubble-z-index, 1000);transition:var(\n --chat-bubble-snap-transition,\n transform 0.28s\n var(\n --chat-bubble-snap-transition-easing,\n var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1))\n )\n );}.chat-bubble.dragging.svelte-15b7gm8 {transition:none;}.chat-bubble[data-position='bottom-right'].svelte-15b7gm8 {right:var(--chat-bubble-offset-x, 24px);bottom:var(--chat-bubble-offset-y, 24px);}.chat-bubble[data-position='bottom-left'].svelte-15b7gm8 {left:var(--chat-bubble-offset-x, 24px);bottom:var(--chat-bubble-offset-y, 24px);}.chat-bubble[data-position='top-right'].svelte-15b7gm8 {right:var(--chat-bubble-offset-x, 24px);top:var(--chat-bubble-offset-y, 24px);}.chat-bubble[data-position='top-left'].svelte-15b7gm8 {left:var(--chat-bubble-offset-x, 24px);top:var(--chat-bubble-offset-y, 24px);}.panel-anchor.svelte-15b7gm8 {position:absolute;--resizable-handle-color: var(--chat-bubble-resize-handle-color, transparent);--resizable-transition: var(\n --chat-bubble-expand-transition,\n width 0.32s\n var(\n --chat-bubble-expand-transition-easing,\n var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1))\n ),\n height 0.32s\n var(\n --chat-bubble-expand-transition-easing,\n var(--ease-smooth-out, cubic-bezier(0.23, 1, 0.32, 1))\n )\n );}.chat-bubble[data-effective-vertical='bottom'].svelte-15b7gm8 .panel-anchor:where(.svelte-15b7gm8) {bottom:calc(100% + var(--chat-bubble-panel-gap, 16px));}.chat-bubble[data-effective-vertical='top'].svelte-15b7gm8 .panel-anchor:where(.svelte-15b7gm8) {top:calc(100% + var(--chat-bubble-panel-gap, 16px));}.chat-bubble[data-effective-side='right'].svelte-15b7gm8 .panel-anchor:where(.svelte-15b7gm8) {right:0;}.chat-bubble[data-effective-side='left'].svelte-15b7gm8 .panel-anchor:where(.svelte-15b7gm8) {left:0;}.panel.svelte-15b7gm8 {box-sizing:border-box;width:100%;height:100%;max-width:var(--chat-bubble-panel-max-width, calc(100vw - 32px));max-height:var(--chat-bubble-panel-max-height, calc(100dvh - 120px));border-radius:var(--chat-bubble-panel-border-radius, 16px);overflow:hidden;background:var(--chat-bubble-panel-background, #ffffff);box-shadow:var(--chat-bubble-panel-box-shadow, 0 16px 48px rgba(0, 0, 0, 0.22));outline:none;}\n\n /* setOpen() (see script) calls panel.focus() directly on open, and the panel\n -- not a child -- is the Tab-trap's own boundary, so removing its outline\n unconditionally left a keyboard user with no visible sign focus had moved\n into the launcher's panel at all. :focus-visible restores a ring only for\n keyboard/programmatic focus, so the launcher click that opens the panel\n shows nothing new. Matches Sheet's sheet-panel fix for the identical\n shape of problem. */.panel.svelte-15b7gm8:focus-visible {outline:var(--chat-bubble-panel-focus-outline, 2px solid #2563eb);outline-offset:var(--chat-bubble-panel-focus-outline-offset, -2px);}.launcher.svelte-15b7gm8 {--button-width: var(--chat-bubble-width, var(--chat-bubble-size, 56px));--button-height: var(--chat-bubble-height, var(--chat-bubble-size, 56px));--button-padding: var(--chat-bubble-padding, 16px);--button-border-radius: var(--chat-bubble-border-radius, 50%);--button-color: var(--chat-bubble-background-color, #18181b);--button-text-color: var(--chat-bubble-color, #ffffff);\n /* Button spaces its icon from its label with this gap. The launcher renders an\n icon alone inside a circle, so that gap would push the glyph off-centre --\n reset to 0 here rather than in Button, whose default is right for a labelled\n button. docs/ChatBubble.md records this as a pill-launcher caveat. */--button-content-gap: 0px;--button-box-shadow: var(--chat-bubble-box-shadow, 0 8px 24px rgba(0, 0, 0, 0.25));--button-hover-color: var(--chat-bubble-hover-background-color, #27272a);}.chat-bubble.is-draggable.svelte-15b7gm8 .launcher:where(.svelte-15b7gm8) {--cursor: grab;touch-action:none;}.chat-bubble.is-draggable.dragging.svelte-15b7gm8 .launcher:where(.svelte-15b7gm8) {--cursor: grabbing;}.launcher.svelte-15b7gm8 svg {height:100%;width:100%;}\n\n @media (prefers-reduced-motion: reduce) {.chat-bubble.svelte-15b7gm8 {transition:none;}\n }"
|
|
54168
54368
|
};
|
|
54169
54369
|
function ChatBubble(e, t) {
|
|
54170
54370
|
push(t, !0), append_styles$1(e, $$css$18);
|
|
@@ -54703,7 +54903,7 @@ var diffstatBadges = (e, t = noop) => {
|
|
|
54703
54903
|
}), append(e, n);
|
|
54704
54904
|
}, root_1$5 = /* @__PURE__ */ from_html("<span class=\"diffstat-pill diffstat-added svelte-1vnfzde\"><!></span>"), root_2$3 = /* @__PURE__ */ from_html("<span class=\"diffstat-pill diffstat-removed svelte-1vnfzde\"><!></span>"), root_3$3 = /* @__PURE__ */ from_html("<!> <!>", 1), root_4$3 = /* @__PURE__ */ from_html("<span class=\"chip-spinner svelte-1vnfzde\" aria-hidden=\"true\"><!></span>"), root_5$2 = /* @__PURE__ */ from_html("<span> </span>"), root_6$2 = /* @__PURE__ */ from_html("<span class=\"diffstat chip-diffstat svelte-1vnfzde\"><!></span>"), root_7$2 = /* @__PURE__ */ from_html("<span class=\"diffstat popover-diffstat svelte-1vnfzde\"><!></span>"), root_8$2 = /* @__PURE__ */ from_html("<div class=\"chip-popover svelte-1vnfzde\" role=\"dialog\" tabindex=\"-1\"><p> </p> <!></div>"), root_9$1 = /* @__PURE__ */ from_html("<div class=\"chip-wrap\"><button type=\"button\"><!> <b class=\"chip-label svelte-1vnfzde\"> </b> <!> <!></button> <!></div>"), root_10$1 = /* @__PURE__ */ from_html("<div></div>"), $$css$16 = {
|
|
54705
54905
|
hash: "svelte-1vnfzde",
|
|
54706
|
-
code: "\n @keyframes svelte-1vnfzde-tool-call-log-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }.tool-call-log.svelte-1vnfzde {display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--tool-call-log-gap, 8px);}\n\n /* Bespoke <button> markup (Pill's root is a non-interactive <div> and can't carry\n aria-expanded/button semantics — see docs), but its sizing recipe is deliberately\n pulled from Pill's own tokens (line-height, cursor) so it reads as the same family\n of control as the diffstat Pill badges nested inside it. */.chip.svelte-1vnfzde {display:inline-flex;align-items:center;gap:var(--tool-call-log-chip-gap, 6px);padding:var(--tool-call-log-chip-padding, 6px 10px);background:var(--tool-call-log-chip-background, #fafafa);border:var(--tool-call-log-chip-border, 1px solid #e4e4e7);border-radius:var(--tool-call-log-chip-radius, 6px);font:inherit;font-size:var(--tool-call-log-font-size, 0.8125rem);line-height:var(--tool-call-log-chip-line-height, 1);color:var(--tool-call-log-label-color, #2b2b2b);cursor:var(--tool-call-log-chip-cursor, pointer);max-width:100%;\n animation: svelte-1vnfzde-tool-call-log-fade-up\n var(--tool-call-log-chip-animation-duration, var(--motion-duration, 320ms))\n var(--tool-call-log-ease, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))
|
|
54906
|
+
code: "\n @keyframes svelte-1vnfzde-tool-call-log-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }.tool-call-log.svelte-1vnfzde {display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--tool-call-log-gap, 8px);}\n\n /* Bespoke <button> markup (Pill's root is a non-interactive <div> and can't carry\n aria-expanded/button semantics — see docs), but its sizing recipe is deliberately\n pulled from Pill's own tokens (line-height, cursor) so it reads as the same family\n of control as the diffstat Pill badges nested inside it. */.chip.svelte-1vnfzde {display:inline-flex;align-items:center;gap:var(--tool-call-log-chip-gap, 6px);padding:var(--tool-call-log-chip-padding, 6px 10px);background:var(--tool-call-log-chip-background, #fafafa);border:var(--tool-call-log-chip-border, 1px solid #e4e4e7);border-radius:var(--tool-call-log-chip-radius, 6px);font:inherit;font-size:var(--tool-call-log-font-size, 0.8125rem);line-height:var(--tool-call-log-chip-line-height, 1);color:var(--tool-call-log-label-color, #2b2b2b);cursor:var(--tool-call-log-chip-cursor, pointer);max-width:100%;\n animation: svelte-1vnfzde-tool-call-log-fade-up\n var(--tool-call-log-chip-animation-duration, var(--motion-duration, 320ms))\n var(\n --tool-call-log-ease,\n var(--ease-smooth-out, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))\n )\n both;transition:background var(--tool-call-log-chip-transition-duration, var(--motion-duration, 150ms))\n var(--tool-call-log-chip-transition-easing, var(--motion-easing, ease)),\n border-color var(--tool-call-log-chip-transition-duration, var(--motion-duration, 150ms))\n var(--tool-call-log-chip-transition-easing, var(--motion-easing, ease));}.chip.svelte-1vnfzde:hover {background:var(--tool-call-log-chip-hover-background, #f1f1f1);}.chip[aria-expanded='true'].svelte-1vnfzde {border-color:var(--tool-call-log-chip-open-border-color, #c7c7cc);}.chip.error.svelte-1vnfzde {color:var(--tool-call-log-error-color, #9f2d27);border-color:var(--tool-call-log-error-border-color, #f2b8b5);background:var(--tool-call-log-error-background, #fdf1f0);}.chip.error.svelte-1vnfzde:hover {background:var(--tool-call-log-error-hover-background, #fbe6e5);}.chip-label.svelte-1vnfzde {font-weight:var(--tool-call-log-label-weight, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.chip-meta.svelte-1vnfzde {color:var(--tool-call-log-meta-color, #666666);font-size:var(--tool-call-log-meta-font-size, 0.75rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.chip-meta.mono.svelte-1vnfzde {font-family:var(--tool-call-log-mono-font, ui-monospace, Menlo, monospace);}\n\n /* Sizes and colors the nested library Loader via CSS custom-property\n inheritance (no :global() needed — Loader is a plain DOM descendant of\n this span, same pattern as ThinkingIndicator's `.avatar`). Loader itself\n ships no literal fallback for --loader-foreground/-foreground-end/\n -background, so all three are set explicitly here rather than left to\n chance. */.chip-spinner.svelte-1vnfzde {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;--loader-width: var(--tool-call-log-spinner-size, 11px);--loader-height: var(--tool-call-log-spinner-size, 11px);--loader-before-width: 5px;--loader-before-height: 5px;--loader-after-width: 8px;--loader-after-height: 8px;--loader-foreground: var(--tool-call-log-spinner-color, #6b6b6b);--loader-foreground-end: var(--tool-call-log-spinner-track-color, #dcdcdc);--loader-background: var(--tool-call-log-chip-background, #fafafa);}.diffstat.svelte-1vnfzde {display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums;flex-shrink:0;}.chip-diffstat.svelte-1vnfzde {margin-left:var(--tool-call-log-diffstat-margin, 2px);}\n\n /* Pill customized into the small diffstat badge via its own --pill-* tokens\n (inherited the same way — Pill is a plain descendant of this span). Pill\n defaults `cursor` to `pointer` even when non-interactive, so it is pinned\n back to `default` here: these badges carry no onclick. */.diffstat-pill.svelte-1vnfzde {display:inline-flex;--pill-padding: var(--tool-call-log-diffstat-padding, 0 4px);--pill-border-radius: var(--tool-call-log-diffstat-radius, 4px);--pill-font-size: var(--tool-call-log-diffstat-font-size, 0.6875rem);--pill-font-family: var(--tool-call-log-mono-font, ui-monospace, Menlo, monospace);--pill-line-height: 1;--pill-cursor: default;}.diffstat-added.svelte-1vnfzde {--pill-background: var(--tool-call-log-added-background, #e4f5ee);--pill-color: var(--tool-call-log-added-color, #1f7a5f);}.diffstat-removed.svelte-1vnfzde {--pill-background: var(--tool-call-log-removed-background, #fbeceb);--pill-color: var(--tool-call-log-removed-color, #a8302a);}\n\n /* `position: fixed` is the baseline rather than a portal-only override —\n left/top/z-index come from the inline `popoverStyle`, computed against the\n live anchor rect, and that is viewport-relative in both portal modes. So\n `usePortal={false}` (see `popoverPortal`) changes only which ancestors can\n clip the popover, never how it is placed. */.chip-popover.svelte-1vnfzde {position:fixed;z-index:var(--tool-call-log-popover-z-index, 1000);display:flex;flex-direction:column;gap:var(--tool-call-log-popover-gap, 6px);min-width:var(--tool-call-log-popover-min-width, 220px);max-width:var(--tool-call-log-popover-max-width, 340px);padding:var(--tool-call-log-popover-padding, 10px 12px);background:var(--tool-call-log-popover-background, #ffffff);border:var(--tool-call-log-popover-border, 1px solid #e4e4e7);border-radius:var(--tool-call-log-popover-radius, 10px);box-shadow:var(--tool-call-log-popover-shadow, 0 10px 30px rgba(0, 0, 0, 0.12));\n animation: svelte-1vnfzde-tool-call-log-fade-up\n var(--tool-call-log-popover-animation-duration, var(--motion-duration, 200ms))\n var(\n --tool-call-log-ease,\n var(--ease-smooth-out, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))\n )\n both;}.popover-detail.svelte-1vnfzde {margin:0;color:var(--tool-call-log-popover-color, #2b2b2b);font-size:var(--tool-call-log-popover-font-size, 0.8125rem);white-space:pre-wrap;overflow-wrap:anywhere;}.popover-detail.mono.svelte-1vnfzde {font-family:var(--tool-call-log-mono-font, ui-monospace, Menlo, monospace);}\n\n @media (prefers-reduced-motion: reduce) {.chip.svelte-1vnfzde,\n .chip-popover.svelte-1vnfzde {animation-duration:0.001s;}\n /* Loader's own spin keyframe lives on its internally-scoped `.loader`\n class, which this file cannot reach with a plain scoped selector —\n :global() is required to disable it, same pattern as `.pill-dismiss\n :global(svg)` elsewhere in the library. Loader ships no\n reduced-motion guard of its own. */.chip-spinner.svelte-1vnfzde .loader {\n animation: none;}\n }"
|
|
54707
54907
|
};
|
|
54708
54908
|
function ToolCallLog(e, t) {
|
|
54709
54909
|
push(t, !0), append_styles$1(e, $$css$16);
|
|
@@ -54895,7 +55095,7 @@ customElements.define("sui-tool-call-log", create_custom_element(ToolCallLog_wc,
|
|
|
54895
55095
|
//#region src/lib/TaskList/TaskList.svelte
|
|
54896
55096
|
var root$5 = /* @__PURE__ */ from_html("<span class=\"glyph-dot svelte-1te9fae\"></span>"), root_1$4 = /* @__PURE__ */ from_html("<span class=\"glyph-spinner svelte-1te9fae\"><!></span>"), root_2$2 = /* @__PURE__ */ from_html("<span class=\"glyph-check svelte-1te9fae\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-1te9fae\"><path d=\"M20 6 9 17l-5-5\"></path></svg></span>"), root_3$2 = /* @__PURE__ */ from_html("<span class=\"glyph-x svelte-1te9fae\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-1te9fae\"><path d=\"M6 6l12 12M18 6 6 18\"></path></svg></span>"), root_4$2 = /* @__PURE__ */ from_html("<span class=\"glyph-inner svelte-1te9fae\" aria-hidden=\"true\"><!></span>"), root_5$1 = /* @__PURE__ */ from_html("<span> </span>"), root_6$1 = /* @__PURE__ */ from_html("<div class=\"row-retry svelte-1te9fae\"><!></div>"), root_7$1 = /* @__PURE__ */ from_html("<div><span class=\"row-glyph svelte-1te9fae\"><!></span> <span class=\"row-text svelte-1te9fae\"><span class=\"row-label svelte-1te9fae\"> </span> <!></span> <!></div>"), root_8$1 = /* @__PURE__ */ from_html("<div></div>"), $$css$14 = {
|
|
54897
55097
|
hash: "svelte-1te9fae",
|
|
54898
|
-
code: "\n @keyframes svelte-1te9fae-task-list-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }\n @keyframes svelte-1te9fae-task-list-glyph-fade {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n @keyframes svelte-1te9fae-task-list-check-pop {\n from {\n opacity: 0;\n transform: scale(0.5);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }.task-list.svelte-1te9fae {display:flex;flex-direction:column;gap:var(--task-list-row-gap, 10px);}.task-row.svelte-1te9fae {display:flex;align-items:baseline;gap:var(--task-list-row-inline-gap, 10px);\n /* --task-list-ease was an easing-only token (DESIGN_PRINCIPLES.md motion\n convention) — kept working unchanged, now paired with a duration token\n and both fall back through the library-wide --motion-* tokens. */\n animation: svelte-1te9fae-task-list-fade-up\n var(--task-list-row-animation-duration, var(--motion-duration, 320ms))\n var(--task-list-ease, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))
|
|
55098
|
+
code: "\n @keyframes svelte-1te9fae-task-list-fade-up {\n from {\n opacity: 0;\n transform: translateY(9px);\n }\n to {\n opacity: 1;\n transform: none;\n }\n }\n @keyframes svelte-1te9fae-task-list-glyph-fade {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n @keyframes svelte-1te9fae-task-list-check-pop {\n from {\n opacity: 0;\n transform: scale(0.5);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }.task-list.svelte-1te9fae {display:flex;flex-direction:column;gap:var(--task-list-row-gap, 10px);}.task-row.svelte-1te9fae {display:flex;align-items:baseline;gap:var(--task-list-row-inline-gap, 10px);\n /* --task-list-ease was an easing-only token (DESIGN_PRINCIPLES.md motion\n convention) — kept working unchanged, now paired with a duration token\n and both fall back through the library-wide --motion-* tokens. */\n animation: svelte-1te9fae-task-list-fade-up\n var(--task-list-row-animation-duration, var(--motion-duration, 320ms))\n var(\n --task-list-ease,\n var(--ease-smooth-out, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))\n )\n both;}.row-glyph.svelte-1te9fae {display:inline-flex;align-self:center;align-items:center;justify-content:center;width:var(--task-list-glyph-size, 16px);height:var(--task-list-glyph-size, 16px);flex-shrink:0;}.glyph-inner.svelte-1te9fae {display:inline-flex;align-items:center;justify-content:center;\n animation: svelte-1te9fae-task-list-glyph-fade\n var(--task-list-glyph-animation-duration, var(--motion-duration, 150ms))\n var(--task-list-glyph-animation-easing, var(--motion-easing, ease)) both;}.glyph-dot.svelte-1te9fae {width:6px;height:6px;border-radius:50%;background:var(--task-list-dot-color, #9a9a9a);}\n\n /* Loader draws its own ring via a rotating gradient rather than a bordered arc, so the old\n track/spinner two-tone maps onto the gradient's start/end stops: --loader-foreground is the\n bright leading edge, --loader-foreground-end the dimmer trailing one. The size vars are\n calc()'d off a single token so before/after stay proportional if a consumer overrides it. */.glyph-spinner.svelte-1te9fae {display:inline-flex;--loader-foreground: var(--task-list-spinner-color, #6b6b6b);--loader-foreground-end: var(--task-list-spinner-track-color, #dcdcdc);--loader-width: var(--task-list-spinner-size, 11px);--loader-height: var(--task-list-spinner-size, 11px);--loader-before-width: calc(var(--task-list-spinner-size, 11px) * 0.5);--loader-before-height: calc(var(--task-list-spinner-size, 11px) * 0.5);--loader-after-width: calc(var(--task-list-spinner-size, 11px) * 0.75);--loader-after-height: calc(var(--task-list-spinner-size, 11px) * 0.75);}.glyph-check.svelte-1te9fae,\n .glyph-x.svelte-1te9fae {display:inline-flex;}.glyph-check.svelte-1te9fae svg:where(.svelte-1te9fae),\n .glyph-x.svelte-1te9fae svg:where(.svelte-1te9fae) {width:12px;height:12px;}.glyph-check.svelte-1te9fae {color:var(--task-list-done-color, #6b6b6b);\n animation: svelte-1te9fae-task-list-check-pop\n var(--task-list-check-pop-animation-duration, var(--motion-duration, 200ms))\n var(\n --task-list-ease,\n var(--ease-smooth-out, var(--motion-easing, cubic-bezier(0.23, 1, 0.32, 1)))\n )\n both;}.glyph-x.svelte-1te9fae {color:var(--task-list-error-color, #c93f38);}.row-text.svelte-1te9fae {flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--task-list-text-gap, 8px);}.task-row.pending.svelte-1te9fae .row-text:where(.svelte-1te9fae) {opacity:var(--task-list-pending-opacity, 0.85);}.row-label.svelte-1te9fae {font-size:var(--task-list-row-font-size, 0.875rem);font-weight:var(--task-list-row-weight, 500);color:var(--task-list-row-color, #2b2b2b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.row-secondary.svelte-1te9fae {font-size:var(--task-list-secondary-font-size, 0.75rem);color:var(--task-list-secondary-color, #555b65);white-space:nowrap;}.row-secondary.mono.svelte-1te9fae {font-family:var(--task-list-mono-font, ui-monospace, Menlo, monospace);}\n\n /* Themes the embedded Button into the compact error-tinted pill via its own custom\n properties — these inherit down into Button's internal rules regardless of the\n component boundary, the same wrapper-div pattern Banner uses for its dismiss button. */.row-retry.svelte-1te9fae {margin-left:auto;flex-shrink:0;align-self:center;--button-color: var(--task-list-retry-background, rgba(201, 63, 56, 0.12));--button-text-color: var(--task-list-retry-color, #c93f38);--button-hover-color: var(--task-list-retry-hover-background, rgba(201, 63, 56, 0.2));--button-hover-text-color: var(--task-list-retry-color, #c93f38);--button-border: none;--button-padding: var(--task-list-retry-padding, 3px 10px);--button-border-radius: var(--task-list-retry-radius, 999px);--button-font-size: var(--task-list-retry-font-size, 0.75rem);--button-font-weight: var(--task-list-retry-weight, 600);--button-transition: background 150ms ease;}\n\n @media (prefers-reduced-motion: reduce) {.task-row.svelte-1te9fae,\n .glyph-inner.svelte-1te9fae,\n .glyph-check.svelte-1te9fae {animation-duration:0.001s;}\n /* Loader's spin lives on its own internally-scoped element, reached here via :global()\n scoped to a descendant of our local .glyph-spinner wrapper — the 3-class specificity\n that produces reliably beats Loader's own 2-class rule regardless of stylesheet order. */.glyph-spinner.svelte-1te9fae .loader {\n animation: none;\n -webkit-animation: none;}\n }"
|
|
54899
55099
|
};
|
|
54900
55100
|
function TaskList(e, t) {
|
|
54901
55101
|
push(t, !0), append_styles$1(e, $$css$14);
|
|
@@ -56087,7 +56287,7 @@ customElements.define("sui-aspect-ratio", create_custom_element(AspectRatio_wc,
|
|
|
56087
56287
|
//#region src/lib/assets/star.svg?raw
|
|
56088
56288
|
var star_default = "<svg viewBox=\"0 0 24 24\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z\"\n ></path>\n</svg>\n", root_1 = /* @__PURE__ */ from_html("<span class=\"star-fill svelte-1c91y9i\"></span>"), root_2 = /* @__PURE__ */ from_html("<span class=\"star-empty svelte-1c91y9i\"></span> <!>", 1), root_3 = /* @__PURE__ */ from_html("<span class=\"star svelte-1c91y9i\" aria-hidden=\"true\"><!></span>"), root_4 = /* @__PURE__ */ from_html("<div role=\"slider\"><!> <input type=\"number\" class=\"native-input svelte-1c91y9i\" aria-hidden=\"true\"/></div>"), $$css$1 = {
|
|
56089
56289
|
hash: "svelte-1c91y9i",
|
|
56090
|
-
code: ".rating-group.svelte-1c91y9i {display:var(--rating-group-display, inline-flex);align-items:center;gap:var(--rating-group-gap, 2px);cursor:var(--rating-group-cursor, pointer);outline:none;border-radius:var(--rating-group-border-radius, var(--radius, 4px));width:fit-content;}.rating-group.svelte-1c91y9i:focus-visible {box-shadow:var(--rating-group-focus-ring, 0 0 0 3px rgba(33, 150, 243, 0.3));}.rating-group.disabled.svelte-1c91y9i {opacity:var(--rating-group-disabled-opacity, 0.4);cursor:var(--rating-group-disabled-cursor, not-allowed);}.rating-group.readonly.svelte-1c91y9i {cursor:var(--rating-group-readonly-cursor, default);}.star.svelte-1c91y9i {position:relative;display:inline-flex;width:var(--rating-group-star-size, 24px);height:var(--rating-group-star-size, 24px);flex-shrink:0;}.rating-group.svelte-1c91y9i:not(.disabled):not(.readonly) .star:where(.svelte-1c91y9i):hover {transform:var(--rating-group-star-hover-transform, scale(1.1));}.star-empty.svelte-1c91y9i,\n .star-fill.svelte-1c91y9i {position:absolute;inset:0;display:flex;}.star-empty.svelte-1c91y9i {color:var(--rating-group-star-empty-color, #d1d5db);}.star-empty.svelte-1c91y9i svg {width:100%;height:100%;}.star-fill.svelte-1c91y9i {color:var(--rating-group-star-filled-color, #f5a623);overflow:hidden;}.star-fill.svelte-1c91y9i svg {width:var(--rating-group-star-size, 24px);height:var(--rating-group-star-size, 24px);flex-shrink:0;}.native-input.svelte-1c91y9i {position:absolute;opacity:0;width:0;height:0;pointer-events:none;}"
|
|
56290
|
+
code: ".rating-group.svelte-1c91y9i {display:var(--rating-group-display, inline-flex);align-items:center;gap:var(--rating-group-gap, 2px);cursor:var(--rating-group-cursor, pointer);outline:none;border-radius:var(--rating-group-border-radius, var(--radius, 4px));width:fit-content;}.rating-group.svelte-1c91y9i:focus-visible {box-shadow:var(--rating-group-focus-ring, 0 0 0 3px rgba(33, 150, 243, 0.3));}.rating-group.disabled.svelte-1c91y9i {opacity:var(--rating-group-disabled-opacity, 0.4);cursor:var(--rating-group-disabled-cursor, not-allowed);}.rating-group.readonly.svelte-1c91y9i {cursor:var(--rating-group-readonly-cursor, default);}.star.svelte-1c91y9i {position:relative;display:inline-flex;width:var(--rating-group-star-size, 24px);height:var(--rating-group-star-size, 24px);flex-shrink:0;transition:transform\n var(--rating-group-star-transition-duration, var(--motion-duration, 0.15s))\n var(--rating-group-star-transition-easing, var(--motion-easing, ease));}.rating-group.svelte-1c91y9i:not(.disabled):not(.readonly) .star:where(.svelte-1c91y9i):hover {transform:var(--rating-group-star-hover-transform, scale(1.1));}\n\n @media (prefers-reduced-motion: reduce) {.star.svelte-1c91y9i {transition:none;}\n }.star-empty.svelte-1c91y9i,\n .star-fill.svelte-1c91y9i {position:absolute;inset:0;display:flex;}.star-empty.svelte-1c91y9i {color:var(--rating-group-star-empty-color, #d1d5db);}.star-empty.svelte-1c91y9i svg {width:100%;height:100%;}.star-fill.svelte-1c91y9i {color:var(--rating-group-star-filled-color, #f5a623);overflow:hidden;}.star-fill.svelte-1c91y9i svg {width:var(--rating-group-star-size, 24px);height:var(--rating-group-star-size, 24px);flex-shrink:0;}.native-input.svelte-1c91y9i {position:absolute;opacity:0;width:0;height:0;pointer-events:none;}"
|
|
56091
56291
|
};
|
|
56092
56292
|
function RatingGroup(e, t) {
|
|
56093
56293
|
push(t, !0), append_styles$1(e, $$css$1);
|
|
@@ -56338,3 +56538,4 @@ customElements.define("sui-rating-group", create_custom_element(RatingGroup_wc,
|
|
|
56338
56538
|
onchange: { type: "Object" }
|
|
56339
56539
|
}, [], [], { mode: "open" }, formAssociated({})));
|
|
56340
56540
|
//#endregion
|
|
56541
|
+
export { createRawSnippet };
|