@santi020k/lumen-react 3.0.0 → 4.0.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.
Files changed (145) hide show
  1. package/README.md +666 -13
  2. package/dist/ai-surfaces.d.ts +49 -0
  3. package/dist/ai-surfaces.d.ts.map +1 -0
  4. package/dist/ai-surfaces.js +88 -0
  5. package/dist/amount-field.d.ts +11 -0
  6. package/dist/amount-field.d.ts.map +1 -0
  7. package/dist/amount-field.js +37 -0
  8. package/dist/attachments.d.ts +17 -0
  9. package/dist/attachments.d.ts.map +1 -0
  10. package/dist/attachments.js +23 -0
  11. package/dist/bullet-chart.d.ts +14 -0
  12. package/dist/bullet-chart.d.ts.map +1 -0
  13. package/dist/bullet-chart.js +22 -0
  14. package/dist/change-summary.d.ts +14 -0
  15. package/dist/change-summary.d.ts.map +1 -0
  16. package/dist/change-summary.js +4 -0
  17. package/dist/chart-inspection.d.ts +10 -0
  18. package/dist/chart-inspection.d.ts.map +1 -0
  19. package/dist/chart-inspection.js +11 -0
  20. package/dist/chart-interaction.d.ts +17 -0
  21. package/dist/chart-interaction.d.ts.map +1 -0
  22. package/dist/chart-interaction.js +50 -0
  23. package/dist/chart-label.d.ts +3 -0
  24. package/dist/chart-label.d.ts.map +1 -0
  25. package/dist/chart-label.js +1 -0
  26. package/dist/chart-recipes.d.ts +8 -0
  27. package/dist/chart-recipes.d.ts.map +1 -1
  28. package/dist/chart-recipes.js +35 -0
  29. package/dist/combobox.d.ts +9 -0
  30. package/dist/combobox.d.ts.map +1 -0
  31. package/dist/combobox.js +137 -0
  32. package/dist/comparison-chart.d.ts +13 -0
  33. package/dist/comparison-chart.d.ts.map +1 -0
  34. package/dist/comparison-chart.js +18 -0
  35. package/dist/components.d.ts +106 -70
  36. package/dist/components.d.ts.map +1 -1
  37. package/dist/components.js +4 -1947
  38. package/dist/dashboard.d.ts +20 -0
  39. package/dist/dashboard.d.ts.map +1 -0
  40. package/dist/dashboard.js +19 -0
  41. package/dist/data-table-range-model.d.ts +8 -0
  42. package/dist/data-table-range-model.d.ts.map +1 -0
  43. package/dist/data-table-range-model.js +31 -0
  44. package/dist/data-table-range.d.ts +17 -0
  45. package/dist/data-table-range.d.ts.map +1 -0
  46. package/dist/data-table-range.js +8 -0
  47. package/dist/data-table-saved-views.d.ts +30 -0
  48. package/dist/data-table-saved-views.d.ts.map +1 -0
  49. package/dist/data-table-saved-views.js +49 -0
  50. package/dist/data-table-selection-model.d.ts +23 -0
  51. package/dist/data-table-selection-model.d.ts.map +1 -0
  52. package/dist/data-table-selection-model.js +36 -0
  53. package/dist/data-table-selection.d.ts +11 -0
  54. package/dist/data-table-selection.d.ts.map +1 -0
  55. package/dist/data-table-selection.js +10 -0
  56. package/dist/data-table-state.d.ts +6 -0
  57. package/dist/data-table-state.d.ts.map +1 -0
  58. package/dist/data-table-state.js +38 -0
  59. package/dist/data-table-view.d.ts +88 -0
  60. package/dist/data-table-view.d.ts.map +1 -0
  61. package/dist/data-table-view.js +1 -0
  62. package/dist/data-table.d.ts +60 -0
  63. package/dist/data-table.d.ts.map +1 -0
  64. package/dist/data-table.js +1 -0
  65. package/dist/date-range-calendar.d.ts +29 -0
  66. package/dist/date-range-calendar.d.ts.map +1 -0
  67. package/dist/date-range-calendar.js +69 -0
  68. package/dist/date-range-input.d.ts +25 -0
  69. package/dist/date-range-input.d.ts.map +1 -0
  70. package/dist/date-range-input.js +195 -0
  71. package/dist/device-frame.d.ts +13 -0
  72. package/dist/device-frame.d.ts.map +1 -0
  73. package/dist/device-frame.js +23 -0
  74. package/dist/dialog-lifecycle.d.ts +3 -0
  75. package/dist/dialog-lifecycle.d.ts.map +1 -0
  76. package/dist/dialog-lifecycle.js +70 -0
  77. package/dist/expanded-charts.d.ts +26 -0
  78. package/dist/expanded-charts.d.ts.map +1 -0
  79. package/dist/expanded-charts.js +46 -0
  80. package/dist/floating-panel.d.ts +11 -0
  81. package/dist/floating-panel.d.ts.map +1 -0
  82. package/dist/floating-panel.js +1 -0
  83. package/dist/form-workflow.d.ts +77 -0
  84. package/dist/form-workflow.d.ts.map +1 -0
  85. package/dist/form-workflow.js +337 -0
  86. package/dist/hooks.d.ts +24 -21
  87. package/dist/hooks.d.ts.map +1 -1
  88. package/dist/hooks.js +1 -2468
  89. package/dist/image-comparison.d.ts +20 -0
  90. package/dist/image-comparison.d.ts.map +1 -0
  91. package/dist/image-comparison.js +55 -0
  92. package/dist/index.d.ts +25 -1
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +24 -0
  95. package/dist/interval-charts.d.ts +21 -0
  96. package/dist/interval-charts.d.ts.map +1 -0
  97. package/dist/interval-charts.js +23 -0
  98. package/dist/media-selection.d.ts +18 -0
  99. package/dist/media-selection.d.ts.map +1 -0
  100. package/dist/media-selection.js +12 -0
  101. package/dist/media-viewport.d.ts +16 -0
  102. package/dist/media-viewport.d.ts.map +1 -0
  103. package/dist/media-viewport.js +37 -0
  104. package/dist/motion.d.ts +597 -0
  105. package/dist/motion.d.ts.map +1 -0
  106. package/dist/motion.js +22 -0
  107. package/dist/review-workflow.d.ts +32 -0
  108. package/dist/review-workflow.d.ts.map +1 -0
  109. package/dist/review-workflow.js +76 -0
  110. package/dist/rich-text-editor.d.ts +21 -0
  111. package/dist/rich-text-editor.d.ts.map +1 -0
  112. package/dist/rich-text-editor.js +143 -0
  113. package/dist/select-form.d.ts +3 -0
  114. package/dist/select-form.d.ts.map +1 -0
  115. package/dist/select-form.js +1 -0
  116. package/dist/server-components.d.ts +24 -4
  117. package/dist/server-components.d.ts.map +1 -1
  118. package/dist/server-components.js +11 -3
  119. package/dist/server.d.ts +1 -0
  120. package/dist/server.d.ts.map +1 -1
  121. package/dist/server.js +1 -0
  122. package/dist/toast-context.d.ts +4 -0
  123. package/dist/toast-context.d.ts.map +1 -0
  124. package/dist/toast-context.js +10 -0
  125. package/dist/toast-provider.d.ts +3 -0
  126. package/dist/toast-provider.d.ts.map +1 -0
  127. package/dist/toast-provider.js +3 -0
  128. package/dist/use-copy-feedback.d.ts +17 -0
  129. package/dist/use-copy-feedback.d.ts.map +1 -0
  130. package/dist/use-copy-feedback.js +54 -0
  131. package/dist/virtual-list-data.d.ts +13 -0
  132. package/dist/virtual-list-data.d.ts.map +1 -0
  133. package/dist/virtual-list-data.js +87 -0
  134. package/dist/virtual-list.d.ts +14 -0
  135. package/dist/virtual-list.d.ts.map +1 -0
  136. package/dist/virtual-list.js +24 -0
  137. package/dist/visual-interactions.d.ts +16 -0
  138. package/dist/visual-interactions.d.ts.map +1 -0
  139. package/dist/visual-interactions.js +30 -0
  140. package/dist/world-map.d.ts +26 -0
  141. package/dist/world-map.d.ts.map +1 -0
  142. package/dist/world-map.js +81 -0
  143. package/package.json +99 -11
  144. package/styles/critical.css +634 -61
  145. package/styles/data-table-view.css +36 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-workflow.d.ts","sourceRoot":"","sources":["../src/form-workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,337 @@
1
+ 'use client';
2
+ import { useCallback, useEffect, useId, useRef, useState } from 'react';
3
+ export const isLumenFormControl = (element) => {
4
+ try {
5
+ return 'namespaceURI' in element && element.namespaceURI === 'http://www.w3.org/1999/xhtml' &&
6
+ Element.prototype.matches.call(element, 'input, select, textarea');
7
+ }
8
+ catch {
9
+ return false;
10
+ }
11
+ };
12
+ const controlsOf = (form) => Array.from(form.elements).filter(isLumenFormControl);
13
+ const fingerprintInput = (control) => {
14
+ if (['submit', 'button', 'reset'].includes(control.type))
15
+ return [];
16
+ if (control.type === 'file') {
17
+ return [control.name, Array.from(control.files ?? [], file => [file.name, file.size, file.lastModified])];
18
+ }
19
+ if (['checkbox', 'radio'].includes(control.type))
20
+ return [control.name, control.value, control.checked];
21
+ return [control.name, control.value];
22
+ };
23
+ const isInputControl = (control) => control.localName === 'input';
24
+ const isSelectControl = (control) => control.localName === 'select';
25
+ const fingerprintControl = (control) => {
26
+ if (isInputControl(control))
27
+ return fingerprintInput(control);
28
+ if (isSelectControl(control) && control.multiple) {
29
+ return [control.name, Array.from(control.selectedOptions, option => option.value)];
30
+ }
31
+ return [control.name, control.value];
32
+ };
33
+ /** An in-memory comparison only. Applications must never log or persist this snapshot. */
34
+ const fingerprint = (form) => JSON.stringify(controlsOf(form).map(fingerprintControl));
35
+ const nativeMessage = (control) => control.validity.valid ? '' : control.validationMessage;
36
+ const defaultControlName = (control) => control.name || control.id;
37
+ const ensureControlId = (control) => {
38
+ if (!control.id)
39
+ control.id = `lumen-field-${crypto.randomUUID()}`;
40
+ };
41
+ const appendValueIssues = (controls, issues, additional, getName) => {
42
+ for (const issue of additional) {
43
+ const control = controls.find(item => item.id === issue.controlId || getName(item) === issue.name);
44
+ if (!control)
45
+ continue;
46
+ if (issues.some(item => item.controlId === control.id))
47
+ continue;
48
+ issues.push({ ...issue, controlId: control.id });
49
+ }
50
+ };
51
+ const controlLabel = (control, fallback) => {
52
+ const label = control.labels?.[0];
53
+ if (label?.textContent)
54
+ return label.textContent.trim();
55
+ return control.getAttribute('aria-label') || fallback;
56
+ };
57
+ const collectIssues = (form, options) => {
58
+ const controls = controlsOf(form).filter(control => control.willValidate);
59
+ const getName = options.getControlName ?? defaultControlName;
60
+ const getMessage = options.validateControl ?? nativeMessage;
61
+ const issues = [];
62
+ for (const control of controls) {
63
+ ensureControlId(control);
64
+ const message = getMessage(control);
65
+ if (message)
66
+ issues.push({
67
+ name: getName(control),
68
+ controlId: control.id,
69
+ message,
70
+ label: controlLabel(control, getName(control))
71
+ });
72
+ }
73
+ appendValueIssues(controls, issues, options.validateValues?.(form) ?? [], getName);
74
+ return issues;
75
+ };
76
+ /** Validation and edit state; schemas, requests, draft storage and business policy remain application-owned. */
77
+ export const useLumenFormWorkflow = ({ getControlName = defaultControlName, validateControl, validateValues, dependencies = {} } = {}) => {
78
+ const formRef = useRef(null);
79
+ const baselineRef = useRef(null);
80
+ const mountedRef = useRef(false);
81
+ const handledEventsRef = useRef(new WeakSet());
82
+ const attemptedRef = useRef(false);
83
+ const touchedRef = useRef(new Set());
84
+ const [errors, setErrors] = useState([]);
85
+ const [dirty, setDirty] = useState(false);
86
+ const [attempted, setAttempted] = useState(false);
87
+ useEffect(() => {
88
+ mountedRef.current = true;
89
+ if (formRef.current && baselineRef.current === null)
90
+ baselineRef.current = fingerprint(formRef.current);
91
+ return () => {
92
+ mountedRef.current = false;
93
+ };
94
+ }, []);
95
+ const collect = useCallback((form) => collectIssues(form, {
96
+ getControlName,
97
+ ...(validateControl ? { validateControl } : {}),
98
+ ...(validateValues ? { validateValues } : {})
99
+ }), [getControlName, validateControl, validateValues]);
100
+ const validate = useCallback((form = formRef.current, names) => {
101
+ if (!form)
102
+ return false;
103
+ const all = collect(form);
104
+ if (!names) {
105
+ attemptedRef.current = true;
106
+ setAttempted(true);
107
+ setErrors(all);
108
+ }
109
+ else {
110
+ for (const name of names)
111
+ touchedRef.current.add(name);
112
+ setErrors(previous => {
113
+ const visible = new Set([...previous.map(issue => issue.name), ...names]);
114
+ return all.filter(issue => visible.has(issue.name));
115
+ });
116
+ }
117
+ const invalid = names ? all.filter(issue => names.includes(issue.name)) : all;
118
+ const first = invalid[0];
119
+ if (!names && first)
120
+ controlsOf(form).find(control => control.id === first.controlId)?.focus();
121
+ return invalid.length === 0;
122
+ }, [collect]);
123
+ const refresh = useCallback((form = formRef.current, changedName) => {
124
+ if (!form || !mountedRef.current)
125
+ return;
126
+ baselineRef.current ??= fingerprint(form);
127
+ setDirty(fingerprint(form) !== baselineRef.current);
128
+ const names = new Set(touchedRef.current);
129
+ if (changedName && Object.hasOwn(dependencies, changedName)) {
130
+ for (const name of dependencies[changedName] ?? [])
131
+ names.add(name);
132
+ }
133
+ const all = collect(form);
134
+ setErrors(all.filter(issue => attemptedRef.current || names.has(issue.name)));
135
+ }, [collect, dependencies]);
136
+ useEffect(() => {
137
+ const form = formRef.current;
138
+ if (!form)
139
+ return;
140
+ const owner = form.ownerDocument;
141
+ const externalControl = (event) => {
142
+ const target = event.target;
143
+ return target && isLumenFormControl(target) && target.form === form && !form.contains(target) ? target : undefined;
144
+ };
145
+ const updateExternal = (event) => {
146
+ const control = externalControl(event);
147
+ if (!control)
148
+ return;
149
+ const name = getControlName(control);
150
+ queueMicrotask(() => {
151
+ if (!handledEventsRef.current.has(event))
152
+ refresh(form, name);
153
+ });
154
+ };
155
+ const blurExternal = (event) => {
156
+ const control = externalControl(event);
157
+ if (!control)
158
+ return;
159
+ queueMicrotask(() => {
160
+ if (handledEventsRef.current.has(event) || !mountedRef.current)
161
+ return;
162
+ ensureControlId(control);
163
+ validate(form, [getControlName(control)]);
164
+ });
165
+ };
166
+ owner.addEventListener('input', updateExternal);
167
+ owner.addEventListener('change', updateExternal);
168
+ owner.addEventListener('focusout', blurExternal);
169
+ return () => {
170
+ owner.removeEventListener('input', updateExternal);
171
+ owner.removeEventListener('change', updateExternal);
172
+ owner.removeEventListener('focusout', blurExternal);
173
+ };
174
+ });
175
+ const markSaved = useCallback(() => {
176
+ if (formRef.current)
177
+ baselineRef.current = fingerprint(formRef.current);
178
+ setDirty(false);
179
+ setErrors([]);
180
+ setAttempted(false);
181
+ attemptedRef.current = false;
182
+ touchedRef.current.clear();
183
+ }, []);
184
+ const update = (event) => {
185
+ if (handledEventsRef.current.has(event.nativeEvent))
186
+ return;
187
+ handledEventsRef.current.add(event.nativeEvent);
188
+ const form = event.currentTarget;
189
+ if (isLumenFormControl(event.target) && event.target.form !== form)
190
+ return;
191
+ const name = isLumenFormControl(event.target) ? getControlName(event.target) : undefined;
192
+ queueMicrotask(() => {
193
+ refresh(form, name);
194
+ });
195
+ };
196
+ return {
197
+ formRef,
198
+ errors,
199
+ dirty,
200
+ attempted,
201
+ validate,
202
+ refresh,
203
+ setErrors,
204
+ markSaved,
205
+ formProps: {
206
+ ref: formRef,
207
+ noValidate: true,
208
+ onInput: update,
209
+ onChange: update,
210
+ onBlur: event => {
211
+ handledEventsRef.current.add(event.nativeEvent);
212
+ if (isLumenFormControl(event.target) && event.target.form === event.currentTarget) {
213
+ ensureControlId(event.target);
214
+ validate(event.currentTarget, [getControlName(event.target)]);
215
+ }
216
+ },
217
+ onReset: event => {
218
+ const form = event.currentTarget;
219
+ // A native reset button can checkpoint microtasks before restoring controls.
220
+ // A later task observes the completed default action and final cancellation.
221
+ setTimeout(() => {
222
+ if (event.defaultPrevented || event.nativeEvent.defaultPrevented ||
223
+ !mountedRef.current || formRef.current !== form)
224
+ return;
225
+ setErrors([]);
226
+ setAttempted(false);
227
+ attemptedRef.current = false;
228
+ touchedRef.current.clear();
229
+ // A reset restores defaults, not necessarily the last saved values.
230
+ refresh(form);
231
+ }, 0);
232
+ }
233
+ }
234
+ };
235
+ };
236
+ /** Stable row identity survives insertions, removals and reordering. */
237
+ export const useLumenFieldArray = (initialValues = []) => {
238
+ const prefixId = useId();
239
+ const [items, setItems] = useState(() => initialValues.map((value, index) => ({ id: `${prefixId}-${index}`, value })));
240
+ const append = (value) => {
241
+ const id = crypto.randomUUID();
242
+ setItems(previous => [...previous, { id, value }]);
243
+ return id;
244
+ };
245
+ const remove = (id) => {
246
+ setItems(previous => previous.filter(item => item.id !== id));
247
+ };
248
+ const update = (id, value) => {
249
+ setItems(previous => previous.map(item => item.id === id ? { ...item, value } : item));
250
+ };
251
+ const move = (id, offset) => {
252
+ if (!Number.isInteger(offset))
253
+ return;
254
+ setItems(previous => {
255
+ const index = previous.findIndex(item => item.id === id);
256
+ const target = index + offset;
257
+ if (index < 0 || target < 0 || target >= previous.length)
258
+ return previous;
259
+ const item = previous[index];
260
+ if (!item)
261
+ return previous;
262
+ const next = [...previous];
263
+ next.splice(index, 1);
264
+ next.splice(target, 0, item);
265
+ return next;
266
+ });
267
+ };
268
+ return { items, append, remove, update, move };
269
+ };
270
+ /** A failed or superseded check cannot replace the newest result. */
271
+ export const useLumenAsyncCheck = (check) => {
272
+ const controllerRef = useRef(null);
273
+ const [state, setState] = useState({ status: 'idle' });
274
+ useEffect(() => () => {
275
+ controllerRef.current?.abort();
276
+ }, []);
277
+ const cancel = useCallback(() => {
278
+ controllerRef.current?.abort();
279
+ controllerRef.current = null;
280
+ setState({ status: 'idle' });
281
+ }, []);
282
+ const run = useCallback(async (value) => {
283
+ controllerRef.current?.abort();
284
+ const request = new AbortController();
285
+ controllerRef.current = request;
286
+ setState({ status: 'pending' });
287
+ try {
288
+ const result = await check(value, request.signal);
289
+ if (request.signal.aborted || controllerRef.current !== request)
290
+ return undefined;
291
+ setState({ status: 'success', result });
292
+ return result;
293
+ }
294
+ catch (error) {
295
+ if (!request.signal.aborted && controllerRef.current === request)
296
+ setState({ status: 'error', error });
297
+ return undefined;
298
+ }
299
+ }, [check]);
300
+ return { state, run, cancel };
301
+ };
302
+ /** Steps remain application-defined and validate before advancing. */
303
+ export const useLumenFormSteps = (steps, validate) => {
304
+ const [activeId, setActiveId] = useState(steps[0]?.id ?? '');
305
+ const index = Math.max(0, steps.findIndex(step => step.id === activeId));
306
+ const goTo = (id) => {
307
+ const target = steps.findIndex(step => step.id === id);
308
+ if (target < 0)
309
+ return false;
310
+ if (target > index && !validate(steps.slice(0, target).flatMap(step => [...step.fields])))
311
+ return false;
312
+ setActiveId(id);
313
+ return true;
314
+ };
315
+ return {
316
+ activeId: steps[index]?.id ?? '',
317
+ index,
318
+ goTo,
319
+ next: () => goTo(steps[index + 1]?.id ?? ''),
320
+ previous: () => goTo(steps[index - 1]?.id ?? '')
321
+ };
322
+ };
323
+ /** Prompt on reload/close; application routers and dialogs should use the same dirty state. */
324
+ export const useLumenBeforeUnload = (dirty) => {
325
+ useEffect(() => {
326
+ if (!dirty)
327
+ return;
328
+ const listener = (event) => {
329
+ event.preventDefault();
330
+ };
331
+ window.addEventListener('beforeunload', listener);
332
+ return () => {
333
+ window.removeEventListener('beforeunload', listener);
334
+ };
335
+ }, [dirty]);
336
+ };
337
+ export { useLumenReviewWorkflow } from './review-workflow.js';
package/dist/hooks.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import { type ComponentPropsWithRef, type CSSProperties, type Dispatch, type JSX, type MouseEvent, type ReactNode, type Ref, type RefObject, type SetStateAction } from 'react';
2
- import { type LumenKanbanMoveDetail, type LumenLocaleOption, type LumenRichTextChangeDetail, type LumenRichTextCommandDetail as CoreRichTextCommandDetail, type LumenThemeBuilderExportFormat, type LumenThemeBuilderMode, type LumenThemeBuilderResult, type LumenThemeBuilderScheme, type LumenThemeTokens } from '@santi020k/lumen-core';
2
+ import { type LumenKanbanMoveDetail, type LumenLocaleOption, type LumenThemeBuilderExportFormat, type LumenThemeBuilderMode, type LumenThemeBuilderResult, type LumenThemeBuilderScheme, type LumenThemePreset, type LumenThemeTokens } from '@santi020k/lumen-core';
3
+ import { type FloatingPanelOptions } from './floating-panel.js';
4
+ export { useToast } from './toast-context.js';
3
5
  type ChangeHandler<T> = (value: T) => void;
4
6
  type ToastVariant = 'default' | 'destructive' | 'success' | 'warning';
5
7
  type DataAttributes = Record<`data-${string}`, unknown>;
@@ -55,6 +57,8 @@ interface DisclosureController {
55
57
  }
56
58
  export interface DialogOptions extends DisclosureOptions {
57
59
  alert?: boolean | undefined;
60
+ dismissOnEscape?: boolean | undefined;
61
+ dismissOnOutsidePress?: boolean | undefined;
58
62
  }
59
63
  export interface DialogController {
60
64
  close: () => void;
@@ -66,9 +70,9 @@ export interface DialogController {
66
70
  triggerProps: LumenProps<'button'>;
67
71
  triggerRef: RefObject<HTMLElement | null>;
68
72
  }
69
- export type PopoverOptions = DisclosureOptions;
73
+ export type PopoverOptions = DisclosureOptions & FloatingPanelOptions;
70
74
  export type PopoverController = DisclosureController;
71
- export type DropdownMenuOptions = DisclosureOptions;
75
+ export type DropdownMenuOptions = DisclosureOptions & FloatingPanelOptions;
72
76
  export type DropdownMenuController = DisclosureController;
73
77
  export interface LanguageToggleOptions {
74
78
  defaultValue?: string | undefined;
@@ -222,12 +226,17 @@ export interface CalendarDay {
222
226
  export interface CalendarOptions {
223
227
  defaultValue?: string | undefined;
224
228
  disabled?: boolean | undefined;
229
+ labels?: {
230
+ previousMonth?: string;
231
+ nextMonth?: string;
232
+ } | undefined;
225
233
  locale?: string | undefined;
226
234
  max?: string | undefined;
227
235
  min?: string | undefined;
228
236
  month?: string | undefined;
229
237
  name?: string | undefined;
230
238
  onValueChange?: ChangeHandler<string> | undefined;
239
+ readOnly?: boolean | undefined;
231
240
  value?: string | undefined;
232
241
  }
233
242
  export interface CalendarController {
@@ -263,18 +272,8 @@ export interface DateRangePickerController {
263
272
  startRef: RefObject<HTMLInputElement | null>;
264
273
  syncRange: (root?: HTMLElement | null) => DateRangePickerChangeDetail;
265
274
  }
266
- export type RichTextEditorCommandDetail = CoreRichTextCommandDetail;
267
- export interface RichTextEditorOptions {
268
- onChange?: ChangeHandler<LumenRichTextChangeDetail> | undefined;
269
- onCommand?: ChangeHandler<RichTextEditorCommandDetail> | undefined;
270
- }
271
- export interface RichTextEditorController {
272
- executeCommand: (command: string, root?: HTMLElement | null, value?: string) => boolean;
273
- getCommandProps: (command: string, props?: LumenProps<'button'>) => LumenProps<'button'>;
274
- getEditableProps: (props?: ComponentPropsWithRef<'div'>) => LumenProps<'div'>;
275
- rootProps: LumenProps<'section'>;
276
- rootRef: RefObject<HTMLElement | null>;
277
- }
275
+ export type { RichTextEditorCommandDetail, RichTextEditorController, RichTextEditorOptions } from './rich-text-editor.js';
276
+ export { useRichTextEditor } from './rich-text-editor.js';
278
277
  export interface ScheduleChangeDetail {
279
278
  eventId?: string;
280
279
  slot?: string;
@@ -330,6 +329,12 @@ export interface ThemeBuilderExportDetail {
330
329
  value: string;
331
330
  }
332
331
  export interface ThemeBuilderOptions {
332
+ radiusScale?: number | undefined;
333
+ spacingScale?: number | undefined;
334
+ borderWidth?: number | undefined;
335
+ preset?: LumenThemePreset | undefined;
336
+ defaultPreset?: LumenThemePreset | undefined;
337
+ onPresetChange?: ChangeHandler<LumenThemePreset | undefined> | undefined;
333
338
  accentHue?: number | undefined;
334
339
  defaultAccentHue?: number | undefined;
335
340
  defaultExportFormat?: LumenThemeBuilderExportFormat | undefined;
@@ -355,6 +360,8 @@ export interface ThemeBuilderOptions {
355
360
  secondaryColor?: string | undefined;
356
361
  }
357
362
  export interface ThemeBuilderController extends ThemeBuilderChangeDetail {
363
+ setPreset: Dispatch<SetStateAction<LumenThemePreset | undefined>>;
364
+ getPresetProps: (preset: LumenThemePreset, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
358
365
  accentHueProps: LumenProps<'input'>;
359
366
  copyExport: () => Promise<string>;
360
367
  exportButtonProps: LumenProps<'button'>;
@@ -385,21 +392,17 @@ export declare const useContextMenu: ({ defaultOpen, id, onOpenChange, open: con
385
392
  export declare const useTabs: ({ defaultValue, id, onValueChange, orientation, value }?: TabsOptions) => TabsController;
386
393
  export declare const useSelect: ({ defaultValue, disabled, id, name, onValueChange, options, placeholder, required, value }?: SelectOptions) => SelectController;
387
394
  export declare const useFormValidation: ({ onInvalid, onValid, onValidate }?: FormValidationOptions) => FormValidationController;
388
- export declare const useCalendar: ({ defaultValue, disabled, locale, max, min, month, name, onValueChange, value: controlledValue }?: CalendarOptions) => CalendarController;
395
+ export declare const useCalendar: ({ defaultValue, disabled: requestedDisabled, labels, locale, max, min, month, name, onValueChange, readOnly, value: controlledValue }?: CalendarOptions) => CalendarController;
389
396
  export declare const useInputOTP: ({ defaultValue, disabled, inputMode, inputRef: forwardedInputRef, invalid, length: lengthOption, onValueChange, pattern, value: controlledValue }?: InputOTPOptions) => InputOTPController;
390
397
  export declare const useDateRangePicker: ({ onRangeChange }?: DateRangePickerOptions) => DateRangePickerController;
391
- export declare const useRichTextEditor: ({ onChange, onCommand }?: RichTextEditorOptions) => RichTextEditorController;
392
398
  export declare const useSchedule: ({ onChange }?: ScheduleOptions) => ScheduleController;
393
399
  export declare const useKanban: ({ onMoveRequest }?: KanbanOptions) => KanbanController;
394
400
  export declare const useResizable: ({ defaultSizes, direction, maxSize, minSize, onSizesChange, panelCount: panelCountOption, resetOnDoubleClick }?: ResizableOptions) => ResizableController;
395
- export declare const useThemeBuilder: ({ accentHue, defaultAccentHue, defaultExportFormat, defaultHue, defaultMode, defaultPrimaryColor, defaultScheme, defaultSecondaryColor, exportFormat, hue, mode, onAccentHueChange, onExportFormatChange, onHueChange, onModeChange, onPrimaryColorChange, onSchemeChange, onSecondaryColorChange, onThemeChange, onThemeExport, primaryColor, scheme, secondaryColor }?: ThemeBuilderOptions) => ThemeBuilderController;
401
+ export declare const useThemeBuilder: ({ radiusScale, spacingScale, borderWidth, preset, defaultPreset, onPresetChange, accentHue, defaultAccentHue, defaultExportFormat, defaultHue, defaultMode, defaultPrimaryColor, defaultScheme, defaultSecondaryColor, exportFormat, hue, mode, onAccentHueChange, onExportFormatChange, onHueChange, onModeChange, onPrimaryColorChange, onSchemeChange, onSecondaryColorChange, onThemeChange, onThemeExport, primaryColor, scheme, secondaryColor }?: ThemeBuilderOptions) => ThemeBuilderController;
396
402
  export declare const useTooltip: ({ defaultOpen, delay, id, onOpenChange, open }?: TooltipOptions) => TooltipController;
397
- export declare const ToastProvider: ({ children, maxCount, placement }: ToastProviderProps) => JSX.Element;
398
- export declare const useToast: () => ToastApi;
399
403
  export declare const useThemeToggle: (defaultTheme?: string) => {
400
404
  theme: string;
401
405
  toggleTheme: (event?: React.MouseEvent<HTMLButtonElement>) => void;
402
406
  setTheme: Dispatch<SetStateAction<string>>;
403
407
  };
404
- export {};
405
408
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.tsx"],"names":[],"mappings":"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"}