@cfasim-ui/components 0.4.7 → 0.4.9

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.
@@ -1,3 +1,4 @@
1
+ import { NumberFormat } from '@cfasim-ui/shared';
1
2
  export type NumberRange = [number, number];
2
3
  type __VLS_Props = {
3
4
  label?: string;
@@ -13,6 +14,9 @@ type __VLS_Props = {
13
14
  numberType?: "integer" | "float";
14
15
  required?: boolean;
15
16
  decimals?: number;
17
+ format?: NumberFormat;
18
+ /** @deprecated Use `format` instead. Still honored for slider labels
19
+ * when `format` is unset, but will be removed in a future release. */
16
20
  sliderDisplay?: (value: number) => string;
17
21
  };
18
22
  type __VLS_PublicProps = {
package/dist/index.css CHANGED
@@ -1,2 +1,2 @@
1
- .box[data-v-d7342c02]{font-size:var(--font-size-sm);border-radius:.375em;padding:.75em 1.25em}.box-info[data-v-d7342c02]{background-color:var(--color-box-info-bg);color:var(--color-box-info-text)}.box-success[data-v-d7342c02]{background-color:var(--color-box-success-bg);color:var(--color-box-success-text)}.box-warning[data-v-d7342c02]{background-color:var(--color-box-warning-bg);color:var(--color-box-warning-text)}.box-error[data-v-d7342c02]{background-color:var(--color-box-error-bg);color:var(--color-box-error-text)}.button[data-v-250eab18]{min-height:2.5em;font-size:var(--font-size-sm);background-color:var(--color-primary);color:var(--color-text-on-primary);border:none;border-radius:.375em;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;padding:0 1em;font-weight:500;display:inline-flex}.button[data-v-250eab18]:hover{cursor:pointer;background-color:var(--color-primary-hover)}.button[data-v-250eab18]:active{background-color:var(--color-primary-active)}.button[data-v-250eab18]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.button[data-v-250eab18]:disabled{opacity:.5;cursor:not-allowed}.button[data-variant=secondary][data-v-250eab18]{color:var(--color-primary);border:1px solid var(--color-primary);background-color:#0000}.button[data-variant=secondary][data-v-250eab18]:hover{background-color:color-mix(in srgb, var(--color-primary) 10%, transparent)}.button[data-variant=secondary][data-v-250eab18]:active{background-color:color-mix(in srgb, var(--color-primary) 15%, transparent)}.select-box[data-v-63876437]{flex-direction:column;gap:.25em;display:flex}.select-label[data-v-63876437]{font-size:var(--font-size-sm)}.select-trigger[data-v-63876437]{font-size:var(--font-size-sm);border:1px solid var(--color-border);background:var(--color-bg-0);cursor:pointer;width:auto;height:2.5em;color:inherit;border-radius:.375em;justify-content:space-between;align-items:center;gap:.5em;padding:0 .75em;font-family:inherit;line-height:1.4;display:inline-flex}.select-trigger[data-v-63876437]:hover{border-color:var(--color-border-hover)}.select-trigger[data-v-63876437]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-1px}.select-trigger[data-placeholder][data-v-63876437]{color:var(--color-text-secondary)}.select-icon[data-v-63876437]{flex-shrink:0;align-items:center;display:flex}.select-content{z-index:100;background:var(--color-bg-0);border:1px solid var(--color-border);min-width:var(--reka-select-trigger-width);max-height:var(--reka-select-content-available-height);border-radius:.25em;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.select-viewport{padding:.25em}.select-item{font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:.25em;outline:none;justify-content:space-between;align-items:center;gap:.5em;padding:.25em .5em;display:flex}.select-item[data-highlighted]{background:var(--color-primary);color:#fff}.select-item[data-state=checked]{font-weight:600}.select-indicator{flex-shrink:0;align-items:center;display:flex}.container[data-v-bff01edb]{flex-direction:column;min-width:0;display:flex}.container-horizontal[data-v-bff01edb]{flex-flow:wrap;align-items:center}.container-border[data-v-bff01edb]{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.container-scrollable[data-v-bff01edb]{overflow:auto}.expander-trigger[data-v-39e4acd0]{cursor:pointer;width:100%;font:inherit;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:.5em;padding:.5em 0;font-weight:600;display:flex}.expander-trigger[data-v-39e4acd0]:hover{color:var(--color-text)}.expander-caret[data-v-39e4acd0]{border-top:.3em solid #0000;border-bottom:.3em solid #0000;border-left:.35em solid;width:0;height:0;transition:transform .15s;display:inline-block}.expander-caret.open[data-v-39e4acd0]{transform:rotate(90deg)}.expander-content[data-v-39e4acd0]{flex-direction:column;gap:.75em;display:flex;overflow:hidden}.expander-content[data-state=open][data-v-39e4acd0]{animation:.2s ease-out slideDown-39e4acd0}.expander-content[data-state=closed][data-v-39e4acd0]{animation:.2s ease-out slideUp-39e4acd0}@keyframes slideDown-39e4acd0{0%{height:0}to{height:var(--reka-collapsible-content-height)}}@keyframes slideUp-39e4acd0{0%{height:var(--reka-collapsible-content-height)}to{height:0}}.grid-wrapper[data-v-7ae87f0f]{width:100%;min-width:0;container-type:inline-size}.grid[data-v-7ae87f0f]{min-width:0;display:grid}.grid[data-v-7ae87f0f]>*{min-width:0}.Icon{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" var(--icon-fill,0), "wght" var(--icon-weight,400), "GRAD" var(--icon-grade,0), "opsz" var(--icon-opsz,24);color:inherit;direction:ltr;font-family:Material Symbols Outlined,sans-serif;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.Icon[data-size=sm]{--icon-opsz:20;font-size:20px}.Icon[data-size=md]{--icon-opsz:24;font-size:24px}.Icon[data-size=lg]{--icon-opsz:28;font-size:28px}.Icon[data-size=xl]{--icon-opsz:32;font-size:32px}.Icon[data-fill=true]{--icon-fill:1}.Icon[data-inline=true]{font-size:inherit;vertical-align:middle;transform-origin:50%;transform:scale(1.2)translateY(-.05em)}.HintTrigger[data-v-9dbf1c25]{width:1.25em;height:1.25em;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.HintTrigger[data-v-9dbf1c25]:hover{color:var(--color-text)}.HintTrigger[data-v-9dbf1c25]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.HintContent{max-width:15rem;font-size:var(--font-size-xs);color:var(--color-bg-0);background-color:var(--color-text);box-shadow:var(--shadow-md);z-index:100;border-radius:.25em;padding:.5em .75em;line-height:1.4}.HintArrow{fill:var(--color-text)}.light-dark-toggle[data-v-4c423498]{border:1px solid var(--color-border);background:var(--color-bg-0);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:.25em;justify-content:center;align-items:center;display:flex}.light-dark-toggle[data-v-4c423498]:hover{color:var(--color-text);background:var(--color-bg-1)}.input-label[data-v-db116f99]{flex-direction:column;gap:.25em;display:flex}.input-label-row[data-v-db116f99]{justify-content:space-between;align-items:center;display:flex}.input-wrapper[data-v-db116f99]{align-items:center;gap:.25em;display:flex}.input-wrapper input[data-v-db116f99]{flex:1;min-width:0}input[data-v-db116f99]{width:100%;height:2.5em;font-size:inherit;background-color:var(--color-bg-0);color:var(--color-text);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:.375em;padding:0 .75em;display:block}input[data-v-db116f99]:hover{border-color:var(--color-border-hover)}input[data-v-db116f99]:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}input[aria-invalid=true][data-v-db116f99]{border-color:var(--color-error)}input[aria-invalid=true][data-v-db116f99]:focus{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-error) 25%, transparent)}input[data-v-db116f99]::placeholder{color:var(--color-text-tertiary)}.input-suffix[data-v-db116f99]{color:var(--color-text-secondary);font-size:var(--font-size-sm);flex-shrink:0}.input-error[data-v-db116f99]{color:var(--color-error);font-size:var(--font-size-xs)}.slider-container[data-v-db116f99]{flex-direction:column;gap:.25em;padding-top:1.5em;display:flex}.slider-current[data-v-db116f99]{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;pointer-events:none;margin-bottom:1px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.slider-root[data-v-db116f99]{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:1.5em;display:flex;position:relative}.slider-track[data-v-db116f99]{background-color:var(--color-bg-3);border-radius:var(--radius-full);flex-grow:1;height:3px;position:relative}.slider-range[data-v-db116f99]{background-color:var(--color-primary);border-radius:var(--radius-full);height:100%;position:absolute}.slider-thumb[data-v-db116f99]{background-color:var(--color-primary);border-radius:var(--radius-full);cursor:pointer;width:1em;height:1em;display:block;position:relative}.slider-thumb[data-v-db116f99]:hover{background-color:var(--color-primary-hover)}.slider-thumb[data-v-db116f99]:active,.slider-thumb[data-v-db116f99]:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 25%, transparent);outline:none}.slider-labels[data-v-db116f99]{font-size:var(--font-size-xs);color:var(--color-text-secondary);justify-content:space-between;margin-top:-.5em;display:flex}.Spinner{vertical-align:middle;border:2px solid;border-top-color:#0000;border-radius:50%;animation:.6s linear infinite cfa-spin;display:inline-block}.Spinner[data-size=sm]{width:14px;height:14px}.Spinner[data-size=md]{width:20px;height:20px}.Spinner[data-size=lg]{border-width:3px;width:28px;height:28px}@keyframes cfa-spin{to{transform:rotate(360deg)}}.SidebarLayout[data-v-6d59601d]{--bar-height:3rem;background-color:var(--color-bg-0);height:100dvh;color:var(--color-text);font-family:var(--font-family);display:flex;position:relative}.SidebarRail[data-v-6d59601d]{width:var(--sidebar-width);height:100%;transition:width var(--transition-normal);flex-shrink:0;position:relative;overflow:hidden}@media (width>=768px){.SidebarLayout[data-collapsed=true] .SidebarRail[data-v-6d59601d]{width:var(--toggle-size);background-color:var(--color-bg-1);border-right:1px solid var(--color-border);box-shadow:var(--shadow-sm)}}.Sidebar[data-v-6d59601d]{font-size:var(--font-size-sm);width:var(--sidebar-width);height:100%;transition:transform var(--transition-normal);display:flex;transform:translate(0)}.SidebarLayout[data-collapsed=true] .Sidebar[data-v-6d59601d]{transform:translate(-100%)}.SidebarScroll[data-v-6d59601d]{min-width:0;padding:var(--space-4);background-color:var(--color-bg-1);border-right:1px solid var(--color-border);box-shadow:var(--shadow-sm);scrollbar-width:thin;scrollbar-color:transparent transparent;gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.SidebarScroll[data-v-6d59601d]:hover{scrollbar-color:var(--color-border) transparent}.SidebarScroll[data-v-6d59601d] h2{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:var(--space-4) 0 var(--space-2);font-weight:600}.SidebarScroll[data-v-6d59601d]>h2:first-child{margin-top:0}.Toggle[data-v-6d59601d]{width:var(--toggle-size);height:var(--toggle-size);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.Toggle[data-v-6d59601d]:hover{color:var(--color-text);background-color:var(--color-bg-2)}.Toggle[data-v-6d59601d]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.SidebarHeader[data-v-6d59601d]{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) calc(-1 * var(--space-3));justify-content:flex-end;display:flex}.Toggle--expand[data-v-6d59601d]{opacity:0;pointer-events:none;transition:opacity var(--transition-fast);position:absolute;top:0;left:50%;transform:translate(-50%)}.SidebarLayout[data-collapsed=true] .Toggle--expand[data-v-6d59601d]{opacity:1;pointer-events:auto}.Main[data-v-6d59601d]{background-color:var(--color-bg-0);min-width:0;font-size:var(--font-size-md);flex-direction:column;flex:1;display:flex;overflow:hidden;container-type:inline-size}.Topbar[data-v-6d59601d]{min-height:var(--bar-height);padding:0 var(--space-4);flex-shrink:0;align-items:center;display:flex}.TopbarEnd[data-v-6d59601d]{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}@container (width>=768px){.Topbar[data-v-6d59601d]{padding:0 var(--space-4) 0 var(--space-20)}}.MainScroll[data-v-6d59601d]{min-height:0;padding:var(--space-6) 0;scrollbar-width:thin;scrollbar-color:transparent transparent;flex:1;overflow:hidden auto}.MainScroll[data-v-6d59601d]:hover{scrollbar-color:var(--color-border) transparent}.MainContent[data-v-6d59601d]{max-width:1024px;padding:0 var(--space-4)}@container (width>=768px){.MainContent[data-v-6d59601d]{padding:0 var(--space-4) 0 var(--space-20)}}@media (width<=767px){.SidebarLayout[data-v-6d59601d]{transition:transform var(--transition-normal)}.SidebarLayout[data-collapsed=true][data-v-6d59601d]{transform:translateX(calc(-1 * var(--sidebar-width)))}.SidebarLayout[data-collapsed=true] .Sidebar[data-v-6d59601d]{transform:translate(0)}.SidebarRail[data-v-6d59601d]{min-width:var(--sidebar-width)}.Main[data-v-6d59601d]{min-width:100vw}.Toggle--expand[data-v-6d59601d]{display:none}}.TabsLayout[data-v-6d59601d]{flex-direction:column;flex:1;min-height:0;display:flex}.TabsBar[data-v-6d59601d]{min-height:var(--bar-height);border-bottom:1px solid var(--color-border);padding:0 var(--space-4);flex-shrink:0;align-items:center;display:flex}.TabsBarEnd[data-v-6d59601d]{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.TabsList[data-v-6d59601d]{gap:var(--space-1);align-self:stretch;display:flex;position:relative}.TabsTrigger[data-v-6d59601d]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:var(--radius-md) var(--radius-md) 0 0;background:0 0;border:none;font-family:inherit;font-weight:500;position:relative}.TabsTrigger[data-v-6d59601d]:hover{color:var(--color-text);background-color:var(--color-bg-1)}.TabsTrigger[data-state=active][data-v-6d59601d]{color:var(--color-text)}.TabsTrigger[data-v-6d59601d]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.TabsIndicator[data-v-6d59601d]{background-color:var(--color-text);height:2px;transition:width var(--transition-fast), left var(--transition-fast);position:absolute;bottom:0}.input-label[data-v-3f3d20cc]{font-size:var(--font-size-sm);flex-direction:column;gap:.25em;display:flex}.input-label-row[data-v-3f3d20cc]{justify-content:space-between;align-items:center;display:flex}input[data-v-3f3d20cc]{width:100%;height:2.5em;font-size:inherit;background-color:var(--color-bg-0);color:var(--color-text);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:.375em;padding:0 .75em;display:block}input[data-v-3f3d20cc]:hover{border-color:var(--color-border-hover)}input[data-v-3f3d20cc]:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}input[data-v-3f3d20cc]::placeholder{color:var(--color-text-tertiary)}.toggle[data-v-9916c71e]{align-items:center;gap:.5em;display:flex}.toggle label[data-v-9916c71e]{-webkit-user-select:none;user-select:none}.switch[data-v-9916c71e]{--switch-w:2.25em;--switch-h:1.25em;--thumb-size:1em;--thumb-offset:.125em;width:var(--switch-w);height:var(--switch-h);background:var(--color-border-hover);border-radius:var(--switch-h);cursor:pointer;border:none;flex-shrink:0;padding:0;transition:background .15s;position:relative}.switch[data-state=checked][data-v-9916c71e]{background:var(--color-primary)}.switch[data-disabled][data-v-9916c71e]{opacity:.5;cursor:not-allowed}.thumb[data-v-9916c71e]{width:var(--thumb-size);height:var(--thumb-size);top:var(--thumb-offset);left:var(--thumb-offset);background:#fff;border-radius:50%;transition:transform .15s;display:block;position:absolute}.switch[data-state=checked] .thumb[data-v-9916c71e]{transform:translateX(calc(var(--switch-w) - var(--thumb-size) - var(--thumb-offset) * 2))}.param-editor[data-v-9ec652e6]{flex-direction:column;gap:.5em;min-width:0;display:flex}.param-editor-toolbar[data-v-9ec652e6]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5em;display:flex}.param-editor-actions[data-v-9ec652e6]{gap:.25em;display:flex}.param-editor-file-input[data-v-9ec652e6]{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.param-editor-cm[data-v-9ec652e6]{border:1px solid var(--color-border);font-size:var(--font-size-sm);border-radius:.375em;overflow:hidden}.param-editor-cm[data-v-9ec652e6] .cm-editor{outline:none;height:100%}.param-editor-cm[data-v-9ec652e6] .cm-editor.cm-focused{outline:none}.param-editor-cm[data-v-9ec652e6] .cm-scroller{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.param-editor-error[data-v-9ec652e6]{white-space:pre-wrap;word-break:break-word}.param-editor-shortcut-hint[data-v-9ec652e6]{font-size:var(--font-size-xs,.75em);color:var(--color-text-secondary,#666);margin:0}.param-editor-shortcut-hint kbd[data-v-9ec652e6]{border:1px solid var(--color-border);background:var(--color-bg-1,transparent);border-radius:.25em;padding:.1em .35em;font-family:inherit;font-size:.95em}
1
+ .box[data-v-d7342c02]{font-size:var(--font-size-sm);border-radius:.375em;padding:.75em 1.25em}.box-info[data-v-d7342c02]{background-color:var(--color-box-info-bg);color:var(--color-box-info-text)}.box-success[data-v-d7342c02]{background-color:var(--color-box-success-bg);color:var(--color-box-success-text)}.box-warning[data-v-d7342c02]{background-color:var(--color-box-warning-bg);color:var(--color-box-warning-text)}.box-error[data-v-d7342c02]{background-color:var(--color-box-error-bg);color:var(--color-box-error-text)}.button[data-v-250eab18]{min-height:2.5em;font-size:var(--font-size-sm);background-color:var(--color-primary);color:var(--color-text-on-primary);border:none;border-radius:.375em;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;padding:0 1em;font-weight:500;display:inline-flex}.button[data-v-250eab18]:hover{cursor:pointer;background-color:var(--color-primary-hover)}.button[data-v-250eab18]:active{background-color:var(--color-primary-active)}.button[data-v-250eab18]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.button[data-v-250eab18]:disabled{opacity:.5;cursor:not-allowed}.button[data-variant=secondary][data-v-250eab18]{color:var(--color-primary);border:1px solid var(--color-primary);background-color:#0000}.button[data-variant=secondary][data-v-250eab18]:hover{background-color:color-mix(in srgb, var(--color-primary) 10%, transparent)}.button[data-variant=secondary][data-v-250eab18]:active{background-color:color-mix(in srgb, var(--color-primary) 15%, transparent)}.select-box[data-v-63876437]{flex-direction:column;gap:.25em;display:flex}.select-label[data-v-63876437]{font-size:var(--font-size-sm)}.select-trigger[data-v-63876437]{font-size:var(--font-size-sm);border:1px solid var(--color-border);background:var(--color-bg-0);cursor:pointer;width:auto;height:2.5em;color:inherit;border-radius:.375em;justify-content:space-between;align-items:center;gap:.5em;padding:0 .75em;font-family:inherit;line-height:1.4;display:inline-flex}.select-trigger[data-v-63876437]:hover{border-color:var(--color-border-hover)}.select-trigger[data-v-63876437]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-1px}.select-trigger[data-placeholder][data-v-63876437]{color:var(--color-text-secondary)}.select-icon[data-v-63876437]{flex-shrink:0;align-items:center;display:flex}.select-content{z-index:100;background:var(--color-bg-0);border:1px solid var(--color-border);min-width:var(--reka-select-trigger-width);max-height:var(--reka-select-content-available-height);border-radius:.25em;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.select-viewport{padding:.25em}.select-item{font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:.25em;outline:none;justify-content:space-between;align-items:center;gap:.5em;padding:.25em .5em;display:flex}.select-item[data-highlighted]{background:var(--color-primary);color:#fff}.select-item[data-state=checked]{font-weight:600}.select-indicator{flex-shrink:0;align-items:center;display:flex}.container[data-v-bff01edb]{flex-direction:column;min-width:0;display:flex}.container-horizontal[data-v-bff01edb]{flex-flow:wrap;align-items:center}.container-border[data-v-bff01edb]{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.container-scrollable[data-v-bff01edb]{overflow:auto}.expander-trigger[data-v-39e4acd0]{cursor:pointer;width:100%;font:inherit;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:.5em;padding:.5em 0;font-weight:600;display:flex}.expander-trigger[data-v-39e4acd0]:hover{color:var(--color-text)}.expander-caret[data-v-39e4acd0]{border-top:.3em solid #0000;border-bottom:.3em solid #0000;border-left:.35em solid;width:0;height:0;transition:transform .15s;display:inline-block}.expander-caret.open[data-v-39e4acd0]{transform:rotate(90deg)}.expander-content[data-v-39e4acd0]{flex-direction:column;gap:.75em;display:flex;overflow:hidden}.expander-content[data-state=open][data-v-39e4acd0]{animation:.2s ease-out slideDown-39e4acd0}.expander-content[data-state=closed][data-v-39e4acd0]{animation:.2s ease-out slideUp-39e4acd0}@keyframes slideDown-39e4acd0{0%{height:0}to{height:var(--reka-collapsible-content-height)}}@keyframes slideUp-39e4acd0{0%{height:var(--reka-collapsible-content-height)}to{height:0}}.grid-wrapper[data-v-7ae87f0f]{width:100%;min-width:0;container-type:inline-size}.grid[data-v-7ae87f0f]{min-width:0;display:grid}.grid[data-v-7ae87f0f]>*{min-width:0}.Icon{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" var(--icon-fill,0), "wght" var(--icon-weight,400), "GRAD" var(--icon-grade,0), "opsz" var(--icon-opsz,24);color:inherit;direction:ltr;font-family:Material Symbols Outlined,sans-serif;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.Icon[data-size=sm]{--icon-opsz:20;font-size:20px}.Icon[data-size=md]{--icon-opsz:24;font-size:24px}.Icon[data-size=lg]{--icon-opsz:28;font-size:28px}.Icon[data-size=xl]{--icon-opsz:32;font-size:32px}.Icon[data-fill=true]{--icon-fill:1}.Icon[data-inline=true]{font-size:inherit;vertical-align:middle;transform-origin:50%;transform:scale(1.2)translateY(-.05em)}.HintTrigger[data-v-9dbf1c25]{width:1.25em;height:1.25em;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.HintTrigger[data-v-9dbf1c25]:hover{color:var(--color-text)}.HintTrigger[data-v-9dbf1c25]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.HintContent{max-width:15rem;font-size:var(--font-size-xs);color:var(--color-bg-0);background-color:var(--color-text);box-shadow:var(--shadow-md);z-index:100;border-radius:.25em;padding:.5em .75em;line-height:1.4}.HintArrow{fill:var(--color-text)}.light-dark-toggle[data-v-4c423498]{border:1px solid var(--color-border);background:var(--color-bg-0);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:.25em;justify-content:center;align-items:center;display:flex}.light-dark-toggle[data-v-4c423498]:hover{color:var(--color-text);background:var(--color-bg-1)}.input-label[data-v-b123853e]{flex-direction:column;gap:.25em;display:flex}.input-label-row[data-v-b123853e]{justify-content:space-between;align-items:center;display:flex}.input-wrapper[data-v-b123853e]{align-items:center;gap:.25em;display:flex}.input-wrapper input[data-v-b123853e]{flex:1;min-width:0}input[data-v-b123853e]{width:100%;height:2.5em;font-size:inherit;background-color:var(--color-bg-0);color:var(--color-text);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:.375em;padding:0 .75em;display:block}input[data-v-b123853e]:hover{border-color:var(--color-border-hover)}input[data-v-b123853e]:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}input[aria-invalid=true][data-v-b123853e]{border-color:var(--color-error)}input[aria-invalid=true][data-v-b123853e]:focus{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-error) 25%, transparent)}input[data-v-b123853e]::placeholder{color:var(--color-text-tertiary)}.input-suffix[data-v-b123853e]{color:var(--color-text-secondary);font-size:var(--font-size-sm);flex-shrink:0}.input-error[data-v-b123853e]{color:var(--color-error);font-size:var(--font-size-xs)}.slider-container[data-v-b123853e]{flex-direction:column;gap:.25em;padding-top:1.5em;display:flex}.slider-current[data-v-b123853e]{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;pointer-events:none;margin-bottom:1px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.slider-root[data-v-b123853e]{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:1.5em;display:flex;position:relative}.slider-track[data-v-b123853e]{background-color:var(--color-bg-3);border-radius:var(--radius-full);flex-grow:1;height:3px;position:relative}.slider-range[data-v-b123853e]{background-color:var(--color-primary);border-radius:var(--radius-full);height:100%;position:absolute}.slider-thumb[data-v-b123853e]{background-color:var(--color-primary);border-radius:var(--radius-full);cursor:pointer;width:1em;height:1em;display:block;position:relative}.slider-thumb[data-v-b123853e]:hover{background-color:var(--color-primary-hover)}.slider-thumb[data-v-b123853e]:active,.slider-thumb[data-v-b123853e]:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 25%, transparent);outline:none}.slider-labels[data-v-b123853e]{font-size:var(--font-size-xs);color:var(--color-text-secondary);justify-content:space-between;margin-top:-.5em;display:flex}.Spinner{vertical-align:middle;border:2px solid;border-top-color:#0000;border-radius:50%;animation:.6s linear infinite cfa-spin;display:inline-block}.Spinner[data-size=sm]{width:14px;height:14px}.Spinner[data-size=md]{width:20px;height:20px}.Spinner[data-size=lg]{border-width:3px;width:28px;height:28px}@keyframes cfa-spin{to{transform:rotate(360deg)}}.SidebarLayout[data-v-6d59601d]{--bar-height:3rem;background-color:var(--color-bg-0);height:100dvh;color:var(--color-text);font-family:var(--font-family);display:flex;position:relative}.SidebarRail[data-v-6d59601d]{width:var(--sidebar-width);height:100%;transition:width var(--transition-normal);flex-shrink:0;position:relative;overflow:hidden}@media (width>=768px){.SidebarLayout[data-collapsed=true] .SidebarRail[data-v-6d59601d]{width:var(--toggle-size);background-color:var(--color-bg-1);border-right:1px solid var(--color-border);box-shadow:var(--shadow-sm)}}.Sidebar[data-v-6d59601d]{font-size:var(--font-size-sm);width:var(--sidebar-width);height:100%;transition:transform var(--transition-normal);display:flex;transform:translate(0)}.SidebarLayout[data-collapsed=true] .Sidebar[data-v-6d59601d]{transform:translate(-100%)}.SidebarScroll[data-v-6d59601d]{min-width:0;padding:var(--space-4);background-color:var(--color-bg-1);border-right:1px solid var(--color-border);box-shadow:var(--shadow-sm);scrollbar-width:thin;scrollbar-color:transparent transparent;gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.SidebarScroll[data-v-6d59601d]:hover{scrollbar-color:var(--color-border) transparent}.SidebarScroll[data-v-6d59601d] h2{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:var(--space-4) 0 var(--space-2);font-weight:600}.SidebarScroll[data-v-6d59601d]>h2:first-child{margin-top:0}.Toggle[data-v-6d59601d]{width:var(--toggle-size);height:var(--toggle-size);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.Toggle[data-v-6d59601d]:hover{color:var(--color-text);background-color:var(--color-bg-2)}.Toggle[data-v-6d59601d]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.SidebarHeader[data-v-6d59601d]{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) calc(-1 * var(--space-3));justify-content:flex-end;display:flex}.Toggle--expand[data-v-6d59601d]{opacity:0;pointer-events:none;transition:opacity var(--transition-fast);position:absolute;top:0;left:50%;transform:translate(-50%)}.SidebarLayout[data-collapsed=true] .Toggle--expand[data-v-6d59601d]{opacity:1;pointer-events:auto}.Main[data-v-6d59601d]{background-color:var(--color-bg-0);min-width:0;font-size:var(--font-size-md);flex-direction:column;flex:1;display:flex;overflow:hidden;container-type:inline-size}.Topbar[data-v-6d59601d]{min-height:var(--bar-height);padding:0 var(--space-4);flex-shrink:0;align-items:center;display:flex}.TopbarEnd[data-v-6d59601d]{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}@container (width>=768px){.Topbar[data-v-6d59601d]{padding:0 var(--space-4) 0 var(--space-20)}}.MainScroll[data-v-6d59601d]{min-height:0;padding:var(--space-6) 0;scrollbar-width:thin;scrollbar-color:transparent transparent;flex:1;overflow:hidden auto}.MainScroll[data-v-6d59601d]:hover{scrollbar-color:var(--color-border) transparent}.MainContent[data-v-6d59601d]{max-width:1024px;padding:0 var(--space-4)}@container (width>=768px){.MainContent[data-v-6d59601d]{padding:0 var(--space-4) 0 var(--space-20)}}@media (width<=767px){.SidebarLayout[data-v-6d59601d]{transition:transform var(--transition-normal)}.SidebarLayout[data-collapsed=true][data-v-6d59601d]{transform:translateX(calc(-1 * var(--sidebar-width)))}.SidebarLayout[data-collapsed=true] .Sidebar[data-v-6d59601d]{transform:translate(0)}.SidebarRail[data-v-6d59601d]{min-width:var(--sidebar-width)}.Main[data-v-6d59601d]{min-width:100vw}.Toggle--expand[data-v-6d59601d]{display:none}}.TabsLayout[data-v-6d59601d]{flex-direction:column;flex:1;min-height:0;display:flex}.TabsBar[data-v-6d59601d]{min-height:var(--bar-height);border-bottom:1px solid var(--color-border);padding:0 var(--space-4);flex-shrink:0;align-items:center;display:flex}.TabsBarEnd[data-v-6d59601d]{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.TabsList[data-v-6d59601d]{gap:var(--space-1);align-self:stretch;display:flex;position:relative}.TabsTrigger[data-v-6d59601d]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:var(--radius-md) var(--radius-md) 0 0;background:0 0;border:none;font-family:inherit;font-weight:500;position:relative}.TabsTrigger[data-v-6d59601d]:hover{color:var(--color-text);background-color:var(--color-bg-1)}.TabsTrigger[data-state=active][data-v-6d59601d]{color:var(--color-text)}.TabsTrigger[data-v-6d59601d]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.TabsIndicator[data-v-6d59601d]{background-color:var(--color-text);height:2px;transition:width var(--transition-fast), left var(--transition-fast);position:absolute;bottom:0}.input-label[data-v-3f3d20cc]{font-size:var(--font-size-sm);flex-direction:column;gap:.25em;display:flex}.input-label-row[data-v-3f3d20cc]{justify-content:space-between;align-items:center;display:flex}input[data-v-3f3d20cc]{width:100%;height:2.5em;font-size:inherit;background-color:var(--color-bg-0);color:var(--color-text);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:.375em;padding:0 .75em;display:block}input[data-v-3f3d20cc]:hover{border-color:var(--color-border-hover)}input[data-v-3f3d20cc]:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}input[data-v-3f3d20cc]::placeholder{color:var(--color-text-tertiary)}.toggle[data-v-9916c71e]{align-items:center;gap:.5em;display:flex}.toggle label[data-v-9916c71e]{-webkit-user-select:none;user-select:none}.switch[data-v-9916c71e]{--switch-w:2.25em;--switch-h:1.25em;--thumb-size:1em;--thumb-offset:.125em;width:var(--switch-w);height:var(--switch-h);background:var(--color-border-hover);border-radius:var(--switch-h);cursor:pointer;border:none;flex-shrink:0;padding:0;transition:background .15s;position:relative}.switch[data-state=checked][data-v-9916c71e]{background:var(--color-primary)}.switch[data-disabled][data-v-9916c71e]{opacity:.5;cursor:not-allowed}.thumb[data-v-9916c71e]{width:var(--thumb-size);height:var(--thumb-size);top:var(--thumb-offset);left:var(--thumb-offset);background:#fff;border-radius:50%;transition:transform .15s;display:block;position:absolute}.switch[data-state=checked] .thumb[data-v-9916c71e]{transform:translateX(calc(var(--switch-w) - var(--thumb-size) - var(--thumb-offset) * 2))}.param-editor[data-v-9ec652e6]{flex-direction:column;gap:.5em;min-width:0;display:flex}.param-editor-toolbar[data-v-9ec652e6]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5em;display:flex}.param-editor-actions[data-v-9ec652e6]{gap:.25em;display:flex}.param-editor-file-input[data-v-9ec652e6]{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.param-editor-cm[data-v-9ec652e6]{border:1px solid var(--color-border);font-size:var(--font-size-sm);border-radius:.375em;overflow:hidden}.param-editor-cm[data-v-9ec652e6] .cm-editor{outline:none;height:100%}.param-editor-cm[data-v-9ec652e6] .cm-editor.cm-focused{outline:none}.param-editor-cm[data-v-9ec652e6] .cm-scroller{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.param-editor-error[data-v-9ec652e6]{white-space:pre-wrap;word-break:break-word}.param-editor-shortcut-hint[data-v-9ec652e6]{font-size:var(--font-size-xs,.75em);color:var(--color-text-secondary,#666);margin:0}.param-editor-shortcut-hint kbd[data-v-9ec652e6]{border:1px solid var(--color-border);background:var(--color-bg-1,transparent);border-radius:.25em;padding:.1em .35em;font-family:inherit;font-size:.95em}
2
2
  /*$vite$:1*/
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { i as e, n as t, r as n, t as r } from "./SelectBox-BDCkOxe1.js";
2
- import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineAsyncComponent as f, defineComponent as p, getCurrentInstance as ee, mergeModels as m, normalizeClass as h, normalizeStyle as g, onMounted as te, onUnmounted as _, openBlock as v, ref as y, renderList as ne, renderSlot as b, resolveDynamicComponent as x, toDisplayString as S, unref as C, useModel as w, vModelText as T, watch as E, withCtx as D, withDirectives as O, withKeys as k, withModifiers as A } from "vue";
3
- import { CollapsibleContent as j, CollapsibleRoot as re, CollapsibleTrigger as ie, SliderRange as ae, SliderRoot as oe, SliderThumb as se, SliderTrack as ce, SwitchRoot as le, SwitchThumb as M, TabsIndicator as N, TabsList as P, TabsRoot as ue, TabsTrigger as F, TooltipArrow as I, TooltipContent as L, TooltipPortal as de, TooltipProvider as R, TooltipRoot as z, TooltipTrigger as B, useId as V } from "reka-ui";
4
- //#region src/_internal/gap.ts
5
- var H = {
2
+ import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineAsyncComponent as f, defineComponent as p, getCurrentInstance as m, mergeModels as h, normalizeClass as g, normalizeStyle as _, onMounted as ee, onUnmounted as v, openBlock as y, ref as b, renderList as te, renderSlot as x, resolveDynamicComponent as S, toDisplayString as C, unref as w, useModel as T, vModelText as E, watch as D, withCtx as O, withDirectives as k, withKeys as A, withModifiers as j } from "vue";
3
+ import { CollapsibleContent as M, CollapsibleRoot as ne, CollapsibleTrigger as re, SliderRange as ie, SliderRoot as ae, SliderThumb as oe, SliderTrack as se, SwitchRoot as ce, SwitchThumb as N, TabsIndicator as P, TabsList as F, TabsRoot as le, TabsTrigger as I, TooltipArrow as L, TooltipContent as R, TooltipPortal as ue, TooltipProvider as de, TooltipRoot as z, TooltipTrigger as B, useId as fe } from "reka-ui";
4
+ //#region \0rolldown/runtime.js
5
+ var V = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), H = {
6
6
  none: "0",
7
7
  small: "var(--space-2)",
8
8
  medium: "var(--space-4)",
@@ -26,21 +26,21 @@ var W = /* @__PURE__ */ e(/* @__PURE__ */ p({
26
26
  let e = t.height;
27
27
  if (e != null) return typeof e == "number" ? `${e}px` : e;
28
28
  });
29
- return (t, i) => (v(), c("div", {
30
- class: h(["container", {
29
+ return (t, i) => (y(), c("div", {
30
+ class: g(["container", {
31
31
  "container-border": e.border,
32
32
  "container-horizontal": e.horizontal,
33
33
  "container-scrollable": e.height != null
34
34
  }]),
35
- style: g({
35
+ style: _({
36
36
  gap: n.value,
37
37
  height: r.value
38
38
  })
39
- }, [b(t.$slots, "default", {}, void 0, !0)], 6));
39
+ }, [x(t.$slots, "default", {}, void 0, !0)], 6));
40
40
  }
41
41
  }), [["__scopeId", "data-v-bff01edb"]]), G = /* @__PURE__ */ e(/* @__PURE__ */ p({
42
42
  __name: "Expander",
43
- props: /* @__PURE__ */ m({ label: {} }, {
43
+ props: /* @__PURE__ */ h({ label: {} }, {
44
44
  open: {
45
45
  type: Boolean,
46
46
  default: !1
@@ -49,31 +49,31 @@ var W = /* @__PURE__ */ e(/* @__PURE__ */ p({
49
49
  }),
50
50
  emits: ["update:open"],
51
51
  setup(e) {
52
- let t = w(e, "open");
53
- return (n, r) => (v(), o(C(re), {
52
+ let t = T(e, "open");
53
+ return (n, r) => (y(), o(w(ne), {
54
54
  open: t.value,
55
55
  "onUpdate:open": r[0] ||= (e) => t.value = e,
56
56
  class: "expander"
57
57
  }, {
58
- default: D(() => [d(C(ie), { class: "expander-trigger" }, {
59
- default: D(() => [l("span", { class: h(["expander-caret", { open: t.value }]) }, null, 2), b(n.$slots, "label", {}, () => [u(S(e.label), 1)], !0)]),
58
+ default: O(() => [d(w(re), { class: "expander-trigger" }, {
59
+ default: O(() => [l("span", { class: g(["expander-caret", { open: t.value }]) }, null, 2), x(n.$slots, "label", {}, () => [u(C(e.label), 1)], !0)]),
60
60
  _: 3
61
- }), d(C(j), { class: "expander-content" }, {
62
- default: D(() => [b(n.$slots, "default", {}, void 0, !0)]),
61
+ }), d(w(M), { class: "expander-content" }, {
62
+ default: O(() => [x(n.$slots, "default", {}, void 0, !0)]),
63
63
  _: 3
64
64
  })]),
65
65
  _: 3
66
66
  }, 8, ["open"]));
67
67
  }
68
- }), [["__scopeId", "data-v-39e4acd0"]]), K = ["data-cfasim-grid-bp"], fe = "640px";
69
- function pe(e) {
68
+ }), [["__scopeId", "data-v-39e4acd0"]]), pe = ["data-cfasim-grid-bp"], me = "640px";
69
+ function he(e) {
70
70
  return typeof e == "number" ? `repeat(${e}, 1fr)` : e.map((e) => typeof e == "number" ? `${e}fr` : e).join(" ");
71
71
  }
72
- function me(e) {
73
- return /^\d+(\.\d+)?[a-zA-Z%]+$/.test(e) ? e : fe;
72
+ function K(e) {
73
+ return /^\d+(\.\d+)?[a-zA-Z%]+$/.test(e) ? e : me;
74
74
  }
75
75
  var q = /* @__PURE__ */ new Map();
76
- function he(e) {
76
+ function ge(e) {
77
77
  if (typeof document > "u") return;
78
78
  let t = q.get(e);
79
79
  if (t) {
@@ -86,7 +86,7 @@ function he(e) {
86
86
  el: n
87
87
  });
88
88
  }
89
- function ge(e) {
89
+ function J(e) {
90
90
  if (typeof document > "u") return;
91
91
  let t = q.get(e);
92
92
  t && (t.count--, t.count === 0 && (t.el.remove(), q.delete(e)));
@@ -96,7 +96,7 @@ function ge(e) {
96
96
  });
97
97
  //#endregion
98
98
  //#region src/Grid/Grid.vue
99
- var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
99
+ var Y = /* @__PURE__ */ e(/* @__PURE__ */ p({
100
100
  __name: "Grid",
101
101
  props: {
102
102
  cols: {},
@@ -106,31 +106,31 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
106
106
  minColWidth: {}
107
107
  },
108
108
  setup(e) {
109
- let t = e, n = a(() => U(t.gap)), r = a(() => t.minColWidth ? `repeat(auto-fit, minmax(${t.minColWidth}, 1fr))` : pe(t.cols ?? 2)), i = a(() => t.minColWidth || t.colsSmall == null ? r.value : pe(t.colsSmall)), o = a(() => me(t.breakpoint ?? fe)), s = null, u = E(o, (e) => {
110
- s !== e && (he(e), s && ge(s), s = e);
109
+ let t = e, n = a(() => U(t.gap)), r = a(() => t.minColWidth ? `repeat(auto-fit, minmax(${t.minColWidth}, 1fr))` : he(t.cols ?? 2)), i = a(() => t.minColWidth || t.colsSmall == null ? r.value : he(t.colsSmall)), o = a(() => K(t.breakpoint ?? me)), s = null, u = D(o, (e) => {
110
+ s !== e && (ge(e), s && J(s), s = e);
111
111
  }, { immediate: !0 });
112
- return _(() => {
113
- u(), s &&= (ge(s), null);
114
- }), (e, t) => (v(), c("div", {
112
+ return v(() => {
113
+ u(), s &&= (J(s), null);
114
+ }), (e, t) => (y(), c("div", {
115
115
  "data-cfasim-grid-bp": o.value,
116
116
  class: "grid-wrapper"
117
117
  }, [l("div", {
118
118
  class: "grid",
119
- style: g({
119
+ style: _({
120
120
  gap: n.value,
121
121
  gridTemplateColumns: r.value,
122
122
  "--grid-cols-small": i.value
123
123
  })
124
- }, [b(e.$slots, "default", {}, void 0, !0)], 4)], 8, K));
124
+ }, [x(e.$slots, "default", {}, void 0, !0)], 4)], 8, pe));
125
125
  }
126
- }), [["__scopeId", "data-v-7ae87f0f"]]), Y = [
126
+ }), [["__scopeId", "data-v-7ae87f0f"]]), X = [
127
127
  "data-size",
128
128
  "data-fill",
129
129
  "data-inline",
130
130
  "aria-hidden",
131
131
  "aria-label",
132
132
  "role"
133
- ], X = /* @__PURE__ */ p({
133
+ ], Z = /* @__PURE__ */ p({
134
134
  __name: "Icon",
135
135
  props: {
136
136
  icon: {},
@@ -156,44 +156,44 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
156
156
  let e = {};
157
157
  return r.value !== void 0 && (e.fontSize = `${r.value}px`, e["--icon-opsz"] = r.value), t.weight !== void 0 && (e["--icon-weight"] = t.weight), t.grade !== void 0 && (e["--icon-grade"] = t.grade), e;
158
158
  });
159
- return (t, r) => (v(), c("span", {
159
+ return (t, r) => (y(), c("span", {
160
160
  class: "Icon",
161
161
  "data-size": n.value,
162
162
  "data-fill": e.fill ? "true" : void 0,
163
163
  "data-inline": e.inline ? "true" : void 0,
164
- style: g(i.value),
164
+ style: _(i.value),
165
165
  "aria-hidden": e.decorative ? !0 : void 0,
166
166
  "aria-label": e.decorative ? void 0 : e.ariaLabel,
167
167
  role: e.decorative ? void 0 : "img"
168
- }, S(e.icon), 13, Y));
168
+ }, C(e.icon), 13, X));
169
169
  }
170
- }), Z = /* @__PURE__ */ e(/* @__PURE__ */ p({
170
+ }), Q = /* @__PURE__ */ e(/* @__PURE__ */ p({
171
171
  __name: "Hint",
172
172
  props: { text: {} },
173
173
  setup(e) {
174
- return (t, n) => (v(), o(C(R), null, {
175
- default: D(() => [d(C(z), {
174
+ return (t, n) => (y(), o(w(de), null, {
175
+ default: O(() => [d(w(z), {
176
176
  "delay-duration": 0,
177
177
  "disable-closing-trigger": ""
178
178
  }, {
179
- default: D(() => [d(C(B), { "as-child": "" }, {
180
- default: D(() => [l("button", {
179
+ default: O(() => [d(w(B), { "as-child": "" }, {
180
+ default: O(() => [l("button", {
181
181
  type: "button",
182
182
  class: "HintTrigger",
183
183
  "aria-label": "More info",
184
- onPointerdown: n[0] ||= A(() => {}, ["prevent"])
185
- }, [d(X, {
184
+ onPointerdown: n[0] ||= j(() => {}, ["prevent"])
185
+ }, [d(Z, {
186
186
  icon: "help",
187
187
  size: 16
188
188
  })], 32)]),
189
189
  _: 1
190
- }), d(C(de), null, {
191
- default: D(() => [d(C(L), {
190
+ }), d(w(ue), null, {
191
+ default: O(() => [d(w(R), {
192
192
  class: "HintContent",
193
193
  side: "top",
194
194
  "side-offset": 4
195
195
  }, {
196
- default: D(() => [u(S(e.text) + " ", 1), d(C(I), {
196
+ default: O(() => [u(C(e.text) + " ", 1), d(w(L), {
197
197
  class: "HintArrow",
198
198
  width: 10,
199
199
  height: 5
@@ -207,45 +207,241 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
207
207
  _: 1
208
208
  }));
209
209
  }
210
- }), [["__scopeId", "data-v-9dbf1c25"]]), _e = ["aria-label"], Q = /* @__PURE__ */ e(/* @__PURE__ */ p({
210
+ }), [["__scopeId", "data-v-9dbf1c25"]]), _e = ["aria-label"], $ = /* @__PURE__ */ e(/* @__PURE__ */ p({
211
211
  __name: "LightDarkToggle",
212
212
  setup(e) {
213
- let t = y(window.matchMedia("(prefers-color-scheme: dark)").matches);
213
+ let t = b(window.matchMedia("(prefers-color-scheme: dark)").matches);
214
214
  function n(e) {
215
215
  document.documentElement.classList.toggle("dark", e), document.documentElement.classList.toggle("light", !e);
216
216
  }
217
- return n(t.value), E(t, n), (e, n) => (v(), c("button", {
217
+ return n(t.value), D(t, n), (e, n) => (y(), c("button", {
218
218
  class: "light-dark-toggle",
219
219
  type: "button",
220
220
  "aria-label": t.value ? "Switch to light mode" : "Switch to dark mode",
221
221
  onClick: n[0] ||= (e) => t.value = !t.value
222
- }, [d(X, {
222
+ }, [d(Z, {
223
223
  icon: t.value ? "dark_mode" : "light_mode",
224
224
  size: "sm"
225
225
  }, null, 8, ["icon"])], 8, _e));
226
226
  }
227
- }), [["__scopeId", "data-v-4c423498"]]), ve = {
227
+ }), [["__scopeId", "data-v-4c423498"]]);
228
+ BigInt64Array, BigUint64Array;
229
+ //#endregion
230
+ //#region ../shared/src/formatNumber.ts
231
+ var ve = (/* @__PURE__ */ V(((e) => {
232
+ (function() {
233
+ var t = {
234
+ not_string: /[^s]/,
235
+ not_bool: /[^t]/,
236
+ not_type: /[^T]/,
237
+ not_primitive: /[^v]/,
238
+ number: /[diefg]/,
239
+ numeric_arg: /[bcdiefguxX]/,
240
+ json: /[j]/,
241
+ not_json: /[^j]/,
242
+ text: /^[^\x25]+/,
243
+ modulo: /^\x25{2}/,
244
+ placeholder: /^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,
245
+ key: /^([a-z_][a-z_\d]*)/i,
246
+ key_access: /^\.([a-z_][a-z_\d]*)/i,
247
+ index_access: /^\[(\d+)\]/,
248
+ sign: /^[+-]/
249
+ };
250
+ function n(e) {
251
+ return i(o(e), arguments);
252
+ }
253
+ function r(e, t) {
254
+ return n.apply(null, [e].concat(t || []));
255
+ }
256
+ function i(e, r) {
257
+ var i = 1, a = e.length, o, s = "", c, l, u, d, f, p, m, h;
258
+ for (c = 0; c < a; c++) if (typeof e[c] == "string") s += e[c];
259
+ else if (typeof e[c] == "object") {
260
+ if (u = e[c], u.keys) for (o = r[i], l = 0; l < u.keys.length; l++) {
261
+ if (o == null) throw Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", u.keys[l], u.keys[l - 1]));
262
+ o = o[u.keys[l]];
263
+ }
264
+ else o = u.param_no ? r[u.param_no] : r[i++];
265
+ if (t.not_type.test(u.type) && t.not_primitive.test(u.type) && o instanceof Function && (o = o()), t.numeric_arg.test(u.type) && typeof o != "number" && isNaN(o)) throw TypeError(n("[sprintf] expecting number but found %T", o));
266
+ switch (t.number.test(u.type) && (m = o >= 0), u.type) {
267
+ case "b":
268
+ o = parseInt(o, 10).toString(2);
269
+ break;
270
+ case "c":
271
+ o = String.fromCharCode(parseInt(o, 10));
272
+ break;
273
+ case "d":
274
+ case "i":
275
+ o = parseInt(o, 10);
276
+ break;
277
+ case "j":
278
+ o = JSON.stringify(o, null, u.width ? parseInt(u.width) : 0);
279
+ break;
280
+ case "e":
281
+ o = u.precision ? parseFloat(o).toExponential(u.precision) : parseFloat(o).toExponential();
282
+ break;
283
+ case "f":
284
+ o = u.precision ? parseFloat(o).toFixed(u.precision) : parseFloat(o);
285
+ break;
286
+ case "g":
287
+ o = u.precision ? String(Number(o.toPrecision(u.precision))) : parseFloat(o);
288
+ break;
289
+ case "o":
290
+ o = (parseInt(o, 10) >>> 0).toString(8);
291
+ break;
292
+ case "s":
293
+ o = String(o), o = u.precision ? o.substring(0, u.precision) : o;
294
+ break;
295
+ case "t":
296
+ o = String(!!o), o = u.precision ? o.substring(0, u.precision) : o;
297
+ break;
298
+ case "T":
299
+ o = Object.prototype.toString.call(o).slice(8, -1).toLowerCase(), o = u.precision ? o.substring(0, u.precision) : o;
300
+ break;
301
+ case "u":
302
+ o = parseInt(o, 10) >>> 0;
303
+ break;
304
+ case "v":
305
+ o = o.valueOf(), o = u.precision ? o.substring(0, u.precision) : o;
306
+ break;
307
+ case "x":
308
+ o = (parseInt(o, 10) >>> 0).toString(16);
309
+ break;
310
+ case "X":
311
+ o = (parseInt(o, 10) >>> 0).toString(16).toUpperCase();
312
+ break;
313
+ }
314
+ t.json.test(u.type) ? s += o : (t.number.test(u.type) && (!m || u.sign) ? (h = m ? "+" : "-", o = o.toString().replace(t.sign, "")) : h = "", f = u.pad_char ? u.pad_char === "0" ? "0" : u.pad_char.charAt(1) : " ", p = u.width - (h + o).length, d = u.width && p > 0 ? f.repeat(p) : "", s += u.align ? h + o + d : f === "0" ? h + d + o : d + h + o);
315
+ }
316
+ return s;
317
+ }
318
+ var a = Object.create(null);
319
+ function o(e) {
320
+ if (a[e]) return a[e];
321
+ for (var n = e, r, i = [], o = 0; n;) {
322
+ if ((r = t.text.exec(n)) !== null) i.push(r[0]);
323
+ else if ((r = t.modulo.exec(n)) !== null) i.push("%");
324
+ else if ((r = t.placeholder.exec(n)) !== null) {
325
+ if (r[2]) {
326
+ o |= 1;
327
+ var s = [], c = r[2], l = [];
328
+ if ((l = t.key.exec(c)) !== null) for (s.push(l[1]); (c = c.substring(l[0].length)) !== "";) if ((l = t.key_access.exec(c)) !== null) s.push(l[1]);
329
+ else if ((l = t.index_access.exec(c)) !== null) s.push(l[1]);
330
+ else throw SyntaxError("[sprintf] failed to parse named argument key");
331
+ else throw SyntaxError("[sprintf] failed to parse named argument key");
332
+ r[2] = s;
333
+ } else o |= 2;
334
+ if (o === 3) throw Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
335
+ i.push({
336
+ placeholder: r[0],
337
+ param_no: r[1],
338
+ keys: r[2],
339
+ sign: r[3],
340
+ pad_char: r[4],
341
+ align: r[5],
342
+ width: r[6],
343
+ precision: r[7],
344
+ type: r[8]
345
+ });
346
+ } else throw SyntaxError("[sprintf] unexpected placeholder");
347
+ n = n.substring(r[0].length);
348
+ }
349
+ return a[e] = i;
350
+ }
351
+ e !== void 0 && (e.sprintf = n, e.vsprintf = r), typeof window < "u" && (window.sprintf = n, window.vsprintf = r, typeof define == "function" && define.amd && define(function() {
352
+ return {
353
+ sprintf: n,
354
+ vsprintf: r
355
+ };
356
+ }));
357
+ })();
358
+ })))(), ye = new Set([
359
+ "plain",
360
+ "localized",
361
+ "percent",
362
+ "compact",
363
+ "scientific",
364
+ "engineering"
365
+ ]);
366
+ function be(e) {
367
+ return ye.has(e);
368
+ }
369
+ function xe(e) {
370
+ let t = e.indexOf(":");
371
+ if (t === -1) return be(e) ? {
372
+ preset: e,
373
+ digits: void 0
374
+ } : null;
375
+ let n = e.slice(0, t), r = e.slice(t + 1);
376
+ if (!be(n) || !/^\d+$/.test(r)) return null;
377
+ let i = Number(r);
378
+ return i > 100 ? null : {
379
+ preset: n,
380
+ digits: i
381
+ };
382
+ }
383
+ var Se = 20;
384
+ function Ce(e, t, n) {
385
+ let r = n === void 0 ? { maximumFractionDigits: Se } : {
386
+ minimumFractionDigits: n,
387
+ maximumFractionDigits: n
388
+ };
389
+ switch (t) {
390
+ case "plain": return n === void 0 ? String(e) : e.toFixed(n);
391
+ case "localized": return new Intl.NumberFormat(void 0, r).format(e);
392
+ case "percent": return new Intl.NumberFormat(void 0, {
393
+ style: "percent",
394
+ ...r
395
+ }).format(e);
396
+ case "compact": return new Intl.NumberFormat(void 0, {
397
+ notation: "compact",
398
+ ...r
399
+ }).format(e);
400
+ case "scientific": return new Intl.NumberFormat(void 0, {
401
+ notation: "scientific",
402
+ ...r
403
+ }).format(e);
404
+ case "engineering": return new Intl.NumberFormat(void 0, {
405
+ notation: "engineering",
406
+ ...r
407
+ }).format(e);
408
+ }
409
+ }
410
+ function we(e, t) {
411
+ if (!Number.isFinite(e) || t === void 0) return String(e);
412
+ if (typeof t == "function") return t(e);
413
+ if (t.includes("%")) return (0, ve.sprintf)(t, e);
414
+ let n = xe(t);
415
+ if (!n) {
416
+ let e = [...ye].join(", ");
417
+ throw Error(`formatNumber: invalid format ${JSON.stringify(t)}. Expected one of ${e} (optionally with ":N" digits), a printf format string containing "%", or a function.`);
418
+ }
419
+ return Ce(e, n.preset, n.digits);
420
+ }
421
+ //#endregion
422
+ //#region src/NumberInput/NumberInput.vue?vue&type=script&setup=true&lang.ts
423
+ var Te = {
228
424
  key: 1,
229
425
  class: "input-wrapper"
230
- }, ye = [
426
+ }, Ee = [
231
427
  "inputmode",
232
428
  "placeholder",
233
429
  "aria-invalid",
234
430
  "aria-required",
235
431
  "required"
236
- ], be = {
432
+ ], De = {
237
433
  key: 0,
238
434
  class: "input-suffix"
239
- }, xe = {
435
+ }, Oe = {
240
436
  key: 2,
241
437
  class: "input-error",
242
438
  role: "alert"
243
- }, Se = {
439
+ }, ke = {
244
440
  key: 3,
245
441
  class: "slider-container"
246
- }, Ce = { class: "slider-current" }, we = { class: "slider-labels" }, Te = /* @__PURE__ */ e(/* @__PURE__ */ p({
442
+ }, Ae = { class: "slider-current" }, je = { class: "slider-labels" }, Me = /* @__PURE__ */ e(/* @__PURE__ */ p({
247
443
  __name: "NumberInput",
248
- props: /* @__PURE__ */ m({
444
+ props: /* @__PURE__ */ h({
249
445
  label: {},
250
446
  hideLabel: { type: Boolean },
251
447
  placeholder: {},
@@ -259,6 +455,7 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
259
455
  numberType: {},
260
456
  required: { type: Boolean },
261
457
  decimals: {},
458
+ format: { type: [String, Function] },
262
459
  sliderDisplay: { type: Function }
263
460
  }, {
264
461
  modelValue: {},
@@ -277,94 +474,96 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
277
474
  "update:upper"
278
475
  ],
279
476
  setup(e) {
280
- let t = w(e, "modelValue"), n = w(e, "range"), r = w(e, "lower"), f = w(e, "upper"), p = e;
281
- function m(e) {
477
+ let t = T(e, "modelValue"), n = T(e, "range"), r = T(e, "lower"), f = T(e, "upper"), p = e;
478
+ function h(e) {
282
479
  return Array.isArray(e) && e.length === 2;
283
480
  }
284
- let g = ee()?.vnode.props, _ = !!g?.["onUpdate:range"] || !!g?.["onUpdate:lower"] || !!g?.["onUpdate:upper"] || n.value !== void 0 || r.value !== void 0 || f.value !== void 0, b = a(() => !!p.slider || _);
285
- te(() => {
286
- _ && g?.["onUpdate:modelValue"] && console.warn("[NumberInput] In range mode, the default `v-model` is unused. Bind `v-model:range` or `v-model:lower`/`v-model:upper` instead.");
481
+ let _ = m()?.vnode.props, v = !!_?.["onUpdate:range"] || !!_?.["onUpdate:lower"] || !!_?.["onUpdate:upper"] || n.value !== void 0 || r.value !== void 0 || f.value !== void 0, x = a(() => !!p.slider || v);
482
+ ee(() => {
483
+ v && _?.["onUpdate:modelValue"] && console.warn("[NumberInput] In range mode, the default `v-model` is unused. Bind `v-model:range` or `v-model:lower`/`v-model:upper` instead.");
287
484
  });
288
- let A = a(() => p.min ?? (p.percent, 0)), j = a(() => p.max ?? (p.percent ? 1 : 100)), re = a(() => p.step ?? (p.percent ? .01 : 1));
289
- function ie(e) {
485
+ let j = a(() => p.min ?? (p.percent, 0)), M = a(() => p.max ?? (p.percent ? 1 : 100)), ne = a(() => p.step ?? (p.percent ? .01 : 1));
486
+ function re(e) {
290
487
  if (!Number.isFinite(e) || Number.isInteger(e)) return 0;
291
488
  let t = parseFloat(Math.abs(e).toPrecision(12)).toString(), n = t.indexOf(".");
292
489
  if (n !== -1) return t.length - n - 1;
293
490
  let r = t.indexOf("e-");
294
491
  return r === -1 ? 0 : Number(t.slice(r + 2));
295
492
  }
296
- let le = a(() => p.step == null ? 1 : p.percent ? p.step * 100 : p.step), M = a(() => p.min == null ? p.percent ? 0 : void 0 : p.percent ? p.min * 100 : p.min), N = a(() => p.max == null ? p.percent ? 100 : void 0 : p.percent ? p.max * 100 : p.max), P = a(() => p.numberType === "integer" ? 0 : p.decimals == null ? ie(le.value) : Math.max(0, p.decimals));
297
- function ue(e, t) {
493
+ let ce = a(() => p.step == null ? 1 : p.percent ? p.step * 100 : p.step), N = a(() => p.min == null ? p.percent ? 0 : void 0 : p.percent ? p.min * 100 : p.min), P = a(() => p.max == null ? p.percent ? 100 : void 0 : p.percent ? p.max * 100 : p.max), F = a(() => p.numberType === "integer" ? 0 : p.decimals == null ? re(ce.value) : Math.max(0, p.decimals));
494
+ function le(e, t) {
298
495
  let n = 10 ** t;
299
496
  return Math.round(e * n) / n;
300
497
  }
301
- function F(e) {
498
+ function I(e) {
302
499
  if (e == null) return "";
303
- if (p.sliderDisplay) return p.sliderDisplay(e);
304
- let t = P.value;
305
- return p.percent ? (e * 100).toFixed(t) + "%" : e.toLocaleString("en-US", {
306
- minimumFractionDigits: t,
307
- maximumFractionDigits: t
500
+ let t = p.format ?? p.sliderDisplay;
501
+ if (t !== void 0) return we(e, t);
502
+ let n = F.value;
503
+ return p.percent ? (e * 100).toFixed(n) + "%" : e.toLocaleString("en-US", {
504
+ minimumFractionDigits: n,
505
+ maximumFractionDigits: n
308
506
  });
309
507
  }
310
- function I(e) {
311
- return e == null || !p.percent ? e : ue(e * 100, P.value);
312
- }
313
508
  function L(e) {
509
+ return e == null || !p.percent ? e : le(e * 100, F.value);
510
+ }
511
+ function R(e) {
314
512
  return p.percent ? e / 100 : e;
315
513
  }
316
- function de(e) {
514
+ function ue(e) {
317
515
  if (p.numberType !== "integer") return e;
318
- let t = I(e);
319
- return t == null ? e : L(Math.trunc(t));
516
+ let t = L(e);
517
+ return t == null ? e : R(Math.trunc(t));
320
518
  }
321
- function R(e) {
519
+ function de(e) {
322
520
  return e == null ? "" : e.toLocaleString("en-US");
323
521
  }
324
522
  function z(e) {
325
523
  if (e == null) return "";
326
- let t = P.value;
524
+ if (p.format !== void 0) return we(e, p.format);
525
+ let t = F.value;
327
526
  if (t > 0) return e.toLocaleString("en-US", {
328
527
  minimumFractionDigits: t,
329
528
  maximumFractionDigits: t
330
529
  });
331
- let n = R(e);
530
+ let n = de(e);
332
531
  return p.numberType === "float" && Number.isInteger(e) ? n + ".0" : n;
333
532
  }
334
533
  function B(e) {
335
534
  return e.replace(/,/g, "");
336
535
  }
337
- function V() {
338
- if (_) {
536
+ function fe() {
537
+ if (v) {
339
538
  let e = n.value, t = r.value ?? e?.[0], i = f.value ?? e?.[1];
340
- return t !== void 0 || i !== void 0 ? [t ?? A.value, i ?? j.value] : void 0;
539
+ return t !== void 0 || i !== void 0 ? [t ?? j.value, i ?? M.value] : void 0;
341
540
  }
342
541
  return t.value;
343
542
  }
344
- let H = V(), U = y(z(I(typeof H == "number" ? H : void 0)));
345
- function W(e) {
346
- return _ ? m(e) ? [e[0], e[1]] : [A.value, j.value] : typeof e == "number" ? [e] : [A.value];
543
+ let V = fe(), H = b(z(L(typeof V == "number" ? V : void 0)));
544
+ function U(e) {
545
+ return v ? h(e) ? [e[0], e[1]] : [j.value, M.value] : typeof e == "number" ? [e] : [j.value];
347
546
  }
348
- let G = y(W(H)), K = y();
349
- E([
547
+ let W = b(U(V)), G = b();
548
+ D([
350
549
  t,
351
550
  n,
352
551
  r,
353
552
  f
354
553
  ], () => {
355
- let e = V();
356
- !_ && !m(e) && (U.value = z(I(e))), G.value = W(e), K.value = Y(e);
554
+ let e = fe();
555
+ !v && !h(e) && (H.value = z(L(e))), W.value = U(e), G.value = Y(e);
357
556
  });
358
- let fe = /[^0-9,.\-+eE]/g;
359
- function pe(e) {
557
+ let pe = /[^0-9,.\-+eE]/g;
558
+ function me(e) {
360
559
  let t = e.target, n = B(t.value);
361
560
  if (n === "" || n === "-" || n.endsWith(".") || n.includes(".") && n.endsWith("0")) return;
362
561
  let r = Number(n);
363
562
  if (Number.isNaN(r)) return;
364
- let i = R(r);
563
+ let i = de(r);
365
564
  if (i === t.value) return;
366
565
  let a = t.selectionStart ?? 0, o = (t.value.slice(0, a).match(/,/g) || []).length;
367
- U.value = i, requestAnimationFrame(() => {
566
+ H.value = i, requestAnimationFrame(() => {
368
567
  let e = a - o, n = 0, r = 0;
369
568
  for (let t = 0; t < i.length; t++) if (i[t] !== "," && r++, r >= e) {
370
569
  n = t + 1;
@@ -373,26 +572,26 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
373
572
  r < e && (n = i.length), t.setSelectionRange(n, n);
374
573
  });
375
574
  }
376
- function me() {
377
- if (X(), U.value.trim() === "") return;
378
- let e = Number(B(U.value));
379
- Number.isNaN(e) || (U.value = z(e));
380
- }
381
- let q = null;
382
575
  function he() {
383
- !p.live || b.value || (q && clearTimeout(q), q = setTimeout(X, 300));
576
+ if (X(), H.value.trim() === "") return;
577
+ let e = Number(B(H.value));
578
+ Number.isNaN(e) || (H.value = z(e));
579
+ }
580
+ let K = null;
581
+ function q() {
582
+ !p.live || x.value || (K && clearTimeout(K), K = setTimeout(X, 300));
384
583
  }
385
584
  function ge() {
386
- !p.live || b.value || (q && clearTimeout(q), X());
585
+ !p.live || x.value || (K && clearTimeout(K), X());
387
586
  }
388
587
  function J(e) {
389
- let t = I(e);
390
- if (M.value != null && t < M.value) return `Min ${M.value}${p.percent ? "%" : ""}`;
391
- if (N.value != null && t > N.value) return `Max ${N.value}${p.percent ? "%" : ""}`;
588
+ let t = L(e);
589
+ if (N.value != null && t < N.value) return `Min ${N.value}${p.percent ? "%" : ""}`;
590
+ if (P.value != null && t > P.value) return `Max ${P.value}${p.percent ? "%" : ""}`;
392
591
  }
393
592
  function Y(e) {
394
593
  if (e == null) return p.required ? "Required" : void 0;
395
- if (m(e)) {
594
+ if (h(e)) {
396
595
  let t = J(e[0]);
397
596
  if (t) return `${t} (lower)`;
398
597
  let n = J(e[1]);
@@ -402,89 +601,89 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
402
601
  }
403
602
  function X() {
404
603
  let e = t.value;
405
- if (U.value.trim() === "") {
406
- t.value = void 0, G.value = W(void 0), K.value = Y(void 0);
604
+ if (H.value.trim() === "") {
605
+ t.value = void 0, W.value = U(void 0), G.value = Y(void 0);
407
606
  return;
408
607
  }
409
- let n = U.value.replace(fe, "");
608
+ let n = H.value.replace(pe, "");
410
609
  if (!/\d/.test(n)) {
411
- U.value = z(I(e)), K.value = Y(e);
610
+ H.value = z(L(e)), G.value = Y(e);
412
611
  return;
413
612
  }
414
- n !== U.value && (U.value = n);
613
+ n !== H.value && (H.value = n);
415
614
  let r = Number(B(n));
416
615
  if (Number.isNaN(r)) return;
417
- p.numberType === "integer" && (r = Math.trunc(r), U.value = z(r));
418
- let i = L(r), a = Y(i);
419
- K.value = a, !a && (t.value = i, G.value = [i]);
616
+ p.numberType === "integer" && (r = Math.trunc(r), H.value = z(r));
617
+ let i = R(r), a = Y(i);
618
+ G.value = a, !a && (t.value = i, W.value = [i]);
420
619
  }
421
- function _e(e, i) {
422
- let a = e.map(de);
423
- G.value = a, _ || (U.value = z(I(a[0]))), i && (_ ? (n.value = [a[0], a[1]], r.value = a[0], f.value = a[1]) : t.value = a[0]);
620
+ function Z(e, i) {
621
+ let a = e.map(ue);
622
+ W.value = a, v || (H.value = z(L(a[0]))), i && (v ? (n.value = [a[0], a[1]], r.value = a[0], f.value = a[1]) : t.value = a[0]);
424
623
  }
425
- function Q(e) {
426
- if (p.label) return _ ? e === 0 ? `${p.label} (lower)` : `${p.label} (upper)` : p.label;
624
+ function _e(e) {
625
+ if (p.label) return v ? e === 0 ? `${p.label} (lower)` : `${p.label} (upper)` : p.label;
427
626
  }
428
- function Te(e) {
429
- e && _e(e, !!p.live);
627
+ function $(e) {
628
+ e && Z(e, !!p.live);
430
629
  }
431
- function Ee(e) {
432
- e && _e(e, !0);
630
+ function ve(e) {
631
+ e && Z(e, !0);
433
632
  }
434
- function $(e, n) {
633
+ function ye(e, n) {
435
634
  e.preventDefault();
436
- let r = Number(B(U.value)), i = (Number.isNaN(r) ? 0 : r) + le.value * (e.shiftKey ? 10 : 1) * n;
437
- p.numberType === "integer" && (i = Math.trunc(i)), M.value != null && (i = Math.max(i, M.value)), N.value != null && (i = Math.min(i, N.value)), U.value = z(i);
438
- let a = L(i);
439
- t.value = a, G.value = [a];
440
- }
441
- return (e, t) => (v(), o(x(p.label ? "label" : "div"), { class: h(p.label ? "input-label" : void 0) }, {
442
- default: D(() => [
443
- p.label ? (v(), c("span", {
635
+ let r = Number(B(H.value)), i = (Number.isNaN(r) ? 0 : r) + ce.value * (e.shiftKey ? 10 : 1) * n;
636
+ p.numberType === "integer" && (i = Math.trunc(i)), N.value != null && (i = Math.max(i, N.value)), P.value != null && (i = Math.min(i, P.value)), H.value = z(i);
637
+ let a = R(i);
638
+ t.value = a, W.value = [a];
639
+ }
640
+ return (e, t) => (y(), o(S(p.label ? "label" : "div"), { class: g(p.label ? "input-label" : void 0) }, {
641
+ default: O(() => [
642
+ p.label ? (y(), c("span", {
444
643
  key: 0,
445
- class: h(["input-label-row", { "visually-hidden": p.hideLabel }])
446
- }, [u(S(p.label) + " ", 1), p.hint && !p.hideLabel ? (v(), o(Z, {
644
+ class: g(["input-label-row", { "visually-hidden": p.hideLabel }])
645
+ }, [u(C(p.label) + " ", 1), p.hint && !p.hideLabel ? (y(), o(Q, {
447
646
  key: 0,
448
647
  text: p.hint
449
648
  }, null, 8, ["text"])) : s("", !0)], 2)) : s("", !0),
450
- b.value ? s("", !0) : (v(), c("span", ve, [O(l("input", {
649
+ x.value ? s("", !0) : (y(), c("span", Te, [k(l("input", {
451
650
  type: "text",
452
651
  inputmode: p.numberType === "integer" ? "numeric" : "decimal",
453
- "onUpdate:modelValue": t[0] ||= (e) => U.value = e,
652
+ "onUpdate:modelValue": t[0] ||= (e) => H.value = e,
454
653
  placeholder: p.placeholder,
455
- "aria-invalid": !!K.value,
654
+ "aria-invalid": !!G.value,
456
655
  "aria-required": p.required || void 0,
457
656
  required: p.required,
458
- onBlur: me,
657
+ onBlur: he,
459
658
  onKeydown: [
460
- k(X, ["enter"]),
461
- t[1] ||= k((e) => $(e, 1), ["up"]),
462
- t[2] ||= k((e) => $(e, -1), ["down"])
659
+ A(X, ["enter"]),
660
+ t[1] ||= A((e) => ye(e, 1), ["up"]),
661
+ t[2] ||= A((e) => ye(e, -1), ["down"])
463
662
  ],
464
663
  onInput: t[3] ||= (e) => {
465
- pe(e), he();
664
+ me(e), q();
466
665
  },
467
666
  onChange: ge
468
- }, null, 40, ye), [[T, U.value]]), p.percent ? (v(), c("span", be, "%")) : s("", !0)])),
469
- K.value ? (v(), c("span", xe, S(K.value), 1)) : s("", !0),
470
- b.value ? (v(), c("div", Se, [d(C(oe), {
667
+ }, null, 40, Ee), [[E, H.value]]), p.percent ? (y(), c("span", De, "%")) : s("", !0)])),
668
+ G.value ? (y(), c("span", Oe, C(G.value), 1)) : s("", !0),
669
+ x.value ? (y(), c("div", ke, [d(w(ae), {
471
670
  class: "slider-root",
472
- "model-value": G.value,
473
- min: A.value,
474
- max: j.value,
475
- step: re.value,
476
- "onUpdate:modelValue": Te,
477
- onValueCommit: Ee
671
+ "model-value": W.value,
672
+ min: j.value,
673
+ max: M.value,
674
+ step: ne.value,
675
+ "onUpdate:modelValue": $,
676
+ onValueCommit: ve
478
677
  }, {
479
- default: D(() => [d(C(ce), { class: "slider-track" }, {
480
- default: D(() => [d(C(ae), { class: "slider-range" })]),
678
+ default: O(() => [d(w(se), { class: "slider-track" }, {
679
+ default: O(() => [d(w(ie), { class: "slider-range" })]),
481
680
  _: 1
482
- }), (v(!0), c(i, null, ne(G.value, (e, t) => (v(), o(C(se), {
681
+ }), (y(!0), c(i, null, te(W.value, (e, t) => (y(), o(w(oe), {
483
682
  key: t,
484
683
  class: "slider-thumb",
485
- "aria-label": Q(t)
684
+ "aria-label": _e(t)
486
685
  }, {
487
- default: D(() => [l("span", Ce, S(F(e)), 1)]),
686
+ default: O(() => [l("span", Ae, C(I(e)), 1)]),
488
687
  _: 2
489
688
  }, 1032, ["aria-label"]))), 128))]),
490
689
  _: 1
@@ -493,26 +692,26 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
493
692
  "min",
494
693
  "max",
495
694
  "step"
496
- ]), l("div", we, [l("span", null, S(F(A.value)), 1), l("span", null, S(F(j.value)), 1)])])) : s("", !0)
695
+ ]), l("div", je, [l("span", null, C(I(j.value)), 1), l("span", null, C(I(M.value)), 1)])])) : s("", !0)
497
696
  ]),
498
697
  _: 1
499
698
  }, 8, ["class"]));
500
699
  }
501
- }), [["__scopeId", "data-v-db116f99"]]), Ee = ["data-size", "aria-label"], $ = /* @__PURE__ */ p({
700
+ }), [["__scopeId", "data-v-b123853e"]]), Ne = ["data-size", "aria-label"], Pe = /* @__PURE__ */ p({
502
701
  __name: "Spinner",
503
702
  props: {
504
703
  size: { default: "sm" },
505
704
  label: {}
506
705
  },
507
706
  setup(e) {
508
- return (t, n) => (v(), c("span", {
707
+ return (t, n) => (y(), c("span", {
509
708
  class: "Spinner",
510
709
  "data-size": e.size,
511
710
  role: "status",
512
711
  "aria-label": e.label ?? "Loading"
513
- }, null, 8, Ee));
712
+ }, null, 8, Ne));
514
713
  }
515
- }), De = /* @__PURE__ */ p({
714
+ }), Fe = /* @__PURE__ */ p({
516
715
  __name: "ParamEditor",
517
716
  props: {
518
717
  value: {},
@@ -524,10 +723,10 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
524
723
  setup(e) {
525
724
  let t = f({
526
725
  loader: () => import("./ParamEditorImpl-CcsMO4k-.js"),
527
- loadingComponent: $,
726
+ loadingComponent: Pe,
528
727
  delay: 100
529
728
  });
530
- return (n, r) => (v(), o(C(t), {
729
+ return (n, r) => (y(), o(w(t), {
531
730
  value: e.value,
532
731
  format: e.format,
533
732
  height: e.height,
@@ -540,9 +739,9 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
540
739
  "filename"
541
740
  ]));
542
741
  }
543
- }), Oe = ["data-collapsed"], ke = { class: "SidebarRail" }, Ae = { class: "Sidebar" }, je = { class: "SidebarScroll" }, Me = { class: "SidebarHeader" }, Ne = { class: "Main" }, Pe = { class: "TabsBar" }, Fe = { class: "TabsBarEnd" }, Ie = { class: "MainScroll" }, Le = { class: "MainContent" }, Re = { class: "Topbar" }, ze = { class: "TopbarEnd" }, Be = { class: "MainScroll" }, Ve = { class: "MainContent" }, He = /* @__PURE__ */ e(/* @__PURE__ */ p({
742
+ }), Ie = ["data-collapsed"], Le = { class: "SidebarRail" }, Re = { class: "Sidebar" }, ze = { class: "SidebarScroll" }, Be = { class: "SidebarHeader" }, Ve = { class: "Main" }, He = { class: "TabsBar" }, Ue = { class: "TabsBarEnd" }, We = { class: "MainScroll" }, Ge = { class: "MainContent" }, Ke = { class: "Topbar" }, qe = { class: "TopbarEnd" }, Je = { class: "MainScroll" }, Ye = { class: "MainContent" }, Xe = /* @__PURE__ */ e(/* @__PURE__ */ p({
544
743
  __name: "SidebarLayout",
545
- props: /* @__PURE__ */ m({
744
+ props: /* @__PURE__ */ h({
546
745
  hideTopbar: { type: Boolean },
547
746
  tabs: {}
548
747
  }, {
@@ -551,84 +750,84 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
551
750
  }),
552
751
  emits: ["update:tab"],
553
752
  setup(e) {
554
- let t = ee()?.appContext.config.globalProperties, n = t?.$router, r = e, f = w(e, "tab"), p = window.matchMedia("(max-width: 767px)"), m = y(p.matches), h = y(p.matches);
555
- function g(e) {
556
- m.value = e.matches, h.value = e.matches;
557
- }
558
- te(() => {
559
- p.addEventListener("change", g);
560
- }), _(() => {
561
- p.removeEventListener("change", g);
753
+ let t = m()?.appContext.config.globalProperties, n = t?.$router, r = e, f = T(e, "tab"), p = window.matchMedia("(max-width: 767px)"), h = b(p.matches), g = b(p.matches);
754
+ function _(e) {
755
+ h.value = e.matches, g.value = e.matches;
756
+ }
757
+ ee(() => {
758
+ p.addEventListener("change", _);
759
+ }), v(() => {
760
+ p.removeEventListener("change", _);
562
761
  });
563
- function x() {
564
- h.value = !h.value;
762
+ function S() {
763
+ g.value = !g.value;
565
764
  }
566
- let T = a(() => !!n && r.tabs?.some((e) => e.to)), O = a({
765
+ let E = a(() => !!n && r.tabs?.some((e) => e.to)), k = a({
567
766
  get() {
568
767
  return f.value ?? r.tabs?.[0]?.value;
569
768
  },
570
769
  set(e) {
571
- if (e && (f.value = e, T.value && n)) {
770
+ if (e && (f.value = e, E.value && n)) {
572
771
  let t = r.tabs?.find((t) => t.value === e);
573
772
  t?.to && n.push(t.to);
574
773
  }
575
774
  }
576
775
  });
577
- return t && E(() => t.$route?.path, (e) => {
578
- if (!e || !T.value) return;
776
+ return t && D(() => t.$route?.path, (e) => {
777
+ if (!e || !E.value) return;
579
778
  let t = r.tabs?.find((t) => t.to === e);
580
779
  t && (f.value = t.value);
581
- }, { immediate: !0 }), (t, n) => (v(), c("div", {
780
+ }, { immediate: !0 }), (t, n) => (y(), c("div", {
582
781
  class: "SidebarLayout",
583
- "data-collapsed": h.value
584
- }, [l("div", ke, [l("aside", Ae, [l("div", je, [l("div", Me, [l("button", {
782
+ "data-collapsed": g.value
783
+ }, [l("div", Le, [l("aside", Re, [l("div", ze, [l("div", Be, [l("button", {
585
784
  type: "button",
586
785
  class: "Toggle",
587
786
  "aria-label": "Collapse sidebar",
588
787
  title: "Collapse sidebar",
589
- onClick: x
590
- }, [d(X, {
788
+ onClick: S
789
+ }, [d(Z, {
591
790
  icon: "keyboard_double_arrow_left",
592
791
  size: "sm"
593
- })])]), b(t.$slots, "sidebar", {}, void 0, !0)])]), l("button", {
792
+ })])]), x(t.$slots, "sidebar", {}, void 0, !0)])]), l("button", {
594
793
  type: "button",
595
794
  class: "Toggle Toggle--expand",
596
795
  "aria-label": "Expand sidebar",
597
796
  title: "Expand sidebar",
598
- onClick: x
599
- }, [d(X, {
797
+ onClick: S
798
+ }, [d(Z, {
600
799
  icon: "keyboard_double_arrow_right",
601
800
  size: "sm"
602
- })])]), l("main", Ne, [e.tabs?.length ? (v(), o(C(ue), {
801
+ })])]), l("main", Ve, [e.tabs?.length ? (y(), o(w(le), {
603
802
  key: 0,
604
- "model-value": O.value,
803
+ "model-value": k.value,
605
804
  class: "TabsLayout",
606
- "onUpdate:modelValue": n[0] ||= (e) => O.value = e
805
+ "onUpdate:modelValue": n[0] ||= (e) => k.value = e
607
806
  }, {
608
- default: D(() => [l("div", Pe, [
609
- m.value && h.value ? (v(), c("button", {
807
+ default: O(() => [l("div", He, [
808
+ h.value && g.value ? (y(), c("button", {
610
809
  key: 0,
611
810
  type: "button",
612
811
  class: "Toggle",
613
812
  "aria-label": "Expand sidebar",
614
813
  title: "Expand sidebar",
615
- onClick: x
616
- }, [d(X, {
814
+ onClick: S
815
+ }, [d(Z, {
617
816
  icon: "keyboard_double_arrow_right",
618
817
  size: "sm"
619
818
  })])) : s("", !0),
620
- d(C(P), {
819
+ d(w(F), {
621
820
  class: "TabsList",
622
821
  "aria-label": "Tabs"
623
822
  }, {
624
- default: D(() => [(v(!0), c(i, null, ne(e.tabs, (e) => (v(), o(C(F), {
823
+ default: O(() => [(y(!0), c(i, null, te(e.tabs, (e) => (y(), o(w(I), {
625
824
  key: e.value,
626
825
  value: e.value,
627
826
  class: "TabsTrigger"
628
827
  }, {
629
- default: D(() => [u(S(e.label), 1)]),
828
+ default: O(() => [u(C(e.label), 1)]),
630
829
  _: 2
631
- }, 1032, ["value"]))), 128)), d(C(N), {
830
+ }, 1032, ["value"]))), 128)), d(w(P), {
632
831
  class: "TabsIndicator",
633
832
  style: {
634
833
  width: "var(--reka-tabs-indicator-size)",
@@ -637,27 +836,27 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
637
836
  })]),
638
837
  _: 1
639
838
  }),
640
- l("div", Fe, [b(t.$slots, "topbar", {}, void 0, !0), e.hideTopbar ? s("", !0) : (v(), o(Q, { key: 0 }))])
641
- ]), l("div", Ie, [l("div", Le, [b(t.$slots, "default", {}, void 0, !0)])])]),
839
+ l("div", Ue, [x(t.$slots, "topbar", {}, void 0, !0), e.hideTopbar ? s("", !0) : (y(), o($, { key: 0 }))])
840
+ ]), l("div", We, [l("div", Ge, [x(t.$slots, "default", {}, void 0, !0)])])]),
642
841
  _: 3
643
- }, 8, ["model-value"])) : (v(), c(i, { key: 1 }, [l("div", Re, [m.value && h.value ? (v(), c("button", {
842
+ }, 8, ["model-value"])) : (y(), c(i, { key: 1 }, [l("div", Ke, [h.value && g.value ? (y(), c("button", {
644
843
  key: 0,
645
844
  type: "button",
646
845
  class: "Toggle",
647
846
  "aria-label": "Expand sidebar",
648
847
  title: "Expand sidebar",
649
- onClick: x
650
- }, [d(X, {
848
+ onClick: S
849
+ }, [d(Z, {
651
850
  icon: "keyboard_double_arrow_right",
652
851
  size: "sm"
653
- })])) : s("", !0), l("div", ze, [b(t.$slots, "topbar", {}, void 0, !0), e.hideTopbar ? s("", !0) : (v(), o(Q, { key: 0 }))])]), l("div", Be, [l("div", Ve, [b(t.$slots, "default", {}, void 0, !0)])])], 64))])], 8, Oe));
852
+ })])) : s("", !0), l("div", qe, [x(t.$slots, "topbar", {}, void 0, !0), e.hideTopbar ? s("", !0) : (y(), o($, { key: 0 }))])]), l("div", Je, [l("div", Ye, [x(t.$slots, "default", {}, void 0, !0)])])], 64))])], 8, Ie));
654
853
  }
655
- }), [["__scopeId", "data-v-6d59601d"]]), Ue = {
854
+ }), [["__scopeId", "data-v-6d59601d"]]), Ze = {
656
855
  key: 0,
657
856
  class: "input-label"
658
- }, We = ["placeholder"], Ge = { key: 1 }, Ke = ["placeholder"], qe = /* @__PURE__ */ e(/* @__PURE__ */ p({
857
+ }, Qe = ["placeholder"], $e = { key: 1 }, et = ["placeholder"], tt = /* @__PURE__ */ e(/* @__PURE__ */ p({
659
858
  __name: "TextInput",
660
- props: /* @__PURE__ */ m({
859
+ props: /* @__PURE__ */ h({
661
860
  label: {},
662
861
  hideLabel: { type: Boolean },
663
862
  placeholder: {},
@@ -668,34 +867,34 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
668
867
  }),
669
868
  emits: ["update:modelValue"],
670
869
  setup(e) {
671
- let t = w(e, "modelValue"), n = y(t.value);
672
- E(t, (e) => {
870
+ let t = T(e, "modelValue"), n = b(t.value);
871
+ D(t, (e) => {
673
872
  n.value = e;
674
873
  });
675
874
  function r() {
676
875
  t.value = n.value;
677
876
  }
678
877
  let i = e;
679
- return (e, t) => i.label ? (v(), c("label", Ue, [l("span", { class: h(["input-label-row", { "visually-hidden": i.hideLabel }]) }, [u(S(i.label) + " ", 1), i.hint && !i.hideLabel ? (v(), o(Z, {
878
+ return (e, t) => i.label ? (y(), c("label", Ze, [l("span", { class: g(["input-label-row", { "visually-hidden": i.hideLabel }]) }, [u(C(i.label) + " ", 1), i.hint && !i.hideLabel ? (y(), o(Q, {
680
879
  key: 0,
681
880
  text: i.hint
682
- }, null, 8, ["text"])) : s("", !0)], 2), O(l("input", {
881
+ }, null, 8, ["text"])) : s("", !0)], 2), k(l("input", {
683
882
  type: "text",
684
883
  "onUpdate:modelValue": t[0] ||= (e) => n.value = e,
685
884
  placeholder: i.placeholder,
686
885
  onBlur: r,
687
- onKeydown: k(r, ["enter"])
688
- }, null, 40, We), [[T, n.value]])])) : (v(), c("div", Ge, [O(l("input", {
886
+ onKeydown: A(r, ["enter"])
887
+ }, null, 40, Qe), [[E, n.value]])])) : (y(), c("div", $e, [k(l("input", {
689
888
  type: "text",
690
889
  "onUpdate:modelValue": t[1] ||= (e) => n.value = e,
691
890
  placeholder: i.placeholder,
692
891
  onBlur: r,
693
- onKeydown: k(r, ["enter"])
694
- }, null, 40, Ke), [[T, n.value]])]));
892
+ onKeydown: A(r, ["enter"])
893
+ }, null, 40, et), [[E, n.value]])]));
695
894
  }
696
- }), [["__scopeId", "data-v-3f3d20cc"]]), Je = { class: "toggle" }, Ye = ["for"], Xe = /* @__PURE__ */ e(/* @__PURE__ */ p({
895
+ }), [["__scopeId", "data-v-3f3d20cc"]]), nt = { class: "toggle" }, rt = ["for"], it = /* @__PURE__ */ e(/* @__PURE__ */ p({
697
896
  __name: "Toggle",
698
- props: /* @__PURE__ */ m({
897
+ props: /* @__PURE__ */ h({
699
898
  label: {},
700
899
  hint: {},
701
900
  disabled: { type: Boolean }
@@ -705,21 +904,21 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
705
904
  }),
706
905
  emits: ["update:modelValue"],
707
906
  setup(e) {
708
- let t = w(e, "modelValue"), n = e, r = V();
709
- return (i, a) => (v(), c("div", Je, [
710
- l("label", { for: C(r) }, S(e.label), 9, Ye),
711
- n.hint ? (v(), o(Z, {
907
+ let t = T(e, "modelValue"), n = e, r = fe();
908
+ return (i, a) => (y(), c("div", nt, [
909
+ l("label", { for: w(r) }, C(e.label), 9, rt),
910
+ n.hint ? (y(), o(Q, {
712
911
  key: 0,
713
912
  text: n.hint
714
913
  }, null, 8, ["text"])) : s("", !0),
715
- d(C(le), {
716
- id: C(r),
914
+ d(w(ce), {
915
+ id: w(r),
717
916
  modelValue: t.value,
718
917
  "onUpdate:modelValue": a[0] ||= (e) => t.value = e,
719
918
  disabled: e.disabled,
720
919
  class: "switch"
721
920
  }, {
722
- default: D(() => [d(C(M), { class: "thumb" })]),
921
+ default: O(() => [d(w(N), { class: "thumb" })]),
723
922
  _: 1
724
923
  }, 8, [
725
924
  "id",
@@ -730,4 +929,4 @@ var J = /* @__PURE__ */ e(/* @__PURE__ */ p({
730
929
  }
731
930
  }), [["__scopeId", "data-v-9916c71e"]]);
732
931
  //#endregion
733
- export { n as Box, t as Button, W as Container, G as Expander, J as Grid, Z as Hint, X as Icon, Q as LightDarkToggle, Te as NumberInput, De as ParamEditor, r as SelectBox, He as SidebarLayout, $ as Spinner, qe as TextInput, Xe as Toggle };
932
+ export { n as Box, t as Button, W as Container, G as Expander, Y as Grid, Q as Hint, Z as Icon, $ as LightDarkToggle, Me as NumberInput, Fe as ParamEditor, r as SelectBox, Xe as SidebarLayout, Pe as Spinner, tt as TextInput, it as Toggle };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cfasim-ui/components",
3
- "version": "0.4.7",
3
+ "version": "0.4.9",
4
4
  "type": "module",
5
5
  "description": "Vue 3 UI components for cfasim-ui",
6
6
  "license": "Apache-2.0",
@@ -37,16 +37,17 @@
37
37
  "reka-ui": "^2.9.2",
38
38
  "smol-toml": "^1.6.1",
39
39
  "vue-codemirror": "^6.1.1",
40
- "yaml": "^2.9.0"
40
+ "yaml": "^2.9.0",
41
+ "@cfasim-ui/shared": "0.4.9"
41
42
  },
42
43
  "peerDependencies": {
43
44
  "vue": "^3.5.0"
44
45
  },
45
46
  "devDependencies": {
46
47
  "@vitejs/plugin-vue": "^6.0.5",
47
- "vite-plugin-dts": "^4.5.4",
48
48
  "@vue/test-utils": "^2.4.6",
49
49
  "happy-dom": "^20.8.9",
50
+ "vite-plugin-dts": "^4.5.4",
50
51
  "vitest": "^4.1.0"
51
52
  },
52
53
  "scripts": {