@orangelogic/design-system 2.111.0 → 2.113.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/library/chunks/asset.HL1qMnhg.js +458 -0
- package/library/chunks/{button.i88sSbTZ.js → button.DIvU_uFU.js} +3 -3
- package/library/chunks/calendar-grid.CXYoS6VA.js +108 -0
- package/library/chunks/{color-swatch-group.mIHaCJsh.js → color-swatch-group.DV5uB8OC.js} +3 -3
- package/library/chunks/{color-swatch.D9vkPoV2.js → color-swatch.BoUZGGs4.js} +2 -2
- package/library/chunks/{color.vLD2sNTs.js → color.LzSGBy7o.js} +2 -2
- package/library/chunks/{confirm-popover.UuBhn8GA.js → confirm-popover.DS9HIy3c.js} +3 -3
- package/library/chunks/date-picker.D0SJADN6.js +77 -0
- package/library/chunks/{dialog.Bso6gK-8.js → dialog.DyT-Nai2.js} +2 -2
- package/library/chunks/{document-viewer.C6eclRvd.js → document-viewer.AiKX3RO6.js} +8 -7
- package/library/chunks/{dot-pagination.CNnUuI-Z.js → dot-pagination.CKbL6eN_.js} +1 -1
- package/library/chunks/{file-on-demand.Cf2ujTeF.js → file-on-demand.h8tCgq51.js} +10 -10
- package/library/chunks/{folder-select.ByNUfTia.js → folder-select.eoufobYO.js} +5 -5
- package/library/chunks/{form.Ch1cwYzO.js → form.B-5nQJva.js} +46 -34
- package/library/chunks/{header.hj2Kw-N7.js → header.BUp3_oeJ.js} +1 -1
- package/library/chunks/{i18n.D6AYDPK-.js → i18n.C21qyGi6.js} +49 -13
- package/library/chunks/{icon-button.ztYU-DHy.js → icon-button.DxkJ-cp-.js} +2 -2
- package/library/chunks/icon.DnBh6-56.js +111 -0
- package/library/chunks/{iframe.uLxZ6LsL.js → iframe.CwxozWMt.js} +1 -1
- package/library/chunks/{image.DKB6yEQO.js → image.B-YcKRop.js} +2 -2
- package/library/chunks/input.DdeXWD_F.js +2855 -0
- package/library/chunks/{list-editor.GT2kQsmR.js → list-editor.Qx2ecTcL.js} +23 -23
- package/library/chunks/{option.BAYtHIvG.js → option.CcGRV3jj.js} +2 -2
- package/library/chunks/{pagination.CCJD61IB.js → pagination.CgAt4Keg.js} +5 -5
- package/library/chunks/{tab-group.BsR8tdVY.js → tab-group.hfUY7YE7.js} +3 -3
- package/library/chunks/{table.DL_CEeYh.js → table.CP3oGDY1.js} +2905 -2306
- package/library/chunks/{tree.KmZRWZ0F.js → tree.YxFs3Tke.js} +2 -2
- package/library/components/alert.js +2 -2
- package/library/components/animated-image.js +15 -15
- package/library/components/asset-link-format.js +7 -7
- package/library/components/atoms.js +194 -180
- package/library/components/audio.js +2 -2
- package/library/components/avatar.js +1 -1
- package/library/components/border-input-group.js +2 -2
- package/library/components/breadcrumb.js +4 -4
- package/library/components/button.js +4 -4
- package/library/components/checkbox.js +2 -2
- package/library/components/color-picker.js +5 -5
- package/library/components/color-swatch-group.js +4 -4
- package/library/components/color-swatch.js +3 -3
- package/library/components/confirm-popover.js +4 -4
- package/library/components/copy-button.js +2 -2
- package/library/components/corner-position-input-group.js +3 -3
- package/library/components/date-calendar.d.ts +3 -0
- package/library/components/date-calendar.js +107 -0
- package/library/components/details.js +12 -12
- package/library/components/dialog.js +3 -3
- package/library/components/document-viewer.js +4 -4
- package/library/components/dot-pagination.js +2 -2
- package/library/components/drawer.js +2 -2
- package/library/components/dropdown.js +2 -2
- package/library/components/dynamic-select.js +4 -4
- package/library/components/e-chart.js +1 -1
- package/library/components/element-clamp.js +2 -2
- package/library/components/faceted-filter.d.ts +3 -0
- package/library/components/faceted-filter.js +295 -0
- package/library/components/file-on-demand.js +11 -11
- package/library/components/folder-select.js +5 -5
- package/library/components/format-bytes.js +1 -1
- package/library/components/format-date.js +1 -1
- package/library/components/format-number.js +1 -1
- package/library/components/format-time.js +1 -1
- package/library/components/header.js +2 -2
- package/library/components/icon-button.js +3 -3
- package/library/components/icon.js +10 -109
- package/library/components/iframe.js +2 -2
- package/library/components/image-comparer.js +2 -2
- package/library/components/image.js +3 -3
- package/library/components/input.js +19 -2852
- package/library/components/line-clamp.js +1 -1
- package/library/components/list-editor.js +7 -7
- package/library/components/masonry.js +2 -2
- package/library/components/menu-item.js +2 -2
- package/library/components/menu.js +2 -2
- package/library/components/molecules.js +4 -4
- package/library/components/option.js +3 -3
- package/library/components/organisms.js +2 -2
- package/library/components/padding-input-group.js +9 -9
- package/library/components/pagination.js +6 -6
- package/library/components/popup.js +1 -1
- package/library/components/position-picker.js +1 -1
- package/library/components/progress-bar.js +1 -1
- package/library/components/progress-ring.js +1 -1
- package/library/components/radio-group.js +1 -1
- package/library/components/radio.js +1 -1
- package/library/components/range.js +2 -2
- package/library/components/rating.js +6 -6
- package/library/components/relative-time.js +1 -1
- package/library/components/select.js +5 -5
- package/library/components/shadow-input-group.js +5 -5
- package/library/components/share-option-list.js +2 -2
- package/library/components/sidebar.js +2 -2
- package/library/components/size-input-group.js +3 -3
- package/library/components/spinner.js +1 -1
- package/library/components/split-panel.js +1 -1
- package/library/components/step.js +1 -1
- package/library/components/stepper-wizard.js +16 -16
- package/library/components/switch.js +1 -1
- package/library/components/tab-group.js +4 -4
- package/library/components/tab.js +2 -2
- package/library/components/table.js +5 -5
- package/library/components/tag.js +2 -2
- package/library/components/textarea.js +1 -1
- package/library/components/tooltip.js +1 -1
- package/library/components/tree-item.js +3 -3
- package/library/components/tree.js +2 -2
- package/library/components/typeface.js +2 -2
- package/library/components/types.js +25119 -24553
- package/library/components/video.js +2 -2
- package/library/package.json +1 -1
- package/library/packages/atoms/src/components/date-calendar/date-calendar.d.ts +61 -0
- package/library/packages/atoms/src/components/date-calendar/date-calendar.styles.d.ts +2 -0
- package/library/packages/atoms/src/components/details/details.d.ts +1 -0
- package/library/packages/atoms/src/components/faceted-filter/components/facet/facet.d.ts +58 -0
- package/library/packages/atoms/src/components/faceted-filter/components/facet/facet.styles.d.ts +2 -0
- package/library/packages/atoms/src/components/faceted-filter/faceted-filter.d.ts +71 -0
- package/library/packages/atoms/src/components/faceted-filter/faceted-filter.styles.d.ts +2 -0
- package/library/packages/atoms/src/components/icon/font-awesome-icons.d.ts +1 -0
- package/library/packages/atoms/src/components/icon/icon.d.ts +1 -0
- package/library/packages/atoms/src/components/image/image.d.ts +1 -1
- package/library/packages/atoms/src/components/table/table-data-loader.d.ts +13 -0
- package/library/packages/atoms/src/components/table/table.d.ts +13 -1
- package/library/packages/atoms/src/index.d.ts +3 -0
- package/library/packages/events/src/cx-date-select.d.ts +9 -0
- package/library/packages/events/src/cx-faceted-filter-change.d.ts +8 -0
- package/library/packages/events/src/cx-table-data-load.d.ts +17 -0
- package/library/packages/events/src/events.d.ts +3 -0
- package/library/packages/hybrid/table-core/src/tabulator-tables/modules/ClickableCell/ClickableCell.d.ts +5 -0
- package/library/packages/molecules/src/asset-data-display/asset-data-display.d.ts +1 -1
- package/library/packages/molecules/src/asset-picker/asset-picker.d.ts +2 -0
- package/library/packages/molecules/src/icon-picker/icon-picker.d.ts +72 -9
- package/library/packages/molecules/src/index.d.ts +2 -0
- package/library/packages/molecules/src/input-date-picker/input-date-picker.d.ts +127 -0
- package/library/packages/molecules/src/input-date-picker/input-date-picker.styles.d.ts +2 -0
- package/library/packages/molecules/src/input-date-range-picker/input-date-range-picker.d.ts +90 -0
- package/library/packages/molecules/src/input-date-range-picker/input-date-range-picker.styles.d.ts +2 -0
- package/library/packages/molecules/src/timeline/timeline.d.ts +1 -1
- package/library/packages/organisms/src/content-builder/components/config-form/config-form-controller.d.ts +0 -1
- package/library/packages/services/src/api/asset/asset.d.ts +3 -3
- package/library/packages/tools/src/fetch-asset/fetch-asset.d.ts +2 -2
- package/library/packages/tools/src/fetch-image/fetch-image.d.ts +4 -4
- package/library/packages/types/src/date-picker.d.ts +45 -0
- package/library/packages/types/src/faceted-filter.d.ts +23 -0
- package/library/packages/types/src/icon-picker.d.ts +8 -0
- package/library/packages/types/src/index.d.ts +1 -1
- package/library/packages/types/src/table.d.ts +12 -0
- package/library/packages/utils/src/custom-element/form.d.ts +5 -0
- package/library/packages/utils/src/custom-element/i18n.d.ts +36 -0
- package/library/packages/utils/src/date/calendar-grid.d.ts +40 -0
- package/library/packages/utils/src/date/date-range-preset.d.ts +12 -0
- package/library/packages/utils/src/date/date.d.ts +42 -0
- package/library/packages/utils/src/date/index.d.ts +3 -0
- package/library/packages/utils/src/index.d.ts +1 -0
- package/library/react-web-component.d.ts +489 -194
- package/library/utils.js +539 -332
- package/package.json +1 -1
- package/library/chunks/asset.NgymQ3Zx.js +0 -454
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { default as CxDateCalendar } from '../../../atoms/src/components/date-calendar/date-calendar.ts';
|
|
2
|
+
import { default as CxIcon } from '../../../atoms/src/components/icon/icon.ts';
|
|
3
|
+
import { default as CxIconButton } from '../../../atoms/src/components/icon-button/icon-button.ts';
|
|
4
|
+
import { default as CxInput } from '../../../atoms/src/components/input/input.ts';
|
|
5
|
+
import { default as CxOption } from '../../../atoms/src/components/option/option.ts';
|
|
6
|
+
import { default as CxPopup } from '../../../atoms/src/components/popup/popup.ts';
|
|
7
|
+
import { default as CxSelect } from '../../../atoms/src/components/select/select.ts';
|
|
8
|
+
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
|
|
9
|
+
import { CSSResultGroup } from 'lit';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @summary A date input field with a calendar picker and an optional time selector.
|
|
13
|
+
* Renders a label inside the input, a calendar popup, and optional
|
|
14
|
+
* hour/minute/second selects.
|
|
15
|
+
*
|
|
16
|
+
* @event cx-change - Emitted when the user commits a date or changes the time. Read `el.value` for the date and `el.timeValue` for the time.
|
|
17
|
+
*
|
|
18
|
+
* @csspart field - The outer wrapper element.
|
|
19
|
+
* @csspart calendar-panel - The popup panel wrapping the calendar.
|
|
20
|
+
* @csspart time-row - The row containing the time selects.
|
|
21
|
+
*
|
|
22
|
+
* @cssproperty [--input-date-picker-width] - Explicit field width. Overrides date-only and show-time default widths.
|
|
23
|
+
* @cssproperty [--date-field-width=15rem] - Default width when time selects are hidden.
|
|
24
|
+
* @cssproperty [--time-select-width=5.75rem] - Width of each time select.
|
|
25
|
+
*/
|
|
26
|
+
export default class CxInputDatePicker extends CortexElement {
|
|
27
|
+
static readonly styles: CSSResultGroup;
|
|
28
|
+
static readonly dependencies: {
|
|
29
|
+
'cx-date-calendar': typeof CxDateCalendar;
|
|
30
|
+
'cx-icon': typeof CxIcon;
|
|
31
|
+
'cx-icon-button': typeof CxIconButton;
|
|
32
|
+
'cx-input': typeof CxInput;
|
|
33
|
+
'cx-option': typeof CxOption;
|
|
34
|
+
'cx-popup': typeof CxPopup;
|
|
35
|
+
'cx-select': typeof CxSelect;
|
|
36
|
+
};
|
|
37
|
+
private readonly localize;
|
|
38
|
+
private readonly dateInputEl;
|
|
39
|
+
/** Display label for the field. */
|
|
40
|
+
label: string;
|
|
41
|
+
/** The name submitted as a name/value pair with form data. */
|
|
42
|
+
name: string;
|
|
43
|
+
/**
|
|
44
|
+
* The associated form element. Accepts a form `id` string or an `HTMLFormElement`.
|
|
45
|
+
* When set, overrides `closest('form')` lookup.
|
|
46
|
+
*/
|
|
47
|
+
form: string | HTMLElement | undefined;
|
|
48
|
+
/** The selected date in YYYY-MM-DD format. Used internally for calendar and event detail. */
|
|
49
|
+
value: string;
|
|
50
|
+
/** The selected time in 24-hour `HH:mm:ss` format (e.g. `14:30:00`). Values outside this format are not parsed. */
|
|
51
|
+
timeValue: string;
|
|
52
|
+
/** Placeholder for the date input. Defaults to DD-MM-YYYY. */
|
|
53
|
+
placeholder: string;
|
|
54
|
+
/** Shows the hour/minute/second time selects below the date row. */
|
|
55
|
+
showTime: boolean;
|
|
56
|
+
/** The name submitted as a name/value pair for the time field. */
|
|
57
|
+
timeName: string;
|
|
58
|
+
/** Disables all inputs and the calendar picker. */
|
|
59
|
+
disabled: boolean;
|
|
60
|
+
/** Makes all inputs read-only. */
|
|
61
|
+
readonly: boolean;
|
|
62
|
+
/** Marks the field as required. */
|
|
63
|
+
required: boolean;
|
|
64
|
+
/** Minimum selectable date in YYYY-MM-DD format. */
|
|
65
|
+
min: string;
|
|
66
|
+
/** Maximum selectable date in YYYY-MM-DD format. */
|
|
67
|
+
max: string;
|
|
68
|
+
/**
|
|
69
|
+
* Custom validation message when the typed date is before `min`.
|
|
70
|
+
* Falls back to the localized `dateBeforeMin` term when omitted.
|
|
71
|
+
*/
|
|
72
|
+
maskMinMessage: string;
|
|
73
|
+
/**
|
|
74
|
+
* Custom validation message when the typed date is after `max`.
|
|
75
|
+
* Falls back to the localized `dateAfterMax` term when omitted.
|
|
76
|
+
*/
|
|
77
|
+
maskMaxMessage: string;
|
|
78
|
+
/** Controls whether the calendar popup is visible. */
|
|
79
|
+
private calendarOpen;
|
|
80
|
+
/** Date shown in the text input formatted as DD-MM-YYYY. */
|
|
81
|
+
private displayValue;
|
|
82
|
+
constructor();
|
|
83
|
+
connectedCallback(): void;
|
|
84
|
+
disconnectedCallback(): void;
|
|
85
|
+
runFirstUpdated(): Promise<void>;
|
|
86
|
+
private readonly dateMaskBlocks;
|
|
87
|
+
private get datePlaceholder();
|
|
88
|
+
getForm(): HTMLFormElement | undefined;
|
|
89
|
+
private get minDate();
|
|
90
|
+
private get maxDate();
|
|
91
|
+
/** Sets a custom validation message on the inner date input. Pass an empty string to restore validity. */
|
|
92
|
+
setCustomValidity(message: string): void;
|
|
93
|
+
private addOpenListeners;
|
|
94
|
+
private removeOpenListeners;
|
|
95
|
+
private validateInRange;
|
|
96
|
+
private emitTimeChange;
|
|
97
|
+
private get timeParts();
|
|
98
|
+
private updateTimePart;
|
|
99
|
+
private renderTimeSelects;
|
|
100
|
+
private renderHiddenTimeInput;
|
|
101
|
+
private handleTimePartChange;
|
|
102
|
+
handleValueChange(): void;
|
|
103
|
+
handleMinMaxChange(): void;
|
|
104
|
+
handleAccessStateChange(): void;
|
|
105
|
+
private resetDateValue;
|
|
106
|
+
private handleDateInput;
|
|
107
|
+
private handleDateKeydown;
|
|
108
|
+
private handleDateChange;
|
|
109
|
+
private handleDateBlur;
|
|
110
|
+
private handleShowCalender;
|
|
111
|
+
private handleCalendarPanelPointerDown;
|
|
112
|
+
private handleDocumentPointerDown;
|
|
113
|
+
private handleDocumentKeyDown;
|
|
114
|
+
private handleClearClick;
|
|
115
|
+
private handleCalendarDateSelect;
|
|
116
|
+
private commitFromCalendar;
|
|
117
|
+
private commitValue;
|
|
118
|
+
private closeCalendar;
|
|
119
|
+
private renderCalendarIcon;
|
|
120
|
+
private renderShowtime;
|
|
121
|
+
render(): import('lit').TemplateResult<1>;
|
|
122
|
+
}
|
|
123
|
+
declare global {
|
|
124
|
+
interface HTMLElementTagNameMap {
|
|
125
|
+
'cx-input-date-picker': CxInputDatePicker;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { default as CxOption } from '../../../atoms/src/components/option/option.ts';
|
|
2
|
+
import { default as CxSelect } from '../../../atoms/src/components/select/select.ts';
|
|
3
|
+
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
|
|
4
|
+
import { default as CxInputDatePicker } from '../input-date-picker/input-date-picker.ts';
|
|
5
|
+
import { CSSResultGroup } from 'lit';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @summary A date range input composed of two date pickers and an optional preset selector.
|
|
9
|
+
* Validates that the from date is not after the to date.
|
|
10
|
+
*
|
|
11
|
+
* @event cx-change - Emitted when the user commits any range value change. Read `el.fromDate`, `el.toDate`, `el.fromTime`, `el.toTime`, `el.preset` for the updated values.
|
|
12
|
+
*
|
|
13
|
+
* @csspart pickers-row - The row containing both date pickers.
|
|
14
|
+
* @csspart preset-row - The row containing the preset select.
|
|
15
|
+
*
|
|
16
|
+
* @cssproperty [--date-range-picker-width] - Explicit component width. Overrides date-only and show-time default widths.
|
|
17
|
+
* @cssproperty [--date-field-width=15rem] - Default width for each date picker when time selects are hidden.
|
|
18
|
+
* @cssproperty [--time-select-width=5.75rem] - Width of each child time select.
|
|
19
|
+
* @cssproperty [--date-range-picker-gap=var(--cx-spacing-small)] - Gap between the from and to date pickers.
|
|
20
|
+
*/
|
|
21
|
+
export default class CxInputDateRangePicker extends CortexElement {
|
|
22
|
+
static readonly styles: CSSResultGroup;
|
|
23
|
+
static readonly dependencies: {
|
|
24
|
+
'cx-input-date-picker': typeof CxInputDatePicker;
|
|
25
|
+
'cx-option': typeof CxOption;
|
|
26
|
+
'cx-select': typeof CxSelect;
|
|
27
|
+
};
|
|
28
|
+
private readonly localize;
|
|
29
|
+
/** Form submission key for the from date. */
|
|
30
|
+
fromName: string;
|
|
31
|
+
/** Form submission key for the to date. */
|
|
32
|
+
toName: string;
|
|
33
|
+
/** Form submission key for the from time. */
|
|
34
|
+
fromTimeName: string;
|
|
35
|
+
/** Form submission key for the to time. */
|
|
36
|
+
toTimeName: string;
|
|
37
|
+
/** The from date in YYYY-MM-DD format. */
|
|
38
|
+
fromDate: string;
|
|
39
|
+
/** The to date in YYYY-MM-DD format. */
|
|
40
|
+
toDate: string;
|
|
41
|
+
/** The from time in 24-hour `HH:mm:ss` format (e.g. `14:30:00`). Values outside this format are not parsed. */
|
|
42
|
+
fromTime: string;
|
|
43
|
+
/** The to time in 24-hour `HH:mm:ss` format (e.g. `14:30:00`). Values outside this format are not parsed. */
|
|
44
|
+
toTime: string;
|
|
45
|
+
/** The selected preset value. */
|
|
46
|
+
preset: string;
|
|
47
|
+
/** Label for the from date picker. */
|
|
48
|
+
fromLabel: string;
|
|
49
|
+
/** Label for the to date picker. */
|
|
50
|
+
toLabel: string;
|
|
51
|
+
/** Shared placeholder for both child date pickers. */
|
|
52
|
+
placeholder: string;
|
|
53
|
+
/** Shows the time selects on both child date pickers. */
|
|
54
|
+
showTime: boolean;
|
|
55
|
+
/** Shows the preset selector. */
|
|
56
|
+
showPreset: boolean;
|
|
57
|
+
/** Disables all inputs. */
|
|
58
|
+
disabled: boolean;
|
|
59
|
+
/** Makes all inputs read-only. */
|
|
60
|
+
readonly: boolean;
|
|
61
|
+
/** Marks the range as required — both dates must be filled. */
|
|
62
|
+
required: boolean;
|
|
63
|
+
/** Minimum selectable date in YYYY-MM-DD format. */
|
|
64
|
+
min: string;
|
|
65
|
+
/** Maximum selectable date in YYYY-MM-DD format. */
|
|
66
|
+
max: string;
|
|
67
|
+
/** The associated form target passed to child date pickers. */
|
|
68
|
+
form: string | HTMLElement | undefined;
|
|
69
|
+
handleShowTimeChange(): void;
|
|
70
|
+
handlePresetValueChange(): void;
|
|
71
|
+
getForm(): HTMLFormElement | undefined;
|
|
72
|
+
private get isTimeRangeInvalid();
|
|
73
|
+
private isDateRangePreset;
|
|
74
|
+
private get nextFromDate();
|
|
75
|
+
private clearRangeData;
|
|
76
|
+
private applyPreset;
|
|
77
|
+
private handlePresetChange;
|
|
78
|
+
private get resolvedFromLabel();
|
|
79
|
+
private get resolvedToLabel();
|
|
80
|
+
private handleFromDateChange;
|
|
81
|
+
private handleToDateChange;
|
|
82
|
+
private emitRangeChange;
|
|
83
|
+
private renderPresets;
|
|
84
|
+
render(): import('lit').TemplateResult<1>;
|
|
85
|
+
}
|
|
86
|
+
declare global {
|
|
87
|
+
interface HTMLElementTagNameMap {
|
|
88
|
+
'cx-input-date-range-picker': CxInputDateRangePicker;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -23,7 +23,6 @@ export default class CxTimeline extends CortexElement {
|
|
|
23
23
|
};
|
|
24
24
|
private readonly localize;
|
|
25
25
|
private apiSearchAssets;
|
|
26
|
-
private readonly searchToken;
|
|
27
26
|
private thumbnailRequestVersion;
|
|
28
27
|
private get isInEditMode();
|
|
29
28
|
tabGroup?: CxTabGroup;
|
|
@@ -56,6 +55,7 @@ export default class CxTimeline extends CortexElement {
|
|
|
56
55
|
* Asset transformations applied to the image.
|
|
57
56
|
*/
|
|
58
57
|
transformations: Transformation[];
|
|
58
|
+
siteBuilderToken: string;
|
|
59
59
|
/** Proxy URLs resolved from apiSearchAssets, keyed by item.id. */
|
|
60
60
|
private resolvedThumbnails;
|
|
61
61
|
handleDataChange(): Promise<void>;
|
|
@@ -7,7 +7,6 @@ export declare class ConfigFormController implements ReactiveController {
|
|
|
7
7
|
host: ReactiveControllerHost & CxConfigForm;
|
|
8
8
|
private readonly localize;
|
|
9
9
|
private apiSearchAssets;
|
|
10
|
-
private readonly searchToken;
|
|
11
10
|
private readonly pendingGalleryPickerSaves;
|
|
12
11
|
constructor(host: ReactiveControllerHost & CxConfigForm);
|
|
13
12
|
hostConnected(): void;
|
|
@@ -27,7 +27,7 @@ export declare const SEARCH_FIELDS: {
|
|
|
27
27
|
ORIGINAL_VIEW_SIZE: string;
|
|
28
28
|
};
|
|
29
29
|
export declare function resolveAssetExtraFilters(selectedFacets?: Record<string, string[]>): Record<string, string[]>;
|
|
30
|
-
export declare function apiSearchAssets({
|
|
30
|
+
export declare function apiSearchAssets({ countPerPage, fields, getPermanentAssetsPaths, pageNumber, query, securityByPassToken, siteUrl, sort, token, useSession, }: SearchAssetsParams): Promise<SearchAssetsResponse>;
|
|
31
31
|
export declare function apiGetTransformAssetLink({ assetId, extension, format, siteUrl, token, transformations, useSession, }: {
|
|
32
32
|
assetId: string;
|
|
33
33
|
extension?: string;
|
|
@@ -37,8 +37,8 @@ export declare function apiGetTransformAssetLink({ assetId, extension, format, s
|
|
|
37
37
|
transformations?: string;
|
|
38
38
|
useSession?: string;
|
|
39
39
|
}): Promise<GetTransformAssetLinkResponse | null>;
|
|
40
|
-
export declare function apiGetAssets({
|
|
41
|
-
export declare function apiGetAssetsInFolder({
|
|
40
|
+
export declare function apiGetAssets({ extraFields, getPermanentAssetsPaths, recordIds, securityByPassToken, token, }: GetAssetsRequest): Promise<GetAssetsResponse>;
|
|
41
|
+
export declare function apiGetAssetsInFolder({ countPerPage, directParentFolderIdentifier, extraFields, getPermanentAssetsPaths, limitedDocTypes, pageNumber, parentFolderIdentifier, searchTerm, securityByPassToken, sortOrder, token, }: GetAssetsInFolderRequest): Promise<GetAssetsInFolderResponse>;
|
|
42
42
|
export declare function apiGetCropFocusMode({ autoCropMode, cropHeight, cropWidth, imageUrl, useSession, }: GetCropZoneSuggestionRequest): Promise<GetCropZoneSuggestionResponse | null>;
|
|
43
43
|
export declare function apiGetAvailableProxies({ assetRecordId, siteUrl, token, useSession, }: {
|
|
44
44
|
assetRecordId: string;
|
|
@@ -4,10 +4,10 @@ export declare class FetchAssetController implements ReactiveController {
|
|
|
4
4
|
private readonly host;
|
|
5
5
|
private data;
|
|
6
6
|
constructor(host: ReactiveElement);
|
|
7
|
-
fetchAssetByID({
|
|
8
|
-
cms5Token?: string;
|
|
7
|
+
fetchAssetByID({ extraFields, recordId, securityByPassToken, token, }: {
|
|
9
8
|
extraFields?: string[];
|
|
10
9
|
recordId: string;
|
|
10
|
+
securityByPassToken?: string;
|
|
11
11
|
token?: string;
|
|
12
12
|
}): Promise<Record<string, string>>;
|
|
13
13
|
hostConnected?(): void;
|
|
@@ -6,9 +6,9 @@ export type ExtendedGalleryItem = GalleryItem & {
|
|
|
6
6
|
[key: string]: string | undefined;
|
|
7
7
|
};
|
|
8
8
|
type FetchImageControllerOptions = {
|
|
9
|
-
cms5Token?: string;
|
|
10
9
|
maxEnd?: number;
|
|
11
10
|
pageSize?: number;
|
|
11
|
+
securityByPassToken?: string;
|
|
12
12
|
token?: string;
|
|
13
13
|
};
|
|
14
14
|
export declare function isSupportedImageExtension(extension: string): boolean;
|
|
@@ -16,15 +16,16 @@ export declare class FetchImageController implements ReactiveController {
|
|
|
16
16
|
private readonly host;
|
|
17
17
|
private data;
|
|
18
18
|
private folderId;
|
|
19
|
-
private parentFolderIdentifier;
|
|
20
19
|
private readonly fetchedPages;
|
|
21
20
|
private totalCount;
|
|
22
21
|
private maxEnd;
|
|
23
22
|
private pageSize;
|
|
24
23
|
private readonly authToken;
|
|
25
|
-
private
|
|
24
|
+
private securityByPassToken;
|
|
25
|
+
private requestEpoch;
|
|
26
26
|
constructor(host: ReactiveElement, options?: FetchImageControllerOptions);
|
|
27
27
|
get totalDataCount(): number;
|
|
28
|
+
setSecurityByPassToken(token: string | undefined): void;
|
|
28
29
|
fetchImages({ end, extraFields, format, start, transformations, }: {
|
|
29
30
|
end: number;
|
|
30
31
|
extraFields: string[];
|
|
@@ -70,7 +71,6 @@ export declare class FetchImageController implements ReactiveController {
|
|
|
70
71
|
}): AsyncGenerator<ExtendedGalleryItem[], void, unknown>;
|
|
71
72
|
hostConnected?(): void;
|
|
72
73
|
hostDisconnected?(): void;
|
|
73
|
-
private resolveParentFolderIdentifier;
|
|
74
74
|
private resetPageCache;
|
|
75
75
|
private resetFolderState;
|
|
76
76
|
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export interface TimeOption {
|
|
2
|
+
label: string;
|
|
3
|
+
value: string;
|
|
4
|
+
}
|
|
5
|
+
export declare const DEFAULT_TIME_PART = "00";
|
|
6
|
+
export declare const DEFAULT_FROM_TIME = "00:00:00";
|
|
7
|
+
export declare const DEFAULT_TO_TIME = "23:59:59";
|
|
8
|
+
/** Hour options in 12-hour AM/PM display, mapping to 24-hour internal values. */
|
|
9
|
+
export declare const HOUR_OPTIONS: readonly TimeOption[];
|
|
10
|
+
/** 00-59 padded strings for minute and second selects. */
|
|
11
|
+
export declare const PAD_OPTIONS: readonly string[];
|
|
12
|
+
export declare const DATE_RANGE_PRESET: {
|
|
13
|
+
readonly last2Days: "last-2-days";
|
|
14
|
+
readonly last30Days: "last-30-days";
|
|
15
|
+
readonly last30Minutes: "last-30-minutes";
|
|
16
|
+
readonly last3Days: "last-3-days";
|
|
17
|
+
readonly lastDay: "last-day";
|
|
18
|
+
readonly lastHalfYear: "last-half-year";
|
|
19
|
+
readonly lastMonth: "last-month";
|
|
20
|
+
readonly lastQuarter: "last-quarter";
|
|
21
|
+
readonly lastWeek: "last-week";
|
|
22
|
+
readonly lastYear: "last-year";
|
|
23
|
+
readonly next30Days: "next-30-days";
|
|
24
|
+
readonly thisHalfYear: "this-half-year";
|
|
25
|
+
readonly thisMonth: "this-month";
|
|
26
|
+
readonly thisQuarter: "this-quarter";
|
|
27
|
+
readonly thisWeek: "this-week";
|
|
28
|
+
readonly thisYear: "this-year";
|
|
29
|
+
readonly today: "today";
|
|
30
|
+
};
|
|
31
|
+
export type DateRangePreset = (typeof DATE_RANGE_PRESET)[keyof typeof DATE_RANGE_PRESET];
|
|
32
|
+
export declare const DATE_RANGE_PRESETS: readonly ["last-30-minutes", "today", "last-day", "last-2-days", "last-3-days", "last-30-days", "next-30-days", "this-week", "last-week", "this-month", "last-month", "last-quarter", "last-half-year", "this-quarter", "this-half-year", "this-year", "last-year"];
|
|
33
|
+
/** Maps each preset value to the i18n translation key used for its label. */
|
|
34
|
+
export declare const PRESET_TRANSLATION_KEY: Record<DateRangePreset, string>;
|
|
35
|
+
export interface DateRangeResult {
|
|
36
|
+
fromDate: string;
|
|
37
|
+
fromTime: string;
|
|
38
|
+
toDate: string;
|
|
39
|
+
toTime: string;
|
|
40
|
+
}
|
|
41
|
+
export type DateParts = {
|
|
42
|
+
day: number;
|
|
43
|
+
month: number;
|
|
44
|
+
year: number;
|
|
45
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare enum FacetSelectionMode {
|
|
2
|
+
Multiple = "multiple",
|
|
3
|
+
Single = "single"
|
|
4
|
+
}
|
|
5
|
+
export type FacetDetails = {
|
|
6
|
+
displayName: string;
|
|
7
|
+
facetFieldName: string;
|
|
8
|
+
facetIndexedFieldName?: string;
|
|
9
|
+
/** Controls whether the facet allows single or multi-select. Defaults to single. */
|
|
10
|
+
selection?: FacetSelectionMode;
|
|
11
|
+
};
|
|
12
|
+
export type FacetValue = {
|
|
13
|
+
count: number;
|
|
14
|
+
displayValue: string;
|
|
15
|
+
/** Supports two-level hierarchical values using ">>" separator, e.g. "image>>png". */
|
|
16
|
+
value: string;
|
|
17
|
+
};
|
|
18
|
+
export type Facet = {
|
|
19
|
+
facetDetails: FacetDetails;
|
|
20
|
+
values: FacetValue[];
|
|
21
|
+
};
|
|
22
|
+
/** Selected filter values keyed by facetFieldName. e.g. `{ status: ['active'], category: ['image>>png'] }` */
|
|
23
|
+
export type SelectedFacets = Record<string, string[]>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
type FakeString = string & Record<string, never>;
|
|
2
2
|
export type EnumOrString<T> = T | FakeString;
|
|
3
|
+
export * from './icon-picker';
|
|
3
4
|
export type BaseVariant = 'primary' | 'success' | 'neutral' | 'warning' | 'danger';
|
|
4
5
|
export declare enum ObjectFit {
|
|
5
6
|
Contain = "contain",
|
|
@@ -55,4 +56,3 @@ export declare enum GsapEasing {
|
|
|
55
56
|
'quad-in-out' = "power2.inOut",
|
|
56
57
|
'quad-out' = "power2.out"
|
|
57
58
|
}
|
|
58
|
-
export {};
|
|
@@ -35,6 +35,12 @@ export declare enum TableClipboardAction {
|
|
|
35
35
|
Copy = "copy",
|
|
36
36
|
Paste = "paste"
|
|
37
37
|
}
|
|
38
|
+
export declare enum TableDataFormat {
|
|
39
|
+
Auto = "auto",
|
|
40
|
+
Csv = "csv",
|
|
41
|
+
Json = "json",
|
|
42
|
+
Xml = "xml"
|
|
43
|
+
}
|
|
38
44
|
/**
|
|
39
45
|
* Tabulator Interface
|
|
40
46
|
*/
|
|
@@ -2237,6 +2243,12 @@ export interface ColumnDefinition extends ColumnLayout, CellCallbacks, Formatter
|
|
|
2237
2243
|
* is found the click is a no-op.
|
|
2238
2244
|
*/
|
|
2239
2245
|
clickableActionName?: string;
|
|
2246
|
+
/**
|
|
2247
|
+
* When set, clicking the cell fires `cx-table-row-action-click` directly with
|
|
2248
|
+
* `detail.name` equal to this value — no hover menu is required. Takes
|
|
2249
|
+
* priority over `clickableActionName` when both are set.
|
|
2250
|
+
*/
|
|
2251
|
+
clickableEventName?: string;
|
|
2240
2252
|
}
|
|
2241
2253
|
export interface CellCallbacks {
|
|
2242
2254
|
/** callback for when user clicks on a cell in this column. */
|
|
@@ -77,3 +77,8 @@ export declare class FormControlController implements ReactiveController {
|
|
|
77
77
|
export declare const validValidityState: ValidityState;
|
|
78
78
|
export declare const valueMissingValidityState: ValidityState;
|
|
79
79
|
export declare const customErrorValidityState: ValidityState;
|
|
80
|
+
/**
|
|
81
|
+
* Resolves the form associated with a custom element.
|
|
82
|
+
* Accepts an HTMLFormElement directly, a form `id` string, or falls back to `closest('form')`.
|
|
83
|
+
*/
|
|
84
|
+
export declare function getAssociatedForm(element: HTMLElement, form: string | HTMLElement | undefined): HTMLFormElement | undefined;
|
|
@@ -31,6 +31,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
31
31
|
addCurrent: string;
|
|
32
32
|
addFolderCard: string;
|
|
33
33
|
addLimitExceeded: (limit: number) => string;
|
|
34
|
+
addMarker: string;
|
|
34
35
|
addPageCard: string;
|
|
35
36
|
addParameter: string;
|
|
36
37
|
addRemoveLink: string;
|
|
@@ -233,7 +234,13 @@ export interface Translation extends DefaultTranslation {
|
|
|
233
234
|
dashSpacing: string;
|
|
234
235
|
dashWidth: string;
|
|
235
236
|
dashed: string;
|
|
237
|
+
date: string;
|
|
238
|
+
dateAfterMax: string;
|
|
239
|
+
dateBeforeMin: string;
|
|
236
240
|
dateFormat: string;
|
|
241
|
+
dateInvalid: string;
|
|
242
|
+
dateRangeRequired: string;
|
|
243
|
+
dateRequired: string;
|
|
237
244
|
decreaseFontSize: string;
|
|
238
245
|
default: string;
|
|
239
246
|
defaultDownloadLocation: string;
|
|
@@ -298,6 +305,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
298
305
|
editFolderCard: string;
|
|
299
306
|
editImage: string;
|
|
300
307
|
editLink: string;
|
|
308
|
+
editMarker: string;
|
|
301
309
|
editPageCard: string;
|
|
302
310
|
editSection: string;
|
|
303
311
|
editSlide: string;
|
|
@@ -370,6 +378,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
370
378
|
folderCollection: string;
|
|
371
379
|
folders: string;
|
|
372
380
|
font: string;
|
|
381
|
+
fontAwesome: string;
|
|
373
382
|
fontColor: string;
|
|
374
383
|
fontKit: string;
|
|
375
384
|
fontKitPreview: string;
|
|
@@ -380,8 +389,10 @@ export interface Translation extends DefaultTranslation {
|
|
|
380
389
|
fontWeight: string;
|
|
381
390
|
fonts: string;
|
|
382
391
|
format: string;
|
|
392
|
+
formatDDMMYYYY: string;
|
|
383
393
|
formats: string;
|
|
384
394
|
forward: string;
|
|
395
|
+
fromLabel: string;
|
|
385
396
|
fullscreen: string;
|
|
386
397
|
gallery: string;
|
|
387
398
|
galleryCardNthOfCards: (index: number, count: number) => string;
|
|
@@ -412,6 +423,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
412
423
|
history: string;
|
|
413
424
|
hollowBullet: string;
|
|
414
425
|
horizontalGap: string;
|
|
426
|
+
hour: string;
|
|
415
427
|
hugContent: string;
|
|
416
428
|
hugContentOnDesktopAndStretchesToFullWidthOnMobile: string;
|
|
417
429
|
icon: string;
|
|
@@ -494,6 +506,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
494
506
|
marginTop: string;
|
|
495
507
|
margins: string;
|
|
496
508
|
markerImages: string;
|
|
509
|
+
markers: string;
|
|
497
510
|
markersPerScreen: string;
|
|
498
511
|
matchCase: string;
|
|
499
512
|
max: string;
|
|
@@ -514,6 +527,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
514
527
|
minHeight: string;
|
|
515
528
|
minWidth: string;
|
|
516
529
|
minimize: string;
|
|
530
|
+
minute: string;
|
|
517
531
|
more: string;
|
|
518
532
|
moreOptions: string;
|
|
519
533
|
moveBlockDown: string;
|
|
@@ -554,6 +568,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
554
568
|
numOptionsSelected: (num: number) => string;
|
|
555
569
|
numberedListStyle: string;
|
|
556
570
|
of: string;
|
|
571
|
+
off: string;
|
|
557
572
|
ok: string;
|
|
558
573
|
onHover: string;
|
|
559
574
|
onThisPage: string;
|
|
@@ -617,6 +632,24 @@ export interface Translation extends DefaultTranslation {
|
|
|
617
632
|
popOut: string;
|
|
618
633
|
position: string;
|
|
619
634
|
preserveMetadata: string;
|
|
635
|
+
preset: string;
|
|
636
|
+
presetLast2Days: string;
|
|
637
|
+
presetLast30Days: string;
|
|
638
|
+
presetLast30Minutes: string;
|
|
639
|
+
presetLast3Days: string;
|
|
640
|
+
presetLastDay: string;
|
|
641
|
+
presetLastHalfYear: string;
|
|
642
|
+
presetLastMonth: string;
|
|
643
|
+
presetLastQuarter: string;
|
|
644
|
+
presetLastWeek: string;
|
|
645
|
+
presetLastYear: string;
|
|
646
|
+
presetNext30Days: string;
|
|
647
|
+
presetThisHalfYear: string;
|
|
648
|
+
presetThisMonth: string;
|
|
649
|
+
presetThisQuarter: string;
|
|
650
|
+
presetThisWeek: string;
|
|
651
|
+
presetThisYear: string;
|
|
652
|
+
presetToday: string;
|
|
620
653
|
pressEnterOrCtrlCToCopy: string;
|
|
621
654
|
preview: string;
|
|
622
655
|
previewText: string;
|
|
@@ -690,6 +723,7 @@ export interface Translation extends DefaultTranslation {
|
|
|
690
723
|
searchFolders: string;
|
|
691
724
|
searchOptions: string;
|
|
692
725
|
searching: string;
|
|
726
|
+
second: string;
|
|
693
727
|
secondary: string;
|
|
694
728
|
sectionBackground: string;
|
|
695
729
|
seeThru: string;
|
|
@@ -802,6 +836,8 @@ export interface Translation extends DefaultTranslation {
|
|
|
802
836
|
timeline: string;
|
|
803
837
|
title: string;
|
|
804
838
|
titleImage: string;
|
|
839
|
+
toDateMustBeSameOrLaterThanFromDate: string;
|
|
840
|
+
toLabel: string;
|
|
805
841
|
toViewAssetRetrieveFromColdStorage: string;
|
|
806
842
|
today: string;
|
|
807
843
|
toggleColorFormat: string;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { CalendarDate } from './date';
|
|
2
|
+
|
|
3
|
+
export interface CalendarCell {
|
|
4
|
+
/** YYYY-MM-DD of this cell. */
|
|
5
|
+
date: CalendarDate;
|
|
6
|
+
/** Numeric day of the month (1-31). */
|
|
7
|
+
day: number;
|
|
8
|
+
isDisabled: boolean;
|
|
9
|
+
/** True when this cell belongs to a month other than viewMonth. */
|
|
10
|
+
isOutside: boolean;
|
|
11
|
+
isSelected: boolean;
|
|
12
|
+
isToday: boolean;
|
|
13
|
+
/** 1-based month of this cell. May differ from viewMonth for outside cells. */
|
|
14
|
+
month: number;
|
|
15
|
+
year: number;
|
|
16
|
+
}
|
|
17
|
+
export interface CalendarGridParams {
|
|
18
|
+
/** Maximum selectable date. Empty string means no maximum. */
|
|
19
|
+
maxDate: CalendarDate;
|
|
20
|
+
/** Minimum selectable date. Empty string means no minimum. */
|
|
21
|
+
minDate: CalendarDate;
|
|
22
|
+
/** Currently selected date. Empty string means no selection. */
|
|
23
|
+
selectedDate: CalendarDate;
|
|
24
|
+
/** Today's date used to highlight the current day. */
|
|
25
|
+
todayDate: CalendarDate;
|
|
26
|
+
/** 1-based month to render (1 = January … 12 = December). */
|
|
27
|
+
viewMonth: number;
|
|
28
|
+
viewYear: number;
|
|
29
|
+
}
|
|
30
|
+
export declare class CalendarGrid {
|
|
31
|
+
/**
|
|
32
|
+
* Generates a fixed 35-cell (5 weeks × 7 days) grid for the given month.
|
|
33
|
+
* The grid always starts on Sunday. Days before the 1st and after the last
|
|
34
|
+
* day of viewMonth are marked isOutside = true but remain selectable.
|
|
35
|
+
*
|
|
36
|
+
* Note: months that span more than 5 weeks (start on Fri/Sat with 30/31 days)
|
|
37
|
+
* will have their last 1-2 days truncated. This matches the fixed-height design.
|
|
38
|
+
*/
|
|
39
|
+
static generate(params: CalendarGridParams): CalendarCell[];
|
|
40
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DateRangePreset, DateRangeResult } from '../../../types/src/date-picker';
|
|
2
|
+
|
|
3
|
+
export declare class DateRangePresets {
|
|
4
|
+
/**
|
|
5
|
+
* Computes a date range from a preset value.
|
|
6
|
+
*
|
|
7
|
+
* @param preset - One of the DATE_RANGE_PRESET values.
|
|
8
|
+
* @param now - Injectable reference to the current moment; use `new Date()` in production.
|
|
9
|
+
* @returns fromDate, toDate (YYYY-MM-DD) and fromTime, toTime (HH:mm:ss).
|
|
10
|
+
*/
|
|
11
|
+
static getRange(preset: DateRangePreset, now: Date): DateRangeResult;
|
|
12
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** Strict date-only string in YYYY-MM-DD format. No time, no timezone. */
|
|
2
|
+
export type CalendarDate = string;
|
|
3
|
+
/** Returns true only for well-formed, calendar-valid YYYY-MM-DD strings. */
|
|
4
|
+
export declare function isValidIsoDate(value: string): value is CalendarDate;
|
|
5
|
+
/** Builds a CalendarDate from numeric parts. Month is 1-based. */
|
|
6
|
+
export declare function toIsoDate(year: number, month: number, day: number): CalendarDate;
|
|
7
|
+
/** Splits a CalendarDate into numeric year/month/day. Month is 1-based. */
|
|
8
|
+
export declare function parseIsoDate(date: CalendarDate): {
|
|
9
|
+
day: number;
|
|
10
|
+
month: number;
|
|
11
|
+
year: number;
|
|
12
|
+
};
|
|
13
|
+
/** Converts a valid CalendarDate into a local Date object. */
|
|
14
|
+
export declare function isoToDate(value: string): Date | undefined;
|
|
15
|
+
/** Converts YYYY-MM-DD to DD-MM-YYYY for date input display. */
|
|
16
|
+
export declare function isoToDisplay(value: string): string;
|
|
17
|
+
/** Converts complete DD-MM-YYYY display input to YYYY-MM-DD. Returns empty for partial input. */
|
|
18
|
+
export declare function displayToIso(value: string): CalendarDate | '';
|
|
19
|
+
/** Returns today's date as a CalendarDate in the browser's local timezone. */
|
|
20
|
+
export declare function getTodayIsoDate(): CalendarDate;
|
|
21
|
+
/**
|
|
22
|
+
* Adds (or subtracts) months from a given year/month pair.
|
|
23
|
+
* Native Date handles overflow — e.g. month 13 becomes January of next year.
|
|
24
|
+
*/
|
|
25
|
+
export declare function addMonths(year: number, month: number, delta: number): {
|
|
26
|
+
month: number;
|
|
27
|
+
year: number;
|
|
28
|
+
};
|
|
29
|
+
/** Formats a year/month pair as a human-readable label, e.g. "June 2026". */
|
|
30
|
+
export declare function formatMonthYearLabel(year: number, month: number): string;
|
|
31
|
+
/** Returns the 0-based day-of-week index for the 1st of the given month. 0 = Sunday. */
|
|
32
|
+
export declare function getFirstDayOfWeek(year: number, month: number): number;
|
|
33
|
+
/**
|
|
34
|
+
* Normalizes a consumer-provided value to a CalendarDate (YYYY-MM-DD).
|
|
35
|
+
*
|
|
36
|
+
* Supported formats:
|
|
37
|
+
* - YYYY-MM-DD → returned as-is after validation
|
|
38
|
+
* - ISO UTC datetime (Z) → converted to the browser's local date
|
|
39
|
+
*
|
|
40
|
+
* Unsupported formats log a warning and return null.
|
|
41
|
+
*/
|
|
42
|
+
export declare function normalizeToIsoDate(value: string): CalendarDate | null;
|