@sentropic/design-system-vue 0.36.56 → 0.36.58

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.
@@ -0,0 +1,231 @@
1
+ import { type PropType } from "vue";
2
+ import type { TimeRange, TimeRangePreset } from "./timeRange.js";
3
+ export type { TimeRange, TimeRangeMode, TimeRangePreset } from "./timeRange.js";
4
+ export type TimeRangePickerSize = "sm" | "md" | "lg";
5
+ export type TimeRangePickerPlacement = "bottom-start" | "bottom-end" | "top-start" | "top-end";
6
+ export type TimeRangePickerAlign = "start" | "end" | "center";
7
+ export type TimeRangePickerTimeFormat = "24" | "12";
8
+ export type TimeRangePickerProps = {
9
+ /** `v-model` value. */
10
+ modelValue?: TimeRange;
11
+ /** Svelte/React-canonical alias for `modelValue`. */
12
+ value?: TimeRange;
13
+ defaultValue?: TimeRange;
14
+ onChange?: (value: TimeRange) => void;
15
+ presets?: TimeRangePreset[];
16
+ min?: number;
17
+ max?: number;
18
+ locale?: string;
19
+ timeFormat?: TimeRangePickerTimeFormat;
20
+ timeStep?: number;
21
+ calendarMonths?: 1 | 2;
22
+ disabled?: boolean;
23
+ label?: string;
24
+ placement?: TimeRangePickerPlacement;
25
+ align?: TimeRangePickerAlign;
26
+ size?: TimeRangePickerSize;
27
+ class?: string;
28
+ formatRange?: (value: TimeRange, locale: string) => string;
29
+ formatPresetLabel?: (token: string, locale: string) => string;
30
+ };
31
+ /**
32
+ * New-Relic-style time range selector. Trigger button showing the current
33
+ * range → popover with two tabs (Relative | Custom). Relative = preset list,
34
+ * resolves+emits+closes immediately. Custom = absolute range editor (calendar
35
+ * range + a time picker per bound + typed inputs), STAGED behind Apply.
36
+ *
37
+ * Ported from TimeRangePicker.svelte. Composes EXISTING Vue DS primitives:
38
+ * ContentSwitcher, SelectableList/SelectableRow, Calendar, TimePicker, Input,
39
+ * Button. DEVIATION from the Svelte reference: MenuPopover.ts in this package
40
+ * is a self-contained trigger+dialog widget (no `trigger` prop, no
41
+ * JS-computed viewport positioning, no outside-click/Escape auto-dismiss, and
42
+ * it renders its role="dialog" wrapper unconditionally) — it does not support
43
+ * the "external trigger + positioned panel" shape this component needs. So,
44
+ * like DatePicker.ts and Dropdown.ts in this same package, TimeRangePicker
45
+ * owns its own open state, outside-pointerdown + Escape dismissal, and a
46
+ * CSS-positioned (position:absolute) panel — this mirrors MenuPopover's ROLE
47
+ * (dialog panel, placement classes) without depending on its component API.
48
+ * Focus trap + focus-return to the trigger are implemented here too (Vue's
49
+ * MenuPopover/Modal don't trap focus either, matching the Svelte doc note).
50
+ */
51
+ export declare const TimeRangePicker: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
52
+ modelValue: {
53
+ type: PropType<TimeRange>;
54
+ default: undefined;
55
+ };
56
+ value: {
57
+ type: PropType<TimeRange>;
58
+ default: undefined;
59
+ };
60
+ defaultValue: {
61
+ type: PropType<TimeRange>;
62
+ default: undefined;
63
+ };
64
+ onChange: {
65
+ type: PropType<(value: TimeRange) => void>;
66
+ default: undefined;
67
+ };
68
+ presets: {
69
+ type: PropType<TimeRangePreset[]>;
70
+ default: () => string[];
71
+ };
72
+ min: {
73
+ type: NumberConstructor;
74
+ default: undefined;
75
+ };
76
+ max: {
77
+ type: NumberConstructor;
78
+ default: undefined;
79
+ };
80
+ locale: {
81
+ type: StringConstructor;
82
+ default: string;
83
+ };
84
+ timeFormat: {
85
+ type: PropType<TimeRangePickerTimeFormat>;
86
+ default: string;
87
+ };
88
+ timeStep: {
89
+ type: NumberConstructor;
90
+ default: number;
91
+ };
92
+ calendarMonths: {
93
+ type: PropType<1 | 2>;
94
+ default: number;
95
+ };
96
+ disabled: {
97
+ type: BooleanConstructor;
98
+ default: boolean;
99
+ };
100
+ label: {
101
+ type: StringConstructor;
102
+ default: undefined;
103
+ };
104
+ placement: {
105
+ type: PropType<TimeRangePickerPlacement>;
106
+ default: string;
107
+ };
108
+ align: {
109
+ type: PropType<TimeRangePickerAlign>;
110
+ default: undefined;
111
+ };
112
+ size: {
113
+ type: PropType<TimeRangePickerSize>;
114
+ default: string;
115
+ };
116
+ class: {
117
+ type: StringConstructor;
118
+ default: undefined;
119
+ };
120
+ formatRange: {
121
+ type: PropType<(value: TimeRange, locale: string) => string>;
122
+ default: undefined;
123
+ };
124
+ formatPresetLabel: {
125
+ type: PropType<(token: string, locale: string) => string>;
126
+ default: undefined;
127
+ };
128
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
129
+ [key: string]: any;
130
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
131
+ modelValue: {
132
+ type: PropType<TimeRange>;
133
+ default: undefined;
134
+ };
135
+ value: {
136
+ type: PropType<TimeRange>;
137
+ default: undefined;
138
+ };
139
+ defaultValue: {
140
+ type: PropType<TimeRange>;
141
+ default: undefined;
142
+ };
143
+ onChange: {
144
+ type: PropType<(value: TimeRange) => void>;
145
+ default: undefined;
146
+ };
147
+ presets: {
148
+ type: PropType<TimeRangePreset[]>;
149
+ default: () => string[];
150
+ };
151
+ min: {
152
+ type: NumberConstructor;
153
+ default: undefined;
154
+ };
155
+ max: {
156
+ type: NumberConstructor;
157
+ default: undefined;
158
+ };
159
+ locale: {
160
+ type: StringConstructor;
161
+ default: string;
162
+ };
163
+ timeFormat: {
164
+ type: PropType<TimeRangePickerTimeFormat>;
165
+ default: string;
166
+ };
167
+ timeStep: {
168
+ type: NumberConstructor;
169
+ default: number;
170
+ };
171
+ calendarMonths: {
172
+ type: PropType<1 | 2>;
173
+ default: number;
174
+ };
175
+ disabled: {
176
+ type: BooleanConstructor;
177
+ default: boolean;
178
+ };
179
+ label: {
180
+ type: StringConstructor;
181
+ default: undefined;
182
+ };
183
+ placement: {
184
+ type: PropType<TimeRangePickerPlacement>;
185
+ default: string;
186
+ };
187
+ align: {
188
+ type: PropType<TimeRangePickerAlign>;
189
+ default: undefined;
190
+ };
191
+ size: {
192
+ type: PropType<TimeRangePickerSize>;
193
+ default: string;
194
+ };
195
+ class: {
196
+ type: StringConstructor;
197
+ default: undefined;
198
+ };
199
+ formatRange: {
200
+ type: PropType<(value: TimeRange, locale: string) => string>;
201
+ default: undefined;
202
+ };
203
+ formatPresetLabel: {
204
+ type: PropType<(token: string, locale: string) => string>;
205
+ default: undefined;
206
+ };
207
+ }>> & Readonly<{
208
+ onChange?: ((...args: any[]) => any) | undefined;
209
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
210
+ }>, {
211
+ align: TimeRangePickerAlign;
212
+ size: TimeRangePickerSize;
213
+ class: string;
214
+ onChange: (value: TimeRange) => void;
215
+ label: string;
216
+ disabled: boolean;
217
+ max: number;
218
+ min: number;
219
+ locale: string;
220
+ value: TimeRange;
221
+ modelValue: TimeRange;
222
+ placement: TimeRangePickerPlacement;
223
+ defaultValue: TimeRange;
224
+ presets: TimeRangePreset[];
225
+ timeFormat: TimeRangePickerTimeFormat;
226
+ timeStep: number;
227
+ calendarMonths: 1 | 2;
228
+ formatRange: (value: TimeRange, locale: string) => string;
229
+ formatPresetLabel: (token: string, locale: string) => string;
230
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
231
+ //# sourceMappingURL=TimeRangePicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeRangePicker.d.ts","sourceRoot":"","sources":["../src/TimeRangePicker.ts"],"names":[],"mappings":"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"}