@revolist/ui 4.0.5-rc → 4.0.5
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/MIGRATION.md +36 -0
- package/OWNERSHIP.md +36 -36
- package/README.md +65 -408
- package/_button.scss +6 -2
- package/_chunks/{calendar-DsXIhybL.js → calendar-BQYQLu8Q.js} +5 -5
- package/_chunks/{cell-visuals-E-2oEKHg.js → cell-visuals-r6DOOhGh.js} +7 -7
- package/_chunks/{chart-frame-CuZABXVI.js → chart-frame-GprenwEg.js} +17 -13
- package/_chunks/{chevron-left-D0nc4Z5S.js → chevron-right-CM3ljziP.js} +2 -2
- package/_chunks/{choice-chips-BhP8MZjs.js → choice-chips-C5OxD0GV.js} +3 -3
- package/_chunks/{color-palette-DMJUChWC.js → color-palette-7siNch__.js} +3 -3
- package/_chunks/{color-picker-B4TQvxxB.js → color-picker-Cfc9eqZb.js} +4 -4
- package/_chunks/{component-qKctqdzk.js → component-C3k_8uIq.js} +44 -45
- package/_chunks/{component-metadata-BMOOmqx5.js → component-metadata-DlVkpW3h.js} +1 -9
- package/_chunks/{configurator-actions-C19O1rda.js → configurator-actions-vRnI54mO.js} +3 -3
- package/_chunks/{control-BkWukVt9.js → control-BRfF5DWQ.js} +32 -7
- package/_chunks/{controller-hRBm_Lfz.js → controller-BbiQuRt-.js} +5 -5
- package/_chunks/{controls-BLQnWEd7.js → controls-B3EgM_DS.js} +160 -132
- package/_chunks/{date-control-Cgw5PwlZ.js → date-control-87dcA5br.js} +5 -5
- package/_chunks/{date-time-B8rK5gpC.js → date-time-CfiFYodx.js} +316 -293
- package/_chunks/{delete-button-CW9vjLnk.js → delete-button-jneO24wa.js} +1 -1
- package/_chunks/dialog.parts-NqEEVc9P.js +131 -0
- package/_chunks/{duration-DwFXonEV.js → duration-BGZ_qJ99.js} +10 -7
- package/_chunks/{editor-commit-Bq3wSgvr.js → editor-commit-Dyo-FMgD.js} +1 -1
- package/_chunks/{editor-popup-BaaxL89T.js → editor-popup-NNP9Fh9U.js} +12 -11
- package/_chunks/field-configurator-DPulsY3l.js +288 -0
- package/_chunks/{field-context-D57PnBbH.js → field-context-C4_WrO2z.js} +1 -1
- package/_chunks/{framework-mount--RTLIqE-.js → framework-mount-D4I8HpVp.js} +2 -2
- package/_chunks/{icon-toolbar-xbqa0hu9.js → icon-toolbar-BAAdEvr9.js} +41 -35
- package/_chunks/{icons-Ci5mADVc.js → icons-B4qN13Yj.js} +1 -1
- package/_chunks/{iso-B0YHBK7m.js → iso-CJQl2kmq.js} +1 -1
- package/_chunks/{model-mPO2tG2f.js → model-CFrBgRHm.js} +3 -3
- package/_chunks/mount-C8CnIW9k.js +267 -0
- package/_chunks/{native.view-ByyZ1CT5.js → native-CJm3eq3-.js} +1 -1
- package/_chunks/{native-control-DO0d1kgx.js → native-control-um1L1wgZ.js} +124 -111
- package/_chunks/{number-input-s9ddPwX6.js → number-input-CKiA4d1N.js} +4 -4
- package/_chunks/{picker-AY05b41W.js → picker-igNshTRC.js} +5 -5
- package/_chunks/{popup-UXGCiv3n.js → popup-DECYM9FI.js} +21 -10
- package/_chunks/{rating-choice-BEs_QFZC.js → rating-choice-CepVfGUq.js} +2 -2
- package/_chunks/{render-m5eMMwFR.js → render-bTk3curw.js} +2 -2
- package/_chunks/{reorder-list-A49l172e.js → reorder-list-B4w3aARt.js} +2 -2
- package/_chunks/{request-trail-DCOfa5zw.js → request-trail-B1zVRPEf.js} +151 -142
- package/_chunks/{rich-text-xfMWadGi.js → rich-text-Ci4d6dHn.js} +11 -11
- package/_chunks/selection-list-tooltips-m00U3L6z.js +42 -0
- package/_chunks/{title-tooltip-Cw6LOZhb.js → title-tooltip-ncldbUwS.js} +2 -2
- package/_chunks/{tooltip-D4xkio5G.js → tooltip-h-Z8yFBY.js} +2 -2
- package/_chunks/{tooltip-owner-DjdvqKzz.js → tooltip-owner-BYho-vJl.js} +1 -1
- package/_chunks/{tooltip-session-B6X6x8G_.js → tooltip-session-CBtRMBPr.js} +3 -3
- package/_chunks/{tooltip-text-BXsUEmBH.js → tooltip-text-BN5WdGHn.js} +2 -2
- package/_chunks/{top-layer-popup-CNSDdfJV.js → top-layer-popup-CKJ7VJOF.js} +3 -3
- package/_dialog.scss +57 -22
- package/_form.scss +71 -21
- package/_legend.scss +25 -7
- package/_variables.scss +34 -32
- package/_view-switcher.scss +6 -0
- package/activity-message.d.ts +1 -1
- package/activity-message.js +1 -1
- package/ai/_chat.scss +7 -0
- package/ai/_style.scss +27 -20
- package/ai/components.d.ts +3 -1
- package/ai/index.js +2 -2
- package/ai/mount.d.ts +15 -7
- package/ai/request-trail.d.ts +9 -3
- package/ai/results/_style.scss +3 -0
- package/ai/results/index.d.ts +1 -1
- package/ai/translations.d.ts +1 -1
- package/angular/angular.d.ts +1 -1
- package/angular/angular.js +13 -7
- package/assignee/assignee.scss +28 -6
- package/assignee/index.js +6 -6
- package/avatar/avatar.style.scss +23 -6
- package/avatar/index.d.ts +25 -2
- package/avatar/index.js +2 -2
- package/badge.d.ts +1 -1
- package/badge.js +1 -1
- package/badge.view.d.ts +1 -1
- package/brush-range/_brush-range.scss +55 -49
- package/brush-range/component.d.ts +1 -3
- package/brush-range/component.js +10 -11
- package/buttons/delete-button.js +1 -1
- package/buttons/delete-button.style.scss +6 -2
- package/buttons/remove-button.d.ts +1 -1
- package/buttons/remove-button.js +2 -2
- package/buttons/remove-button.style.scss +1 -1
- package/buttons/svg-button.js +3 -3
- package/calendar/_calendar.scss +19 -23
- package/calendar/calendar.js +1 -1
- package/calendar/day.js +2 -2
- package/calendar/header.js +2 -3
- package/calendar/index.js +3 -3
- package/calendar/model.js +1 -1
- package/calendar/month-grid.js +2 -2
- package/calendar/translations.js +1 -1
- package/calendar/year-grid.js +2 -2
- package/cell-input.js +1 -1
- package/cell-input.scss +3 -7
- package/cell-visuals/badge.style.scss +6 -3
- package/cell-visuals/bar-chart.style.scss +2 -1
- package/cell-visuals/column-type.style.css +12 -0
- package/cell-visuals/index.js +1 -1
- package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
- package/cell-visuals/progress-line.style.scss +1 -4
- package/cell-visuals/sparkline.style.scss +2 -1
- package/cell-visuals/timeline.style.css +4 -2
- package/checkbox/checkbox.scss +6 -24
- package/checkbox/index.js +1 -1
- package/choice-chips/index.js +1 -1
- package/color-palette/built-in-palettes.js +1 -1
- package/color-palette/chart-palettes.js +1 -1
- package/color-palette/color-palette.js +1 -1
- package/color-palette/color-palette.style.scss +88 -25
- package/color-palette/color-picker.constants.js +1 -1
- package/color-palette/color-picker.js +2 -2
- package/color-palette/color-picker.style.scss +23 -10
- package/color-palette/common-palettes.d.ts +1 -1
- package/color-palette/common-palettes.js +2 -2
- package/color-palette/gantt-palettes.js +1 -1
- package/color-palette/native.d.ts +15 -2
- package/color-palette/palette.js +1 -1
- package/color-palette/pivot-palettes.js +1 -1
- package/color-palette/platform-palettes.js +1 -1
- package/color-palette/pro-palettes.js +1 -1
- package/color-palette/scheduler-palettes.js +1 -1
- package/component-catalog.d.ts +3 -6
- package/configurator-actions.d.ts +6 -6
- package/configurator-actions.js +1 -1
- package/configurator-aggregation-list.d.ts +1 -1
- package/configurator-aggregation-list.js +19 -17
- package/configurator-drop-zone.d.ts +3 -2
- package/configurator-drop-zone.js +34 -32
- package/configurator-focus.js +1 -1
- package/configurator-sections.d.ts +3 -3
- package/configurator-sections.js +1 -1
- package/control-attributes.js +1 -1
- package/control-presentation.d.ts +8 -2
- package/control-presentation.js +2 -2
- package/controls.d.ts +11 -0
- package/controls.js +4 -4
- package/core/anchored-popover.js +1 -1
- package/core/control-id.js +1 -1
- package/core/editor-popup-position.d.ts +6 -2
- package/core/editor-popup.d.ts +4 -0
- package/core/editor-popup.js +1 -1
- package/core/motion.js +1 -1
- package/{_chunks/popover-controller-D-AvKQ7B.js → core/popover-controller.js} +8 -8
- package/core/selection-list-tooltips.d.ts +2 -0
- package/core/tooltip.d.ts +1 -1
- package/core/top-layer-popup.d.ts +1 -1
- package/core/top-layer-popup.js +1 -1
- package/date-time/attach.d.ts +1 -1
- package/date-time/date-control.d.ts +1 -1
- package/date-time/field.d.ts +4 -2
- package/date-time/index.js +1 -1
- package/date-time/style.scss +206 -46
- package/date-time/time-selection.d.ts +1 -1
- package/date-time/types.d.ts +5 -1
- package/dialog/dialog-action-footer.d.ts +17 -2
- package/dialog/dialog.dom.d.ts +15 -2
- package/dialog/dialog.dom.js +3 -3
- package/dialog/dialog.drag.js +1 -1
- package/dialog/dialog.parts.d.ts +1 -1
- package/dialog/dialog.parts.js +1 -1
- package/dialog/dialog.preact.js +1 -1
- package/distribution-chart/_distribution-chart.scss +115 -23
- package/distribution-chart/area-chart.js +2 -2
- package/distribution-chart/bar-chart.js +2 -2
- package/distribution-chart/chart-frame.d.ts +1 -1
- package/distribution-chart/index.d.ts +1 -1
- package/distribution-chart/index.js +1 -1
- package/distribution-chart/line-chart.js +2 -2
- package/dropdown/content.js +1 -1
- package/dropdown/control.js +1 -1
- package/dropdown/dropdown.service.js +1 -1
- package/dropdown/dropdown.types.d.ts +1 -1
- package/dropdown/editor-dropdown.style.scss +19 -9
- package/dropdown/index.js +2 -2
- package/dropdown/lookup-field.d.ts +5 -0
- package/dropdown/lookup-field.js +3 -3
- package/dropdown/popup.js +1 -1
- package/duration/index.js +1 -1
- package/editor-actions.js +2 -2
- package/editor-layout/index.d.ts +4 -4
- package/editor-layout/index.js +40 -35
- package/editor-layout/style.scss +82 -18
- package/favicon.svg +9 -0
- package/field-configurator.d.ts +22 -3
- package/field-configurator.js +1 -1
- package/field-reorder.hook.js +1 -1
- package/field-reorder.js +1 -1
- package/filter/filters/slider/_single-slider.scss +57 -38
- package/filter/filters/slider/_slider.scss +41 -16
- package/filter/filters/slider/component.js +1 -1
- package/filter/filters/slider/control.js +1 -1
- package/filter/filters/slider/inputs.js +1 -1
- package/filter/filters/slider/logic.js +1 -1
- package/filter/filters/slider/preact.js +1 -1
- package/filter/filters/slider/runtime.js +3 -3
- package/filter/filters/slider/single.js +2 -2
- package/filter-badge.js +2 -2
- package/filter-controls.d.ts +0 -1
- package/filter-controls.js +6 -7
- package/form-controls/index.d.ts +10 -2
- package/form-controls/index.js +3 -3
- package/form-controls/presentation.d.ts +1 -1
- package/form-controls/presentation.js +2 -2
- package/formatting/index.d.ts +1 -1
- package/formatting/index.js +7 -7
- package/formatting/styles.scss +13 -11
- package/framework.js +201 -205
- package/history-controls.js +1 -1
- package/html-controls.js +1 -1
- package/icon-toolbar.d.ts +6 -2
- package/icon-toolbar.js +1 -1
- package/icons/icon.d.ts +1 -1
- package/icons/icon.js +1 -1
- package/legend.d.ts +1 -1
- package/legend.js +1 -1
- package/masked-input/index.js +4 -4
- package/native-control.js +1 -1
- package/native-controls.d.ts +54 -2
- package/native-styles.css +1 -1
- package/native-styles.scss +6 -2
- package/native.d.ts +3 -3
- package/native.js +35 -35
- package/number-input/index.d.ts +1 -1
- package/number-input/index.js +1 -1
- package/package.json +49 -1
- package/pagination.js +12 -12
- package/pdf-viewer/controller.js +1 -1
- package/pdf-viewer/header.d.ts +1 -1
- package/pdf-viewer/index.d.ts +2 -2
- package/pdf-viewer/index.js +3 -3
- package/pdf-viewer/search-bar.d.ts +1 -1
- package/pdf-viewer/status.d.ts +1 -1
- package/pdf-viewer/style.scss +203 -42
- package/preact-mount.js +1 -1
- package/preact.d.ts +6 -10
- package/preact.js +108 -70
- package/progress/_bar.scss +9 -3
- package/progress/_circular.scss +2 -1
- package/progress/bar.js +1 -1
- package/progress/circular.js +1 -1
- package/progress/range.js +1 -1
- package/rating-choice.js +1 -1
- package/react-adapter.d.ts +4 -2
- package/react-control.d.ts +2 -0
- package/react-control.js +3 -3
- package/react.d.ts +2 -8
- package/react.js +55 -56
- package/reorder-list.d.ts +1 -1
- package/reorder-list.js +1 -1
- package/reorder-list.scss +59 -17
- package/resource-picker/resource-picker-avatar.js +1 -1
- package/resource-picker/resource-picker-option.js +1 -1
- package/resource-picker/resource-picker-popup.js +2 -2
- package/resource-picker/resource-picker.js +74 -72
- package/resource-picker/resource-picker.scss +62 -34
- package/resource-picker/resource-picker.utils.js +1 -1
- package/rich-text/index.js +1 -1
- package/rich-text/style.scss +203 -49
- package/rich-text/toolbar.d.ts +1 -1
- package/robots.txt +4 -0
- package/search-input/index.js +2 -2
- package/search-input/native.d.ts +21 -2
- package/segmented-switch/index.js +1 -1
- package/select.js +1 -1
- package/selection-list.d.ts +1 -0
- package/selection-list.js +3 -1
- package/status-feedback/badge.js +2 -2
- package/status-feedback/exit-snapshot.js +2 -2
- package/status-feedback/header.js +2 -2
- package/status-feedback/icons.js +1 -1
- package/status-feedback/index.js +1 -1
- package/status-feedback/item.js +2 -2
- package/status-feedback/motion.js +1 -1
- package/status-feedback/placement.js +1 -1
- package/status-feedback/popover.js +2 -2
- package/status-feedback/render.js +1 -1
- package/status-feedback/status-feedback.scss +124 -35
- package/styles/_activity-message.scss +24 -7
- package/styles/_alert.scss +78 -17
- package/styles/_cell-editor-frame.scss +11 -0
- package/styles/_compositions.scss +399 -79
- package/styles/_control.scss +30 -8
- package/styles/_disclosure.scss +15 -5
- package/styles/_editor-counter.scss +16 -6
- package/styles/_editor-slider.scss +8 -4
- package/styles/_field-configurator.scss +194 -42
- package/styles/_fields-grid.scss +18 -4
- package/styles/_filter-controls.scss +10 -2
- package/styles/_icon-action.scss +48 -15
- package/styles/_loading.scss +12 -3
- package/styles/_motion.scss +32 -9
- package/styles/_palette.scss +0 -24
- package/styles/_primitives.scss +348 -96
- package/styles/_theme.scss +130 -86
- package/styles/_thresholds.scss +28 -25
- package/styles/_time-grid.scss +8 -3
- package/styles/_tokens.scss +6 -1
- package/styles/color-roles.js +1 -1
- package/styles/configurator-actions.scss +126 -26
- package/styles/pagination.css +213 -0
- package/styles/{legacy-rating.css → rating.css} +8 -3
- package/styles.css +1 -1
- package/styles.scss +3 -5
- package/surfaces.d.ts +37 -4
- package/surfaces.js +8 -8
- package/svelte/UiComponent.svelte +44 -11
- package/svelte-control.js +1 -1
- package/svelte.d.ts +1 -1
- package/svelte.js +5 -5
- package/switch/index.js +2 -2
- package/time-grid.d.ts +0 -1
- package/time-grid.js +6 -6
- package/timeline-track/_style.scss +96 -24
- package/timeline-track/index.js +3 -3
- package/timeline-track/model.js +1 -1
- package/ui.css +1 -1
- package/view-switcher.d.ts +23 -0
- package/vue-badge.js +1 -1
- package/vue-control.js +1 -1
- package/vue-segmented-switch.js +1 -1
- package/vue.d.ts +5 -23
- package/vue.js +84 -91
- package/_chunks/badge.view-D30pMUfi.js +0 -14
- package/_chunks/chevron-right-sxHQMSkq.js +0 -4
- package/_chunks/dialog.parts-BSbvnEwX.js +0 -134
- package/_chunks/field-configurator-1eQP0tKy.js +0 -223
- package/_chunks/mount-D1i5DLRn.js +0 -266
- package/_shared/data-query/binding.d.ts +0 -30
- package/_shared/data-query/blocks.d.ts +0 -30
- package/_shared/data-query/commands.d.ts +0 -47
- package/_shared/data-query/contracts.d.ts +0 -106
- package/_shared/data-query/cursor-reader.d.ts +0 -25
- package/_shared/data-query/direct-binding.d.ts +0 -3
- package/_shared/data-query/index.d.ts +0 -23
- package/_shared/data-query/infinite-binding.d.ts +0 -18
- package/_shared/data-query/keys.d.ts +0 -9
- package/_shared/data-query/limiter.d.ts +0 -12
- package/_shared/data-query/load-options.d.ts +0 -25
- package/_shared/data-query/materialize.d.ts +0 -2
- package/_shared/data-query/policy.d.ts +0 -14
- package/_shared/data-query/provider-queries.d.ts +0 -22
- package/_shared/data-query/reader.d.ts +0 -23
- package/_shared/data-query/remote-load.d.ts +0 -7
- package/_shared/data-query/source.d.ts +0 -40
- package/avatar/index.view.d.ts +0 -25
- package/color-palette/native.view.d.ts +0 -15
- package/control-presentation.view.d.ts +0 -8
- package/dialog/dialog-action-footer.view.d.ts +0 -20
- package/dialog/dialog.dom.view.d.ts +0 -15
- package/form-controls/index.view.d.ts +0 -10
- package/formatting/control-tooltip.d.ts +0 -2
- package/native-controls.view.d.ts +0 -54
- package/search-input/native.view.d.ts +0 -21
- package/styles/legacy-pagination.css +0 -129
- package/surfaces.view.d.ts +0 -33
|
@@ -22,11 +22,11 @@ export declare function useConfiguratorSections(config: ConfiguratorSectionsConf
|
|
|
22
22
|
select: (id: string) => void;
|
|
23
23
|
};
|
|
24
24
|
/** Shared switch spacing and opaque sticky backdrop for every configurator. */
|
|
25
|
-
export declare function ConfiguratorHeader({ children, className }: {
|
|
25
|
+
export declare function ConfiguratorHeader({ children, className, }: {
|
|
26
26
|
children?: ComponentChildren;
|
|
27
27
|
className?: string;
|
|
28
28
|
}): h.JSX.Element;
|
|
29
|
-
export declare function ConfiguratorSectionTabs({ sections, active, onChange, prefix, label, className }: {
|
|
29
|
+
export declare function ConfiguratorSectionTabs({ sections, active, onChange, prefix, label, className, }: {
|
|
30
30
|
sections: readonly ConfiguratorSection[];
|
|
31
31
|
active?: string;
|
|
32
32
|
onChange: (id: string) => void;
|
|
@@ -35,7 +35,7 @@ export declare function ConfiguratorSectionTabs({ sections, active, onChange, pr
|
|
|
35
35
|
className?: string;
|
|
36
36
|
}): h.JSX.Element;
|
|
37
37
|
/** Inactive sections retain chat transcripts and host drafts until removed. */
|
|
38
|
-
export declare function ConfiguratorSectionPanels({ sections, active, prefix }: {
|
|
38
|
+
export declare function ConfiguratorSectionPanels({ sections, active, prefix, }: {
|
|
39
39
|
sections: readonly ConfiguratorSection[];
|
|
40
40
|
active?: string;
|
|
41
41
|
prefix: string;
|
package/configurator-sections.js
CHANGED
|
@@ -2,7 +2,7 @@ import { i as e } from "./_chunks/preact.module-BBM36DnO.js";
|
|
|
2
2
|
import { i as t, r as n, t as r } from "./_chunks/hooks.module-CG3gN83z.js";
|
|
3
3
|
import { t as i } from "./_chunks/jsxRuntime.module-F6UFnpT-.js";
|
|
4
4
|
import { SegmentedSwitch as a } from "./segmented-switch/index.js";
|
|
5
|
-
//#region
|
|
5
|
+
//#region package/configurator-sections.tsx
|
|
6
6
|
function o(e, n, r = !1) {
|
|
7
7
|
let i = new Set(n.map((e) => e.id)), a = (e.sections ?? []).filter((e) => !e.id || i.has(e.id) ? !1 : (i.add(e.id), !0)), o = [...n, ...a].filter((e) => !e.hidden).map((e) => r ? {
|
|
8
8
|
...e,
|
package/control-attributes.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region
|
|
1
|
+
//#region package/control-attributes.ts
|
|
2
2
|
function e(...e) {
|
|
3
3
|
e = e.map((e) => e && typeof e == "object" && "value" in e && "subscribe" in e ? e.value : e);
|
|
4
4
|
let t = e.flatMap((e) => typeof e == "string" ? e.split(/\s+/) : e && typeof e == "object" ? Object.entries(e).filter(([, e]) => e).map(([e]) => e) : []);
|
|
@@ -1,2 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
export * from './control-
|
|
1
|
+
import { ControlTag, ControlAttributes } from './control-attributes';
|
|
2
|
+
export * from './control-attributes';
|
|
3
|
+
export declare function renderControl<H extends (...args: any[]) => any>(h: H, tag: ControlTag, attributes?: ControlAttributes | null, ...children: any[]): ReturnType<H>;
|
|
4
|
+
export declare function createControl<K extends ControlTag>(document: Document, tag: K, attributes?: ControlAttributes): HTMLElementTagNameMap[K];
|
|
5
|
+
export declare function registerControl<T extends object>(component: T, tag: ControlTag): T;
|
|
6
|
+
export declare function nativeControlTag(type: unknown): string | undefined;
|
|
7
|
+
/** Decorate a native icon control after installing its trusted bundled SVG. */
|
|
8
|
+
export declare function decorateIconAction(element: HTMLElement, label: string): void;
|
package/control-presentation.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { c as e } from "./_chunks/preact.module-BBM36DnO.js";
|
|
2
2
|
import { t } from "./_chunks/jsxRuntime.module-F6UFnpT-.js";
|
|
3
3
|
import { createPreactElement as n } from "./preact-mount.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipController as r } from "./core/popover-controller.js";
|
|
5
5
|
import { controlAttributes as i, controlClassName as a } from "./control-attributes.js";
|
|
6
|
-
//#region
|
|
6
|
+
//#region package/control-presentation.tsx
|
|
7
7
|
function o(e, t, n, ...r) {
|
|
8
8
|
let a = n ?? {};
|
|
9
9
|
if (t === "button" && a.busy === !0) {
|
package/controls.d.ts
CHANGED
|
@@ -133,6 +133,17 @@ export declare function Submenu({ label, children }: ShellProps & {
|
|
|
133
133
|
label: string;
|
|
134
134
|
}): h.JSX.Element;
|
|
135
135
|
export declare function ResizeHandle(props: ResizeOptions): h.JSX.Element;
|
|
136
|
+
export interface PanelResizeHandleProps extends Omit<ResizeOptions, 'value' | 'direction'> {
|
|
137
|
+
edge: 'left' | 'right';
|
|
138
|
+
initialWidth: number;
|
|
139
|
+
anchorRef?: {
|
|
140
|
+
current: HTMLDivElement | null;
|
|
141
|
+
};
|
|
142
|
+
/** Measure the outer host when it owns the resized width. */
|
|
143
|
+
resizeParent?: boolean;
|
|
144
|
+
}
|
|
145
|
+
/** Measures the containing panel and places a width control on its physical edge. */
|
|
146
|
+
export declare function PanelResizeHandle({ edge, initialWidth, anchorRef, resizeParent, max, ...props }: PanelResizeHandleProps): h.JSX.Element;
|
|
136
147
|
export type PaginationDirection = 'first' | 'previous' | 'next' | 'last';
|
|
137
148
|
export type PaginationButtonOptions = Pick<ButtonProps, 'disabled' | 'variant' | 'className' | 'title'>;
|
|
138
149
|
export interface PaginationProps {
|
package/controls.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export {
|
|
1
|
+
import { t as e } from "./_chunks/selection-list-tooltips-m00U3L6z.js";
|
|
2
|
+
import { A as t, B as n, C as r, D as i, E as a, F as o, I as s, L as c, M as l, N as u, O as d, P as f, R as p, S as m, T as h, _ as g, a as _, b as v, c as y, d as b, f as x, g as S, h as C, i as w, j as T, k as E, l as D, m as O, n as k, o as A, p as j, r as M, s as N, t as P, u as F, v as I, w as L, x as R, y as z } from "./_chunks/controls-B3EgM_DS.js";
|
|
3
|
+
import { EditorList as B, EditorListGroup as V, EditorListItem as H, EditorListItemContent as U, EditorPane as W, EditorSplitLayout as G } from "./editor-layout/index.js";
|
|
4
|
+
export { p as Alert, n as Badge, P as Button, k as ButtonGroup, M as Chip, w as CircularProgress, _ as CountBadge, A as DateInput, N as DateTimeInput, y as Disclosure, D as EmptyState, F as FieldError, b as FieldHint, x as FormSection, j as IconButton, B as Listbox, V as ListboxGroup, H as ListboxOption, U as ListboxOptionContent, O as LoadingOverlay, C as Menu, S as MenuItem, g as MenuSeparator, I as NumberInput, z as NumberStepper, v as Pagination, W as Pane, R as Panel, m as PanelResizeHandle, r as RadioGroup, L as Rating, h as ResizeHandle, a as SegmentedControl, i as Spinner, G as SplitLayout, d as Submenu, E as TabPanel, t as Tabs, T as TextInput, l as Textarea, u as TimeInput, f as ToggleButton, o as Toolbar, s as ToolbarGroup, c as ToolbarSeparator, e as useSelectionListTooltips };
|
package/core/anchored-popover.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region
|
|
1
|
+
//#region package/core/anchored-popover.ts
|
|
2
2
|
function e(e, t, n, r = 4, i = 8) {
|
|
3
3
|
let a = e.bottom + r, o = e.top - t.height - r, s = a + t.height <= n.height - i || o < i ? "below" : "above", c = e.left, l = e.right - t.width, u = c + t.width <= n.width - i || l < i ? "left" : "right";
|
|
4
4
|
return {
|
package/core/control-id.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** Prefer keeping the field visible, with an optional viewport fit for larger editors. */
|
|
2
2
|
export declare function calculateEditorPopupPosition(anchor: Pick<DOMRect, 'left' | 'right' | 'top' | 'bottom'>, popup: Pick<DOMRect, 'width' | 'height'>, viewport: {
|
|
3
3
|
width: number;
|
|
4
4
|
height: number;
|
|
5
|
-
}, gap
|
|
5
|
+
}, { gap, inset, fitViewport }?: {
|
|
6
|
+
gap?: number | undefined;
|
|
7
|
+
inset?: number | undefined;
|
|
8
|
+
fitViewport?: boolean | undefined;
|
|
9
|
+
}): {
|
|
6
10
|
placementY: string;
|
|
7
11
|
maxHeight: number;
|
|
8
12
|
top: number;
|
package/core/editor-popup.d.ts
CHANGED
|
@@ -6,6 +6,10 @@ export interface EditorPopupHandle {
|
|
|
6
6
|
export interface EditorPopupOptions {
|
|
7
7
|
label: string;
|
|
8
8
|
className?: string;
|
|
9
|
+
/** Allow overlap with the anchor when the popup needs more vertical room. */
|
|
10
|
+
fitViewport?: boolean;
|
|
11
|
+
/** A separate trigger can toggle the popup without applying the draft. */
|
|
12
|
+
trigger?: HTMLElement;
|
|
9
13
|
onClose?: () => void;
|
|
10
14
|
isAvailable?: () => boolean;
|
|
11
15
|
}
|
package/core/editor-popup.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as mountEditorPopup } from "../_chunks/editor-popup-
|
|
1
|
+
export { t as mountEditorPopup } from "../_chunks/editor-popup-NNP9Fh9U.js";
|
package/core/motion.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { calculateAnchoredPopoverPosition as e } from "
|
|
2
|
-
import { t } from "
|
|
1
|
+
import { calculateAnchoredPopoverPosition as e } from "./anchored-popover.js";
|
|
2
|
+
import { t } from "../_chunks/jsxRuntime.module-F6UFnpT-.js";
|
|
3
3
|
import { createPreactElement as n, releasePreactElement as r } from "../preact-mount.js";
|
|
4
|
-
import { o as i, r as a, t as o } from "
|
|
5
|
-
import { t as s } from "
|
|
6
|
-
import { createControlId as c } from "
|
|
7
|
-
import { inheritUiMotion as l } from "
|
|
8
|
-
//#region
|
|
4
|
+
import { o as i, r as a, t as o } from "../_chunks/top-layer-popup-CKJ7VJOF.js";
|
|
5
|
+
import { t as s } from "../_chunks/tooltip-session-CBtRMBPr.js";
|
|
6
|
+
import { createControlId as c } from "./control-id.js";
|
|
7
|
+
import { inheritUiMotion as l } from "./motion.js";
|
|
8
|
+
//#region package/core/popover-controller.tsx
|
|
9
9
|
var u = /* @__PURE__ */ new WeakMap(), d = class {
|
|
10
10
|
active;
|
|
11
11
|
get isOpen() {
|
|
@@ -99,4 +99,4 @@ var p = class {
|
|
|
99
99
|
}
|
|
100
100
|
};
|
|
101
101
|
//#endregion
|
|
102
|
-
export {
|
|
102
|
+
export { d as PopoverController, p as TooltipController, f as createTooltipElement };
|
package/core/tooltip.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare function useControlTooltip(text: string, _floating?: boolean, pre
|
|
|
22
22
|
readonly tooltip: h.JSX.Element;
|
|
23
23
|
};
|
|
24
24
|
/** Controlled surface adapter retained for existing consumers. */
|
|
25
|
-
export declare function ControlTooltip({ id, text, content, visible, anchor, className }: {
|
|
25
|
+
export declare function ControlTooltip({ id, text, content, visible, anchor, className, }: {
|
|
26
26
|
readonly id: string;
|
|
27
27
|
readonly text: string;
|
|
28
28
|
readonly content?: ComponentChildren;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ensureTooltipStyles, prepareTooltipSurface, TOOLTIP_STYLES } from './tooltip-surface';
|
|
1
|
+
export { ensureTooltipStyles, prepareTooltipSurface, TOOLTIP_STYLES, } from './tooltip-surface';
|
|
2
2
|
export { ownsPopupTarget } from './popup-ownership';
|
|
3
3
|
export type TopLayerPopupMode = 'popover' | 'fallback';
|
|
4
4
|
export type TopLayerPopupElement = HTMLElement & {
|
package/core/top-layer-popup.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { a as TOOLTIP_STYLES, s as ensureTooltipStyles, t as hideTopLayerPopup, i as ownsPopupTarget, n as popupOwnsTarget, c as prepareTooltipSurface, r as showTopLayerPopup } from "../_chunks/top-layer-popup-
|
|
1
|
+
export { a as TOOLTIP_STYLES, s as ensureTooltipStyles, t as hideTopLayerPopup, i as ownsPopupTarget, n as popupOwnsTarget, c as prepareTooltipSurface, r as showTopLayerPopup } from "../_chunks/top-layer-popup-CKJ7VJOF.js";
|
package/date-time/attach.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { TemporalPickerOptions } from './types';
|
|
2
|
-
/** Adds the shared picker
|
|
2
|
+
/** Adds or replaces the shared picker on an existing native input. */
|
|
3
3
|
export declare function attachTemporalPicker(input: HTMLInputElement, options: TemporalPickerOptions, commit: (value: string) => void): () => void;
|
|
@@ -4,7 +4,7 @@ export interface DateInputOptions extends DateEntryOptions {
|
|
|
4
4
|
/** Date-only multiple selection uses a semicolon-separated list by default. */
|
|
5
5
|
multipleSeparator?: string;
|
|
6
6
|
}
|
|
7
|
-
export declare function DateControl({ value, label, options, multiple, invalid, errorId, disabled, readOnly, minDate, maxDate, onChange, onFocus }: {
|
|
7
|
+
export declare function DateControl({ value, label, options, multiple, invalid, errorId, disabled, readOnly, minDate, maxDate, onChange, onFocus, }: {
|
|
8
8
|
value: string | string[];
|
|
9
9
|
label: string;
|
|
10
10
|
options?: DateInputOptions;
|
package/date-time/field.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { DateTimeFieldProps, TemporalPickerOptions } from './types';
|
|
2
2
|
import { TemporalControlValue } from '../_shared/dates/index';
|
|
3
|
-
export declare function TemporalDraft({ value, options, apply, cancel, clearable, }: {
|
|
3
|
+
export declare function TemporalDraft({ value, options, apply, cancel, onValidChange, clearable, }: {
|
|
4
4
|
clearable?: boolean;
|
|
5
5
|
value: TemporalControlValue;
|
|
6
6
|
options: TemporalPickerOptions;
|
|
7
7
|
apply: (value: TemporalControlValue) => void | string;
|
|
8
8
|
cancel: () => void;
|
|
9
|
+
/** Receives each valid temporal draft value before it is applied. */
|
|
10
|
+
onValidChange?: (value: TemporalControlValue) => void;
|
|
9
11
|
}): import("../_vendor/preact/src/index").JSX.Element;
|
|
10
12
|
/** Native text entry plus the original shared CalendarPicker, usable in any product form. */
|
|
11
|
-
export declare function DateTimeField({ value, kind, picker, onValueChange, onInput, formatValue, parseValue, ...input }: DateTimeFieldProps): import("../_vendor/preact/src/index").JSX.Element;
|
|
13
|
+
export declare function DateTimeField({ value, kind, picker, livePickerUpdates, onValueChange, onInput, formatValue, parseValue, ...input }: DateTimeFieldProps): import("../_vendor/preact/src/index").JSX.Element;
|
package/date-time/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { r as DateTimeField, i as TemporalDraft, a as TemporalPicker, n as attachTemporalPicker, o as defaultTemporalPickerText, t as renderTemporalValue, s as temporalPickerLabel } from "../_chunks/date-time-
|
|
1
|
+
export { r as DateTimeField, i as TemporalDraft, a as TemporalPicker, n as attachTemporalPicker, o as defaultTemporalPickerText, t as renderTemporalValue, s as temporalPickerLabel } from "../_chunks/date-time-CfiFYodx.js";
|
package/date-time/style.scss
CHANGED
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
.rv-temporal-draft > .rv-alert {
|
|
32
32
|
inline-size: 0;
|
|
33
33
|
min-inline-size: 100%;
|
|
34
|
+
white-space: normal;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
.rv-date-time-field {
|
|
@@ -49,8 +50,14 @@
|
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
|
|
52
|
-
.rv-temporal-picker__dates {
|
|
53
|
-
|
|
53
|
+
.rv-temporal-picker__dates {
|
|
54
|
+
margin-block-end: 8px;
|
|
55
|
+
}
|
|
56
|
+
.rv-temporal-picker__dates > input {
|
|
57
|
+
min-width: 0;
|
|
58
|
+
width: 100%;
|
|
59
|
+
flex: 1 1 0;
|
|
60
|
+
}
|
|
54
61
|
|
|
55
62
|
.rv-temporal-picker__header {
|
|
56
63
|
display: flex;
|
|
@@ -58,9 +65,17 @@
|
|
|
58
65
|
align-items: end;
|
|
59
66
|
gap: 8px;
|
|
60
67
|
margin-block-end: 8px;
|
|
61
|
-
&:empty {
|
|
62
|
-
|
|
63
|
-
|
|
68
|
+
&:empty {
|
|
69
|
+
display: none;
|
|
70
|
+
}
|
|
71
|
+
> .rv-temporal-picker__dates {
|
|
72
|
+
flex: 1 1 112px;
|
|
73
|
+
margin-block-end: 0;
|
|
74
|
+
}
|
|
75
|
+
> .rv-temporal-picker__time--single {
|
|
76
|
+
flex: 0 1 132px;
|
|
77
|
+
min-width: 110px;
|
|
78
|
+
}
|
|
64
79
|
}
|
|
65
80
|
|
|
66
81
|
.rv-temporal-picker__header .rv-control,
|
|
@@ -69,7 +84,9 @@
|
|
|
69
84
|
min-height: var(--rv-control-height, 32px);
|
|
70
85
|
padding: var(--rv-control-padding, 6px 12px);
|
|
71
86
|
}
|
|
72
|
-
.rv-temporal-picker__dates {
|
|
87
|
+
.rv-temporal-picker__dates {
|
|
88
|
+
flex-wrap: wrap;
|
|
89
|
+
}
|
|
73
90
|
.rv-temporal-picker__endpoint {
|
|
74
91
|
display: flex;
|
|
75
92
|
align-items: center;
|
|
@@ -77,25 +94,54 @@
|
|
|
77
94
|
flex: 0 1 224px;
|
|
78
95
|
min-width: 0;
|
|
79
96
|
// Ten date characters plus the control's horizontal padding and borders.
|
|
80
|
-
> .rv-control {
|
|
81
|
-
|
|
97
|
+
> .rv-control {
|
|
98
|
+
flex: 0 0 auto;
|
|
99
|
+
min-width: 0;
|
|
100
|
+
width: calc(10ch + 26px);
|
|
101
|
+
}
|
|
102
|
+
> .rv-temporal-picker__time {
|
|
103
|
+
flex: 0 1 100px;
|
|
104
|
+
min-width: 86px;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
.rv-temporal-picker__endpoint:not(:has(.rv-temporal-picker__time)) {
|
|
108
|
+
flex: 0 0 auto;
|
|
82
109
|
}
|
|
83
|
-
.rv-temporal-picker__endpoint:not(:has(.rv-temporal-picker__time)) { flex: 0 0 auto; }
|
|
84
110
|
|
|
85
|
-
.rv-temporal-picker .rv-temporal-picker__endpoint > .rv-temporal-picker__time {
|
|
111
|
+
.rv-temporal-picker .rv-temporal-picker__endpoint > .rv-temporal-picker__time {
|
|
112
|
+
flex: 0 1 100px;
|
|
113
|
+
}
|
|
86
114
|
|
|
87
115
|
// Time-only surfaces follow their content rather than the calendar's minimum width.
|
|
88
116
|
.rv-editor-popup.rv-editor-popup--time {
|
|
89
117
|
min-width: min(240px, calc(100vw - 16px));
|
|
90
118
|
width: 240px;
|
|
91
119
|
}
|
|
92
|
-
.rv-temporal-picker__body {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
.rv-temporal-
|
|
120
|
+
.rv-temporal-picker__body {
|
|
121
|
+
display: flex;
|
|
122
|
+
align-items: start;
|
|
123
|
+
flex-wrap: wrap;
|
|
124
|
+
gap: 16px;
|
|
125
|
+
}
|
|
126
|
+
.rv-temporal-picker--datetime .rv-temporal-picker__body {
|
|
127
|
+
flex-direction: column;
|
|
128
|
+
align-items: stretch;
|
|
129
|
+
}
|
|
130
|
+
.rv-temporal-picker--datetime .rv-temporal-picker__body > .rv-time-selection {
|
|
131
|
+
flex: 0 0 auto;
|
|
132
|
+
}
|
|
133
|
+
.rv-temporal-picker--time .rv-temporal-picker__body > .rv-time-selection {
|
|
134
|
+
flex: 1 1 0;
|
|
135
|
+
}
|
|
136
|
+
.rv-temporal-picker--time .rv-temporal-picker__header {
|
|
137
|
+
margin: 0;
|
|
138
|
+
}
|
|
139
|
+
.rv-temporal-picker__times {
|
|
140
|
+
flex-wrap: wrap;
|
|
141
|
+
}
|
|
142
|
+
.rv-temporal-picker__times > .rv-time-selection {
|
|
143
|
+
flex: 1 1 196px;
|
|
144
|
+
}
|
|
99
145
|
.rv-time-selection {
|
|
100
146
|
max-width: 208px;
|
|
101
147
|
display: grid;
|
|
@@ -103,46 +149,158 @@
|
|
|
103
149
|
min-width: 0;
|
|
104
150
|
width: 100%;
|
|
105
151
|
font-variant-numeric: tabular-nums;
|
|
106
|
-
&__entry-row {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
&__entry > .rv-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
&
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
&
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
&
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
152
|
+
&__entry-row {
|
|
153
|
+
display: flex;
|
|
154
|
+
align-items: end;
|
|
155
|
+
gap: 4px;
|
|
156
|
+
min-width: 0;
|
|
157
|
+
}
|
|
158
|
+
&__entry-row > .rv-time-selection__entry {
|
|
159
|
+
flex: 1 1 0;
|
|
160
|
+
}
|
|
161
|
+
&__clock {
|
|
162
|
+
display: grid;
|
|
163
|
+
gap: 12px;
|
|
164
|
+
min-width: 0;
|
|
165
|
+
}
|
|
166
|
+
&__toggle {
|
|
167
|
+
flex: 0 0 auto;
|
|
168
|
+
}
|
|
169
|
+
&__toggle[aria-expanded='true'] .rv-svg-icon {
|
|
170
|
+
transform: rotate(180deg);
|
|
171
|
+
}
|
|
172
|
+
&__entry {
|
|
173
|
+
display: grid;
|
|
174
|
+
gap: 6px;
|
|
175
|
+
min-width: 0;
|
|
176
|
+
font-size: 12px;
|
|
177
|
+
font-weight: 500;
|
|
178
|
+
}
|
|
179
|
+
&__entry > .rv-control {
|
|
180
|
+
width: 100%;
|
|
181
|
+
min-width: 0;
|
|
182
|
+
height: var(--rv-control-height, 32px);
|
|
183
|
+
font: inherit;
|
|
184
|
+
font-size: var(--rv-control-font-size, 0.875rem);
|
|
185
|
+
font-weight: 400;
|
|
186
|
+
}
|
|
187
|
+
&__entry input[type='time']::-webkit-calendar-picker-indicator {
|
|
188
|
+
display: none;
|
|
189
|
+
}
|
|
190
|
+
&__columns {
|
|
191
|
+
display: grid;
|
|
192
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
193
|
+
gap: 8px;
|
|
194
|
+
}
|
|
195
|
+
&__columns--seconds {
|
|
196
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
197
|
+
}
|
|
198
|
+
&__column {
|
|
199
|
+
display: grid;
|
|
200
|
+
gap: 6px;
|
|
201
|
+
min-width: 0;
|
|
202
|
+
}
|
|
203
|
+
&__label {
|
|
204
|
+
color: var(--rv-ui-text-muted);
|
|
205
|
+
font-size: 11px;
|
|
206
|
+
text-align: center;
|
|
207
|
+
}
|
|
208
|
+
&__list.rv-editor-list {
|
|
209
|
+
position: relative;
|
|
210
|
+
height: 174px;
|
|
211
|
+
overflow-y: auto;
|
|
212
|
+
overscroll-behavior: contain;
|
|
213
|
+
padding: 3px;
|
|
214
|
+
border: 1px solid var(--rv-ui-border);
|
|
215
|
+
border-radius: 6px;
|
|
216
|
+
scrollbar-width: thin;
|
|
217
|
+
}
|
|
218
|
+
&__list .rv-editor-list__item {
|
|
219
|
+
min-height: 32px;
|
|
220
|
+
height: 32px;
|
|
221
|
+
padding: 4px;
|
|
222
|
+
text-align: center;
|
|
223
|
+
font-size: 13px;
|
|
224
|
+
}
|
|
225
|
+
&__list .rv-editor-list__item:disabled {
|
|
226
|
+
opacity: 0.35;
|
|
227
|
+
cursor: default;
|
|
228
|
+
}
|
|
229
|
+
&__period {
|
|
230
|
+
border-block-start: 1px solid var(--rv-ui-border);
|
|
231
|
+
padding-block-start: 6px;
|
|
232
|
+
}
|
|
233
|
+
&__period .rv-editor-list {
|
|
234
|
+
display: flex;
|
|
235
|
+
height: auto;
|
|
236
|
+
overflow: visible;
|
|
237
|
+
}
|
|
238
|
+
&__period .rv-editor-list__item {
|
|
239
|
+
flex: 1 1 0;
|
|
240
|
+
}
|
|
241
|
+
&__empty {
|
|
242
|
+
margin: 0;
|
|
243
|
+
color: var(--rv-ui-text-muted);
|
|
244
|
+
font-size: 12px;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
// Keep validation and actions in scroll order when a calendar and clock are tall.
|
|
248
|
+
.rv-editor-popup--datetime .rv-temporal-draft .rv-editor-actions,
|
|
249
|
+
.rv-editor-popup
|
|
250
|
+
.rv-temporal-draft:has(.rv-temporal-picker--multi-month)
|
|
251
|
+
.rv-editor-actions {
|
|
252
|
+
position: static;
|
|
253
|
+
}
|
|
254
|
+
.rv-temporal-draft--time .rv-editor-actions {
|
|
255
|
+
margin-top: 10px;
|
|
256
|
+
padding-top: 10px;
|
|
257
|
+
border-top: 1px solid var(--rv-ui-border);
|
|
258
|
+
}
|
|
259
|
+
.rv-temporal-draft--time .rv-editor-actions__clear {
|
|
260
|
+
margin-inline-end: auto;
|
|
261
|
+
}
|
|
128
262
|
|
|
129
263
|
// One calendar keeps its clock visible alongside it; multi-month calendars keep
|
|
130
264
|
// the optional clock below the calendar panels.
|
|
131
|
-
.rv-editor-popup:has(
|
|
265
|
+
.rv-editor-popup:has(
|
|
266
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
267
|
+
.rv-time-selection
|
|
268
|
+
) {
|
|
132
269
|
width: min(480px, calc(100vw - 16px));
|
|
133
270
|
}
|
|
134
|
-
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
271
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
272
|
+
.rv-temporal-picker__body {
|
|
135
273
|
flex-direction: row;
|
|
274
|
+
flex-wrap: nowrap;
|
|
275
|
+
gap: 8px;
|
|
136
276
|
}
|
|
137
|
-
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
277
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
278
|
+
.rv-temporal-picker__body
|
|
279
|
+
> .rv-time-selection {
|
|
138
280
|
flex: 0 1 208px;
|
|
281
|
+
border-inline-start: 1px solid var(--rv-ui-border);
|
|
282
|
+
padding-inline-start: 8px;
|
|
139
283
|
}
|
|
140
284
|
@media (max-width: 540px) {
|
|
141
|
-
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
142
|
-
|
|
285
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
286
|
+
.rv-temporal-picker__body {
|
|
287
|
+
flex-direction: column;
|
|
288
|
+
}
|
|
289
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
290
|
+
.rv-temporal-picker__body
|
|
291
|
+
> .rv-time-selection {
|
|
292
|
+
flex-basis: auto;
|
|
293
|
+
border-inline-start: 0;
|
|
294
|
+
padding-inline-start: 0;
|
|
295
|
+
border-block-start: 1px solid var(--rv-ui-border);
|
|
296
|
+
padding-block-start: 8px;
|
|
297
|
+
}
|
|
143
298
|
}
|
|
144
299
|
|
|
145
|
-
.rv-editor-popup:has(
|
|
300
|
+
.rv-editor-popup:has(
|
|
301
|
+
.rv-temporal-picker--datetime:not(.rv-temporal-picker--multi-month)
|
|
302
|
+
.revo-calendar--week-numbers
|
|
303
|
+
):has(.rv-time-selection) {
|
|
146
304
|
width: min(512px, calc(100vw - 16px));
|
|
147
305
|
}
|
|
148
306
|
|
|
@@ -152,7 +310,9 @@
|
|
|
152
310
|
}
|
|
153
311
|
|
|
154
312
|
// Grid adapters and standalone fields share the same compact single-clock size.
|
|
155
|
-
.rv-editor-popup:has(.rv-temporal-picker--time):not(
|
|
313
|
+
.rv-editor-popup:has(.rv-temporal-picker--time):not(
|
|
314
|
+
:has(.rv-temporal-picker__times)
|
|
315
|
+
) {
|
|
156
316
|
min-width: min(234px, calc(100vw - 16px));
|
|
157
317
|
width: 234px;
|
|
158
318
|
}
|
|
@@ -14,4 +14,4 @@ export interface TimeSelectionProps {
|
|
|
14
14
|
collapsible?: boolean;
|
|
15
15
|
}
|
|
16
16
|
/** Shared typed entry and bounded clock columns for time-only and date-time pickers. */
|
|
17
|
-
export declare function TimeSelection({ value, label, text, onChange, format, precision, locale, min, max, step, collapsible }: TimeSelectionProps): import("../_vendor/preact/src/index").JSX.Element;
|
|
17
|
+
export declare function TimeSelection({ value, label, text, onChange, format, precision, locale, min, max, step, collapsible, }: TimeSelectionProps): import("../_vendor/preact/src/index").JSX.Element;
|
package/date-time/types.d.ts
CHANGED
|
@@ -55,6 +55,8 @@ export interface TemporalPickerProps extends TemporalPickerOptions {
|
|
|
55
55
|
value: TemporalControlValue;
|
|
56
56
|
onChange: (value: TemporalControlValue) => void;
|
|
57
57
|
onValidityChange?: (valid: boolean) => void;
|
|
58
|
+
/** Called for each valid edit, including intermediate edits before selection completes. */
|
|
59
|
+
onValidChange?: (value: TemporalControlValue) => void;
|
|
58
60
|
/** Complete calendar selection, distinct from an in-progress keyboard draft. */
|
|
59
61
|
onSelectionComplete?: (value: TemporalControlValue) => void;
|
|
60
62
|
}
|
|
@@ -65,10 +67,12 @@ export interface DateTimeFieldProps extends Omit<JSX.InputHTMLAttributes<HTMLInp
|
|
|
65
67
|
disabled?: boolean;
|
|
66
68
|
readOnly?: boolean;
|
|
67
69
|
picker?: Omit<TemporalPickerOptions, 'kind' | 'selection'>;
|
|
70
|
+
/** Publish valid popup edits immediately when the picker uses auto-apply. */
|
|
71
|
+
livePickerUpdates?: boolean;
|
|
68
72
|
onValueChange?: (value: string) => void;
|
|
69
73
|
/** Existing product text adapters can keep their custom display/parser. */
|
|
70
74
|
formatValue?: (value: string) => string;
|
|
71
75
|
parseValue?: (text: string) => string | undefined;
|
|
72
76
|
}
|
|
73
|
-
/** One accessible name for both trigger and popup;
|
|
77
|
+
/** One accessible name for both trigger and popup; date and time controls use their own localized action labels. */
|
|
74
78
|
export declare function temporalPickerLabel(kind: LocalDateControlKind, text?: Partial<TemporalPickerText>): string;
|
|
@@ -1,2 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
1
|
+
import { h } from '../_vendor/preact/src/index';
|
|
2
|
+
export interface NativeDialogAction {
|
|
3
|
+
label?: string;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
onClick?: () => void;
|
|
6
|
+
}
|
|
7
|
+
export interface NativeDialogActionFooterProps {
|
|
8
|
+
cancel?: NativeDialogAction | false;
|
|
9
|
+
save?: NativeDialogAction | false;
|
|
10
|
+
deleteAction?: NativeDialogAction | false;
|
|
11
|
+
reset?: NativeDialogAction | false;
|
|
12
|
+
}
|
|
13
|
+
/** One TSX composition for Preact consumers and element-returning host adapters. */
|
|
14
|
+
export declare function ActionFooterView({ cancel, save, deleteAction, reset, start, end, children, actionsClass, class: className, ...props }: Record<string, any>): h.JSX.Element;
|
|
15
|
+
export declare function mountDialogActionFooter(host: HTMLElement, props: NativeDialogActionFooterProps): {
|
|
16
|
+
destroy(): void;
|
|
17
|
+
};
|
package/dialog/dialog.dom.d.ts
CHANGED
|
@@ -1,2 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
1
|
+
import { DialogButtonVariant, DialogOpenOptions } from './dialog.types';
|
|
2
|
+
export interface DialogElements {
|
|
3
|
+
readonly root: HTMLElement;
|
|
4
|
+
readonly surface: HTMLElement;
|
|
5
|
+
readonly header: HTMLElement;
|
|
6
|
+
readonly body: HTMLElement;
|
|
7
|
+
readonly footer: HTMLElement;
|
|
8
|
+
readonly actions: HTMLElement;
|
|
9
|
+
}
|
|
10
|
+
/** Element-returning native API; shared TSX owns the entire dialog chrome. */
|
|
11
|
+
export declare function createDialogElements(document: Document, options: DialogOpenOptions, close: () => void): DialogElements;
|
|
12
|
+
export declare function createDialogCloseButton(document: Document, label: string, close: () => void): HTMLButtonElement;
|
|
13
|
+
export declare function createDialogButton(document: Document, label: string, action: () => void, variant?: DialogButtonVariant): HTMLButtonElement;
|
|
14
|
+
export declare function trapDialogFocus(root: HTMLElement, event: KeyboardEvent): void;
|
|
15
|
+
export declare function getDialogFocusableElements(root: HTMLElement): HTMLElement[];
|