@jbpark/ui-kit 2.3.2 → 2.3.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 (274) hide show
  1. package/README.ko.md +0 -1
  2. package/README.md +0 -1
  3. package/dist/Menu.d.mts +62 -2
  4. package/dist/Menu.d.mts.map +1 -0
  5. package/dist/Menu.mjs +66 -5
  6. package/dist/Menu.mjs.map +1 -0
  7. package/dist/Reveals.d.mts +43 -2
  8. package/dist/Reveals.d.mts.map +1 -0
  9. package/dist/Reveals.mjs +28 -3
  10. package/dist/Reveals.mjs.map +1 -0
  11. package/dist/Typography.d.mts +40 -2
  12. package/dist/Typography.d.mts.map +1 -0
  13. package/dist/Typography.mjs +20 -3
  14. package/dist/Typography.mjs.map +1 -0
  15. package/dist/{chunk-BWyCjowX.mjs → _virtual/_rolldown/runtime.mjs} +4 -4
  16. package/dist/components/atoms/Button/index.d.mts +36 -0
  17. package/dist/components/atoms/Button/index.d.mts.map +1 -0
  18. package/dist/components/atoms/Button/index.mjs +56 -0
  19. package/dist/components/atoms/Button/index.mjs.map +1 -0
  20. package/dist/components/atoms/Checkbox/Group/index.d.mts +21 -0
  21. package/dist/components/atoms/Checkbox/Group/index.d.mts.map +1 -0
  22. package/dist/components/atoms/Checkbox/Group/index.mjs +41 -0
  23. package/dist/components/atoms/Checkbox/Group/index.mjs.map +1 -0
  24. package/dist/components/atoms/Checkbox/index.d.mts +45 -0
  25. package/dist/components/atoms/Checkbox/index.d.mts.map +1 -0
  26. package/dist/components/atoms/Checkbox/index.mjs +70 -0
  27. package/dist/components/atoms/Checkbox/index.mjs.map +1 -0
  28. package/dist/components/atoms/ColorPicker/index.d.mts +18 -0
  29. package/dist/components/atoms/ColorPicker/index.d.mts.map +1 -0
  30. package/dist/components/atoms/ColorPicker/index.mjs +39 -0
  31. package/dist/components/atoms/ColorPicker/index.mjs.map +1 -0
  32. package/dist/components/atoms/FloatButton/BackTop/index.d.mts +12 -0
  33. package/dist/components/atoms/FloatButton/BackTop/index.d.mts.map +1 -0
  34. package/dist/components/atoms/FloatButton/BackTop/index.mjs +27 -0
  35. package/dist/components/atoms/FloatButton/BackTop/index.mjs.map +1 -0
  36. package/dist/components/atoms/FloatButton/index.d.mts +22 -0
  37. package/dist/components/atoms/FloatButton/index.d.mts.map +1 -0
  38. package/dist/components/atoms/FloatButton/index.mjs +19 -0
  39. package/dist/components/atoms/FloatButton/index.mjs.map +1 -0
  40. package/dist/components/atoms/Input/Search/index.d.mts +15 -0
  41. package/dist/components/atoms/Input/Search/index.d.mts.map +1 -0
  42. package/dist/components/atoms/Input/Search/index.mjs +57 -0
  43. package/dist/components/atoms/Input/Search/index.mjs.map +1 -0
  44. package/dist/components/atoms/Input/TextArea/index.d.mts +1 -0
  45. package/dist/components/atoms/Input/TextArea/index.mjs +18 -0
  46. package/dist/components/atoms/Input/TextArea/index.mjs.map +1 -0
  47. package/dist/components/atoms/Input/index.d.mts +31 -0
  48. package/dist/components/atoms/Input/index.d.mts.map +1 -0
  49. package/dist/components/atoms/Input/index.mjs +17 -0
  50. package/dist/components/atoms/Input/index.mjs.map +1 -0
  51. package/dist/components/atoms/Popover/index.d.mts +19 -0
  52. package/dist/components/atoms/Popover/index.d.mts.map +1 -0
  53. package/dist/components/atoms/Popover/index.mjs +229 -0
  54. package/dist/components/atoms/Popover/index.mjs.map +1 -0
  55. package/dist/components/atoms/Progress/index.d.mts +20 -0
  56. package/dist/components/atoms/Progress/index.d.mts.map +1 -0
  57. package/dist/components/atoms/Progress/index.mjs +25 -0
  58. package/dist/components/atoms/Progress/index.mjs.map +1 -0
  59. package/dist/components/atoms/Radio/Group/index.d.mts +21 -0
  60. package/dist/components/atoms/Radio/Group/index.d.mts.map +1 -0
  61. package/dist/components/atoms/Radio/Group/index.mjs +41 -0
  62. package/dist/components/atoms/Radio/Group/index.mjs.map +1 -0
  63. package/dist/components/atoms/Radio/index.d.mts +47 -0
  64. package/dist/components/atoms/Radio/index.d.mts.map +1 -0
  65. package/dist/components/atoms/Radio/index.mjs +77 -0
  66. package/dist/components/atoms/Radio/index.mjs.map +1 -0
  67. package/dist/components/atoms/Select/index.d.mts +31 -0
  68. package/dist/components/atoms/Select/index.d.mts.map +1 -0
  69. package/dist/components/atoms/Select/index.mjs +31 -0
  70. package/dist/components/atoms/Select/index.mjs.map +1 -0
  71. package/dist/components/atoms/Skeleton/Button/index.d.mts +2 -0
  72. package/dist/components/atoms/Skeleton/Button/index.mjs +15 -0
  73. package/dist/components/atoms/Skeleton/Button/index.mjs.map +1 -0
  74. package/dist/components/atoms/Skeleton/Node/index.d.mts +2 -0
  75. package/dist/components/atoms/Skeleton/Node/index.mjs +16 -0
  76. package/dist/components/atoms/Skeleton/Node/index.mjs.map +1 -0
  77. package/dist/components/atoms/Skeleton/index.d.mts +51 -0
  78. package/dist/components/atoms/Skeleton/index.d.mts.map +1 -0
  79. package/dist/components/atoms/Skeleton/index.mjs +46 -0
  80. package/dist/components/atoms/Skeleton/index.mjs.map +1 -0
  81. package/dist/components/atoms/Spin/index.d.mts +14 -0
  82. package/dist/components/atoms/Spin/index.d.mts.map +1 -0
  83. package/dist/components/atoms/Spin/index.mjs +17 -0
  84. package/dist/components/atoms/Spin/index.mjs.map +1 -0
  85. package/dist/components/atoms/Switch/index.d.mts +24 -0
  86. package/dist/components/atoms/Switch/index.d.mts.map +1 -0
  87. package/dist/components/atoms/Switch/index.mjs +32 -0
  88. package/dist/components/atoms/Switch/index.mjs.map +1 -0
  89. package/dist/components/atoms/Typography/Link/index.d.mts +12 -0
  90. package/dist/components/atoms/Typography/Link/index.d.mts.map +1 -0
  91. package/dist/components/atoms/Typography/Link/index.mjs +15 -0
  92. package/dist/components/atoms/Typography/Link/index.mjs.map +1 -0
  93. package/dist/components/atoms/Typography/Paragraph/index.d.mts +12 -0
  94. package/dist/components/atoms/Typography/Paragraph/index.d.mts.map +1 -0
  95. package/dist/components/atoms/Typography/Paragraph/index.mjs +15 -0
  96. package/dist/components/atoms/Typography/Paragraph/index.mjs.map +1 -0
  97. package/dist/components/atoms/Typography/Text/index.d.mts +17 -0
  98. package/dist/components/atoms/Typography/Text/index.d.mts.map +1 -0
  99. package/dist/components/atoms/Typography/Text/index.mjs +15 -0
  100. package/dist/components/atoms/Typography/Text/index.mjs.map +1 -0
  101. package/dist/components/atoms/Typography/Title/index.d.mts +15 -0
  102. package/dist/components/atoms/Typography/Title/index.d.mts.map +1 -0
  103. package/dist/components/atoms/Typography/Title/index.mjs +24 -0
  104. package/dist/components/atoms/Typography/Title/index.mjs.map +1 -0
  105. package/dist/components/atoms/index.d.mts +13 -0
  106. package/dist/components/atoms/index.mjs +15 -0
  107. package/dist/components/molecules/Card/index.d.mts +22 -0
  108. package/dist/components/molecules/Card/index.d.mts.map +1 -0
  109. package/dist/components/molecules/Card/index.mjs +21 -0
  110. package/dist/components/molecules/Card/index.mjs.map +1 -0
  111. package/dist/components/molecules/Collapse/index.d.mts +36 -0
  112. package/dist/components/molecules/Collapse/index.d.mts.map +1 -0
  113. package/dist/components/molecules/Collapse/index.mjs +53 -0
  114. package/dist/components/molecules/Collapse/index.mjs.map +1 -0
  115. package/dist/components/molecules/Dropdown/index.d.mts +23 -0
  116. package/dist/components/molecules/Dropdown/index.d.mts.map +1 -0
  117. package/dist/components/molecules/Dropdown/index.mjs +66 -0
  118. package/dist/components/molecules/Dropdown/index.mjs.map +1 -0
  119. package/dist/components/molecules/Marquees/Item/index.d.mts +17 -0
  120. package/dist/components/molecules/Marquees/Item/index.d.mts.map +1 -0
  121. package/dist/components/molecules/Marquees/Item/index.mjs +103 -0
  122. package/dist/components/molecules/Marquees/Item/index.mjs.map +1 -0
  123. package/dist/components/molecules/Marquees/index.d.mts +31 -0
  124. package/dist/components/molecules/Marquees/index.d.mts.map +1 -0
  125. package/dist/components/molecules/Marquees/index.mjs +63 -0
  126. package/dist/components/molecules/Marquees/index.mjs.map +1 -0
  127. package/dist/components/molecules/Menu/Item/Label/index.mjs +18 -0
  128. package/dist/components/molecules/Menu/Item/Label/index.mjs.map +1 -0
  129. package/dist/components/molecules/Menu/Item/index.mjs +122 -0
  130. package/dist/components/molecules/Menu/Item/index.mjs.map +1 -0
  131. package/dist/{index-BcxCfsJl.d.mts → components/molecules/Reveals/Item/index.d.mts} +4 -41
  132. package/dist/components/molecules/Reveals/Item/index.d.mts.map +1 -0
  133. package/dist/{Reveals-Cqo3i2hh.mjs → components/molecules/Reveals/Item/index.mjs} +5 -27
  134. package/dist/components/molecules/Reveals/Item/index.mjs.map +1 -0
  135. package/dist/components/molecules/Space/index.d.mts +34 -0
  136. package/dist/components/molecules/Space/index.d.mts.map +1 -0
  137. package/dist/components/molecules/Space/index.mjs +41 -0
  138. package/dist/components/molecules/Space/index.mjs.map +1 -0
  139. package/dist/components/molecules/index.d.mts +7 -0
  140. package/dist/components/molecules/index.mjs +9 -0
  141. package/dist/components/organisms/Drawer/index.d.mts +54 -0
  142. package/dist/components/organisms/Drawer/index.d.mts.map +1 -0
  143. package/dist/components/organisms/Drawer/index.mjs +72 -0
  144. package/dist/components/organisms/Drawer/index.mjs.map +1 -0
  145. package/dist/components/organisms/List/Item/index.mjs +15 -0
  146. package/dist/components/organisms/List/Item/index.mjs.map +1 -0
  147. package/dist/components/organisms/List/index.d.mts +52 -0
  148. package/dist/components/organisms/List/index.d.mts.map +1 -0
  149. package/dist/components/organisms/List/index.mjs +77 -0
  150. package/dist/components/organisms/List/index.mjs.map +1 -0
  151. package/dist/components/organisms/Modal/index.d.mts +66 -0
  152. package/dist/components/organisms/Modal/index.d.mts.map +1 -0
  153. package/dist/components/organisms/Modal/index.mjs +197 -0
  154. package/dist/components/organisms/Modal/index.mjs.map +1 -0
  155. package/dist/components/organisms/Swiper/Slide/index.mjs +17 -0
  156. package/dist/components/organisms/Swiper/Slide/index.mjs.map +1 -0
  157. package/dist/components/organisms/Swiper/index.d.mts +42 -0
  158. package/dist/components/organisms/Swiper/index.d.mts.map +1 -0
  159. package/dist/components/organisms/Swiper/index.mjs +58 -0
  160. package/dist/components/organisms/Swiper/index.mjs.map +1 -0
  161. package/dist/components/organisms/index.d.mts +4 -0
  162. package/dist/components/organisms/index.mjs +6 -0
  163. package/dist/components/templates/Layout/Content/index.d.mts +1 -0
  164. package/dist/components/templates/Layout/Content/index.mjs +15 -0
  165. package/dist/components/templates/Layout/Content/index.mjs.map +1 -0
  166. package/dist/components/templates/Layout/Footer/index.d.mts +1 -0
  167. package/dist/components/templates/Layout/Footer/index.mjs +15 -0
  168. package/dist/components/templates/Layout/Footer/index.mjs.map +1 -0
  169. package/dist/components/templates/Layout/Header/index.d.mts +7 -0
  170. package/dist/components/templates/Layout/Header/index.d.mts.map +1 -0
  171. package/dist/components/templates/Layout/Header/index.mjs +15 -0
  172. package/dist/components/templates/Layout/Header/index.mjs.map +1 -0
  173. package/dist/components/templates/Layout/Sider/index.d.mts +1 -0
  174. package/dist/components/templates/Layout/Sider/index.mjs +15 -0
  175. package/dist/components/templates/Layout/Sider/index.mjs.map +1 -0
  176. package/dist/components/templates/Layout/index.d.mts +38 -0
  177. package/dist/components/templates/Layout/index.d.mts.map +1 -0
  178. package/dist/components/templates/Layout/index.mjs +23 -0
  179. package/dist/components/templates/Layout/index.mjs.map +1 -0
  180. package/dist/components/templates/index.d.mts +1 -0
  181. package/dist/components/templates/index.mjs +3 -0
  182. package/dist/core/accordion.d.mts +32 -0
  183. package/dist/core/accordion.d.mts.map +1 -0
  184. package/dist/core/accordion.mjs +59 -0
  185. package/dist/core/accordion.mjs.map +1 -0
  186. package/dist/core/button.d.mts +26 -0
  187. package/dist/core/button.d.mts.map +1 -0
  188. package/dist/core/button.mjs +55 -0
  189. package/dist/core/button.mjs.map +1 -0
  190. package/dist/core/checkbox.d.mts +15 -0
  191. package/dist/core/checkbox.d.mts.map +1 -0
  192. package/dist/core/checkbox.mjs +34 -0
  193. package/dist/core/checkbox.mjs.map +1 -0
  194. package/dist/core/dialog.d.mts +68 -0
  195. package/dist/core/dialog.d.mts.map +1 -0
  196. package/dist/core/dialog.mjs +124 -0
  197. package/dist/core/dialog.mjs.map +1 -0
  198. package/dist/core/drawer.d.mts +60 -0
  199. package/dist/core/drawer.d.mts.map +1 -0
  200. package/dist/core/drawer.mjs +120 -0
  201. package/dist/core/drawer.mjs.map +1 -0
  202. package/dist/core/field.d.mts +68 -0
  203. package/dist/core/field.d.mts.map +1 -0
  204. package/dist/core/field.mjs +145 -0
  205. package/dist/core/field.mjs.map +1 -0
  206. package/dist/core/input.d.mts +15 -0
  207. package/dist/core/input.d.mts.map +1 -0
  208. package/dist/core/input.mjs +27 -0
  209. package/dist/core/input.mjs.map +1 -0
  210. package/dist/core/label.d.mts +15 -0
  211. package/dist/core/label.d.mts.map +1 -0
  212. package/dist/core/label.mjs +24 -0
  213. package/dist/core/label.mjs.map +1 -0
  214. package/dist/core/popover.d.mts +38 -0
  215. package/dist/core/popover.d.mts.map +1 -0
  216. package/dist/core/popover.mjs +78 -0
  217. package/dist/core/popover.mjs.map +1 -0
  218. package/dist/core/progress.d.mts +22 -0
  219. package/dist/core/progress.d.mts.map +1 -0
  220. package/dist/core/progress.mjs +29 -0
  221. package/dist/core/progress.mjs.map +1 -0
  222. package/dist/core/radio-group.d.mts +19 -0
  223. package/dist/core/radio-group.d.mts.map +1 -0
  224. package/dist/core/radio-group.mjs +43 -0
  225. package/dist/core/radio-group.mjs.map +1 -0
  226. package/dist/core/select.d.mts +56 -0
  227. package/dist/core/select.d.mts.map +1 -0
  228. package/dist/core/select.mjs +144 -0
  229. package/dist/core/select.mjs.map +1 -0
  230. package/dist/core/separator.d.mts +17 -0
  231. package/dist/core/separator.d.mts.map +1 -0
  232. package/dist/core/separator.mjs +25 -0
  233. package/dist/core/separator.mjs.map +1 -0
  234. package/dist/core/skeleton.d.mts +13 -0
  235. package/dist/core/skeleton.d.mts.map +1 -0
  236. package/dist/core/skeleton.mjs +17 -0
  237. package/dist/core/skeleton.mjs.map +1 -0
  238. package/dist/core/switch.d.mts +22 -0
  239. package/dist/core/switch.d.mts.map +1 -0
  240. package/dist/core/switch.mjs +39 -0
  241. package/dist/core/switch.mjs.map +1 -0
  242. package/dist/core/textarea.d.mts +14 -0
  243. package/dist/core/textarea.d.mts.map +1 -0
  244. package/dist/core/textarea.mjs +25 -0
  245. package/dist/core/textarea.mjs.map +1 -0
  246. package/dist/core.d.mts +17 -2
  247. package/dist/core.mjs +17 -5
  248. package/dist/enums.d.mts +2 -1
  249. package/dist/enums.d.mts.map +1 -0
  250. package/dist/enums.mjs +2 -1
  251. package/dist/enums.mjs.map +1 -0
  252. package/dist/index.d.mts +29 -714
  253. package/dist/index.mjs +31 -5
  254. package/dist/node_modules/gsap/CSSPlugin.mjs +920 -0
  255. package/dist/node_modules/gsap/CSSPlugin.mjs.map +1 -0
  256. package/dist/node_modules/gsap/gsap-core.mjs +2723 -0
  257. package/dist/node_modules/gsap/gsap-core.mjs.map +1 -0
  258. package/dist/node_modules/gsap/index.mjs +9 -0
  259. package/dist/node_modules/gsap/index.mjs.map +1 -0
  260. package/dist/{output.css → style.css} +3 -196
  261. package/dist/style.css.map +1 -0
  262. package/dist/style.mjs +1 -0
  263. package/dist/utils.d.mts +2 -1
  264. package/dist/utils.d.mts.map +1 -0
  265. package/dist/utils.mjs +16 -2
  266. package/dist/utils.mjs.map +1 -0
  267. package/package.json +10 -11
  268. package/dist/Typography-Dznhj8uL.mjs +0 -71
  269. package/dist/index-BC23qXS8.d.mts +0 -391
  270. package/dist/index-tclrN3ts.d.mts +0 -61
  271. package/dist/index-vBhS7Nno.d.mts +0 -75
  272. package/dist/src-BzCZ9O6j.css +0 -211
  273. package/dist/src-CS2dhz2p.mjs +0 -6160
  274. package/dist/utils-1s_37TSX.mjs +0 -16
package/README.ko.md CHANGED
@@ -28,7 +28,6 @@ src/
28
28
  ├── core/ # ⚙️ 핵심 UI 로직 (Radix UI 기반)
29
29
  ├── lib/
30
30
  │ ├── enums/ # 📋 열거형 타입
31
- │ ├── hooks/ # 🎣 커스텀 훅
32
31
  │ └── utils/ # 🛠 유틸리티 함수
33
32
  ├── globals.css # 🎨 전역 스타일
34
33
  └── index.ts # 📥 패키지 진입점
package/README.md CHANGED
@@ -28,7 +28,6 @@ src/
28
28
  ├── core/ # ⚙️ Core UI logic (Radix UI based)
29
29
  ├── lib/
30
30
  │ ├── enums/ # 📋 Enumeration types
31
- │ ├── hooks/ # 🎣 Custom hooks
32
31
  │ └── utils/ # 🛠 Utility functions
33
32
  ├── globals.css # 🎨 Global styles
34
33
  └── index.ts # 📥 Package entry point
package/dist/Menu.d.mts CHANGED
@@ -1,2 +1,62 @@
1
- import { a as MenuProps, c as buildSelectionMap, i as MenuItem, l as findKey, n as MENU_CLASSNAMES, o as Props, r as Menu, s as SelectionMap, t as ClickEventHandler } from "./index-tclrN3ts.mjs";
2
- export { ClickEventHandler, MENU_CLASSNAMES, MenuItem, MenuProps, Props, SelectionMap, buildSelectionMap, Menu as default, findKey };
1
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+
3
+ //#region src/components/molecules/Menu/index.d.ts
4
+ interface MenuItem {
5
+ label: React.ReactNode;
6
+ key: React.Key;
7
+ type?: string;
8
+ path?: string;
9
+ children?: MenuItem[];
10
+ }
11
+ interface Props {
12
+ mode?: 'horizontal' | 'vertical' | 'inline';
13
+ selectedKeys?: React.Key[];
14
+ defaultSelectedKeys?: React.Key[];
15
+ selectionMap?: SelectionMap;
16
+ offset?: [number, number];
17
+ inlineOffset?: number;
18
+ classNames?: {
19
+ rootItem?: string;
20
+ subMenu?: string;
21
+ item?: string;
22
+ label?: string;
23
+ };
24
+ styles?: {
25
+ rootItem?: React.CSSProperties;
26
+ subMenu?: React.CSSProperties;
27
+ item?: React.CSSProperties;
28
+ label?: React.CSSProperties;
29
+ };
30
+ onClick?: ClickEventHandler;
31
+ onSelect?: ClickEventHandler;
32
+ }
33
+ interface MenuProps extends Props, Omit<React.ComponentPropsWithoutRef<'ul'>, 'onClick' | 'onSelect'> {
34
+ items?: MenuItem[];
35
+ }
36
+ type ClickEventHandler = (params: {
37
+ domEvent: React.MouseEvent;
38
+ key: React.Key;
39
+ keyPath: React.Key[];
40
+ item: MenuItem;
41
+ }) => void;
42
+ declare const MENU_CLASSNAMES: string[];
43
+ type SelectionMap = ReadonlyMap<React.Key, boolean>;
44
+ declare function buildSelectionMap(items: MenuItem[], selectedKeysSet: ReadonlySet<React.Key>): SelectionMap;
45
+ declare function findKey(menu: MenuItem, targetKeys: ReadonlySet<React.Key>): boolean;
46
+ declare const Menu: ({
47
+ items,
48
+ mode,
49
+ defaultSelectedKeys,
50
+ selectedKeys: _selectedKeys,
51
+ className,
52
+ classNames,
53
+ styles,
54
+ offset,
55
+ inlineOffset,
56
+ onClick,
57
+ onSelect: _onSelect,
58
+ ...props
59
+ }: MenuProps) => react_jsx_runtime0.JSX.Element;
60
+ //#endregion
61
+ export { ClickEventHandler, MENU_CLASSNAMES, MenuItem, MenuProps, Props, SelectionMap, buildSelectionMap, Menu as default, findKey };
62
+ //# sourceMappingURL=Menu.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.d.mts","names":[],"sources":["../src/components/molecules/Menu/index.tsx"],"mappings":";;;UAQiB,QAAA;EACf,KAAA,EAAO,KAAA,CAAM,SAAA;EACb,GAAA,EAAK,KAAA,CAAM,GAAA;EACX,IAAA;EACA,IAAA;EACA,QAAA,GAAW,QAAA;AAAA;AAAA,UAGI,KAAA;EACf,IAAA;EACA,YAAA,GAAe,KAAA,CAAM,GAAA;EACrB,mBAAA,GAAsB,KAAA,CAAM,GAAA;EAC5B,YAAA,GAAe,YAAA;EACf,MAAA;EACA,YAAA;EACA,UAAA;IACE,QAAA;IACA,OAAA;IACA,IAAA;IACA,KAAA;EAAA;EAGF,MAAA;IACE,QAAA,GAAW,KAAA,CAAM,aAAA;IACjB,OAAA,GAAU,KAAA,CAAM,aAAA;IAChB,IAAA,GAAO,KAAA,CAAM,aAAA;IACb,KAAA,GAAQ,KAAA,CAAM,aAAA;EAAA;EAGhB,OAAA,GAAU,iBAAA;EACV,QAAA,GAAW,iBAAA;AAAA;AAAA,UAGI,SAAA,SAEb,KAAA,EACA,IAAA,CAAK,KAAA,CAAM,wBAAA;EACb,KAAA,GAAQ,QAAA;AAAA;AAAA,KAGE,iBAAA,IAAqB,MAAA;EAC/B,QAAA,EAAU,KAAA,CAAM,UAAA;EAChB,GAAA,EAAK,KAAA,CAAM,GAAA;EACX,OAAA,EAAS,KAAA,CAAM,GAAA;EACf,IAAA,EAAM,QAAA;AAAA;AAAA,cAGK,eAAA;AAAA,KAQD,YAAA,GAAe,WAAA,CAAY,KAAA,CAAM,GAAA;AAAA,iBAE7B,iBAAA,CACd,KAAA,EAAO,QAAA,IACP,eAAA,EAAiB,WAAA,CAAY,KAAA,CAAM,GAAA,IAClC,YAAA;AAAA,iBAea,OAAA,CACd,IAAA,EAAM,QAAA,EACN,UAAA,EAAY,WAAA,CAAY,KAAA,CAAM,GAAA;AAAA,cAiB1B,IAAA;EAAQ,KAAA;EAAA,IAAA;EAAA,mBAAA;EAAA,YAAA,EAAA,aAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAA,MAAA;EAAA,YAAA;EAAA,OAAA;EAAA,QAAA,EAAA,SAAA;EAAA,GAAA;AAAA,GAaX,SAAA,KAAS,kBAAA,CAAA,GAAA,CAAA,OAAA"}
package/dist/Menu.mjs CHANGED
@@ -1,8 +1,69 @@
1
1
  'use client';
2
2
 
3
- import { d as buildSelectionMap, f as findKey, l as MENU_CLASSNAMES, u as Menu_default } from "./src-CS2dhz2p.mjs";
4
- import "./utils-1s_37TSX.mjs";
5
- import "./Typography-Dznhj8uL.mjs";
6
- import "./Reveals-Cqo3i2hh.mjs";
3
+ import { cn } from "./utils.mjs";
4
+ import Item from "./components/molecules/Menu/Item/index.mjs";
5
+ import { createElement, useMemo, useState } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
7
 
8
- export { MENU_CLASSNAMES, buildSelectionMap, Menu_default as default, findKey };
8
+ //#region src/components/molecules/Menu/index.tsx
9
+ const MENU_CLASSNAMES = [
10
+ "p-0",
11
+ "bg-white",
12
+ "shadow-md",
13
+ "rounded-md"
14
+ ];
15
+ function buildSelectionMap(items, selectedKeysSet) {
16
+ const map = /* @__PURE__ */ new Map();
17
+ const dfs = (node) => {
18
+ const self = selectedKeysSet.has(node.key);
19
+ const hasSelectedChild = node.children?.some((child) => dfs(child)) ?? false;
20
+ const isSelected = self || hasSelectedChild;
21
+ map.set(node.key, isSelected);
22
+ return isSelected;
23
+ };
24
+ items.forEach(dfs);
25
+ return map;
26
+ }
27
+ function findKey(menu, targetKeys) {
28
+ if (targetKeys.has(menu.key)) return true;
29
+ if (menu.children && Array.isArray(menu.children)) {
30
+ for (const child of menu.children) if (findKey(child, targetKeys)) return true;
31
+ }
32
+ return false;
33
+ }
34
+ const Menu = ({ items, mode = "vertical", defaultSelectedKeys = [], selectedKeys: _selectedKeys, className, classNames, styles, offset, inlineOffset, onClick, onSelect: _onSelect, ...props }) => {
35
+ const controlled = _selectedKeys !== void 0;
36
+ const [uncontrolledSelectedKeys, setUncontrolledSelectedKeys] = useState(defaultSelectedKeys ?? []);
37
+ const selectedKeys = controlled ? _selectedKeys : uncontrolledSelectedKeys;
38
+ const selectedKeysSet = useMemo(() => new Set(selectedKeys ?? []), [selectedKeys]);
39
+ const selectionMap = useMemo(() => buildSelectionMap(items ?? [], selectedKeysSet), [items, selectedKeysSet]);
40
+ const onSelect = (params) => {
41
+ if (!controlled) setUncontrolledSelectedKeys([params.key]);
42
+ _onSelect?.(params);
43
+ };
44
+ return /* @__PURE__ */ jsx("ul", {
45
+ role: "menu",
46
+ className: cn(MENU_CLASSNAMES, mode === "horizontal" ? "flex" : "inline-block", className),
47
+ ...props,
48
+ children: items?.map((item) => /* @__PURE__ */ createElement(Item, {
49
+ root: true,
50
+ ...item,
51
+ key: item.key,
52
+ itemKey: item.key,
53
+ keyPath: [item.key],
54
+ selectedKeys,
55
+ selectionMap,
56
+ mode,
57
+ classNames,
58
+ styles,
59
+ offset,
60
+ inlineOffset,
61
+ onClick,
62
+ onSelect
63
+ }))
64
+ });
65
+ };
66
+
67
+ //#endregion
68
+ export { MENU_CLASSNAMES, buildSelectionMap, Menu as default, findKey };
69
+ //# sourceMappingURL=Menu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.mjs","names":[],"sources":["../src/components/molecules/Menu/index.tsx"],"sourcesContent":["'use client';\n\nimport { useMemo, useState } from 'react';\n\nimport { cn } from '@repo/ui/utils';\n\nimport Item from './Item';\n\nexport interface MenuItem {\n label: React.ReactNode;\n key: React.Key;\n type?: string;\n path?: string;\n children?: MenuItem[];\n}\n\nexport interface Props {\n mode?: 'horizontal' | 'vertical' | 'inline';\n selectedKeys?: React.Key[];\n defaultSelectedKeys?: React.Key[];\n selectionMap?: SelectionMap;\n offset?: [number, number];\n inlineOffset?: number;\n classNames?: {\n rootItem?: string;\n subMenu?: string;\n item?: string;\n label?: string;\n // open?: string;\n };\n styles?: {\n rootItem?: React.CSSProperties;\n subMenu?: React.CSSProperties;\n item?: React.CSSProperties;\n label?: React.CSSProperties;\n // open?: React.CSSProperties;\n };\n onClick?: ClickEventHandler;\n onSelect?: ClickEventHandler;\n}\n\nexport interface MenuProps\n extends\n Props,\n Omit<React.ComponentPropsWithoutRef<'ul'>, 'onClick' | 'onSelect'> {\n items?: MenuItem[];\n}\n\nexport type ClickEventHandler = (params: {\n domEvent: React.MouseEvent;\n key: React.Key;\n keyPath: React.Key[];\n item: MenuItem;\n}) => void;\n\nexport const MENU_CLASSNAMES = [\n 'p-0',\n 'bg-white',\n 'shadow-md',\n 'rounded-md',\n //\n];\n\nexport type SelectionMap = ReadonlyMap<React.Key, boolean>;\n\nexport function buildSelectionMap(\n items: MenuItem[],\n selectedKeysSet: ReadonlySet<React.Key>,\n): SelectionMap {\n const map = new Map<React.Key, boolean>();\n\n const dfs = (node: MenuItem): boolean => {\n const self = selectedKeysSet.has(node.key);\n const hasSelectedChild = node.children?.some(child => dfs(child)) ?? false;\n const isSelected = self || hasSelectedChild;\n map.set(node.key, isSelected);\n return isSelected;\n };\n\n items.forEach(dfs);\n return map;\n}\n\nexport function findKey(\n menu: MenuItem,\n targetKeys: ReadonlySet<React.Key>,\n): boolean {\n if (targetKeys.has(menu.key)) {\n return true;\n }\n\n if (menu.children && Array.isArray(menu.children)) {\n for (const child of menu.children) {\n if (findKey(child, targetKeys)) {\n return true;\n }\n }\n }\n\n return false;\n}\n\nconst Menu = ({\n items,\n mode = 'vertical',\n defaultSelectedKeys = [],\n selectedKeys: _selectedKeys,\n className,\n classNames,\n styles,\n offset,\n inlineOffset,\n onClick,\n onSelect: _onSelect,\n ...props\n}: MenuProps) => {\n const controlled = _selectedKeys !== undefined;\n const [uncontrolledSelectedKeys, setUncontrolledSelectedKeys] = useState<\n React.Key[]\n >(defaultSelectedKeys ?? []);\n\n const selectedKeys = controlled\n ? (_selectedKeys as React.Key[])\n : uncontrolledSelectedKeys;\n\n const selectedKeysSet = useMemo(\n () => new Set<React.Key>(selectedKeys ?? []),\n [selectedKeys],\n );\n\n const selectionMap = useMemo(\n () => buildSelectionMap(items ?? [], selectedKeysSet),\n [items, selectedKeysSet],\n );\n\n const onSelect = (params: {\n domEvent: React.MouseEvent;\n key: React.Key;\n keyPath: React.Key[];\n item: MenuItem;\n }) => {\n if (!controlled) {\n setUncontrolledSelectedKeys([params.key]);\n }\n _onSelect?.(params);\n };\n\n return (\n <ul\n role=\"menu\"\n className={cn(\n MENU_CLASSNAMES,\n mode === 'horizontal' ? 'flex' : 'inline-block',\n className,\n )}\n {...props}\n >\n {items?.map(item => (\n <Item\n root\n {...item}\n key={item.key}\n itemKey={item.key}\n keyPath={[item.key]}\n selectedKeys={selectedKeys}\n selectionMap={selectionMap}\n mode={mode}\n classNames={classNames}\n styles={styles}\n offset={offset}\n inlineOffset={inlineOffset}\n onClick={onClick}\n onSelect={onSelect}\n />\n ))}\n </ul>\n );\n};\n\nexport default Menu;\n"],"mappings":";;;;;;;;AAuDA,MAAa,kBAAkB;CAC7B;CACA;CACA;CACA;CAED;AAID,SAAgB,kBACd,OACA,iBACc;CACd,MAAM,sBAAM,IAAI,KAAyB;CAEzC,MAAM,OAAO,SAA4B;EACvC,MAAM,OAAO,gBAAgB,IAAI,KAAK,IAAI;EAC1C,MAAM,mBAAmB,KAAK,UAAU,MAAK,UAAS,IAAI,MAAM,CAAC,IAAI;EACrE,MAAM,aAAa,QAAQ;AAC3B,MAAI,IAAI,KAAK,KAAK,WAAW;AAC7B,SAAO;;AAGT,OAAM,QAAQ,IAAI;AAClB,QAAO;;AAGT,SAAgB,QACd,MACA,YACS;AACT,KAAI,WAAW,IAAI,KAAK,IAAI,CAC1B,QAAO;AAGT,KAAI,KAAK,YAAY,MAAM,QAAQ,KAAK,SAAS,EAC/C;OAAK,MAAM,SAAS,KAAK,SACvB,KAAI,QAAQ,OAAO,WAAW,CAC5B,QAAO;;AAKb,QAAO;;AAGT,MAAM,QAAQ,EACZ,OACA,OAAO,YACP,sBAAsB,EAAE,EACxB,cAAc,eACd,WACA,YACA,QACA,QACA,cACA,SACA,UAAU,WACV,GAAG,YACY;CACf,MAAM,aAAa,kBAAkB;CACrC,MAAM,CAAC,0BAA0B,+BAA+B,SAE9D,uBAAuB,EAAE,CAAC;CAE5B,MAAM,eAAe,aAChB,gBACD;CAEJ,MAAM,kBAAkB,cAChB,IAAI,IAAe,gBAAgB,EAAE,CAAC,EAC5C,CAAC,aAAa,CACf;CAED,MAAM,eAAe,cACb,kBAAkB,SAAS,EAAE,EAAE,gBAAgB,EACrD,CAAC,OAAO,gBAAgB,CACzB;CAED,MAAM,YAAY,WAKZ;AACJ,MAAI,CAAC,WACH,6BAA4B,CAAC,OAAO,IAAI,CAAC;AAE3C,cAAY,OAAO;;AAGrB,QACE,oBAAC;EACC,MAAK;EACL,WAAW,GACT,iBACA,SAAS,eAAe,SAAS,gBACjC,UACD;EACD,GAAI;YAEH,OAAO,KAAI,SACV,8BAAC;GACC;GACA,GAAI;GACJ,KAAK,KAAK;GACV,SAAS,KAAK;GACd,SAAS,CAAC,KAAK,IAAI;GACL;GACA;GACR;GACM;GACJ;GACA;GACM;GACL;GACC;IACV,CACF;GACC"}
@@ -1,2 +1,43 @@
1
- import { a as Reveals, i as Props, n as DELAY, o as Item, r as DURATION, s as ItemProps, t as CASCADE } from "./index-BcxCfsJl.mjs";
2
- export { CASCADE, DELAY, DURATION, Item, ItemProps, Props as RevealsProps, Reveals as default };
1
+ import { Item, ItemProps } from "./components/molecules/Reveals/Item/index.mjs";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/components/molecules/Reveals/index.d.ts
5
+ interface Props extends React.ComponentPropsWithoutRef<'div'>, ItemProps {
6
+ cascade?: number;
7
+ classNames?: {
8
+ root?: string;
9
+ item?: string;
10
+ };
11
+ once?: boolean;
12
+ items?: ItemProps[];
13
+ }
14
+ declare const DURATION = 0.6;
15
+ declare const DELAY = 0;
16
+ declare const CASCADE = 0.1;
17
+ declare const Reveals: {
18
+ ({
19
+ children,
20
+ className,
21
+ classNames,
22
+ items,
23
+ cascade,
24
+ duration,
25
+ delay,
26
+ ...props
27
+ }: Props): react_jsx_runtime0.JSX.Element;
28
+ Item: ({
29
+ effect,
30
+ children,
31
+ once,
32
+ viewport,
33
+ variants,
34
+ duration,
35
+ delay,
36
+ transition,
37
+ className,
38
+ ...props
39
+ }: ItemProps) => react_jsx_runtime0.JSX.Element;
40
+ };
41
+ //#endregion
42
+ export { CASCADE, DELAY, DURATION, Item, type ItemProps, type Props as RevealsProps, Reveals as default };
43
+ //# sourceMappingURL=Reveals.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Reveals.d.mts","names":[],"sources":["../src/components/molecules/Reveals/index.tsx"],"mappings":";;;;UAMU,KAAA,SAAc,KAAA,CAAM,wBAAA,SAAiC,SAAA;EAC7D,OAAA;EACA,UAAA;IACE,IAAA;IACA,IAAA;EAAA;EAEF,IAAA;EACA,KAAA,GAAQ,SAAA;AAAA;AAAA,cAGJ,QAAA;AAAA,cACA,KAAA;AAAA,cACA,OAAA;AAAA,cAEA,OAAA;EAAA;;;;;;;;;KASH,KAAA,GAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}
package/dist/Reveals.mjs CHANGED
@@ -1,4 +1,29 @@
1
- import "./utils-1s_37TSX.mjs";
2
- import { a as Item_default, i as Reveals_default, n as DELAY, r as DURATION, t as CASCADE } from "./Reveals-Cqo3i2hh.mjs";
1
+ import { cn } from "./utils.mjs";
2
+ import Item from "./components/molecules/Reveals/Item/index.mjs";
3
+ import { Children } from "react";
4
+ import { jsx } from "react/jsx-runtime";
3
5
 
4
- export { CASCADE, DELAY, DURATION, Item_default as Item, Reveals_default as default };
6
+ //#region src/components/molecules/Reveals/index.tsx
7
+ const DURATION = .6;
8
+ const DELAY = 0;
9
+ const CASCADE = .1;
10
+ const Reveals = ({ children, className, classNames, items = [], cascade = CASCADE, duration = DURATION, delay = DELAY, ...props }) => {
11
+ const renderItems = (items) => items.map((item, index) => /* @__PURE__ */ jsx(Item, {
12
+ duration,
13
+ delay: delay + cascade * index,
14
+ className: cn(item.className, classNames?.item),
15
+ ...props,
16
+ ...item,
17
+ children: item.children
18
+ }, index));
19
+ return /* @__PURE__ */ jsx("div", {
20
+ className: cn("flex gap-5", className, classNames?.root),
21
+ ...props,
22
+ children: renderItems(children ? Children.toArray(children).map((child) => ({ children: child })) : items)
23
+ });
24
+ };
25
+ Reveals.Item = Item;
26
+
27
+ //#endregion
28
+ export { CASCADE, DELAY, DURATION, Item, Reveals as default };
29
+ //# sourceMappingURL=Reveals.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Reveals.mjs","names":[],"sources":["../src/components/molecules/Reveals/index.tsx"],"sourcesContent":["import { Children } from 'react';\n\nimport { cn } from '@repo/ui/utils';\n\nimport Item, { type ItemProps } from './Item';\n\ninterface Props extends React.ComponentPropsWithoutRef<'div'>, ItemProps {\n cascade?: number;\n classNames?: {\n root?: string;\n item?: string;\n };\n once?: boolean;\n items?: ItemProps[];\n}\n\nconst DURATION = 0.6;\nconst DELAY = 0;\nconst CASCADE = 0.1;\n\nconst Reveals = ({\n children,\n className,\n classNames,\n items = [],\n cascade = CASCADE,\n duration = DURATION,\n delay = DELAY,\n ...props\n}: Props) => {\n const renderItems = (items: ItemProps[]) =>\n items.map((item, index) => (\n <Item\n key={index}\n duration={duration}\n delay={delay + cascade * index}\n className={cn(\n item.className,\n classNames?.item,\n //\n )}\n {...props}\n {...item}\n //\n >\n {item.children}\n </Item>\n ));\n\n return (\n <div\n className={cn(\n 'flex gap-5',\n className,\n classNames?.root,\n //\n )}\n {...props}\n >\n {renderItems(\n children\n ? Children.toArray(children).map(child => ({\n children: child,\n }))\n : items,\n )}\n </div>\n );\n};\n\nReveals.Item = Item;\n\nexport {\n Item,\n type ItemProps,\n type Props as RevealsProps,\n DURATION,\n DELAY,\n CASCADE,\n};\n\nexport default Reveals;\n"],"mappings":";;;;;;AAgBA,MAAM,WAAW;AACjB,MAAM,QAAQ;AACd,MAAM,UAAU;AAEhB,MAAM,WAAW,EACf,UACA,WACA,YACA,QAAQ,EAAE,EACV,UAAU,SACV,WAAW,UACX,QAAQ,OACR,GAAG,YACQ;CACX,MAAM,eAAe,UACnB,MAAM,KAAK,MAAM,UACf,oBAAC;EAEW;EACV,OAAO,QAAQ,UAAU;EACzB,WAAW,GACT,KAAK,WACL,YAAY,KAEb;EACD,GAAI;EACJ,GAAI;YAGH,KAAK;IAZD,MAaA,CACP;AAEJ,QACE,oBAAC;EACC,WAAW,GACT,cACA,WACA,YAAY,KAEb;EACD,GAAI;YAEH,YACC,WACI,SAAS,QAAQ,SAAS,CAAC,KAAI,WAAU,EACvC,UAAU,OACX,EAAE,GACH,MACL;GACG;;AAIV,QAAQ,OAAO"}
@@ -1,2 +1,40 @@
1
- import { a as Paragraph, i as Text, n as Typography, o as Link, r as Title, t as Props } from "./index-vBhS7Nno.mjs";
2
- export { Link, Paragraph, Props, Text, Title, Typography as default };
1
+ import { Link, Props as Props$1 } from "./components/atoms/Typography/Link/index.mjs";
2
+ import { Paragraph, Props as Props$2 } from "./components/atoms/Typography/Paragraph/index.mjs";
3
+ import { Props as Props$3, Text } from "./components/atoms/Typography/Text/index.mjs";
4
+ import { Props as Props$4, Title } from "./components/atoms/Typography/Title/index.mjs";
5
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
6
+
7
+ //#region src/components/atoms/Typography/index.d.ts
8
+ interface Props extends React.ComponentPropsWithoutRef<'article'> {}
9
+ declare const Typography: {
10
+ ({
11
+ children,
12
+ ...props
13
+ }: Props): react_jsx_runtime0.JSX.Element;
14
+ Link: ({
15
+ children,
16
+ className,
17
+ ...props
18
+ }: Props$1) => react_jsx_runtime0.JSX.Element;
19
+ Paragraph: ({
20
+ children,
21
+ className,
22
+ ...props
23
+ }: Props$2) => react_jsx_runtime0.JSX.Element;
24
+ Text: ({
25
+ children,
26
+ underline,
27
+ strong,
28
+ className,
29
+ ...props
30
+ }: Props$3) => react_jsx_runtime0.JSX.Element;
31
+ Title: ({
32
+ children,
33
+ level,
34
+ className,
35
+ ...props
36
+ }: Props$4) => react_jsx_runtime0.JSX.Element;
37
+ };
38
+ //#endregion
39
+ export { Link, Paragraph, Props, Text, Title, Typography as default };
40
+ //# sourceMappingURL=Typography.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Typography.d.mts","names":[],"sources":["../src/components/atoms/Typography/index.tsx"],"mappings":";;;;;;;UAKiB,KAAA,SAAc,KAAA,CAAM,wBAAA;AAAA,cAE/B,UAAA;EAAA;;;KAAsC,KAAA,GAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,4 +1,21 @@
1
- import "./utils-1s_37TSX.mjs";
2
- import { a as Link_default, i as Paragraph_default, n as Title_default, r as Text_default, t as Typography_default } from "./Typography-Dznhj8uL.mjs";
1
+ import Link from "./components/atoms/Typography/Link/index.mjs";
2
+ import Paragraph from "./components/atoms/Typography/Paragraph/index.mjs";
3
+ import Text from "./components/atoms/Typography/Text/index.mjs";
4
+ import Title from "./components/atoms/Typography/Title/index.mjs";
5
+ import { jsx } from "react/jsx-runtime";
3
6
 
4
- export { Link_default as Link, Paragraph_default as Paragraph, Text_default as Text, Title_default as Title, Typography_default as default };
7
+ //#region src/components/atoms/Typography/index.tsx
8
+ const Typography = ({ children, ...props }) => {
9
+ return /* @__PURE__ */ jsx("article", {
10
+ ...props,
11
+ children
12
+ });
13
+ };
14
+ Typography.Link = Link;
15
+ Typography.Paragraph = Paragraph;
16
+ Typography.Text = Text;
17
+ Typography.Title = Title;
18
+
19
+ //#endregion
20
+ export { Link, Paragraph, Text, Title, Typography as default };
21
+ //# sourceMappingURL=Typography.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Typography.mjs","names":[],"sources":["../src/components/atoms/Typography/index.tsx"],"sourcesContent":["import Link from './Link';\nimport Paragraph from './Paragraph';\nimport Text from './Text';\nimport Title from './Title';\n\nexport interface Props extends React.ComponentPropsWithoutRef<'article'> {}\n\nconst Typography = ({ children, ...props }: Props) => {\n return <article {...props}>{children}</article>;\n};\n\nTypography.Link = Link;\nTypography.Paragraph = Paragraph;\nTypography.Text = Text;\nTypography.Title = Title;\n\nexport { Link, Paragraph, Text, Title };\n\nexport default Typography;\n"],"mappings":";;;;;;;AAOA,MAAM,cAAc,EAAE,UAAU,GAAG,YAAmB;AACpD,QAAO,oBAAC;EAAQ,GAAI;EAAQ;GAAmB;;AAGjD,WAAW,OAAO;AAClB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,WAAW,QAAQ"}
@@ -1,6 +1,6 @@
1
- //#region rolldown:runtime
1
+ //#region \0rolldown/runtime.js
2
2
  var __defProp = Object.defineProperty;
3
- var __exportAll = (all, symbols) => {
3
+ var __exportAll = (all, no_symbols) => {
4
4
  let target = {};
5
5
  for (var name in all) {
6
6
  __defProp(target, name, {
@@ -8,11 +8,11 @@ var __exportAll = (all, symbols) => {
8
8
  enumerable: true
9
9
  });
10
10
  }
11
- if (symbols) {
11
+ if (!no_symbols) {
12
12
  __defProp(target, Symbol.toStringTag, { value: "Module" });
13
13
  }
14
14
  return target;
15
15
  };
16
16
 
17
17
  //#endregion
18
- export { __exportAll as t };
18
+ export { __exportAll };
@@ -0,0 +1,36 @@
1
+ import { Props as Props$1 } from "../../../core/button.mjs";
2
+ import "../../../core.mjs";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
+
5
+ //#region src/components/atoms/Button/index.d.ts
6
+ type ButtonProps = Props$1;
7
+ type PresetColors = 'blue' | 'purple' | 'cyan' | 'green' | 'magenta' | 'pink' | 'red' | 'orange' | 'yellow' | 'volcano' | 'geekblue' | 'lime' | 'gold';
8
+ interface Props extends Omit<ButtonProps, 'size' | 'variant'> {
9
+ icon?: React.ReactNode;
10
+ block?: boolean;
11
+ danger?: boolean;
12
+ disabled?: boolean;
13
+ size?: 'small' | 'middle' | 'large';
14
+ variant?: 'solid' | 'outlined' | 'dashed' | 'filled' | 'text' | 'link';
15
+ color?: PresetColors | 'default' | 'primary' | 'danger';
16
+ loading?: boolean | {
17
+ icon: React.ReactNode;
18
+ };
19
+ }
20
+ declare const Button: ({
21
+ icon,
22
+ className,
23
+ variant,
24
+ size,
25
+ color,
26
+ block,
27
+ disabled,
28
+ loading,
29
+ danger,
30
+ children,
31
+ onMouseDown,
32
+ ...props
33
+ }: Props) => react_jsx_runtime0.JSX.Element;
34
+ //#endregion
35
+ export { Button, Props };
36
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../src/components/atoms/Button/index.tsx"],"mappings":";;;;;KAQK,WAAA,GAAc,OAAA;AAAA,KAEd,YAAA;AAAA,UAeY,KAAA,SAAc,IAAA,CAAK,WAAA;EAClC,IAAA,GAAO,KAAA,CAAM,SAAA;EACb,KAAA;EACA,MAAA;EACA,QAAA;EACA,IAAA;EACA,OAAA;EACA,KAAA,GAAQ,YAAA;EACR,OAAA;IAAsB,IAAA,EAAM,KAAA,CAAM,SAAA;EAAA;AAAA;AAAA,cAoC9B,MAAA;EAAU,IAAA;EAAA,SAAA;EAAA,OAAA;EAAA,IAAA;EAAA,KAAA;EAAA,KAAA;EAAA,QAAA;EAAA,OAAA;EAAA,MAAA;EAAA,QAAA;EAAA,WAAA;EAAA,GAAA;AAAA,GAab,KAAA,KAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,56 @@
1
+ 'use client';
2
+
3
+ import { cn } from "../../../utils.mjs";
4
+ import { Button as Button$1 } from "../../../core/button.mjs";
5
+ import "../../../core.mjs";
6
+ import { LoaderCircle } from "lucide-react";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+
9
+ //#region src/components/atoms/Button/index.tsx
10
+ const Core = Button$1;
11
+ const variantClasses = {
12
+ solid: "",
13
+ outlined: cn("border border-[rgb(var(--btn-border)/0.5)]", "bg-background text-foreground", "hover:bg-accent"),
14
+ dashed: cn("border border-dashed border-[rgb(var(--btn-border)/0.5)]", "bg-background text-foreground", "hover:bg-accent"),
15
+ filled: cn("bg-muted text-foreground", "hover:bg-muted/80"),
16
+ text: cn("bg-transparent text-foreground", "hover:bg-accent"),
17
+ link: cn("bg-transparent text-primary", "underline-offset-4 hover:underline", "hover:bg-primary/10")
18
+ };
19
+ const sizesClasses = {
20
+ small: "h-6 px-3 text-sm",
21
+ middle: "h-8 px-4 text-base",
22
+ large: "h-10 px-5 text-lg"
23
+ };
24
+ const iconSizes = {
25
+ small: "size-6",
26
+ middle: "size-8",
27
+ large: "size-10"
28
+ };
29
+ const Button = ({ icon, className, variant = "solid", size = "middle", color = "default", block = false, disabled, loading, danger, children, onMouseDown, ...props }) => {
30
+ const iconOnly = icon && !children;
31
+ const computedColor = danger ? "danger" : color;
32
+ const colored = computedColor && computedColor !== "default";
33
+ const displayIcon = loading ? typeof loading === "object" ? loading.icon : /* @__PURE__ */ jsx(LoaderCircle, { className: "animate-spin" }) : icon;
34
+ return /* @__PURE__ */ jsxs(Core, {
35
+ disabled,
36
+ variant: "default",
37
+ "data-color": computedColor,
38
+ className: cn("inline-flex items-center justify-center gap-x-2", "rounded-lg", "cursor-pointer", "h-auto py-0", "transition-all", variantClasses[variant || "solid"], sizesClasses[size || "middle"], iconOnly && iconSizes[size || "middle"], block && "w-full", colored && (variant === "solid" ? [
39
+ "bg-(--btn-bg)",
40
+ "hover:bg-(--btn-bg-hover)",
41
+ "active:bg-(--btn-bg-active)",
42
+ "text-(--btn-fg)",
43
+ "border-(--btn-border)"
44
+ ] : ["text-(--btn-bg)", "border-[rgb(var(--btn-border)/0.5)]"]), className),
45
+ onMouseDown: (e) => {
46
+ e.preventDefault();
47
+ onMouseDown?.(e);
48
+ },
49
+ ...props,
50
+ children: [displayIcon, children]
51
+ });
52
+ };
53
+
54
+ //#endregion
55
+ export { Button as default };
56
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["button.Button"],"sources":["../../../../src/components/atoms/Button/index.tsx"],"sourcesContent":["'use client';\n\nimport { LoaderCircle } from 'lucide-react';\n\nimport { button } from '@repo/ui/core';\nimport { cn } from '@repo/ui/utils';\n\nconst Core = button.Button;\ntype ButtonProps = button.Props;\n\ntype PresetColors =\n | 'blue'\n | 'purple'\n | 'cyan'\n | 'green'\n | 'magenta'\n | 'pink'\n | 'red'\n | 'orange'\n | 'yellow'\n | 'volcano'\n | 'geekblue'\n | 'lime'\n | 'gold';\n\nexport interface Props extends Omit<ButtonProps, 'size' | 'variant'> {\n icon?: React.ReactNode;\n block?: boolean;\n danger?: boolean;\n disabled?: boolean;\n size?: 'small' | 'middle' | 'large';\n variant?: 'solid' | 'outlined' | 'dashed' | 'filled' | 'text' | 'link';\n color?: PresetColors | 'default' | 'primary' | 'danger';\n loading?: boolean | { icon: React.ReactNode };\n}\n\nconst variantClasses: Record<string, string> = {\n solid: '',\n outlined: cn(\n 'border border-[rgb(var(--btn-border)/0.5)]',\n 'bg-background text-foreground',\n 'hover:bg-accent',\n ),\n dashed: cn(\n 'border border-dashed border-[rgb(var(--btn-border)/0.5)]',\n 'bg-background text-foreground',\n 'hover:bg-accent',\n ),\n filled: cn('bg-muted text-foreground', 'hover:bg-muted/80'),\n text: cn('bg-transparent text-foreground', 'hover:bg-accent'),\n link: cn(\n 'bg-transparent text-primary',\n 'underline-offset-4 hover:underline',\n 'hover:bg-primary/10',\n ),\n};\n\nconst sizesClasses: Record<string, string> = {\n small: 'h-6 px-3 text-sm',\n middle: 'h-8 px-4 text-base',\n large: 'h-10 px-5 text-lg',\n};\n\nconst iconSizes: Record<string, string> = {\n small: 'size-6',\n middle: 'size-8',\n large: 'size-10',\n};\n\nconst Button = ({\n icon,\n className,\n variant = 'solid',\n size = 'middle',\n color = 'default',\n block = false,\n disabled,\n loading,\n danger,\n children,\n onMouseDown,\n ...props\n}: Props) => {\n const iconOnly = icon && !children;\n const computedColor = danger ? 'danger' : color;\n const colored = computedColor && computedColor !== 'default';\n\n const displayIcon = loading ? (\n typeof loading === 'object' ? (\n loading.icon\n ) : (\n <LoaderCircle className=\"animate-spin\" />\n )\n ) : (\n icon\n );\n\n return (\n <Core\n disabled={disabled}\n variant=\"default\"\n data-color={computedColor}\n className={cn(\n 'inline-flex items-center justify-center gap-x-2',\n 'rounded-lg',\n 'cursor-pointer',\n 'h-auto py-0',\n 'transition-all',\n variantClasses[variant || 'solid'],\n sizesClasses[size || 'middle'],\n iconOnly && iconSizes[size || 'middle'],\n block && 'w-full',\n colored &&\n (variant === 'solid'\n ? [\n 'bg-(--btn-bg)',\n 'hover:bg-(--btn-bg-hover)',\n 'active:bg-(--btn-bg-active)',\n 'text-(--btn-fg)',\n 'border-(--btn-border)',\n ]\n : [\n 'text-(--btn-bg)',\n 'border-[rgb(var(--btn-border)/0.5)]',\n //\n ]),\n className,\n //\n )}\n onMouseDown={e => {\n e.preventDefault();\n onMouseDown?.(e);\n }}\n {...props}\n >\n {displayIcon}\n {children}\n </Core>\n );\n};\n\nexport default Button;\n"],"mappings":";;;;;;;;;AAOA,MAAM,OAAOA;AA6Bb,MAAM,iBAAyC;CAC7C,OAAO;CACP,UAAU,GACR,8CACA,iCACA,kBACD;CACD,QAAQ,GACN,4DACA,iCACA,kBACD;CACD,QAAQ,GAAG,4BAA4B,oBAAoB;CAC3D,MAAM,GAAG,kCAAkC,kBAAkB;CAC7D,MAAM,GACJ,+BACA,sCACA,sBACD;CACF;AAED,MAAM,eAAuC;CAC3C,OAAO;CACP,QAAQ;CACR,OAAO;CACR;AAED,MAAM,YAAoC;CACxC,OAAO;CACP,QAAQ;CACR,OAAO;CACR;AAED,MAAM,UAAU,EACd,MACA,WACA,UAAU,SACV,OAAO,UACP,QAAQ,WACR,QAAQ,OACR,UACA,SACA,QACA,UACA,aACA,GAAG,YACQ;CACX,MAAM,WAAW,QAAQ,CAAC;CAC1B,MAAM,gBAAgB,SAAS,WAAW;CAC1C,MAAM,UAAU,iBAAiB,kBAAkB;CAEnD,MAAM,cAAc,UAClB,OAAO,YAAY,WACjB,QAAQ,OAER,oBAAC,gBAAa,WAAU,iBAAiB,GAG3C;AAGF,QACE,qBAAC;EACW;EACV,SAAQ;EACR,cAAY;EACZ,WAAW,GACT,mDACA,cACA,kBACA,eACA,kBACA,eAAe,WAAW,UAC1B,aAAa,QAAQ,WACrB,YAAY,UAAU,QAAQ,WAC9B,SAAS,UACT,YACG,YAAY,UACT;GACE;GACA;GACA;GACA;GACA;GACD,GACD,CACE,mBACA,sCAED,GACP,UAED;EACD,cAAa,MAAK;AAChB,KAAE,gBAAgB;AAClB,iBAAc,EAAE;;EAElB,GAAI;aAEH,aACA;GACI"}
@@ -0,0 +1,21 @@
1
+ import { OptionValue } from "../index.mjs";
2
+ import "react/jsx-runtime";
3
+
4
+ //#region src/components/atoms/Checkbox/Group/index.d.ts
5
+ type Option = {
6
+ label: string;
7
+ value: OptionValue;
8
+ };
9
+ type Options = string[] | number[] | boolean[] | Option[];
10
+ interface Props extends Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange' | 'defaultValue' | 'value'> {
11
+ options?: Options;
12
+ orientation?: 'vertical' | 'horizontal';
13
+ placement?: 'left' | 'right';
14
+ classNames?: Record<string, string>;
15
+ defaultValue?: OptionValue[];
16
+ value?: OptionValue[];
17
+ onChange?: (values: OptionValue[]) => void;
18
+ }
19
+ //#endregion
20
+ export { Props };
21
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../../src/components/atoms/Checkbox/Group/index.tsx"],"mappings":";;;;KAMK,MAAA;EACH,KAAA;EACA,KAAA,EAAO,WAAA;AAAA;AAAA,KAGJ,OAAA,qCAA4C,MAAA;AAAA,UAEhC,KAAA,SAAc,IAAA,CAC7B,KAAA,CAAM,wBAAA;EAGN,OAAA,GAAU,OAAA;EACV,WAAA;EACA,SAAA;EACA,UAAA,GAAa,MAAA;EACb,YAAA,GAAe,WAAA;EACf,KAAA,GAAQ,WAAA;EACR,QAAA,IAAY,MAAA,EAAQ,WAAA;AAAA"}
@@ -0,0 +1,41 @@
1
+ import { cn } from "../../../../utils.mjs";
2
+ import Checkbox from "../index.mjs";
3
+ import { useState } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+
6
+ //#region src/components/atoms/Checkbox/Group/index.tsx
7
+ const Group = ({ orientation = "vertical", placement = "left", className, classNames = {}, options: _options = [], defaultValue, value: _value, onChange: _onChange = () => {} }) => {
8
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue || []);
9
+ const controlled = _value !== void 0;
10
+ const value = controlled ? _value : uncontrolledValue;
11
+ const options = _options.map((item) => typeof item === "object" ? item : {
12
+ label: `${item}`,
13
+ value: item
14
+ });
15
+ const onChange = (checked, optionValue) => {
16
+ const nextValue = checked ? [...value, optionValue] : value.filter((v) => v !== optionValue);
17
+ if (!controlled) setUncontrolledValue(nextValue);
18
+ _onChange(nextValue);
19
+ };
20
+ return /* @__PURE__ */ jsx("ul", {
21
+ className: cn(orientation === "vertical" ? "space-y-2" : "flex gap-2", className),
22
+ children: options.map((item) => {
23
+ const checked = value.includes(item.value);
24
+ return /* @__PURE__ */ jsx("li", {
25
+ className: cn("flex", classNames?.wrapper),
26
+ children: /* @__PURE__ */ jsx(Checkbox, {
27
+ placement,
28
+ className: cn(classNames?.item),
29
+ value: item.value,
30
+ checked,
31
+ onChange: (checked) => onChange(checked, item.value),
32
+ children: item.label
33
+ })
34
+ }, String(item.value));
35
+ })
36
+ });
37
+ };
38
+
39
+ //#endregion
40
+ export { Group as default };
41
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../../../src/components/atoms/Checkbox/Group/index.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { cn } from '@repo/ui/utils';\n\nimport Checkbox, { type OptionValue } from '..';\n\ntype Option = {\n label: string;\n value: OptionValue;\n};\n\ntype Options = string[] | number[] | boolean[] | Option[];\n\nexport interface Props extends Omit<\n React.ComponentPropsWithoutRef<'div'>,\n 'onChange' | 'defaultValue' | 'value'\n> {\n options?: Options;\n orientation?: 'vertical' | 'horizontal';\n placement?: 'left' | 'right';\n classNames?: Record<string, string>;\n defaultValue?: OptionValue[];\n value?: OptionValue[];\n onChange?: (values: OptionValue[]) => void;\n}\n\nconst Group = ({\n orientation = 'vertical',\n placement = 'left',\n className,\n classNames = {},\n options: _options = [],\n defaultValue,\n value: _value,\n onChange: _onChange = () => {},\n}: Props) => {\n const [uncontrolledValue, setUncontrolledValue] = useState<OptionValue[]>(\n defaultValue || [],\n );\n\n const controlled = _value !== undefined;\n const value = controlled ? _value : uncontrolledValue;\n\n const options: Option[] = _options.map(item =>\n typeof item === 'object'\n ? item\n : {\n label: `${item}`,\n value: item,\n },\n );\n\n const onChange = (checked: boolean, optionValue: OptionValue) => {\n const nextValue = checked\n ? [...value, optionValue]\n : value.filter(v => v !== optionValue);\n\n if (!controlled) {\n setUncontrolledValue(nextValue);\n }\n _onChange(nextValue);\n };\n\n return (\n <ul\n className={cn(\n orientation === 'vertical' ? 'space-y-2' : 'flex gap-2',\n className,\n )}\n >\n {options.map((item: Option) => {\n const checked = value.includes(item.value);\n\n return (\n <li\n key={String(item.value)}\n className={cn('flex', classNames?.wrapper)}\n >\n <Checkbox\n placement={placement}\n className={cn(classNames?.item)}\n value={item.value}\n checked={checked}\n onChange={checked => onChange(checked, item.value)}\n >\n {item.label}\n </Checkbox>\n </li>\n );\n })}\n </ul>\n );\n};\n\nexport default Group;\n"],"mappings":";;;;;;AA0BA,MAAM,SAAS,EACb,cAAc,YACd,YAAY,QACZ,WACA,aAAa,EAAE,EACf,SAAS,WAAW,EAAE,EACtB,cACA,OAAO,QACP,UAAU,kBAAkB,SACjB;CACX,MAAM,CAAC,mBAAmB,wBAAwB,SAChD,gBAAgB,EAAE,CACnB;CAED,MAAM,aAAa,WAAW;CAC9B,MAAM,QAAQ,aAAa,SAAS;CAEpC,MAAM,UAAoB,SAAS,KAAI,SACrC,OAAO,SAAS,WACZ,OACA;EACE,OAAO,GAAG;EACV,OAAO;EACR,CACN;CAED,MAAM,YAAY,SAAkB,gBAA6B;EAC/D,MAAM,YAAY,UACd,CAAC,GAAG,OAAO,YAAY,GACvB,MAAM,QAAO,MAAK,MAAM,YAAY;AAExC,MAAI,CAAC,WACH,sBAAqB,UAAU;AAEjC,YAAU,UAAU;;AAGtB,QACE,oBAAC;EACC,WAAW,GACT,gBAAgB,aAAa,cAAc,cAC3C,UACD;YAEA,QAAQ,KAAK,SAAiB;GAC7B,MAAM,UAAU,MAAM,SAAS,KAAK,MAAM;AAE1C,UACE,oBAAC;IAEC,WAAW,GAAG,QAAQ,YAAY,QAAQ;cAE1C,oBAAC;KACY;KACX,WAAW,GAAG,YAAY,KAAK;KAC/B,OAAO,KAAK;KACH;KACT,WAAU,YAAW,SAAS,SAAS,KAAK,MAAM;eAEjD,KAAK;MACG;MAXN,OAAO,KAAK,MAAM,CAYpB;IAEP;GACC"}
@@ -0,0 +1,45 @@
1
+ import { Props as Props$1 } from "./Group/index.mjs";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/components/atoms/Checkbox/index.d.ts
5
+ type OptionValue = string | number | boolean;
6
+ interface Props extends Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {
7
+ placement?: 'left' | 'right';
8
+ defaultChecked?: boolean;
9
+ checked?: boolean;
10
+ value?: OptionValue;
11
+ disabled?: boolean;
12
+ icons?: {
13
+ checked: React.ReactNode;
14
+ unchecked: React.ReactNode;
15
+ };
16
+ children?: React.ReactNode;
17
+ onChange?: (checked: boolean) => void;
18
+ }
19
+ declare const Checkbox: {
20
+ ({
21
+ placement,
22
+ value,
23
+ children,
24
+ className,
25
+ icons,
26
+ disabled,
27
+ defaultChecked,
28
+ checked: _checked,
29
+ onChange: _onChange,
30
+ ...props
31
+ }: Props): react_jsx_runtime0.JSX.Element;
32
+ Group: ({
33
+ orientation,
34
+ placement,
35
+ className,
36
+ classNames,
37
+ options: _options,
38
+ defaultValue,
39
+ value: _value,
40
+ onChange: _onChange
41
+ }: Props$1) => react_jsx_runtime0.JSX.Element;
42
+ };
43
+ //#endregion
44
+ export { Checkbox, OptionValue };
45
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../src/components/atoms/Checkbox/index.tsx"],"mappings":";;;;KAcY,WAAA;AAAA,UAEK,KAAA,SAAc,IAAA,CAC7B,KAAA,CAAM,wBAAA;EAGN,SAAA;EACA,cAAA;EACA,OAAA;EACA,KAAA,GAAQ,WAAA;EACR,QAAA;EACA,KAAA;IAAU,OAAA,EAAS,KAAA,CAAM,SAAA;IAAW,SAAA,EAAW,KAAA,CAAM,SAAA;EAAA;EACrD,QAAA,GAAW,KAAA,CAAM,SAAA;EACjB,QAAA,IAAY,OAAA;AAAA;AAAA,cAGR,QAAA;EAAA;;;;;;;;;;;KAWH,KAAA,GAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}