@santi020k/lumen-react 0.1.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.
@@ -0,0 +1,378 @@
1
+ import { type LumenRichTextChangeDetail, type LumenRichTextCommandDetail as CoreRichTextCommandDetail, type LumenThemeBuilderExportFormat, type LumenThemeBuilderMode, type LumenThemeBuilderResult, type LumenThemeBuilderScheme, type LumenThemeTokens } from '@santi020k/lumen-core';
2
+ import { type ComponentPropsWithRef, type CSSProperties, type Dispatch, type JSX, type MouseEvent, type ReactNode, type RefObject, type SetStateAction } from 'react';
3
+ type ChangeHandler<T> = (value: T) => void;
4
+ type ToastVariant = 'default' | 'destructive' | 'success' | 'warning';
5
+ type DataAttributes = Record<`data-${string}`, unknown>;
6
+ type LumenProps<Tag extends keyof JSX.IntrinsicElements> = ComponentPropsWithRef<Tag> & DataAttributes;
7
+ type InputMode = NonNullable<ComponentPropsWithRef<'input'>['inputMode']>;
8
+ export type ToastPlacement = 'bottom-center' | 'bottom-left' | 'bottom-right' | 'top-center' | 'top-left' | 'top-right';
9
+ export interface ToastAction {
10
+ event?: string;
11
+ label?: string;
12
+ onClick?: (event: MouseEvent<HTMLButtonElement>, toast: HTMLElement | null) => void;
13
+ value?: unknown;
14
+ }
15
+ export interface ToastDetail {
16
+ action?: ToastAction;
17
+ description?: string;
18
+ duration?: number;
19
+ id?: string;
20
+ max?: number;
21
+ placement?: ToastPlacement;
22
+ title?: string;
23
+ variant?: ToastVariant;
24
+ }
25
+ export interface ToastRecord extends ToastDetail {
26
+ id: string;
27
+ open: boolean;
28
+ placement: ToastPlacement;
29
+ title: string;
30
+ variant: ToastVariant;
31
+ }
32
+ export interface ToastApi {
33
+ create: (detail: ToastDetail) => string;
34
+ dismiss: (id?: string) => void;
35
+ toasts: ToastRecord[];
36
+ update: (id: string, detail: ToastDetail) => void;
37
+ }
38
+ interface DisclosureOptions {
39
+ defaultOpen?: boolean | undefined;
40
+ id?: string | undefined;
41
+ onOpenChange?: ChangeHandler<boolean> | undefined;
42
+ open?: boolean | undefined;
43
+ }
44
+ interface DisclosureController {
45
+ close: () => void;
46
+ open: boolean;
47
+ panelProps: LumenProps<'div'>;
48
+ panelRef: RefObject<HTMLElement | null>;
49
+ rootProps: LumenProps<'div'>;
50
+ rootRef: RefObject<HTMLElement | null>;
51
+ setOpen: Dispatch<SetStateAction<boolean>>;
52
+ toggle: () => void;
53
+ triggerProps: LumenProps<'button'>;
54
+ triggerRef: RefObject<HTMLElement | null>;
55
+ }
56
+ export interface DialogOptions extends DisclosureOptions {
57
+ alert?: boolean | undefined;
58
+ }
59
+ export interface DialogController {
60
+ close: () => void;
61
+ closeProps: LumenProps<'button'>;
62
+ dialogProps: LumenProps<'dialog'>;
63
+ dialogRef: RefObject<HTMLDialogElement | null>;
64
+ open: boolean;
65
+ setOpen: Dispatch<SetStateAction<boolean>>;
66
+ triggerProps: LumenProps<'button'>;
67
+ triggerRef: RefObject<HTMLElement | null>;
68
+ }
69
+ export type PopoverOptions = DisclosureOptions;
70
+ export type PopoverController = DisclosureController;
71
+ export type DropdownMenuOptions = DisclosureOptions;
72
+ export type DropdownMenuController = DisclosureController;
73
+ export type ContextMenuOptions = DisclosureOptions;
74
+ export interface ContextMenuController {
75
+ close: () => void;
76
+ menuProps: LumenProps<'menu'>;
77
+ menuRef: RefObject<HTMLElement | null>;
78
+ open: boolean;
79
+ openAt: (x: number, y: number) => void;
80
+ setOpen: Dispatch<SetStateAction<boolean>>;
81
+ triggerProps: LumenProps<'button'>;
82
+ triggerRef: RefObject<HTMLElement | null>;
83
+ }
84
+ export interface TabsOptions {
85
+ defaultValue?: string | undefined;
86
+ id?: string | undefined;
87
+ onValueChange?: ChangeHandler<string> | undefined;
88
+ orientation?: 'horizontal' | 'vertical' | undefined;
89
+ value?: string | undefined;
90
+ }
91
+ export interface TabsController {
92
+ getPanelProps: (value: string, props?: ComponentPropsWithRef<'div'>) => LumenProps<'div'>;
93
+ getTriggerProps: (value: string, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
94
+ listProps: LumenProps<'div'>;
95
+ rootProps: LumenProps<'div'>;
96
+ rootRef: RefObject<HTMLElement | null>;
97
+ setValue: Dispatch<SetStateAction<string>>;
98
+ value: string;
99
+ }
100
+ export interface SelectOption {
101
+ disabled?: boolean;
102
+ label: string;
103
+ value: string;
104
+ }
105
+ type SelectOptionInput = SelectOption | string;
106
+ export interface SelectOptions {
107
+ defaultValue?: string | undefined;
108
+ disabled?: boolean | undefined;
109
+ id?: string | undefined;
110
+ name?: string | undefined;
111
+ onValueChange?: ChangeHandler<string> | undefined;
112
+ options?: SelectOptionInput[] | undefined;
113
+ placeholder?: string | undefined;
114
+ required?: boolean | undefined;
115
+ value?: string | undefined;
116
+ }
117
+ export interface SelectController {
118
+ close: () => void;
119
+ controlProps: LumenProps<'div'>;
120
+ getOptionProps: (option: SelectOption, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
121
+ listProps: LumenProps<'div'>;
122
+ nativeSelectProps: LumenProps<'select'>;
123
+ open: boolean;
124
+ options: SelectOption[];
125
+ rootProps: LumenProps<'div'>;
126
+ rootRef: RefObject<HTMLElement | null>;
127
+ selectOption: (value: string) => void;
128
+ selectedOption: SelectOption | undefined;
129
+ setOpen: Dispatch<SetStateAction<boolean>>;
130
+ triggerProps: LumenProps<'button'>;
131
+ triggerText: string;
132
+ value: string;
133
+ }
134
+ export interface TooltipOptions extends DisclosureOptions {
135
+ delay?: number | undefined;
136
+ }
137
+ export interface TooltipController {
138
+ close: () => void;
139
+ open: boolean;
140
+ rootProps: LumenProps<'span'>;
141
+ setOpen: Dispatch<SetStateAction<boolean>>;
142
+ tooltipProps: LumenProps<'span'>;
143
+ }
144
+ export interface ToastProviderProps {
145
+ children?: ReactNode;
146
+ maxCount?: number;
147
+ placement?: ToastPlacement;
148
+ }
149
+ type NativeFormControl = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
150
+ export interface FormValidationValidateDetail {
151
+ control: NativeFormControl;
152
+ form: HTMLFormElement;
153
+ value: string;
154
+ }
155
+ export interface FormValidationStateDetail {
156
+ control?: NativeFormControl;
157
+ controls?: NativeFormControl[];
158
+ form: HTMLFormElement;
159
+ }
160
+ export interface FormValidationOptions {
161
+ onInvalid?: ChangeHandler<FormValidationStateDetail> | undefined;
162
+ onValid?: ChangeHandler<FormValidationStateDetail> | undefined;
163
+ onValidate?: ChangeHandler<FormValidationValidateDetail> | undefined;
164
+ }
165
+ export interface FormValidationController {
166
+ formProps: LumenProps<'form'>;
167
+ formRef: RefObject<HTMLFormElement | null>;
168
+ getControls: (form?: HTMLFormElement | null) => NativeFormControl[];
169
+ setFieldValidity: (control: NativeFormControl, invalid: boolean, message?: string) => void;
170
+ validateControl: (control: NativeFormControl, form?: HTMLFormElement | null) => boolean;
171
+ validateForm: (form?: HTMLFormElement | null) => NativeFormControl[];
172
+ }
173
+ export interface InputOTPOptions {
174
+ defaultValue?: string | undefined;
175
+ disabled?: boolean | undefined;
176
+ inputMode?: InputMode | undefined;
177
+ invalid?: boolean | undefined;
178
+ length?: number | undefined;
179
+ onValueChange?: ChangeHandler<string> | undefined;
180
+ pattern?: string | undefined;
181
+ value?: string | undefined;
182
+ }
183
+ export interface InputOTPController {
184
+ activeIndex: number;
185
+ getInputProps: (props?: ComponentPropsWithRef<'input'>) => LumenProps<'input'>;
186
+ getSegmentChar: (index: number) => string;
187
+ getSegmentProps: (index: number, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
188
+ inputRef: RefObject<HTMLInputElement | null>;
189
+ rootProps: LumenProps<'div'>;
190
+ rootRef: RefObject<HTMLDivElement | null>;
191
+ segmentIndexes: number[];
192
+ segmentsProps: LumenProps<'div'>;
193
+ setSelection: (index: number) => void;
194
+ setValue: (value: string) => string;
195
+ syncValue: (input?: HTMLInputElement | null) => string;
196
+ value: string;
197
+ }
198
+ export interface CalendarDay {
199
+ date: string;
200
+ day: number;
201
+ disabled: boolean;
202
+ label: string;
203
+ outside: boolean;
204
+ selected: boolean;
205
+ tabIndex: 0 | -1;
206
+ today: boolean;
207
+ }
208
+ export interface CalendarOptions {
209
+ defaultValue?: string | undefined;
210
+ disabled?: boolean | undefined;
211
+ locale?: string | undefined;
212
+ max?: string | undefined;
213
+ min?: string | undefined;
214
+ month?: string | undefined;
215
+ name?: string | undefined;
216
+ onValueChange?: ChangeHandler<string> | undefined;
217
+ value?: string | undefined;
218
+ }
219
+ export interface CalendarController {
220
+ focusDate: (date: string | Date) => void;
221
+ getDayProps: (day: CalendarDay, props?: ComponentPropsWithRef<'td'>) => LumenProps<'td'>;
222
+ gridProps: LumenProps<'table'>;
223
+ inputProps: LumenProps<'input'>;
224
+ label: string;
225
+ labelProps: LumenProps<'strong'>;
226
+ month: string;
227
+ nextProps: LumenProps<'button'>;
228
+ previousProps: LumenProps<'button'>;
229
+ rootProps: LumenProps<'div'>;
230
+ rootRef: RefObject<HTMLDivElement | null>;
231
+ selectDate: (date: string | Date) => void;
232
+ value: string;
233
+ weekdays: string[];
234
+ weeks: CalendarDay[][];
235
+ }
236
+ export interface DateRangePickerChangeDetail {
237
+ end?: string;
238
+ start?: string;
239
+ }
240
+ export interface DateRangePickerOptions {
241
+ onRangeChange?: ChangeHandler<DateRangePickerChangeDetail> | undefined;
242
+ }
243
+ export interface DateRangePickerController {
244
+ endRef: RefObject<HTMLInputElement | null>;
245
+ getEndProps: (props?: ComponentPropsWithRef<'input'>) => LumenProps<'input'>;
246
+ getStartProps: (props?: ComponentPropsWithRef<'input'>) => LumenProps<'input'>;
247
+ rootProps: LumenProps<'div'>;
248
+ rootRef: RefObject<HTMLDivElement | null>;
249
+ startRef: RefObject<HTMLInputElement | null>;
250
+ syncRange: (root?: HTMLElement | null) => DateRangePickerChangeDetail;
251
+ }
252
+ export type RichTextEditorCommandDetail = CoreRichTextCommandDetail;
253
+ export interface RichTextEditorOptions {
254
+ onChange?: ChangeHandler<LumenRichTextChangeDetail> | undefined;
255
+ onCommand?: ChangeHandler<RichTextEditorCommandDetail> | undefined;
256
+ }
257
+ export interface RichTextEditorController {
258
+ executeCommand: (command: string, root?: HTMLElement | null, value?: string) => boolean;
259
+ getCommandProps: (command: string, props?: LumenProps<'button'>) => LumenProps<'button'>;
260
+ getEditableProps: (props?: ComponentPropsWithRef<'div'>) => LumenProps<'div'>;
261
+ rootProps: LumenProps<'section'>;
262
+ rootRef: RefObject<HTMLElement | null>;
263
+ }
264
+ export interface ScheduleChangeDetail {
265
+ eventId?: string;
266
+ slot?: string;
267
+ }
268
+ export interface ScheduleOptions {
269
+ onChange?: ChangeHandler<ScheduleChangeDetail> | undefined;
270
+ }
271
+ export interface ScheduleController {
272
+ emitChange: (detail: ScheduleChangeDetail, root?: HTMLElement | null) => void;
273
+ getEventProps: (eventId?: string, props?: ComponentPropsWithRef<'article'>) => LumenProps<'article'>;
274
+ getSlotProps: (slot: string, props?: ComponentPropsWithRef<'section'>) => LumenProps<'section'>;
275
+ rootProps: LumenProps<'section'>;
276
+ rootRef: RefObject<HTMLElement | null>;
277
+ }
278
+ export type ResizableDirection = 'horizontal' | 'vertical';
279
+ export interface ResizableOptions {
280
+ defaultSizes?: number[] | undefined;
281
+ direction?: ResizableDirection | undefined;
282
+ maxSize?: number | number[] | undefined;
283
+ minSize?: number | number[] | undefined;
284
+ onSizesChange?: ChangeHandler<number[]> | undefined;
285
+ panelCount?: number | undefined;
286
+ resetOnDoubleClick?: boolean | undefined;
287
+ }
288
+ export interface ResizableController {
289
+ direction: ResizableDirection;
290
+ getHandleProps: (index: number, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
291
+ getPanelProps: (index: number, props?: ComponentPropsWithRef<'div'>) => LumenProps<'div'>;
292
+ handleIndexes: number[];
293
+ panelIndexes: number[];
294
+ reset: () => void;
295
+ resizePair: (index: number, nextSize: number) => void;
296
+ rootProps: LumenProps<'div'>;
297
+ rootRef: RefObject<HTMLDivElement | null>;
298
+ sizes: number[];
299
+ }
300
+ export type ThemeBuilderChangeDetail = LumenThemeBuilderResult;
301
+ export interface ThemeBuilderExportDetail {
302
+ css?: string;
303
+ format: LumenThemeBuilderExportFormat;
304
+ tokens: LumenThemeTokens;
305
+ value: string;
306
+ }
307
+ export interface ThemeBuilderOptions {
308
+ accentHue?: number | undefined;
309
+ defaultAccentHue?: number | undefined;
310
+ defaultExportFormat?: LumenThemeBuilderExportFormat | undefined;
311
+ defaultHue?: number | undefined;
312
+ defaultMode?: LumenThemeBuilderMode | undefined;
313
+ defaultPrimaryColor?: string | undefined;
314
+ defaultScheme?: LumenThemeBuilderScheme | undefined;
315
+ defaultSecondaryColor?: string | undefined;
316
+ exportFormat?: LumenThemeBuilderExportFormat | undefined;
317
+ hue?: number | undefined;
318
+ mode?: LumenThemeBuilderMode | undefined;
319
+ onAccentHueChange?: ChangeHandler<number> | undefined;
320
+ onExportFormatChange?: ChangeHandler<LumenThemeBuilderExportFormat> | undefined;
321
+ onHueChange?: ChangeHandler<number> | undefined;
322
+ onModeChange?: ChangeHandler<LumenThemeBuilderMode> | undefined;
323
+ onPrimaryColorChange?: ChangeHandler<string> | undefined;
324
+ onSchemeChange?: ChangeHandler<LumenThemeBuilderScheme> | undefined;
325
+ onSecondaryColorChange?: ChangeHandler<string> | undefined;
326
+ onThemeChange?: ChangeHandler<ThemeBuilderChangeDetail> | undefined;
327
+ onThemeExport?: ChangeHandler<ThemeBuilderExportDetail> | undefined;
328
+ primaryColor?: string | undefined;
329
+ scheme?: LumenThemeBuilderScheme | undefined;
330
+ secondaryColor?: string | undefined;
331
+ }
332
+ export interface ThemeBuilderController extends ThemeBuilderChangeDetail {
333
+ accentHueProps: LumenProps<'input'>;
334
+ copyExport: () => Promise<string>;
335
+ exportButtonProps: LumenProps<'button'>;
336
+ exportFormat: LumenThemeBuilderExportFormat;
337
+ exportValue: string;
338
+ getExportFormatProps: (format: LumenThemeBuilderExportFormat, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
339
+ getModeProps: (mode: LumenThemeBuilderMode, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
340
+ getSchemeProps: (scheme: LumenThemeBuilderScheme, props?: ComponentPropsWithRef<'button'>) => LumenProps<'button'>;
341
+ hueProps: LumenProps<'input'>;
342
+ outputProps: LumenProps<'textarea'>;
343
+ previewStyle: CSSProperties;
344
+ primaryColorProps: LumenProps<'input'>;
345
+ rootProps: LumenProps<'section'>;
346
+ secondaryColorProps: LumenProps<'input'>;
347
+ setAccentHue: Dispatch<SetStateAction<number>>;
348
+ setExportFormat: Dispatch<SetStateAction<LumenThemeBuilderExportFormat>>;
349
+ setHue: Dispatch<SetStateAction<number>>;
350
+ setMode: Dispatch<SetStateAction<LumenThemeBuilderMode>>;
351
+ setPrimaryColor: Dispatch<SetStateAction<string>>;
352
+ setScheme: Dispatch<SetStateAction<LumenThemeBuilderScheme>>;
353
+ setSecondaryColor: Dispatch<SetStateAction<string>>;
354
+ }
355
+ export declare const useDialog: (options?: DialogOptions) => DialogController;
356
+ export declare const usePopover: (options?: PopoverOptions) => PopoverController;
357
+ export declare const useDropdownMenu: (options?: DropdownMenuOptions) => DropdownMenuController;
358
+ export declare const useContextMenu: ({ defaultOpen, id, onOpenChange, open: controlledOpen }?: ContextMenuOptions) => ContextMenuController;
359
+ export declare const useTabs: ({ defaultValue, id, onValueChange, orientation, value }?: TabsOptions) => TabsController;
360
+ export declare const useSelect: ({ defaultValue, disabled, id, name, onValueChange, options, placeholder, required, value }?: SelectOptions) => SelectController;
361
+ export declare const useFormValidation: ({ onInvalid, onValid, onValidate }?: FormValidationOptions) => FormValidationController;
362
+ export declare const useCalendar: ({ defaultValue, disabled, locale, max, min, month, name, onValueChange, value: controlledValue }?: CalendarOptions) => CalendarController;
363
+ export declare const useInputOTP: ({ defaultValue, disabled, inputMode, invalid, length: lengthOption, onValueChange, pattern, value: controlledValue }?: InputOTPOptions) => InputOTPController;
364
+ export declare const useDateRangePicker: ({ onRangeChange }?: DateRangePickerOptions) => DateRangePickerController;
365
+ export declare const useRichTextEditor: ({ onChange, onCommand }?: RichTextEditorOptions) => RichTextEditorController;
366
+ export declare const useSchedule: ({ onChange }?: ScheduleOptions) => ScheduleController;
367
+ export declare const useResizable: ({ defaultSizes, direction, maxSize, minSize, onSizesChange, panelCount: panelCountOption, resetOnDoubleClick }?: ResizableOptions) => ResizableController;
368
+ 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;
369
+ export declare const useTooltip: ({ defaultOpen, delay, id, onOpenChange, open, }?: TooltipOptions) => TooltipController;
370
+ export declare const ToastProvider: ({ children, maxCount, placement }: ToastProviderProps) => JSX.Element;
371
+ export declare const useToast: () => ToastApi;
372
+ export declare const useThemeToggle: (defaultTheme?: string) => {
373
+ theme: string;
374
+ toggleTheme: (event?: React.MouseEvent<HTMLButtonElement>) => void;
375
+ setTheme: Dispatch<SetStateAction<string>>;
376
+ };
377
+ export {};
378
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.tsx"],"names":[],"mappings":"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"}