analytica-frontend-lib 1.0.16 → 1.0.17
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 +119 -0
- package/dist/index.d.mts +72 -2
- package/dist/index.d.ts +72 -2
- package/dist/index.js +213 -44
- package/dist/index.mjs +210 -38
- package/package.json +1 -1
package/dist/index.css
CHANGED
|
@@ -68,6 +68,7 @@
|
|
|
68
68
|
--color-primary-950: #080808;
|
|
69
69
|
--color-text: #fefeff;
|
|
70
70
|
--color-text-400: #a3a3a3;
|
|
71
|
+
--color-text-500: #8c8c8c;
|
|
71
72
|
--color-text-600: #737373;
|
|
72
73
|
--color-text-700: #525252;
|
|
73
74
|
--color-text-800: #404040;
|
|
@@ -81,6 +82,8 @@
|
|
|
81
82
|
--color-border-50: #f3f3f3;
|
|
82
83
|
--color-border-100: #e6e6e6;
|
|
83
84
|
--color-border-200: #dddcdb;
|
|
85
|
+
--color-border-400: #a5a3a3;
|
|
86
|
+
--color-border-500: #8c8d8d;
|
|
84
87
|
--color-success-300: #66b584;
|
|
85
88
|
--color-success-400: #489766;
|
|
86
89
|
--color-success-500: #348352;
|
|
@@ -366,6 +369,9 @@
|
|
|
366
369
|
.my-4 {
|
|
367
370
|
margin-block: calc(var(--spacing) * 4);
|
|
368
371
|
}
|
|
372
|
+
.mt-1\.5 {
|
|
373
|
+
margin-top: calc(var(--spacing) * 1.5);
|
|
374
|
+
}
|
|
369
375
|
.mt-2 {
|
|
370
376
|
margin-top: calc(var(--spacing) * 2);
|
|
371
377
|
}
|
|
@@ -384,18 +390,30 @@
|
|
|
384
390
|
.mb-4 {
|
|
385
391
|
margin-bottom: calc(var(--spacing) * 4);
|
|
386
392
|
}
|
|
393
|
+
.mb-6 {
|
|
394
|
+
margin-bottom: calc(var(--spacing) * 6);
|
|
395
|
+
}
|
|
396
|
+
.mb-8 {
|
|
397
|
+
margin-bottom: calc(var(--spacing) * 8);
|
|
398
|
+
}
|
|
387
399
|
.ml-2 {
|
|
388
400
|
margin-left: calc(var(--spacing) * 2);
|
|
389
401
|
}
|
|
390
402
|
.flex {
|
|
391
403
|
display: flex;
|
|
392
404
|
}
|
|
405
|
+
.grid {
|
|
406
|
+
display: grid;
|
|
407
|
+
}
|
|
393
408
|
.inline-flex {
|
|
394
409
|
display: inline-flex;
|
|
395
410
|
}
|
|
396
411
|
.table {
|
|
397
412
|
display: table;
|
|
398
413
|
}
|
|
414
|
+
.h-4 {
|
|
415
|
+
height: calc(var(--spacing) * 4);
|
|
416
|
+
}
|
|
399
417
|
.h-5 {
|
|
400
418
|
height: calc(var(--spacing) * 5);
|
|
401
419
|
}
|
|
@@ -408,9 +426,18 @@
|
|
|
408
426
|
.h-10 {
|
|
409
427
|
height: calc(var(--spacing) * 10);
|
|
410
428
|
}
|
|
429
|
+
.h-\[21px\] {
|
|
430
|
+
height: 21px;
|
|
431
|
+
}
|
|
432
|
+
.h-\[27px\] {
|
|
433
|
+
height: 27px;
|
|
434
|
+
}
|
|
411
435
|
.h-px {
|
|
412
436
|
height: 1px;
|
|
413
437
|
}
|
|
438
|
+
.w-4 {
|
|
439
|
+
width: calc(var(--spacing) * 4);
|
|
440
|
+
}
|
|
414
441
|
.w-5 {
|
|
415
442
|
width: calc(var(--spacing) * 5);
|
|
416
443
|
}
|
|
@@ -445,6 +472,9 @@
|
|
|
445
472
|
.cursor-pointer {
|
|
446
473
|
cursor: pointer;
|
|
447
474
|
}
|
|
475
|
+
.grid-cols-2 {
|
|
476
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
477
|
+
}
|
|
448
478
|
.flex-col {
|
|
449
479
|
flex-direction: column;
|
|
450
480
|
}
|
|
@@ -457,6 +487,9 @@
|
|
|
457
487
|
.items-center {
|
|
458
488
|
align-items: center;
|
|
459
489
|
}
|
|
490
|
+
.items-end {
|
|
491
|
+
align-items: flex-end;
|
|
492
|
+
}
|
|
460
493
|
.justify-center {
|
|
461
494
|
justify-content: center;
|
|
462
495
|
}
|
|
@@ -466,6 +499,9 @@
|
|
|
466
499
|
.gap-0\.5 {
|
|
467
500
|
gap: calc(var(--spacing) * 0.5);
|
|
468
501
|
}
|
|
502
|
+
.gap-1\.5 {
|
|
503
|
+
gap: calc(var(--spacing) * 1.5);
|
|
504
|
+
}
|
|
469
505
|
.gap-2 {
|
|
470
506
|
gap: calc(var(--spacing) * 2);
|
|
471
507
|
}
|
|
@@ -484,6 +520,9 @@
|
|
|
484
520
|
.overflow-hidden {
|
|
485
521
|
overflow: hidden;
|
|
486
522
|
}
|
|
523
|
+
.rounded {
|
|
524
|
+
border-radius: 0.25rem;
|
|
525
|
+
}
|
|
487
526
|
.rounded-full {
|
|
488
527
|
border-radius: calc(infinity * 1px);
|
|
489
528
|
}
|
|
@@ -503,6 +542,14 @@
|
|
|
503
542
|
border-style: var(--tw-border-style);
|
|
504
543
|
border-width: 1px;
|
|
505
544
|
}
|
|
545
|
+
.border-2 {
|
|
546
|
+
border-style: var(--tw-border-style);
|
|
547
|
+
border-width: 2px;
|
|
548
|
+
}
|
|
549
|
+
.border-\[3px\] {
|
|
550
|
+
border-style: var(--tw-border-style);
|
|
551
|
+
border-width: 3px;
|
|
552
|
+
}
|
|
506
553
|
.border-t {
|
|
507
554
|
border-top-style: var(--tw-border-style);
|
|
508
555
|
border-top-width: 1px;
|
|
@@ -527,18 +574,36 @@
|
|
|
527
574
|
.border-border-200 {
|
|
528
575
|
border-color: var(--color-border-200);
|
|
529
576
|
}
|
|
577
|
+
.border-border-400 {
|
|
578
|
+
border-color: var(--color-border-400);
|
|
579
|
+
}
|
|
580
|
+
.border-border-500 {
|
|
581
|
+
border-color: var(--color-border-500);
|
|
582
|
+
}
|
|
530
583
|
.border-error-300 {
|
|
531
584
|
border-color: var(--color-error-300);
|
|
532
585
|
}
|
|
533
586
|
.border-error-500 {
|
|
534
587
|
border-color: var(--color-error-500);
|
|
535
588
|
}
|
|
589
|
+
.border-error-700 {
|
|
590
|
+
border-color: var(--color-error-700);
|
|
591
|
+
}
|
|
536
592
|
.border-indicator-error {
|
|
537
593
|
border-color: var(--color-indicator-error);
|
|
538
594
|
}
|
|
595
|
+
.border-indicator-info {
|
|
596
|
+
border-color: var(--color-indicator-info);
|
|
597
|
+
}
|
|
539
598
|
.border-indicator-primary {
|
|
540
599
|
border-color: var(--color-indicator-primary);
|
|
541
600
|
}
|
|
601
|
+
.border-primary-600 {
|
|
602
|
+
border-color: var(--color-primary-600);
|
|
603
|
+
}
|
|
604
|
+
.border-primary-800 {
|
|
605
|
+
border-color: var(--color-primary-800);
|
|
606
|
+
}
|
|
542
607
|
.border-primary-950 {
|
|
543
608
|
border-color: var(--color-primary-950);
|
|
544
609
|
}
|
|
@@ -569,6 +634,12 @@
|
|
|
569
634
|
.bg-primary-50 {
|
|
570
635
|
background-color: var(--color-primary-50);
|
|
571
636
|
}
|
|
637
|
+
.bg-primary-600 {
|
|
638
|
+
background-color: var(--color-primary-600);
|
|
639
|
+
}
|
|
640
|
+
.bg-primary-800 {
|
|
641
|
+
background-color: var(--color-primary-800);
|
|
642
|
+
}
|
|
572
643
|
.bg-primary-950 {
|
|
573
644
|
background-color: var(--color-primary-950);
|
|
574
645
|
}
|
|
@@ -590,6 +661,9 @@
|
|
|
590
661
|
.p-4 {
|
|
591
662
|
padding: calc(var(--spacing) * 4);
|
|
592
663
|
}
|
|
664
|
+
.p-6 {
|
|
665
|
+
padding: calc(var(--spacing) * 6);
|
|
666
|
+
}
|
|
593
667
|
.p-8 {
|
|
594
668
|
padding: calc(var(--spacing) * 8);
|
|
595
669
|
}
|
|
@@ -686,6 +760,10 @@
|
|
|
686
760
|
font-size: var(--text-xs);
|
|
687
761
|
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
688
762
|
}
|
|
763
|
+
.leading-\[150\%\] {
|
|
764
|
+
--tw-leading: 150%;
|
|
765
|
+
line-height: 150%;
|
|
766
|
+
}
|
|
689
767
|
.font-black {
|
|
690
768
|
--tw-font-weight: var(--font-weight-black);
|
|
691
769
|
font-weight: var(--font-weight-black);
|
|
@@ -727,6 +805,9 @@
|
|
|
727
805
|
.text-error-500 {
|
|
728
806
|
color: var(--color-error-500);
|
|
729
807
|
}
|
|
808
|
+
.text-error-600 {
|
|
809
|
+
color: var(--color-error-600);
|
|
810
|
+
}
|
|
730
811
|
.text-primary-950 {
|
|
731
812
|
color: var(--color-primary-950);
|
|
732
813
|
}
|
|
@@ -739,6 +820,9 @@
|
|
|
739
820
|
.text-text-400 {
|
|
740
821
|
color: var(--color-text-400);
|
|
741
822
|
}
|
|
823
|
+
.text-text-500 {
|
|
824
|
+
color: var(--color-text-500);
|
|
825
|
+
}
|
|
742
826
|
.text-text-600 {
|
|
743
827
|
color: var(--color-text-600);
|
|
744
828
|
}
|
|
@@ -760,6 +844,9 @@
|
|
|
760
844
|
.italic {
|
|
761
845
|
font-style: italic;
|
|
762
846
|
}
|
|
847
|
+
.opacity-40 {
|
|
848
|
+
opacity: 40%;
|
|
849
|
+
}
|
|
763
850
|
.opacity-50 {
|
|
764
851
|
opacity: 50%;
|
|
765
852
|
}
|
|
@@ -799,6 +886,12 @@
|
|
|
799
886
|
var(--tw-ring-shadow),
|
|
800
887
|
var(--tw-shadow);
|
|
801
888
|
}
|
|
889
|
+
.ring-indicator-info\/20 {
|
|
890
|
+
--tw-ring-color: color-mix(in srgb, #5399ec 20%, transparent);
|
|
891
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
892
|
+
--tw-ring-color: color-mix(in oklab, var(--color-indicator-info) 20%, transparent);
|
|
893
|
+
}
|
|
894
|
+
}
|
|
802
895
|
.ring-primary-950 {
|
|
803
896
|
--tw-ring-color: var(--color-primary-950);
|
|
804
897
|
}
|
|
@@ -810,6 +903,11 @@
|
|
|
810
903
|
outline-style: var(--tw-outline-style);
|
|
811
904
|
outline-width: 1px;
|
|
812
905
|
}
|
|
906
|
+
.transition-all {
|
|
907
|
+
transition-property: all;
|
|
908
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
909
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
910
|
+
}
|
|
813
911
|
.transition-colors {
|
|
814
912
|
transition-property:
|
|
815
913
|
color,
|
|
@@ -825,6 +923,10 @@
|
|
|
825
923
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
826
924
|
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
827
925
|
}
|
|
926
|
+
.duration-200 {
|
|
927
|
+
--tw-duration: 200ms;
|
|
928
|
+
transition-duration: 200ms;
|
|
929
|
+
}
|
|
828
930
|
.outline-none {
|
|
829
931
|
--tw-outline-style: none;
|
|
830
932
|
outline-style: none;
|
|
@@ -834,6 +936,13 @@
|
|
|
834
936
|
-moz-user-select: none;
|
|
835
937
|
user-select: none;
|
|
836
938
|
}
|
|
939
|
+
.hover\:border-border-500 {
|
|
940
|
+
&:hover {
|
|
941
|
+
@media (hover: hover) {
|
|
942
|
+
border-color: var(--color-border-500);
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
}
|
|
837
946
|
.hover\:border-error-400 {
|
|
838
947
|
&:hover {
|
|
839
948
|
@media (hover: hover) {
|
|
@@ -973,6 +1082,12 @@
|
|
|
973
1082
|
}
|
|
974
1083
|
}
|
|
975
1084
|
}
|
|
1085
|
+
.focus\:outline-none {
|
|
1086
|
+
&:focus {
|
|
1087
|
+
--tw-outline-style: none;
|
|
1088
|
+
outline-style: none;
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
976
1091
|
.focus-visible\:border-0 {
|
|
977
1092
|
&:focus-visible {
|
|
978
1093
|
border-style: var(--tw-border-style);
|
|
@@ -1559,6 +1674,7 @@
|
|
|
1559
1674
|
@property --tw-skew-x { syntax: "*"; inherits: false; }
|
|
1560
1675
|
@property --tw-skew-y { syntax: "*"; inherits: false; }
|
|
1561
1676
|
@property --tw-border-style { syntax: "*"; inherits: false; initial-value: solid; }
|
|
1677
|
+
@property --tw-leading { syntax: "*"; inherits: false; }
|
|
1562
1678
|
@property --tw-font-weight { syntax: "*"; inherits: false; }
|
|
1563
1679
|
@property --tw-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
|
|
1564
1680
|
@property --tw-shadow-color { syntax: "*"; inherits: false; }
|
|
@@ -1575,6 +1691,7 @@
|
|
|
1575
1691
|
@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }
|
|
1576
1692
|
@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
|
|
1577
1693
|
@property --tw-outline-style { syntax: "*"; inherits: false; initial-value: solid; }
|
|
1694
|
+
@property --tw-duration { syntax: "*"; inherits: false; }
|
|
1578
1695
|
@layer properties {
|
|
1579
1696
|
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
|
|
1580
1697
|
*,
|
|
@@ -1590,6 +1707,7 @@
|
|
|
1590
1707
|
--tw-skew-x: initial;
|
|
1591
1708
|
--tw-skew-y: initial;
|
|
1592
1709
|
--tw-border-style: solid;
|
|
1710
|
+
--tw-leading: initial;
|
|
1593
1711
|
--tw-font-weight: initial;
|
|
1594
1712
|
--tw-shadow: 0 0 #0000;
|
|
1595
1713
|
--tw-shadow-color: initial;
|
|
@@ -1606,6 +1724,7 @@
|
|
|
1606
1724
|
--tw-ring-offset-color: #fff;
|
|
1607
1725
|
--tw-ring-offset-shadow: 0 0 #0000;
|
|
1608
1726
|
--tw-outline-style: solid;
|
|
1727
|
+
--tw-duration: initial;
|
|
1609
1728
|
}
|
|
1610
1729
|
}
|
|
1611
1730
|
}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as react from 'react';
|
|
3
|
-
import { ReactNode, ButtonHTMLAttributes, ElementType, ComponentPropsWithoutRef, HTMLAttributes, TdHTMLAttributes } from 'react';
|
|
3
|
+
import { ReactNode, ButtonHTMLAttributes, ElementType, ComponentPropsWithoutRef, InputHTMLAttributes, HTMLAttributes, TdHTMLAttributes } from 'react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Button component props interface
|
|
@@ -184,6 +184,76 @@ type TextProps<T extends ElementType = 'p'> = BaseTextProps & {
|
|
|
184
184
|
*/
|
|
185
185
|
declare const Text: <T extends ElementType = "p">({ children, size, weight, color, as, className, ...props }: TextProps<T>) => react_jsx_runtime.JSX.Element;
|
|
186
186
|
|
|
187
|
+
/**
|
|
188
|
+
* CheckBox size variants
|
|
189
|
+
*/
|
|
190
|
+
type CheckBoxSize = 'small' | 'medium' | 'large';
|
|
191
|
+
/**
|
|
192
|
+
* CheckBox visual state
|
|
193
|
+
*/
|
|
194
|
+
type CheckBoxState = 'default' | 'hovered' | 'focused' | 'invalid' | 'disabled';
|
|
195
|
+
/**
|
|
196
|
+
* CheckBox component props interface
|
|
197
|
+
*/
|
|
198
|
+
type CheckBoxProps = {
|
|
199
|
+
/** Label text to display next to the checkbox */
|
|
200
|
+
label?: ReactNode;
|
|
201
|
+
/** Size variant of the checkbox */
|
|
202
|
+
size?: CheckBoxSize;
|
|
203
|
+
/** Visual state of the checkbox */
|
|
204
|
+
state?: CheckBoxState;
|
|
205
|
+
/** Indeterminate state for partial selections */
|
|
206
|
+
indeterminate?: boolean;
|
|
207
|
+
/** Error message to display */
|
|
208
|
+
errorMessage?: string;
|
|
209
|
+
/** Helper text to display */
|
|
210
|
+
helperText?: string;
|
|
211
|
+
/** Additional CSS classes */
|
|
212
|
+
className?: string;
|
|
213
|
+
/** Label CSS classes */
|
|
214
|
+
labelClassName?: string;
|
|
215
|
+
} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'>;
|
|
216
|
+
/**
|
|
217
|
+
* CheckBox component for Analytica Ensino platforms
|
|
218
|
+
*
|
|
219
|
+
* A checkbox component with essential states, sizes and themes.
|
|
220
|
+
* Uses the Analytica Ensino Design System colors from styles.css with automatic
|
|
221
|
+
* light/dark mode support. Includes Text component integration for consistent typography.
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```tsx
|
|
225
|
+
* // Basic checkbox
|
|
226
|
+
* <CheckBox label="Option" />
|
|
227
|
+
*
|
|
228
|
+
* // Small size
|
|
229
|
+
* <CheckBox size="small" label="Small option" />
|
|
230
|
+
*
|
|
231
|
+
* // Invalid state
|
|
232
|
+
* <CheckBox state="invalid" label="Required field" />
|
|
233
|
+
*
|
|
234
|
+
* // Disabled state
|
|
235
|
+
* <CheckBox disabled label="Disabled option" />
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
declare const CheckBox: react.ForwardRefExoticComponent<{
|
|
239
|
+
/** Label text to display next to the checkbox */
|
|
240
|
+
label?: ReactNode;
|
|
241
|
+
/** Size variant of the checkbox */
|
|
242
|
+
size?: CheckBoxSize;
|
|
243
|
+
/** Visual state of the checkbox */
|
|
244
|
+
state?: CheckBoxState;
|
|
245
|
+
/** Indeterminate state for partial selections */
|
|
246
|
+
indeterminate?: boolean;
|
|
247
|
+
/** Error message to display */
|
|
248
|
+
errorMessage?: string;
|
|
249
|
+
/** Helper text to display */
|
|
250
|
+
helperText?: string;
|
|
251
|
+
/** Additional CSS classes */
|
|
252
|
+
className?: string;
|
|
253
|
+
/** Label CSS classes */
|
|
254
|
+
labelClassName?: string;
|
|
255
|
+
} & Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "type"> & react.RefAttributes<HTMLInputElement>>;
|
|
256
|
+
|
|
187
257
|
type TableRowState = 'default' | 'selected' | 'invalid' | 'disabled';
|
|
188
258
|
interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
|
|
189
259
|
state?: TableRowState;
|
|
@@ -348,4 +418,4 @@ declare const IconButton: react.ForwardRefExoticComponent<{
|
|
|
348
418
|
className?: string;
|
|
349
419
|
} & ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
|
|
350
420
|
|
|
351
|
-
export { Button, DropdownMenu, DropdownMenuTrigger, IconButton, type IconButtonProps, IconRoundedButton, MenuContent, MenuItem, MenuLabel, MenuSeparator, NavButton, SelectionButton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Text };
|
|
421
|
+
export { Button, CheckBox, type CheckBoxProps, DropdownMenu, DropdownMenuTrigger, IconButton, type IconButtonProps, IconRoundedButton, MenuContent, MenuItem, MenuLabel, MenuSeparator, NavButton, SelectionButton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Text };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as react from 'react';
|
|
3
|
-
import { ReactNode, ButtonHTMLAttributes, ElementType, ComponentPropsWithoutRef, HTMLAttributes, TdHTMLAttributes } from 'react';
|
|
3
|
+
import { ReactNode, ButtonHTMLAttributes, ElementType, ComponentPropsWithoutRef, InputHTMLAttributes, HTMLAttributes, TdHTMLAttributes } from 'react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Button component props interface
|
|
@@ -184,6 +184,76 @@ type TextProps<T extends ElementType = 'p'> = BaseTextProps & {
|
|
|
184
184
|
*/
|
|
185
185
|
declare const Text: <T extends ElementType = "p">({ children, size, weight, color, as, className, ...props }: TextProps<T>) => react_jsx_runtime.JSX.Element;
|
|
186
186
|
|
|
187
|
+
/**
|
|
188
|
+
* CheckBox size variants
|
|
189
|
+
*/
|
|
190
|
+
type CheckBoxSize = 'small' | 'medium' | 'large';
|
|
191
|
+
/**
|
|
192
|
+
* CheckBox visual state
|
|
193
|
+
*/
|
|
194
|
+
type CheckBoxState = 'default' | 'hovered' | 'focused' | 'invalid' | 'disabled';
|
|
195
|
+
/**
|
|
196
|
+
* CheckBox component props interface
|
|
197
|
+
*/
|
|
198
|
+
type CheckBoxProps = {
|
|
199
|
+
/** Label text to display next to the checkbox */
|
|
200
|
+
label?: ReactNode;
|
|
201
|
+
/** Size variant of the checkbox */
|
|
202
|
+
size?: CheckBoxSize;
|
|
203
|
+
/** Visual state of the checkbox */
|
|
204
|
+
state?: CheckBoxState;
|
|
205
|
+
/** Indeterminate state for partial selections */
|
|
206
|
+
indeterminate?: boolean;
|
|
207
|
+
/** Error message to display */
|
|
208
|
+
errorMessage?: string;
|
|
209
|
+
/** Helper text to display */
|
|
210
|
+
helperText?: string;
|
|
211
|
+
/** Additional CSS classes */
|
|
212
|
+
className?: string;
|
|
213
|
+
/** Label CSS classes */
|
|
214
|
+
labelClassName?: string;
|
|
215
|
+
} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'>;
|
|
216
|
+
/**
|
|
217
|
+
* CheckBox component for Analytica Ensino platforms
|
|
218
|
+
*
|
|
219
|
+
* A checkbox component with essential states, sizes and themes.
|
|
220
|
+
* Uses the Analytica Ensino Design System colors from styles.css with automatic
|
|
221
|
+
* light/dark mode support. Includes Text component integration for consistent typography.
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```tsx
|
|
225
|
+
* // Basic checkbox
|
|
226
|
+
* <CheckBox label="Option" />
|
|
227
|
+
*
|
|
228
|
+
* // Small size
|
|
229
|
+
* <CheckBox size="small" label="Small option" />
|
|
230
|
+
*
|
|
231
|
+
* // Invalid state
|
|
232
|
+
* <CheckBox state="invalid" label="Required field" />
|
|
233
|
+
*
|
|
234
|
+
* // Disabled state
|
|
235
|
+
* <CheckBox disabled label="Disabled option" />
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
declare const CheckBox: react.ForwardRefExoticComponent<{
|
|
239
|
+
/** Label text to display next to the checkbox */
|
|
240
|
+
label?: ReactNode;
|
|
241
|
+
/** Size variant of the checkbox */
|
|
242
|
+
size?: CheckBoxSize;
|
|
243
|
+
/** Visual state of the checkbox */
|
|
244
|
+
state?: CheckBoxState;
|
|
245
|
+
/** Indeterminate state for partial selections */
|
|
246
|
+
indeterminate?: boolean;
|
|
247
|
+
/** Error message to display */
|
|
248
|
+
errorMessage?: string;
|
|
249
|
+
/** Helper text to display */
|
|
250
|
+
helperText?: string;
|
|
251
|
+
/** Additional CSS classes */
|
|
252
|
+
className?: string;
|
|
253
|
+
/** Label CSS classes */
|
|
254
|
+
labelClassName?: string;
|
|
255
|
+
} & Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "type"> & react.RefAttributes<HTMLInputElement>>;
|
|
256
|
+
|
|
187
257
|
type TableRowState = 'default' | 'selected' | 'invalid' | 'disabled';
|
|
188
258
|
interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
|
|
189
259
|
state?: TableRowState;
|
|
@@ -348,4 +418,4 @@ declare const IconButton: react.ForwardRefExoticComponent<{
|
|
|
348
418
|
className?: string;
|
|
349
419
|
} & ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
|
|
350
420
|
|
|
351
|
-
export { Button, DropdownMenu, DropdownMenuTrigger, IconButton, type IconButtonProps, IconRoundedButton, MenuContent, MenuItem, MenuLabel, MenuSeparator, NavButton, SelectionButton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Text };
|
|
421
|
+
export { Button, CheckBox, type CheckBoxProps, DropdownMenu, DropdownMenuTrigger, IconButton, type IconButtonProps, IconRoundedButton, MenuContent, MenuItem, MenuLabel, MenuSeparator, NavButton, SelectionButton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Text };
|