@dsbtek/component-library 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1400 -0
- package/dist/index.d.mts +1153 -0
- package/dist/index.d.ts +1153 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +96 -0
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,1153 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { DateRange } from 'react-day-picker';
|
|
3
|
+
import { DropzoneOptions } from 'react-dropzone';
|
|
4
|
+
import * as React$1 from 'react';
|
|
5
|
+
import React__default, { Dispatch, SetStateAction, Context } from 'react';
|
|
6
|
+
import { CountryCode, E164Number, CountryCallingCode, CarrierCode, NationalNumber, NumberType } from 'libphonenumber-js';
|
|
7
|
+
import * as react_hook_form from 'react-hook-form';
|
|
8
|
+
import { FieldValues, UseFormReturn, SubmitHandler, SubmitErrorHandler } from 'react-hook-form';
|
|
9
|
+
import { ZodSchema } from 'zod';
|
|
10
|
+
import { Variants } from 'framer-motion';
|
|
11
|
+
import { LucideIcon } from 'lucide-react';
|
|
12
|
+
|
|
13
|
+
type DateValue = Date | undefined;
|
|
14
|
+
type RangeValue = {
|
|
15
|
+
from: DateValue;
|
|
16
|
+
to: DateValue;
|
|
17
|
+
};
|
|
18
|
+
type PickerValue = DateValue | DateRange | undefined | null;
|
|
19
|
+
interface DateTimePickerProps {
|
|
20
|
+
date: PickerValue;
|
|
21
|
+
setDate: (date: PickerValue) => void;
|
|
22
|
+
isRange?: boolean;
|
|
23
|
+
includeTime?: boolean;
|
|
24
|
+
dateOnly?: boolean;
|
|
25
|
+
timeOnly?: boolean;
|
|
26
|
+
minDate?: Date;
|
|
27
|
+
maxDate?: Date;
|
|
28
|
+
disabledDates?: Date[];
|
|
29
|
+
clearable?: boolean;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
}
|
|
32
|
+
declare function DateTimePicker({ date, setDate, isRange, includeTime, dateOnly, timeOnly, disabledDates, minDate, maxDate, clearable, disabled, }: DateTimePickerProps): react_jsx_runtime.JSX.Element;
|
|
33
|
+
|
|
34
|
+
interface FileWithPreview extends File {
|
|
35
|
+
preview?: string;
|
|
36
|
+
}
|
|
37
|
+
interface FileInputProps extends Omit<DropzoneOptions, "disabled"> {
|
|
38
|
+
className?: string;
|
|
39
|
+
loading?: boolean;
|
|
40
|
+
onRemove?: (file: FileWithPreview) => void;
|
|
41
|
+
onChange?: (files: FileWithPreview[]) => void;
|
|
42
|
+
disabled?: boolean;
|
|
43
|
+
progress?: number | number[];
|
|
44
|
+
value?: FileWithPreview[];
|
|
45
|
+
multiple?: boolean;
|
|
46
|
+
}
|
|
47
|
+
declare function FileInput({ className, loading, onRemove, onChange, disabled, progress, value, multiple, maxSize, // 2MB default
|
|
48
|
+
accept, maxFiles, ...props }: FileInputProps): react_jsx_runtime.JSX.Element;
|
|
49
|
+
|
|
50
|
+
interface RGB {
|
|
51
|
+
r: number;
|
|
52
|
+
g: number;
|
|
53
|
+
b: number;
|
|
54
|
+
a?: number;
|
|
55
|
+
}
|
|
56
|
+
interface HSL {
|
|
57
|
+
h: number;
|
|
58
|
+
s: number;
|
|
59
|
+
l: number;
|
|
60
|
+
a?: number;
|
|
61
|
+
}
|
|
62
|
+
interface ColorPickerProps {
|
|
63
|
+
color?: string;
|
|
64
|
+
onChange?: (value: string) => void;
|
|
65
|
+
className?: string;
|
|
66
|
+
}
|
|
67
|
+
declare function ColorPicker({ color, onChange, className }: ColorPickerProps): react_jsx_runtime.JSX.Element;
|
|
68
|
+
|
|
69
|
+
interface TagInputProps {
|
|
70
|
+
placeholder?: string;
|
|
71
|
+
tags: string[];
|
|
72
|
+
setTags: (tags: string[]) => void;
|
|
73
|
+
suggestions?: string[];
|
|
74
|
+
maxTags?: number;
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
error?: string;
|
|
77
|
+
}
|
|
78
|
+
declare function TagInput({ placeholder, tags, setTags, suggestions, maxTags, disabled, error }: TagInputProps): react_jsx_runtime.JSX.Element;
|
|
79
|
+
|
|
80
|
+
interface BreadcrumbsProps {
|
|
81
|
+
segments: Array<{
|
|
82
|
+
label: string;
|
|
83
|
+
href?: string;
|
|
84
|
+
}>;
|
|
85
|
+
separator?: React$1.ReactNode;
|
|
86
|
+
className?: string;
|
|
87
|
+
onNavigate?: (href: string) => void;
|
|
88
|
+
}
|
|
89
|
+
declare function Breadcrumbs({ segments, separator, className, onNavigate, }: BreadcrumbsProps): react_jsx_runtime.JSX.Element;
|
|
90
|
+
|
|
91
|
+
interface ResponsiveDialogProps {
|
|
92
|
+
trigger: React$1.ReactNode;
|
|
93
|
+
title: string;
|
|
94
|
+
description: string;
|
|
95
|
+
children: React$1.ReactNode;
|
|
96
|
+
}
|
|
97
|
+
declare function ResponsiveDialog({ trigger, title, description, children, }: ResponsiveDialogProps): react_jsx_runtime.JSX.Element;
|
|
98
|
+
|
|
99
|
+
interface ResponsiveAlertDialogProps {
|
|
100
|
+
trigger: React$1.ReactNode;
|
|
101
|
+
title: string;
|
|
102
|
+
description: string;
|
|
103
|
+
cancelText?: string;
|
|
104
|
+
confirmText?: string;
|
|
105
|
+
onConfirm: () => void;
|
|
106
|
+
}
|
|
107
|
+
declare function ResponsiveAlertDialog({ trigger, title, description, cancelText, confirmText, onConfirm, }: ResponsiveAlertDialogProps): react_jsx_runtime.JSX.Element;
|
|
108
|
+
|
|
109
|
+
interface PasswordInputProps extends React.InputHTMLAttributes<HTMLInputElement> {
|
|
110
|
+
showPasswordLabel?: string;
|
|
111
|
+
hidePasswordLabel?: string;
|
|
112
|
+
}
|
|
113
|
+
declare function PasswordInput({ className, showPasswordLabel, hidePasswordLabel, ...props }: PasswordInputProps): react_jsx_runtime.JSX.Element;
|
|
114
|
+
|
|
115
|
+
declare const countries: ({
|
|
116
|
+
id: number;
|
|
117
|
+
name: string;
|
|
118
|
+
iso3: string;
|
|
119
|
+
iso2: string;
|
|
120
|
+
numeric_code: string;
|
|
121
|
+
phone_code: string;
|
|
122
|
+
capital: string;
|
|
123
|
+
currency: string;
|
|
124
|
+
currency_name: string;
|
|
125
|
+
currency_symbol: string;
|
|
126
|
+
tld: string;
|
|
127
|
+
native: string;
|
|
128
|
+
region: string;
|
|
129
|
+
region_id: string;
|
|
130
|
+
subregion: string;
|
|
131
|
+
subregion_id: string;
|
|
132
|
+
nationality: string;
|
|
133
|
+
timezones: {
|
|
134
|
+
zoneName: string;
|
|
135
|
+
gmtOffset: number;
|
|
136
|
+
gmtOffsetName: string;
|
|
137
|
+
abbreviation: string;
|
|
138
|
+
tzName: string;
|
|
139
|
+
}[];
|
|
140
|
+
translations: {
|
|
141
|
+
kr: string;
|
|
142
|
+
'pt-BR': string;
|
|
143
|
+
pt: string;
|
|
144
|
+
nl: string;
|
|
145
|
+
hr: string;
|
|
146
|
+
fa: string;
|
|
147
|
+
de: string;
|
|
148
|
+
es: string;
|
|
149
|
+
fr: string;
|
|
150
|
+
ja: string;
|
|
151
|
+
it: string;
|
|
152
|
+
cn: string;
|
|
153
|
+
tr: string;
|
|
154
|
+
};
|
|
155
|
+
latitude: string;
|
|
156
|
+
longitude: string;
|
|
157
|
+
emoji: string;
|
|
158
|
+
emojiU: string;
|
|
159
|
+
} | {
|
|
160
|
+
id: number;
|
|
161
|
+
name: string;
|
|
162
|
+
iso3: string;
|
|
163
|
+
iso2: string;
|
|
164
|
+
numeric_code: string;
|
|
165
|
+
phone_code: string;
|
|
166
|
+
capital: string;
|
|
167
|
+
currency: string;
|
|
168
|
+
currency_name: string;
|
|
169
|
+
currency_symbol: string;
|
|
170
|
+
tld: string;
|
|
171
|
+
native: string;
|
|
172
|
+
region: string;
|
|
173
|
+
region_id: string;
|
|
174
|
+
subregion: string;
|
|
175
|
+
subregion_id: null;
|
|
176
|
+
nationality: string;
|
|
177
|
+
timezones: {
|
|
178
|
+
zoneName: string;
|
|
179
|
+
gmtOffset: number;
|
|
180
|
+
gmtOffsetName: string;
|
|
181
|
+
abbreviation: string;
|
|
182
|
+
tzName: string;
|
|
183
|
+
}[];
|
|
184
|
+
translations: {
|
|
185
|
+
kr: string;
|
|
186
|
+
'pt-BR': string;
|
|
187
|
+
pt: string;
|
|
188
|
+
nl: string;
|
|
189
|
+
hr: string;
|
|
190
|
+
fa: string;
|
|
191
|
+
de: string;
|
|
192
|
+
es: string;
|
|
193
|
+
fr: string;
|
|
194
|
+
ja: string;
|
|
195
|
+
it: string;
|
|
196
|
+
cn: string;
|
|
197
|
+
tr: string;
|
|
198
|
+
};
|
|
199
|
+
latitude: string;
|
|
200
|
+
longitude: string;
|
|
201
|
+
emoji: string;
|
|
202
|
+
emojiU: string;
|
|
203
|
+
} | {
|
|
204
|
+
id: number;
|
|
205
|
+
name: string;
|
|
206
|
+
iso3: string;
|
|
207
|
+
iso2: string;
|
|
208
|
+
numeric_code: string;
|
|
209
|
+
phone_code: string;
|
|
210
|
+
capital: string;
|
|
211
|
+
currency: string;
|
|
212
|
+
currency_name: string;
|
|
213
|
+
currency_symbol: string;
|
|
214
|
+
tld: string;
|
|
215
|
+
native: string;
|
|
216
|
+
region: string;
|
|
217
|
+
region_id: string;
|
|
218
|
+
subregion: string;
|
|
219
|
+
subregion_id: string;
|
|
220
|
+
nationality: string;
|
|
221
|
+
timezones: {
|
|
222
|
+
zoneName: string;
|
|
223
|
+
gmtOffset: number;
|
|
224
|
+
gmtOffsetName: string;
|
|
225
|
+
abbreviation: string;
|
|
226
|
+
tzName: string;
|
|
227
|
+
}[];
|
|
228
|
+
translations: {
|
|
229
|
+
kr: string;
|
|
230
|
+
'pt-BR': string;
|
|
231
|
+
pt: string;
|
|
232
|
+
fa: string;
|
|
233
|
+
de: string;
|
|
234
|
+
fr: string;
|
|
235
|
+
it: string;
|
|
236
|
+
cn: string;
|
|
237
|
+
tr: string;
|
|
238
|
+
nl?: undefined;
|
|
239
|
+
hr?: undefined;
|
|
240
|
+
es?: undefined;
|
|
241
|
+
ja?: undefined;
|
|
242
|
+
};
|
|
243
|
+
latitude: string;
|
|
244
|
+
longitude: string;
|
|
245
|
+
emoji: string;
|
|
246
|
+
emojiU: string;
|
|
247
|
+
} | {
|
|
248
|
+
id: number;
|
|
249
|
+
name: string;
|
|
250
|
+
iso3: string;
|
|
251
|
+
iso2: string;
|
|
252
|
+
numeric_code: string;
|
|
253
|
+
phone_code: string;
|
|
254
|
+
capital: string;
|
|
255
|
+
currency: string;
|
|
256
|
+
currency_name: string;
|
|
257
|
+
currency_symbol: string;
|
|
258
|
+
tld: string;
|
|
259
|
+
native: string;
|
|
260
|
+
region: string;
|
|
261
|
+
region_id: null;
|
|
262
|
+
subregion: string;
|
|
263
|
+
subregion_id: null;
|
|
264
|
+
nationality: string;
|
|
265
|
+
timezones: {
|
|
266
|
+
zoneName: string;
|
|
267
|
+
gmtOffset: number;
|
|
268
|
+
gmtOffsetName: string;
|
|
269
|
+
abbreviation: string;
|
|
270
|
+
tzName: string;
|
|
271
|
+
}[];
|
|
272
|
+
translations: {
|
|
273
|
+
kr: string;
|
|
274
|
+
'pt-BR': string;
|
|
275
|
+
pt: string;
|
|
276
|
+
nl: string;
|
|
277
|
+
hr: string;
|
|
278
|
+
fa: string;
|
|
279
|
+
de: string;
|
|
280
|
+
es: string;
|
|
281
|
+
fr: string;
|
|
282
|
+
ja: string;
|
|
283
|
+
it: string;
|
|
284
|
+
cn: string;
|
|
285
|
+
tr: string;
|
|
286
|
+
};
|
|
287
|
+
latitude: string;
|
|
288
|
+
longitude: string;
|
|
289
|
+
emoji: string;
|
|
290
|
+
emojiU: string;
|
|
291
|
+
} | {
|
|
292
|
+
id: number;
|
|
293
|
+
name: string;
|
|
294
|
+
iso3: string;
|
|
295
|
+
iso2: string;
|
|
296
|
+
numeric_code: string;
|
|
297
|
+
phone_code: string;
|
|
298
|
+
capital: string;
|
|
299
|
+
currency: string;
|
|
300
|
+
currency_name: string;
|
|
301
|
+
currency_symbol: string;
|
|
302
|
+
tld: string;
|
|
303
|
+
native: null;
|
|
304
|
+
region: string;
|
|
305
|
+
region_id: string;
|
|
306
|
+
subregion: string;
|
|
307
|
+
subregion_id: string;
|
|
308
|
+
nationality: string;
|
|
309
|
+
timezones: {
|
|
310
|
+
zoneName: string;
|
|
311
|
+
gmtOffset: number;
|
|
312
|
+
gmtOffsetName: string;
|
|
313
|
+
abbreviation: string;
|
|
314
|
+
tzName: string;
|
|
315
|
+
}[];
|
|
316
|
+
translations: {
|
|
317
|
+
kr: string;
|
|
318
|
+
'pt-BR': string;
|
|
319
|
+
pt: string;
|
|
320
|
+
nl: string;
|
|
321
|
+
hr: string;
|
|
322
|
+
fa: string;
|
|
323
|
+
de: string;
|
|
324
|
+
es: string;
|
|
325
|
+
fr: string;
|
|
326
|
+
ja: string;
|
|
327
|
+
it: string;
|
|
328
|
+
cn: string;
|
|
329
|
+
tr: string;
|
|
330
|
+
};
|
|
331
|
+
latitude: string;
|
|
332
|
+
longitude: string;
|
|
333
|
+
emoji: string;
|
|
334
|
+
emojiU: string;
|
|
335
|
+
} | {
|
|
336
|
+
id: number;
|
|
337
|
+
name: string;
|
|
338
|
+
iso3: string;
|
|
339
|
+
iso2: string;
|
|
340
|
+
numeric_code: string;
|
|
341
|
+
phone_code: string;
|
|
342
|
+
capital: string;
|
|
343
|
+
currency: string;
|
|
344
|
+
currency_name: string;
|
|
345
|
+
currency_symbol: string;
|
|
346
|
+
tld: string;
|
|
347
|
+
native: string;
|
|
348
|
+
region: string;
|
|
349
|
+
region_id: string;
|
|
350
|
+
subregion: string;
|
|
351
|
+
subregion_id: string;
|
|
352
|
+
nationality: string;
|
|
353
|
+
timezones: {
|
|
354
|
+
zoneName: string;
|
|
355
|
+
gmtOffset: number;
|
|
356
|
+
gmtOffsetName: string;
|
|
357
|
+
abbreviation: string;
|
|
358
|
+
tzName: string;
|
|
359
|
+
}[];
|
|
360
|
+
translations: {
|
|
361
|
+
kr: string;
|
|
362
|
+
'pt-BR': string;
|
|
363
|
+
pt: string;
|
|
364
|
+
nl: string;
|
|
365
|
+
fa: string;
|
|
366
|
+
de: string;
|
|
367
|
+
fr: string;
|
|
368
|
+
it: string;
|
|
369
|
+
cn: string;
|
|
370
|
+
tr: string;
|
|
371
|
+
hr?: undefined;
|
|
372
|
+
es?: undefined;
|
|
373
|
+
ja?: undefined;
|
|
374
|
+
};
|
|
375
|
+
latitude: string;
|
|
376
|
+
longitude: string;
|
|
377
|
+
emoji: string;
|
|
378
|
+
emojiU: string;
|
|
379
|
+
} | {
|
|
380
|
+
id: number;
|
|
381
|
+
name: string;
|
|
382
|
+
iso3: string;
|
|
383
|
+
iso2: string;
|
|
384
|
+
numeric_code: string;
|
|
385
|
+
phone_code: string;
|
|
386
|
+
capital: string;
|
|
387
|
+
currency: string;
|
|
388
|
+
currency_name: string;
|
|
389
|
+
currency_symbol: string;
|
|
390
|
+
tld: string;
|
|
391
|
+
native: string;
|
|
392
|
+
region: string;
|
|
393
|
+
region_id: string;
|
|
394
|
+
subregion: string;
|
|
395
|
+
subregion_id: string;
|
|
396
|
+
nationality: string;
|
|
397
|
+
timezones: null;
|
|
398
|
+
translations: {
|
|
399
|
+
kr: string;
|
|
400
|
+
'pt-BR': string;
|
|
401
|
+
pt: string;
|
|
402
|
+
nl: string;
|
|
403
|
+
hr: string;
|
|
404
|
+
fa: string;
|
|
405
|
+
de: string;
|
|
406
|
+
es: string;
|
|
407
|
+
fr: string;
|
|
408
|
+
ja: string;
|
|
409
|
+
it: string;
|
|
410
|
+
cn: string;
|
|
411
|
+
tr: string;
|
|
412
|
+
};
|
|
413
|
+
latitude: string;
|
|
414
|
+
longitude: string;
|
|
415
|
+
emoji: string;
|
|
416
|
+
emojiU: string;
|
|
417
|
+
} | {
|
|
418
|
+
id: number;
|
|
419
|
+
name: string;
|
|
420
|
+
iso3: string;
|
|
421
|
+
iso2: string;
|
|
422
|
+
numeric_code: string;
|
|
423
|
+
phone_code: string;
|
|
424
|
+
capital: string;
|
|
425
|
+
currency: string;
|
|
426
|
+
currency_name: string;
|
|
427
|
+
currency_symbol: string;
|
|
428
|
+
tld: string;
|
|
429
|
+
native: string;
|
|
430
|
+
region: string;
|
|
431
|
+
region_id: string;
|
|
432
|
+
subregion: string;
|
|
433
|
+
subregion_id: string;
|
|
434
|
+
nationality: string;
|
|
435
|
+
timezones: {
|
|
436
|
+
zoneName: string;
|
|
437
|
+
gmtOffset: number;
|
|
438
|
+
gmtOffsetName: string;
|
|
439
|
+
abbreviation: string;
|
|
440
|
+
tzName: string;
|
|
441
|
+
}[];
|
|
442
|
+
translations: {
|
|
443
|
+
kr: string;
|
|
444
|
+
'pt-BR': string;
|
|
445
|
+
pt: string;
|
|
446
|
+
nl: string;
|
|
447
|
+
hr: string;
|
|
448
|
+
fa: string;
|
|
449
|
+
de: string;
|
|
450
|
+
es: string;
|
|
451
|
+
fr: string;
|
|
452
|
+
ja: string;
|
|
453
|
+
cn: string;
|
|
454
|
+
tr: string;
|
|
455
|
+
it?: undefined;
|
|
456
|
+
};
|
|
457
|
+
latitude: string;
|
|
458
|
+
longitude: string;
|
|
459
|
+
emoji: string;
|
|
460
|
+
emojiU: string;
|
|
461
|
+
} | {
|
|
462
|
+
id: number;
|
|
463
|
+
name: string;
|
|
464
|
+
iso3: string;
|
|
465
|
+
iso2: string;
|
|
466
|
+
numeric_code: string;
|
|
467
|
+
phone_code: string;
|
|
468
|
+
capital: string;
|
|
469
|
+
currency: string;
|
|
470
|
+
currency_name: string;
|
|
471
|
+
currency_symbol: string;
|
|
472
|
+
tld: string;
|
|
473
|
+
native: string;
|
|
474
|
+
region: string;
|
|
475
|
+
region_id: string;
|
|
476
|
+
subregion: string;
|
|
477
|
+
subregion_id: string;
|
|
478
|
+
nationality: string;
|
|
479
|
+
timezones: {
|
|
480
|
+
zoneName: string;
|
|
481
|
+
gmtOffset: number;
|
|
482
|
+
gmtOffsetName: string;
|
|
483
|
+
abbreviation: string;
|
|
484
|
+
tzName: string;
|
|
485
|
+
}[];
|
|
486
|
+
translations: {
|
|
487
|
+
kr: string;
|
|
488
|
+
cn: string;
|
|
489
|
+
tr: string;
|
|
490
|
+
'pt-BR'?: undefined;
|
|
491
|
+
pt?: undefined;
|
|
492
|
+
nl?: undefined;
|
|
493
|
+
hr?: undefined;
|
|
494
|
+
fa?: undefined;
|
|
495
|
+
de?: undefined;
|
|
496
|
+
es?: undefined;
|
|
497
|
+
fr?: undefined;
|
|
498
|
+
ja?: undefined;
|
|
499
|
+
it?: undefined;
|
|
500
|
+
};
|
|
501
|
+
latitude: string;
|
|
502
|
+
longitude: string;
|
|
503
|
+
emoji: string;
|
|
504
|
+
emojiU: string;
|
|
505
|
+
} | {
|
|
506
|
+
id: number;
|
|
507
|
+
name: string;
|
|
508
|
+
iso3: string;
|
|
509
|
+
iso2: string;
|
|
510
|
+
numeric_code: string;
|
|
511
|
+
phone_code: string;
|
|
512
|
+
capital: string;
|
|
513
|
+
currency: string;
|
|
514
|
+
currency_name: string;
|
|
515
|
+
currency_symbol: string;
|
|
516
|
+
tld: string;
|
|
517
|
+
native: string;
|
|
518
|
+
region: string;
|
|
519
|
+
region_id: string;
|
|
520
|
+
subregion: string;
|
|
521
|
+
subregion_id: string;
|
|
522
|
+
nationality: string;
|
|
523
|
+
timezones: {
|
|
524
|
+
zoneName: string;
|
|
525
|
+
gmtOffset: number;
|
|
526
|
+
gmtOffsetName: string;
|
|
527
|
+
abbreviation: string;
|
|
528
|
+
tzName: string;
|
|
529
|
+
}[];
|
|
530
|
+
translations: {
|
|
531
|
+
kr: string;
|
|
532
|
+
'pt-BR': string;
|
|
533
|
+
pt: string;
|
|
534
|
+
nl: string;
|
|
535
|
+
fa: string;
|
|
536
|
+
de: string;
|
|
537
|
+
es: string;
|
|
538
|
+
fr: string;
|
|
539
|
+
ja: string;
|
|
540
|
+
it: string;
|
|
541
|
+
cn: string;
|
|
542
|
+
tr: string;
|
|
543
|
+
hr?: undefined;
|
|
544
|
+
};
|
|
545
|
+
latitude: string;
|
|
546
|
+
longitude: string;
|
|
547
|
+
emoji: string;
|
|
548
|
+
emojiU: string;
|
|
549
|
+
})[];
|
|
550
|
+
|
|
551
|
+
type Country = (typeof countries)[number];
|
|
552
|
+
type PhoneData = {
|
|
553
|
+
phoneNumber?: E164Number;
|
|
554
|
+
countryCode?: CountryCode;
|
|
555
|
+
countryCallingCode?: CountryCallingCode;
|
|
556
|
+
carrierCode?: CarrierCode;
|
|
557
|
+
nationalNumber?: NationalNumber;
|
|
558
|
+
internationalNumber?: string;
|
|
559
|
+
possibleCountries?: string;
|
|
560
|
+
isValid?: boolean;
|
|
561
|
+
isPossible?: boolean;
|
|
562
|
+
uri?: string;
|
|
563
|
+
type?: NumberType;
|
|
564
|
+
};
|
|
565
|
+
interface PhoneInputProps extends React$1.ComponentPropsWithoutRef<'input'> {
|
|
566
|
+
value?: string;
|
|
567
|
+
defaultCountry?: CountryCode;
|
|
568
|
+
}
|
|
569
|
+
declare function getPhoneData(phone: string): PhoneData;
|
|
570
|
+
declare function PhoneInput({ value: valueProp, defaultCountry, className, id, required, ...rest }: PhoneInputProps): react_jsx_runtime.JSX.Element;
|
|
571
|
+
|
|
572
|
+
interface DataTableFeatures {
|
|
573
|
+
rowSelection: boolean;
|
|
574
|
+
columnVisibility: boolean;
|
|
575
|
+
sorting: boolean;
|
|
576
|
+
search: boolean;
|
|
577
|
+
dateFilter: boolean;
|
|
578
|
+
pagination: boolean;
|
|
579
|
+
newItem: boolean;
|
|
580
|
+
columnFilters: boolean;
|
|
581
|
+
rowActions: boolean;
|
|
582
|
+
resetFilters: boolean;
|
|
583
|
+
stickyHeader: boolean;
|
|
584
|
+
rowExpansion: boolean;
|
|
585
|
+
columnResizing: boolean;
|
|
586
|
+
advancedFilters: boolean;
|
|
587
|
+
advancedSorts: boolean;
|
|
588
|
+
export: boolean;
|
|
589
|
+
viewState: boolean;
|
|
590
|
+
keyboardNavigation: boolean;
|
|
591
|
+
viewModeToggle: boolean;
|
|
592
|
+
}
|
|
593
|
+
interface DataTableViewState {
|
|
594
|
+
hiddenColumns: string[];
|
|
595
|
+
columnWidths: Record<string, number>;
|
|
596
|
+
filters: Record<string, any>;
|
|
597
|
+
sorting: {
|
|
598
|
+
column: string;
|
|
599
|
+
direction: "asc" | "desc" | null;
|
|
600
|
+
};
|
|
601
|
+
pagination: {
|
|
602
|
+
page: number;
|
|
603
|
+
perPage: number;
|
|
604
|
+
};
|
|
605
|
+
viewMode: "table" | "grid";
|
|
606
|
+
}
|
|
607
|
+
interface AdvancedSort {
|
|
608
|
+
id: string;
|
|
609
|
+
field: string;
|
|
610
|
+
direction: "asc" | "desc";
|
|
611
|
+
}
|
|
612
|
+
interface AdvancedFilter {
|
|
613
|
+
id: string;
|
|
614
|
+
field: string;
|
|
615
|
+
operator: "equals" | "contains" | "startsWith" | "endsWith" | "gt" | "lt" | "gte" | "lte";
|
|
616
|
+
value: any;
|
|
617
|
+
}
|
|
618
|
+
interface DataTableProps<T extends {
|
|
619
|
+
id: string;
|
|
620
|
+
}> {
|
|
621
|
+
data: T[];
|
|
622
|
+
columns: ColumnDef<T>[];
|
|
623
|
+
meta?: {
|
|
624
|
+
current_page: number;
|
|
625
|
+
last_page: number;
|
|
626
|
+
per_page: number;
|
|
627
|
+
total: number;
|
|
628
|
+
};
|
|
629
|
+
loading?: boolean;
|
|
630
|
+
onPageChange?: (page: number) => void;
|
|
631
|
+
onPerPageChange?: (perPage: number) => void;
|
|
632
|
+
onSort?: (column: string, direction: "asc" | "desc" | null) => void;
|
|
633
|
+
onSearch?: (value: string) => void;
|
|
634
|
+
onFilter?: (filters: AdvancedFilter[]) => void;
|
|
635
|
+
pageSizeOptions?: number[];
|
|
636
|
+
renderItemActions?: (row: T) => React__default.ReactNode;
|
|
637
|
+
renderExpanded?: (row: T) => React__default.ReactNode;
|
|
638
|
+
onNewItem?: () => void;
|
|
639
|
+
newItemLabel?: string;
|
|
640
|
+
onRowsSelected?: (rows: string[]) => void;
|
|
641
|
+
dateRange?: DateRange | undefined;
|
|
642
|
+
setDateRange?: (value: DateRange | undefined) => void;
|
|
643
|
+
onExport?: (type: "csv" | "excel" | "pdf") => void;
|
|
644
|
+
onViewStateChange?: (state: DataTableViewState) => void;
|
|
645
|
+
savedViewStates?: {
|
|
646
|
+
id: string;
|
|
647
|
+
name: string;
|
|
648
|
+
state: DataTableViewState;
|
|
649
|
+
}[];
|
|
650
|
+
features?: Partial<DataTableFeatures>;
|
|
651
|
+
defaultViewState?: DataTableViewState;
|
|
652
|
+
onAdvancedSort?: (sorts: AdvancedSort[]) => void;
|
|
653
|
+
className?: string;
|
|
654
|
+
}
|
|
655
|
+
interface ColumnDef<T> {
|
|
656
|
+
accessorKey: string;
|
|
657
|
+
header: string;
|
|
658
|
+
cell: (row: T) => React__default.ReactNode;
|
|
659
|
+
sortable?: boolean;
|
|
660
|
+
filterable?: boolean;
|
|
661
|
+
resizable?: boolean;
|
|
662
|
+
minWidth?: number;
|
|
663
|
+
maxWidth?: number;
|
|
664
|
+
className?: string;
|
|
665
|
+
filterComponent?: React__default.ComponentType<{
|
|
666
|
+
value: any;
|
|
667
|
+
onChange: (value: any) => void;
|
|
668
|
+
}>;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
declare const defaultFeatures: {
|
|
672
|
+
readonly rowSelection: false;
|
|
673
|
+
readonly columnVisibility: false;
|
|
674
|
+
readonly sorting: false;
|
|
675
|
+
readonly search: false;
|
|
676
|
+
readonly dateFilter: false;
|
|
677
|
+
readonly pagination: false;
|
|
678
|
+
readonly newItem: false;
|
|
679
|
+
readonly columnFilters: false;
|
|
680
|
+
readonly rowActions: false;
|
|
681
|
+
readonly resetFilters: false;
|
|
682
|
+
readonly stickyHeader: false;
|
|
683
|
+
readonly rowExpansion: false;
|
|
684
|
+
readonly columnResizing: false;
|
|
685
|
+
readonly advancedFilters: false;
|
|
686
|
+
readonly advancedSorts: false;
|
|
687
|
+
readonly export: false;
|
|
688
|
+
readonly viewState: false;
|
|
689
|
+
readonly keyboardNavigation: false;
|
|
690
|
+
readonly viewModeToggle: false;
|
|
691
|
+
};
|
|
692
|
+
declare function DataTable<T extends {
|
|
693
|
+
id: string;
|
|
694
|
+
}>({ data, columns, meta, loading, onPageChange, onPerPageChange, onSort, onSearch, onFilter, pageSizeOptions, renderItemActions, renderExpanded, onNewItem, newItemLabel, onRowsSelected, dateRange, setDateRange, onExport, onViewStateChange, savedViewStates, features: userFeatures, defaultViewState, onAdvancedSort, className, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
695
|
+
|
|
696
|
+
interface AdvancedFilterBuilderProps<T> {
|
|
697
|
+
columns: ColumnDef<T>[];
|
|
698
|
+
onFiltersChange: (filters: AdvancedFilter[]) => void;
|
|
699
|
+
initialFilters?: AdvancedFilter[];
|
|
700
|
+
}
|
|
701
|
+
declare const OPERATORS: readonly [{
|
|
702
|
+
readonly label: "Contains";
|
|
703
|
+
readonly value: "contains";
|
|
704
|
+
}, {
|
|
705
|
+
readonly label: "Equals";
|
|
706
|
+
readonly value: "equals";
|
|
707
|
+
}, {
|
|
708
|
+
readonly label: "Starts with";
|
|
709
|
+
readonly value: "startsWith";
|
|
710
|
+
}, {
|
|
711
|
+
readonly label: "Ends with";
|
|
712
|
+
readonly value: "endsWith";
|
|
713
|
+
}, {
|
|
714
|
+
readonly label: "Greater than";
|
|
715
|
+
readonly value: "gt";
|
|
716
|
+
}, {
|
|
717
|
+
readonly label: "Less than";
|
|
718
|
+
readonly value: "lt";
|
|
719
|
+
}, {
|
|
720
|
+
readonly label: "Greater than or equal";
|
|
721
|
+
readonly value: "gte";
|
|
722
|
+
}, {
|
|
723
|
+
readonly label: "Less than or equal";
|
|
724
|
+
readonly value: "lte";
|
|
725
|
+
}];
|
|
726
|
+
declare function AdvancedFilterBuilder<T>({ columns, onFiltersChange, initialFilters, }: AdvancedFilterBuilderProps<T>): react_jsx_runtime.JSX.Element;
|
|
727
|
+
|
|
728
|
+
interface AdvancedSortBuilderProps<T> {
|
|
729
|
+
columns: ColumnDef<T>[];
|
|
730
|
+
onSortChange: (sorts: AdvancedSort[]) => void;
|
|
731
|
+
initialSorts?: AdvancedSort[];
|
|
732
|
+
}
|
|
733
|
+
declare const DIRECTIONS: readonly [{
|
|
734
|
+
readonly label: "Ascending";
|
|
735
|
+
readonly value: "asc";
|
|
736
|
+
}, {
|
|
737
|
+
readonly label: "Descending";
|
|
738
|
+
readonly value: "desc";
|
|
739
|
+
}];
|
|
740
|
+
declare function AdvancedSortBuilder<T>({ columns, onSortChange, initialSorts }: AdvancedSortBuilderProps<T>): react_jsx_runtime.JSX.Element;
|
|
741
|
+
|
|
742
|
+
interface DataTableBodyProps<T> {
|
|
743
|
+
data: T[];
|
|
744
|
+
columns: ColumnDef<T>[];
|
|
745
|
+
hiddenColumns: Set<string>;
|
|
746
|
+
loading: boolean;
|
|
747
|
+
meta?: {
|
|
748
|
+
per_page: number;
|
|
749
|
+
};
|
|
750
|
+
selectedRows: Set<string>;
|
|
751
|
+
onSelectRow: (id: string) => void;
|
|
752
|
+
renderItemActions?: (row: T) => React__default.ReactNode;
|
|
753
|
+
features: DataTableFeatures;
|
|
754
|
+
expandedRows?: Set<string>;
|
|
755
|
+
onToggleExpand?: (id: string) => void;
|
|
756
|
+
renderExpanded?: (row: T) => React__default.ReactNode;
|
|
757
|
+
columnWidths: Record<string, number>;
|
|
758
|
+
focusedCell: {
|
|
759
|
+
row: number;
|
|
760
|
+
col: number;
|
|
761
|
+
};
|
|
762
|
+
}
|
|
763
|
+
declare function DataTableBody<T extends {
|
|
764
|
+
id: string;
|
|
765
|
+
}>({ data, columns, hiddenColumns, loading, meta, selectedRows, onSelectRow, renderItemActions, features, expandedRows, onToggleExpand, renderExpanded, columnWidths, focusedCell }: DataTableBodyProps<T>): react_jsx_runtime.JSX.Element;
|
|
766
|
+
|
|
767
|
+
interface DataTableGridViewProps<T> {
|
|
768
|
+
data: T[];
|
|
769
|
+
columns: ColumnDef<T>[];
|
|
770
|
+
hiddenColumns: Set<string>;
|
|
771
|
+
selectedRows: Set<string>;
|
|
772
|
+
onSelectRow: (id: string) => void;
|
|
773
|
+
renderItemActions?: (row: T) => React__default.ReactNode;
|
|
774
|
+
features: DataTableFeatures;
|
|
775
|
+
loading: boolean;
|
|
776
|
+
onSelectAll: () => void;
|
|
777
|
+
meta?: {
|
|
778
|
+
per_page: number;
|
|
779
|
+
};
|
|
780
|
+
}
|
|
781
|
+
declare function DataTableGridView<T extends {
|
|
782
|
+
id: string;
|
|
783
|
+
}>({ data, columns, hiddenColumns, selectedRows, onSelectRow, renderItemActions, features, loading, onSelectAll, meta }: DataTableGridViewProps<T>): react_jsx_runtime.JSX.Element;
|
|
784
|
+
|
|
785
|
+
interface DataTableHeaderProps<T> {
|
|
786
|
+
columns: ColumnDef<T>[];
|
|
787
|
+
hiddenColumns: Set<string>;
|
|
788
|
+
sortConfig: {
|
|
789
|
+
column: string;
|
|
790
|
+
direction: 'asc' | 'desc' | null;
|
|
791
|
+
};
|
|
792
|
+
onSort: (columnId: string, direction: 'asc' | 'desc' | null) => void;
|
|
793
|
+
selectedRows: Set<string>;
|
|
794
|
+
data: T[];
|
|
795
|
+
onSelectAll: () => void;
|
|
796
|
+
features: DataTableFeatures;
|
|
797
|
+
columnWidths: Record<string, number>;
|
|
798
|
+
onColumnResize: (columnId: string, width: number) => void;
|
|
799
|
+
}
|
|
800
|
+
declare function DataTableHeader<T extends {
|
|
801
|
+
id: string;
|
|
802
|
+
}>({ columns, hiddenColumns, sortConfig, onSort, selectedRows, data, onSelectAll, features, columnWidths, onColumnResize }: DataTableHeaderProps<T>): react_jsx_runtime.JSX.Element;
|
|
803
|
+
|
|
804
|
+
interface DataTablePaginationProps {
|
|
805
|
+
meta?: {
|
|
806
|
+
current_page: number;
|
|
807
|
+
last_page: number;
|
|
808
|
+
per_page: number;
|
|
809
|
+
total: number;
|
|
810
|
+
};
|
|
811
|
+
onPageChange?: (page: number) => void;
|
|
812
|
+
onPerPageChange?: (perPage: number) => void;
|
|
813
|
+
pageSizeOptions: number[];
|
|
814
|
+
selectedRows: Set<string>;
|
|
815
|
+
features: DataTableFeatures;
|
|
816
|
+
}
|
|
817
|
+
declare function DataTablePagination({ meta, onPageChange, onPerPageChange, pageSizeOptions, selectedRows, features }: DataTablePaginationProps): react_jsx_runtime.JSX.Element;
|
|
818
|
+
|
|
819
|
+
interface DataTableToolbarProps<T> {
|
|
820
|
+
columns: ColumnDef<T>[];
|
|
821
|
+
hiddenColumns: Set<string>;
|
|
822
|
+
onToggleColumn: (columnId: string) => void;
|
|
823
|
+
onSearch?: (value: string) => void;
|
|
824
|
+
onNewItem?: () => void;
|
|
825
|
+
newItemLabel?: string;
|
|
826
|
+
features: DataTableFeatures;
|
|
827
|
+
onExport?: (type: "csv" | "excel" | "pdf") => void;
|
|
828
|
+
viewState?: DataTableViewState;
|
|
829
|
+
savedViewStates?: {
|
|
830
|
+
id: string;
|
|
831
|
+
name: string;
|
|
832
|
+
state: DataTableViewState;
|
|
833
|
+
}[];
|
|
834
|
+
onViewStateChange?: (state: DataTableViewState) => void;
|
|
835
|
+
onFilter?: (filters: AdvancedFilter[]) => void;
|
|
836
|
+
onSort?: (sorts: AdvancedSort[]) => void;
|
|
837
|
+
currentFilters?: AdvancedFilter[];
|
|
838
|
+
currentSorts?: AdvancedSort[];
|
|
839
|
+
dateRange: DateRange | undefined;
|
|
840
|
+
setDateRange: (value: DateRange | undefined) => void;
|
|
841
|
+
viewMode: "table" | "grid";
|
|
842
|
+
onViewModeChange: (mode: "table" | "grid") => void;
|
|
843
|
+
}
|
|
844
|
+
declare function DataTableToolbar<T>({ columns, hiddenColumns, onToggleColumn, onSearch, onNewItem, newItemLabel, features, onExport, viewState, savedViewStates, onViewStateChange, onFilter, onSort, currentFilters, currentSorts, dateRange, setDateRange, viewMode, onViewModeChange, }: DataTableToolbarProps<T>): react_jsx_runtime.JSX.Element;
|
|
845
|
+
|
|
846
|
+
interface ResizableHeaderProps {
|
|
847
|
+
children: React__default.ReactNode;
|
|
848
|
+
onResize: (width: number) => void;
|
|
849
|
+
width: number;
|
|
850
|
+
minWidth?: number;
|
|
851
|
+
maxWidth?: number;
|
|
852
|
+
}
|
|
853
|
+
declare function ResizableHeader({ children, onResize, width, minWidth, maxWidth }: ResizableHeaderProps): react_jsx_runtime.JSX.Element;
|
|
854
|
+
|
|
855
|
+
type OptionType = {
|
|
856
|
+
label: string;
|
|
857
|
+
value: string;
|
|
858
|
+
group?: string;
|
|
859
|
+
};
|
|
860
|
+
interface MultiSelectProps {
|
|
861
|
+
options: OptionType[];
|
|
862
|
+
selected: string[];
|
|
863
|
+
onChange: (value: string[]) => void;
|
|
864
|
+
placeholder?: string;
|
|
865
|
+
className?: string;
|
|
866
|
+
multiple?: boolean;
|
|
867
|
+
onLoadMore?: () => void;
|
|
868
|
+
hasMore?: boolean;
|
|
869
|
+
isDialog?: boolean;
|
|
870
|
+
triggerClassName?: string;
|
|
871
|
+
contentClassName?: string;
|
|
872
|
+
badgeClassName?: string;
|
|
873
|
+
commandClassName?: string;
|
|
874
|
+
commandInputClassName?: string;
|
|
875
|
+
commandListClassName?: string;
|
|
876
|
+
commandItemClassName?: string;
|
|
877
|
+
commandEmptyClassName?: string;
|
|
878
|
+
commandGroupClassName?: string;
|
|
879
|
+
commandSeparatorClassName?: string;
|
|
880
|
+
align?: "start" | "center" | "end";
|
|
881
|
+
sideOffset?: number;
|
|
882
|
+
width?: "auto" | "trigger" | string;
|
|
883
|
+
}
|
|
884
|
+
declare const MAX_VISIBLE_TAGS = 2;
|
|
885
|
+
declare function MultiSelect({ options, selected, onChange, placeholder, className, multiple, onLoadMore, hasMore, isDialog, triggerClassName, contentClassName, badgeClassName, commandClassName, commandInputClassName, commandListClassName, commandItemClassName, commandEmptyClassName, commandGroupClassName, commandSeparatorClassName, align, sideOffset, width, }: MultiSelectProps): react_jsx_runtime.JSX.Element;
|
|
886
|
+
|
|
887
|
+
type Form$1<T> = {
|
|
888
|
+
id: number;
|
|
889
|
+
label: string;
|
|
890
|
+
fields: (keyof T)[];
|
|
891
|
+
form: React__default.FC;
|
|
892
|
+
};
|
|
893
|
+
type UseMultiStepFormTypeOptions$1<T extends FieldValues> = {
|
|
894
|
+
schema: ZodSchema<T>;
|
|
895
|
+
currentStep: number;
|
|
896
|
+
setCurrentStep: Dispatch<SetStateAction<number>>;
|
|
897
|
+
form?: UseFormReturn<T>;
|
|
898
|
+
forms: Form$1<T>[];
|
|
899
|
+
saveFormData: SubmitHandler<T>;
|
|
900
|
+
};
|
|
901
|
+
|
|
902
|
+
type Form<T> = {
|
|
903
|
+
id: number;
|
|
904
|
+
label: string;
|
|
905
|
+
fields: (keyof T)[];
|
|
906
|
+
form: React__default.FC;
|
|
907
|
+
};
|
|
908
|
+
type UseMultiStepFormTypeOptions<T extends FieldValues> = {
|
|
909
|
+
schema: ZodSchema<T>;
|
|
910
|
+
currentStep: number;
|
|
911
|
+
setCurrentStep: Dispatch<SetStateAction<number>>;
|
|
912
|
+
form?: UseFormReturn<T>;
|
|
913
|
+
forms: Form<T>[];
|
|
914
|
+
saveFormData: SubmitHandler<T>;
|
|
915
|
+
};
|
|
916
|
+
|
|
917
|
+
/**
|
|
918
|
+
* Custom hook for managing a multistep form.
|
|
919
|
+
*
|
|
920
|
+
* @template T - The type of the multistep form options.
|
|
921
|
+
* @param {Context<T>} context - The React context containing the form state and methods.
|
|
922
|
+
* @returns {Object} An object containing methods and properties for managing the multistep form.
|
|
923
|
+
* @throws {Error} If the form is not defined in the context.
|
|
924
|
+
*/
|
|
925
|
+
declare function useMultiStepForm<T extends UseMultiStepFormTypeOptions<any>>(context: Context<T>): {
|
|
926
|
+
form: react_hook_form.UseFormReturn<any>;
|
|
927
|
+
currentStep: number;
|
|
928
|
+
steps: number;
|
|
929
|
+
nextStep: () => void;
|
|
930
|
+
previousStep: () => void;
|
|
931
|
+
goToStep: (index: number) => void;
|
|
932
|
+
isFirstStep: boolean;
|
|
933
|
+
isLastStep: boolean;
|
|
934
|
+
labels: string[];
|
|
935
|
+
currentStepLabel: string;
|
|
936
|
+
CurrentForm: React__default.FC<{}>;
|
|
937
|
+
onSubmit: SubmitHandler<any>;
|
|
938
|
+
onErrors: SubmitErrorHandler<any>;
|
|
939
|
+
};
|
|
940
|
+
|
|
941
|
+
interface MultiStepNavBarProps<T> extends React__default.HTMLAttributes<HTMLElement> {
|
|
942
|
+
context: Context<T>;
|
|
943
|
+
}
|
|
944
|
+
declare function MultiStepNavbar<T extends UseMultiStepFormTypeOptions$1<any>>({ className, context, ...props }: MultiStepNavBarProps<T>): react_jsx_runtime.JSX.Element;
|
|
945
|
+
|
|
946
|
+
interface MultiStepNavButtonsProps<T> {
|
|
947
|
+
previousLabel: string;
|
|
948
|
+
nextLabel: string;
|
|
949
|
+
endStepLabel: string;
|
|
950
|
+
context: Context<T>;
|
|
951
|
+
debug?: boolean;
|
|
952
|
+
isLoading?: boolean;
|
|
953
|
+
}
|
|
954
|
+
declare function MultiStepNavButtons<T extends UseMultiStepFormTypeOptions$1<any>>({ previousLabel, nextLabel, endStepLabel, debug, context, isLoading, }: MultiStepNavButtonsProps<T>): react_jsx_runtime.JSX.Element;
|
|
955
|
+
|
|
956
|
+
declare const containerCurrentForm: Variants;
|
|
957
|
+
declare const containerSignUpForm: Variants;
|
|
958
|
+
declare const containerMultiStepForm: Variants;
|
|
959
|
+
declare const containerMultiStepNavbar: Variants;
|
|
960
|
+
|
|
961
|
+
type SidebarContextProps = {
|
|
962
|
+
state: "expanded" | "collapsed";
|
|
963
|
+
open: boolean;
|
|
964
|
+
setOpen: (open: boolean) => void;
|
|
965
|
+
openMobile: boolean;
|
|
966
|
+
setOpenMobile: (open: boolean) => void;
|
|
967
|
+
isMobile: boolean;
|
|
968
|
+
toggleSidebar: () => void;
|
|
969
|
+
};
|
|
970
|
+
declare function useSidebar(): SidebarContextProps;
|
|
971
|
+
declare const SidebarProvider: React$1.ForwardRefExoticComponent<Omit<React$1.ClassAttributes<HTMLDivElement> & React$1.HTMLAttributes<HTMLDivElement> & {
|
|
972
|
+
defaultOpen?: boolean;
|
|
973
|
+
open?: boolean;
|
|
974
|
+
onOpenChange?: (open: boolean) => void;
|
|
975
|
+
}, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
976
|
+
declare const Sidebar: React$1.ForwardRefExoticComponent<Omit<React$1.ClassAttributes<HTMLDivElement> & React$1.HTMLAttributes<HTMLDivElement> & {
|
|
977
|
+
side?: "left" | "right";
|
|
978
|
+
variant?: "sidebar" | "floating" | "inset";
|
|
979
|
+
collapsible?: "offcanvas" | "icon" | "none";
|
|
980
|
+
}, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
981
|
+
declare const SidebarGroup: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
982
|
+
|
|
983
|
+
interface NavSubItem {
|
|
984
|
+
title: string;
|
|
985
|
+
url: string;
|
|
986
|
+
visible?: boolean;
|
|
987
|
+
}
|
|
988
|
+
interface NavItem {
|
|
989
|
+
title: string;
|
|
990
|
+
url: string;
|
|
991
|
+
icon?: LucideIcon;
|
|
992
|
+
items?: NavSubItem[];
|
|
993
|
+
visible?: boolean;
|
|
994
|
+
isActive?: boolean;
|
|
995
|
+
}
|
|
996
|
+
interface Project {
|
|
997
|
+
name: string;
|
|
998
|
+
url: string;
|
|
999
|
+
icon: LucideIcon;
|
|
1000
|
+
}
|
|
1001
|
+
interface Team {
|
|
1002
|
+
name: string;
|
|
1003
|
+
logo: LucideIcon | string;
|
|
1004
|
+
plan?: string;
|
|
1005
|
+
}
|
|
1006
|
+
interface User {
|
|
1007
|
+
name?: string;
|
|
1008
|
+
email: string;
|
|
1009
|
+
image?: string;
|
|
1010
|
+
permissions?: string[];
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
interface AppSidebarProps extends React$1.ComponentProps<typeof Sidebar> {
|
|
1014
|
+
teams?: Team[];
|
|
1015
|
+
defaultTeam?: Team;
|
|
1016
|
+
onTeamChange?: (team: Team) => void;
|
|
1017
|
+
onSearch?: (query: string) => void;
|
|
1018
|
+
searchPlaceholder?: string;
|
|
1019
|
+
navItems: NavItem[];
|
|
1020
|
+
navGroupLabel?: string;
|
|
1021
|
+
navSecondary?: {
|
|
1022
|
+
title: string;
|
|
1023
|
+
url: string;
|
|
1024
|
+
icon: LucideIcon;
|
|
1025
|
+
onClick?: () => void;
|
|
1026
|
+
}[];
|
|
1027
|
+
navSecondaryLabel?: string;
|
|
1028
|
+
user?: User;
|
|
1029
|
+
onLogout?: () => void;
|
|
1030
|
+
userMenuItems?: {
|
|
1031
|
+
group: string;
|
|
1032
|
+
items: {
|
|
1033
|
+
label: string;
|
|
1034
|
+
icon: React$1.ComponentType<{
|
|
1035
|
+
className?: string;
|
|
1036
|
+
}>;
|
|
1037
|
+
onClick?: () => void;
|
|
1038
|
+
}[];
|
|
1039
|
+
}[];
|
|
1040
|
+
isLoading?: boolean;
|
|
1041
|
+
defaultOpen?: boolean;
|
|
1042
|
+
open?: boolean;
|
|
1043
|
+
onOpenChange?: (open: boolean) => void;
|
|
1044
|
+
headerClassName?: string;
|
|
1045
|
+
contentClassName?: string;
|
|
1046
|
+
footerClassName?: string;
|
|
1047
|
+
teamSwitcherClassName?: string;
|
|
1048
|
+
searchClassName?: string;
|
|
1049
|
+
navMainClassName?: string;
|
|
1050
|
+
navSecondaryClassName?: string;
|
|
1051
|
+
navSecondaryGroupLabelClassName?: string;
|
|
1052
|
+
navUserClassName?: string;
|
|
1053
|
+
}
|
|
1054
|
+
declare function AppSidebar({ teams, defaultTeam, onTeamChange, onSearch, searchPlaceholder, navItems, navGroupLabel, navSecondary, navSecondaryLabel, user, onLogout, userMenuItems, isLoading, defaultOpen, open, onOpenChange, headerClassName, contentClassName, footerClassName, teamSwitcherClassName, searchClassName, navMainClassName, navSecondaryClassName, navSecondaryGroupLabelClassName, navUserClassName, ...props }: AppSidebarProps): react_jsx_runtime.JSX.Element;
|
|
1055
|
+
|
|
1056
|
+
interface NavMainProps {
|
|
1057
|
+
items: NavItem[];
|
|
1058
|
+
isLoading?: boolean;
|
|
1059
|
+
groupLabel: string;
|
|
1060
|
+
checkActive?: (item: NavItem, pathname: string) => boolean;
|
|
1061
|
+
className?: string;
|
|
1062
|
+
}
|
|
1063
|
+
declare function NavMain({ items, isLoading, groupLabel, checkActive, className }: NavMainProps): react_jsx_runtime.JSX.Element;
|
|
1064
|
+
|
|
1065
|
+
interface NavUserProps {
|
|
1066
|
+
user?: User;
|
|
1067
|
+
isLoading?: boolean;
|
|
1068
|
+
onLogout?: () => void;
|
|
1069
|
+
menuItems?: {
|
|
1070
|
+
group: string;
|
|
1071
|
+
items: {
|
|
1072
|
+
label: string;
|
|
1073
|
+
icon: React__default.ComponentType<{
|
|
1074
|
+
className?: string;
|
|
1075
|
+
}>;
|
|
1076
|
+
onClick?: () => void;
|
|
1077
|
+
}[];
|
|
1078
|
+
}[];
|
|
1079
|
+
className?: string;
|
|
1080
|
+
}
|
|
1081
|
+
declare function NavUser({ user, isLoading, onLogout, menuItems, className }: NavUserProps): react_jsx_runtime.JSX.Element | null;
|
|
1082
|
+
|
|
1083
|
+
interface NavProjectsProps {
|
|
1084
|
+
projects: Project[];
|
|
1085
|
+
groupLabel?: string;
|
|
1086
|
+
onViewProject?: (project: Project) => void;
|
|
1087
|
+
onShareProject?: (project: Project) => void;
|
|
1088
|
+
onDeleteProject?: (project: Project) => void;
|
|
1089
|
+
onMoreClick?: () => void;
|
|
1090
|
+
}
|
|
1091
|
+
declare function NavProjects({ projects, groupLabel, onViewProject, onShareProject, onDeleteProject, onMoreClick }: NavProjectsProps): react_jsx_runtime.JSX.Element;
|
|
1092
|
+
|
|
1093
|
+
interface NavSecondaryItem {
|
|
1094
|
+
title: string;
|
|
1095
|
+
url: string;
|
|
1096
|
+
icon: LucideIcon;
|
|
1097
|
+
onClick?: () => void;
|
|
1098
|
+
}
|
|
1099
|
+
interface NavSecondaryProps extends React$1.ComponentPropsWithoutRef<typeof SidebarGroup> {
|
|
1100
|
+
items: NavSecondaryItem[];
|
|
1101
|
+
isLoading?: boolean;
|
|
1102
|
+
groupLabel?: string;
|
|
1103
|
+
groupLabelClassName?: string;
|
|
1104
|
+
}
|
|
1105
|
+
declare function NavSecondary({ items, isLoading, groupLabel, groupLabelClassName, ...props }: NavSecondaryProps): react_jsx_runtime.JSX.Element;
|
|
1106
|
+
|
|
1107
|
+
interface SearchFormProps {
|
|
1108
|
+
onSearch: (query: string) => void;
|
|
1109
|
+
isLoading?: boolean;
|
|
1110
|
+
placeholder?: string;
|
|
1111
|
+
initialQuery?: string;
|
|
1112
|
+
className?: string;
|
|
1113
|
+
}
|
|
1114
|
+
declare function SearchForm({ onSearch, isLoading, placeholder, initialQuery, className }: SearchFormProps): react_jsx_runtime.JSX.Element;
|
|
1115
|
+
|
|
1116
|
+
interface TeamSwitcherProps {
|
|
1117
|
+
teams: Team[];
|
|
1118
|
+
isLoading?: boolean;
|
|
1119
|
+
defaultTeam?: Team;
|
|
1120
|
+
onTeamChange?: (team: Team) => void;
|
|
1121
|
+
className?: string;
|
|
1122
|
+
}
|
|
1123
|
+
declare function TeamSwitcher({ teams, isLoading, defaultTeam, onTeamChange, className }: TeamSwitcherProps): react_jsx_runtime.JSX.Element;
|
|
1124
|
+
|
|
1125
|
+
type TankShape = "lying-cylindrical" | "lying-rectangular" | "standard-round-view" | "standing-cylindrical" | "standing-rectangular";
|
|
1126
|
+
interface TankLevelVisualizationProps {
|
|
1127
|
+
percent: number;
|
|
1128
|
+
shape: TankShape;
|
|
1129
|
+
productColor?: string;
|
|
1130
|
+
className?: string;
|
|
1131
|
+
showNote?: string;
|
|
1132
|
+
}
|
|
1133
|
+
declare const TankLevelVisualization: ({ percent, shape, productColor, className, showNote, }: TankLevelVisualizationProps) => react_jsx_runtime.JSX.Element;
|
|
1134
|
+
|
|
1135
|
+
interface TankCardProps {
|
|
1136
|
+
tankName: string;
|
|
1137
|
+
capacity: number;
|
|
1138
|
+
volume: number;
|
|
1139
|
+
percentFill: number;
|
|
1140
|
+
product: string;
|
|
1141
|
+
siteName: string;
|
|
1142
|
+
lastUpdated: string;
|
|
1143
|
+
status: "ONLINE" | "OFFLINE" | "INACTIVE";
|
|
1144
|
+
waterLevel?: number;
|
|
1145
|
+
unit?: string;
|
|
1146
|
+
alarmType?: string;
|
|
1147
|
+
shape?: TankShape;
|
|
1148
|
+
productColor?: string;
|
|
1149
|
+
className?: string;
|
|
1150
|
+
}
|
|
1151
|
+
declare const TankCard: ({ tankName, capacity, volume, percentFill, product, siteName, lastUpdated, status, waterLevel, unit, alarmType, shape, productColor, className, }: TankCardProps) => react_jsx_runtime.JSX.Element;
|
|
1152
|
+
|
|
1153
|
+
export { type AdvancedFilter, AdvancedFilterBuilder, type AdvancedFilterBuilderProps, type AdvancedSort, AdvancedSortBuilder, type AdvancedSortBuilderProps, AppSidebar, type AppSidebarProps, Breadcrumbs, type BreadcrumbsProps, ColorPicker, type ColorPickerProps, type ColumnDef, type Country, DIRECTIONS, DataTable, DataTableBody, type DataTableBodyProps, type DataTableFeatures, DataTableGridView, type DataTableGridViewProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableToolbar, type DataTableToolbarProps, type DataTableViewState, DateTimePicker, type DateTimePickerProps, type DateValue, FileInput, type FileInputProps, type FileWithPreview, type Form$1 as Form, type HSL, MAX_VISIBLE_TAGS, MultiSelect, type MultiSelectProps, type MultiStepNavBarProps, MultiStepNavButtons, type MultiStepNavButtonsProps, MultiStepNavbar, type NavItem, NavMain, NavProjects, NavSecondary, type NavSubItem, NavUser, OPERATORS, type OptionType, PasswordInput, type PasswordInputProps, type PhoneData, PhoneInput, type PickerValue, type Project, type RGB, type RangeValue, ResizableHeader, type ResizableHeaderProps, ResponsiveAlertDialog, type ResponsiveAlertDialogProps, ResponsiveDialog, type ResponsiveDialogProps, SearchForm, SidebarProvider, TagInput, type TagInputProps, TankCard, type TankCardProps, TankLevelVisualization, type TankShape, type Team, TeamSwitcher, type UseMultiStepFormTypeOptions$1 as UseMultiStepFormTypeOptions, type User, containerCurrentForm, containerMultiStepForm, containerMultiStepNavbar, containerSignUpForm, defaultFeatures, getPhoneData, useMultiStepForm, useSidebar };
|