@editora/ui-core 0.1.24 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +339 -5
- package/dist/accordion.cjs.js +13 -12
- package/dist/accordion.esm.js +13 -12
- package/dist/alert-dialog.cjs.js +76 -45
- package/dist/alert-dialog.esm.js +179 -135
- package/dist/alert.cjs.js +41 -32
- package/dist/alert.esm.js +79 -70
- package/dist/animated-beam.cjs.js +42 -50
- package/dist/animated-beam.esm.js +47 -55
- package/dist/animated-list.cjs.js +11 -27
- package/dist/animated-list.esm.js +12 -28
- package/dist/animated-text.cjs.js +4 -4
- package/dist/animated-text.esm.js +4 -4
- package/dist/app-header.cjs.js +5 -5
- package/dist/app-header.esm.js +6 -6
- package/dist/aspect-ratio.cjs.js +10 -12
- package/dist/aspect-ratio.esm.js +11 -13
- package/dist/avatar.cjs.js +13 -17
- package/dist/avatar.esm.js +13 -17
- package/dist/badge.cjs.js +27 -22
- package/dist/badge.esm.js +32 -27
- package/dist/block-controls.cjs.js +11 -12
- package/dist/block-controls.esm.js +8 -9
- package/dist/box.cjs.js +2 -3
- package/dist/box.esm.js +2 -3
- package/dist/breadcrumb.cjs.js +12 -18
- package/dist/breadcrumb.esm.js +11 -17
- package/dist/button.cjs.js +1 -1
- package/dist/button.esm.js +1 -1
- package/dist/{calendar-B3PUKHQm.mjs → calendar-DmxiZrR7.mjs} +126 -117
- package/dist/{calendar-D-mXMgqc.js → calendar-o273O28D.js} +53 -44
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.esm.js +1 -1
- package/dist/card.cjs.js +6 -7
- package/dist/card.esm.js +5 -6
- package/dist/chart.cjs.js +52 -52
- package/dist/chart.esm.js +95 -95
- package/dist/checkbox.cjs.js +19 -15
- package/dist/checkbox.esm.js +19 -15
- package/dist/collapsible.cjs.js +7 -11
- package/dist/collapsible.esm.js +7 -11
- package/dist/color-picker.cjs.js +36 -17
- package/dist/color-picker.esm.js +132 -113
- package/dist/combobox.cjs.js +57 -54
- package/dist/combobox.esm.js +62 -58
- package/dist/command-palette.cjs.js +1 -0
- package/dist/command-palette.esm.js +1 -0
- package/dist/command.cjs.js +32 -14
- package/dist/command.esm.js +46 -28
- package/dist/components/date-time-utils.d.ts.map +1 -1
- package/dist/components/gantt-schedule.d.ts +79 -0
- package/dist/components/gantt-schedule.d.ts.map +1 -0
- package/dist/components/ui-accordion.d.ts.map +1 -1
- package/dist/components/ui-alert-dialog.d.ts +2 -0
- package/dist/components/ui-alert-dialog.d.ts.map +1 -1
- package/dist/components/ui-alert.d.ts.map +1 -1
- package/dist/components/ui-animated-beam.d.ts.map +1 -1
- package/dist/components/ui-animated-list.d.ts.map +1 -1
- package/dist/components/ui-aspect-ratio.d.ts.map +1 -1
- package/dist/components/ui-avatar.d.ts.map +1 -1
- package/dist/components/ui-badge.d.ts.map +1 -1
- package/dist/components/ui-block-controls.d.ts.map +1 -1
- package/dist/components/ui-box.d.ts.map +1 -1
- package/dist/components/ui-breadcrumb.d.ts.map +1 -1
- package/dist/components/ui-button.d.ts.map +1 -1
- package/dist/components/ui-calendar.d.ts.map +1 -1
- package/dist/components/ui-card.d.ts.map +1 -1
- package/dist/components/ui-checkbox.d.ts.map +1 -1
- package/dist/components/ui-collapsible.d.ts.map +1 -1
- package/dist/components/ui-color-picker.d.ts.map +1 -1
- package/dist/components/ui-combobox.d.ts.map +1 -1
- package/dist/components/ui-command-palette.d.ts.map +1 -1
- package/dist/components/ui-command.d.ts.map +1 -1
- package/dist/components/ui-container.d.ts.map +1 -1
- package/dist/components/ui-context-menu.d.ts.map +1 -1
- package/dist/components/ui-data-table.d.ts +7 -0
- package/dist/components/ui-data-table.d.ts.map +1 -1
- package/dist/components/ui-date-picker.d.ts.map +1 -1
- package/dist/components/ui-date-range-picker.d.ts.map +1 -1
- package/dist/components/ui-date-range-time-picker.d.ts.map +1 -1
- package/dist/components/ui-date-time-picker.d.ts.map +1 -1
- package/dist/components/ui-dialog.d.ts +2 -0
- package/dist/components/ui-dialog.d.ts.map +1 -1
- package/dist/components/ui-dock.d.ts.map +1 -1
- package/dist/components/ui-drawer.d.ts.map +1 -1
- package/dist/components/ui-dropdown.d.ts.map +1 -1
- package/dist/components/ui-empty-state.d.ts.map +1 -1
- package/dist/components/ui-field.d.ts.map +1 -1
- package/dist/components/ui-fieldset.d.ts.map +1 -1
- package/dist/components/ui-file-upload.d.ts.map +1 -1
- package/dist/components/ui-floating-toolbar.d.ts.map +1 -1
- package/dist/components/ui-form.d.ts.map +1 -1
- package/dist/components/ui-gantt.d.ts +186 -2
- package/dist/components/ui-gantt.d.ts.map +1 -1
- package/dist/components/ui-icon-cloud.d.ts.map +1 -1
- package/dist/components/ui-inline-edit.d.ts.map +1 -1
- package/dist/components/ui-input.d.ts.map +1 -1
- package/dist/components/ui-marquee.d.ts.map +1 -1
- package/dist/components/ui-menu.d.ts.map +1 -1
- package/dist/components/ui-menubar.d.ts.map +1 -1
- package/dist/components/ui-meter.d.ts.map +1 -1
- package/dist/components/ui-multi-select.d.ts.map +1 -1
- package/dist/components/ui-number-field.d.ts.map +1 -1
- package/dist/components/ui-orbiter.d.ts.map +1 -1
- package/dist/components/ui-pagination.d.ts.map +1 -1
- package/dist/components/ui-password-field.d.ts.map +1 -1
- package/dist/components/ui-pin-input.d.ts.map +1 -1
- package/dist/components/ui-popover.d.ts.map +1 -1
- package/dist/components/ui-progress.d.ts.map +1 -1
- package/dist/components/ui-radio-group.d.ts.map +1 -1
- package/dist/components/ui-radio.d.ts.map +1 -1
- package/dist/components/ui-rating.d.ts +1 -0
- package/dist/components/ui-rating.d.ts.map +1 -1
- package/dist/components/ui-scroll-area.d.ts.map +1 -1
- package/dist/components/ui-section.d.ts.map +1 -1
- package/dist/components/ui-select.d.ts.map +1 -1
- package/dist/components/ui-selection-popup.d.ts.map +1 -1
- package/dist/components/ui-slider.d.ts.map +1 -1
- package/dist/components/ui-sortable.d.ts.map +1 -1
- package/dist/components/ui-spinning-text.d.ts.map +1 -1
- package/dist/components/ui-split-button.d.ts.map +1 -1
- package/dist/components/ui-splitter.d.ts.map +1 -1
- package/dist/components/ui-stepper.d.ts.map +1 -1
- package/dist/components/ui-switch.d.ts.map +1 -1
- package/dist/components/ui-tabs.d.ts.map +1 -1
- package/dist/components/ui-tags-input.d.ts.map +1 -1
- package/dist/components/ui-textarea.d.ts.map +1 -1
- package/dist/components/ui-time-picker.d.ts.map +1 -1
- package/dist/components/ui-toggle-group.d.ts +2 -0
- package/dist/components/ui-toggle-group.d.ts.map +1 -1
- package/dist/components/ui-toggle.d.ts.map +1 -1
- package/dist/components/ui-toolbar.d.ts +2 -0
- package/dist/components/ui-toolbar.d.ts.map +1 -1
- package/dist/components/ui-tooltip.d.ts.map +1 -1
- package/dist/components/ui-transfer-list.d.ts.map +1 -1
- package/dist/components/ui-tree-item.d.ts.map +1 -1
- package/dist/components/ui-tree.d.ts.map +1 -1
- package/dist/components/ui-wizard.d.ts.map +1 -1
- package/dist/container.cjs.js +6 -12
- package/dist/container.esm.js +8 -14
- package/dist/context-menu.cjs.js +8 -8
- package/dist/context-menu.esm.js +42 -41
- package/dist/data-table.cjs.js +18 -15
- package/dist/data-table.esm.js +207 -187
- package/dist/date-field.cjs.js +8 -8
- package/dist/date-field.esm.js +7 -7
- package/dist/date-picker.cjs.js +27 -18
- package/dist/date-picker.esm.js +57 -48
- package/dist/date-range-picker.cjs.js +22 -17
- package/dist/date-range-picker.esm.js +31 -26
- package/dist/date-range-time-picker.cjs.js +26 -19
- package/dist/date-range-time-picker.esm.js +23 -16
- package/dist/date-time-picker.cjs.js +23 -16
- package/dist/date-time-picker.esm.js +88 -81
- package/dist/{date-time-utils-BTlxnz5j.mjs → date-time-utils-B4hAkt36.mjs} +75 -68
- package/dist/date-time-utils-DdigV4hs.js +1 -0
- package/dist/dialog.cjs.js +57 -41
- package/dist/dialog.esm.js +84 -51
- package/dist/dock.cjs.js +16 -30
- package/dist/dock.esm.js +26 -40
- package/dist/drawer.cjs.js +8 -12
- package/dist/drawer.esm.js +6 -10
- package/dist/dropdown.cjs.js +8 -6
- package/dist/dropdown.esm.js +33 -30
- package/dist/empty-state.cjs.js +17 -15
- package/dist/empty-state.esm.js +13 -11
- package/dist/field.cjs.js +22 -13
- package/dist/field.esm.js +54 -45
- package/dist/fieldset.cjs.js +18 -11
- package/dist/fieldset.esm.js +20 -13
- package/dist/file-upload.cjs.js +77 -35
- package/dist/file-upload.esm.js +152 -110
- package/dist/floating-toolbar.cjs.js +6 -7
- package/dist/floating-toolbar.esm.js +8 -9
- package/dist/form.cjs.js +20 -23
- package/dist/form.esm.js +20 -23
- package/dist/gantt.cjs.js +525 -110
- package/dist/gantt.esm.js +1882 -377
- package/dist/hover-card.cjs.js +7 -7
- package/dist/hover-card.esm.js +7 -7
- package/dist/icon-cloud.cjs.js +19 -36
- package/dist/icon-cloud.esm.js +41 -58
- package/dist/index.cjs.js +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +108 -104
- package/dist/inline-edit.cjs.js +47 -19
- package/dist/inline-edit.esm.js +66 -38
- package/dist/input.cjs.js +44 -37
- package/dist/input.esm.js +59 -52
- package/dist/layout.cjs.js +3 -3
- package/dist/layout.esm.js +3 -3
- package/dist/marquee.cjs.js +7 -10
- package/dist/marquee.esm.js +7 -10
- package/dist/menu.cjs.js +8 -24
- package/dist/menu.esm.js +52 -72
- package/dist/menubar.cjs.js +9 -31
- package/dist/menubar.esm.js +127 -153
- package/dist/meter.cjs.js +4 -9
- package/dist/meter.esm.js +6 -11
- package/dist/multi-select.cjs.js +48 -35
- package/dist/multi-select.esm.js +67 -53
- package/dist/navigation-menu.cjs.js +10 -10
- package/dist/navigation-menu.esm.js +33 -33
- package/dist/number-field.cjs.js +27 -16
- package/dist/number-field.esm.js +36 -25
- package/dist/odometer.cjs.js +5 -5
- package/dist/odometer.esm.js +3 -3
- package/dist/orbiter.cjs.js +11 -28
- package/dist/orbiter.esm.js +28 -45
- package/dist/overlay-motion-B56x1GoY.js +49 -0
- package/dist/overlay-motion-BX3dPLay.mjs +120 -0
- package/dist/pagination.cjs.js +28 -25
- package/dist/pagination.esm.js +54 -51
- package/dist/password-field.cjs.js +38 -33
- package/dist/password-field.esm.js +62 -57
- package/dist/pin-input.cjs.js +17 -13
- package/dist/pin-input.esm.js +23 -19
- package/dist/plugin-panel.cjs.js +1 -1
- package/dist/plugin-panel.esm.js +1 -1
- package/dist/popover.cjs.js +16 -28
- package/dist/popover.esm.js +29 -45
- package/dist/portal-DeaM1tYY.mjs +121 -0
- package/dist/portal-XbYR3m_q.js +1 -0
- package/dist/portal.d.ts +3 -1
- package/dist/portal.d.ts.map +1 -1
- package/dist/{positioner-D0VGxtYU.mjs → positioner-BE8Nbho2.mjs} +5 -3
- package/dist/{positioner-D_fqyx_j.js → positioner-DZ1FW6A9.js} +1 -1
- package/dist/positioner.cjs.js +1 -1
- package/dist/positioner.esm.js +1 -1
- package/dist/primitives/overlay-motion.d.ts +47 -0
- package/dist/primitives/overlay-motion.d.ts.map +1 -0
- package/dist/primitives/positioner.d.ts.map +1 -1
- package/dist/progress.cjs.js +11 -16
- package/dist/progress.esm.js +37 -42
- package/dist/quick-actions.cjs.js +13 -13
- package/dist/quick-actions.esm.js +11 -11
- package/dist/radio-group.cjs.js +50 -26
- package/dist/radio-group.esm.js +53 -29
- package/dist/radio.cjs.js +15 -12
- package/dist/radio.esm.js +15 -12
- package/dist/rating.cjs.js +11 -15
- package/dist/rating.esm.js +48 -50
- package/dist/{runtime-CFnK53iC.mjs → runtime-CQM6wZOc.mjs} +498 -514
- package/dist/runtime-DxCl0A5q.js +5 -0
- package/dist/runtime.cjs.js +1 -1
- package/dist/runtime.d.ts +3 -2
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.esm.js +36 -32
- package/dist/scroll-area.cjs.js +3 -4
- package/dist/scroll-area.esm.js +3 -4
- package/dist/section.cjs.js +2 -4
- package/dist/section.esm.js +2 -4
- package/dist/select.cjs.js +40 -73
- package/dist/select.esm.js +55 -87
- package/dist/selection-popup.cjs.js +3 -4
- package/dist/selection-popup.esm.js +3 -4
- package/dist/semantic-tokens.d.ts +17 -0
- package/dist/semantic-tokens.d.ts.map +1 -0
- package/dist/sidebar.cjs.js +22 -22
- package/dist/sidebar.esm.js +25 -25
- package/dist/skeleton.cjs.js +2 -2
- package/dist/skeleton.esm.js +2 -2
- package/dist/slider.cjs.js +22 -26
- package/dist/slider.esm.js +25 -29
- package/dist/sortable.cjs.js +4 -5
- package/dist/sortable.esm.js +4 -5
- package/dist/spinning-text.cjs.js +4 -13
- package/dist/spinning-text.esm.js +4 -13
- package/dist/split-button.cjs.js +5 -5
- package/dist/split-button.esm.js +15 -14
- package/dist/splitter.cjs.js +52 -10
- package/dist/splitter.esm.js +55 -13
- package/dist/stepper.cjs.js +31 -65
- package/dist/stepper.esm.js +32 -66
- package/dist/switch.cjs.js +20 -22
- package/dist/switch.esm.js +20 -22
- package/dist/table.cjs.js +5 -5
- package/dist/table.esm.js +20 -20
- package/dist/tabs.cjs.js +91 -21
- package/dist/tabs.esm.js +182 -112
- package/dist/tags-input.cjs.js +41 -15
- package/dist/tags-input.esm.js +73 -47
- package/dist/textarea.cjs.js +32 -33
- package/dist/textarea.esm.js +38 -39
- package/dist/theme.d.ts +25 -1
- package/dist/theme.d.ts.map +1 -1
- package/dist/time-field.cjs.js +7 -7
- package/dist/time-field.esm.js +6 -6
- package/dist/time-picker.cjs.js +16 -13
- package/dist/time-picker.esm.js +27 -24
- package/dist/timeline.cjs.js +10 -10
- package/dist/timeline.esm.js +7 -7
- package/dist/toggle-group.cjs.js +13 -13
- package/dist/toggle-group.esm.js +66 -61
- package/dist/toggle.cjs.js +52 -34
- package/dist/toggle.esm.js +80 -62
- package/dist/toolbar.cjs.js +14 -14
- package/dist/toolbar.esm.js +41 -33
- package/dist/tooltip.cjs.js +3 -3
- package/dist/tooltip.esm.js +39 -33
- package/dist/transfer-list.cjs.js +28 -29
- package/dist/transfer-list.esm.js +28 -29
- package/dist/{tree-B_oQput6.mjs → tree-33fVNnaf.mjs} +6 -5
- package/dist/{tree-SivHxcAy.js → tree-Dc02MChE.js} +6 -5
- package/dist/tree-item.cjs.js +9 -8
- package/dist/tree-item.esm.js +13 -12
- package/dist/tree.cjs.js +1 -1
- package/dist/tree.esm.js +1 -1
- package/dist/{ui-button-Co8Sid6t.mjs → ui-button-C3OmI7Sn.mjs} +152 -154
- package/dist/{ui-button-BPrzJScZ.js → ui-button-CnLwXBnx.js} +107 -109
- package/dist/wizard.cjs.js +39 -36
- package/dist/wizard.esm.js +39 -36
- package/package.json +1 -1
- package/dist/date-time-utils-y3AvNvGe.js +0 -1
- package/dist/portal-DgpQ3Jo1.js +0 -1
- package/dist/portal-bR42gHvG.mjs +0 -118
- package/dist/runtime-DwE-tizc.js +0 -1
package/dist/theme.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export interface ThemeTokens {
|
|
|
24
24
|
success?: string;
|
|
25
25
|
danger?: string;
|
|
26
26
|
warning?: string;
|
|
27
|
+
info?: string;
|
|
27
28
|
};
|
|
28
29
|
palette?: {
|
|
29
30
|
gray?: ThemeScale;
|
|
@@ -122,6 +123,7 @@ export interface ThemeTokens {
|
|
|
122
123
|
sm?: string;
|
|
123
124
|
md?: string;
|
|
124
125
|
lg?: string;
|
|
126
|
+
xl?: string;
|
|
125
127
|
};
|
|
126
128
|
}
|
|
127
129
|
export declare const baselineAccentPalettes: Record<AccentPaletteName, Record<ThemeMode, AccentPaletteTokens>>;
|
|
@@ -152,6 +154,28 @@ export declare function createThemeTokens(overrides?: Partial<ThemeTokens>, opti
|
|
|
152
154
|
}): ThemeTokens;
|
|
153
155
|
export declare function withAccentPalette(tokens: ThemeTokens | Partial<ThemeTokens>, palette: AccentPaletteName, mode?: ThemeMode): ThemeTokens;
|
|
154
156
|
export declare function registerThemeHost(el: HTMLElement): void;
|
|
155
|
-
|
|
157
|
+
/**
|
|
158
|
+
* Every CSS custom property a theme defines, as a name -> value map: the single source for
|
|
159
|
+
* `applyTheme` (inline style), `themeToCss` (a stylesheet, e.g. for SSR) and the tests.
|
|
160
|
+
*/
|
|
161
|
+
export declare function themeToVariables(tokens: ThemeTokens): Record<string, string>;
|
|
162
|
+
/** The theme as CSS text, e.g. `themeToCss(tokens, ':root')`, for a static or server-rendered stylesheet. */
|
|
163
|
+
export declare function themeToCss(tokens: ThemeTokens, selector?: string): string;
|
|
164
|
+
type ThemeRoot = ShadowRoot | Document | HTMLElement | null;
|
|
165
|
+
export declare function applyTheme(tokens: ThemeTokens, root?: ThemeRoot): void;
|
|
166
|
+
export interface SystemThemeOptions {
|
|
167
|
+
/** Token overrides applied on top of the light baseline. */
|
|
168
|
+
light?: Partial<ThemeTokens>;
|
|
169
|
+
/** Token overrides applied on top of the dark baseline. */
|
|
170
|
+
dark?: Partial<ThemeTokens>;
|
|
171
|
+
accentPalette?: AccentPaletteName;
|
|
172
|
+
root?: ThemeRoot;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Apply the light or the dark theme to match the operating system, and keep following it
|
|
176
|
+
* while the user changes it. The resolved mode is mirrored as `data-ui-mode` and `color-scheme`
|
|
177
|
+
* on the target, so page CSS can follow it too. Returns a function that stops following.
|
|
178
|
+
*/
|
|
179
|
+
export declare function applySystemTheme(options?: SystemThemeOptions): () => void;
|
|
156
180
|
export {};
|
|
157
181
|
//# sourceMappingURL=theme.d.ts.map
|
package/dist/theme.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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"}
|
package/dist/time-field.cjs.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("./ElementBase-DxbvhLJs.js"),E=require("./control-name-BmoI1m3a.js"),c=require("./date-time-utils-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("./ElementBase-DxbvhLJs.js"),E=require("./control-name-BmoI1m3a.js"),c=require("./date-time-utils-DdigV4hs.js");let V=0;const I=`
|
|
2
2
|
:host {
|
|
3
3
|
--ui-time-field-border-color: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 78%, transparent);
|
|
4
4
|
--ui-time-field-border: 1px solid var(--ui-time-field-border-color);
|
|
5
|
-
--ui-time-field-radius: var(--ui-radius,
|
|
6
|
-
--ui-time-field-bg: var(--ui-color-surface, #ffffff);
|
|
5
|
+
--ui-time-field-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
6
|
+
--ui-time-field-bg: var(--color-panel-solid, var(--ui-color-surface, #ffffff));
|
|
7
7
|
--ui-time-field-text: var(--ui-color-text, #0f172a);
|
|
8
8
|
--ui-time-field-muted: var(--ui-color-muted, #526175);
|
|
9
9
|
--ui-time-field-focus: var(--ui-color-focus-ring, #2563eb);
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
align-items: center;
|
|
63
63
|
flex-wrap: wrap;
|
|
64
64
|
gap: 4px;
|
|
65
|
-
min-block-size:
|
|
65
|
+
min-block-size: var(--ui-control-height-2, 32px);
|
|
66
66
|
padding: 0 10px;
|
|
67
67
|
border: var(--ui-time-field-border);
|
|
68
68
|
border-radius: var(--ui-time-field-radius);
|
|
@@ -73,12 +73,12 @@
|
|
|
73
73
|
|
|
74
74
|
.shell[data-focused="true"] {
|
|
75
75
|
border-color: color-mix(in srgb, var(--ui-time-field-focus) 58%, var(--ui-time-field-border-color));
|
|
76
|
-
box-shadow: 0 0 0
|
|
76
|
+
box-shadow: 0 0 0 2px var(--ui-ring-color, var(--ui-time-field-focus));
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
.shell[data-invalid="true"] {
|
|
80
80
|
border-color: color-mix(in srgb, var(--ui-time-field-danger) 62%, transparent);
|
|
81
|
-
box-shadow: 0 0 0
|
|
81
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--ui-time-field-danger) 45%, transparent);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
.segment {
|
|
@@ -139,4 +139,4 @@
|
|
|
139
139
|
</div>
|
|
140
140
|
<div class="error" part="error" hidden></div>
|
|
141
141
|
</div>
|
|
142
|
-
`),this._segmentsEl=this.root.querySelector(".segments"),this._shellEl=this.root.querySelector(".shell"),this._errorEl=this.root.querySelector(".error"),this._shellEl?.addEventListener("focusin",this._onFocusIn),this._shellEl?.addEventListener("focusout",this._onFocusOut),this._value=this._normalizeTimeValue(this.getAttribute("value")),this._syncFormValue(),this._syncUi()}_showSeconds(){return this.hasAttribute("seconds")}_is12h(){return(this.getAttribute("format")||"").toLowerCase()==="12h"}_normalizeTimeValue(e){const i=c.parseTimeInput(e||"");if(!i)return null;const t=c.formatTime(i,this._showSeconds()),
|
|
142
|
+
`),this._segmentsEl=this.root.querySelector(".segments"),this._shellEl=this.root.querySelector(".shell"),this._errorEl=this.root.querySelector(".error"),this._shellEl?.addEventListener("focusin",this._onFocusIn),this._shellEl?.addEventListener("focusout",this._onFocusOut),this._value=this._normalizeTimeValue(this.getAttribute("value")),this._syncFormValue(),this._syncUi()}_showSeconds(){return this.hasAttribute("seconds")}_is12h(){return(this.getAttribute("format")||"").toLowerCase()==="12h"}_normalizeTimeValue(e){const i=c.parseTimeInput(e||"");if(!i)return null;const t=c.formatTime(i,this._showSeconds()),r=this.getAttribute("min"),s=this.getAttribute("max");return c.clampTime(t,r,s)}_partsOrFallback(){return b(this._value,this._showSeconds())||b(this.getAttribute("min"),this._showSeconds())||{hours:9,minutes:0,seconds:0}}_order(){const e=["hour","minute"];return this._showSeconds()&&e.push("second"),this._is12h()&&e.push("meridiem"),e}_focusSegment(e){this._activeSegment=e,this._syncUi(),this._segmentButtons.get(e)?.focus()}_moveSegmentFocus(e){const i=this._order(),t=i.indexOf(this._activeSegment),r=i[(t+e+i.length)%i.length];this._focusSegment(r)}_setBuffer(e,i){this._bufferBySegment[e]=i,this._bufferTimer!=null&&window.clearTimeout(this._bufferTimer),this._bufferTimer=window.setTimeout(()=>{this._bufferBySegment.hour="",this._bufferBySegment.minute="",this._bufferBySegment.second="",this._bufferTimer=null},900)}_applyParts(e,i){const t=this._normalizeTimeValue(c.formatTime(e,this._showSeconds()));this._setValue(t,i)}_setValue(e,i){const t=this._normalizeTimeValue(e);if(t===this._value){this._syncFormValue(),this._syncUi();return}const r=this._value;this._value=t,t?this.setAttribute("value",t):this.removeAttribute("value"),this._syncFormValue(),this._syncUi(),this.dispatchEvent(new CustomEvent("change",{detail:{value:t,previousValue:r,source:i},bubbles:!0,composed:!0}))}_syncFormValue(){try{this._internals?.setFormValue(this.value||"")}catch{}}_increment(e,i){const t=this._partsOrFallback();if(e==="meridiem"){t.hours=(t.hours+12)%24,this._applyParts(t,"keyboard");return}const a=(t.hours*3600+t.minutes*60+t.seconds+i*(e==="hour"?3600:e==="minute"?60:1)+86400)%86400,d={hours:Math.floor(a/3600),minutes:Math.floor(a%3600/60),seconds:a%60};this._applyParts(d,"keyboard")}_applyNumericInput(e,i){const t=`${this._bufferBySegment[e]}${i}`.slice(-2);if(this._setBuffer(e,t),t.length<2)return;const r=this._partsOrFallback(),s=Number(t);if(Number.isFinite(s)){if(e==="hour")if(this._is12h()){const{meridiem:a}=p(r),d=Math.min(Math.max(s,1),12);r.hours=k(d,a)}else r.hours=Math.min(Math.max(s,0),23);else e==="minute"?r.minutes=Math.min(Math.max(s,0),59):r.seconds=Math.min(Math.max(s,0),59);this._applyParts(r,"keyboard"),this._moveSegmentFocus(1)}}_onSegmentClick(e){const i=e.currentTarget.getAttribute("data-segment");i&&this._focusSegment(i)}_onSegmentKeyDown(e){if(this.hasAttribute("disabled")||this.hasAttribute("readonly"))return;const i=e.currentTarget.getAttribute("data-segment");if(i){if(e.key==="ArrowLeft"){e.preventDefault(),this._moveSegmentFocus(-1);return}if(e.key==="ArrowRight"){e.preventDefault(),this._moveSegmentFocus(1);return}if(e.key==="ArrowUp"||e.key==="ArrowDown"){e.preventDefault(),this._increment(i,e.key==="ArrowUp"?1:-1);return}if(e.key==="Backspace"||e.key==="Delete"){e.preventDefault(),this.clearValue();return}if(i==="meridiem"&&/^[ap]$/i.test(e.key)){e.preventDefault();const t=this._partsOrFallback(),r=e.key.toLowerCase()==="a"?"AM":"PM",s=p(t).hour;t.hours=k(s,r),this._applyParts(t,"keyboard");return}/^\d$/.test(e.key)&&i!=="meridiem"&&(e.preventDefault(),this._applyNumericInput(i,e.key))}}_registerWithForm(){this._formUnregister&&(this._formUnregister(),this._formUnregister=null);try{const r=this.getRootNode().host?.closest?.("ui-form")||null||this.closest("ui-form"),s=this.getAttribute("name");r&&typeof r.registerField=="function"&&s&&(this._formUnregister=r.registerField(s,{name:s,getValue:()=>this.value,setValue:a=>this._setValue(a?String(a):null,"form"),validate:async()=>this.hasAttribute("required")&&!this.value?{valid:!1,message:"Time is required"}:{valid:!0},setError:a=>{a?this.setAttribute("data-error",a):this.removeAttribute("data-error"),this._syncUi()}}))}catch{}}_onFocusIn(){this._shellEl?.setAttribute("data-focused","true")}_onFocusOut(e){this._shellEl?.contains(e.relatedTarget)||this._shellEl?.setAttribute("data-focused","false")}_syncUi(){if(!this._segmentsEl||!this._shellEl||!this._errorEl)return;const e=this.root.activeElement,i=!!e&&this._segmentsEl.contains(e),t=(this.getAttribute("label")||"").trim(),r=(this.getAttribute("description")||"").trim(),s=(this.getAttribute("data-error")||"").trim(),a=this.root.querySelector(".meta"),d=this.root.querySelector(".label"),w=this.root.querySelector(".label-text"),F=this.root.querySelector(".required"),f=this.root.querySelector(".description"),v=`${this._uid}-label`,y=`${this._uid}-description`,x=`${this._uid}-error`;a.hidden=!t&&!r,d.hidden=!t,d.id=t?v:"",w.textContent=t,F.hidden=!this.hasAttribute("required"),f.hidden=!r,f.id=r?y:"",f.textContent=r,this._errorEl.hidden=!s,this._errorEl.id=s?x:"",this._errorEl.textContent=s,this._shellEl.setAttribute("data-invalid",s?"true":"false"),this._shellEl.setAttribute("role","group"),E.syncControlName(this._shellEl,this,t?v:null);const S=[r?y:null,s?x:null].filter(Boolean).join(" ");E.syncControlDescription(this._shellEl,this,this._uid,S?S.split(" "):[]),this._shellEl.setAttribute("aria-invalid",s?"true":"false"),this._shellEl.setAttribute("aria-required",this.hasAttribute("required")?"true":"false"),this._shellEl.setAttribute("aria-disabled",this.hasAttribute("disabled")?"true":"false"),this._shellEl.removeAttribute("aria-readonly");const u=b(this._value,this._showSeconds()),C=this._order(),_=[];this._segmentButtons.clear();const A=u?p(u):null;if(C.forEach((n,M)=>{if(M>0){const h=document.createElement("span");h.className="literal",h.textContent=n==="meridiem"?" ":":",_.push(h)}const o=document.createElement("button");o.type="button",o.className="segment",o.setAttribute("data-segment",n),o.setAttribute("data-active",this._activeSegment===n?"true":"false"),o.setAttribute("data-empty",u?"false":"true");const T=n==="hour"?"Hour":n==="minute"?"Minute":n==="second"?"Second":"AM or PM";if(o.tabIndex=this._activeSegment===n?0:-1,o.disabled=this.hasAttribute("disabled"),o.addEventListener("click",this._onSegmentClick),o.addEventListener("keydown",this._onSegmentKeyDown),!u)o.textContent=q(n);else if(n==="hour"){const h=this._is12h()?A.hour:u.hours;o.textContent=String(h).padStart(2,"0")}else n==="minute"?o.textContent=String(u.minutes).padStart(2,"0"):n==="second"?o.textContent=String(u.seconds).padStart(2,"0"):o.textContent=A.meridiem;o.setAttribute("aria-label",`${T} ${o.textContent||""}`.trim()),this._segmentButtons.set(n,o),_.push(o)}),this._segmentsEl.replaceChildren(..._),i){const n=this._segmentButtons.get(this._activeSegment);try{n?.focus({preventScroll:!0})}catch{n?.focus()}}}};g.formAssociated=!0;let m=g;typeof customElements<"u"&&!customElements.get("ui-time-field")&&customElements.define("ui-time-field",m);exports.UITimeField=m;
|
package/dist/time-field.esm.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { E as B } from "./ElementBase-BeZT54Hj.mjs";
|
|
2
2
|
import { s as T, a as I } from "./control-name-Bpj7F34X.mjs";
|
|
3
|
-
import { q as k, u as A, v as q } from "./date-time-utils-
|
|
3
|
+
import { q as k, u as A, v as q } from "./date-time-utils-B4hAkt36.mjs";
|
|
4
4
|
let U = 0;
|
|
5
5
|
const z = `
|
|
6
6
|
:host {
|
|
7
7
|
--ui-time-field-border-color: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 78%, transparent);
|
|
8
8
|
--ui-time-field-border: 1px solid var(--ui-time-field-border-color);
|
|
9
|
-
--ui-time-field-radius: var(--ui-radius,
|
|
10
|
-
--ui-time-field-bg: var(--ui-color-surface, #ffffff);
|
|
9
|
+
--ui-time-field-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
10
|
+
--ui-time-field-bg: var(--color-panel-solid, var(--ui-color-surface, #ffffff));
|
|
11
11
|
--ui-time-field-text: var(--ui-color-text, #0f172a);
|
|
12
12
|
--ui-time-field-muted: var(--ui-color-muted, #526175);
|
|
13
13
|
--ui-time-field-focus: var(--ui-color-focus-ring, #2563eb);
|
|
@@ -66,7 +66,7 @@ const z = `
|
|
|
66
66
|
align-items: center;
|
|
67
67
|
flex-wrap: wrap;
|
|
68
68
|
gap: 4px;
|
|
69
|
-
min-block-size:
|
|
69
|
+
min-block-size: var(--ui-control-height-2, 32px);
|
|
70
70
|
padding: 0 10px;
|
|
71
71
|
border: var(--ui-time-field-border);
|
|
72
72
|
border-radius: var(--ui-time-field-radius);
|
|
@@ -77,12 +77,12 @@ const z = `
|
|
|
77
77
|
|
|
78
78
|
.shell[data-focused="true"] {
|
|
79
79
|
border-color: color-mix(in srgb, var(--ui-time-field-focus) 58%, var(--ui-time-field-border-color));
|
|
80
|
-
box-shadow: 0 0 0
|
|
80
|
+
box-shadow: 0 0 0 2px var(--ui-ring-color, var(--ui-time-field-focus));
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
.shell[data-invalid="true"] {
|
|
84
84
|
border-color: color-mix(in srgb, var(--ui-time-field-danger) 62%, transparent);
|
|
85
|
-
box-shadow: 0 0 0
|
|
85
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--ui-time-field-danger) 45%, transparent);
|
|
86
86
|
}
|
|
87
87
|
|
|
88
88
|
.segment {
|
package/dist/time-picker.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const x=require("./ElementBase-DxbvhLJs.js"),E=require("./dismissable-layer-DNfrKA20.js"),k=require("./calendar-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const x=require("./ElementBase-DxbvhLJs.js"),E=require("./dismissable-layer-DNfrKA20.js"),k=require("./calendar-o273O28D.js"),a=require("./date-time-utils-DdigV4hs.js"),w=`
|
|
2
2
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
3
3
|
<path d="M10 2.4a7.6 7.6 0 1 1 0 15.2A7.6 7.6 0 0 1 10 2.4Zm0 1.4a6.2 6.2 0 1 0 0 12.4 6.2 6.2 0 0 0 0-12.4Zm.7 2.4a.7.7 0 0 0-1.4 0v4.1c0 .2.1.4.2.5l2.6 2.5a.7.7 0 1 0 1-1l-2.4-2.3v-3.8Z" fill="currentColor"/>
|
|
4
4
|
</svg>
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
`,B=`
|
|
14
14
|
:host {
|
|
15
15
|
--ui-dp-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 96%, transparent);
|
|
16
|
-
--ui-dp-border: color-
|
|
16
|
+
--ui-dp-border: var(--ui-color-line, var(--ui-color-border, #cbd5e1));
|
|
17
17
|
--ui-dp-text: var(--ui-color-text, #0f172a);
|
|
18
18
|
--ui-dp-muted: var(--ui-color-muted, #526175);
|
|
19
19
|
--ui-dp-accent: var(--ui-color-primary, #2563eb);
|
|
20
|
-
--ui-dp-radius:
|
|
20
|
+
--ui-dp-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
21
21
|
--ui-dp-field-error: var(--ui-color-danger, #dc2626);
|
|
22
22
|
--ui-dp-z: 1600;
|
|
23
23
|
color-scheme: light dark;
|
|
@@ -34,11 +34,12 @@
|
|
|
34
34
|
.required { color: var(--ui-dp-field-error); font-size: 11px; }
|
|
35
35
|
|
|
36
36
|
.field {
|
|
37
|
+
box-sizing: border-box;
|
|
37
38
|
display: grid;
|
|
38
39
|
grid-template-columns: auto minmax(0, 1fr) auto auto;
|
|
39
40
|
align-items: center;
|
|
40
41
|
gap: 8px;
|
|
41
|
-
min-block-size:
|
|
42
|
+
min-block-size: var(--ui-control-height-2, 32px);
|
|
42
43
|
border: 1px solid var(--ui-dp-border);
|
|
43
44
|
border-radius: var(--ui-dp-radius);
|
|
44
45
|
background: var(--ui-dp-bg);
|
|
@@ -47,8 +48,10 @@
|
|
|
47
48
|
}
|
|
48
49
|
|
|
49
50
|
.field:focus-within {
|
|
50
|
-
border-color:
|
|
51
|
-
|
|
51
|
+
border-color: var(--ui-ring-color, var(--ui-dp-accent));
|
|
52
|
+
outline: var(--ui-ring-width, 2px) solid var(--ui-ring-color, var(--ui-dp-accent));
|
|
53
|
+
outline-offset: -1px;
|
|
54
|
+
box-shadow: none;
|
|
52
55
|
}
|
|
53
56
|
|
|
54
57
|
.input {
|
|
@@ -58,7 +61,7 @@
|
|
|
58
61
|
color: var(--ui-dp-text);
|
|
59
62
|
inline-size: 100%;
|
|
60
63
|
min-inline-size: 0;
|
|
61
|
-
padding:
|
|
64
|
+
padding: 0;
|
|
62
65
|
font: 500 14px/1.35 "Inter", "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
63
66
|
}
|
|
64
67
|
|
|
@@ -79,8 +82,8 @@
|
|
|
79
82
|
.btn {
|
|
80
83
|
border: 0;
|
|
81
84
|
background: transparent;
|
|
82
|
-
inline-size:
|
|
83
|
-
block-size:
|
|
85
|
+
inline-size: var(--ui-dp-action-size, 24px);
|
|
86
|
+
block-size: var(--ui-dp-action-size, 24px);
|
|
84
87
|
border-radius: 8px;
|
|
85
88
|
color: color-mix(in srgb, var(--ui-dp-text) 72%, transparent);
|
|
86
89
|
cursor: pointer;
|
|
@@ -142,11 +145,11 @@
|
|
|
142
145
|
`,O=`
|
|
143
146
|
.ui-time-picker-overlay-host {
|
|
144
147
|
--ui-dp-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 96%, transparent);
|
|
145
|
-
--ui-dp-border: color-
|
|
148
|
+
--ui-dp-border: var(--ui-color-line, var(--ui-color-border, #cbd5e1));
|
|
146
149
|
--ui-dp-text: var(--ui-color-text, #0f172a);
|
|
147
150
|
--ui-dp-muted: var(--ui-color-muted, #526175);
|
|
148
151
|
--ui-dp-accent: var(--ui-color-primary, #2563eb);
|
|
149
|
-
--ui-dp-radius:
|
|
152
|
+
--ui-dp-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
150
153
|
}
|
|
151
154
|
.overlay { position: fixed; z-index: var(--ui-dp-z, 1600); pointer-events: none; }
|
|
152
155
|
.panel {
|
|
@@ -253,7 +256,7 @@
|
|
|
253
256
|
outline-color: Highlight;
|
|
254
257
|
}
|
|
255
258
|
}
|
|
256
|
-
`;function m(h){return String(h).padStart(2,"0")}function d(h){return h.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function b(h,t,e,i){const s=m(h),n=m(t);return i?`${s}:${n}:${m(e)}`:`${s}:${n}`}class
|
|
259
|
+
`;function m(h){return String(h).padStart(2,"0")}function d(h){return h.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function b(h,t,e,i){const s=m(h),n=m(t);return i?`${s}:${n}:${m(e)}`:`${s}:${n}`}class f extends x.ElementBase{constructor(){super(...arguments),this._value=null,this._pending=null,this._draft="",this._inlineError="",this._open=!1,this._syncing=!1,this._overlay=null,this._dismissableLayer=null,this._releaseScrollLock=null,this._isInitialized=!1,this._hasView=!1,this._restoreFocusEl=null,this._overlayKey=null,this._fieldEl=null,this._labelEl=null,this._labelTextEl=null,this._requiredEl=null,this._inputEl=null,this._clearBtn=null,this._toggleBtn=null,this._hintEl=null,this._errorEl=null,this._hiddenInputEl=null,this._schedulePosition=a.rafThrottle(()=>this._positionOverlay()),this._onRootClickBound=t=>this._onRootClick(t),this._onRootInputBound=t=>this._onRootInput(t),this._onRootBlurBound=t=>this._onRootBlur(t),this._onRootKeyDownBound=t=>this._onRootKeyDown(t),this._onOverlayClickBound=t=>this._onOverlayClick(t),this._onOverlayChangeBound=t=>this._onOverlayChange(t),this._onDocumentPointerDownBound=t=>this._onDocumentPointerDown(t),this._onDocumentKeyDownBound=t=>this._onDocumentKeyDown(t),this._onWindowResizeBound=()=>this._schedulePosition.run(),this._onWindowScrollBound=t=>{a.eventOriginatesWithin(t,[this._overlay])||this._schedulePosition.run()}}static get observedAttributes(){return["open","default-open","value","default-value","format","step","seconds","step-seconds","min","max","disabled","readonly","required","name","clearable","allow-input","mode","label","hint","error","translations","locale","variant"]}connectedCallback(){if(super.connectedCallback(),this.root.addEventListener("click",this._onRootClickBound),this.root.addEventListener("input",this._onRootInputBound),this.root.addEventListener("focusout",this._onRootBlurBound),this.root.addEventListener("keydown",this._onRootKeyDownBound),this._hasView&&!this._inputEl&&this._cacheDomRefs(),!this._isInitialized){const t=this._normalizeCanonical(this.getAttribute("value")||this.getAttribute("default-value"));this._value=t,this._pending=t,this._draft=this._formatDisplay(t),this._open=this.hasAttribute("open")||a.isTruthyAttr(this.getAttribute("default-open")),this._isInitialized=!0}this._open&&!this._isInlineMode()&&this._ensureOverlay()}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClickBound),this.root.removeEventListener("input",this._onRootInputBound),this.root.removeEventListener("focusout",this._onRootBlurBound),this.root.removeEventListener("keydown",this._onRootKeyDownBound),this._destroyOverlay(),this._fieldEl=null,this._labelEl=null,this._labelTextEl=null,this._requiredEl=null,this._inputEl=null,this._clearBtn=null,this._toggleBtn=null,this._hintEl=null,this._errorEl=null,this._hiddenInputEl=null,super.disconnectedCallback()}attributeChangedCallback(t,e,i){if(e!==i&&(t==="value"&&!this._syncing&&(this._value=this._normalizeCanonical(i),this._pending=this._value,this._draft=this._formatDisplay(this._value),this._inlineError=""),t==="open"&&!this._syncing&&(this._open=this.hasAttribute("open"),this._syncOverlay("attribute")),t==="mode"&&this._syncOverlay("attribute"),t==="disabled"&&this.hasAttribute("disabled")&&this._setOpen(!1,"outside"),!!this.isConnected)){if(!this._hasView){this.requestRender();return}this._updateHostState()}}_isInlineMode(){return(this.getAttribute("mode")||"popover")==="inline"}_isMobileSheet(){return a.shouldUseMobileSheet(this.getAttribute("mode"))}_isDisabled(){return this.hasAttribute("disabled")}_isReadonly(){return this.hasAttribute("readonly")}_allowInput(){return a.isTruthyAttr(this.getAttribute("allow-input"),!0)}_clearable(){return a.isTruthyAttr(this.getAttribute("clearable"),!0)}_withSeconds(){return this.hasAttribute("seconds")}_is12h(){return(this.getAttribute("format")||"24h")==="12h"}_minuteStep(){const t=Number(this.getAttribute("step")||5),e=5;return!Number.isFinite(t)||t<1?e:Math.min(60,Math.trunc(t))}_secondStep(){const t=Number(this.getAttribute("step-seconds")||1);return!Number.isFinite(t)||t<1?1:Math.min(60,Math.trunc(t))}_translations(){return k.resolveDateTimeTranslations(this.getAttribute("locale"),this.getAttribute("translations"))}_normalizeCanonical(t){if(!t)return null;const e=a.parseTimeInput(t);return e?b(e.hours,e.minutes,e.seconds,this._withSeconds()):null}_minTime(){return this._normalizeCanonical(this.getAttribute("min"))}_maxTime(){return this._normalizeCanonical(this.getAttribute("max"))}_formatDisplay(t){return t?this._is12h()?a.to12hDisplay(t,this.getAttribute("locale")||"en-US"):t:""}_syncOpenAttribute(t){this._syncing=!0;try{t?this.hasAttribute("open")||this.setAttribute("open",""):this.hasAttribute("open")&&this.removeAttribute("open")}finally{this._syncing=!1}}_syncValueAttribute(t){this._syncing=!0;try{t?this.getAttribute("value")!==t&&this.setAttribute("value",t):this.hasAttribute("value")&&this.removeAttribute("value")}finally{this._syncing=!1}}_emitInput(t){const e={mode:"time",value:this._pending,source:t};this.dispatchEvent(new CustomEvent("input",{detail:e,bubbles:!0,composed:!0}))}_emitChange(t){const e={mode:"time",value:this._value,source:t};this.dispatchEvent(new CustomEvent("change",{detail:e,bubbles:!0,composed:!0}))}_emitInvalid(t,e){this.dispatchEvent(new CustomEvent("invalid",{detail:{raw:t,reason:e},bubbles:!0,composed:!0}))}_clampToBounds(t){if(!t)return null;const e=this._minTime(),i=this._maxTime();let s=t;return e&&a.compareTimes(s,e)<0&&(s=e),i&&a.compareTimes(s,i)>0&&(s=i),s}_commit(t,e){if(this._isDisabled()||this._isReadonly())return;const i=this._clampToBounds(this._normalizeCanonical(t));this._value=i,this._pending=i,this._draft=this._formatDisplay(i),this._inlineError="",this._syncValueAttribute(i),this._emitInput(e),this._emitChange(e),this._updateHostState()}_setOpen(t,e){this._isDisabled()||this._open!==t&&(this._open=t,this._syncOpenAttribute(t),this._syncOverlay(e),this._updateHostState(),this.dispatchEvent(new CustomEvent(t?"open":"close",{bubbles:!0,composed:!0})))}_syncOverlay(t){if(this._isInlineMode()){this._destroyOverlay();return}if(this._open){this._ensureOverlay(),this._syncOverlayState();return}this._destroyOverlay();const e=this._restoreFocusEl;if(this._restoreFocusEl=null,e&&e.isConnected)try{e.focus()}catch{}}_ensureOverlay(){if(this._overlay||typeof document>"u")return;const t=document.createElement("div");t.className="ui-time-picker-overlay-host",t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.pointerEvents="none",t.addEventListener("click",this._onOverlayClickBound),t.addEventListener("change",this._onOverlayChangeBound),document.body.appendChild(t),this._overlay=t,this._syncOverlayHostZIndex(),document.addEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.addEventListener("keydown",this._onDocumentKeyDownBound),window.addEventListener("resize",this._onWindowResizeBound),window.addEventListener("scroll",this._onWindowScrollBound,{passive:!0,capture:!0}),this._isMobileSheet()&&(this._releaseScrollLock=a.lockBodyScroll())}_syncOverlayHostZIndex(){if(!this._overlay||typeof window>"u")return;const t=window.getComputedStyle(this).getPropertyValue("--ui-dp-z").trim();this._overlay.style.zIndex=t||"1600"}_destroyOverlay(){this._dismissableLayer?.destroy(),this._dismissableLayer=null,this._overlay&&(this._schedulePosition.cancel(),document.removeEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.removeEventListener("keydown",this._onDocumentKeyDownBound),window.removeEventListener("resize",this._onWindowResizeBound),window.removeEventListener("scroll",this._onWindowScrollBound,!0),this._overlay.removeEventListener("click",this._onOverlayClickBound),this._overlay.removeEventListener("change",this._onOverlayChangeBound),this._overlay.parentElement&&this._overlay.parentElement.removeChild(this._overlay),this._overlay=null,this._overlayKey=null,this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null))}_syncDismissableLayer(){if(this._dismissableLayer?.destroy(),this._dismissableLayer=null,!this._open||!this._overlay)return;const t=this._overlay.querySelector(".panel, .sheet");t&&(this._dismissableLayer=E.createDismissableLayer({node:t,trigger:this._fieldEl,closeOnEscape:!0,closeOnPointerOutside:!0,closeOnFocusOutside:!1,onBeforeDismiss:e=>e==="escape-key"?(this._setOpen(!1,"escape"),!1):(e==="outside-pointer"&&this._setOpen(!1,"outside"),!1)}))}_positionOverlay(){if(!this._overlay||!this._open||this._isMobileSheet())return;const t=this._fieldEl,e=this._overlay.querySelector(".panel");if(!t||!e)return;const i=e.getAttribute("data-placement"),s=a.computePopoverPosition(t.getBoundingClientRect(),e.getBoundingClientRect(),8,8,i==="top"?"top":i==="bottom"?"bottom":null);e.style.position="absolute",e.style.top=`${Math.round(s.top)}px`,e.style.left=`${Math.round(s.left)}px`,e.setAttribute("data-placement",s.placement)}_timeParts(t){const e=a.parseTimeInput(t||"00:00")||{hours:0,minutes:0,seconds:0},i=e.hours>=12?"pm":"am";return{hours:e.hours,minutes:e.minutes,seconds:e.seconds,meridiem:i}}_buildOverlayContent(t){const e=this._translations(),i=this._timeParts(this._pending),s=this._is12h(),n=this._withSeconds(),r=s?i.hours%12||12:i.hours,o=this._minuteStep(),u=this._secondStep(),l=Array.from({length:s?12:24},(v,_)=>{const c=s?_+1:_;return`<option value="${c}" ${c===r?"selected":""}>${m(c)}</option>`}).join(""),p=Array.from({length:Math.ceil(60/o)},(v,_)=>{const c=Math.min(59,_*o);return`<option value="${c}" ${c===i.minutes?"selected":""}>${m(c)}</option>`}).join(""),y=Array.from({length:Math.ceil(60/u)},(v,_)=>{const c=Math.min(59,_*u);return`<option value="${c}" ${c===i.seconds?"selected":""}>${m(c)}</option>`}).join(""),g=`
|
|
257
260
|
<div class="pickers" data-seconds="${n?"true":"false"}" data-ampm="${s?"true":"false"}">
|
|
258
261
|
<div class="picker"><label>${d(e.hour)}</label><select data-segment="hours">${l}</select></div>
|
|
259
262
|
<div class="picker"><label>${d(e.minute)}</label><select data-segment="minutes">${p}</select></div>
|
|
@@ -289,4 +292,4 @@
|
|
|
289
292
|
<div class="error" part="error" role="alert"></div>
|
|
290
293
|
<input class="hidden-input" type="hidden" disabled />
|
|
291
294
|
</div>
|
|
292
|
-
`,{force:!0}),this._cacheDomRefs(),this._hasView=!0),this._updateHostState()}shouldRenderOnAttributeChange(t,e,i){return!1}}typeof customElements<"u"&&!customElements.get("ui-time-picker")&&customElements.define("ui-time-picker",
|
|
295
|
+
`,{force:!0}),this._cacheDomRefs(),this._hasView=!0),this._updateHostState()}shouldRenderOnAttributeChange(t,e,i){return!1}}typeof customElements<"u"&&!customElements.get("ui-time-picker")&&customElements.define("ui-time-picker",f);exports.UITimePicker=f;
|
package/dist/time-picker.esm.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { E } from "./ElementBase-BeZT54Hj.mjs";
|
|
2
2
|
import { c as k } from "./dismissable-layer-BmPIoK80.mjs";
|
|
3
|
-
import { r as w } from "./calendar-
|
|
4
|
-
import { r as S, e as C, i as b, s as B, q as
|
|
3
|
+
import { r as w } from "./calendar-DmxiZrR7.mjs";
|
|
4
|
+
import { r as S, e as C, i as b, s as B, q as v, t as O, w as y, l as I, c as A } from "./date-time-utils-B4hAkt36.mjs";
|
|
5
5
|
const D = `
|
|
6
6
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
7
7
|
<path d="M10 2.4a7.6 7.6 0 1 1 0 15.2A7.6 7.6 0 0 1 10 2.4Zm0 1.4a6.2 6.2 0 1 0 0 12.4 6.2 6.2 0 0 0 0-12.4Zm.7 2.4a.7.7 0 0 0-1.4 0v4.1c0 .2.1.4.2.5l2.6 2.5a.7.7 0 1 0 1-1l-2.4-2.3v-3.8Z" fill="currentColor"/>
|
|
8
8
|
</svg>
|
|
9
|
-
`,
|
|
9
|
+
`, z = `
|
|
10
10
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
11
11
|
<path d="m6 6 8 8M14 6l-8 8" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"/>
|
|
12
12
|
</svg>
|
|
13
|
-
`,
|
|
13
|
+
`, $ = `
|
|
14
14
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
15
15
|
<path d="m5.6 7.6 4.4 4.6 4.4-4.6" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/>
|
|
16
16
|
</svg>
|
|
17
|
-
`,
|
|
17
|
+
`, M = `
|
|
18
18
|
:host {
|
|
19
19
|
--ui-dp-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 96%, transparent);
|
|
20
|
-
--ui-dp-border: color-
|
|
20
|
+
--ui-dp-border: var(--ui-color-line, var(--ui-color-border, #cbd5e1));
|
|
21
21
|
--ui-dp-text: var(--ui-color-text, #0f172a);
|
|
22
22
|
--ui-dp-muted: var(--ui-color-muted, #526175);
|
|
23
23
|
--ui-dp-accent: var(--ui-color-primary, #2563eb);
|
|
24
|
-
--ui-dp-radius:
|
|
24
|
+
--ui-dp-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
25
25
|
--ui-dp-field-error: var(--ui-color-danger, #dc2626);
|
|
26
26
|
--ui-dp-z: 1600;
|
|
27
27
|
color-scheme: light dark;
|
|
@@ -38,11 +38,12 @@ const D = `
|
|
|
38
38
|
.required { color: var(--ui-dp-field-error); font-size: 11px; }
|
|
39
39
|
|
|
40
40
|
.field {
|
|
41
|
+
box-sizing: border-box;
|
|
41
42
|
display: grid;
|
|
42
43
|
grid-template-columns: auto minmax(0, 1fr) auto auto;
|
|
43
44
|
align-items: center;
|
|
44
45
|
gap: 8px;
|
|
45
|
-
min-block-size:
|
|
46
|
+
min-block-size: var(--ui-control-height-2, 32px);
|
|
46
47
|
border: 1px solid var(--ui-dp-border);
|
|
47
48
|
border-radius: var(--ui-dp-radius);
|
|
48
49
|
background: var(--ui-dp-bg);
|
|
@@ -51,8 +52,10 @@ const D = `
|
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
.field:focus-within {
|
|
54
|
-
border-color:
|
|
55
|
-
|
|
55
|
+
border-color: var(--ui-ring-color, var(--ui-dp-accent));
|
|
56
|
+
outline: var(--ui-ring-width, 2px) solid var(--ui-ring-color, var(--ui-dp-accent));
|
|
57
|
+
outline-offset: -1px;
|
|
58
|
+
box-shadow: none;
|
|
56
59
|
}
|
|
57
60
|
|
|
58
61
|
.input {
|
|
@@ -62,7 +65,7 @@ const D = `
|
|
|
62
65
|
color: var(--ui-dp-text);
|
|
63
66
|
inline-size: 100%;
|
|
64
67
|
min-inline-size: 0;
|
|
65
|
-
padding:
|
|
68
|
+
padding: 0;
|
|
66
69
|
font: 500 14px/1.35 "Inter", "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
67
70
|
}
|
|
68
71
|
|
|
@@ -83,8 +86,8 @@ const D = `
|
|
|
83
86
|
.btn {
|
|
84
87
|
border: 0;
|
|
85
88
|
background: transparent;
|
|
86
|
-
inline-size:
|
|
87
|
-
block-size:
|
|
89
|
+
inline-size: var(--ui-dp-action-size, 24px);
|
|
90
|
+
block-size: var(--ui-dp-action-size, 24px);
|
|
88
91
|
border-radius: 8px;
|
|
89
92
|
color: color-mix(in srgb, var(--ui-dp-text) 72%, transparent);
|
|
90
93
|
cursor: pointer;
|
|
@@ -146,11 +149,11 @@ const D = `
|
|
|
146
149
|
`, L = `
|
|
147
150
|
.ui-time-picker-overlay-host {
|
|
148
151
|
--ui-dp-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 96%, transparent);
|
|
149
|
-
--ui-dp-border: color-
|
|
152
|
+
--ui-dp-border: var(--ui-color-line, var(--ui-color-border, #cbd5e1));
|
|
150
153
|
--ui-dp-text: var(--ui-color-text, #0f172a);
|
|
151
154
|
--ui-dp-muted: var(--ui-color-muted, #526175);
|
|
152
155
|
--ui-dp-accent: var(--ui-color-primary, #2563eb);
|
|
153
|
-
--ui-dp-radius:
|
|
156
|
+
--ui-dp-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
154
157
|
}
|
|
155
158
|
.overlay { position: fixed; z-index: var(--ui-dp-z, 1600); pointer-events: none; }
|
|
156
159
|
.panel {
|
|
@@ -360,7 +363,7 @@ class T extends E {
|
|
|
360
363
|
}
|
|
361
364
|
_normalizeCanonical(t) {
|
|
362
365
|
if (!t) return null;
|
|
363
|
-
const e =
|
|
366
|
+
const e = v(t);
|
|
364
367
|
return e ? m(e.hours, e.minutes, e.seconds, this._withSeconds()) : null;
|
|
365
368
|
}
|
|
366
369
|
_minTime() {
|
|
@@ -469,7 +472,7 @@ class T extends E {
|
|
|
469
472
|
e.style.position = "absolute", e.style.top = `${Math.round(s.top)}px`, e.style.left = `${Math.round(s.left)}px`, e.setAttribute("data-placement", s.placement);
|
|
470
473
|
}
|
|
471
474
|
_timeParts(t) {
|
|
472
|
-
const e =
|
|
475
|
+
const e = v(t || "00:00") || { hours: 0, minutes: 0, seconds: 0 }, i = e.hours >= 12 ? "pm" : "am";
|
|
473
476
|
return {
|
|
474
477
|
hours: e.hours,
|
|
475
478
|
minutes: e.minutes,
|
|
@@ -478,13 +481,13 @@ class T extends E {
|
|
|
478
481
|
};
|
|
479
482
|
}
|
|
480
483
|
_buildOverlayContent(t) {
|
|
481
|
-
const e = this._translations(), i = this._timeParts(this._pending), s = this._is12h(), n = this._withSeconds(), r = s ? i.hours % 12 || 12 : i.hours, o = this._minuteStep(), l = this._secondStep(), a = Array.from({ length: s ? 12 : 24 }, (
|
|
484
|
+
const e = this._translations(), i = this._timeParts(this._pending), s = this._is12h(), n = this._withSeconds(), r = s ? i.hours % 12 || 12 : i.hours, o = this._minuteStep(), l = this._secondStep(), a = Array.from({ length: s ? 12 : 24 }, (f, p) => {
|
|
482
485
|
const u = s ? p + 1 : p;
|
|
483
486
|
return `<option value="${u}" ${u === r ? "selected" : ""}>${_(u)}</option>`;
|
|
484
|
-
}).join(""), h = Array.from({ length: Math.ceil(60 / o) }, (
|
|
487
|
+
}).join(""), h = Array.from({ length: Math.ceil(60 / o) }, (f, p) => {
|
|
485
488
|
const u = Math.min(59, p * o);
|
|
486
489
|
return `<option value="${u}" ${u === i.minutes ? "selected" : ""}>${_(u)}</option>`;
|
|
487
|
-
}).join(""), g = Array.from({ length: Math.ceil(60 / l) }, (
|
|
490
|
+
}).join(""), g = Array.from({ length: Math.ceil(60 / l) }, (f, p) => {
|
|
488
491
|
const u = Math.min(59, p * l);
|
|
489
492
|
return `<option value="${u}" ${u === i.seconds ? "selected" : ""}>${_(u)}</option>`;
|
|
490
493
|
}).join(""), x = `
|
|
@@ -598,7 +601,7 @@ class T extends E {
|
|
|
598
601
|
this._commit(i, "blur");
|
|
599
602
|
}
|
|
600
603
|
_stepBy(t) {
|
|
601
|
-
const e =
|
|
604
|
+
const e = v(this._pending || this._value || "00:00") || { hours: 0, minutes: 0, seconds: 0 }, i = this._minuteStep() * t, s = ((e.hours * 60 + e.minutes + i) % 1440 + 1440) % 1440, n = Math.floor(s / 60), r = s % 60, o = m(n, r, e.seconds, this._withSeconds());
|
|
602
605
|
this._pending = this._clampToBounds(o), this._emitInput("keyboard-step"), this._updateHostState();
|
|
603
606
|
}
|
|
604
607
|
_onRootKeyDown(t) {
|
|
@@ -676,7 +679,7 @@ class T extends E {
|
|
|
676
679
|
}
|
|
677
680
|
render() {
|
|
678
681
|
this._hasView || (this.setContent(`
|
|
679
|
-
<style>${
|
|
682
|
+
<style>${M}</style>
|
|
680
683
|
<div class="root">
|
|
681
684
|
<label class="label" part="label">
|
|
682
685
|
<span class="label-text"></span>
|
|
@@ -685,8 +688,8 @@ class T extends E {
|
|
|
685
688
|
<div class="field" part="field input">
|
|
686
689
|
<span class="icon" part="icon">${D}</span>
|
|
687
690
|
<input class="input" part="input" />
|
|
688
|
-
<button type="button" class="btn" part="clear" data-action="clear">${
|
|
689
|
-
<button type="button" class="btn" part="toggle" data-action="toggle">${
|
|
691
|
+
<button type="button" class="btn" part="clear" data-action="clear">${z}</button>
|
|
692
|
+
<button type="button" class="btn" part="toggle" data-action="toggle">${$}</button>
|
|
690
693
|
</div>
|
|
691
694
|
<div class="hint" part="hint"></div>
|
|
692
695
|
<div class="error" part="error" role="alert"></div>
|
package/dist/timeline.cjs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("./ElementBase-DxbvhLJs.js"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("./ElementBase-DxbvhLJs.js"),u=`
|
|
2
2
|
:host {
|
|
3
3
|
--ui-timeline-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 95%, transparent);
|
|
4
|
-
--ui-timeline-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent);
|
|
4
|
+
--ui-timeline-border: var(--ui-color-line, color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent));
|
|
5
5
|
--ui-timeline-text: var(--ui-color-text, #0f172a);
|
|
6
6
|
--ui-timeline-muted: var(--ui-color-muted, #526175);
|
|
7
7
|
--ui-timeline-accent: var(--ui-color-primary, #2563eb);
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
.frame {
|
|
17
|
-
border:
|
|
18
|
-
border-radius:
|
|
19
|
-
background:
|
|
20
|
-
padding:
|
|
21
|
-
box-shadow:
|
|
17
|
+
border: 0;
|
|
18
|
+
border-radius: 0;
|
|
19
|
+
background: transparent;
|
|
20
|
+
padding: 0;
|
|
21
|
+
box-shadow: none;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
.list {
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
margin-top: 3px;
|
|
63
63
|
border-radius: 999px;
|
|
64
64
|
background: var(--dot, var(--ui-timeline-accent));
|
|
65
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--dot, var(--ui-timeline-accent))
|
|
65
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--dot, var(--ui-timeline-accent)) 18%, var(--ui-color-background, #ffffff));
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
.item[data-active="true"] .dot::after {
|
|
@@ -181,7 +181,7 @@
|
|
|
181
181
|
background: Highlight;
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
|
-
`,o={default:"var(--ui-color-primary, #2563eb)",info:"var(--ui-color-info, #0e7490)",success:"var(--ui-color-success, #15803d)",warning:"var(--ui-color-warning, #b45309)",danger:"var(--ui-color-danger, #dc2626)"};function a(n){return n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function
|
|
184
|
+
`,o={default:"var(--ui-color-primary, #2563eb)",info:"var(--ui-color-info, #0e7490)",success:"var(--ui-color-success, #15803d)",warning:"var(--ui-color-warning, #b45309)",danger:"var(--ui-color-danger, #dc2626)"};function a(n){return n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function m(n){if(!n)return[];try{const t=JSON.parse(n);return Array.isArray(t)?t.map(e=>{if(!e||typeof e!="object")return null;const r=String(e.title||"").trim();return r?{title:r,description:e.description?String(e.description):void 0,time:e.time?String(e.time):void 0,tone:e.tone,active:!!e.active}:null}).filter(Boolean):[]}catch{return[]}}class s extends d.ElementBase{static get observedAttributes(){return["items","variant","headless"]}render(){const t=m(this.getAttribute("items")),e=t.some(i=>i.active),r=t.length?t.map((i,l)=>{const c=o[i.tone||"default"]||o.default;return`
|
|
185
185
|
<li class="item" part="item" data-active="${(e?!!i.active:l===0)?"true":"false"}">
|
|
186
186
|
<div class="rail"><span class="dot" style="--dot:${c}"></span></div>
|
|
187
187
|
<article class="content">
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
</article>
|
|
192
192
|
</li>
|
|
193
193
|
`}).join(""):'<div class="description">No timeline entries</div>';this.setContent(`
|
|
194
|
-
<style>${
|
|
194
|
+
<style>${u}</style>
|
|
195
195
|
<section class="frame" part="frame">
|
|
196
196
|
<ol class="list" part="list">${r}</ol>
|
|
197
197
|
</section>
|
package/dist/timeline.esm.js
CHANGED
|
@@ -2,7 +2,7 @@ import { E as c } from "./ElementBase-BeZT54Hj.mjs";
|
|
|
2
2
|
const d = `
|
|
3
3
|
:host {
|
|
4
4
|
--ui-timeline-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 95%, transparent);
|
|
5
|
-
--ui-timeline-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent);
|
|
5
|
+
--ui-timeline-border: var(--ui-color-line, color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent));
|
|
6
6
|
--ui-timeline-text: var(--ui-color-text, #0f172a);
|
|
7
7
|
--ui-timeline-muted: var(--ui-color-muted, #526175);
|
|
8
8
|
--ui-timeline-accent: var(--ui-color-primary, #2563eb);
|
|
@@ -15,11 +15,11 @@ const d = `
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
.frame {
|
|
18
|
-
border:
|
|
19
|
-
border-radius:
|
|
20
|
-
background:
|
|
21
|
-
padding:
|
|
22
|
-
box-shadow:
|
|
18
|
+
border: 0;
|
|
19
|
+
border-radius: 0;
|
|
20
|
+
background: transparent;
|
|
21
|
+
padding: 0;
|
|
22
|
+
box-shadow: none;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
.list {
|
|
@@ -63,7 +63,7 @@ const d = `
|
|
|
63
63
|
margin-top: 3px;
|
|
64
64
|
border-radius: 999px;
|
|
65
65
|
background: var(--dot, var(--ui-timeline-accent));
|
|
66
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--dot, var(--ui-timeline-accent))
|
|
66
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--dot, var(--ui-timeline-accent)) 18%, var(--ui-color-background, #ffffff));
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
.item[data-active="true"] .dot::after {
|