@vaneui/ui 0.3.0-alpha.20250914103012.c204dad → 0.3.1-alpha.20250914210126.5142197
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/components/ui/card.d.ts +6 -0
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/checkbox.d.ts +6 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/code.d.ts +6 -0
- package/dist/components/ui/code.d.ts.map +1 -1
- package/dist/components/ui/col.d.ts +6 -0
- package/dist/components/ui/col.d.ts.map +1 -1
- package/dist/components/ui/container.d.ts +6 -0
- package/dist/components/ui/container.d.ts.map +1 -1
- package/dist/components/ui/img.d.ts +6 -0
- package/dist/components/ui/img.d.ts.map +1 -1
- package/dist/components/ui/input.d.ts +6 -0
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/props/border.d.ts +18 -2
- package/dist/components/ui/props/border.d.ts.map +1 -1
- package/dist/components/ui/props/keys.d.ts +7 -5
- package/dist/components/ui/props/keys.d.ts.map +1 -1
- package/dist/components/ui/row.d.ts +6 -0
- package/dist/components/ui/row.d.ts.map +1 -1
- package/dist/components/ui/section.d.ts +6 -0
- package/dist/components/ui/section.d.ts.map +1 -1
- package/dist/components/ui/stack.d.ts +6 -0
- package/dist/components/ui/stack.d.ts.map +1 -1
- package/dist/components/ui/theme/appearance/appearanceTheme.d.ts +10 -0
- package/dist/components/ui/theme/appearance/appearanceTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/appearance/genericVariantTheme.d.ts +2 -0
- package/dist/components/ui/theme/appearance/genericVariantTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/appearance/shadowAppearanceTheme.d.ts +10 -0
- package/dist/components/ui/theme/appearance/shadowAppearanceTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/common/ComponentTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/borderTheme.d.ts +16 -7
- package/dist/components/ui/theme/layout/borderTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/directionTheme.d.ts +4 -0
- package/dist/components/ui/theme/layout/directionTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/displayTheme.d.ts +11 -0
- package/dist/components/ui/theme/layout/displayTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/focusVisibleTheme.d.ts +5 -0
- package/dist/components/ui/theme/layout/focusVisibleTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/hideTheme.d.ts +5 -0
- package/dist/components/ui/theme/layout/hideTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/itemsTheme.d.ts +5 -0
- package/dist/components/ui/theme/layout/itemsTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/justifyTheme.d.ts +8 -0
- package/dist/components/ui/theme/layout/justifyTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/overflowTheme.d.ts +15 -0
- package/dist/components/ui/theme/layout/overflowTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/positionTheme.d.ts +5 -0
- package/dist/components/ui/theme/layout/positionTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/radiusTheme.d.ts +3 -0
- package/dist/components/ui/theme/layout/radiusTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/ringTheme.d.ts +5 -0
- package/dist/components/ui/theme/layout/ringTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/layout/wrapTheme.d.ts +3 -0
- package/dist/components/ui/theme/layout/wrapTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/list/listStyleTheme.d.ts +2 -0
- package/dist/components/ui/theme/list/listStyleTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/breakpointTheme.d.ts +5 -0
- package/dist/components/ui/theme/size/breakpointTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/gapTheme.d.ts +5 -0
- package/dist/components/ui/theme/size/gapTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/paddingTheme.d.ts +5 -0
- package/dist/components/ui/theme/size/paddingTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/plTheme.d.ts +1 -0
- package/dist/components/ui/theme/size/plTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/pxTheme.d.ts +1 -0
- package/dist/components/ui/theme/size/pxTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/pyTheme.d.ts +1 -0
- package/dist/components/ui/theme/size/pyTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/size/sizeTheme.d.ts +5 -0
- package/dist/components/ui/theme/size/sizeTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/fontFamilyTheme.d.ts +3 -0
- package/dist/components/ui/theme/typography/fontFamilyTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/fontStyleTheme.d.ts +2 -0
- package/dist/components/ui/theme/typography/fontStyleTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/fontWeightTheme.d.ts +9 -0
- package/dist/components/ui/theme/typography/fontWeightTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/textAlignTheme.d.ts +4 -0
- package/dist/components/ui/theme/typography/textAlignTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/textDecorationTheme.d.ts +4 -0
- package/dist/components/ui/theme/typography/textDecorationTheme.d.ts.map +1 -1
- package/dist/components/ui/theme/typography/textTransformTheme.d.ts +4 -0
- package/dist/components/ui/theme/typography/textTransformTheme.d.ts.map +1 -1
- package/dist/index.esm.js +188 -22
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +194 -21
- package/dist/index.js.map +1 -1
- package/dist/ui.css +24 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -35,11 +35,25 @@ const LINK = 'link';
|
|
|
35
35
|
const APPEARANCE_VALUES = [DEFAULT, ACCENT, PRIMARY, SECONDARY, TERTIARY, SUCCESS, DANGER, WARNING, INFO, LINK];
|
|
36
36
|
|
|
37
37
|
/** Show border - adds appearance-based border styling */
|
|
38
|
-
const BORDER = 'border';
|
|
38
|
+
const BORDER$1 = 'border';
|
|
39
|
+
/** Show top border */
|
|
40
|
+
const BORDER_T = 'borderT';
|
|
41
|
+
/** Show bottom border */
|
|
42
|
+
const BORDER_B = 'borderB';
|
|
43
|
+
/** Show left border */
|
|
44
|
+
const BORDER_L = 'borderL';
|
|
45
|
+
/** Show right border */
|
|
46
|
+
const BORDER_R = 'borderR';
|
|
47
|
+
/** Show horizontal borders (left and right) */
|
|
48
|
+
const BORDER_X = 'borderX';
|
|
49
|
+
/** Show vertical borders (top and bottom) */
|
|
50
|
+
const BORDER_Y = 'borderY';
|
|
39
51
|
/** Hide border - removes border styling (overrides appearance colors) */
|
|
40
52
|
const NO_BORDER = 'noBorder';
|
|
41
|
-
/** All border property values */
|
|
42
|
-
const BORDER_VALUES = [BORDER, NO_BORDER];
|
|
53
|
+
/** All border property values - includes all border variations and noBorder */
|
|
54
|
+
const BORDER_VALUES = [BORDER$1, BORDER_T, BORDER_B, BORDER_L, BORDER_R, BORDER_X, BORDER_Y, NO_BORDER];
|
|
55
|
+
/** All border side keys (excluding noBorder since it doesn't have a CSS class) */
|
|
56
|
+
const BORDER_KEYS = [BORDER$1, BORDER_T, BORDER_B, BORDER_L, BORDER_R, BORDER_X, BORDER_Y];
|
|
43
57
|
|
|
44
58
|
/** Extra-small column breakpoint - responsive grid column sizing for xs screens */
|
|
45
59
|
const XS_COL = 'xsCol';
|
|
@@ -374,10 +388,12 @@ const PADDING = ['padding'];
|
|
|
374
388
|
const BREAKPOINT = ['breakpoint'];
|
|
375
389
|
/** Core visual properties including appearance colors and transparency */
|
|
376
390
|
const VISUAL_CORE = ['appearance', 'transparent'];
|
|
377
|
-
/**
|
|
378
|
-
const
|
|
391
|
+
/** Border properties for visual decoration */
|
|
392
|
+
const BORDER = ['border'];
|
|
393
|
+
/** Visual decoration properties for shadows and focus rings */
|
|
394
|
+
const VISUAL_DECORATION = ['shadow', 'ring', 'focusVisible'];
|
|
379
395
|
/** Layout-specific visual decoration (excluding focusVisible for non-interactive elements) */
|
|
380
|
-
const VISUAL_DECORATION_LAYOUT = ['
|
|
396
|
+
const VISUAL_DECORATION_LAYOUT = ['shadow', 'ring'];
|
|
381
397
|
/** Shape properties for border radius and corner rounding */
|
|
382
398
|
const SHAPE = ['shape'];
|
|
383
399
|
/** Typography styling properties for text appearance and formatting */
|
|
@@ -395,6 +411,7 @@ const COMPONENT_PROPS_CATEGORY = [
|
|
|
395
411
|
...LAYOUT_CORE,
|
|
396
412
|
...BREAKPOINT,
|
|
397
413
|
...PADDING,
|
|
414
|
+
...BORDER,
|
|
398
415
|
...VISUAL_DECORATION,
|
|
399
416
|
...SHAPE,
|
|
400
417
|
...VARIANT,
|
|
@@ -408,7 +425,7 @@ const APPEARANCE_CATEGORY = ['text', 'border', 'ring', 'shadow', 'bg', 'accent',
|
|
|
408
425
|
const ComponentKeys = {
|
|
409
426
|
/** Color appearance options */
|
|
410
427
|
appearance: APPEARANCE_VALUES,
|
|
411
|
-
/** Border visibility: border
|
|
428
|
+
/** Border visibility: includes all border variations and noBorder (border, borderT, borderB, etc., noBorder) */
|
|
412
429
|
border: BORDER_VALUES,
|
|
413
430
|
/** Column breakpoints for responsive grid layouts */
|
|
414
431
|
breakpoint: BREAKPOINT_VALUES,
|
|
@@ -467,9 +484,9 @@ const ComponentKeys = {
|
|
|
467
484
|
/** Complete layout category including core and flex properties */
|
|
468
485
|
const LAYOUT_FULL = [...LAYOUT_CORE, ...LAYOUT_FLEX];
|
|
469
486
|
/** Complete visual category including core, decoration, and shape properties */
|
|
470
|
-
const VISUAL_FULL = [...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE];
|
|
487
|
+
const VISUAL_FULL = [...VISUAL_CORE, ...BORDER, ...VISUAL_DECORATION, ...SHAPE];
|
|
471
488
|
/** Layout-specific visual category (excludes focusVisible for non-interactive elements) */
|
|
472
|
-
const VISUAL_LAYOUT = [...VISUAL_CORE, ...VISUAL_DECORATION_LAYOUT, ...SHAPE];
|
|
489
|
+
const VISUAL_LAYOUT = [...VISUAL_CORE, ...BORDER, ...VISUAL_DECORATION_LAYOUT, ...SHAPE];
|
|
473
490
|
/** Complete typography category for text styling */
|
|
474
491
|
const TYPOGRAPHY_FULL = [...TYPOGRAPHY_STYLE];
|
|
475
492
|
/** Categories for interactive components like buttons, badges, chips */
|
|
@@ -506,14 +523,14 @@ const DIVIDER_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...PADDING];
|
|
|
506
523
|
const SECTION_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_LAYOUT, ...PADDING, ...BREAKPOINT, ...VARIANT];
|
|
507
524
|
/** Form component categories */
|
|
508
525
|
/** Categories for checkbox form components */
|
|
509
|
-
const CHECKBOX_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
|
|
526
|
+
const CHECKBOX_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...BORDER, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
|
|
510
527
|
/** Categories for label form components with typography support */
|
|
511
528
|
const LABEL_CATEGORIES = [...TYPOGRAPHY_FULL, ...LAYOUT_FULL, ...VISUAL_CORE, ...VARIANT];
|
|
512
529
|
/** Categories for input form components with interactive and form-specific properties */
|
|
513
530
|
const INPUT_CATEGORIES = [...INTERACTIVE_CATEGORIES];
|
|
514
531
|
/** Media component categories */
|
|
515
532
|
/** Categories for image media components */
|
|
516
|
-
const IMG_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
|
|
533
|
+
const IMG_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...BORDER, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
|
|
517
534
|
/** All available component names in the library */
|
|
518
535
|
const COMPONENT = ['button', 'badge', 'chip', 'code', 'card', 'divider', 'container', 'row', 'col', 'stack', 'section',
|
|
519
536
|
'grid2', 'grid3', 'grid4', 'grid5', 'grid6', 'pageTitle', 'sectionTitle', 'title', 'text', 'link', 'list', 'listItem', 'checkbox', 'label', 'img', 'input'];
|
|
@@ -551,10 +568,15 @@ const ComponentCategories = {
|
|
|
551
568
|
class HideTheme extends BaseTheme {
|
|
552
569
|
constructor() {
|
|
553
570
|
super(...arguments);
|
|
571
|
+
/** Hide element on extra-small screens and below */
|
|
554
572
|
this.xsHide = "max-xs:hidden";
|
|
573
|
+
/** Hide element on small screens and below */
|
|
555
574
|
this.smHide = "max-sm:hidden";
|
|
575
|
+
/** Hide element on medium screens and below */
|
|
556
576
|
this.mdHide = "max-md:hidden";
|
|
577
|
+
/** Hide element on large screens and below */
|
|
557
578
|
this.lgHide = "max-lg:hidden";
|
|
579
|
+
/** Hide element on extra-large screens and below */
|
|
558
580
|
this.xlHide = "max-xl:hidden";
|
|
559
581
|
}
|
|
560
582
|
getClasses(extractedKeys) {
|
|
@@ -565,10 +587,15 @@ class HideTheme extends BaseTheme {
|
|
|
565
587
|
class ItemsTheme extends BaseTheme {
|
|
566
588
|
constructor() {
|
|
567
589
|
super(...arguments);
|
|
590
|
+
/** Align flex items to the start of the cross axis */
|
|
568
591
|
this.itemsStart = "items-start";
|
|
592
|
+
/** Align flex items to the end of the cross axis */
|
|
569
593
|
this.itemsEnd = "items-end";
|
|
594
|
+
/** Center flex items along the cross axis */
|
|
570
595
|
this.itemsCenter = "items-center";
|
|
596
|
+
/** Align flex items along their baseline */
|
|
571
597
|
this.itemsBaseline = "items-baseline";
|
|
598
|
+
/** Stretch flex items to fill the cross axis */
|
|
572
599
|
this.itemsStretch = "items-stretch";
|
|
573
600
|
}
|
|
574
601
|
getClasses(extractedKeys) {
|
|
@@ -579,13 +606,21 @@ class ItemsTheme extends BaseTheme {
|
|
|
579
606
|
class JustifyTheme extends BaseTheme {
|
|
580
607
|
constructor() {
|
|
581
608
|
super(...arguments);
|
|
609
|
+
/** Pack flex items toward the start of the main axis */
|
|
582
610
|
this.justifyStart = "justify-start";
|
|
611
|
+
/** Pack flex items toward the end of the main axis */
|
|
583
612
|
this.justifyEnd = "justify-end";
|
|
613
|
+
/** Pack flex items around the center of the main axis */
|
|
584
614
|
this.justifyCenter = "justify-center";
|
|
615
|
+
/** Distribute flex items with equal space between them */
|
|
585
616
|
this.justifyBetween = "justify-between";
|
|
617
|
+
/** Distribute flex items with equal space around them */
|
|
586
618
|
this.justifyAround = "justify-around";
|
|
619
|
+
/** Distribute flex items with equal space around them, including edges */
|
|
587
620
|
this.justifyEvenly = "justify-evenly";
|
|
621
|
+
/** Stretch flex items to fill the main axis */
|
|
588
622
|
this.justifyStretch = "justify-stretch";
|
|
623
|
+
/** Align flex items along their baseline on the main axis */
|
|
589
624
|
this.justifyBaseline = "justify-baseline";
|
|
590
625
|
}
|
|
591
626
|
getClasses(extractedKeys) {
|
|
@@ -596,10 +631,15 @@ class JustifyTheme extends BaseTheme {
|
|
|
596
631
|
class PositionTheme extends BaseTheme {
|
|
597
632
|
constructor() {
|
|
598
633
|
super(...arguments);
|
|
634
|
+
/** Relative positioning - positioned relative to its normal position */
|
|
599
635
|
this.relative = "relative";
|
|
636
|
+
/** Absolute positioning - positioned relative to its closest positioned ancestor */
|
|
600
637
|
this.absolute = "absolute";
|
|
638
|
+
/** Fixed positioning - positioned relative to the viewport */
|
|
601
639
|
this.fixed = "fixed";
|
|
640
|
+
/** Sticky positioning - toggles between relative and fixed based on scroll position */
|
|
602
641
|
this.sticky = "sticky";
|
|
642
|
+
/** Static positioning - default positioning, not affected by top/left/right/bottom */
|
|
603
643
|
this.static = "static";
|
|
604
644
|
}
|
|
605
645
|
getClasses(extractedKeys) {
|
|
@@ -610,7 +650,9 @@ class PositionTheme extends BaseTheme {
|
|
|
610
650
|
class FontStyleTheme extends BaseTheme {
|
|
611
651
|
constructor() {
|
|
612
652
|
super(...arguments);
|
|
653
|
+
/** Italic font style - slanted text */
|
|
613
654
|
this.italic = "italic";
|
|
655
|
+
/** Normal font style - upright text (not italic) */
|
|
614
656
|
this.notItalic = "not-italic";
|
|
615
657
|
}
|
|
616
658
|
getClasses(extractedKeys) {
|
|
@@ -621,8 +663,11 @@ class FontStyleTheme extends BaseTheme {
|
|
|
621
663
|
class FontFamilyTheme extends BaseTheme {
|
|
622
664
|
constructor() {
|
|
623
665
|
super(...arguments);
|
|
666
|
+
/** Sans-serif font family - clean, modern fonts without serifs */
|
|
624
667
|
this.sans = "font-sans";
|
|
668
|
+
/** Serif font family - traditional fonts with serifs */
|
|
625
669
|
this.serif = "font-serif";
|
|
670
|
+
/** Monospace font family - fixed-width fonts for code and data */
|
|
626
671
|
this.mono = "font-mono";
|
|
627
672
|
}
|
|
628
673
|
getClasses(extractedKeys) {
|
|
@@ -633,14 +678,23 @@ class FontFamilyTheme extends BaseTheme {
|
|
|
633
678
|
class FontWeightTheme extends BaseTheme {
|
|
634
679
|
constructor() {
|
|
635
680
|
super(...arguments);
|
|
681
|
+
/** Thin font weight (100) - lightest weight */
|
|
636
682
|
this.thin = "font-thin";
|
|
683
|
+
/** Extra-light font weight (200) - very light */
|
|
637
684
|
this.extralight = "font-extralight";
|
|
685
|
+
/** Light font weight (300) - lighter than normal */
|
|
638
686
|
this.light = "font-light";
|
|
687
|
+
/** Normal font weight (400) - default font weight */
|
|
639
688
|
this.normal = "font-normal";
|
|
689
|
+
/** Medium font weight (500) - slightly bold */
|
|
640
690
|
this.medium = "font-medium";
|
|
691
|
+
/** Semi-bold font weight (600) - moderately bold */
|
|
641
692
|
this.semibold = "font-semibold";
|
|
693
|
+
/** Bold font weight (700) - standard bold */
|
|
642
694
|
this.bold = "font-bold";
|
|
695
|
+
/** Extra-bold font weight (800) - very bold */
|
|
643
696
|
this.extrabold = "font-extrabold";
|
|
697
|
+
/** Black font weight (900) - heaviest weight */
|
|
644
698
|
this.black = "font-black";
|
|
645
699
|
}
|
|
646
700
|
getClasses(extractedKeys) {
|
|
@@ -651,9 +705,13 @@ class FontWeightTheme extends BaseTheme {
|
|
|
651
705
|
class TextDecorationTheme extends BaseTheme {
|
|
652
706
|
constructor() {
|
|
653
707
|
super(...arguments);
|
|
708
|
+
/** Underline text decoration - line below text */
|
|
654
709
|
this.underline = "underline";
|
|
710
|
+
/** Line-through text decoration - strikethrough */
|
|
655
711
|
this.lineThrough = "line-through";
|
|
712
|
+
/** Remove underline text decoration */
|
|
656
713
|
this.noUnderline = "no-underline";
|
|
714
|
+
/** Overline text decoration - line above text */
|
|
657
715
|
this.overline = "overline";
|
|
658
716
|
}
|
|
659
717
|
getClasses(extractedKeys) {
|
|
@@ -664,9 +722,13 @@ class TextDecorationTheme extends BaseTheme {
|
|
|
664
722
|
class TextTransformTheme extends BaseTheme {
|
|
665
723
|
constructor() {
|
|
666
724
|
super(...arguments);
|
|
725
|
+
/** Transform text to UPPERCASE */
|
|
667
726
|
this.uppercase = "uppercase";
|
|
727
|
+
/** Transform text to lowercase */
|
|
668
728
|
this.lowercase = "lowercase";
|
|
729
|
+
/** Capitalize First Letter Of Each Word */
|
|
669
730
|
this.capitalize = "capitalize";
|
|
731
|
+
/** Normal case - no text transformation */
|
|
670
732
|
this.normalCase = "normal-case";
|
|
671
733
|
}
|
|
672
734
|
getClasses(extractedKeys) {
|
|
@@ -677,9 +739,13 @@ class TextTransformTheme extends BaseTheme {
|
|
|
677
739
|
class TextAlignTheme extends BaseTheme {
|
|
678
740
|
constructor() {
|
|
679
741
|
super(...arguments);
|
|
742
|
+
/** Left-align text */
|
|
680
743
|
this.textLeft = "text-left";
|
|
744
|
+
/** Center-align text */
|
|
681
745
|
this.textCenter = "text-center";
|
|
746
|
+
/** Right-align text */
|
|
682
747
|
this.textRight = "text-right";
|
|
748
|
+
/** Justify text - stretch lines to fill width */
|
|
683
749
|
this.textJustify = "text-justify";
|
|
684
750
|
}
|
|
685
751
|
getClasses(extractedKeys) {
|
|
@@ -690,16 +756,27 @@ class TextAlignTheme extends BaseTheme {
|
|
|
690
756
|
class DisplayTheme extends BaseTheme {
|
|
691
757
|
constructor() {
|
|
692
758
|
super(...arguments);
|
|
759
|
+
/** Inline display - element flows with text */
|
|
693
760
|
this.inline = "inline";
|
|
761
|
+
/** Block display - element takes full width */
|
|
694
762
|
this.block = "block";
|
|
763
|
+
/** Inline-block display - element flows with text but can have width/height */
|
|
695
764
|
this.inlineBlock = "inline-block";
|
|
765
|
+
/** Flex display - creates a flex container */
|
|
696
766
|
this.flex = "flex";
|
|
767
|
+
/** Inline-flex display - creates an inline flex container */
|
|
697
768
|
this.inlineFlex = "inline-flex";
|
|
769
|
+
/** Grid display - creates a grid container */
|
|
698
770
|
this.grid = "grid";
|
|
771
|
+
/** Inline-grid display - creates an inline grid container */
|
|
699
772
|
this.inlineGrid = "inline-grid";
|
|
773
|
+
/** Contents display - element's children behave as if they are direct children of the parent */
|
|
700
774
|
this.contents = "contents";
|
|
775
|
+
/** Table display - element behaves like a table */
|
|
701
776
|
this.table = "table";
|
|
777
|
+
/** Table-cell display - element behaves like a table cell */
|
|
702
778
|
this.tableCell = "table-cell";
|
|
779
|
+
/** Hidden display - element is completely removed from layout */
|
|
703
780
|
this.hidden = "hidden";
|
|
704
781
|
}
|
|
705
782
|
getClasses(extractedKeys) {
|
|
@@ -3421,20 +3498,35 @@ const twMerge = /*#__PURE__*/createTailwindMerge(getDefaultConfig);
|
|
|
3421
3498
|
class OverflowTheme extends BaseTheme {
|
|
3422
3499
|
constructor() {
|
|
3423
3500
|
super(...arguments);
|
|
3501
|
+
/** Auto overflow - adds scrollbars when content overflows */
|
|
3424
3502
|
this.overflowAuto = 'overflow-auto';
|
|
3503
|
+
/** Hidden overflow - clips content that overflows */
|
|
3425
3504
|
this.overflowHidden = 'overflow-hidden';
|
|
3505
|
+
/** Clip overflow - clips content without scrollbars */
|
|
3426
3506
|
this.overflowClip = 'overflow-clip';
|
|
3507
|
+
/** Visible overflow - content overflows and remains visible */
|
|
3427
3508
|
this.overflowVisible = 'overflow-visible';
|
|
3509
|
+
/** Scroll overflow - always shows scrollbars */
|
|
3428
3510
|
this.overflowScroll = 'overflow-scroll';
|
|
3511
|
+
/** Auto horizontal overflow - adds horizontal scrollbar when needed */
|
|
3429
3512
|
this.overflowXAuto = 'overflow-x-auto';
|
|
3513
|
+
/** Auto vertical overflow - adds vertical scrollbar when needed */
|
|
3430
3514
|
this.overflowYAuto = 'overflow-y-auto';
|
|
3515
|
+
/** Hidden horizontal overflow - clips content horizontally */
|
|
3431
3516
|
this.overflowXHidden = 'overflow-x-hidden';
|
|
3517
|
+
/** Hidden vertical overflow - clips content vertically */
|
|
3432
3518
|
this.overflowYHidden = 'overflow-y-hidden';
|
|
3519
|
+
/** Clip horizontal overflow - clips content horizontally without scrollbars */
|
|
3433
3520
|
this.overflowXClip = 'overflow-x-clip';
|
|
3521
|
+
/** Clip vertical overflow - clips content vertically without scrollbars */
|
|
3434
3522
|
this.overflowYClip = 'overflow-y-clip';
|
|
3523
|
+
/** Visible horizontal overflow - content overflows horizontally and remains visible */
|
|
3435
3524
|
this.overflowXVisible = 'overflow-x-visible';
|
|
3525
|
+
/** Visible vertical overflow - content overflows vertically and remains visible */
|
|
3436
3526
|
this.overflowYVisible = 'overflow-y-visible';
|
|
3527
|
+
/** Scroll horizontal overflow - always shows horizontal scrollbar */
|
|
3437
3528
|
this.overflowXScroll = 'overflow-x-scroll';
|
|
3529
|
+
/** Scroll vertical overflow - always shows vertical scrollbar */
|
|
3438
3530
|
this.overflowYScroll = 'overflow-y-scroll';
|
|
3439
3531
|
}
|
|
3440
3532
|
getClasses(extractedKeys) {
|
|
@@ -3506,6 +3598,9 @@ class ComponentTheme {
|
|
|
3506
3598
|
extractedKeys[category] = key;
|
|
3507
3599
|
}
|
|
3508
3600
|
}
|
|
3601
|
+
// No need for border/noBorder mutual exclusion logic anymore
|
|
3602
|
+
// since noBorder is now part of the border category and
|
|
3603
|
+
// pickFirstTruthyKeyByCategory handles the priority naturally
|
|
3509
3604
|
const walk = (map) => {
|
|
3510
3605
|
for (const key of Object.keys(map)) {
|
|
3511
3606
|
const node = map[key];
|
|
@@ -3561,10 +3656,15 @@ class ComponentTheme {
|
|
|
3561
3656
|
class SizeTheme extends BaseTheme {
|
|
3562
3657
|
constructor(sizeMap, useDefaultKey = true) {
|
|
3563
3658
|
super();
|
|
3659
|
+
/** Extra-small size variant */
|
|
3564
3660
|
this.xs = "";
|
|
3661
|
+
/** Small size variant */
|
|
3565
3662
|
this.sm = "";
|
|
3663
|
+
/** Medium size variant (default) */
|
|
3566
3664
|
this.md = "";
|
|
3665
|
+
/** Large size variant */
|
|
3567
3666
|
this.lg = "";
|
|
3667
|
+
/** Extra-large size variant */
|
|
3568
3668
|
this.xl = "";
|
|
3569
3669
|
this.useDefaultKey = useDefaultKey;
|
|
3570
3670
|
ComponentKeys.size.forEach((key) => {
|
|
@@ -3582,10 +3682,15 @@ class SizeTheme extends BaseTheme {
|
|
|
3582
3682
|
class GapTheme extends BaseTheme {
|
|
3583
3683
|
constructor(sizeMap) {
|
|
3584
3684
|
super();
|
|
3685
|
+
/** Extra-small gap - 0.5rem spacing between items */
|
|
3585
3686
|
this.xs = 'gap-2';
|
|
3687
|
+
/** Small gap - 0.75rem spacing between items */
|
|
3586
3688
|
this.sm = 'gap-3';
|
|
3689
|
+
/** Medium gap - 1rem spacing between items */
|
|
3587
3690
|
this.md = 'gap-4';
|
|
3691
|
+
/** Large gap - 1.25rem spacing between items */
|
|
3588
3692
|
this.lg = 'gap-5';
|
|
3693
|
+
/** Extra-large gap - 1.5rem spacing between items */
|
|
3589
3694
|
this.xl = 'gap-6';
|
|
3590
3695
|
if (sizeMap) {
|
|
3591
3696
|
ComponentKeys.size.forEach((key) => {
|
|
@@ -3623,7 +3728,9 @@ const layoutBorderRadiusClasses = {
|
|
|
3623
3728
|
class RadiusTheme extends BaseTheme {
|
|
3624
3729
|
constructor(roundedClasses) {
|
|
3625
3730
|
super();
|
|
3731
|
+
/** Pill shape - fully rounded corners */
|
|
3626
3732
|
this.pill = "rounded-full";
|
|
3733
|
+
/** Sharp shape - no rounded corners */
|
|
3627
3734
|
this.sharp = "rounded-none";
|
|
3628
3735
|
this.rounded = roundedClasses;
|
|
3629
3736
|
}
|
|
@@ -3655,26 +3762,49 @@ class RadiusTheme extends BaseTheme {
|
|
|
3655
3762
|
class BorderTheme extends BaseTheme {
|
|
3656
3763
|
constructor() {
|
|
3657
3764
|
super(...arguments);
|
|
3658
|
-
|
|
3659
|
-
this.
|
|
3660
|
-
|
|
3661
|
-
this.
|
|
3662
|
-
|
|
3765
|
+
/** Show border - adds appearance-based border styling */
|
|
3766
|
+
this.border = "border";
|
|
3767
|
+
/** Show top border */
|
|
3768
|
+
this.borderT = "border-t";
|
|
3769
|
+
/** Show bottom border */
|
|
3770
|
+
this.borderB = "border-b";
|
|
3771
|
+
/** Show left border */
|
|
3772
|
+
this.borderL = "border-l";
|
|
3773
|
+
/** Show right border */
|
|
3774
|
+
this.borderR = "border-r";
|
|
3775
|
+
/** Show horizontal borders (left and right) */
|
|
3776
|
+
this.borderX = "border-x";
|
|
3777
|
+
/** Show vertical borders (top and bottom) */
|
|
3778
|
+
this.borderY = "border-y";
|
|
3663
3779
|
}
|
|
3664
3780
|
getClasses(extractedKeys) {
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3781
|
+
const classes = [];
|
|
3782
|
+
// Now all border variations and noBorder come through the 'border' category
|
|
3783
|
+
const borderValue = extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.border;
|
|
3784
|
+
// If noBorder is selected, don't apply any border classes
|
|
3785
|
+
if (borderValue === "noBorder") {
|
|
3786
|
+
return [];
|
|
3787
|
+
}
|
|
3788
|
+
// Check if the border value matches any of our border keys (BORDER_KEYS excludes noBorder)
|
|
3789
|
+
if (borderValue && BORDER_KEYS.includes(borderValue)) {
|
|
3790
|
+
classes.push(this[borderValue]);
|
|
3791
|
+
}
|
|
3792
|
+
return classes;
|
|
3668
3793
|
}
|
|
3669
3794
|
}
|
|
3670
3795
|
|
|
3671
3796
|
class RingTheme extends BaseTheme {
|
|
3672
3797
|
constructor() {
|
|
3673
3798
|
super(...arguments);
|
|
3799
|
+
/** Base ring styling - ring with inset positioning */
|
|
3674
3800
|
this.base = "ring ring-inset";
|
|
3801
|
+
/** Ring styling on hover state */
|
|
3675
3802
|
this.hover = "";
|
|
3803
|
+
/** Ring styling on active state */
|
|
3676
3804
|
this.active = "";
|
|
3805
|
+
/** Ring styling on focus state */
|
|
3677
3806
|
this.focus = "";
|
|
3807
|
+
/** Ring styling on focus-visible state for keyboard navigation */
|
|
3678
3808
|
this.focusVisible = "";
|
|
3679
3809
|
}
|
|
3680
3810
|
getClasses(extractedKeys) {
|
|
@@ -3687,10 +3817,15 @@ class RingTheme extends BaseTheme {
|
|
|
3687
3817
|
class FocusVisibleTheme extends BaseTheme {
|
|
3688
3818
|
constructor() {
|
|
3689
3819
|
super(...arguments);
|
|
3820
|
+
/** Base focus-visible styling */
|
|
3690
3821
|
this.base = "";
|
|
3822
|
+
/** Focus-visible styling on hover state */
|
|
3691
3823
|
this.hover = "";
|
|
3824
|
+
/** Focus-visible styling on active state */
|
|
3692
3825
|
this.active = "";
|
|
3826
|
+
/** Focus-visible styling on focus state */
|
|
3693
3827
|
this.focus = "";
|
|
3828
|
+
/** Focus-visible styling for keyboard navigation - outline on focus */
|
|
3694
3829
|
this.focusVisible = "focus-visible:outline-2 focus-visible:outline-offset-2";
|
|
3695
3830
|
}
|
|
3696
3831
|
getClasses(extractedKeys) {
|
|
@@ -3703,10 +3838,15 @@ class FocusVisibleTheme extends BaseTheme {
|
|
|
3703
3838
|
class PaddingTheme extends BaseTheme {
|
|
3704
3839
|
constructor(initial) {
|
|
3705
3840
|
super();
|
|
3841
|
+
/** Extra-small padding - varies by component implementation */
|
|
3706
3842
|
this.xs = "";
|
|
3843
|
+
/** Small padding - varies by component implementation */
|
|
3707
3844
|
this.sm = "";
|
|
3845
|
+
/** Medium padding - varies by component implementation */
|
|
3708
3846
|
this.md = "";
|
|
3847
|
+
/** Large padding - varies by component implementation */
|
|
3709
3848
|
this.lg = "";
|
|
3849
|
+
/** Extra-large padding - varies by component implementation */
|
|
3710
3850
|
this.xl = "";
|
|
3711
3851
|
if (initial) {
|
|
3712
3852
|
ComponentKeys.size.forEach((key) => {
|
|
@@ -3726,6 +3866,7 @@ class PaddingTheme extends BaseTheme {
|
|
|
3726
3866
|
}
|
|
3727
3867
|
}
|
|
3728
3868
|
|
|
3869
|
+
/** Horizontal padding theme - controls left and right padding */
|
|
3729
3870
|
class PxTheme extends PaddingTheme {
|
|
3730
3871
|
constructor(sizeMap) {
|
|
3731
3872
|
super(sizeMap);
|
|
@@ -3740,6 +3881,7 @@ class PxTheme extends PaddingTheme {
|
|
|
3740
3881
|
}
|
|
3741
3882
|
}
|
|
3742
3883
|
|
|
3884
|
+
/** Vertical padding theme - controls top and bottom padding */
|
|
3743
3885
|
class PyTheme extends PaddingTheme {
|
|
3744
3886
|
constructor(sizeMap) {
|
|
3745
3887
|
super(sizeMap);
|
|
@@ -3764,8 +3906,17 @@ class AppearanceTheme extends BaseTheme {
|
|
|
3764
3906
|
}
|
|
3765
3907
|
getClasses(extractedKeys) {
|
|
3766
3908
|
var _a;
|
|
3767
|
-
if (this.category === 'border'
|
|
3768
|
-
|
|
3909
|
+
if (this.category === 'border') {
|
|
3910
|
+
// If noBorder is selected from the border category, don't apply appearance colors
|
|
3911
|
+
if (extractedKeys.border === NO_BORDER) {
|
|
3912
|
+
return [];
|
|
3913
|
+
}
|
|
3914
|
+
// Only apply appearance colors if any border prop is set (and not noBorder)
|
|
3915
|
+
const hasBorderProps = extractedKeys.border !== undefined && extractedKeys.border !== NO_BORDER;
|
|
3916
|
+
// If no border props are set, don't apply appearance colors
|
|
3917
|
+
if (!hasBorderProps) {
|
|
3918
|
+
return [];
|
|
3919
|
+
}
|
|
3769
3920
|
}
|
|
3770
3921
|
if (this.category === 'ring' && (extractedKeys.ring === 'noRing' || extractedKeys.ring === undefined)) {
|
|
3771
3922
|
return [];
|
|
@@ -4308,8 +4459,11 @@ class GenericVariantTheme extends BaseTheme {
|
|
|
4308
4459
|
class WrapTheme extends BaseTheme {
|
|
4309
4460
|
constructor() {
|
|
4310
4461
|
super(...arguments);
|
|
4462
|
+
/** Allow flex items to wrap to new lines */
|
|
4311
4463
|
this.flexWrap = "flex-wrap";
|
|
4464
|
+
/** Prevent flex items from wrapping - keep on single line */
|
|
4312
4465
|
this.flexNoWrap = "flex-nowrap";
|
|
4466
|
+
/** Allow flex items to wrap in reverse order */
|
|
4313
4467
|
this.flexWrapReverse = "flex-wrap-reverse";
|
|
4314
4468
|
}
|
|
4315
4469
|
getClasses(extractedKeys) {
|
|
@@ -4320,9 +4474,13 @@ class WrapTheme extends BaseTheme {
|
|
|
4320
4474
|
class DirectionTheme extends BaseTheme {
|
|
4321
4475
|
constructor() {
|
|
4322
4476
|
super(...arguments);
|
|
4477
|
+
/** Horizontal flex direction - items flow left to right */
|
|
4323
4478
|
this.row = "flex-row";
|
|
4479
|
+
/** Vertical flex direction - items flow top to bottom */
|
|
4324
4480
|
this.column = "flex-col";
|
|
4481
|
+
/** Reversed horizontal flex direction - items flow right to left */
|
|
4325
4482
|
this.rowReverse = "flex-row-reverse";
|
|
4483
|
+
/** Reversed vertical flex direction - items flow bottom to top */
|
|
4326
4484
|
this.columnReverse = "flex-col-reverse";
|
|
4327
4485
|
}
|
|
4328
4486
|
getClasses(extractedKeys) {
|
|
@@ -4767,6 +4925,7 @@ const mergeDefaults = (baseDefaults, overrideDefaults) => {
|
|
|
4767
4925
|
return finalDefaults;
|
|
4768
4926
|
};
|
|
4769
4927
|
|
|
4928
|
+
/** Left padding theme - controls left padding only */
|
|
4770
4929
|
class PlTheme extends PaddingTheme {
|
|
4771
4930
|
constructor(sizeMap) {
|
|
4772
4931
|
super(sizeMap);
|
|
@@ -4784,7 +4943,9 @@ class PlTheme extends PaddingTheme {
|
|
|
4784
4943
|
class ListStyleTheme extends BaseTheme {
|
|
4785
4944
|
constructor() {
|
|
4786
4945
|
super(...arguments);
|
|
4946
|
+
/** Disc list style - bullet points for unordered lists */
|
|
4787
4947
|
this.disc = 'list-disc';
|
|
4948
|
+
/** Decimal list style - numbers for ordered lists */
|
|
4788
4949
|
this.decimal = 'list-decimal';
|
|
4789
4950
|
}
|
|
4790
4951
|
getClasses(extractedKeys) {
|
|
@@ -4876,10 +5037,15 @@ const listTheme = new ComponentTheme("ul", "list-inside", {
|
|
|
4876
5037
|
class BreakpointTheme extends BaseTheme {
|
|
4877
5038
|
constructor() {
|
|
4878
5039
|
super(...arguments);
|
|
5040
|
+
/** Switch to column layout on extra-small screens and below */
|
|
4879
5041
|
this.xsCol = "max-xs:flex-col";
|
|
5042
|
+
/** Switch to column layout on small screens and below */
|
|
4880
5043
|
this.smCol = "max-sm:flex-col";
|
|
5044
|
+
/** Switch to column layout on medium screens and below */
|
|
4881
5045
|
this.mdCol = "max-md:flex-col";
|
|
5046
|
+
/** Switch to column layout on large screens and below */
|
|
4882
5047
|
this.lgCol = "max-lg:flex-col";
|
|
5048
|
+
/** Switch to column layout on extra-large screens and below */
|
|
4883
5049
|
this.xlCol = "max-xl:flex-col";
|
|
4884
5050
|
}
|
|
4885
5051
|
getClasses(extractedKeys) {
|
|
@@ -5530,7 +5696,14 @@ exports.BLACK = BLACK;
|
|
|
5530
5696
|
exports.BLOCK = BLOCK;
|
|
5531
5697
|
exports.BOLD = BOLD;
|
|
5532
5698
|
exports.BORDER = BORDER;
|
|
5699
|
+
exports.BORDER_B = BORDER_B;
|
|
5700
|
+
exports.BORDER_KEYS = BORDER_KEYS;
|
|
5701
|
+
exports.BORDER_L = BORDER_L;
|
|
5702
|
+
exports.BORDER_R = BORDER_R;
|
|
5703
|
+
exports.BORDER_T = BORDER_T;
|
|
5533
5704
|
exports.BORDER_VALUES = BORDER_VALUES;
|
|
5705
|
+
exports.BORDER_X = BORDER_X;
|
|
5706
|
+
exports.BORDER_Y = BORDER_Y;
|
|
5534
5707
|
exports.BREAKPOINT = BREAKPOINT;
|
|
5535
5708
|
exports.BREAKPOINT_VALUES = BREAKPOINT_VALUES;
|
|
5536
5709
|
exports.BUTTON_CATEGORIES = BUTTON_CATEGORIES;
|