@vaneui/ui 0.3.1-alpha.20251117134835.2318245 → 0.3.1-alpha.20251129115555.bcd1100

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.esm.js CHANGED
@@ -5747,11 +5747,385 @@ const ThemedComponent = forwardRef(function ThemedComponent(allProps, ref) {
5747
5747
  return (jsx(Tag, { ref: ref, className: finalClasses, ...finalProps, children: props.children }));
5748
5748
  });
5749
5749
 
5750
+ /**
5751
+ * Button - A clickable button element with customizable appearance and behavior
5752
+ *
5753
+ * @example
5754
+ * ```tsx
5755
+ * // Basic button
5756
+ * <Button>Click me</Button>
5757
+ *
5758
+ * // With size, appearance, and variant
5759
+ * <Button lg primary filled>Submit</Button>
5760
+ *
5761
+ * // Outlined button
5762
+ * <Button outlined secondary>Cancel</Button>
5763
+ *
5764
+ * // As a link
5765
+ * <Button href="/about">Learn More</Button>
5766
+ * ```
5767
+ *
5768
+ * @param props - Button props
5769
+ * @param props.children - Button content
5770
+ * @param props.className - Additional CSS classes to merge with theme classes
5771
+ *
5772
+
5773
+ * SIZE PROPS:
5774
+ * @param props.xs - Extra small size
5775
+ * @param props.sm - Small size
5776
+ * @param props.md - Medium size (default)
5777
+ * @param props.lg - Large size
5778
+ * @param props.xl - Extra large size
5779
+ *
5780
+
5781
+ * ALIGNMENT PROPS (Cross-axis):
5782
+ * @param props.itemsStart - Align items to start (top/left)
5783
+ * @param props.itemsEnd - Align items to end (bottom/right)
5784
+ * @param props.itemsCenter - Align items to center
5785
+ * @param props.itemsBaseline - Align items to baseline
5786
+ * @param props.itemsStretch - Stretch items to fill container
5787
+ *
5788
+
5789
+ * ALIGNMENT PROPS (Main-axis):
5790
+ * @param props.justifyStart - Justify content to start
5791
+ * @param props.justifyEnd - Justify content to end
5792
+ * @param props.justifyCenter - Justify content to center
5793
+ * @param props.justifyBetween - Space between items
5794
+ * @param props.justifyAround - Space around items
5795
+ * @param props.justifyEvenly - Space evenly between items
5796
+ *
5797
+
5798
+ * POSITION PROPS:
5799
+ * @param props.relative - Relative positioning
5800
+ * @param props.absolute - Absolute positioning
5801
+ * @param props.fixed - Fixed positioning
5802
+ * @param props.sticky - Sticky positioning
5803
+ * @param props.static - Static positioning
5804
+ *
5805
+
5806
+ * DISPLAY PROPS:
5807
+ * @param props.flex - Display as flex container
5808
+ * @param props.block - Display as block
5809
+ * @param props.inline - Display as inline
5810
+ * @param props.inlineBlock - Display as inline-block
5811
+ * @param props.inlineFlex - Display as inline-flex
5812
+ * @param props.grid - Display as grid
5813
+ * @param props.inlineGrid - Display as inline-grid
5814
+ * @param props.contents - Display as contents
5815
+ * @param props.hidden - Hide element (display: none)
5816
+ *
5817
+
5818
+ * OVERFLOW PROPS:
5819
+ * @param props.overflowAuto - Auto overflow on both axes
5820
+ * @param props.overflowHidden - Hidden overflow on both axes
5821
+ * @param props.overflowVisible - Visible overflow on both axes
5822
+ * @param props.overflowScroll - Scrollable overflow on both axes
5823
+ * @param props.overflowXAuto - Auto overflow on X axis
5824
+ * @param props.overflowYAuto - Auto overflow on Y axis
5825
+ * @param props.overflowXHidden - Hidden overflow on X axis
5826
+ * @param props.overflowYHidden - Hidden overflow on Y axis
5827
+ *
5828
+
5829
+ * FLEXBOX PROPS:
5830
+ * @param props.wrap - Enable flex wrap
5831
+ * @param props.reverse - Reverse the order of children
5832
+ *
5833
+
5834
+ * LAYOUT PROPS:
5835
+ * @param props.gap - Enable gap spacing between children
5836
+ * @param props.noGap - Disable gap spacing
5837
+ * @param props.padding - Enable internal padding
5838
+ * @param props.noPadding - Disable internal padding
5839
+ *
5840
+
5841
+ * FLEXBOX DIRECTION PROPS:
5842
+ * @param props.row - Flex direction row (horizontal)
5843
+ * @param props.column - Flex direction column (vertical)
5844
+ * @param props.rowReverse - Flex direction row-reverse
5845
+ * @param props.columnReverse - Flex direction column-reverse
5846
+ *
5847
+
5848
+ * APPEARANCE PROPS:
5849
+ * @param props.default - Default color appearance
5850
+ * @param props.primary - Primary color appearance (blue)
5851
+ * @param props.secondary - Secondary color appearance (gray)
5852
+ * @param props.tertiary - Tertiary color appearance
5853
+ * @param props.accent - Accent color appearance (rose)
5854
+ * @param props.success - Success color appearance (green)
5855
+ * @param props.danger - Danger color appearance (red)
5856
+ * @param props.warning - Warning color appearance (amber)
5857
+ * @param props.info - Info color appearance (cyan)
5858
+ * @param props.link - Link color appearance
5859
+ *
5860
+
5861
+ * BORDER PROPS:
5862
+ * @param props.border - Enable border on all sides
5863
+ * @param props.borderT - Enable border on top
5864
+ * @param props.borderB - Enable border on bottom
5865
+ * @param props.borderL - Enable border on left
5866
+ * @param props.borderR - Enable border on right
5867
+ * @param props.borderX - Enable border on left and right
5868
+ * @param props.borderY - Enable border on top and bottom
5869
+ * @param props.noBorder - Disable all borders
5870
+ *
5871
+
5872
+ * VISUAL DECORATION PROPS:
5873
+ * @param props.shadow - Enable drop shadow
5874
+ * @param props.noShadow - Disable drop shadow
5875
+ * @param props.ring - Enable focus ring
5876
+ * @param props.noRing - Disable focus ring
5877
+ * @param props.focusVisible - Enable focus-visible outline
5878
+ * @param props.noFocusVisible - Disable focus-visible outline
5879
+ *
5880
+
5881
+ * SHAPE PROPS:
5882
+ * @param props.rounded - Medium rounded corners (default)
5883
+ * @param props.pill - Fully rounded corners (circular)
5884
+ * @param props.sharp - No rounded corners (square)
5885
+ *
5886
+
5887
+ * FONT WEIGHT PROPS:
5888
+ * @param props.thin - Thin font weight (100)
5889
+ * @param props.extralight - Extra light font weight (200)
5890
+ * @param props.light - Light font weight (300)
5891
+ * @param props.normal - Normal font weight (400)
5892
+ * @param props.medium - Medium font weight (500)
5893
+ * @param props.semibold - Semibold font weight (600)
5894
+ * @param props.bold - Bold font weight (700)
5895
+ * @param props.extrabold - Extra bold font weight (800)
5896
+ * @param props.black - Black font weight (900)
5897
+ *
5898
+
5899
+ * FONT STYLE PROPS:
5900
+ * @param props.italic - Italic font style
5901
+ * @param props.notItalic - Not italic (normal) font style
5902
+ *
5903
+
5904
+ * TEXT DECORATION PROPS:
5905
+ * @param props.underline - Underline text decoration
5906
+ * @param props.lineThrough - Line-through text decoration
5907
+ * @param props.noUnderline - No text decoration
5908
+ *
5909
+
5910
+ * TEXT TRANSFORM PROPS:
5911
+ * @param props.uppercase - Transform text to uppercase
5912
+ * @param props.lowercase - Transform text to lowercase
5913
+ * @param props.capitalize - Capitalize first letter of each word
5914
+ * @param props.normalCase - Normal text case (no transformation)
5915
+ *
5916
+
5917
+ * FONT FAMILY PROPS:
5918
+ * @param props.sans - Sans-serif font family (default)
5919
+ * @param props.serif - Serif font family
5920
+ * @param props.mono - Monospace font family
5921
+ *
5922
+
5923
+ * TEXT ALIGNMENT PROPS:
5924
+ * @param props.textLeft - Align text to left
5925
+ * @param props.textCenter - Align text to center
5926
+ * @param props.textRight - Align text to right
5927
+ * @param props.textJustify - Justify text
5928
+ *
5929
+
5930
+ * VARIANT PROPS:
5931
+ * @param props.filled - Filled variant with solid background
5932
+ * @param props.outlined - Outlined variant with border only
5933
+ * @param props.ghost - Ghost variant with minimal styling
5934
+ *
5935
+ * @see {@link ButtonProps} for the complete type definition
5936
+ */
5750
5937
  const Button = forwardRef(function Button(props, ref) {
5751
5938
  const theme = useTheme();
5752
5939
  return jsx(ThemedComponent, { ref: ref, theme: theme.button, ...props });
5753
5940
  });
5754
5941
 
5942
+ /**
5943
+ * Badge - A small label for status, categories, counts, or notifications
5944
+ *
5945
+ * @example
5946
+ * ```tsx
5947
+ * // Basic badge
5948
+ * <Badge>New</Badge>
5949
+ *
5950
+ * // Status badge with appearance and variant
5951
+ * <Badge success filled pill>Active</Badge>
5952
+ *
5953
+ * // Count badge
5954
+ * <Badge danger filled>3</Badge>
5955
+ *
5956
+ * // As a link
5957
+ * <Badge href="/notifications" primary outlined>5 New</Badge>
5958
+ * ```
5959
+ *
5960
+ * @param props - Badge props
5961
+ * @param props.children - Badge content
5962
+ * @param props.className - Additional CSS classes to merge with theme classes
5963
+ *
5964
+
5965
+ * SIZE PROPS:
5966
+ * @param props.xs - Extra small size
5967
+ * @param props.sm - Small size
5968
+ * @param props.md - Medium size (default)
5969
+ * @param props.lg - Large size
5970
+ * @param props.xl - Extra large size
5971
+ *
5972
+
5973
+ * ALIGNMENT PROPS (Cross-axis):
5974
+ * @param props.itemsStart - Align items to start (top/left)
5975
+ * @param props.itemsEnd - Align items to end (bottom/right)
5976
+ * @param props.itemsCenter - Align items to center
5977
+ * @param props.itemsBaseline - Align items to baseline
5978
+ * @param props.itemsStretch - Stretch items to fill container
5979
+ *
5980
+
5981
+ * ALIGNMENT PROPS (Main-axis):
5982
+ * @param props.justifyStart - Justify content to start
5983
+ * @param props.justifyEnd - Justify content to end
5984
+ * @param props.justifyCenter - Justify content to center
5985
+ * @param props.justifyBetween - Space between items
5986
+ * @param props.justifyAround - Space around items
5987
+ * @param props.justifyEvenly - Space evenly between items
5988
+ *
5989
+
5990
+ * POSITION PROPS:
5991
+ * @param props.relative - Relative positioning
5992
+ * @param props.absolute - Absolute positioning
5993
+ * @param props.fixed - Fixed positioning
5994
+ * @param props.sticky - Sticky positioning
5995
+ * @param props.static - Static positioning
5996
+ *
5997
+
5998
+ * DISPLAY PROPS:
5999
+ * @param props.flex - Display as flex container
6000
+ * @param props.block - Display as block
6001
+ * @param props.inline - Display as inline
6002
+ * @param props.inlineBlock - Display as inline-block
6003
+ * @param props.inlineFlex - Display as inline-flex
6004
+ * @param props.grid - Display as grid
6005
+ * @param props.inlineGrid - Display as inline-grid
6006
+ * @param props.contents - Display as contents
6007
+ * @param props.hidden - Hide element (display: none)
6008
+ *
6009
+
6010
+ * OVERFLOW PROPS:
6011
+ * @param props.overflowAuto - Auto overflow on both axes
6012
+ * @param props.overflowHidden - Hidden overflow on both axes
6013
+ * @param props.overflowVisible - Visible overflow on both axes
6014
+ * @param props.overflowScroll - Scrollable overflow on both axes
6015
+ * @param props.overflowXAuto - Auto overflow on X axis
6016
+ * @param props.overflowYAuto - Auto overflow on Y axis
6017
+ * @param props.overflowXHidden - Hidden overflow on X axis
6018
+ * @param props.overflowYHidden - Hidden overflow on Y axis
6019
+ *
6020
+
6021
+ * FLEXBOX PROPS:
6022
+ * @param props.wrap - Enable flex wrap
6023
+ * @param props.reverse - Reverse the order of children
6024
+ *
6025
+
6026
+ * LAYOUT PROPS:
6027
+ * @param props.gap - Enable gap spacing between children
6028
+ * @param props.noGap - Disable gap spacing
6029
+ * @param props.padding - Enable internal padding
6030
+ * @param props.noPadding - Disable internal padding
6031
+ *
6032
+
6033
+ * FLEXBOX DIRECTION PROPS:
6034
+ * @param props.row - Flex direction row (horizontal)
6035
+ * @param props.column - Flex direction column (vertical)
6036
+ * @param props.rowReverse - Flex direction row-reverse
6037
+ * @param props.columnReverse - Flex direction column-reverse
6038
+ *
6039
+
6040
+ * APPEARANCE PROPS:
6041
+ * @param props.default - Default color appearance
6042
+ * @param props.primary - Primary color appearance (blue)
6043
+ * @param props.secondary - Secondary color appearance (gray)
6044
+ * @param props.tertiary - Tertiary color appearance
6045
+ * @param props.accent - Accent color appearance (rose)
6046
+ * @param props.success - Success color appearance (green)
6047
+ * @param props.danger - Danger color appearance (red)
6048
+ * @param props.warning - Warning color appearance (amber)
6049
+ * @param props.info - Info color appearance (cyan)
6050
+ * @param props.link - Link color appearance
6051
+ *
6052
+
6053
+ * BORDER PROPS:
6054
+ * @param props.border - Enable border on all sides
6055
+ * @param props.borderT - Enable border on top
6056
+ * @param props.borderB - Enable border on bottom
6057
+ * @param props.borderL - Enable border on left
6058
+ * @param props.borderR - Enable border on right
6059
+ * @param props.borderX - Enable border on left and right
6060
+ * @param props.borderY - Enable border on top and bottom
6061
+ * @param props.noBorder - Disable all borders
6062
+ *
6063
+
6064
+ * VISUAL DECORATION PROPS:
6065
+ * @param props.shadow - Enable drop shadow
6066
+ * @param props.noShadow - Disable drop shadow
6067
+ * @param props.ring - Enable focus ring
6068
+ * @param props.noRing - Disable focus ring
6069
+ * @param props.focusVisible - Enable focus-visible outline
6070
+ * @param props.noFocusVisible - Disable focus-visible outline
6071
+ *
6072
+
6073
+ * SHAPE PROPS:
6074
+ * @param props.rounded - Medium rounded corners (default)
6075
+ * @param props.pill - Fully rounded corners (circular)
6076
+ * @param props.sharp - No rounded corners (square)
6077
+ *
6078
+
6079
+ * FONT WEIGHT PROPS:
6080
+ * @param props.thin - Thin font weight (100)
6081
+ * @param props.extralight - Extra light font weight (200)
6082
+ * @param props.light - Light font weight (300)
6083
+ * @param props.normal - Normal font weight (400)
6084
+ * @param props.medium - Medium font weight (500)
6085
+ * @param props.semibold - Semibold font weight (600)
6086
+ * @param props.bold - Bold font weight (700)
6087
+ * @param props.extrabold - Extra bold font weight (800)
6088
+ * @param props.black - Black font weight (900)
6089
+ *
6090
+
6091
+ * FONT STYLE PROPS:
6092
+ * @param props.italic - Italic font style
6093
+ * @param props.notItalic - Not italic (normal) font style
6094
+ *
6095
+
6096
+ * TEXT DECORATION PROPS:
6097
+ * @param props.underline - Underline text decoration
6098
+ * @param props.lineThrough - Line-through text decoration
6099
+ * @param props.noUnderline - No text decoration
6100
+ *
6101
+
6102
+ * TEXT TRANSFORM PROPS:
6103
+ * @param props.uppercase - Transform text to uppercase
6104
+ * @param props.lowercase - Transform text to lowercase
6105
+ * @param props.capitalize - Capitalize first letter of each word
6106
+ * @param props.normalCase - Normal text case (no transformation)
6107
+ *
6108
+
6109
+ * FONT FAMILY PROPS:
6110
+ * @param props.sans - Sans-serif font family (default)
6111
+ * @param props.serif - Serif font family
6112
+ * @param props.mono - Monospace font family
6113
+ *
6114
+
6115
+ * TEXT ALIGNMENT PROPS:
6116
+ * @param props.textLeft - Align text to left
6117
+ * @param props.textCenter - Align text to center
6118
+ * @param props.textRight - Align text to right
6119
+ * @param props.textJustify - Justify text
6120
+ *
6121
+
6122
+ * VARIANT PROPS:
6123
+ * @param props.filled - Filled variant with solid background
6124
+ * @param props.outlined - Outlined variant with border only
6125
+ * @param props.ghost - Ghost variant with minimal styling
6126
+ *
6127
+ * @see {@link BadgeProps} for the complete type definition
6128
+ */
5755
6129
  const Badge = forwardRef(function Badge(props, ref) {
5756
6130
  const theme = useTheme();
5757
6131
  return jsx(ThemedComponent, { theme: theme.badge, ref: ref, ...props });