bonkers-ui 2.0.2 → 2.0.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 (167) hide show
  1. package/README.md +25 -40
  2. package/_types/colors.d.ts +2 -0
  3. package/_types/colors.js +1 -1
  4. package/_types/colors.js.map +1 -1
  5. package/assets/UiBerRank.css +1 -0
  6. package/assets/UiButton.css +0 -0
  7. package/assets/UiCheckbox.css +1 -0
  8. package/assets/UiInputRange.css +1 -0
  9. package/assets/UiRadio.css +1 -0
  10. package/assets/UiSelect.css +1 -0
  11. package/assets/UiToggle.css +1 -0
  12. package/bonkers.css +243 -0
  13. package/components/UiAccordion/UiAccordion.InfoDropdown.js +31 -0
  14. package/components/UiAccordion/UiAccordion.InfoDropdown.js.map +1 -0
  15. package/components/UiAccordion/UiAccordion.base.js +13 -0
  16. package/components/UiAccordion/UiAccordion.base.js.map +1 -0
  17. package/components/UiAccordion/UiAccordion.context.js +39 -0
  18. package/components/UiAccordion/UiAccordion.context.js.map +1 -0
  19. package/components/UiAccordion/UiAccordionItem.base.js +43 -0
  20. package/components/UiAccordion/UiAccordionItem.base.js.map +1 -0
  21. package/components/UiAccordion/_types.js +5 -0
  22. package/components/UiAccordion/_types.js.map +1 -0
  23. package/components/UiAccordion/index.d.ts +1 -0
  24. package/components/UiAccordion/index.js +13 -0
  25. package/{index.js.map → components/UiAccordion/index.js.map} +1 -1
  26. package/components/UiAlert/UiAlert.d.ts +1 -0
  27. package/components/UiAlert/UiAlert.js +12 -10
  28. package/components/UiAlert/UiAlert.js.map +1 -1
  29. package/components/UiBerRank/UiBerRank.d.ts +1 -0
  30. package/components/UiBerRank/UiBerRank.js +35 -31
  31. package/components/UiBerRank/UiBerRank.js.map +1 -1
  32. package/components/UiBerRank/_types.js +6 -5
  33. package/components/UiBerRank/_types.js.map +1 -1
  34. package/components/UiButton/UiButton.d.ts +1 -0
  35. package/components/UiButton/UiButton.js +260 -103
  36. package/components/UiButton/UiButton.js.map +1 -1
  37. package/components/UiButton/_types.d.ts +15 -9
  38. package/components/UiButton/_types.js +1 -1
  39. package/components/UiButton/_types.js.map +1 -1
  40. package/components/UiCheckbox/UiCheckbox.d.ts +1 -0
  41. package/components/UiCheckbox/UiCheckbox.js +48 -42
  42. package/components/UiCheckbox/UiCheckbox.js.map +1 -1
  43. package/components/UiCheckbox/index.d.ts +1 -0
  44. package/components/UiCheckbox/index.js +4 -2
  45. package/components/UiCheckbox/index.js.map +1 -1
  46. package/components/UiIcon/UiIcon.d.ts +1 -0
  47. package/components/UiIcon/UiIcon.js +10 -9
  48. package/components/UiIcon/UiIcon.js.map +1 -1
  49. package/components/UiIconBadge/UiIconBadge.d.ts +3 -0
  50. package/components/UiIconBadge/UiIconBadge.js +35 -0
  51. package/components/UiIconBadge/UiIconBadge.js.map +1 -0
  52. package/components/UiIconBadge/_types.d.ts +15 -0
  53. package/components/UiIconBadge/_types.js +5 -0
  54. package/components/UiIconBadge/_types.js.map +1 -0
  55. package/components/UiIconBadge/index.d.ts +2 -0
  56. package/components/UiIconBadge/index.js +7 -0
  57. package/components/UiIconBadge/index.js.map +1 -0
  58. package/components/UiInput/UiInput.base.d.ts +1 -0
  59. package/components/UiInput/UiInput.base.js +13 -12
  60. package/components/UiInput/UiInput.base.js.map +1 -1
  61. package/components/UiInputRange/UiInputRange.d.ts +1 -0
  62. package/components/UiInputRange/UiInputRange.js +31 -28
  63. package/components/UiInputRange/UiInputRange.js.map +1 -1
  64. package/components/UiList/UiList.d.ts +3 -1
  65. package/components/UiList/UiList.js +23 -18
  66. package/components/UiList/UiList.js.map +1 -1
  67. package/components/UiList/UiListItem.d.ts +1 -0
  68. package/components/UiList/UiListItem.js +6 -5
  69. package/components/UiList/UiListItem.js.map +1 -1
  70. package/components/UiList/_types.d.ts +4 -0
  71. package/components/UiList/_types.js +4 -3
  72. package/components/UiList/_types.js.map +1 -1
  73. package/components/UiNotificationBadge/UiNotificationBadge.d.ts +6 -5
  74. package/components/UiNotificationBadge/UiNotificationBadge.js +48 -83
  75. package/components/UiNotificationBadge/UiNotificationBadge.js.map +1 -1
  76. package/components/UiNotificationBadge/_types.d.ts +8 -0
  77. package/components/UiNotificationBadge/_types.js +4 -2
  78. package/components/UiNotificationBadge/_types.js.map +1 -1
  79. package/components/UiPills/UiPills.d.ts +1 -0
  80. package/components/UiPills/UiPills.js +16 -14
  81. package/components/UiPills/UiPills.js.map +1 -1
  82. package/components/UiPlainRadio/UiPlainRadio.d.ts +1 -0
  83. package/components/UiPlainRadio/UiPlainRadio.js +66 -51
  84. package/components/UiPlainRadio/UiPlainRadio.js.map +1 -1
  85. package/components/UiProductCard/UiProductCard.d.ts +1 -0
  86. package/components/UiProductCard/UiProductCard.js +24 -27
  87. package/components/UiProductCard/UiProductCard.js.map +1 -1
  88. package/components/UiProgress/UiProgress.d.ts +1 -0
  89. package/components/UiProgress/UiProgress.js +17 -15
  90. package/components/UiProgress/UiProgress.js.map +1 -1
  91. package/components/UiRadio/UiRadio.js +19 -13
  92. package/components/UiRadio/UiRadio.js.map +1 -1
  93. package/components/UiRadioFancy/UiRadioFancy.d.ts +9 -4
  94. package/components/UiRadioFancy/UiRadioFancy.js +41 -29
  95. package/components/UiRadioFancy/UiRadioFancy.js.map +1 -1
  96. package/components/UiRadioFancy/_types.d.ts +1 -1
  97. package/components/UiRadioFancy/_types.js +2 -2
  98. package/components/UiRadioFancy/_types.js.map +1 -1
  99. package/components/UiSelect/UiSelect.d.ts +1 -0
  100. package/components/UiSelect/UiSelect.js +99 -0
  101. package/components/UiSelect/UiSelect.js.map +1 -0
  102. package/components/UiSelect/index.js +5 -0
  103. package/components/UiSelect/index.js.map +1 -0
  104. package/components/UiSkeleton/UiSkeleton.d.ts +1 -0
  105. package/components/UiSkeleton/UiSkeleton.js +42 -41
  106. package/components/UiSkeleton/UiSkeleton.js.map +1 -1
  107. package/components/UiSnackbar/UiSnackbar.d.ts +10 -0
  108. package/components/UiSnackbar/UiSnackbar.js +67 -0
  109. package/components/UiSnackbar/UiSnackbar.js.map +1 -0
  110. package/components/UiSnackbar/_types.d.ts +7 -0
  111. package/components/UiSnackbar/_types.js +5 -0
  112. package/components/UiSnackbar/_types.js.map +1 -0
  113. package/components/UiSnackbar/index.d.ts +1 -0
  114. package/components/UiSnackbar/index.js +5 -0
  115. package/components/UiSnackbar/index.js.map +1 -0
  116. package/components/UiStars/UiStars.d.ts +18 -0
  117. package/components/UiStars/UiStars.js +57 -0
  118. package/components/UiStars/UiStars.js.map +1 -0
  119. package/components/UiStars/_types.d.ts +12 -0
  120. package/components/UiStars/_types.js +6 -0
  121. package/components/UiStars/_types.js.map +1 -0
  122. package/components/UiStars/index.d.ts +3 -0
  123. package/components/UiStars/index.js +7 -0
  124. package/components/UiStars/index.js.map +1 -0
  125. package/components/UiTable/UiTable.js +10 -9
  126. package/components/UiTable/UiTable.js.map +1 -1
  127. package/components/UiTable/UiTableCell.js +13 -12
  128. package/components/UiTable/UiTableCell.js.map +1 -1
  129. package/components/UiTable/UiTableRow.js +10 -9
  130. package/components/UiTable/UiTableRow.js.map +1 -1
  131. package/components/UiTabs/UiTabs.d.ts +1 -0
  132. package/components/UiTabs/UiTabs.js +21 -18
  133. package/components/UiTabs/UiTabs.js.map +1 -1
  134. package/components/UiToggle/UiToggle.d.ts +7 -4
  135. package/components/UiToggle/UiToggle.js +117 -91
  136. package/components/UiToggle/UiToggle.js.map +1 -1
  137. package/components/UiTypography/UiTypography.js +12 -10
  138. package/components/UiTypography/UiTypography.js.map +1 -1
  139. package/eslint.config.mjs +4 -3
  140. package/helper.d.ts +31 -0
  141. package/index.d.ts +24 -20
  142. package/package.json +43 -42
  143. package/stories/Colors/Colors.d.ts +2 -0
  144. package/stories/FontSizes/FontSizes.d.ts +2 -0
  145. package/stories/Spacings/Spacings.d.ts +2 -0
  146. package/bonkers-ui.css +0 -1
  147. package/bonkers-ui.umd.js +0 -103
  148. package/bonkers-ui.umd.js.map +0 -1
  149. package/components/UiBerRank/UiBerRank.module.css.js +0 -10
  150. package/components/UiBerRank/UiBerRank.module.css.js.map +0 -1
  151. package/components/UiButton/UiButton.module.css.js +0 -8
  152. package/components/UiButton/UiButton.module.css.js.map +0 -1
  153. package/components/UiCheckbox/UiCheckbox.module.css.js +0 -15
  154. package/components/UiCheckbox/UiCheckbox.module.css.js.map +0 -1
  155. package/components/UiInputRange/UiInputRange.module.css.js +0 -8
  156. package/components/UiInputRange/UiInputRange.module.css.js.map +0 -1
  157. package/components/UiRadio/UiRadio.module.css.js +0 -10
  158. package/components/UiRadio/UiRadio.module.css.js.map +0 -1
  159. package/index.js +0 -43
  160. package/plugin.ts +0 -160
  161. package/postcss.config.mjs +0 -9
  162. package/src/_styles/_backdropBlur.json +0 -10
  163. package/src/_styles/_colors.json +0 -81
  164. package/src/_styles/_fontSizes.json +0 -12
  165. package/src/_styles/_shadow.json +0 -8
  166. package/src/_styles/_spacing.json +0 -16
  167. package/tailwind.config.ts +0 -15
@@ -1,25 +1,26 @@
1
- import { jsx as e } from "react/jsx-runtime";
1
+ import { jsx as s } from "react/jsx-runtime";
2
2
  import "react";
3
- import { ERowKind as s } from "./_types.js";
4
- import d from "classnames";
5
- const m = ({ kind: t, children: r, ...o }) => /* @__PURE__ */ e(
3
+ import { ERowKind as d } from "./_types.js";
4
+ import f from "classnames";
5
+ const a = ({ kind: t, children: r, className: o, ...e }) => /* @__PURE__ */ s(
6
6
  "tr",
7
7
  {
8
- className: d(
8
+ className: f(
9
9
  "text-center",
10
10
  "[&>td:last-of-type]:rounded-r-xxs",
11
11
  "[&>td:last-of-type]:text-right",
12
12
  "[&>td:first-of-type]:text-left",
13
13
  "[&>td:first-of-type]:rounded-l-xxs",
14
14
  {
15
- "bg-secondary-alt-200": t === s.SECONDARY
16
- }
15
+ "bg-secondary-alt-200": t === d.SECONDARY
16
+ },
17
+ o
17
18
  ),
18
- ...o,
19
+ ...e,
19
20
  children: r
20
21
  }
21
22
  );
22
23
  export {
23
- m as UiTableRow
24
+ a as UiTableRow
24
25
  };
25
26
  //# sourceMappingURL=UiTableRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiTableRow.js","sources":["../../../src/components/UiTable/UiTableRow.tsx"],"sourcesContent":["import React from \"react\";\nimport { ERowKind } from \"./_types\";\nimport cn from \"classnames\";\n\ntype TRowProps = {\n\tkind?: ERowKind;\n} & React.HTMLAttributes<HTMLTableRowElement>;\n\nexport const UiTableRow: React.FC<TRowProps> = ({ kind, children, ...rest }) => {\n\treturn (\n\t\t<tr\n\t\t\tclassName={ cn(\n\t\t\t\t\"text-center\",\n\t\t\t\t\"[&>td:last-of-type]:rounded-r-xxs\",\n\t\t\t\t\"[&>td:last-of-type]:text-right\",\n\t\t\t\t\"[&>td:first-of-type]:text-left\",\n\t\t\t\t\"[&>td:first-of-type]:rounded-l-xxs\",\n\t\t\t\t{\n\t\t\t\t\t\"bg-secondary-alt-200\": kind === ERowKind.SECONDARY\n\t\t\t\t}\n\t\t\t)\n\t\t\t}\n\t\t\t{ ...rest }\n\t\t>\n\t\t\t{ children }\n\t\t</tr>\n\t);\n};\n"],"names":["UiTableRow","kind","children","rest","jsx","cn","ERowKind"],"mappings":";;;;AAQO,MAAMA,IAAkC,CAAC,EAAE,MAAAC,GAAM,UAAAC,GAAU,GAAGC,QAEnE,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACA,WAAYC;AAAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACC,wBAAwBJ,MAASK,EAAS;AAAA,MAAA;AAAA,IAE5C;AAAA,IAEE,GAAGH;AAAA,IAEH,UAAAD;AAAA,EAAA;AACH;"}
1
+ {"version":3,"file":"UiTableRow.js","sources":["../../../src/components/UiTable/UiTableRow.tsx"],"sourcesContent":["import React from \"react\";\nimport { ERowKind } from \"./_types\";\nimport cn from \"classnames\";\n\ntype TRowProps = {\n\tkind?: ERowKind;\n} & React.HTMLAttributes<HTMLTableRowElement>;\n\nexport const UiTableRow: React.FC<TRowProps> = ({ kind, children, className, ...rest }) => {\n\treturn (\n\t\t<tr\n\t\t\tclassName={ cn(\n\t\t\t\t\"text-center\",\n\t\t\t\t\"[&>td:last-of-type]:rounded-r-xxs\",\n\t\t\t\t\"[&>td:last-of-type]:text-right\",\n\t\t\t\t\"[&>td:first-of-type]:text-left\",\n\t\t\t\t\"[&>td:first-of-type]:rounded-l-xxs\",\n\t\t\t\t{\n\t\t\t\t\t\"bg-secondary-alt-200\": kind === ERowKind.SECONDARY\n\t\t\t\t},\n\t\t\t\tclassName\n\t\t\t)\n\t\t\t}\n\t\t\t{ ...rest }\n\t\t>\n\t\t\t{ children }\n\t\t</tr>\n\t);\n};\n"],"names":["UiTableRow","kind","children","className","rest","jsx","cn","ERowKind"],"mappings":";;;;AAQa,MAAAA,IAAkC,CAAC,EAAE,MAAAC,GAAM,UAAAC,GAAU,WAAAC,GAAW,GAAGC,QAE9E,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACA,WAAYC;AAAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACC,wBAAwBL,MAASM,EAAS;AAAA,MAC3C;AAAA,MACAJ;AAAA,IACD;AAAA,IAEE,GAAGC;AAAA,IAEH,UAAAF;AAAA,EAAA;AACH;"}
@@ -2,6 +2,7 @@ import { default as React } from 'react';
2
2
  type UiTabsProps = {
3
3
  tabs: string[];
4
4
  tabsModel: string;
5
+ className: string;
5
6
  onTabChange: (val: string) => void;
6
7
  };
7
8
  export declare const UiTabs: React.FC<UiTabsProps>;
@@ -1,45 +1,48 @@
1
- import { jsx as r, jsxs as n } from "react/jsx-runtime";
1
+ import { jsx as o, jsxs as n } from "react/jsx-runtime";
2
2
  import "react";
3
- import l from "classnames";
4
- const d = ({
5
- tabs: o,
6
- tabsModel: s,
7
- onTabChange: c
8
- }) => /* @__PURE__ */ r("ul", { className: l(
3
+ import r from "classnames";
4
+ const p = ({
5
+ tabs: s,
6
+ tabsModel: l,
7
+ onTabChange: a,
8
+ className: c
9
+ }) => /* @__PURE__ */ o("ul", { className: r(
9
10
  "ui-tabs",
10
11
  "grid",
11
12
  "grid-flow-col",
12
13
  "rounded-full",
13
14
  "bg-secondary-alt-200",
14
- "p-[2px]"
15
- ), children: o.map((e) => /* @__PURE__ */ r(
15
+ "p-[2px]",
16
+ "text-secondary-400",
17
+ c
18
+ ), children: s.map((e) => /* @__PURE__ */ o(
16
19
  "li",
17
20
  {
18
- className: l(
21
+ className: r(
19
22
  "rounded-full",
20
23
  "text-center",
21
- s === e && "bg-white"
24
+ l === e && "bg-white border border-secondary-alt-600 text-secondary-500"
22
25
  ),
23
- children: /* @__PURE__ */ n("label", { className: l(
26
+ children: /* @__PURE__ */ n("label", { className: r(
24
27
  "block",
25
28
  "cursor-pointer",
26
29
  "px-md",
27
30
  "py-xxs"
28
31
  ), children: [
29
- /* @__PURE__ */ r(
32
+ /* @__PURE__ */ o(
30
33
  "input",
31
34
  {
32
- className: l(
35
+ className: r(
33
36
  "absolute",
34
37
  "appearance-none"
35
38
  ),
36
39
  type: "radio",
37
40
  value: e,
38
- checked: s === e,
39
- onChange: () => c(e)
41
+ checked: l === e,
42
+ onChange: () => a(e)
40
43
  }
41
44
  ),
42
- /* @__PURE__ */ r("span", { className: l(
45
+ /* @__PURE__ */ o("span", { className: r(
43
46
  "font-bold",
44
47
  "text-xs"
45
48
  ), children: e })
@@ -48,6 +51,6 @@ const d = ({
48
51
  e
49
52
  )) });
50
53
  export {
51
- d as UiTabs
54
+ p as UiTabs
52
55
  };
53
56
  //# sourceMappingURL=UiTabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiTabs.js","sources":["../../../src/components/UiTabs/UiTabs.tsx"],"sourcesContent":["import React from \"react\";\nimport cx from \"classnames\";\n\ntype UiTabsProps ={\n\ttabs: string[]\n\ttabsModel : string,\n\tonTabChange: (val: string) => void\n}\n\nexport const UiTabs: React.FC<UiTabsProps> = ({\n\ttabs,\n\ttabsModel,\n\tonTabChange\n}) => {\n\n\treturn (\n\t\t<ul className={ cx(\n\t\t\t\"ui-tabs\",\n\t\t\t\"grid\",\n\t\t\t\"grid-flow-col\",\n\t\t\t\"rounded-full\",\n\t\t\t\"bg-secondary-alt-200\",\n\t\t\t\"p-[2px]\"\n\n\t\t) }>\n\t\t\t{ tabs.map((tab) => (\n\t\t\t\t<li\n\t\t\t\t\tkey={ tab }\n\t\t\t\t\tclassName={ cx(\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t\"text-center\",\n\t\t\t\t\t\ttabsModel === tab && \"bg-white\"\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<label className={ cx(\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"cursor-pointer\",\n\t\t\t\t\t\t\"px-md\",\n\t\t\t\t\t\t\"py-xxs\"\n\t\t\t\t\t) }>\n\t\t\t\t\t\t<input className={ cx(\n\t\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\t\"appearance-none\"\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tvalue={ tab }\n\t\t\t\t\t\tchecked={ tabsModel === tab }\n\t\t\t\t\t\tonChange={ ()=> onTabChange(tab) }>\n\t\t\t\t\t\t</input>\n\n\t\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\t\"font-bold\",\n\t\t\t\t\t\t\t\"text-xs\"\n\t\t\t\t\t\t) }>\n\t\t\t\t\t\t\t{ tab }\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t</label>\n\n\t\t\t\t</li>\n\t\t\t)) }\n\t\t</ul>\n\t);\n};\n"],"names":["UiTabs","tabs","tabsModel","onTabChange","jsx","cx","tab","jsxs"],"mappings":";;;AASO,MAAMA,IAAgC,CAAC;AAAA,EAC7C,MAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AACD,MAGE,gBAAAC,EAAC,QAAG,WAAYC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAGE,GAAA,UAAAJ,EAAK,IAAI,CAACK,MACX,gBAAAF;AAAA,EAAC;AAAA,EAAA;AAAA,IAEA,WAAYC;AAAA,MACX;AAAA,MACA;AAAA,MACAH,MAAcI,KAAO;AAAA,IACtB;AAAA,IAEA,UAAA,gBAAAC,EAAC,WAAM,WAAYF;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAEA,GAAA,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAAC;AAAA,QAAA;AAAA,UAAM,WAAYC;AAAA,YAClB;AAAA,YACA;AAAA,UACD;AAAA,UACA,MAAK;AAAA,UACL,OAAQC;AAAA,UACR,SAAUJ,MAAcI;AAAA,UACxB,UAAW,MAAKH,EAAYG,CAAG;AAAA,QAAA;AAAA,MAC/B;AAAA,MAEA,gBAAAF,EAAC,UAAK,WAAYC;AAAA,QACjB;AAAA,QACA;AAAA,MAAA,GAEE,UACHC,EAAA,CAAA;AAAA,IAAA,EAED,CAAA;AAAA,EAAA;AAAA,EA9BMA;AAiCP,CAAA,GACF;"}
1
+ {"version":3,"file":"UiTabs.js","sources":["../../../src/components/UiTabs/UiTabs.tsx"],"sourcesContent":["import React from \"react\";\nimport cx from \"classnames\";\n\ntype UiTabsProps ={\n\ttabs: string[]\n\ttabsModel: string,\n\tclassName: string\n\tonTabChange: (val: string) => void\n}\n\nexport const UiTabs: React.FC<UiTabsProps> = ({\n\ttabs,\n\ttabsModel,\n\tonTabChange,\n\tclassName\n}) => {\n\n\treturn (\n\t\t<ul className={ cx(\n\t\t\t\"ui-tabs\",\n\t\t\t\"grid\",\n\t\t\t\"grid-flow-col\",\n\t\t\t\"rounded-full\",\n\t\t\t\"bg-secondary-alt-200\",\n\t\t\t\"p-[2px]\",\n\t\t\t\"text-secondary-400\",\n\t\t\tclassName\n\t\t) }>\n\t\t\t{ tabs.map((tab) => (\n\t\t\t\t<li\n\t\t\t\t\tkey={ tab }\n\t\t\t\t\tclassName={ cx(\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t\"text-center\",\n\t\t\t\t\t\ttabsModel === tab && \"bg-white border border-secondary-alt-600 text-secondary-500\",\n\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<label className={ cx(\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"cursor-pointer\",\n\t\t\t\t\t\t\"px-md\",\n\t\t\t\t\t\t\"py-xxs\"\n\t\t\t\t\t) }>\n\t\t\t\t\t\t<input className={ cx(\n\t\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\t\"appearance-none\"\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tvalue={ tab }\n\t\t\t\t\t\tchecked={ tabsModel === tab }\n\t\t\t\t\t\tonChange={ ()=> onTabChange(tab) }>\n\t\t\t\t\t\t</input>\n\n\t\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\t\"font-bold\",\n\t\t\t\t\t\t\t\"text-xs\"\n\t\t\t\t\t\t) }>\n\t\t\t\t\t\t\t{ tab }\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t</label>\n\n\t\t\t\t</li>\n\t\t\t)) }\n\t\t</ul>\n\t);\n};\n"],"names":["UiTabs","tabs","tabsModel","onTabChange","className","jsx","cx","tab","jsxs"],"mappings":";;;AAUO,MAAMA,IAAgC,CAAC;AAAA,EAC7C,MAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AACD,MAGE,gBAAAC,EAAC,QAAG,WAAYC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACAF;AAEE,GAAA,UAAAH,EAAK,IAAI,CAACM,MACX,gBAAAF;AAAA,EAAC;AAAA,EAAA;AAAA,IAEA,WAAYC;AAAA,MACX;AAAA,MACA;AAAA,MACAJ,MAAcK,KAAO;AAAA,IAEtB;AAAA,IAEA,UAAA,gBAAAC,EAAC,WAAM,WAAYF;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAEA,GAAA,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAAC;AAAA,QAAA;AAAA,UAAM,WAAYC;AAAA,YAClB;AAAA,YACA;AAAA,UACD;AAAA,UACA,MAAK;AAAA,UACL,OAAQC;AAAA,UACR,SAAUL,MAAcK;AAAA,UACxB,UAAW,MAAKJ,EAAYI,CAAG;AAAA,QAAA;AAAA,MAC/B;AAAA,MAEA,gBAAAF,EAAC,UAAK,WAAYC;AAAA,QACjB;AAAA,QACA;AAAA,MAAA,GAEE,UACHC,EAAA,CAAA;AAAA,IAAA,EAED,CAAA;AAAA,EAAA;AAAA,EA/BMA;AAkCP,CAAA,GACF;"}
@@ -1,9 +1,12 @@
1
1
  import { default as React } from 'react';
2
- interface IUiToggle {
3
- title?: React.ReactNode;
2
+ type TUiToggleProps = {
4
3
  children?: React.ReactNode;
5
4
  disabled?: boolean;
6
5
  invertOrder?: boolean;
7
- }
8
- export declare const UiToggle: React.FC<IUiToggle>;
6
+ defaultChecked?: boolean;
7
+ checked?: boolean;
8
+ value?: boolean;
9
+ onChange?: (checked: boolean) => void;
10
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange">;
11
+ export declare const UiToggle: React.FC<TUiToggleProps>;
9
12
  export {};
@@ -1,103 +1,129 @@
1
- import { jsxs as s, jsx as o } from "react/jsx-runtime";
2
- import { useState as l } from "react";
3
- import a from "classnames";
4
- const f = ({
5
- children: c,
6
- title: d,
7
- disabled: r = !1,
8
- invertOrder: m = !1
1
+ import { jsx as r, jsxs as n } from "react/jsx-runtime";
2
+ import { useState as T, useEffect as f } from "react";
3
+ import t from "classnames";
4
+ import '../../assets/UiToggle.css';const U = "_UiToggle__dot_1uov6_1", v = "_UiToggle__dot_checked_1uov6_13", k = "_UiToggle__icon_1uov6_17", w = "_UiToggle__icon_checked_1uov6_26", l = {
5
+ UiToggle__dot: U,
6
+ UiToggle__dot_checked: v,
7
+ UiToggle__icon: k,
8
+ UiToggle__icon_checked: w
9
+ }, N = ({
10
+ children: a,
11
+ disabled: e = !1,
12
+ invertOrder: d = !1,
13
+ checked: c,
14
+ value: i,
15
+ className: m,
16
+ defaultChecked: h,
17
+ onChange: s,
18
+ ...p
9
19
  }) => {
10
- const [e, p] = l(!1), [n, t] = l(!1);
11
- return /* @__PURE__ */ s(
20
+ const [_, g] = T(h ?? !1), o = i ?? c ?? _, u = () => {
21
+ i === void 0 && c === void 0 && g(!_), s == null || s(!o);
22
+ };
23
+ return f(() => {
24
+ c !== void 0 && g(c);
25
+ }, [c]), /* @__PURE__ */ r(
12
26
  "div",
13
27
  {
14
- className: a(
15
- "ui-toggle"
28
+ className: t(
29
+ "ui-toggle",
30
+ m
16
31
  ),
17
- onMouseEnter: () => t(!0),
18
- onMouseLeave: () => t(!1),
19
- children: [
20
- /* @__PURE__ */ o("span", { className: a("font-bold"), children: d }),
21
- /* @__PURE__ */ s("label", { className: a(
22
- "flex",
23
- "cursor-pointer",
24
- "gap-sm",
25
- "rounded-full",
26
- "mt-sm",
27
- "items-center",
28
- "w-full",
29
- "leading-normal",
30
- "text-md",
31
- {
32
- "flex-row-reverse": m,
33
- "pointer-events-none": r
34
- }
32
+ children: /* @__PURE__ */ n("label", { className: t(
33
+ "flex",
34
+ "cursor-pointer",
35
+ "gap-sm",
36
+ "rounded-full",
37
+ "mt-sm",
38
+ "items-center",
39
+ "w-full",
40
+ "leading-normal",
41
+ "text-md",
42
+ {
43
+ "flex-row-reverse": d,
44
+ "pointer-events-none opacity-50": e
45
+ }
46
+ ), children: [
47
+ /* @__PURE__ */ n("span", { className: t(
48
+ "relative",
49
+ "block",
50
+ "h-md"
35
51
  ), children: [
36
- /* @__PURE__ */ s("span", { className: a(
37
- "relative",
52
+ /* @__PURE__ */ r(
53
+ "input",
54
+ {
55
+ className: t(
56
+ "absolute",
57
+ "size-0",
58
+ "appearance-none",
59
+ "border-0"
60
+ ),
61
+ type: "checkbox",
62
+ checked: o,
63
+ onChange: u,
64
+ disabled: e,
65
+ value: i,
66
+ ...p
67
+ }
68
+ ),
69
+ /* @__PURE__ */ r("span", { className: t(
38
70
  "block",
39
- "h-md"
40
- ), children: [
41
- /* @__PURE__ */ o(
42
- "input",
43
- {
44
- className: a(
45
- "absolute",
46
- "size-0",
47
- "appearance-none",
48
- "border-0"
49
- ),
50
- type: "checkbox",
51
- checked: e,
52
- onChange: () => p(!e)
53
- }
54
- ),
55
- /* @__PURE__ */ o(
56
- "span",
57
- {
58
- className: a(
59
- "block",
60
- "h-md",
61
- "w-xl",
62
- "rounded-full",
63
- {
64
- "bg-secondary-alt-300": !e && r,
65
- "bg-primary-500": e && !r,
66
- "bg-primary-300": e && r,
67
- "bg-secondary-alt": !e && !r
68
- }
69
- )
70
- }
71
- ),
72
- /* @__PURE__ */ o("span", { className: a(
73
- "absolute",
74
- "top-[50%]",
75
- "block",
76
- "rounded-full",
77
- "bg-white",
78
- "w-[22px]",
79
- "h-[22px]",
80
- "translate-x-[1px]",
81
- "translate-y-[-50%]",
82
- "ease-in-out",
83
- "transition-transform",
84
- "hover:shadow-border-secondary",
85
- "active:shadow-border-secondary",
86
- "focus:shadow-border-secondary",
87
- {
88
- "shadow-border-secondary": n && !e && !r,
89
- "shadow-border-primary": n && e && !r,
90
- "translate-x-[calc(var(--xl)_-_100%_-_1px)] translate-y-[-50%]": e
91
- }
92
- ) })
93
- ] }),
94
- c
95
- ] })
96
- ]
71
+ "h-md",
72
+ "w-xl",
73
+ "rounded-full",
74
+ {
75
+ "bg-primary-600": o && !e,
76
+ "bg-secondary-alt-300": !o && e,
77
+ "bg-secondary-alt-600": !o && !e,
78
+ "bg-primary-300": o && e
79
+ }
80
+ ) }),
81
+ /* @__PURE__ */ r("span", { className: t(
82
+ "absolute",
83
+ "top-[50%]",
84
+ "block",
85
+ "rounded-full",
86
+ "bg-white",
87
+ l.UiToggle__dot,
88
+ {
89
+ "hover:shadow-border-secondary": !o && !e,
90
+ "hover:shadow-border-primary": o && !e,
91
+ [l.UiToggle__dot_checked]: o
92
+ }
93
+ ), children: /* @__PURE__ */ r(
94
+ "svg",
95
+ {
96
+ className: t(
97
+ l.UiToggle__icon,
98
+ "absolute",
99
+ e ? "text-primary-300" : "text-primary-600",
100
+ {
101
+ [l.UiToggle__icon_checked]: o
102
+ }
103
+ ),
104
+ width: "16",
105
+ height: "16",
106
+ viewBox: "0 0 16 16",
107
+ fill: "none",
108
+ xmlns: "http://www.w3.org/2000/svg",
109
+ children: /* @__PURE__ */ r(
110
+ "path",
111
+ {
112
+ d: "M1 4.40106L6.60071 10.1135L15.1694 1.71245",
113
+ stroke: "currentColor",
114
+ "stroke-width": "1.6",
115
+ "stroke-linecap": "round"
116
+ }
117
+ )
118
+ }
119
+ ) })
120
+ ] }),
121
+ a
122
+ ] })
97
123
  }
98
124
  );
99
125
  };
100
126
  export {
101
- f as UiToggle
127
+ N as UiToggle
102
128
  };
103
129
  //# sourceMappingURL=UiToggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiToggle.js","sources":["../../../src/components/UiToggle/UiToggle.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport cx from \"classnames\";\n\ninterface IUiToggle {\n\ttitle?: React.ReactNode\n\tchildren?: React.ReactNode\n\tdisabled?: boolean\n\tinvertOrder?: boolean;\n}\n\nexport const UiToggle: React.FC<IUiToggle> = ({\n\tchildren,\n\ttitle,\n\tdisabled = false,\n\tinvertOrder = false\n\n}) => {\n\tconst [isChecked, setIsChecked] = useState(false);\n\tconst [isHovered, setIsHovered] = useState(false);\n\n\treturn (\n\t\t<div className={ cx(\n\t\t\t\"ui-toggle\"\n\t\t) }\n\t\tonMouseEnter={ () => setIsHovered(true) }\n\t\tonMouseLeave={ () => setIsHovered(false) }\n\t\t>\n\n\t\t\t<span className={ cx(\"font-bold\") }>\n\t\t\t\t{ title }\n\t\t\t</span>\n\n\t\t\t<label className={ cx(\n\t\t\t\t\"flex\",\n\t\t\t\t\"cursor-pointer\",\n\t\t\t\t\"gap-sm\",\n\t\t\t\t\"rounded-full\",\n\t\t\t\t\"mt-sm\",\n\t\t\t\t\"items-center\",\n\t\t\t\t\"w-full\",\n\t\t\t\t\"leading-normal\",\n\t\t\t\t\"text-md\",\n\t\t\t\t{\n\t\t\t\t\t\"flex-row-reverse\": invertOrder,\n\t\t\t\t\t\"pointer-events-none\": disabled\n\t\t\t\t}\n\n\t\t\t) }>\n\t\t\t\t<span className={ cx(\n\t\t\t\t\t\"relative\",\n\t\t\t\t\t\"block\",\n\t\t\t\t\t\"h-md\"\n\t\t\t\t) }>\n\n\t\t\t\t\t<input className={ cx(\n\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\"size-0\",\n\t\t\t\t\t\t\"appearance-none\",\n\t\t\t\t\t\t\"border-0\"\n\t\t\t\t\t) }\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tchecked={ isChecked }\n\t\t\t\t\tonChange={ () => setIsChecked(!isChecked) }\n\t\t\t\t\t>\n\t\t\t\t\t</input>\n\n\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"h-md\",\n\t\t\t\t\t\t\"w-xl\",\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"bg-secondary-alt-300\": !isChecked && disabled,\n\t\t\t\t\t\t\t\"bg-primary-500\": isChecked && !disabled,\n\t\t\t\t\t\t\t\"bg-primary-300\": isChecked && disabled,\n\t\t\t\t\t\t\t\"bg-secondary-alt\": !isChecked && !disabled,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\t></span>\n\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\"top-[50%]\",\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t\"bg-white\",\n\t\t\t\t\t\t\"w-[22px]\",\n\t\t\t\t\t\t\"h-[22px]\",\n\t\t\t\t\t\t\"translate-x-[1px]\",\n\t\t\t\t\t\t\"translate-y-[-50%]\",\n\t\t\t\t\t\t\"ease-in-out\",\n\t\t\t\t\t\t\"transition-transform\",\n\t\t\t\t\t\t\"hover:shadow-border-secondary\",\n\t\t\t\t\t\t\"active:shadow-border-secondary\",\n\t\t\t\t\t\t\"focus:shadow-border-secondary\",\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"shadow-border-secondary\": isHovered && !isChecked && !disabled,\n\t\t\t\t\t\t\t\"shadow-border-primary\": isHovered && isChecked && !disabled,\n\t\t\t\t\t\t\t\"translate-x-[calc(var(--xl)_-_100%_-_1px)] translate-y-[-50%]\": isChecked\n\t\t\t\t\t\t},\n\n\t\t\t\t\t) }>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\n\t\t\t\t{ children }\n\n\t\t\t</label>\n\n\t\t</div>\n\t);\n};\n"],"names":["UiToggle","children","title","disabled","invertOrder","isChecked","setIsChecked","useState","isHovered","setIsHovered","jsxs","cx","jsx"],"mappings":";;;AAUO,MAAMA,IAAgC,CAAC;AAAA,EAC7C,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,aAAAC,IAAc;AAEf,MAAM;AACL,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAAWC,CAAY,IAAIF,EAAS,EAAK;AAG/C,SAAA,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MAAI,WAAYC;AAAA,QAChB;AAAA,MACD;AAAA,MACA,cAAe,MAAMF,EAAa,EAAI;AAAA,MACtC,cAAe,MAAMA,EAAa,EAAK;AAAA,MAGtC,UAAA;AAAA,QAAA,gBAAAG,EAAC,QAAK,EAAA,WAAYD,EAAG,WAAW,GAC7B,UACHT,GAAA;AAAA,QAEA,gBAAAQ,EAAC,WAAM,WAAYC;AAAA,UAClB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,YACC,oBAAoBP;AAAA,YACpB,uBAAuBD;AAAA,UAAA;AAAA,QAIxB,GAAA,UAAA;AAAA,UAAA,gBAAAO,EAAC,UAAK,WAAYC;AAAA,YACjB;AAAA,YACA;AAAA,YACA;AAAA,UAGA,GAAA,UAAA;AAAA,YAAA,gBAAAC;AAAA,cAAC;AAAA,cAAA;AAAA,gBAAM,WAAYD;AAAA,kBAClB;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,gBACD;AAAA,gBACA,MAAK;AAAA,gBACL,SAAUN;AAAA,gBACV,UAAW,MAAMC,EAAa,CAACD,CAAS;AAAA,cAAA;AAAA,YAExC;AAAA,YAEA,gBAAAO;AAAA,cAAC;AAAA,cAAA;AAAA,gBAAK,WAAYD;AAAA,kBACjB;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,oBACC,wBAAwB,CAACN,KAAaF;AAAA,oBACtC,kBAAkBE,KAAa,CAACF;AAAA,oBAChC,kBAAkBE,KAAaF;AAAA,oBAC/B,oBAAoB,CAACE,KAAa,CAACF;AAAA,kBAAA;AAAA,gBACpC;AAAA,cACD;AAAA,YACC;AAAA,YACD,gBAAAS,EAAC,UAAK,WAAYD;AAAA,cACjB;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,gBACC,2BAA2BH,KAAa,CAACH,KAAa,CAACF;AAAA,gBACvD,yBAAyBK,KAAaH,KAAa,CAACF;AAAA,gBACpD,iEAAiEE;AAAA,cAAA;AAAA,YAClE,EAGD,CAAA;AAAA,UAAA,GACD;AAAA,UAEEJ;AAAA,QAAA,EAEH,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAED;AAEF;"}
1
+ {"version":3,"file":"UiToggle.js","sources":["../../../src/components/UiToggle/UiToggle.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./UiToggle.module.css\";\n\ntype TUiToggleProps = {\n\tchildren?: React.ReactNode\n\tdisabled?: boolean\n\tinvertOrder?: boolean\n\tdefaultChecked?: boolean\n\tchecked?: boolean\n\tvalue?: boolean\n\tonChange?: (checked: boolean) => void\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, \"onChange\">;\n\nexport const UiToggle: React.FC<TUiToggleProps> = ({\n\tchildren,\n\tdisabled = false,\n\tinvertOrder = false,\n\tchecked,\n\tvalue,\n\tclassName,\n\tdefaultChecked,\n\tonChange,\n\t...rest\n}) => {\n\n\tconst [toggled, setIsToggled] = useState<boolean>(defaultChecked ?? false);\n\n\tconst isChecked = value ?? checked ?? toggled;\n\n\tconst handleChange = () => {\n\t\tif (value === undefined && checked === undefined) {\n\t\t\tsetIsToggled(!toggled);\n\t\t}\n\n\t\tonChange?.(!isChecked);\n\t};\n\n\tuseEffect(()=>{\n\t\tif ( checked !== undefined) {\n\t\t\tsetIsToggled(checked);\n\t\t}\n\t}, [checked]);\n\n\treturn (\n\t\t<div className={ cx(\n\t\t\t\"ui-toggle\",\n\t\t\tclassName\n\t\t) }\n\t\t>\n\n\t\t\t<label className={ cx(\n\t\t\t\t\"flex\",\n\t\t\t\t\"cursor-pointer\",\n\t\t\t\t\"gap-sm\",\n\t\t\t\t\"rounded-full\",\n\t\t\t\t\"mt-sm\",\n\t\t\t\t\"items-center\",\n\t\t\t\t\"w-full\",\n\t\t\t\t\"leading-normal\",\n\t\t\t\t\"text-md\",\n\t\t\t\t{\n\t\t\t\t\t\"flex-row-reverse\": invertOrder,\n\t\t\t\t\t\"pointer-events-none opacity-50\": disabled\n\t\t\t\t}\n\n\t\t\t) }>\n\t\t\t\t<span className={ cx(\n\t\t\t\t\t\"relative\",\n\t\t\t\t\t\"block\",\n\t\t\t\t\t\"h-md\"\n\t\t\t\t) }>\n\n\t\t\t\t\t<input className={ cx(\n\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\"size-0\",\n\t\t\t\t\t\t\"appearance-none\",\n\t\t\t\t\t\t\"border-0\"\n\t\t\t\t\t) }\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tchecked={ isChecked }\n\t\t\t\t\tonChange={ handleChange }\n\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\t{ ...rest }\n\t\t\t\t\t>\n\t\t\t\t\t</input>\n\n\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"h-md\",\n\t\t\t\t\t\t\"w-xl\",\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"bg-primary-600\": isChecked && !disabled,\n\t\t\t\t\t\t\t\"bg-secondary-alt-300\": !isChecked && disabled,\n\t\t\t\t\t\t\t\"bg-secondary-alt-600\": !isChecked && !disabled,\n\t\t\t\t\t\t\t\"bg-primary-300\": isChecked && disabled\n\n\t\t\t\t\t\t}\n\t\t\t\t\t) }/>\n\n\t\t\t\t\t<span className={ cx(\n\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\"top-[50%]\",\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t\"bg-white\",\n\t\t\t\t\t\tstyles.UiToggle__dot,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"hover:shadow-border-secondary\": !isChecked && !disabled,\n\t\t\t\t\t\t\t\"hover:shadow-border-primary\": isChecked && !disabled,\n\t\t\t\t\t\t\t[styles.UiToggle__dot_checked]: isChecked\n\t\t\t\t\t\t},\n\n\t\t\t\t\t) }>\n\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\tclassName={ cx(\n\t\t\t\t\t\t\t\tstyles.UiToggle__icon,\n\t\t\t\t\t\t\t\t\"absolute\",\n\t\t\t\t\t\t\t\tdisabled ? \"text-primary-300\" : \"text-primary-600\",\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t[styles.UiToggle__icon_checked]: isChecked ,\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\twidth=\"16\"\n\t\t\t\t\t\t\theight=\"16\"\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\n\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<path\n\t\t\t\t\t\t\t\td=\"M1 4.40106L6.60071 10.1135L15.1694 1.71245\"\n\t\t\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\t\t\tstroke-width=\"1.6\"\n\t\t\t\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</svg>\n\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\n\t\t\t\t{ children }\n\n\t\t\t</label>\n\n\t\t</div>\n\t);\n};\n"],"names":["UiToggle","children","disabled","invertOrder","checked","value","className","defaultChecked","onChange","rest","toggled","setIsToggled","useState","isChecked","handleChange","useEffect","jsx","cx","jsxs","styles"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import i from "react";
2
- import { ETypographySizes as e, ETextTransform as r, ETextAlign as x, ETextWeight as a } from "./_types.js";
2
+ import { ETypographySizes as e, ETextTransform as r, ETextAlign as R, ETextWeight as a } from "./_types.js";
3
3
  import { EColors as t } from "../../_types/colors.js";
4
4
  import y from "classnames";
5
5
  const m = {
@@ -19,9 +19,9 @@ const m = {
19
19
  [r.NONE]: "normal-case",
20
20
  [r.CAPITALIZE]: "capitalize"
21
21
  }, L = {
22
- [x.LEFT]: "text-left",
23
- [x.RIGHT]: "text-right",
24
- [x.CENTER]: "text-center"
22
+ [R.LEFT]: "text-left",
23
+ [R.RIGHT]: "text-right",
24
+ [R.CENTER]: "text-center"
25
25
  }, Y = {
26
26
  [a.LIGHT]: "font-light",
27
27
  [a.REGULAR]: "font-medium",
@@ -69,6 +69,8 @@ const m = {
69
69
  [t.SECONDARY_ALT_600]: "text-secondary-alt-600",
70
70
  [t.SECONDARY_ALT_700]: "text-secondary-alt-700",
71
71
  [t.ERROR]: "text-error",
72
+ [t.ERROR_100]: "text-error-100",
73
+ [t.ERROR_200]: "text-error-200",
72
74
  [t.ERROR_300]: "text-error-300",
73
75
  [t.ERROR_400]: "text-error-400",
74
76
  [t.ERROR_500]: "text-error-500",
@@ -86,11 +88,11 @@ const m = {
86
88
  [t.ACCENT_ALT_600]: "text-accent-alt-600",
87
89
  [t.ACCENT_ALT_700]: "text-accent-alt-700"
88
90
  }, d = ({
89
- children: s,
90
- tag: o,
91
+ children: o,
92
+ tag: s,
91
93
  underline: E = !1,
92
94
  lineHeight: l = !1,
93
- size: R,
95
+ size: x,
94
96
  textTransform: A,
95
97
  align: _,
96
98
  weight: n,
@@ -104,17 +106,17 @@ const m = {
104
106
  underline: E
105
107
  },
106
108
  l ? "leading-normal" : "leading-none",
107
- R && m[R],
109
+ x && m[x],
108
110
  A && p[A],
109
111
  _ && L[_],
110
112
  n && Y[n],
111
113
  c && I[c],
112
114
  C
113
115
  );
114
- return i.createElement(o || "p", {
116
+ return i.createElement(s || "p", {
115
117
  className: N,
116
118
  ...T
117
- }, s);
119
+ }, o);
118
120
  };
119
121
  export {
120
122
  d as UiTypography
@@ -1 +1 @@
1
- {"version":3,"file":"UiTypography.js","sources":["../../../src/components/UiTypography/UiTypography.tsx"],"sourcesContent":["import React from \"react\";\nimport { ETextAlign, ETextTransform, ETextWeight, ETypographySizes } from \"./_types.ts\";\nimport { EColors } from \"../../_types/colors.ts\";\nimport cx from \"classnames\";\n\ntype TUiTypographyProps<T extends keyof React.JSX.IntrinsicElements> = {\n\ttag?: T;\n\tchildren?: React.ReactNode;\n\tunderline?: boolean;\n\tlineHeight?: boolean;\n\tsize?: ETypographySizes;\n\ttextTransform?: ETextTransform;\n\talign?: ETextAlign;\n\tweight?: ETextWeight;\n\tcolor?: EColors;\n} & Omit<React.JSX.IntrinsicElements[T], \"children\" | \"ref\">;\n\nconst sizeClasses = {\n\t[ETypographySizes.MD]: \"text-md\",\n\t[ETypographySizes.XXS]: \"text-xxs\",\n\t[ETypographySizes.XS]: \"text-xs\",\n\t[ETypographySizes.SM]: \"text-sm\",\n\t[ETypographySizes.LG]: \"text-lg\",\n\t[ETypographySizes.XL]: \"text-xl\",\n\t[ETypographySizes.XXL]: \"text-2xl\",\n\t[ETypographySizes.XXXL]: \"text-3xl\",\n\t[ETypographySizes.XXXXL]: \"text-4xl\",\n\t[ETypographySizes.XXXXXL]: \"text-5xl\",\n};\n\nconst textTransformClasses = {\n\t[ETextTransform.UPPERCASE]: \"uppercase\",\n\t[ETextTransform.LOWERCASE]: \"lowercase\",\n\t[ETextTransform.NONE]: \"normal-case\",\n\t[ETextTransform.CAPITALIZE]: \"capitalize\",\n};\n\nconst alignClasses = {\n\t[ETextAlign.LEFT]: \"text-left\",\n\t[ETextAlign.RIGHT]: \"text-right\",\n\t[ETextAlign.CENTER]: \"text-center\",\n};\n\nconst weightClasses = {\n\t[ETextWeight.LIGHT]: \"font-light\",\n\t[ETextWeight.REGULAR]: \"font-medium\",\n\t[ETextWeight.SEMI_BOLD]: \"font-bold\",\n\t[ETextWeight.BOLD]: \"font-black\",\n};\n\nconst colorClasses = {\n\t[EColors.WHITE]: \"text-white\",\n\t[EColors.BLACK]: \"text-black\",\n\t[EColors.TRANSPARENT]: \"text-transparent\",\n\t[EColors.CURRENT]: \"text-current\",\n\n\t[EColors.PRIMARY]: \"text-primary\",\n\t[EColors.PRIMARY_50]: \"text-primary-50\",\n\t[EColors.PRIMARY_100]: \"text-primary-100\",\n\t[EColors.PRIMARY_200]: \"text-primary-200\",\n\t[EColors.PRIMARY_300]: \"text-primary-300\",\n\t[EColors.PRIMARY_400]: \"text-primary-400\",\n\t[EColors.PRIMARY_500]: \"text-primary-500\",\n\t[EColors.PRIMARY_600]: \"text-primary-600\",\n\t[EColors.PRIMARY_700]: \"text-primary-700\",\n\t[EColors.PRIMARY_800]: \"text-primary-800\",\n\t[EColors.PRIMARY_900]: \"text-primary-900\",\n\n\t[EColors.PRIMARY_ALT]: \"text-primary-alt\",\n\t[EColors.PRIMARY_ALT_300]: \"text-primary-alt-300\",\n\t[EColors.PRIMARY_ALT_400]: \"text-primary-alt-400\",\n\t[EColors.PRIMARY_ALT_500]: \"text-primary-alt-500\",\n\t[EColors.PRIMARY_ALT_600]: \"text-primary-alt-600\",\n\t[EColors.PRIMARY_ALT_700]: \"text-primary-alt-700\",\n\n\t[EColors.WARNING]: \"text-warning\",\n\t[EColors.WARNING_300]: \"text-warning-300\",\n\t[EColors.WARNING_400]: \"text-warning-400\",\n\t[EColors.WARNING_500]: \"text-warning-500\",\n\t[EColors.WARNING_600]: \"text-warning-600\",\n\t[EColors.WARNING_700]: \"text-warning-700\",\n\n\t[EColors.SECONDARY]: \"text-secondary\",\n\t[EColors.SECONDARY_300]: \"text-secondary-300\",\n\t[EColors.SECONDARY_400]: \"text-secondary-400\",\n\t[EColors.SECONDARY_500]: \"text-secondary-500\",\n\t[EColors.SECONDARY_600]: \"text-secondary-600\",\n\t[EColors.SECONDARY_700]: \"text-secondary-700\",\n\n\t[EColors.SECONDARY_ALT]: \"text-secondary-alt\",\n\t[EColors.SECONDARY_ALT_200]: \"text-secondary-alt-200\",\n\t[EColors.SECONDARY_ALT_300]: \"text-secondary-alt-300\",\n\t[EColors.SECONDARY_ALT_400]: \"text-secondary-alt-400\",\n\t[EColors.SECONDARY_ALT_500]: \"text-secondary-alt-500\",\n\t[EColors.SECONDARY_ALT_600]: \"text-secondary-alt-600\",\n\t[EColors.SECONDARY_ALT_700]: \"text-secondary-alt-700\",\n\n\t[EColors.ERROR]: \"text-error\",\n\t[EColors.ERROR_300]: \"text-error-300\",\n\t[EColors.ERROR_400]: \"text-error-400\",\n\t[EColors.ERROR_500]: \"text-error-500\",\n\t[EColors.ERROR_600]: \"text-error-600\",\n\t[EColors.ERROR_700]: \"text-error-700\",\n\n\t[EColors.ACCENT]: \"text-accent\",\n\t[EColors.ACCENT_300]: \"text-accent-300\",\n\t[EColors.ACCENT_500]: \"text-accent-500\",\n\t[EColors.ACCENT_600]: \"text-accent-600\",\n\t[EColors.ACCENT_700]: \"text-accent-700\",\n\n\t[EColors.ACCENT_ALT]: \"text-accent-alt\",\n\t[EColors.ACCENT_ALT_300]: \"text-accent-alt-300\",\n\t[EColors.ACCENT_ALT_400]: \"text-accent-alt-400\",\n\t[EColors.ACCENT_ALT_500]: \"text-accent-alt-500\",\n\t[EColors.ACCENT_ALT_600]: \"text-accent-alt-600\",\n\t[EColors.ACCENT_ALT_700]: \"text-accent-alt-700\",\n};\n\nexport const UiTypography = <T extends keyof React.JSX.IntrinsicElements> (\n\t{\n\t\tchildren,\n\t\ttag,\n\t\tunderline = false,\n\t\tlineHeight = false,\n\t\tsize,\n\t\ttextTransform,\n\t\talign,\n\t\tweight,\n\t\tcolor,\n\t\tclassName,\n\t\t...rest\n\t}: TUiTypographyProps<T> ): React.JSX.Element => {\n\n\tconst classes = cx(\n\t\t\"ui-typography\",\n\t\t{\n\t\t\tunderline\n\t\t},\n\t\tlineHeight ? \"leading-normal\" : \"leading-none\",\n\t\tsize && sizeClasses[size],\n\t\ttextTransform && textTransformClasses[textTransform],\n\t\talign && alignClasses[align],\n\t\tweight && weightClasses[weight],\n\t\tcolor && colorClasses[color],\n\t\tclassName\n\t);\n\n\treturn React.createElement(tag || \"p\", {\n\t\tclassName: classes,\n\t\t...rest\n\t}, children);\n};\n"],"names":["sizeClasses","ETypographySizes","textTransformClasses","ETextTransform","alignClasses","ETextAlign","weightClasses","ETextWeight","colorClasses","EColors","UiTypography","children","tag","underline","lineHeight","size","textTransform","align","weight","color","className","rest","classes","cx","React"],"mappings":"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"}
1
+ {"version":3,"file":"UiTypography.js","sources":["../../../src/components/UiTypography/UiTypography.tsx"],"sourcesContent":["import React from \"react\";\nimport { ETextAlign, ETextTransform, ETextWeight, ETypographySizes } from \"./_types.ts\";\nimport { EColors } from \"../../_types/colors.ts\";\nimport cx from \"classnames\";\n\ntype TUiTypographyProps<T extends keyof React.JSX.IntrinsicElements> = {\n\ttag?: T;\n\tchildren?: React.ReactNode;\n\tunderline?: boolean;\n\tlineHeight?: boolean;\n\tsize?: ETypographySizes;\n\ttextTransform?: ETextTransform;\n\talign?: ETextAlign;\n\tweight?: ETextWeight;\n\tcolor?: EColors;\n} & Omit<React.JSX.IntrinsicElements[T], \"children\" | \"ref\">;\n\nconst sizeClasses = {\n\t[ETypographySizes.MD]: \"text-md\",\n\t[ETypographySizes.XXS]: \"text-xxs\",\n\t[ETypographySizes.XS]: \"text-xs\",\n\t[ETypographySizes.SM]: \"text-sm\",\n\t[ETypographySizes.LG]: \"text-lg\",\n\t[ETypographySizes.XL]: \"text-xl\",\n\t[ETypographySizes.XXL]: \"text-2xl\",\n\t[ETypographySizes.XXXL]: \"text-3xl\",\n\t[ETypographySizes.XXXXL]: \"text-4xl\",\n\t[ETypographySizes.XXXXXL]: \"text-5xl\",\n};\n\nconst textTransformClasses = {\n\t[ETextTransform.UPPERCASE]: \"uppercase\",\n\t[ETextTransform.LOWERCASE]: \"lowercase\",\n\t[ETextTransform.NONE]: \"normal-case\",\n\t[ETextTransform.CAPITALIZE]: \"capitalize\",\n};\n\nconst alignClasses = {\n\t[ETextAlign.LEFT]: \"text-left\",\n\t[ETextAlign.RIGHT]: \"text-right\",\n\t[ETextAlign.CENTER]: \"text-center\",\n};\n\nconst weightClasses = {\n\t[ETextWeight.LIGHT]: \"font-light\",\n\t[ETextWeight.REGULAR]: \"font-medium\",\n\t[ETextWeight.SEMI_BOLD]: \"font-bold\",\n\t[ETextWeight.BOLD]: \"font-black\",\n};\n\nconst colorClasses = {\n\t[EColors.WHITE]: \"text-white\",\n\t[EColors.BLACK]: \"text-black\",\n\t[EColors.TRANSPARENT]: \"text-transparent\",\n\t[EColors.CURRENT]: \"text-current\",\n\n\t[EColors.PRIMARY]: \"text-primary\",\n\t[EColors.PRIMARY_50]: \"text-primary-50\",\n\t[EColors.PRIMARY_100]: \"text-primary-100\",\n\t[EColors.PRIMARY_200]: \"text-primary-200\",\n\t[EColors.PRIMARY_300]: \"text-primary-300\",\n\t[EColors.PRIMARY_400]: \"text-primary-400\",\n\t[EColors.PRIMARY_500]: \"text-primary-500\",\n\t[EColors.PRIMARY_600]: \"text-primary-600\",\n\t[EColors.PRIMARY_700]: \"text-primary-700\",\n\t[EColors.PRIMARY_800]: \"text-primary-800\",\n\t[EColors.PRIMARY_900]: \"text-primary-900\",\n\n\t[EColors.PRIMARY_ALT]: \"text-primary-alt\",\n\t[EColors.PRIMARY_ALT_300]: \"text-primary-alt-300\",\n\t[EColors.PRIMARY_ALT_400]: \"text-primary-alt-400\",\n\t[EColors.PRIMARY_ALT_500]: \"text-primary-alt-500\",\n\t[EColors.PRIMARY_ALT_600]: \"text-primary-alt-600\",\n\t[EColors.PRIMARY_ALT_700]: \"text-primary-alt-700\",\n\n\t[EColors.WARNING]: \"text-warning\",\n\t[EColors.WARNING_300]: \"text-warning-300\",\n\t[EColors.WARNING_400]: \"text-warning-400\",\n\t[EColors.WARNING_500]: \"text-warning-500\",\n\t[EColors.WARNING_600]: \"text-warning-600\",\n\t[EColors.WARNING_700]: \"text-warning-700\",\n\n\t[EColors.SECONDARY]: \"text-secondary\",\n\t[EColors.SECONDARY_300]: \"text-secondary-300\",\n\t[EColors.SECONDARY_400]: \"text-secondary-400\",\n\t[EColors.SECONDARY_500]: \"text-secondary-500\",\n\t[EColors.SECONDARY_600]: \"text-secondary-600\",\n\t[EColors.SECONDARY_700]: \"text-secondary-700\",\n\n\t[EColors.SECONDARY_ALT]: \"text-secondary-alt\",\n\t[EColors.SECONDARY_ALT_200]: \"text-secondary-alt-200\",\n\t[EColors.SECONDARY_ALT_300]: \"text-secondary-alt-300\",\n\t[EColors.SECONDARY_ALT_400]: \"text-secondary-alt-400\",\n\t[EColors.SECONDARY_ALT_500]: \"text-secondary-alt-500\",\n\t[EColors.SECONDARY_ALT_600]: \"text-secondary-alt-600\",\n\t[EColors.SECONDARY_ALT_700]: \"text-secondary-alt-700\",\n\n\t[EColors.ERROR]: \"text-error\",\n\t[EColors.ERROR_100]: \"text-error-100\",\n\t[EColors.ERROR_200]: \"text-error-200\",\n\t[EColors.ERROR_300]: \"text-error-300\",\n\t[EColors.ERROR_400]: \"text-error-400\",\n\t[EColors.ERROR_500]: \"text-error-500\",\n\t[EColors.ERROR_600]: \"text-error-600\",\n\t[EColors.ERROR_700]: \"text-error-700\",\n\n\t[EColors.ACCENT]: \"text-accent\",\n\t[EColors.ACCENT_300]: \"text-accent-300\",\n\t[EColors.ACCENT_500]: \"text-accent-500\",\n\t[EColors.ACCENT_600]: \"text-accent-600\",\n\t[EColors.ACCENT_700]: \"text-accent-700\",\n\n\t[EColors.ACCENT_ALT]: \"text-accent-alt\",\n\t[EColors.ACCENT_ALT_300]: \"text-accent-alt-300\",\n\t[EColors.ACCENT_ALT_400]: \"text-accent-alt-400\",\n\t[EColors.ACCENT_ALT_500]: \"text-accent-alt-500\",\n\t[EColors.ACCENT_ALT_600]: \"text-accent-alt-600\",\n\t[EColors.ACCENT_ALT_700]: \"text-accent-alt-700\",\n};\n\nexport const UiTypography = <T extends keyof React.JSX.IntrinsicElements> (\n\t{\n\t\tchildren,\n\t\ttag,\n\t\tunderline = false,\n\t\tlineHeight = false,\n\t\tsize,\n\t\ttextTransform,\n\t\talign,\n\t\tweight,\n\t\tcolor,\n\t\tclassName,\n\t\t...rest\n\t}: TUiTypographyProps<T> ): React.JSX.Element => {\n\n\tconst classes = cx(\n\t\t\"ui-typography\",\n\t\t{\n\t\t\tunderline\n\t\t},\n\t\tlineHeight ? \"leading-normal\" : \"leading-none\",\n\t\tsize && sizeClasses[size],\n\t\ttextTransform && textTransformClasses[textTransform],\n\t\talign && alignClasses[align],\n\t\tweight && weightClasses[weight],\n\t\tcolor && colorClasses[color],\n\t\tclassName\n\t);\n\n\treturn React.createElement(tag || \"p\", {\n\t\tclassName: classes,\n\t\t...rest\n\t}, children);\n};\n"],"names":["sizeClasses","ETypographySizes","textTransformClasses","ETextTransform","alignClasses","ETextAlign","weightClasses","ETextWeight","colorClasses","EColors","UiTypography","children","tag","underline","lineHeight","size","textTransform","align","weight","color","className","rest","classes","cx","React"],"mappings":"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"}
package/eslint.config.mjs CHANGED
@@ -2,7 +2,9 @@ import react from "eslint-plugin-react";
2
2
  import tseslint from "typescript-eslint";
3
3
  import stylisticPlugin from "@stylistic/eslint-plugin";
4
4
  import storybook from "eslint-plugin-storybook";
5
- import pluginTailwind from "eslint-plugin-tailwindcss";
5
+
6
+ // Not compatible with tailwind v4: https://github.com/francoismassart/eslint-plugin-tailwindcss/issues/325
7
+ // import pluginTailwind from "eslint-plugin-tailwindcss";
6
8
 
7
9
  /** @type {import('eslint').Linter.Config[]} */
8
10
  export default [
@@ -86,6 +88,5 @@ export default [
86
88
  },
87
89
  },
88
90
  ...tseslint.configs.recommended,
89
- ...storybook.configs["flat/recommended"],
90
- ...pluginTailwind.configs["flat/recommended"]
91
+ ...storybook.configs["flat/recommended"]
91
92
  ];
package/helper.d.ts CHANGED
@@ -1 +1,32 @@
1
+ export type TColor = {
2
+ name: string;
3
+ value: string;
4
+ };
5
+ export type TGroupedColor = {
6
+ groupTitle: string;
7
+ groupColors: {
8
+ shade: string;
9
+ value: string;
10
+ name: string;
11
+ }[];
12
+ };
1
13
  export declare const getCssVariableValue: (variable: string) => string;
14
+ export declare const getBaseVariables: () => {
15
+ name: string;
16
+ value: string;
17
+ }[];
18
+ export declare const getThemeTokens: () => {
19
+ fontSizes: {
20
+ name: string;
21
+ value: string;
22
+ }[];
23
+ spacings: {
24
+ name: string;
25
+ value: string;
26
+ }[];
27
+ groupedColors: TGroupedColor[];
28
+ baseColors: {
29
+ name: string;
30
+ value: string;
31
+ }[];
32
+ };