rocksolidjs 0.1.2 → 0.1.4

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.
Files changed (98) hide show
  1. package/dist/AccordionContext/AccordionContext.js +1 -1
  2. package/dist/AccordionDetails/AccordionDetails.d.ts +2 -1
  3. package/dist/AccordionDetails/AccordionDetails.js +1 -1
  4. package/dist/AccordionDetails/style.d.ts +48 -0
  5. package/dist/AccordionDetails/style.js +1 -1
  6. package/dist/AccordionSummary/AccordionSummary.d.ts +6 -4
  7. package/dist/AccordionSummary/AccordionSummary.js +1 -1
  8. package/dist/Alert/Alert.d.ts +8 -6
  9. package/dist/Alert/Alert.js +1 -1
  10. package/dist/Alert/style.d.ts +6 -0
  11. package/dist/Alert/style.js +1 -1
  12. package/dist/Avatar/Avatar.d.ts +5 -3
  13. package/dist/Avatar/Avatar.js +1 -1
  14. package/dist/Avatar/style.js +1 -1
  15. package/dist/Badge/Badge.d.ts +7 -5
  16. package/dist/Badge/Badge.js +1 -1
  17. package/dist/Badge/style.js +1 -1
  18. package/dist/Breadcrumbs/Breadcrumbs.d.ts +7 -5
  19. package/dist/Breadcrumbs/Breadcrumbs.js +1 -1
  20. package/dist/Button/Button.d.ts +8 -6
  21. package/dist/Button/Button.js +1 -1
  22. package/dist/Button/index.js +1 -1
  23. package/dist/Button/style.d.ts +48 -0
  24. package/dist/Button/style.js +1 -1
  25. package/dist/ButtonGroup/ButtonGroup.d.ts +19 -0
  26. package/dist/ButtonGroup/ButtonGroup.js +1 -0
  27. package/dist/ButtonGroup/ButtonGroupContext.d.ts +12 -0
  28. package/dist/ButtonGroup/ButtonGroupContext.js +1 -0
  29. package/dist/ButtonGroup/index.d.ts +2 -0
  30. package/dist/ButtonGroup/index.js +1 -0
  31. package/dist/ButtonGroup/style.d.ts +88 -0
  32. package/dist/ButtonGroup/style.js +1 -0
  33. package/dist/CardFooter/style.d.ts +2 -2
  34. package/dist/CardFooter/style.js +1 -1
  35. package/dist/CardTitle/CardTitle.d.ts +4 -4
  36. package/dist/Checkbox/Checkbox.d.ts +8 -4
  37. package/dist/Checkbox/Checkbox.js +1 -1
  38. package/dist/Chip/Chip.d.ts +6 -4
  39. package/dist/Chip/Chip.js +1 -1
  40. package/dist/Chip/style.d.ts +6 -18
  41. package/dist/Chip/style.js +1 -1
  42. package/dist/Dialog/Dialog.d.ts +7 -4
  43. package/dist/Dialog/Dialog.js +1 -1
  44. package/dist/Dialog/style.js +1 -1
  45. package/dist/DialogTitle/DialogTitle.d.ts +4 -4
  46. package/dist/Divider/Divider.d.ts +7 -0
  47. package/dist/Divider/Divider.js +1 -1
  48. package/dist/Divider/style.d.ts +138 -18
  49. package/dist/Divider/style.js +1 -1
  50. package/dist/IconButton/IconButton.d.ts +4 -3
  51. package/dist/IconButton/IconButton.js +1 -1
  52. package/dist/IconButton/style.js +1 -1
  53. package/dist/Input/Input.d.ts +7 -5
  54. package/dist/Input/Input.js +1 -1
  55. package/dist/Input/style.js +1 -1
  56. package/dist/Link/style.d.ts +6 -6
  57. package/dist/Link/style.js +1 -1
  58. package/dist/Progress/Progress.d.ts +7 -5
  59. package/dist/Progress/Progress.js +1 -1
  60. package/dist/Progress/style.js +1 -1
  61. package/dist/Radio/Radio.d.ts +8 -4
  62. package/dist/Radio/Radio.js +1 -1
  63. package/dist/Select/Select.d.ts +10 -2
  64. package/dist/Select/Select.js +1 -1
  65. package/dist/Select/style.d.ts +156 -78
  66. package/dist/Select/style.js +1 -1
  67. package/dist/Skeleton/Skeleton.d.ts +2 -2
  68. package/dist/Skeleton/Skeleton.js +1 -1
  69. package/dist/Spinner/Spinner.d.ts +1 -1
  70. package/dist/Spinner/Spinner.js +1 -1
  71. package/dist/Switch/Switch.d.ts +6 -4
  72. package/dist/Switch/Switch.js +1 -1
  73. package/dist/Switch/style.js +1 -1
  74. package/dist/Tab/Tab.js +1 -1
  75. package/dist/Tab/style.js +1 -1
  76. package/dist/TableCell/TableCell.js +1 -1
  77. package/dist/TableContext/TableContext.d.ts +1 -1
  78. package/dist/TableContext/TableContext.js +1 -1
  79. package/dist/TabsContext/context.js +1 -1
  80. package/dist/ThemeProvider/componentsTV.d.ts +245 -58
  81. package/dist/ThemeProvider/componentsTV.js +1 -1
  82. package/dist/_chunks/Button-D7kRTDWq.js +1 -0
  83. package/dist/index.d.ts +3 -0
  84. package/dist/index.js +1 -1
  85. package/dist/styles/createTheme.js +2 -1
  86. package/dist/styles/index.js +1 -1
  87. package/dist/styles/theme/colors.js +1 -1
  88. package/dist/styles/theme/disabled.js +1 -1
  89. package/dist/styles/theme/themeSchema.js +1 -1
  90. package/dist/styles/theme/utilities.js +1 -1
  91. package/dist/styles/useTheme.js +1 -1
  92. package/dist/types/ExtendedComponentProps.d.ts +6 -0
  93. package/dist/types/ExtendedComponentProps.js +0 -0
  94. package/dist/types/Prettify.d.ts +3 -0
  95. package/dist/types/Prettify.js +0 -0
  96. package/package.json +15 -2
  97. package/dist/_chunks/createTheme-DT5vPeEE.js +0 -2
  98. package/dist/_chunks/themeSchema-BFl6XiaJ.js +0 -1
@@ -1 +1 @@
1
- import{createContext as e,useContext as t}from"solid-js";var n=e(),r=()=>{let e=t(n);if(!e)throw Error(`Use AccordionSummary and AccordionDetails inside Accordion component.`);return e};export{n as AccordionContext,r as useAccordionContext};
1
+ import{createContext as e,useContext as t}from"solid-js";var n=e(),r=()=>{let e=t(n);if(!e)throw Error(`AccordionSummary and AccordionDetails must be used inside an Accordion component.`);return e};export{n as AccordionContext,r as useAccordionContext};
@@ -3,6 +3,7 @@ export type AccordionDetailsProps = {
3
3
  children?: JSXElement;
4
4
  class?: string;
5
5
  onTransitionEnd?: (event: TransitionEvent) => void;
6
- } & ComponentProps<"div">;
6
+ ref?: (element: HTMLDivElement) => void;
7
+ } & Omit<ComponentProps<"div">, "ref">;
7
8
  declare const AccordionDetails: (props: AccordionDetailsProps) => import("solid-js").JSX.Element;
8
9
  export default AccordionDetails;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{useAccordionContext as r}from"../AccordionContext/AccordionContext.js";import"../AccordionContext/index.js";import{className as i,effect as a,insert as o,mergeProps as s,spread as c,template as l,use as u}from"solid-js/web";import{createMemo as d,createRenderEffect as f,onMount as p,splitProps as m}from"solid-js";var h=l(`<div><div>`),g=l=>{let[g,_]=m(l,[`class`,`children`,`onTransitionEnd`]),v=n(),y=r(),b=!1,x,S=()=>y.isExpanded(),C=()=>{if(y.disableTransition()){let e=S()?`auto`:`0px`;x&&(x.style.height=e);return}let e=S()?x?.scrollHeight??0:0;x&&(!S()&&b&&(x.style.height=`${x?.scrollHeight??0}px`),x.offsetHeight,b=!1,x.style.height=`${e}px`)},w=d(()=>{let e={disableTransition:y.disableTransition()};return v?v.componentsTV.accordionDetails(e):t(e)});p(()=>{C()}),f(()=>{C()});let T=e=>{e.propertyName===`height`&&S()&&(b=!0,x.style.height=`auto`),g.onTransitionEnd?.(e)},E=d(()=>{let e=y.accordionId();if(e)return{"aria-labelledby":`accordion-${e}-summary`,id:`accordion-${e}-details`,role:`region`}});return(()=>{var t=h(),n=t.firstChild,r=x;return typeof r==`function`?u(r,t):x=t,c(t,s(E,_,{get class(){return e(w().base(),g.class)},onTransitionEnd:T}),!1,!0),o(n,()=>g.children),a(()=>i(n,w().content())),t})()};export{g as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{useAccordionContext as r}from"../AccordionContext/AccordionContext.js";import"../AccordionContext/index.js";import{className as i,effect as a,insert as o,mergeProps as s,spread as c,template as l,use as u}from"solid-js/web";import{createMemo as d,createRenderEffect as f,onMount as p,splitProps as m}from"solid-js";var h=l(`<div><div>`),g=l=>{let[g,_]=m(l,[`class`,`children`,`onTransitionEnd`,`ref`]),v=!0,y=n(),b=r(),x,S=()=>b.isExpanded(),C=S(),w=C,T=()=>{if(b.disableTransition()||v){let e=S()?`auto`:`0px`;x&&(x.style.height=e);return}let e=S()?x?.scrollHeight??0:0;x&&(!S()&&w&&(x.style.height=`${x?.scrollHeight??0}px`),x.offsetHeight,w=!1,x.style.height=`${e}px`)},E=d(()=>{let e={expanded:C,disableTransition:b.disableTransition()};return y?y.componentsTV.accordionDetails(e):t(e)});p(()=>{T(),v=!1}),f(()=>{T()});let D=e=>{e.target===x&&e.propertyName===`height`&&S()&&(w=!0,x.style.height=`auto`),g.onTransitionEnd?.(e)},O=d(()=>{let e=b.accordionId();if(e)return{"aria-labelledby":`accordion-${e}-summary`,id:`accordion-${e}-details`,role:`region`}});return(()=>{var t=h(),n=t.firstChild;return u(e=>{x=e,g.ref?.(e)},t),c(t,s(O,_,{get class(){return e(E().base(),g.class)},onTransitionEnd:D}),!1,!0),o(n,()=>g.children),a(()=>i(n,E().content())),t})()};export{g as default};
@@ -6,6 +6,14 @@ export declare const accordionDetails: (theme?: Theme) => import('tailwind-varia
6
6
  base: string;
7
7
  };
8
8
  };
9
+ expanded: {
10
+ true: {
11
+ base: string;
12
+ };
13
+ false: {
14
+ base: string;
15
+ };
16
+ };
9
17
  }, {
10
18
  base: string[];
11
19
  content: string[];
@@ -16,6 +24,14 @@ export declare const accordionDetails: (theme?: Theme) => import('tailwind-varia
16
24
  base: string;
17
25
  };
18
26
  };
27
+ expanded: {
28
+ true: {
29
+ base: string;
30
+ };
31
+ false: {
32
+ base: string;
33
+ };
34
+ };
19
35
  }, {
20
36
  base: string[];
21
37
  content: string[];
@@ -26,6 +42,14 @@ export declare const accordionDetails: (theme?: Theme) => import('tailwind-varia
26
42
  base: string;
27
43
  };
28
44
  };
45
+ expanded: {
46
+ true: {
47
+ base: string;
48
+ };
49
+ false: {
50
+ base: string;
51
+ };
52
+ };
29
53
  }, {
30
54
  base: string[];
31
55
  content: string[];
@@ -37,6 +61,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
37
61
  base: string;
38
62
  };
39
63
  };
64
+ expanded: {
65
+ true: {
66
+ base: string;
67
+ };
68
+ false: {
69
+ base: string;
70
+ };
71
+ };
40
72
  }, {
41
73
  base: string[];
42
74
  content: string[];
@@ -47,6 +79,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
47
79
  base: string;
48
80
  };
49
81
  };
82
+ expanded: {
83
+ true: {
84
+ base: string;
85
+ };
86
+ false: {
87
+ base: string;
88
+ };
89
+ };
50
90
  }, {
51
91
  base: string[];
52
92
  content: string[];
@@ -57,6 +97,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
57
97
  base: string;
58
98
  };
59
99
  };
100
+ expanded: {
101
+ true: {
102
+ base: string;
103
+ };
104
+ false: {
105
+ base: string;
106
+ };
107
+ };
60
108
  }, {
61
109
  base: string[];
62
110
  content: string[];
@@ -1 +1 @@
1
- import e from"../styles/theme/index.js";import{tv as t}from"tailwind-variants";var n=(n=e)=>t({slots:{base:[`overflow-hidden`,n.typography.colors.textPrimary],content:[`pt-2 pb-3 px-4`,n.typography.variants.body2]},variants:{disableTransition:{true:{},false:{base:`transition-height duration-300`}}}}),r=n();export{n as accordionDetails,r as default};
1
+ import e from"../styles/theme/index.js";import{tv as t}from"tailwind-variants";var n=(n=e)=>t({slots:{base:[`overflow-hidden`,n.typography.colors.textPrimary],content:[`pt-2 pb-3 px-4`,n.typography.variants.body2]},variants:{disableTransition:{true:{},false:{base:`transition-[height] duration-300`}},expanded:{true:{base:`h-auto`},false:{base:`h-0`}}}}),r=n();export{n as accordionDetails,r as default};
@@ -1,9 +1,11 @@
1
1
  import { ComponentProps, JSXElement } from 'solid-js';
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
2
4
  import { ButtonProps } from '../Button';
3
- type AccordionSummarySlotProps = {
4
- button?: ButtonProps;
5
- icon?: NonNullable<ButtonProps["slotProps"]>["endIcon"];
6
- };
5
+ type AccordionSummarySlotProps = Prettify<{
6
+ button?: Prettify<ButtonProps<"button"> & WithExtendedComponentProps>;
7
+ icon?: NonNullable<ButtonProps<"button">["slotProps"]>["endIcon"];
8
+ }>;
7
9
  export type AccordionSummaryProps = {
8
10
  children?: JSXElement;
9
11
  class?: string;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{useAccordionContext as r}from"../AccordionContext/AccordionContext.js";import"../AccordionContext/index.js";import i from"../Button/Button.js";import"../Button/index.js";import a from"../icons/AngleUp.js";import o from"../icons/AngleDown.js";import{createComponent as s,insert as c,mergeProps as l,spread as u,template as d}from"solid-js/web";import{createMemo as f,mergeProps as p,splitProps as m}from"solid-js";var h=d(`<div>`),g=d=>{let g=p({collapsedIcon:s(a,{class:`text-lg`}),expandedIcon:s(o,{class:`text-lg`})},d),[_,v]=m(g,[`class`,`children`,`collapsedIcon`,`expandedIcon`,`slotProps`]),y=n(),b=r(),x=f(()=>b.isExpanded()?_.expandedIcon:_.collapsedIcon),S=f(()=>y?y.componentsTV.accordionSummary():t()),C=f(()=>{let e=b.accordionId(),t={"aria-expanded":b.isExpanded()};return e?{...t,"aria-controls":`accordion-${e}-details`,id:`accordion-${e}-summary`}:t});return(()=>{var t=h();return u(t,v,!1,!0),c(t,s(i,l(C,()=>_.slotProps?.button,{get onClick(){return b.onToggleExpand},get endIcon(){return x()},get disabled(){return b.isDisabled()},variant:`ghost`,get class(){return e([S(),_.slotProps?.button?.class])},get slotProps(){return{startIcon:_.slotProps?.button?.slotProps?.startIcon,endIcon:_.slotProps?.icon}},fullWidth:!0,get children(){return _.children}}))),t})()};export{g as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{useAccordionContext as r}from"../AccordionContext/AccordionContext.js";import"../AccordionContext/index.js";import"../types/Prettify.js";import"../types/ExtendedComponentProps.js";import{t as i}from"../_chunks/Button-D7kRTDWq.js";import a from"../icons/AngleUp.js";import o from"../icons/AngleDown.js";import{createComponent as s,insert as c,mergeProps as l,spread as u,template as d}from"solid-js/web";import{createMemo as f,mergeProps as p,splitProps as m}from"solid-js";var h=d(`<div>`),g=d=>{let g=p({collapsedIcon:s(a,{get class(){return e(`text-lg`)}}),expandedIcon:s(o,{get class(){return e(`text-lg`)}})},d),[_,v]=m(g,[`children`,`collapsedIcon`,`expandedIcon`,`slotProps`]),y=n(),b=r(),x=f(()=>b.isExpanded()?_.expandedIcon:_.collapsedIcon),S=f(()=>y?y.componentsTV.accordionSummary():t()),C=f(()=>{let e=b.accordionId(),t={"aria-expanded":b.isExpanded()};return e?{...t,"aria-controls":`accordion-${e}-details`,id:`accordion-${e}-summary`}:t});return(()=>{var t=h();return u(t,v,!1,!0),c(t,s(i,l(C,()=>_.slotProps?.button,{get onClick(){return b.onToggleExpand},get endIcon(){return x()},get disabled(){return b.isDisabled()},variant:`ghost`,get class(){return e([S(),_.slotProps?.button?.class])},get slotProps(){return{startIcon:_.slotProps?.button?.slotProps?.startIcon,endIcon:_.slotProps?.icon}},fullWidth:!0,get children(){return _.children}}))),t})()};export{g as default};
@@ -1,16 +1,18 @@
1
1
  import { ComponentProps, JSXElement, ValidComponent } from 'solid-js';
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
2
4
  import { VariantProps } from 'tailwind-variants';
3
5
  import { TypographyProps } from '../Typography';
4
6
  import { IconButtonProps } from '../IconButton';
5
7
  import { ThemeColors } from '../styles/theme/colors';
6
8
  import { default as alertDefaultStyles } from './style';
7
9
  type AlertVariants = VariantProps<typeof alertDefaultStyles>;
8
- type AlertSlotProps = {
9
- icon?: TypographyProps;
10
- content?: TypographyProps;
11
- action?: ComponentProps<"div">;
12
- closeButton?: IconButtonProps;
13
- };
10
+ type AlertSlotProps = Prettify<{
11
+ icon?: Prettify<TypographyProps & WithExtendedComponentProps>;
12
+ content?: Prettify<TypographyProps & WithExtendedComponentProps>;
13
+ action?: Prettify<ComponentProps<"div"> & WithExtendedComponentProps>;
14
+ closeButton?: Prettify<Omit<IconButtonProps, "as"> & WithExtendedComponentProps>;
15
+ }>;
14
16
  export type AlertProps<T extends ValidComponent = "div"> = {
15
17
  action?: JSXElement;
16
18
  as?: T;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import r from"../Typography/Typography.js";import"../Typography/index.js";import i from"../IconButton/IconButton.js";import"../IconButton/index.js";import a from"../icons/Alert.js";import o from"../icons/Error.js";import s from"../icons/Checkmark.js";import c from"../icons/Info.js";import l from"../icons/Warning.js";import u from"../icons/Cross.js";import{Dynamic as d,createComponent as f,insert as p,memo as m,mergeProps as h,spread as g,template as _}from"solid-js/web";import{createMemo as v,mergeProps as y,splitProps as b}from"solid-js";import"tailwind-variants";var x=_(`<div>`),S=_=>{let S=y({color:`default`,variant:`filled`},_),[C,w]=b(S,[`as`,`action`,`children`,`class`,`color`,`icon`,`onClose`,`slotProps`,`variant`]),T=n(),E=v(()=>{if(C.icon)return C.icon;switch(C.color){case`success`:return f(s,{});case`info`:return f(c,{});case`warning`:return f(l,{});case`error`:return f(o,{});default:return f(a,{})}}),D=v(()=>{let e={color:C.color,variant:C.variant};return T?T.componentsTV.alert(e):t(e)});return f(d,h({role:`alert`},w,{get component(){return C.as??`div`},get class(){return e(D().base(),C.class)},get children(){return[m(()=>m(()=>!!E())()?f(r,h({as:`span`},()=>C.slotProps?.icon,{get class(){return e(D().icon(),C.slotProps?.icon?.class)},get children(){return E()}})):null),f(r,h({as:`div`,variant:`inherit`},()=>C.slotProps?.content,{get class(){return e(D().content(),C.slotProps?.content?.class)},get children(){return C.children}})),m(()=>m(()=>!!C.action)()?(()=>{var e=x();return g(e,h(()=>C.slotProps?.action),!1,!0),p(e,()=>C.action),e})():null),m(()=>m(()=>typeof C.onClose==`function`)()?f(i,h({"aria-label":`Close`,get color(){return C.color},variant:`text`,size:`small`},()=>C.slotProps?.closeButton,{get onClick(){return C.onClose},get children(){return f(u,{})}})):null)]}}))};export{S as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import"../types/Prettify.js";import"../types/ExtendedComponentProps.js";import r from"../Typography/Typography.js";import"../Typography/index.js";import i from"../IconButton/IconButton.js";import"../IconButton/index.js";import a from"../icons/Alert.js";import o from"../icons/Error.js";import s from"../icons/Checkmark.js";import c from"../icons/Info.js";import l from"../icons/Warning.js";import u from"../icons/Cross.js";import{Dynamic as d,createComponent as f,insert as p,memo as m,mergeProps as h,spread as g,template as _}from"solid-js/web";import{createMemo as v,mergeProps as y,splitProps as b}from"solid-js";import"tailwind-variants";var x=_(`<div>`),S=_=>{let S=y({color:`default`,variant:`filled`},_),[C,w]=b(S,[`as`,`action`,`children`,`class`,`color`,`icon`,`onClose`,`slotProps`,`variant`]),T=n(),E=v(()=>{if(C.icon!==null){if(C.icon)return C.icon;switch(C.color){case`success`:return f(s,{});case`info`:return f(c,{});case`warning`:return f(l,{});case`error`:return f(o,{});default:return f(a,{})}}}),D=v(()=>{let e={color:C.color,variant:C.variant};return T?T.componentsTV.alert(e):t(e)}),O=v(()=>C.slotProps);return f(d,h({role:`alert`},w,{get component(){return C.as??`div`},get class(){return e(D().base(),C.class)},get children(){return[m(()=>m(()=>!!E())()?f(r,h({as:`span`},()=>O()?.icon,{get class(){return e(D().icon(),O()?.icon?.class)},get children(){return E()}})):null),f(r,h({as:`div`,variant:`inherit`},()=>O()?.content,{get class(){return e(D().content(),O()?.content?.class)},get children(){return C.children}})),m(()=>m(()=>!!C.action)()?(()=>{var e=x();return g(e,h(()=>O()?.action),!1,!0),p(e,()=>C.action),e})():null),m(()=>m(()=>typeof C.onClose==`function`)()?f(i,h({"aria-label":`Close`,get color(){return C.color},size:`small`},()=>O()?.closeButton,{get onClick(){return C.onClose},get class(){return e(D().closeButton(),O()?.closeButton?.class)},get children(){return f(u,{})}})):null)]}}))};export{S as default};
@@ -12,6 +12,7 @@ export declare const alert: (theme?: Theme) => import('tailwind-variants').TVRet
12
12
  base: string[];
13
13
  content: string;
14
14
  icon: string;
15
+ closeButton: string[];
15
16
  }, undefined, {
16
17
  color: Record<"default" | "success" | "warning" | "info" | "error", {}>;
17
18
  variant: {
@@ -25,6 +26,7 @@ export declare const alert: (theme?: Theme) => import('tailwind-variants').TVRet
25
26
  base: string[];
26
27
  content: string;
27
28
  icon: string;
29
+ closeButton: string[];
28
30
  }, import('tailwind-variants').TVReturnTypeLike<{
29
31
  color: Record<"default" | "success" | "warning" | "info" | "error", {}>;
30
32
  variant: {
@@ -38,6 +40,7 @@ export declare const alert: (theme?: Theme) => import('tailwind-variants').TVRet
38
40
  base: string[];
39
41
  content: string;
40
42
  icon: string;
43
+ closeButton: string[];
41
44
  }>>;
42
45
  declare const _default: import('tailwind-variants').TVReturnType<{
43
46
  color: Record<"default" | "success" | "warning" | "info" | "error", {}>;
@@ -52,6 +55,7 @@ declare const _default: import('tailwind-variants').TVReturnType<{
52
55
  base: string[];
53
56
  content: string;
54
57
  icon: string;
58
+ closeButton: string[];
55
59
  }, undefined, {
56
60
  color: Record<"default" | "success" | "warning" | "info" | "error", {}>;
57
61
  variant: {
@@ -65,6 +69,7 @@ declare const _default: import('tailwind-variants').TVReturnType<{
65
69
  base: string[];
66
70
  content: string;
67
71
  icon: string;
72
+ closeButton: string[];
68
73
  }, import('tailwind-variants').TVReturnTypeLike<{
69
74
  color: Record<"default" | "success" | "warning" | "info" | "error", {}>;
70
75
  variant: {
@@ -78,5 +83,6 @@ declare const _default: import('tailwind-variants').TVReturnType<{
78
83
  base: string[];
79
84
  content: string;
80
85
  icon: string;
86
+ closeButton: string[];
81
87
  }>>;
82
88
  export default _default;
@@ -1 +1 @@
1
- import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import n from"../utils/typedKeys.js";import{tv as r}from"tailwind-variants";var i=[`solid`,`filled`,`outlined`],a=(a=e)=>r({slots:{base:[`flex items-center gap-2 w-full py-2 px-3 min-w-0 min-h-10`,a.rounded.small,a.typography.variants.body2],content:`grow-1 min-w-0`,icon:`text-lg shrink-0`},variants:{color:t(a.colors,()=>({})),variant:{solid:{},filled:{},outlined:{base:`border border-1`}}},compoundVariants:[...n(a.colors).flatMap(e=>i.map(t=>{let n=a.colors[e][t];return{color:e,variant:t,class:{base:[n.background,n.text,n.border]}}}))]}),o=a();export{a as alert,o as default};
1
+ import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import n from"../utils/typedKeys.js";import{tv as r}from"tailwind-variants";var i=[`solid`,`filled`,`outlined`],a=(a=e)=>r({slots:{base:[`flex items-center gap-2 w-full py-2 px-3 min-w-0 min-h-10`,a.rounded.small,a.typography.variants.body2],content:`grow-1 min-w-0`,icon:`text-lg shrink-0`,closeButton:[`hover:bg-black/15 hover:dark:bg-white/15`,`active:bg-black/25 active:dark:bg-white/25`,`text-[inherit] dark:text-[inherit]`]},variants:{color:t(a.colors,()=>({})),variant:{solid:{},filled:{},outlined:{base:`border border-1`}}},compoundVariants:[...n(a.colors).flatMap(e=>i.map(t=>{let n=a.colors[e][t];return{color:e,variant:t,class:{base:[n.background,n.text,n.border]}}}))]}),o=a();export{a as alert,o as default};
@@ -1,11 +1,13 @@
1
1
  import { ComponentProps, ValidComponent } from 'solid-js';
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
2
4
  import { VariantProps } from 'tailwind-variants';
3
5
  import { ThemeColors } from '../styles/theme/colors';
4
6
  import { default as avatarDefaultStyles } from './style';
5
7
  type AvatarVariants = VariantProps<typeof avatarDefaultStyles>;
6
- type AvatarSlotProps = {
7
- img?: ComponentProps<"img">;
8
- };
8
+ type AvatarSlotProps = Prettify<{
9
+ img?: Prettify<ComponentProps<"img"> & WithExtendedComponentProps>;
10
+ }>;
9
11
  export type AvatarProps<T extends ValidComponent = "div"> = {
10
12
  alt?: string;
11
13
  as?: T;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{Dynamic as r,createComponent as i,memo as a,mergeProps as o,spread as s,template as c}from"solid-js/web";import{createMemo as l,createSignal as u,mergeProps as d,splitProps as f}from"solid-js";import"tailwind-variants";var p=c(`<img>`),m=e=>e.trim().split(/\s+/).filter(Boolean).map(e=>e[0]).slice(0,2).join(``).toUpperCase(),h=c=>{let h=d({color:`default`,rounded:`full`,size:`medium`},c),[g,_]=f(h,[`as`,`alt`,`class`,`color`,`children`,`rounded`,`size`,`slotProps`,`src`]),v=n(),[y,b]=u(g.src&&typeof g.src==`string`),x=()=>m(g.alt||``)||g.children,S=e=>{b(!1),g.slotProps?.img?.onError(e)},C=l(()=>{let e={rounded:g.rounded,color:g.color,size:g.size};return v?v.componentsTV.avatar(e):t(e)});return i(r,o(_,{get component(){return g.as??`div`},get class(){return e(C().base(),g.class)},get children(){return a(()=>!!y())()?(()=>{var t=p();return s(t,o(()=>g.slotProps?.img,{get src(){return g.src},get alt(){return g.alt},onError:S,get class(){return e(C().img(),g.slotProps?.img?.class)}}),!1,!1),t})():x()}}))};export{h as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import"../types/Prettify.js";import"../types/ExtendedComponentProps.js";import{Dynamic as r,createComponent as i,memo as a,mergeProps as o,spread as s,template as c}from"solid-js/web";import{createMemo as l,createSignal as u,mergeProps as d,splitProps as f}from"solid-js";import"tailwind-variants";var p=c(`<img>`),m=e=>e.trim().split(/\s+/).filter(Boolean).map(e=>e[0]).slice(0,2).join(``).toUpperCase(),h=c=>{let h=d({color:`default`,rounded:`full`,size:`medium`},c),[g,_]=f(h,[`as`,`alt`,`class`,`color`,`children`,`rounded`,`size`,`slotProps`,`src`]),v=n(),[y,b]=u(g.src&&typeof g.src==`string`),x=l(()=>m(g.alt||g.children||``)),S=e=>{b(!1),g.slotProps?.img?.onError(e)},C=l(()=>{let e={rounded:g.rounded,color:g.color,size:g.size};return v?v.componentsTV.avatar(e):t(e)});return i(r,o(_,{get component(){return g.as??`div`},get class(){return e(C().base(),g.class)},get children(){return a(()=>!!y())()?(()=>{var t=p();return s(t,o(()=>g.slotProps?.img,{get src(){return g.src},get alt(){return x()},onError:S,get class(){return e(C().img(),g.slotProps?.img?.class)}}),!1,!1),t})():x()}}))};export{h as default};
@@ -1 +1 @@
1
- import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import{tv as n}from"tailwind-variants";var r=(r=e)=>n({slots:{base:[`size-8 grid place-items-center shrink-0`,r.typography.variants.body2],img:`w-full h-full rounded-[inherit]`},variants:{color:t(r.colors,e=>({base:[e.solid.background,e.solid.text]})),rounded:t(r.rounded,e=>({base:e})),size:{small:{base:`size-6 text-sm`},medium:{base:`size-8 text-sm`},large:{base:`size-10 text-md`}}}}),i=r();export{r as avatar,i as default};
1
+ import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import{tv as n}from"tailwind-variants";var r=(r=e)=>n({slots:{base:[`size-8 grid place-items-center shrink-0 select-none`,r.typography.variants.body2],img:`w-full h-full rounded-[inherit]`},variants:{color:t(r.colors,e=>({base:[e.solid.background,e.solid.text]})),rounded:t(r.rounded,e=>({base:e})),size:{small:{base:`size-6 text-sm`},medium:{base:`size-8 text-sm`},large:{base:`size-10 text-md`}}}}),i=r();export{r as avatar,i as default};
@@ -1,11 +1,13 @@
1
- import { ComponentProps, JSXElement, ParentProps } from 'solid-js';
1
+ import { ComponentProps, JSXElement } from 'solid-js';
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
2
4
  import { VariantProps } from 'tailwind-variants';
3
5
  import { ThemeColors } from '../styles/theme/colors';
4
6
  import { default as badgeDefaultStyles } from './style';
5
7
  type BadgeVariants = VariantProps<typeof badgeDefaultStyles>;
6
- type BadgeSlotProps = {
7
- badge?: ComponentProps<"span">;
8
- };
8
+ type BadgeSlotProps = Prettify<{
9
+ badge?: Prettify<ComponentProps<"span"> & WithExtendedComponentProps>;
10
+ }>;
9
11
  export type BadgeProps = {
10
12
  badgeContent?: JSXElement;
11
13
  class?: string;
@@ -17,5 +19,5 @@ export type BadgeProps = {
17
19
  };
18
20
  slotProps?: BadgeSlotProps;
19
21
  } & ComponentProps<"span">;
20
- declare const Badge: (props: ParentProps<BadgeProps>) => import("solid-js").JSX.Element;
22
+ declare const Badge: (props: BadgeProps) => import("solid-js").JSX.Element;
21
23
  export default Badge;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{insert as r,mergeProps as i,spread as a,template as o}from"solid-js/web";import{createMemo as s,mergeProps as c,splitProps as l}from"solid-js";import"tailwind-variants";var u=o(`<span><span>`),d=o=>{let d=c({color:`default`,overlap:`circle`},o),[f,p]=l(d,[`badgeContent`,`children`,`class`,`color`,`position`,`overlap`,`slotProps`]),m=n(),h=s(()=>f.badgeContent===void 0),g=s(()=>{let e={color:f.color,overlap:f.overlap,xPos:f.position?.x??`right`,yPos:f.position?.y??`top`,empty:h()};return m?m.componentsTV.badge(e):t(e)});return(()=>{var t=u(),n=t.firstChild;return a(t,i(p,{get class(){return e(g().base(),f.class)}}),!1,!0),r(t,()=>f.children,n),a(n,i({get"aria-hidden"(){return h()}},()=>f.slotProps?.badge,{get class(){return e(g().badge(),f.slotProps?.badge?.class)}}),!1,!0),r(n,()=>f.badgeContent),t})()};export{d as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import"../types/Prettify.js";import"../types/ExtendedComponentProps.js";import{insert as r,mergeProps as i,spread as a,template as o}from"solid-js/web";import{createMemo as s,mergeProps as c,splitProps as l}from"solid-js";import"tailwind-variants";var u=o(`<span><span>`),d=o=>{let d=c({color:`default`,overlap:`circle`},o),[f,p]=l(d,[`badgeContent`,`children`,`class`,`color`,`position`,`overlap`,`slotProps`]),m=n(),h=s(()=>f.badgeContent===void 0),g=s(()=>{let e={color:f.color,overlap:f.overlap,xPos:f.position?.x??`right`,yPos:f.position?.y??`top`,empty:h()};return m?m.componentsTV.badge(e):t(e)});return(()=>{var t=u(),n=t.firstChild;return a(t,i(p,{get class(){return e(g().base(),f.class)}}),!1,!0),r(t,()=>f.children,n),a(n,i({get"aria-hidden"(){return h()}},()=>f.slotProps?.badge,{get class(){return e(g().badge(),f.slotProps?.badge?.class)}}),!1,!0),r(n,()=>f.badgeContent),t})()};export{d as default};
@@ -1 +1 @@
1
- import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import{tv as n}from"tailwind-variants";var r=(r=e)=>n({slots:{base:`relative`,badge:[`absolute grid place-items-center leading-0`,`text-xs font-semibold`,r.rounded.full]},variants:{color:t(r.colors,e=>({badge:[e.solid.background,e.solid.text]})),yPos:{top:{badge:`top-0 -translate-y-1/2`},bottom:{badge:`bottom-0 translate-y-1/2`}},xPos:{left:{badge:`left-0 -translate-x-1/2`},right:{badge:`right-0 translate-x-1/2`}},overlap:{circle:{},rect:{}},empty:{true:{badge:`min-w-2 min-h-2 w-2 h-2`},false:{badge:[`p-1 min-w-4 min-h-4 w-fit-content h-4`,`leading-0 grid place-items-center`]}}},compoundVariants:[{overlap:`circle`,xPos:`left`,class:{badge:`left-[15%]`}},{overlap:`circle`,xPos:`right`,class:{badge:`right-[15%]`}},{overlap:`circle`,yPos:`top`,class:{badge:`top-[15%]`}},{overlap:`circle`,yPos:`bottom`,class:{badge:`bottom-[15%]`}}]}),i=r();export{r as badge,i as default};
1
+ import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import{tv as n}from"tailwind-variants";var r=(r=e)=>n({slots:{base:`relative`,badge:[`absolute grid place-items-center leading-0 select-none`,`text-xs font-semibold`,r.rounded.full]},variants:{color:t(r.colors,e=>({badge:[e.solid.background,e.solid.text]})),yPos:{top:{badge:`top-0 -translate-y-1/2`},bottom:{badge:`bottom-0 translate-y-1/2`}},xPos:{left:{badge:`left-0 -translate-x-1/2`},right:{badge:`right-0 translate-x-1/2`}},overlap:{circle:{},rect:{}},empty:{true:{badge:`min-w-2 min-h-2 w-2 h-2`},false:{badge:[`p-1 min-w-4 min-h-4 w-fit-content h-4`,`leading-0 grid place-items-center`]}}},compoundVariants:[{overlap:`circle`,xPos:`left`,class:{badge:`left-[15%]`}},{overlap:`circle`,xPos:`right`,class:{badge:`right-[15%]`}},{overlap:`circle`,yPos:`top`,class:{badge:`top-[15%]`}},{overlap:`circle`,yPos:`bottom`,class:{badge:`bottom-[15%]`}}]}),i=r();export{r as badge,i as default};
@@ -1,9 +1,11 @@
1
1
  import { ComponentProps, JSXElement, ValidComponent } from 'solid-js';
2
- type BreadcrumbsSlotProps = {
3
- ol?: ComponentProps<"ol">;
4
- li?: ComponentProps<"li">;
5
- seperator?: ComponentProps<"li">;
6
- };
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
4
+ type BreadcrumbsSlotProps = Prettify<{
5
+ ol?: Prettify<ComponentProps<"ol"> & WithExtendedComponentProps>;
6
+ li?: Prettify<ComponentProps<"li"> & WithExtendedComponentProps>;
7
+ seperator?: Prettify<ComponentProps<"li"> & WithExtendedComponentProps>;
8
+ }>;
7
9
  export type BreadcrumbsProps<T extends ValidComponent = "nav"> = {
8
10
  as?: T;
9
11
  class?: string;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{Dynamic as r,createComponent as i,insert as a,memo as o,mergeProps as s,spread as c,template as l}from"solid-js/web";import{For as u,children as d,createMemo as f,mergeProps as p,splitProps as m}from"solid-js";var h=l(`<ol>`),g=l(`<li>`),_=l(`<li aria-hidden>`),v=l=>{let v=p({seperator:`/`},l),[y,b]=m(v,[`as`,`children`,`class`,`seperator`,`slotProps`]),x=n(),S=d(()=>y.children).toArray(),C=f(()=>x?x.componentsTV.breadcrumbs():t());return i(r,s(b,{get component(){return y.as??`nav`},get class(){return e(C().base(),y.class)},get children(){var t=h();return c(t,s(()=>y.slotProps?.ol,{get class(){return e(C().ol(),y.slotProps?.ol?.class)}}),!1,!0),a(t,i(u,{each:S,children:(e,t)=>[(()=>{var t=g();return c(t,s(()=>y.slotProps?.li),!1,!0),a(t,e),t})(),o(()=>o(()=>t()!==S.length-1)()?(()=>{var e=_();return c(e,s(()=>y.slotProps?.seperator),!1,!0),a(e,()=>y.seperator),e})():null)]})),t}}))};export{v as default};
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import"../types/Prettify.js";import"../types/ExtendedComponentProps.js";import{Dynamic as r,createComponent as i,insert as a,memo as o,mergeProps as s,setAttribute as c,spread as l,template as u}from"solid-js/web";import{For as d,children as f,createMemo as p,mergeProps as m,splitProps as h}from"solid-js";var g=u(`<ol>`),_=u(`<li>`),v=u=>{let v=m({seperator:`/`},u),[y,b]=h(v,[`as`,`children`,`class`,`seperator`,`slotProps`]),x=n(),S=f(()=>y.children).toArray(),C=p(()=>x?x.componentsTV.breadcrumbs():t());return i(r,s(b,{get component(){return y.as??`nav`},get class(){return e(C().base(),y.class)},get children(){var t=g();return l(t,s(()=>y.slotProps?.ol,{get class(){return e(C().ol(),y.slotProps?.ol?.class)}}),!1,!0),a(t,i(d,{each:S,children:(e,t)=>[(()=>{var t=_();return l(t,s(()=>y.slotProps?.li),!1,!0),a(t,e),t})(),o(()=>o(()=>t()!==S.length-1)()?(()=>{var e=_();return c(e,`aria-hidden`,!0),l(e,s(()=>y.slotProps?.seperator),!1,!0),a(e,()=>y.seperator),e})():null)]})),t}}))};export{v as default};
@@ -1,13 +1,15 @@
1
1
  import { ComponentProps, JSXElement, ValidComponent } from 'solid-js';
2
+ import { Prettify } from '../types/Prettify';
3
+ import { WithExtendedComponentProps } from '../types/ExtendedComponentProps';
2
4
  import { VariantProps } from 'tailwind-variants';
3
5
  import { ThemeColors } from '../styles/theme/colors';
4
6
  import { default as buttonDefaultStyles } from './style';
5
7
  type ButtonVariants = VariantProps<typeof buttonDefaultStyles>;
6
- type ButtonSlotProps = {
7
- startIcon?: ComponentProps<"span">;
8
- endIcon?: ComponentProps<"span">;
9
- };
10
- export type ButtonProps<T extends ValidComponent = "button" | "span"> = {
8
+ type ButtonSlotProps = Prettify<{
9
+ startIcon?: Prettify<ComponentProps<"span"> & WithExtendedComponentProps>;
10
+ endIcon?: Prettify<ComponentProps<"span"> & WithExtendedComponentProps>;
11
+ }>;
12
+ export type ButtonProps<T extends ValidComponent = "button"> = {
11
13
  as?: T;
12
14
  color?: keyof ThemeColors;
13
15
  disabled?: ButtonVariants["disabled"];
@@ -20,5 +22,5 @@ export type ButtonProps<T extends ValidComponent = "button" | "span"> = {
20
22
  children?: JSXElement;
21
23
  class?: string;
22
24
  } & ComponentProps<T>;
23
- declare const Button: <T extends ValidComponent = "button" | "span">(props: ButtonProps<T>) => import("solid-js").JSX.Element;
25
+ declare const Button: <T extends ValidComponent = "button">(props: ButtonProps<T>) => import("solid-js").JSX.Element;
24
26
  export default Button;
@@ -1 +1 @@
1
- import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{Dynamic as r,createComponent as i,insert as a,memo as o,mergeProps as s,spread as c,template as l}from"solid-js/web";import{createMemo as u,mergeProps as d,splitProps as f}from"solid-js";import"tailwind-variants";var p=l(`<span>`),m=l=>{let m=d({as:`button`,color:`default`,variant:`solid`,size:`medium`},l),[h,g]=f(m,[`as`,`children`,`class`,`color`,`disabled`,`endIcon`,`fullWidth`,`size`,`startIcon`,`variant`,`slotProps`]),_=n(),v=u(()=>{let e={color:h.color,disabled:h.disabled,fullWidth:h.fullWidth,size:h.size,variant:h.variant};return _?_.componentsTV.button(e):t(e)});return i(r,s({get component(){return h.as||`button`}},g,{get class(){return e(v().base(),h.class)},get disabled(){return h.disabled},get children(){return[o(()=>o(()=>!!h.startIcon)()?(()=>{var t=p();return c(t,s(()=>h.slotProps?.startIcon,{get class(){return e(v().startIcon(),h.slotProps?.startIcon?.class)}}),!1,!0),a(t,()=>h.startIcon),t})():null),o(()=>h.children),o(()=>o(()=>!!h.endIcon)()?(()=>{var t=p();return c(t,s(()=>h.slotProps?.endIcon,{get class(){return e(v().endIcon(),h.slotProps?.endIcon?.class)}}),!1,!0),a(t,()=>h.endIcon),t})():null)]}}))};export{m as default};
1
+ import{t as e}from"../_chunks/Button-D7kRTDWq.js";export{e as default};
@@ -1 +1 @@
1
- import e from"./Button.js";export{e as default};
1
+ import{t as e}from"../_chunks/Button-D7kRTDWq.js";export{e as default};
@@ -34,6 +34,14 @@ export declare const button: (theme?: Theme) => import('tailwind-variants').TVRe
34
34
  };
35
35
  false: "";
36
36
  };
37
+ isChildOfButtonGroup: {
38
+ true: {
39
+ base: string[];
40
+ };
41
+ false: {
42
+ base: string[];
43
+ };
44
+ };
37
45
  }, {
38
46
  base: string[];
39
47
  startIcon: string;
@@ -73,6 +81,14 @@ export declare const button: (theme?: Theme) => import('tailwind-variants').TVRe
73
81
  };
74
82
  false: "";
75
83
  };
84
+ isChildOfButtonGroup: {
85
+ true: {
86
+ base: string[];
87
+ };
88
+ false: {
89
+ base: string[];
90
+ };
91
+ };
76
92
  }, {
77
93
  base: string[];
78
94
  startIcon: string;
@@ -112,6 +128,14 @@ export declare const button: (theme?: Theme) => import('tailwind-variants').TVRe
112
128
  };
113
129
  false: "";
114
130
  };
131
+ isChildOfButtonGroup: {
132
+ true: {
133
+ base: string[];
134
+ };
135
+ false: {
136
+ base: string[];
137
+ };
138
+ };
115
139
  }, {
116
140
  base: string[];
117
141
  startIcon: string;
@@ -152,6 +176,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
152
176
  };
153
177
  false: "";
154
178
  };
179
+ isChildOfButtonGroup: {
180
+ true: {
181
+ base: string[];
182
+ };
183
+ false: {
184
+ base: string[];
185
+ };
186
+ };
155
187
  }, {
156
188
  base: string[];
157
189
  startIcon: string;
@@ -191,6 +223,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
191
223
  };
192
224
  false: "";
193
225
  };
226
+ isChildOfButtonGroup: {
227
+ true: {
228
+ base: string[];
229
+ };
230
+ false: {
231
+ base: string[];
232
+ };
233
+ };
194
234
  }, {
195
235
  base: string[];
196
236
  startIcon: string;
@@ -230,6 +270,14 @@ declare const _default: import('tailwind-variants').TVReturnType<{
230
270
  };
231
271
  false: "";
232
272
  };
273
+ isChildOfButtonGroup: {
274
+ true: {
275
+ base: string[];
276
+ };
277
+ false: {
278
+ base: string[];
279
+ };
280
+ };
233
281
  }, {
234
282
  base: string[];
235
283
  startIcon: string;
@@ -1 +1 @@
1
- import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import n from"../utils/typedKeys.js";import{tv as r}from"tailwind-variants";var i=Object.keys(e.colors.default),a=(a=e)=>r({slots:{base:[`inline-flex justify-center items-center gap-2 font-normal align-middle`,a.rounded.small,a.focus],startIcon:`leading-[1] shrink-0`,endIcon:`leading-[1] shrink-0`},variants:{color:t(a.colors,()=>({})),variant:{...t(a.colors.default,()=>``),outlined:{base:`border`}},disabled:{true:{base:`user-event-none`},false:{base:`cursor-pointer`}},size:{small:{base:`py-[2px] px-2 text-sm min-h-6`},medium:{base:`py-1 px-3 text-sm min-h-8`},large:{base:`py-2 px-5 text-md gap-3 min-h-10`}},fullWidth:{true:{base:`w-full`},false:``}},compoundVariants:[...n(a.colors).flatMap(e=>i.map(t=>{let n=a.colors[e][t];return[{color:e,variant:t,disabled:!1,class:{base:[n.background,n.hover,n.active,n.text]}},{color:e,variant:t,disabled:!0,class:{base:[a.disabled.text,[`outlined`].includes(t)?a.disabled.border:``,[`solid`,`filled`].includes(t)?a.disabled.background:``]}}]}).flat())]}),o=a();export{a as button,o as default};
1
+ import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import n from"../utils/typedKeys.js";import{tv as r}from"tailwind-variants";var i=Object.keys(e.colors.default),a=(a=e)=>r({slots:{base:[`inline-flex justify-center items-center gap-2`,`font-normal align-middle`,a.focus],startIcon:`leading-[1] shrink-0`,endIcon:`leading-[1] shrink-0`},variants:{color:t(a.colors,()=>({})),variant:{...t(a.colors.default,()=>``),outlined:{base:`border`}},disabled:{true:{base:`pointer-events-none`},false:{base:`cursor-pointer`}},size:{small:{base:`py-[2px] px-2 text-sm min-h-6`},medium:{base:`py-1 px-3 text-sm min-h-8`},large:{base:`py-2 px-5 text-md gap-3 min-h-10`}},fullWidth:{true:{base:`w-full`},false:``},isChildOfButtonGroup:{true:{base:[a.rounded.none]},false:{base:[a.rounded.small]}}},compoundVariants:[...n(a.colors).flatMap(e=>i.map(t=>{let n=a.colors[e][t];return[{color:e,variant:t,disabled:!1,class:{base:[n.background,n.border,n.hover,n.active,n.text]}},{color:e,variant:t,disabled:!0,class:{base:[a.disabled.text,[`outlined`].includes(t)?a.disabled.border:``,[`solid`,`filled`].includes(t)?a.disabled.background:``]}}]}).flat())]}),o=a();export{a as button,o as default};
@@ -0,0 +1,19 @@
1
+ import { ComponentProps, JSXElement, ValidComponent } from 'solid-js';
2
+ import { VariantProps } from 'tailwind-variants';
3
+ import { ThemeColors } from '../styles/theme/colors';
4
+ import { ButtonProps } from '../Button';
5
+ import { default as buttonGroupDefaultStyles } from './style';
6
+ type ButtonGroupVariants = VariantProps<typeof buttonGroupDefaultStyles>;
7
+ export type ButtonGroupProps<T extends ValidComponent = "div"> = {
8
+ as?: T;
9
+ children?: JSXElement;
10
+ class?: string;
11
+ color?: keyof ThemeColors;
12
+ disabled?: ButtonProps["disabled"];
13
+ fullWidth?: ButtonProps["fullWidth"];
14
+ orientation?: ButtonGroupVariants["orientation"];
15
+ size?: ButtonProps["size"];
16
+ variant?: ButtonProps["variant"];
17
+ } & ComponentProps<T>;
18
+ declare const ButtonGroup: <T extends ValidComponent = "div">(props: ButtonGroupProps<T>) => import("solid-js").JSX.Element;
19
+ export default ButtonGroup;
@@ -0,0 +1 @@
1
+ import e from"../utils/cn.js";import t from"./style.js";import{useThemeContext as n}from"../ThemeProvider/ThemeContext.js";import"../ThemeProvider/index.js";import{n as r}from"../_chunks/Button-D7kRTDWq.js";import{Dynamic as i,createComponent as a,mergeProps as o}from"solid-js/web";import{createMemo as s,mergeProps as c,splitProps as l}from"solid-js";import"tailwind-variants";var u=u=>{let d=c({as:`div`},u),[f,p]=l(d,[`as`,`children`,`class`,`color`,`disabled`,`fullWidth`,`orientation`,`size`,`variant`]),m=n(),h=s(()=>{let e={color:f.color,disabled:f.disabled,fullWidth:f.fullWidth,orientation:f.orientation,variant:f.variant};return m?m.componentsTV.buttonGroup(e):t(e)}),g={color:()=>f.color,disabled:()=>f.disabled,fullWidth:()=>f.fullWidth,size:()=>f.size,variant:()=>f.variant};return a(i,o({role:`group`},p,{get component(){return f.as??`div`},get class(){return e(f.class,h())},get children(){return a(r.Provider,{value:g,get children(){return f.children}})}}))};export{u as default};
@@ -0,0 +1,12 @@
1
+ import { Accessor } from 'solid-js';
2
+ import { ThemeColors } from '../styles/theme/colors';
3
+ import { ButtonProps } from '../Button';
4
+ export type ButtonGroupContextValue = {
5
+ color: Accessor<keyof ThemeColors>;
6
+ disabled: Accessor<ButtonProps["disabled"]>;
7
+ fullWidth: Accessor<ButtonProps["fullWidth"]>;
8
+ size: Accessor<ButtonProps["size"]>;
9
+ variant: Accessor<ButtonProps["variant"]>;
10
+ };
11
+ export declare const ButtonGroupContext: import('solid-js').Context<ButtonGroupContextValue | undefined>;
12
+ export declare const useButtonGroupContext: () => ButtonGroupContextValue | undefined;
@@ -0,0 +1 @@
1
+ import{n as e,r as t}from"../_chunks/Button-D7kRTDWq.js";export{e as ButtonGroupContext,t as useButtonGroupContext};
@@ -0,0 +1,2 @@
1
+ export { default } from './ButtonGroup';
2
+ export * from './ButtonGroup';
@@ -0,0 +1 @@
1
+ import e from"./ButtonGroup.js";export{e as default};
@@ -0,0 +1,88 @@
1
+ import { Theme } from '../styles/theme';
2
+ export declare const buttonGroup: (theme?: Theme) => import('tailwind-variants').TVReturnType<{
3
+ disabled: {
4
+ true: "";
5
+ false: "";
6
+ };
7
+ fullWidth: {
8
+ true: "w-full";
9
+ false: "";
10
+ };
11
+ orientation: {
12
+ horizontal: string[];
13
+ vertical: string[];
14
+ };
15
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
16
+ }, undefined, string[], {
17
+ disabled: {
18
+ true: "";
19
+ false: "";
20
+ };
21
+ fullWidth: {
22
+ true: "w-full";
23
+ false: "";
24
+ };
25
+ orientation: {
26
+ horizontal: string[];
27
+ vertical: string[];
28
+ };
29
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
30
+ }, undefined, import('tailwind-variants').TVReturnTypeLike<{
31
+ disabled: {
32
+ true: "";
33
+ false: "";
34
+ };
35
+ fullWidth: {
36
+ true: "w-full";
37
+ false: "";
38
+ };
39
+ orientation: {
40
+ horizontal: string[];
41
+ vertical: string[];
42
+ };
43
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
44
+ }, undefined>>;
45
+ declare const _default: import('tailwind-variants').TVReturnType<{
46
+ disabled: {
47
+ true: "";
48
+ false: "";
49
+ };
50
+ fullWidth: {
51
+ true: "w-full";
52
+ false: "";
53
+ };
54
+ orientation: {
55
+ horizontal: string[];
56
+ vertical: string[];
57
+ };
58
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
59
+ }, undefined, string[], {
60
+ disabled: {
61
+ true: "";
62
+ false: "";
63
+ };
64
+ fullWidth: {
65
+ true: "w-full";
66
+ false: "";
67
+ };
68
+ orientation: {
69
+ horizontal: string[];
70
+ vertical: string[];
71
+ };
72
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
73
+ }, undefined, import('tailwind-variants').TVReturnTypeLike<{
74
+ disabled: {
75
+ true: "";
76
+ false: "";
77
+ };
78
+ fullWidth: {
79
+ true: "w-full";
80
+ false: "";
81
+ };
82
+ orientation: {
83
+ horizontal: string[];
84
+ vertical: string[];
85
+ };
86
+ variant: Record<keyof import('..').ThemeColorVariants, string>;
87
+ }, undefined>>;
88
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"../styles/theme/index.js";import t from"../utils/asVariant.js";import n from"../utils/typedKeys.js";import{tv as r}from"tailwind-variants";var i=(i=e)=>r({base:[`inline-flex gap-0`],variants:{disabled:{true:``,false:``},fullWidth:{true:`w-full`,false:``},orientation:{horizontal:[`flex-row`,`ltr:[&>button:first-child]:rounded-tl-sm`,`ltr:[&>button:first-child]:rounded-bl-sm`,`ltr:[&>button:last-child]:rounded-tr-sm`,`ltr:[&>button:last-child]:rounded-br-sm`,`rtl:[&>button:first-child]:rounded-tr-sm`,`rtl:[&>button:first-child]:rounded-br-sm`,`rtl:[&>button:last-child]:rounded-tl-sm`,`rtl:[&>button:last-child]:rounded-bl-sm`],vertical:[`flex-col`,`[&>button:first-child]:rounded-tl-sm`,`[&>button:first-child]:rounded-tr-sm`,`[&>button:last-child]:rounded-bl-sm`,`[&>button:last-child]:rounded-br-sm`]},variant:t(i.colors.default,()=>``)},compoundVariants:[...n(i.colors.default).flatMap(e=>[!0,!1].map(t=>({orientation:`horizontal`,variant:e,disabled:t,class:e===`outlined`?[`ltr:[&>button:not(:last-child)]:border-r-0`,`rtl:[&>button:not(:last-child)]:border-l-0`]:[`ltr:[&>button]:border-l-1`,`rtl:[&>button]:border-r-1`,`ltr:[&>button:first-child]:border-l-0`,`rtl:[&>button:first-child]:border-r-0`,`ltr:[&>button:last-child]:border-r-0`,`rtl:[&>button:last-child]:border-l-0`,...t?[`ltr:[&>button]:border-l-neutral-300`,`rtl:[&>button]:border-r-neutral-300`,`ltr:dark:[&>button]:border-l-neutral-700`,`rtl:dark:[&>button]:border-r-neutral-700`]:[`filled`,`ghost`].includes(e)?[`ltr:[&>button]:border-l-[rgba(127,127,127,0.40)]`,`rtl:[&>button]:border-r-[rgba(127,127,127,0.40)]`]:[`ltr:[&>button]:border-l-white/40`,`rtl:[&>button]:border-r-white/40`,`ltr:dark:[&>button]:border-l-black/40`,`rtl:dark:[&>button]:border-r-black/40`]]}))),...n(i.colors.default).flatMap(e=>[!0,!1].map(t=>({orientation:`vertical`,variant:e,disabled:t,class:e===`outlined`?[`[&>button:not(:last-child)]:border-b-0`]:[`[&>button]:border-b-1`,`[&>button:last-child]:border-b-0`,...t?[`[&>button]:border-b-neutral-300`,`dark:[&>button]:border-b-neutral-700`]:[`filled`,`ghost`].includes(e)?[`[&>button]:border-b-[rgba(127,127,127,0.40)]`]:[`[&>button]:border-b-white/40`,`dark:[&>button]:border-b-black/40`]]})))],defaultVariants:{fullWidth:!1,orientation:`horizontal`,variant:`solid`}}),a=i();export{i as buttonGroup,a as default};
@@ -1,4 +1,4 @@
1
1
  import { Theme } from '../styles/theme';
2
- export declare const cardFooter: (_theme?: Theme) => import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, "flex items-center gap-2 px-4 py-2", {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>;
3
- declare const _default: import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, "flex items-center gap-2 px-4 py-2", {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>;
2
+ export declare const cardFooter: (_theme?: Theme) => import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, "flex items-center gap-2 px-4 pt-3 pb-4", {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>;
3
+ declare const _default: import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, "flex items-center gap-2 px-4 pt-3 pb-4", {} | {}, undefined, import('tailwind-variants').TVReturnTypeLike<unknown, undefined>>;
4
4
  export default _default;