analytica-frontend-lib 1.0.20 → 1.0.22
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/dist/index.css +103 -0
- package/dist/index.d.mts +71 -5
- package/dist/index.d.ts +71 -5
- package/dist/index.js +237 -93
- package/dist/index.mjs +235 -88
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -156,14 +156,13 @@ var Text = ({
|
|
|
156
156
|
children,
|
|
157
157
|
size = "md",
|
|
158
158
|
weight = "normal",
|
|
159
|
-
color = "
|
|
159
|
+
color = "text-text-950",
|
|
160
160
|
as,
|
|
161
161
|
className = "",
|
|
162
162
|
...props
|
|
163
163
|
}) => {
|
|
164
164
|
let sizeClasses = "";
|
|
165
165
|
let weightClasses = "";
|
|
166
|
-
let colorClasses = "";
|
|
167
166
|
const sizeClassMap = {
|
|
168
167
|
"2xs": "text-2xs",
|
|
169
168
|
xs: "text-xs",
|
|
@@ -189,26 +188,156 @@ var Text = ({
|
|
|
189
188
|
black: "font-black"
|
|
190
189
|
};
|
|
191
190
|
weightClasses = weightClassMap[weight] ?? weightClassMap.normal;
|
|
192
|
-
const colorClassMap = {
|
|
193
|
-
white: "text-text",
|
|
194
|
-
black: "text-text-950"
|
|
195
|
-
};
|
|
196
|
-
colorClasses = colorClassMap[color] ?? colorClassMap.black;
|
|
197
191
|
const baseClasses = "font-primary";
|
|
198
192
|
const Component = as ?? "p";
|
|
199
193
|
return /* @__PURE__ */ jsx4(
|
|
200
194
|
Component,
|
|
201
195
|
{
|
|
202
|
-
className: `${baseClasses} ${sizeClasses} ${weightClasses} ${
|
|
196
|
+
className: `${baseClasses} ${sizeClasses} ${weightClasses} ${color} ${className}`,
|
|
203
197
|
...props,
|
|
204
198
|
children
|
|
205
199
|
}
|
|
206
200
|
);
|
|
207
201
|
};
|
|
208
202
|
|
|
203
|
+
// src/components/TextArea/TextArea.tsx
|
|
204
|
+
import {
|
|
205
|
+
forwardRef as forwardRef2,
|
|
206
|
+
useState,
|
|
207
|
+
useId
|
|
208
|
+
} from "react";
|
|
209
|
+
import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
210
|
+
var SIZE_CLASSES2 = {
|
|
211
|
+
small: {
|
|
212
|
+
container: "w-72",
|
|
213
|
+
// 288px width
|
|
214
|
+
textarea: "h-24 text-sm",
|
|
215
|
+
// 96px height, 14px font
|
|
216
|
+
textSize: "sm"
|
|
217
|
+
},
|
|
218
|
+
medium: {
|
|
219
|
+
container: "w-72",
|
|
220
|
+
// 288px width
|
|
221
|
+
textarea: "h-24 text-base",
|
|
222
|
+
// 96px height, 16px font
|
|
223
|
+
textSize: "md"
|
|
224
|
+
},
|
|
225
|
+
large: {
|
|
226
|
+
container: "w-72",
|
|
227
|
+
// 288px width
|
|
228
|
+
textarea: "h-24 text-lg",
|
|
229
|
+
// 96px height, 18px font
|
|
230
|
+
textSize: "lg"
|
|
231
|
+
},
|
|
232
|
+
extraLarge: {
|
|
233
|
+
container: "w-72",
|
|
234
|
+
// 288px width
|
|
235
|
+
textarea: "h-24 text-xl",
|
|
236
|
+
// 96px height, 20px font
|
|
237
|
+
textSize: "xl"
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
var BASE_TEXTAREA_CLASSES = "w-full box-border p-3 bg-background border border-solid rounded-[4px] resize-none focus:outline-none font-roboto font-normal leading-[150%] placeholder:text-text-600 transition-all duration-200";
|
|
241
|
+
var STATE_CLASSES = {
|
|
242
|
+
default: {
|
|
243
|
+
base: "border-border-300 bg-background text-text-600",
|
|
244
|
+
hover: "hover:border-border-400",
|
|
245
|
+
focus: "focus:border-border-500"
|
|
246
|
+
},
|
|
247
|
+
hovered: {
|
|
248
|
+
base: "border-border-400 bg-background text-text-600",
|
|
249
|
+
hover: "",
|
|
250
|
+
focus: "focus:border-border-500"
|
|
251
|
+
},
|
|
252
|
+
focused: {
|
|
253
|
+
base: "border-2 border-primary-950 bg-background text-text-900",
|
|
254
|
+
hover: "",
|
|
255
|
+
focus: ""
|
|
256
|
+
},
|
|
257
|
+
invalid: {
|
|
258
|
+
base: "border-2 border-red-700 bg-white text-gray-800",
|
|
259
|
+
hover: "hover:border-red-700",
|
|
260
|
+
focus: "focus:border-red-700"
|
|
261
|
+
},
|
|
262
|
+
disabled: {
|
|
263
|
+
base: "border-border-300 bg-background text-text-600 cursor-not-allowed opacity-40",
|
|
264
|
+
hover: "",
|
|
265
|
+
focus: ""
|
|
266
|
+
}
|
|
267
|
+
};
|
|
268
|
+
var TextArea = forwardRef2(
|
|
269
|
+
({
|
|
270
|
+
label,
|
|
271
|
+
size = "medium",
|
|
272
|
+
state = "default",
|
|
273
|
+
errorMessage,
|
|
274
|
+
helperMessage,
|
|
275
|
+
className = "",
|
|
276
|
+
labelClassName = "",
|
|
277
|
+
disabled,
|
|
278
|
+
id,
|
|
279
|
+
onChange,
|
|
280
|
+
placeholder,
|
|
281
|
+
...props
|
|
282
|
+
}, ref) => {
|
|
283
|
+
const generatedId = useId();
|
|
284
|
+
const inputId = id ?? `textarea-${generatedId}`;
|
|
285
|
+
const [isFocused, setIsFocused] = useState(false);
|
|
286
|
+
const handleChange = (event) => {
|
|
287
|
+
onChange?.(event);
|
|
288
|
+
};
|
|
289
|
+
const handleFocus = (event) => {
|
|
290
|
+
setIsFocused(true);
|
|
291
|
+
props.onFocus?.(event);
|
|
292
|
+
};
|
|
293
|
+
const handleBlur = (event) => {
|
|
294
|
+
setIsFocused(false);
|
|
295
|
+
props.onBlur?.(event);
|
|
296
|
+
};
|
|
297
|
+
let currentState = disabled ? "disabled" : state;
|
|
298
|
+
if (isFocused && currentState !== "invalid" && currentState !== "disabled") {
|
|
299
|
+
currentState = "focused";
|
|
300
|
+
}
|
|
301
|
+
const sizeClasses = SIZE_CLASSES2[size];
|
|
302
|
+
const stateClasses = STATE_CLASSES[currentState];
|
|
303
|
+
const textareaClasses = `${BASE_TEXTAREA_CLASSES} ${sizeClasses.textarea} ${stateClasses.base} ${stateClasses.hover} ${stateClasses.focus} ${className}`;
|
|
304
|
+
return /* @__PURE__ */ jsxs3("div", { className: `flex flex-col ${sizeClasses.container}`, children: [
|
|
305
|
+
label && /* @__PURE__ */ jsx5(
|
|
306
|
+
Text,
|
|
307
|
+
{
|
|
308
|
+
as: "label",
|
|
309
|
+
htmlFor: inputId,
|
|
310
|
+
size: sizeClasses.textSize,
|
|
311
|
+
weight: "medium",
|
|
312
|
+
color: "text-text-950",
|
|
313
|
+
className: `mb-1.5 ${labelClassName}`,
|
|
314
|
+
children: label
|
|
315
|
+
}
|
|
316
|
+
),
|
|
317
|
+
/* @__PURE__ */ jsx5(
|
|
318
|
+
"textarea",
|
|
319
|
+
{
|
|
320
|
+
ref,
|
|
321
|
+
id: inputId,
|
|
322
|
+
disabled,
|
|
323
|
+
onChange: handleChange,
|
|
324
|
+
onFocus: handleFocus,
|
|
325
|
+
onBlur: handleBlur,
|
|
326
|
+
className: textareaClasses,
|
|
327
|
+
placeholder,
|
|
328
|
+
...props
|
|
329
|
+
}
|
|
330
|
+
),
|
|
331
|
+
errorMessage && /* @__PURE__ */ jsx5(Text, { size: "sm", weight: "normal", className: "mt-1.5 text-error-600", children: errorMessage }),
|
|
332
|
+
helperMessage && !errorMessage && /* @__PURE__ */ jsx5(Text, { size: "sm", weight: "normal", className: "mt-1.5 text-text-500", children: helperMessage })
|
|
333
|
+
] });
|
|
334
|
+
}
|
|
335
|
+
);
|
|
336
|
+
TextArea.displayName = "TextArea";
|
|
337
|
+
|
|
209
338
|
// src/components/Badge/Badge.tsx
|
|
210
339
|
import { Bell } from "phosphor-react";
|
|
211
|
-
import { jsx as
|
|
340
|
+
import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
212
341
|
var VARIANT_ACTION_CLASSES2 = {
|
|
213
342
|
solid: {
|
|
214
343
|
error: "bg-error text-error-700 focus-visible:outline-none",
|
|
@@ -236,7 +365,7 @@ var VARIANT_ACTION_CLASSES2 = {
|
|
|
236
365
|
},
|
|
237
366
|
notification: "text-primary"
|
|
238
367
|
};
|
|
239
|
-
var
|
|
368
|
+
var SIZE_CLASSES3 = {
|
|
240
369
|
small: "text-2xs px-2 py-1",
|
|
241
370
|
medium: "text-xs px-2 py-1",
|
|
242
371
|
large: "text-sm px-2 py-1"
|
|
@@ -257,21 +386,21 @@ var Badge = ({
|
|
|
257
386
|
notificationActive = false,
|
|
258
387
|
...props
|
|
259
388
|
}) => {
|
|
260
|
-
const sizeClasses =
|
|
389
|
+
const sizeClasses = SIZE_CLASSES3[size];
|
|
261
390
|
const sizeClassesIcon = SIZE_CLASSES_ICON[size];
|
|
262
391
|
const variantActionMap = VARIANT_ACTION_CLASSES2[variant] || {};
|
|
263
392
|
const variantClasses = typeof variantActionMap === "string" ? variantActionMap : variantActionMap[action] ?? variantActionMap.muted ?? "";
|
|
264
393
|
const baseClasses = "inline-flex items-center justify-center rounded-xs font-medium gap-1 relative";
|
|
265
394
|
const baseClassesIcon = "flex items-center";
|
|
266
395
|
if (variant === "notification") {
|
|
267
|
-
return /* @__PURE__ */
|
|
396
|
+
return /* @__PURE__ */ jsxs4(
|
|
268
397
|
"div",
|
|
269
398
|
{
|
|
270
399
|
className: `${baseClasses} ${variantClasses} ${sizeClasses} ${className}`,
|
|
271
400
|
...props,
|
|
272
401
|
children: [
|
|
273
|
-
/* @__PURE__ */
|
|
274
|
-
notificationActive && /* @__PURE__ */
|
|
402
|
+
/* @__PURE__ */ jsx6(Bell, { size: 24, className: "text-primary-950" }),
|
|
403
|
+
notificationActive && /* @__PURE__ */ jsx6(
|
|
275
404
|
"span",
|
|
276
405
|
{
|
|
277
406
|
"data-testid": "notification-dot",
|
|
@@ -282,15 +411,15 @@ var Badge = ({
|
|
|
282
411
|
}
|
|
283
412
|
);
|
|
284
413
|
}
|
|
285
|
-
return /* @__PURE__ */
|
|
414
|
+
return /* @__PURE__ */ jsxs4(
|
|
286
415
|
"div",
|
|
287
416
|
{
|
|
288
417
|
className: `${baseClasses} ${variantClasses} ${sizeClasses} ${className}`,
|
|
289
418
|
...props,
|
|
290
419
|
children: [
|
|
291
|
-
iconLeft && /* @__PURE__ */
|
|
420
|
+
iconLeft && /* @__PURE__ */ jsx6("span", { className: `${baseClassesIcon} ${sizeClassesIcon}`, children: iconLeft }),
|
|
292
421
|
children,
|
|
293
|
-
iconRight && /* @__PURE__ */
|
|
422
|
+
iconRight && /* @__PURE__ */ jsx6("span", { className: `${baseClassesIcon} ${sizeClassesIcon}`, children: iconRight })
|
|
294
423
|
]
|
|
295
424
|
}
|
|
296
425
|
);
|
|
@@ -298,13 +427,13 @@ var Badge = ({
|
|
|
298
427
|
|
|
299
428
|
// src/components/CheckBox/CheckBox.tsx
|
|
300
429
|
import {
|
|
301
|
-
forwardRef as
|
|
302
|
-
useState,
|
|
303
|
-
useId
|
|
430
|
+
forwardRef as forwardRef3,
|
|
431
|
+
useState as useState2,
|
|
432
|
+
useId as useId2
|
|
304
433
|
} from "react";
|
|
305
434
|
import { Check, Minus } from "phosphor-react";
|
|
306
|
-
import { jsx as
|
|
307
|
-
var
|
|
435
|
+
import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
436
|
+
var SIZE_CLASSES4 = {
|
|
308
437
|
small: {
|
|
309
438
|
checkbox: "w-4 h-4",
|
|
310
439
|
// 16px x 16px
|
|
@@ -341,7 +470,7 @@ var SIZE_CLASSES3 = {
|
|
|
341
470
|
}
|
|
342
471
|
};
|
|
343
472
|
var BASE_CHECKBOX_CLASSES = "rounded border cursor-pointer transition-all duration-200 flex items-center justify-center focus:outline-none";
|
|
344
|
-
var
|
|
473
|
+
var STATE_CLASSES2 = {
|
|
345
474
|
default: {
|
|
346
475
|
unchecked: "border-border-400 bg-background hover:border-border-500",
|
|
347
476
|
checked: "border-primary-950 bg-primary-950 text-text hover:border-primary-800 hover:bg-primary-800"
|
|
@@ -363,7 +492,7 @@ var STATE_CLASSES = {
|
|
|
363
492
|
checked: "border-primary-600 bg-primary-600 text-text cursor-not-allowed opacity-40"
|
|
364
493
|
}
|
|
365
494
|
};
|
|
366
|
-
var CheckBox =
|
|
495
|
+
var CheckBox = forwardRef3(
|
|
367
496
|
({
|
|
368
497
|
label,
|
|
369
498
|
size = "medium",
|
|
@@ -379,9 +508,9 @@ var CheckBox = forwardRef2(
|
|
|
379
508
|
onChange,
|
|
380
509
|
...props
|
|
381
510
|
}, ref) => {
|
|
382
|
-
const generatedId =
|
|
511
|
+
const generatedId = useId2();
|
|
383
512
|
const inputId = id ?? `checkbox-${generatedId}`;
|
|
384
|
-
const [internalChecked, setInternalChecked] =
|
|
513
|
+
const [internalChecked, setInternalChecked] = useState2(false);
|
|
385
514
|
const isControlled = checkedProp !== void 0;
|
|
386
515
|
const checked = isControlled ? checkedProp : internalChecked;
|
|
387
516
|
const handleChange = (event) => {
|
|
@@ -391,14 +520,14 @@ var CheckBox = forwardRef2(
|
|
|
391
520
|
onChange?.(event);
|
|
392
521
|
};
|
|
393
522
|
const currentState = disabled ? "disabled" : state;
|
|
394
|
-
const sizeClasses =
|
|
523
|
+
const sizeClasses = SIZE_CLASSES4[size];
|
|
395
524
|
const checkVariant = checked || indeterminate ? "checked" : "unchecked";
|
|
396
|
-
const stylingClasses =
|
|
525
|
+
const stylingClasses = STATE_CLASSES2[currentState][checkVariant];
|
|
397
526
|
const borderWidthClass = state === "focused" || state === "hovered" && size === "large" ? "border-[3px]" : sizeClasses.borderWidth;
|
|
398
527
|
const checkboxClasses = `${BASE_CHECKBOX_CLASSES} ${sizeClasses.checkbox} ${borderWidthClass} ${stylingClasses} ${className}`;
|
|
399
528
|
const renderIcon = () => {
|
|
400
529
|
if (indeterminate) {
|
|
401
|
-
return /* @__PURE__ */
|
|
530
|
+
return /* @__PURE__ */ jsx7(
|
|
402
531
|
Minus,
|
|
403
532
|
{
|
|
404
533
|
size: sizeClasses.iconSize,
|
|
@@ -408,7 +537,7 @@ var CheckBox = forwardRef2(
|
|
|
408
537
|
);
|
|
409
538
|
}
|
|
410
539
|
if (checked) {
|
|
411
|
-
return /* @__PURE__ */
|
|
540
|
+
return /* @__PURE__ */ jsx7(
|
|
412
541
|
Check,
|
|
413
542
|
{
|
|
414
543
|
size: sizeClasses.iconSize,
|
|
@@ -419,13 +548,13 @@ var CheckBox = forwardRef2(
|
|
|
419
548
|
}
|
|
420
549
|
return null;
|
|
421
550
|
};
|
|
422
|
-
return /* @__PURE__ */
|
|
423
|
-
/* @__PURE__ */
|
|
551
|
+
return /* @__PURE__ */ jsxs5("div", { className: "flex flex-col", children: [
|
|
552
|
+
/* @__PURE__ */ jsxs5(
|
|
424
553
|
"div",
|
|
425
554
|
{
|
|
426
555
|
className: `flex flex-row items-center ${sizeClasses.spacing} ${disabled ? "opacity-40" : ""}`,
|
|
427
556
|
children: [
|
|
428
|
-
/* @__PURE__ */
|
|
557
|
+
/* @__PURE__ */ jsx7(
|
|
429
558
|
"input",
|
|
430
559
|
{
|
|
431
560
|
ref,
|
|
@@ -438,19 +567,18 @@ var CheckBox = forwardRef2(
|
|
|
438
567
|
...props
|
|
439
568
|
}
|
|
440
569
|
),
|
|
441
|
-
/* @__PURE__ */
|
|
442
|
-
label && /* @__PURE__ */
|
|
570
|
+
/* @__PURE__ */ jsx7("label", { htmlFor: inputId, className: checkboxClasses, children: renderIcon() }),
|
|
571
|
+
label && /* @__PURE__ */ jsx7(
|
|
443
572
|
"div",
|
|
444
573
|
{
|
|
445
574
|
className: `flex flex-row items-center ${sizeClasses.labelHeight}`,
|
|
446
|
-
children: /* @__PURE__ */
|
|
575
|
+
children: /* @__PURE__ */ jsx7(
|
|
447
576
|
Text,
|
|
448
577
|
{
|
|
449
578
|
as: "label",
|
|
450
579
|
htmlFor: inputId,
|
|
451
580
|
size: sizeClasses.textSize,
|
|
452
581
|
weight: "normal",
|
|
453
|
-
color: "black",
|
|
454
582
|
className: `cursor-pointer select-none leading-[150%] flex items-center font-roboto ${labelClassName}`,
|
|
455
583
|
children: label
|
|
456
584
|
}
|
|
@@ -460,32 +588,50 @@ var CheckBox = forwardRef2(
|
|
|
460
588
|
]
|
|
461
589
|
}
|
|
462
590
|
),
|
|
463
|
-
errorMessage && /* @__PURE__ */
|
|
464
|
-
|
|
591
|
+
errorMessage && /* @__PURE__ */ jsx7(
|
|
592
|
+
Text,
|
|
593
|
+
{
|
|
594
|
+
size: "sm",
|
|
595
|
+
weight: "normal",
|
|
596
|
+
className: "mt-1.5",
|
|
597
|
+
color: "text-error-600",
|
|
598
|
+
children: errorMessage
|
|
599
|
+
}
|
|
600
|
+
),
|
|
601
|
+
helperText && !errorMessage && /* @__PURE__ */ jsx7(
|
|
602
|
+
Text,
|
|
603
|
+
{
|
|
604
|
+
size: "sm",
|
|
605
|
+
weight: "normal",
|
|
606
|
+
className: "mt-1.5",
|
|
607
|
+
color: "text-text-500",
|
|
608
|
+
children: helperText
|
|
609
|
+
}
|
|
610
|
+
)
|
|
465
611
|
] });
|
|
466
612
|
}
|
|
467
613
|
);
|
|
468
614
|
CheckBox.displayName = "CheckBox";
|
|
469
615
|
|
|
470
616
|
// src/components/Table/Table.tsx
|
|
471
|
-
import { forwardRef as
|
|
472
|
-
import { jsx as
|
|
473
|
-
var Table =
|
|
474
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
617
|
+
import { forwardRef as forwardRef4 } from "react";
|
|
618
|
+
import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
619
|
+
var Table = forwardRef4(
|
|
620
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ jsx8("div", { className: "border border-border-200 rounded-xl relative w-full overflow-hidden", children: /* @__PURE__ */ jsxs6(
|
|
475
621
|
"table",
|
|
476
622
|
{
|
|
477
623
|
ref,
|
|
478
624
|
className: `w-full caption-bottom text-sm ${className ?? ""}`,
|
|
479
625
|
...props,
|
|
480
626
|
children: [
|
|
481
|
-
/* @__PURE__ */
|
|
627
|
+
/* @__PURE__ */ jsx8("caption", { className: "sr-only", children: "My Table" }),
|
|
482
628
|
children
|
|
483
629
|
]
|
|
484
630
|
}
|
|
485
631
|
) })
|
|
486
632
|
);
|
|
487
633
|
Table.displayName = "Table";
|
|
488
|
-
var TableHeader =
|
|
634
|
+
var TableHeader = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
489
635
|
"thead",
|
|
490
636
|
{
|
|
491
637
|
ref,
|
|
@@ -494,7 +640,7 @@ var TableHeader = forwardRef3(({ className, ...props }, ref) => /* @__PURE__ */
|
|
|
494
640
|
}
|
|
495
641
|
));
|
|
496
642
|
TableHeader.displayName = "TableHeader";
|
|
497
|
-
var TableBody =
|
|
643
|
+
var TableBody = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
498
644
|
"tbody",
|
|
499
645
|
{
|
|
500
646
|
ref,
|
|
@@ -503,7 +649,7 @@ var TableBody = forwardRef3(({ className, ...props }, ref) => /* @__PURE__ */ js
|
|
|
503
649
|
}
|
|
504
650
|
));
|
|
505
651
|
TableBody.displayName = "TableBody";
|
|
506
|
-
var TableFooter =
|
|
652
|
+
var TableFooter = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
507
653
|
"tfoot",
|
|
508
654
|
{
|
|
509
655
|
ref,
|
|
@@ -518,9 +664,9 @@ var VARIANT_STATES_ROW = {
|
|
|
518
664
|
invalid: "border-b-2 border-indicator-error",
|
|
519
665
|
disabled: "border-b border-border-100 bg-background-50 opacity-50 cursor-not-allowed"
|
|
520
666
|
};
|
|
521
|
-
var TableRow =
|
|
667
|
+
var TableRow = forwardRef4(
|
|
522
668
|
({ state = "default", className, ...props }, ref) => {
|
|
523
|
-
return /* @__PURE__ */
|
|
669
|
+
return /* @__PURE__ */ jsx8(
|
|
524
670
|
"tr",
|
|
525
671
|
{
|
|
526
672
|
ref,
|
|
@@ -537,7 +683,7 @@ var TableRow = forwardRef3(
|
|
|
537
683
|
}
|
|
538
684
|
);
|
|
539
685
|
TableRow.displayName = "TableRow";
|
|
540
|
-
var TableHead =
|
|
686
|
+
var TableHead = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
541
687
|
"th",
|
|
542
688
|
{
|
|
543
689
|
ref,
|
|
@@ -546,7 +692,7 @@ var TableHead = forwardRef3(({ className, ...props }, ref) => /* @__PURE__ */ js
|
|
|
546
692
|
}
|
|
547
693
|
));
|
|
548
694
|
TableHead.displayName = "TableHead";
|
|
549
|
-
var TableCell =
|
|
695
|
+
var TableCell = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
550
696
|
"td",
|
|
551
697
|
{
|
|
552
698
|
ref,
|
|
@@ -555,7 +701,7 @@ var TableCell = forwardRef3(({ className, ...props }, ref) => /* @__PURE__ */ js
|
|
|
555
701
|
}
|
|
556
702
|
));
|
|
557
703
|
TableCell.displayName = "TableCell";
|
|
558
|
-
var TableCaption =
|
|
704
|
+
var TableCaption = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
|
|
559
705
|
"caption",
|
|
560
706
|
{
|
|
561
707
|
ref,
|
|
@@ -568,20 +714,20 @@ TableCaption.displayName = "TableCaption";
|
|
|
568
714
|
// src/components/DropdownMenu/DropdownMenu.tsx
|
|
569
715
|
import {
|
|
570
716
|
createContext,
|
|
571
|
-
useState as
|
|
717
|
+
useState as useState3,
|
|
572
718
|
useCallback,
|
|
573
719
|
useContext,
|
|
574
|
-
forwardRef as
|
|
720
|
+
forwardRef as forwardRef5,
|
|
575
721
|
useEffect,
|
|
576
722
|
useRef,
|
|
577
723
|
useMemo
|
|
578
724
|
} from "react";
|
|
579
|
-
import { jsx as
|
|
725
|
+
import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
580
726
|
var DropdownMenuContext = createContext(
|
|
581
727
|
void 0
|
|
582
728
|
);
|
|
583
729
|
var DropdownMenu = ({ children, open, onOpenChange }) => {
|
|
584
|
-
const [internalOpen, setInternalOpen] =
|
|
730
|
+
const [internalOpen, setInternalOpen] = useState3(false);
|
|
585
731
|
const isControlled = open !== void 0;
|
|
586
732
|
const currentOpen = isControlled ? open : internalOpen;
|
|
587
733
|
const setOpen = useCallback(
|
|
@@ -639,14 +785,14 @@ var DropdownMenu = ({ children, open, onOpenChange }) => {
|
|
|
639
785
|
() => ({ open: currentOpen, setOpen }),
|
|
640
786
|
[currentOpen, setOpen]
|
|
641
787
|
);
|
|
642
|
-
return /* @__PURE__ */
|
|
788
|
+
return /* @__PURE__ */ jsx9(DropdownMenuContext.Provider, { value, children: /* @__PURE__ */ jsx9("div", { className: "relative", ref: menuRef, children }) });
|
|
643
789
|
};
|
|
644
|
-
var DropdownMenuTrigger =
|
|
790
|
+
var DropdownMenuTrigger = forwardRef5(({ className, children, onClick, ...props }, ref) => {
|
|
645
791
|
const context = useContext(DropdownMenuContext);
|
|
646
792
|
if (!context)
|
|
647
793
|
throw new Error("DropdownMenuTrigger must be used within a DropdownMenu");
|
|
648
794
|
const { open, setOpen } = context;
|
|
649
|
-
return /* @__PURE__ */
|
|
795
|
+
return /* @__PURE__ */ jsx9(
|
|
650
796
|
"button",
|
|
651
797
|
{
|
|
652
798
|
ref,
|
|
@@ -678,7 +824,7 @@ var ALIGN_CLASSES = {
|
|
|
678
824
|
center: "left-1/2 -translate-x-1/2",
|
|
679
825
|
end: "right-0"
|
|
680
826
|
};
|
|
681
|
-
var MenuLabel =
|
|
827
|
+
var MenuLabel = forwardRef5(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx9(
|
|
682
828
|
"fieldset",
|
|
683
829
|
{
|
|
684
830
|
ref,
|
|
@@ -688,7 +834,7 @@ var MenuLabel = forwardRef4(({ className, inset, ...props }, ref) => /* @__PURE_
|
|
|
688
834
|
}
|
|
689
835
|
));
|
|
690
836
|
MenuLabel.displayName = "MenuLabel";
|
|
691
|
-
var MenuContent =
|
|
837
|
+
var MenuContent = forwardRef5(
|
|
692
838
|
({
|
|
693
839
|
className,
|
|
694
840
|
align = "start",
|
|
@@ -698,7 +844,7 @@ var MenuContent = forwardRef4(
|
|
|
698
844
|
...props
|
|
699
845
|
}, ref) => {
|
|
700
846
|
const { open } = useContext(DropdownMenuContext);
|
|
701
|
-
const [isVisible, setIsVisible] =
|
|
847
|
+
const [isVisible, setIsVisible] = useState3(open);
|
|
702
848
|
useEffect(() => {
|
|
703
849
|
if (open) {
|
|
704
850
|
setIsVisible(true);
|
|
@@ -713,7 +859,7 @@ var MenuContent = forwardRef4(
|
|
|
713
859
|
const horizontal = ALIGN_CLASSES[align];
|
|
714
860
|
return `absolute ${vertical} ${horizontal}`;
|
|
715
861
|
};
|
|
716
|
-
return /* @__PURE__ */
|
|
862
|
+
return /* @__PURE__ */ jsx9(
|
|
717
863
|
"div",
|
|
718
864
|
{
|
|
719
865
|
ref,
|
|
@@ -737,7 +883,7 @@ var MenuContent = forwardRef4(
|
|
|
737
883
|
}
|
|
738
884
|
);
|
|
739
885
|
MenuContent.displayName = "MenuContent";
|
|
740
|
-
var MenuItem =
|
|
886
|
+
var MenuItem = forwardRef5(
|
|
741
887
|
({
|
|
742
888
|
className,
|
|
743
889
|
inset,
|
|
@@ -758,7 +904,7 @@ var MenuItem = forwardRef4(
|
|
|
758
904
|
}
|
|
759
905
|
onClick?.(e);
|
|
760
906
|
};
|
|
761
|
-
return /* @__PURE__ */
|
|
907
|
+
return /* @__PURE__ */ jsxs7(
|
|
762
908
|
"div",
|
|
763
909
|
{
|
|
764
910
|
ref,
|
|
@@ -788,7 +934,7 @@ var MenuItem = forwardRef4(
|
|
|
788
934
|
}
|
|
789
935
|
);
|
|
790
936
|
MenuItem.displayName = "MenuItem";
|
|
791
|
-
var MenuSeparator =
|
|
937
|
+
var MenuSeparator = forwardRef5(({ className, ...props }, ref) => /* @__PURE__ */ jsx9(
|
|
792
938
|
"div",
|
|
793
939
|
{
|
|
794
940
|
ref,
|
|
@@ -799,9 +945,9 @@ var MenuSeparator = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ *
|
|
|
799
945
|
MenuSeparator.displayName = "MenuSeparator";
|
|
800
946
|
|
|
801
947
|
// src/components/NavButton/NavButton.tsx
|
|
802
|
-
import { forwardRef as
|
|
803
|
-
import { jsx as
|
|
804
|
-
var NavButton =
|
|
948
|
+
import { forwardRef as forwardRef6 } from "react";
|
|
949
|
+
import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
950
|
+
var NavButton = forwardRef6(
|
|
805
951
|
({ icon, label, selected = false, className = "", disabled, ...props }, ref) => {
|
|
806
952
|
const baseClasses = [
|
|
807
953
|
"flex",
|
|
@@ -828,7 +974,7 @@ var NavButton = forwardRef5(
|
|
|
828
974
|
];
|
|
829
975
|
const stateClasses = selected ? ["bg-primary-50", "text-primary-950"] : [];
|
|
830
976
|
const allClasses = [...baseClasses, ...stateClasses].join(" ");
|
|
831
|
-
return /* @__PURE__ */
|
|
977
|
+
return /* @__PURE__ */ jsxs8(
|
|
832
978
|
"button",
|
|
833
979
|
{
|
|
834
980
|
ref,
|
|
@@ -838,8 +984,8 @@ var NavButton = forwardRef5(
|
|
|
838
984
|
"aria-pressed": selected,
|
|
839
985
|
...props,
|
|
840
986
|
children: [
|
|
841
|
-
/* @__PURE__ */
|
|
842
|
-
/* @__PURE__ */
|
|
987
|
+
/* @__PURE__ */ jsx10("span", { className: "flex items-center justify-center w-5 h-5", children: icon }),
|
|
988
|
+
/* @__PURE__ */ jsx10("span", { className: "whitespace-nowrap", children: label })
|
|
843
989
|
]
|
|
844
990
|
}
|
|
845
991
|
);
|
|
@@ -848,9 +994,9 @@ var NavButton = forwardRef5(
|
|
|
848
994
|
NavButton.displayName = "NavButton";
|
|
849
995
|
|
|
850
996
|
// src/components/IconButton/IconButton.tsx
|
|
851
|
-
import { forwardRef as
|
|
852
|
-
import { jsx as
|
|
853
|
-
var IconButton =
|
|
997
|
+
import { forwardRef as forwardRef7 } from "react";
|
|
998
|
+
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
999
|
+
var IconButton = forwardRef7(
|
|
854
1000
|
({ icon, size = "md", active = false, className = "", disabled, ...props }, ref) => {
|
|
855
1001
|
const baseClasses = [
|
|
856
1002
|
"inline-flex",
|
|
@@ -882,7 +1028,7 @@ var IconButton = forwardRef6(
|
|
|
882
1028
|
...activeClasses
|
|
883
1029
|
].join(" ");
|
|
884
1030
|
const ariaLabel = props["aria-label"] ?? "Bot\xE3o de a\xE7\xE3o";
|
|
885
|
-
return /* @__PURE__ */
|
|
1031
|
+
return /* @__PURE__ */ jsx11(
|
|
886
1032
|
"button",
|
|
887
1033
|
{
|
|
888
1034
|
ref,
|
|
@@ -892,7 +1038,7 @@ var IconButton = forwardRef6(
|
|
|
892
1038
|
"aria-pressed": active,
|
|
893
1039
|
"aria-label": ariaLabel,
|
|
894
1040
|
...props,
|
|
895
|
-
children: /* @__PURE__ */
|
|
1041
|
+
children: /* @__PURE__ */ jsx11("span", { className: "flex items-center justify-center", children: icon })
|
|
896
1042
|
}
|
|
897
1043
|
);
|
|
898
1044
|
}
|
|
@@ -901,7 +1047,7 @@ IconButton.displayName = "IconButton";
|
|
|
901
1047
|
|
|
902
1048
|
// src/components/Toast/Toast.tsx
|
|
903
1049
|
import { CheckCircle, WarningCircle, Info, X } from "phosphor-react";
|
|
904
|
-
import { jsx as
|
|
1050
|
+
import { jsx as jsx12, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
905
1051
|
var VARIANT_ACTION_CLASSES3 = {
|
|
906
1052
|
solid: {
|
|
907
1053
|
warning: "bg-warning text-warning-800 border-none focus-visible:outline-none",
|
|
@@ -941,7 +1087,7 @@ var Toast = ({
|
|
|
941
1087
|
};
|
|
942
1088
|
const IconAction = iconMap[action] || iconMap["success"];
|
|
943
1089
|
const baseClasses = "max-w-[390px] w-full flex flex-row items-start justify-between shadow-lg rounded-lg border p-4 gap-6 group";
|
|
944
|
-
return /* @__PURE__ */
|
|
1090
|
+
return /* @__PURE__ */ jsxs9(
|
|
945
1091
|
"div",
|
|
946
1092
|
{
|
|
947
1093
|
role: "alert",
|
|
@@ -950,20 +1096,20 @@ var Toast = ({
|
|
|
950
1096
|
className: `${baseClasses} ${positionClasses[position]} ${variantClasses} ${className}`,
|
|
951
1097
|
...props,
|
|
952
1098
|
children: [
|
|
953
|
-
/* @__PURE__ */
|
|
954
|
-
/* @__PURE__ */
|
|
955
|
-
/* @__PURE__ */
|
|
956
|
-
/* @__PURE__ */
|
|
957
|
-
description && /* @__PURE__ */
|
|
1099
|
+
/* @__PURE__ */ jsxs9("div", { className: "flex flex-row items-start gap-3", children: [
|
|
1100
|
+
/* @__PURE__ */ jsx12("span", { className: "mt-1", "data-testid": `toast-icon-${action}`, children: /* @__PURE__ */ jsx12(IconAction, {}) }),
|
|
1101
|
+
/* @__PURE__ */ jsxs9("div", { className: "flex flex-col items-start justify-start", children: [
|
|
1102
|
+
/* @__PURE__ */ jsx12("p", { className: "font-semibold text-md", children: title }),
|
|
1103
|
+
description && /* @__PURE__ */ jsx12("p", { className: "text-md text-text-900", children: description })
|
|
958
1104
|
] })
|
|
959
1105
|
] }),
|
|
960
|
-
/* @__PURE__ */
|
|
1106
|
+
/* @__PURE__ */ jsx12(
|
|
961
1107
|
"button",
|
|
962
1108
|
{
|
|
963
1109
|
onClick: onClose,
|
|
964
1110
|
"aria-label": "Dismiss notification",
|
|
965
1111
|
className: "text-background-500 cursor-pointer opacity-0 group-hover:opacity-100 transition-opacity",
|
|
966
|
-
children: /* @__PURE__ */
|
|
1112
|
+
children: /* @__PURE__ */ jsx12(X, {})
|
|
967
1113
|
}
|
|
968
1114
|
)
|
|
969
1115
|
]
|
|
@@ -989,11 +1135,11 @@ var useToastStore = create((set) => ({
|
|
|
989
1135
|
}));
|
|
990
1136
|
|
|
991
1137
|
// src/components/Toast/utils/Toaster.tsx
|
|
992
|
-
import { Fragment, jsx as
|
|
1138
|
+
import { Fragment, jsx as jsx13 } from "react/jsx-runtime";
|
|
993
1139
|
var Toaster = () => {
|
|
994
1140
|
const toasts = useToastStore((state) => state.toasts);
|
|
995
1141
|
const removeToast = useToastStore((state) => state.removeToast);
|
|
996
|
-
return /* @__PURE__ */
|
|
1142
|
+
return /* @__PURE__ */ jsx13(Fragment, { children: toasts.map((toast) => /* @__PURE__ */ jsx13(
|
|
997
1143
|
Toast,
|
|
998
1144
|
{
|
|
999
1145
|
title: toast.title,
|
|
@@ -1034,6 +1180,7 @@ export {
|
|
|
1034
1180
|
TableHeader,
|
|
1035
1181
|
TableRow,
|
|
1036
1182
|
Text,
|
|
1183
|
+
TextArea,
|
|
1037
1184
|
Toast,
|
|
1038
1185
|
Toaster,
|
|
1039
1186
|
useToast,
|