@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
|
@@ -170,37 +170,38 @@ function Le(r, e) {
|
|
|
170
170
|
function Be(r, e) {
|
|
171
171
|
const t = Pe(r), n = `${t}::${e || ""}`, a = se.get(n);
|
|
172
172
|
if (a) return a;
|
|
173
|
-
const i = Ee[t], s = Le(e, t),
|
|
174
|
-
return se.set(n,
|
|
173
|
+
const i = Ee[t], s = Le(e, t), l = { ...i, ...s };
|
|
174
|
+
return se.set(n, l), l;
|
|
175
175
|
}
|
|
176
176
|
const Fe = `
|
|
177
177
|
:host {
|
|
178
|
-
--ui-calendar-bg: color-
|
|
179
|
-
--ui-calendar-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 74%, transparent);
|
|
178
|
+
--ui-calendar-bg: var(--color-panel-solid, var(--ui-color-surface, #ffffff));
|
|
179
|
+
--ui-calendar-border: var(--ui-color-line-subtle, color-mix(in srgb, var(--ui-color-border, #cbd5e1) 74%, transparent));
|
|
180
180
|
--ui-calendar-text: var(--ui-color-text, #0f172a);
|
|
181
181
|
--ui-calendar-muted: var(--ui-color-muted, #526175);
|
|
182
182
|
--ui-calendar-accent: var(--ui-color-primary, #2563eb);
|
|
183
183
|
|
|
184
|
-
--ui-calendar-radius:
|
|
184
|
+
--ui-calendar-radius: calc(var(--ui-radius, 6px) + 4px);
|
|
185
185
|
--ui-calendar-shadow: none;
|
|
186
186
|
--ui-calendar-gap: 10px;
|
|
187
|
-
--ui-calendar-day-radius:
|
|
188
|
-
--ui-calendar-day-hover-bg: color-mix(in srgb, var(--ui-calendar-accent) 10%, transparent);
|
|
189
|
-
--ui-calendar-selected-bg:
|
|
190
|
-
--ui-calendar-selected-
|
|
187
|
+
--ui-calendar-day-radius: var(--ui-control-radius-2, var(--ui-radius, 6px));
|
|
188
|
+
--ui-calendar-day-hover-bg: var(--ui-color-fill, color-mix(in srgb, var(--ui-calendar-accent) 10%, transparent));
|
|
189
|
+
--ui-calendar-selected-bg: var(--ui-calendar-accent);
|
|
190
|
+
--ui-calendar-selected-color: var(--ui-color-foreground-on-primary, #ffffff);
|
|
191
|
+
--ui-calendar-selected-border: var(--ui-calendar-accent);
|
|
191
192
|
--ui-calendar-today-ring: color-mix(in srgb, var(--ui-calendar-accent) 56%, transparent);
|
|
192
193
|
--ui-calendar-range-bg: color-mix(in srgb, var(--ui-calendar-accent) 9%, transparent);
|
|
193
194
|
--ui-calendar-range-edge: color-mix(in srgb, var(--ui-calendar-accent) 20%, transparent);
|
|
194
195
|
--ui-calendar-disabled-opacity: 0.45;
|
|
195
196
|
|
|
196
|
-
--ui-calendar-day-height:
|
|
197
|
+
--ui-calendar-day-height: 40px;
|
|
197
198
|
--ui-calendar-day-font-size: 12px;
|
|
198
199
|
--ui-calendar-weekday-font-size: 11px;
|
|
199
200
|
--ui-calendar-title-font-size: 14px;
|
|
200
201
|
--ui-calendar-day-padding-block: 6px;
|
|
201
202
|
--ui-calendar-day-padding-inline: 6px;
|
|
202
203
|
--ui-calendar-frame-padding: 12px;
|
|
203
|
-
--ui-calendar-week-gap:
|
|
204
|
+
--ui-calendar-week-gap: 2px;
|
|
204
205
|
--ui-calendar-control-height: 30px;
|
|
205
206
|
|
|
206
207
|
display: block;
|
|
@@ -439,7 +440,7 @@ const Fe = `
|
|
|
439
440
|
border: 1px solid color-mix(in srgb, var(--ui-calendar-border) 84%, transparent);
|
|
440
441
|
border-radius: 12px;
|
|
441
442
|
background: color-mix(in srgb, var(--ui-calendar-bg) 96%, transparent);
|
|
442
|
-
box-shadow: 0
|
|
443
|
+
box-shadow: var(--shadow-5, 0 8px 24px rgba(15, 23, 42, 0.1));
|
|
443
444
|
padding: 10px;
|
|
444
445
|
display: grid;
|
|
445
446
|
gap: 8px;
|
|
@@ -526,11 +527,11 @@ const Fe = `
|
|
|
526
527
|
}
|
|
527
528
|
|
|
528
529
|
.day {
|
|
529
|
-
border: 1px solid
|
|
530
|
+
border: 1px solid transparent;
|
|
530
531
|
border-radius: var(--ui-calendar-day-radius);
|
|
531
532
|
min-block-size: var(--ui-calendar-day-height);
|
|
532
533
|
padding: var(--ui-calendar-day-padding-block) var(--ui-calendar-day-padding-inline);
|
|
533
|
-
background:
|
|
534
|
+
background: transparent;
|
|
534
535
|
color: var(--ui-calendar-text);
|
|
535
536
|
display: grid;
|
|
536
537
|
align-content: center;
|
|
@@ -544,13 +545,11 @@ const Fe = `
|
|
|
544
545
|
}
|
|
545
546
|
|
|
546
547
|
.day:hover {
|
|
547
|
-
border-color: color-mix(in srgb, var(--ui-calendar-accent) 34%, var(--ui-calendar-border));
|
|
548
548
|
background: var(--ui-calendar-day-hover-bg);
|
|
549
549
|
}
|
|
550
550
|
|
|
551
551
|
.day[data-outside="true"] {
|
|
552
|
-
color:
|
|
553
|
-
background: color-mix(in srgb, var(--ui-calendar-bg) 92%, transparent);
|
|
552
|
+
color: var(--ui-calendar-muted);
|
|
554
553
|
}
|
|
555
554
|
|
|
556
555
|
.day[data-today="true"] {
|
|
@@ -560,17 +559,19 @@ const Fe = `
|
|
|
560
559
|
.day[data-selected="true"] {
|
|
561
560
|
border-color: var(--ui-calendar-selected-border);
|
|
562
561
|
background: var(--ui-calendar-selected-bg);
|
|
562
|
+
color: var(--ui-calendar-selected-color);
|
|
563
563
|
}
|
|
564
564
|
|
|
565
565
|
.day[data-range="true"] {
|
|
566
566
|
background: var(--ui-calendar-range-bg);
|
|
567
|
-
border-color:
|
|
567
|
+
border-color: transparent;
|
|
568
568
|
border-radius: 0;
|
|
569
569
|
}
|
|
570
570
|
|
|
571
571
|
.day[data-range-start="true"],
|
|
572
572
|
.day[data-range-end="true"] {
|
|
573
|
-
background: var(--ui-calendar-
|
|
573
|
+
background: var(--ui-calendar-selected-bg);
|
|
574
|
+
color: var(--ui-calendar-selected-color);
|
|
574
575
|
border-color: var(--ui-calendar-selected-border);
|
|
575
576
|
border-radius: var(--ui-calendar-day-radius);
|
|
576
577
|
}
|
|
@@ -601,7 +602,7 @@ const Fe = `
|
|
|
601
602
|
|
|
602
603
|
.day-number {
|
|
603
604
|
font-size: var(--ui-calendar-day-font-size);
|
|
604
|
-
font-weight:
|
|
605
|
+
font-weight: 500;
|
|
605
606
|
line-height: 1;
|
|
606
607
|
justify-self: center;
|
|
607
608
|
}
|
|
@@ -639,6 +640,14 @@ const Fe = `
|
|
|
639
640
|
text-overflow: ellipsis;
|
|
640
641
|
}
|
|
641
642
|
|
|
643
|
+
/* Events are drawn over the day button: on a selected (solid) day they follow its text colour. */
|
|
644
|
+
.day-cell[data-selected="true"] .event-badge,
|
|
645
|
+
.day-cell[data-selected="true"] .event-count {
|
|
646
|
+
background: transparent;
|
|
647
|
+
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ui-calendar-selected-color) 60%, transparent);
|
|
648
|
+
color: var(--ui-calendar-selected-color);
|
|
649
|
+
}
|
|
650
|
+
|
|
642
651
|
.event-count {
|
|
643
652
|
inline-size: 16px;
|
|
644
653
|
block-size: 16px;
|
|
@@ -667,7 +676,7 @@ const Fe = `
|
|
|
667
676
|
border-radius: 8px;
|
|
668
677
|
border: 1px solid color-mix(in srgb, var(--ui-calendar-border) 80%, transparent);
|
|
669
678
|
background: color-mix(in srgb, var(--ui-calendar-bg) 98%, #ffffff 2%);
|
|
670
|
-
box-shadow: 0
|
|
679
|
+
box-shadow: var(--shadow-5, 0 8px 24px rgba(15, 23, 42, 0.14));
|
|
671
680
|
color: var(--ui-calendar-text);
|
|
672
681
|
font: 500 11px/1.35 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
673
682
|
/* Not drawn at all until its day is hovered or focused, so a hidden tooltip near an edge cannot widen the page. */
|
|
@@ -852,7 +861,7 @@ const Fe = `
|
|
|
852
861
|
from { background-position: 120% 0; }
|
|
853
862
|
to { background-position: -120% 0; }
|
|
854
863
|
}
|
|
855
|
-
`,
|
|
864
|
+
`, K = {
|
|
856
865
|
default: "var(--ui-color-primary, #2563eb)",
|
|
857
866
|
info: "var(--ui-color-info, #0e7490)",
|
|
858
867
|
success: "var(--ui-color-success, #15803d)",
|
|
@@ -909,23 +918,23 @@ function He(r, e) {
|
|
|
909
918
|
const t = c(r);
|
|
910
919
|
return t ? b(P(t, e)) : r;
|
|
911
920
|
}
|
|
912
|
-
function
|
|
921
|
+
function le(r, e) {
|
|
913
922
|
return { y: r, m: e, d: 1 };
|
|
914
923
|
}
|
|
915
924
|
function Ne(r, e) {
|
|
916
925
|
return { y: r, m: e, d: F(r, e) };
|
|
917
926
|
}
|
|
918
|
-
function
|
|
927
|
+
function de(r) {
|
|
919
928
|
const e = c(r);
|
|
920
929
|
return e ? B(e).getUTCDay() : 0;
|
|
921
930
|
}
|
|
922
|
-
function
|
|
931
|
+
function J(r, e) {
|
|
923
932
|
if (r == null || r === "") return e;
|
|
924
933
|
const t = Number(r);
|
|
925
934
|
return Number.isFinite(t) ? Math.trunc(t) : e;
|
|
926
935
|
}
|
|
927
936
|
function ce(r, e) {
|
|
928
|
-
const t =
|
|
937
|
+
const t = J(r, e);
|
|
929
938
|
return t < 1 ? e : t;
|
|
930
939
|
}
|
|
931
940
|
function Ye(r, e) {
|
|
@@ -936,7 +945,7 @@ function Ye(r, e) {
|
|
|
936
945
|
function m(r) {
|
|
937
946
|
return r.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
938
947
|
}
|
|
939
|
-
function
|
|
948
|
+
function W(r, e, t) {
|
|
940
949
|
return w(r, e) >= 0 && w(r, t) <= 0;
|
|
941
950
|
}
|
|
942
951
|
function $(r, e) {
|
|
@@ -1038,16 +1047,16 @@ class Je extends Te {
|
|
|
1038
1047
|
i -= 12, a += 1;
|
|
1039
1048
|
let s = !1;
|
|
1040
1049
|
if (String(a) !== (this.getAttribute("year") || "") && (this.setAttribute("year", String(a)), s = !0), String(i) !== (this.getAttribute("month") || "") && (this.setAttribute("month", String(i)), s = !0), s) {
|
|
1041
|
-
const
|
|
1050
|
+
const l = { year: a, month: i, source: n };
|
|
1042
1051
|
this.dispatchEvent(
|
|
1043
1052
|
new CustomEvent("month-change", {
|
|
1044
|
-
detail:
|
|
1053
|
+
detail: l,
|
|
1045
1054
|
bubbles: !0,
|
|
1046
1055
|
composed: !0
|
|
1047
1056
|
})
|
|
1048
1057
|
), this.dispatchEvent(
|
|
1049
1058
|
new CustomEvent("ui-month-change", {
|
|
1050
|
-
detail:
|
|
1059
|
+
detail: l,
|
|
1051
1060
|
bubbles: !0,
|
|
1052
1061
|
composed: !0
|
|
1053
1062
|
})
|
|
@@ -1075,7 +1084,7 @@ class Je extends Te {
|
|
|
1075
1084
|
}
|
|
1076
1085
|
}
|
|
1077
1086
|
_resolvedView() {
|
|
1078
|
-
const e = /* @__PURE__ */ new Date(), t =
|
|
1087
|
+
const e = /* @__PURE__ */ new Date(), t = J(this.getAttribute("year"), e.getFullYear()), n = J(this.getAttribute("month"), e.getMonth() + 1);
|
|
1079
1088
|
return {
|
|
1080
1089
|
year: t,
|
|
1081
1090
|
month: O(n, 1, 12)
|
|
@@ -1094,7 +1103,7 @@ class Je extends Te {
|
|
|
1094
1103
|
return e ? b(e) : null;
|
|
1095
1104
|
}
|
|
1096
1105
|
_monthHasAllowedDay(e, t, n, a) {
|
|
1097
|
-
const i = b(
|
|
1106
|
+
const i = b(le(e, t)), s = b(Ne(e, t));
|
|
1098
1107
|
return !(n && w(s, n) < 0 || a && w(i, a) > 0);
|
|
1099
1108
|
}
|
|
1100
1109
|
_resolveSelectionMode() {
|
|
@@ -1174,7 +1183,7 @@ class Je extends Te {
|
|
|
1174
1183
|
if (!Array.isArray(i))
|
|
1175
1184
|
n = { mode: e, values: [] };
|
|
1176
1185
|
else {
|
|
1177
|
-
const s = pe(i.map((
|
|
1186
|
+
const s = pe(i.map((l) => String(l || "")));
|
|
1178
1187
|
n = { mode: e, values: s };
|
|
1179
1188
|
}
|
|
1180
1189
|
} catch {
|
|
@@ -1184,7 +1193,7 @@ class Je extends Te {
|
|
|
1184
1193
|
}
|
|
1185
1194
|
if (e === "range") {
|
|
1186
1195
|
try {
|
|
1187
|
-
const i = JSON.parse(t), s = i && typeof i == "object" ? String(i.start || "") : "",
|
|
1196
|
+
const i = JSON.parse(t), s = i && typeof i == "object" ? String(i.start || "") : "", l = i && typeof i == "object" ? String(i.end || "") : "", o = c(s), p = c(l), u = o ? b(o) : null, h = p ? b(p) : null;
|
|
1188
1197
|
if (u && h) {
|
|
1189
1198
|
const f = $(u, h);
|
|
1190
1199
|
n = { mode: e, start: f.start, end: f.end };
|
|
@@ -1247,8 +1256,8 @@ class Je extends Te {
|
|
|
1247
1256
|
if (!c(e)) return;
|
|
1248
1257
|
const a = this._resolveSelectionMode(), { minIso: i, maxIso: s } = this._resolveBounds();
|
|
1249
1258
|
if (this._isDateOutOfBounds(e, i, s)) return;
|
|
1250
|
-
const
|
|
1251
|
-
if (this._isInteractionDisabled() ||
|
|
1259
|
+
const l = this._isReadonly();
|
|
1260
|
+
if (this._isInteractionDisabled() || l) return;
|
|
1252
1261
|
let o = this._normalizeValueForMode(a);
|
|
1253
1262
|
if (a === "single")
|
|
1254
1263
|
o = { mode: a, value: e };
|
|
@@ -1258,18 +1267,18 @@ class Je extends Te {
|
|
|
1258
1267
|
} else {
|
|
1259
1268
|
const h = this._normalizeValueForMode("range"), f = h.start, _ = h.end;
|
|
1260
1269
|
if (t) {
|
|
1261
|
-
const
|
|
1262
|
-
if (!c(
|
|
1270
|
+
const d = this._rangeKeyboardAnchor || f || this._focusedIso || e;
|
|
1271
|
+
if (!c(d))
|
|
1263
1272
|
this._rangeKeyboardAnchor = e, o = { mode: a, start: e, end: null };
|
|
1264
1273
|
else {
|
|
1265
|
-
const
|
|
1266
|
-
o = { mode: a, start:
|
|
1274
|
+
const g = $(d, e);
|
|
1275
|
+
o = { mode: a, start: g.start, end: g.end };
|
|
1267
1276
|
}
|
|
1268
1277
|
} else if (!f || f && _)
|
|
1269
1278
|
this._rangeKeyboardAnchor = e, o = { mode: a, start: e, end: null };
|
|
1270
1279
|
else if (f && !_) {
|
|
1271
|
-
const
|
|
1272
|
-
o = { mode: a, start:
|
|
1280
|
+
const d = $(f, e);
|
|
1281
|
+
o = { mode: a, start: d.start, end: d.end };
|
|
1273
1282
|
}
|
|
1274
1283
|
}
|
|
1275
1284
|
const p = this.getAttribute("value"), u = this._serializeSelection(o);
|
|
@@ -1300,8 +1309,8 @@ class Je extends Te {
|
|
|
1300
1309
|
_weekdayLabels(e, t) {
|
|
1301
1310
|
const n = [], a = new Intl.DateTimeFormat(e, { weekday: "short", timeZone: "UTC" });
|
|
1302
1311
|
for (let i = 0; i < 7; i += 1) {
|
|
1303
|
-
const s = (t + i) % 7,
|
|
1304
|
-
n.push(a.format(
|
|
1312
|
+
const s = (t + i) % 7, l = new Date(Date.UTC(2024, 0, 7 + s));
|
|
1313
|
+
n.push(a.format(l));
|
|
1305
1314
|
}
|
|
1306
1315
|
return n;
|
|
1307
1316
|
}
|
|
@@ -1329,10 +1338,10 @@ class Je extends Te {
|
|
|
1329
1338
|
const n = [];
|
|
1330
1339
|
t.forEach((a) => {
|
|
1331
1340
|
if (!a || typeof a != "object") return;
|
|
1332
|
-
const i = String(a.date || "").trim(), s = c(i),
|
|
1333
|
-
if (!
|
|
1341
|
+
const i = String(a.date || "").trim(), s = c(i), l = s ? b(s) : "";
|
|
1342
|
+
if (!l) return;
|
|
1334
1343
|
const o = String(a.tone || "default"), p = o === "success" || o === "warning" || o === "danger" || o === "info" ? o : "default", u = a.title != null ? String(a.title) : void 0;
|
|
1335
|
-
n.push({ date:
|
|
1344
|
+
n.push({ date: l, title: u, tone: p });
|
|
1336
1345
|
}), this._eventsParsedCache = n, n.forEach((a) => {
|
|
1337
1346
|
this._eventsByDateCache.has(a.date) || this._eventsByDateCache.set(a.date, []), this._eventsByDateCache.get(a.date).push(a);
|
|
1338
1347
|
});
|
|
@@ -1340,20 +1349,20 @@ class Je extends Te {
|
|
|
1340
1349
|
}
|
|
1341
1350
|
}
|
|
1342
1351
|
_buildCells(e, t, n, a, i, s) {
|
|
1343
|
-
const
|
|
1352
|
+
const l = b(le(e, t)), p = (de(l) - n + 7) % 7, u = c(l);
|
|
1344
1353
|
if (!u) return [];
|
|
1345
1354
|
const h = B(u);
|
|
1346
1355
|
h.setUTCDate(h.getUTCDate() - p);
|
|
1347
1356
|
const f = [];
|
|
1348
1357
|
for (let _ = 0; _ < 42; _ += 1) {
|
|
1349
1358
|
_ > 0 && h.setUTCDate(h.getUTCDate() + 1);
|
|
1350
|
-
const
|
|
1359
|
+
const d = fe(h), g = b(d), D = d.y !== e || d.m !== t, y = this._isDateBlocked(g, D, a, i);
|
|
1351
1360
|
f.push({
|
|
1352
|
-
iso:
|
|
1353
|
-
parts:
|
|
1361
|
+
iso: g,
|
|
1362
|
+
parts: d,
|
|
1354
1363
|
outside: D,
|
|
1355
1364
|
disabled: y,
|
|
1356
|
-
today:
|
|
1365
|
+
today: g === s
|
|
1357
1366
|
});
|
|
1358
1367
|
}
|
|
1359
1368
|
return f;
|
|
@@ -1368,8 +1377,8 @@ class Je extends Te {
|
|
|
1368
1377
|
};
|
|
1369
1378
|
let s = i(this._focusedIso);
|
|
1370
1379
|
if (s || (t.mode === "single" && (s = i(t.value)), !s && t.mode === "range" && (s = i(t.end || t.start)), !s && t.mode === "multiple" && (s = i(t.values[0])), s || (s = i(n)), s)) return s;
|
|
1371
|
-
const
|
|
1372
|
-
return
|
|
1380
|
+
const l = e.find((o) => !o.disabled);
|
|
1381
|
+
return l ? l.iso : e[0]?.iso || "";
|
|
1373
1382
|
}
|
|
1374
1383
|
_focusDateButton(e) {
|
|
1375
1384
|
if (!e || this.root.activeElement?.getAttribute("data-date") === e) return;
|
|
@@ -1390,7 +1399,7 @@ class Je extends Te {
|
|
|
1390
1399
|
a && (this.goToMonth(a.y, a.m, "keyboard"), this._focusedIso = n, this._shouldRefocus = !0, this.requestRender());
|
|
1391
1400
|
}
|
|
1392
1401
|
_focusWeekBoundary(e, t, n) {
|
|
1393
|
-
const i = (
|
|
1402
|
+
const i = (de(e) - n + 7) % 7, s = t === "start" ? -i : 6 - i;
|
|
1394
1403
|
this._moveFocusByDays(e, s, !1);
|
|
1395
1404
|
}
|
|
1396
1405
|
_onPointerOver(e) {
|
|
@@ -1401,8 +1410,8 @@ class Je extends Te {
|
|
|
1401
1410
|
if (!a) return;
|
|
1402
1411
|
const i = a.getAttribute("data-date") || "";
|
|
1403
1412
|
if (!c(i)) return;
|
|
1404
|
-
const s = a.getAttribute("data-outside") === "true", { minIso:
|
|
1405
|
-
this._isDateBlocked(i, s,
|
|
1413
|
+
const s = a.getAttribute("data-outside") === "true", { minIso: l, maxIso: o } = this._resolveBounds();
|
|
1414
|
+
this._isDateBlocked(i, s, l, o) || this._hoverIso !== i && (this._hoverIso = i, this.requestRender());
|
|
1406
1415
|
}
|
|
1407
1416
|
_onMouseLeave() {
|
|
1408
1417
|
this._hoverIso != null && (this._hoverIso = null, this.requestRender());
|
|
@@ -1422,16 +1431,16 @@ class Je extends Te {
|
|
|
1422
1431
|
_onClick(e) {
|
|
1423
1432
|
const t = e.target;
|
|
1424
1433
|
if (!t) return;
|
|
1425
|
-
const n = t.closest("[data-action]"), a = n?.getAttribute("data-action") || "", { year: i, month: s } = this._resolvedView(),
|
|
1434
|
+
const n = t.closest("[data-action]"), a = n?.getAttribute("data-action") || "", { year: i, month: s } = this._resolvedView(), l = this._todayIso(), o = c(l);
|
|
1426
1435
|
if (a === "prev-month" || a === "next-month") {
|
|
1427
1436
|
if (this._isInteractionDisabled()) return;
|
|
1428
|
-
const
|
|
1437
|
+
const d = a === "prev-month" ? -1 : 1, D = (this._focusedIso ? c(this._focusedIso) : null) || { y: i, m: s, d: 1 }, y = P(D, d);
|
|
1429
1438
|
this.goToMonth(y.y, y.m, "pointer"), this._focusedIso = b({ y: y.y, m: y.m, d: O(D.d, 1, F(y.y, y.m)) }), this._shouldRefocus = !0, this.requestRender();
|
|
1430
1439
|
return;
|
|
1431
1440
|
}
|
|
1432
1441
|
if (a === "today") {
|
|
1433
1442
|
if (this._isInteractionDisabled()) return;
|
|
1434
|
-
this.goToMonth(o.y, o.m, "pointer"), this._focusedIso =
|
|
1443
|
+
this.goToMonth(o.y, o.m, "pointer"), this._focusedIso = l, this._shouldRefocus = !0, this._isReadonly() ? this.requestRender() : this._applySelection(l, !1, "pointer");
|
|
1435
1444
|
return;
|
|
1436
1445
|
}
|
|
1437
1446
|
if (a === "toggle-monthyear") {
|
|
@@ -1440,15 +1449,15 @@ class Je extends Te {
|
|
|
1440
1449
|
}
|
|
1441
1450
|
if (a === "picker-prev-year" || a === "picker-next-year") {
|
|
1442
1451
|
if (this._isInteractionDisabled()) return;
|
|
1443
|
-
const
|
|
1444
|
-
this.goToMonth(i +
|
|
1452
|
+
const d = a === "picker-prev-year" ? -1 : 1;
|
|
1453
|
+
this.goToMonth(i + d, s, "pointer"), this._pickerOpen = !0, this._shouldRefocus = !0, this.requestRender();
|
|
1445
1454
|
return;
|
|
1446
1455
|
}
|
|
1447
1456
|
if (a === "pick-month") {
|
|
1448
1457
|
if (this._isInteractionDisabled()) return;
|
|
1449
|
-
const
|
|
1450
|
-
if (!Number.isInteger(
|
|
1451
|
-
this.goToMonth(i,
|
|
1458
|
+
const d = Number(n?.getAttribute("data-month") || "");
|
|
1459
|
+
if (!Number.isInteger(d) || d < 1 || d > 12) return;
|
|
1460
|
+
this.goToMonth(i, d, "pointer"), this._pickerOpen = !1, this._shouldRefocus = !0, this.requestRender();
|
|
1452
1461
|
return;
|
|
1453
1462
|
}
|
|
1454
1463
|
const p = t.closest(".day");
|
|
@@ -1458,11 +1467,11 @@ class Je extends Te {
|
|
|
1458
1467
|
const h = p.getAttribute("data-outside") === "true", { minIso: f, maxIso: _ } = this._resolveBounds();
|
|
1459
1468
|
if (!this._isDateBlocked(u, h, f, _)) {
|
|
1460
1469
|
if (h) {
|
|
1461
|
-
const
|
|
1462
|
-
if (
|
|
1463
|
-
if (
|
|
1464
|
-
const
|
|
1465
|
-
this.goToMonth(
|
|
1470
|
+
const d = this._resolveOutsideClickMode();
|
|
1471
|
+
if (d === "none") return;
|
|
1472
|
+
if (d === "navigate") {
|
|
1473
|
+
const g = c(u);
|
|
1474
|
+
this.goToMonth(g.y, g.m, "pointer");
|
|
1466
1475
|
}
|
|
1467
1476
|
}
|
|
1468
1477
|
if (this._isReadonly()) {
|
|
@@ -1481,21 +1490,21 @@ class Je extends Te {
|
|
|
1481
1490
|
if (!n) return;
|
|
1482
1491
|
const a = n.getAttribute("data-date") || "";
|
|
1483
1492
|
if (!c(a)) return;
|
|
1484
|
-
const i = ue(this.getAttribute("week-start"), this._resolveLocale()), s = this._direction() === "rtl",
|
|
1493
|
+
const i = ue(this.getAttribute("week-start"), this._resolveLocale()), s = this._direction() === "rtl", l = e.shiftKey;
|
|
1485
1494
|
if (e.key === "ArrowRight") {
|
|
1486
|
-
e.preventDefault(), this._moveFocusByDays(a, s ? -1 : 1,
|
|
1495
|
+
e.preventDefault(), this._moveFocusByDays(a, s ? -1 : 1, l);
|
|
1487
1496
|
return;
|
|
1488
1497
|
}
|
|
1489
1498
|
if (e.key === "ArrowLeft") {
|
|
1490
|
-
e.preventDefault(), this._moveFocusByDays(a, s ? 1 : -1,
|
|
1499
|
+
e.preventDefault(), this._moveFocusByDays(a, s ? 1 : -1, l);
|
|
1491
1500
|
return;
|
|
1492
1501
|
}
|
|
1493
1502
|
if (e.key === "ArrowDown") {
|
|
1494
|
-
e.preventDefault(), this._moveFocusByDays(a, 7,
|
|
1503
|
+
e.preventDefault(), this._moveFocusByDays(a, 7, l);
|
|
1495
1504
|
return;
|
|
1496
1505
|
}
|
|
1497
1506
|
if (e.key === "ArrowUp") {
|
|
1498
|
-
e.preventDefault(), this._moveFocusByDays(a, -7,
|
|
1507
|
+
e.preventDefault(), this._moveFocusByDays(a, -7, l);
|
|
1499
1508
|
return;
|
|
1500
1509
|
}
|
|
1501
1510
|
if (e.key === "Home") {
|
|
@@ -1526,63 +1535,63 @@ class Je extends Te {
|
|
|
1526
1535
|
}
|
|
1527
1536
|
}
|
|
1528
1537
|
render() {
|
|
1529
|
-
const e = this._resolveLocale(), t = this._translations(), n = ue(this.getAttribute("week-start"), e), { year: a, month: i } = this._resolvedView(), s = this._resolveSelectionMode(), { minIso:
|
|
1530
|
-
_ ? this.setAttribute("tone", _) : this.removeAttribute("tone"),
|
|
1531
|
-
const y = this._normalizeValueForMode(s),
|
|
1532
|
-
this._focusedIso = this._resolveFocusIso(
|
|
1533
|
-
const U = this._monthLabel(a, i, e),
|
|
1538
|
+
const e = this._resolveLocale(), t = this._translations(), n = ue(this.getAttribute("week-start"), e), { year: a, month: i } = this._resolvedView(), s = this._resolveSelectionMode(), { minIso: l, maxIso: o } = this._resolveBounds(), p = this._todayIso(), u = this._resolveEventsDisplay(), h = this._eventsMax(), f = this._resolveCalendarSize(), _ = this._resolveTone(), d = this._resolveState(), g = this._isInteractionDisabled(), D = this._resolveLabel();
|
|
1539
|
+
_ ? this.setAttribute("tone", _) : this.removeAttribute("tone"), d !== "idle" ? this.setAttribute("state", d) : this.removeAttribute("state"), d === "loading" ? this.setAttribute("aria-busy", "true") : this.removeAttribute("aria-busy"), this._ensureEventsCache();
|
|
1540
|
+
const y = this._normalizeValueForMode(s), Z = this._buildCells(a, i, n, l, o, p);
|
|
1541
|
+
this._focusedIso = this._resolveFocusIso(Z, y, p);
|
|
1542
|
+
const U = this._monthLabel(a, i, e), X = P({ y: a, m: i, d: 1 }, -1), G = P({ y: a, m: i, d: 1 }, 1), ve = this._monthHasAllowedDay(X.y, X.m, l, o), ge = this._monthHasAllowedDay(G.y, G.m, l, o), be = this._weekdayLabels(e, n), Q = s === "range" ? y : null, S = Q?.start || null, M = Q?.end || null, me = s === "multiple" ? new Set(y.values) : null;
|
|
1534
1543
|
let H = null, N = null;
|
|
1535
1544
|
if (s === "range" && S && !M && this._hoverIso && c(this._hoverIso)) {
|
|
1536
1545
|
const x = $(S, this._hoverIso);
|
|
1537
1546
|
H = x.start, N = x.end;
|
|
1538
1547
|
}
|
|
1539
|
-
const
|
|
1548
|
+
const ee = [];
|
|
1540
1549
|
for (let x = 0; x < 6; x += 1) {
|
|
1541
|
-
const I =
|
|
1542
|
-
const k = this._eventsByDateCache.get(
|
|
1550
|
+
const I = Z.slice(x * 7, x * 7 + 7).map((v) => {
|
|
1551
|
+
const k = this._eventsByDateCache.get(v.iso) || [], De = this._dayAriaLabel(v.iso, e);
|
|
1543
1552
|
let A = !1;
|
|
1544
|
-
s === "single" ? A = y.value ===
|
|
1545
|
-
const T = !!(S && M &&
|
|
1553
|
+
s === "single" ? A = y.value === v.iso : s === "multiple" ? A = me?.has(v.iso) || !1 : S && M && (A = W(v.iso, S, M));
|
|
1554
|
+
const T = !!(S && M && W(v.iso, S, M)), Y = !!(S && v.iso === S), j = !!(M && v.iso === M), Se = !!(H && N && W(v.iso, H, N)), Me = !v.disabled && v.iso === this._focusedIso ? 0 : -1;
|
|
1546
1555
|
let C = "";
|
|
1547
|
-
k.length > 0 && (u === "count" ? C = `<span class="event-count" part="event-more" style="--event-tone:${
|
|
1548
|
-
const
|
|
1549
|
-
return `<span class="event-badge" part="event-dot" style="--event-tone:${
|
|
1550
|
-
}).join("") : C = k.slice(0, h).map((z) => `<span class="event-dot" part="event-dot" style="--event-tone:${
|
|
1551
|
-
const
|
|
1556
|
+
k.length > 0 && (u === "count" ? C = `<span class="event-count" part="event-more" style="--event-tone:${K[k[0].tone || "default"]}">${k.length}</span>` : u === "badges" ? C = k.slice(0, h).map((z) => {
|
|
1557
|
+
const q = m(z.title || t.event);
|
|
1558
|
+
return `<span class="event-badge" part="event-dot" style="--event-tone:${K[z.tone || "default"]}" title="${q}">${q}</span>`;
|
|
1559
|
+
}).join("") : C = k.slice(0, h).map((z) => `<span class="event-dot" part="event-dot" style="--event-tone:${K[z.tone || "default"]}"></span>`).join(""), k.length > h && u !== "count" && (C += `<span class="event-more" part="event-more">+${k.length - h}</span>`));
|
|
1560
|
+
const ne = `ui-calendar-tip-${v.iso}`, re = k.length ? k.map((R) => m(R.title || t.event)).join("<br/>") : "", ie = re.length > 0, Ce = C ? `<span class="events" part="events" aria-hidden="true">${C}</span>` : "", Ie = ie ? `<span class="tooltip" part="tooltip" id="${ne}">${re}</span>` : "", V = A || T || Y || j, Ae = T || Y || j ? "day range" : "day";
|
|
1552
1561
|
return `
|
|
1553
|
-
<div class="day-cell" part="day-cell"${C ? ` data-events="${u}"` : ""}>
|
|
1562
|
+
<div class="day-cell" part="day-cell"${C ? ` data-events="${u}"` : ""}${V ? ' data-selected="true"' : ""}>
|
|
1554
1563
|
<button
|
|
1555
1564
|
type="button"
|
|
1556
1565
|
class="day"
|
|
1557
1566
|
part="${Ae}"
|
|
1558
1567
|
role="gridcell"
|
|
1559
|
-
data-date="${
|
|
1560
|
-
data-outside="${
|
|
1561
|
-
data-disabled="${
|
|
1562
|
-
data-today="${
|
|
1563
|
-
data-selected="${
|
|
1568
|
+
data-date="${v.iso}"
|
|
1569
|
+
data-outside="${v.outside ? "true" : "false"}"
|
|
1570
|
+
data-disabled="${v.disabled ? "true" : "false"}"
|
|
1571
|
+
data-today="${v.today ? "true" : "false"}"
|
|
1572
|
+
data-selected="${V ? "true" : "false"}"
|
|
1564
1573
|
data-range="${T ? "true" : "false"}"
|
|
1565
1574
|
data-range-start="${Y ? "true" : "false"}"
|
|
1566
1575
|
data-range-end="${j ? "true" : "false"}"
|
|
1567
1576
|
data-range-preview="${!T && Se ? "true" : "false"}"
|
|
1568
|
-
aria-selected="${
|
|
1569
|
-
aria-disabled="${
|
|
1570
|
-
${
|
|
1577
|
+
aria-selected="${V ? "true" : "false"}"
|
|
1578
|
+
aria-disabled="${v.disabled ? "true" : "false"}"
|
|
1579
|
+
${v.today ? 'aria-current="date"' : ""}
|
|
1571
1580
|
aria-label="${m(De)}"
|
|
1572
|
-
${
|
|
1581
|
+
${ie ? `aria-describedby="${ne}"` : ""}
|
|
1573
1582
|
tabindex="${Me}"
|
|
1574
1583
|
>
|
|
1575
|
-
<span class="day-number" part="day-number">${
|
|
1584
|
+
<span class="day-number" part="day-number">${v.parts.d}</span>
|
|
1576
1585
|
</button>
|
|
1577
1586
|
${Ce}
|
|
1578
1587
|
${Ie}
|
|
1579
1588
|
</div>
|
|
1580
1589
|
`;
|
|
1581
1590
|
}).join("");
|
|
1582
|
-
|
|
1591
|
+
ee.push(`<div class="week" role="row">${I}</div>`);
|
|
1583
1592
|
}
|
|
1584
|
-
const ye = this._monthPickerLabels(e).map((x,
|
|
1585
|
-
const I =
|
|
1593
|
+
const ye = this._monthPickerLabels(e).map((x, ae) => {
|
|
1594
|
+
const I = ae + 1;
|
|
1586
1595
|
return `
|
|
1587
1596
|
<button
|
|
1588
1597
|
type="button"
|
|
@@ -1591,30 +1600,30 @@ class Je extends Te {
|
|
|
1591
1600
|
data-action="pick-month"
|
|
1592
1601
|
data-month="${I}"
|
|
1593
1602
|
data-active="${I === i ? "true" : "false"}"
|
|
1594
|
-
${
|
|
1603
|
+
${g ? "disabled" : ""}
|
|
1595
1604
|
>
|
|
1596
1605
|
${x}
|
|
1597
1606
|
</button>
|
|
1598
1607
|
`;
|
|
1599
|
-
}).join(""), _e = be.map((x) => `<span class="weekday" part="weekday" role="columnheader">${m(x)}</span>`).join(""), xe = this._showTodayButton() ? `<button type="button" class="today-btn" part="today" data-action="today" ${
|
|
1608
|
+
}).join(""), _e = be.map((x) => `<span class="weekday" part="weekday" role="columnheader">${m(x)}</span>`).join(""), xe = this._showTodayButton() ? `<button type="button" class="today-btn" part="today" data-action="today" ${g ? "disabled" : ""}>${m(t.today)}</button>` : "", te = d === "loading" ? t.syncingSchedule : d === "error" ? t.unableToSyncEvents : d === "success" ? t.scheduleSynced : "";
|
|
1600
1609
|
this.setContent(`
|
|
1601
1610
|
<style>${Fe}</style>
|
|
1602
1611
|
<section
|
|
1603
1612
|
class="frame"
|
|
1604
1613
|
part="frame"
|
|
1605
1614
|
data-size="${f}"
|
|
1606
|
-
data-state="${
|
|
1607
|
-
aria-disabled="${
|
|
1615
|
+
data-state="${d}"
|
|
1616
|
+
aria-disabled="${g ? "true" : "false"}"
|
|
1608
1617
|
aria-label="${m(D)}"
|
|
1609
1618
|
>
|
|
1610
1619
|
<div class="live-region" aria-live="polite" aria-atomic="true">${m(U)}</div>
|
|
1611
1620
|
|
|
1612
1621
|
<header class="header" part="header">
|
|
1613
1622
|
<div class="nav" part="nav">
|
|
1614
|
-
<button type="button" class="nav-btn" part="prev" data-action="prev-month" ${!
|
|
1623
|
+
<button type="button" class="nav-btn" part="prev" data-action="prev-month" ${!ve || g ? "disabled" : ""} aria-label="${m(t.previousMonth)}">
|
|
1615
1624
|
<svg viewBox="0 0 24 24" width="14" height="14" aria-hidden="true" focusable="false"><path d="M14.7 6.3a1 1 0 0 1 0 1.4L10.41 12l4.29 4.3a1 1 0 1 1-1.42 1.4l-5-5a1 1 0 0 1 0-1.4l5-5a1 1 0 0 1 1.42 0Z" fill="currentColor"/></svg>
|
|
1616
1625
|
</button>
|
|
1617
|
-
<button type="button" class="nav-btn" part="next" data-action="next-month" ${!
|
|
1626
|
+
<button type="button" class="nav-btn" part="next" data-action="next-month" ${!ge || g ? "disabled" : ""} aria-label="${m(t.nextMonth)}">
|
|
1618
1627
|
<svg viewBox="0 0 24 24" width="14" height="14" aria-hidden="true" focusable="false"><path d="M9.3 17.7a1 1 0 0 1 0-1.4L13.59 12 9.3 7.7a1 1 0 0 1 1.4-1.4l5 5a1 1 0 0 1 0 1.4l-5 5a1 1 0 0 1-1.4 0Z" fill="currentColor"/></svg>
|
|
1619
1628
|
</button>
|
|
1620
1629
|
</div>
|
|
@@ -1625,7 +1634,7 @@ class Je extends Te {
|
|
|
1625
1634
|
class="title-btn"
|
|
1626
1635
|
part="title monthyear"
|
|
1627
1636
|
data-action="toggle-monthyear"
|
|
1628
|
-
${
|
|
1637
|
+
${g ? "disabled" : ""}
|
|
1629
1638
|
aria-expanded="${this._pickerOpen ? "true" : "false"}"
|
|
1630
1639
|
aria-label="${m(`${U}, ${t.chooseMonthYear}`)}"
|
|
1631
1640
|
>
|
|
@@ -1634,9 +1643,9 @@ class Je extends Te {
|
|
|
1634
1643
|
</button>
|
|
1635
1644
|
<section class="monthyear-pop" part="monthyear" ${this._pickerOpen ? "" : "hidden"}>
|
|
1636
1645
|
<div class="picker-header">
|
|
1637
|
-
<button type="button" class="picker-year-btn" part="prev" data-action="picker-prev-year" ${
|
|
1646
|
+
<button type="button" class="picker-year-btn" part="prev" data-action="picker-prev-year" ${g ? "disabled" : ""} aria-label="${m(t.previousYear)}">-</button>
|
|
1638
1647
|
<span class="picker-year">${a}</span>
|
|
1639
|
-
<button type="button" class="picker-year-btn" part="next" data-action="picker-next-year" ${
|
|
1648
|
+
<button type="button" class="picker-year-btn" part="next" data-action="picker-next-year" ${g ? "disabled" : ""} aria-label="${m(t.nextYear)}">+</button>
|
|
1640
1649
|
</div>
|
|
1641
1650
|
<div class="picker-months">${ye}</div>
|
|
1642
1651
|
</section>
|
|
@@ -1647,14 +1656,14 @@ class Je extends Te {
|
|
|
1647
1656
|
</div>
|
|
1648
1657
|
</header>
|
|
1649
1658
|
|
|
1650
|
-
<div class="status" part="status" ${
|
|
1659
|
+
<div class="status" part="status" ${te ? "" : "hidden"}>
|
|
1651
1660
|
<span class="status-dot" aria-hidden="true"></span>
|
|
1652
|
-
<span>${m(
|
|
1661
|
+
<span>${m(te)}</span>
|
|
1653
1662
|
</div>
|
|
1654
1663
|
|
|
1655
1664
|
<div class="grid-wrap" part="grid" role="grid" aria-label="${m(D)}">
|
|
1656
1665
|
<div class="weekdays" role="row">${_e}</div>
|
|
1657
|
-
${
|
|
1666
|
+
${ee.join("")}
|
|
1658
1667
|
</div>
|
|
1659
1668
|
</section>
|
|
1660
1669
|
`);
|
|
@@ -1676,5 +1685,5 @@ export {
|
|
|
1676
1685
|
Ne as e,
|
|
1677
1686
|
c as p,
|
|
1678
1687
|
Be as r,
|
|
1679
|
-
|
|
1688
|
+
le as s
|
|
1680
1689
|
};
|