@tokis/react 1.0.0

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 (354) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +50 -0
  3. package/dist/cjs/components/accordion/index.js +36 -0
  4. package/dist/cjs/components/alert/index.js +14 -0
  5. package/dist/cjs/components/app-bar/index.js +9 -0
  6. package/dist/cjs/components/avatar/index.js +64 -0
  7. package/dist/cjs/components/badge/index.js +6 -0
  8. package/dist/cjs/components/bottom-nav/index.js +12 -0
  9. package/dist/cjs/components/breadcrumbs/index.js +19 -0
  10. package/dist/cjs/components/button/ButtonIcon.js +9 -0
  11. package/dist/cjs/components/button/ButtonLabel.js +9 -0
  12. package/dist/cjs/components/button/ButtonRoot.js +23 -0
  13. package/dist/cjs/components/button/index.js +11 -0
  14. package/dist/cjs/components/button/useButton.js +14 -0
  15. package/dist/cjs/components/card/index.js +25 -0
  16. package/dist/cjs/components/charts/index.js +214 -0
  17. package/dist/cjs/components/checkbox/index.js +18 -0
  18. package/dist/cjs/components/chip/index.js +6 -0
  19. package/dist/cjs/components/circular-progress/index.js +28 -0
  20. package/dist/cjs/components/codeblock/CodeBlock.js +35 -0
  21. package/dist/cjs/components/codeblock/index.js +5 -0
  22. package/dist/cjs/components/command-palette/index.js +84 -0
  23. package/dist/cjs/components/confirm-dialog/index.js +10 -0
  24. package/dist/cjs/components/context-menu/index.js +82 -0
  25. package/dist/cjs/components/dialog/index.js +43 -0
  26. package/dist/cjs/components/divider/index.js +6 -0
  27. package/dist/cjs/components/drawer/index.js +37 -0
  28. package/dist/cjs/components/dropdown/index.js +104 -0
  29. package/dist/cjs/components/emptystate/index.js +9 -0
  30. package/dist/cjs/components/extended/index.js +329 -0
  31. package/dist/cjs/components/hover-card/index.js +107 -0
  32. package/dist/cjs/components/infinite-scroll/index.js +21 -0
  33. package/dist/cjs/components/input/index.js +27 -0
  34. package/dist/cjs/components/layout/index.js +34 -0
  35. package/dist/cjs/components/link/index.js +7 -0
  36. package/dist/cjs/components/list/index.js +14 -0
  37. package/dist/cjs/components/menu/index.js +120 -0
  38. package/dist/cjs/components/nav-rail/index.js +12 -0
  39. package/dist/cjs/components/pagination/index.js +46 -0
  40. package/dist/cjs/components/popover/index.js +114 -0
  41. package/dist/cjs/components/portal/index.js +10 -0
  42. package/dist/cjs/components/progress/index.js +21 -0
  43. package/dist/cjs/components/radio/index.js +60 -0
  44. package/dist/cjs/components/result/index.js +25 -0
  45. package/dist/cjs/components/search-field/index.js +30 -0
  46. package/dist/cjs/components/select/index.js +88 -0
  47. package/dist/cjs/components/skeleton/index.js +6 -0
  48. package/dist/cjs/components/slider/index.js +73 -0
  49. package/dist/cjs/components/snackbar/index.js +41 -0
  50. package/dist/cjs/components/spinner/index.js +6 -0
  51. package/dist/cjs/components/statistic/index.js +17 -0
  52. package/dist/cjs/components/stepper/index.js +24 -0
  53. package/dist/cjs/components/switch/index.js +19 -0
  54. package/dist/cjs/components/table/index.js +26 -0
  55. package/dist/cjs/components/tabs/index.js +44 -0
  56. package/dist/cjs/components/tag/index.js +6 -0
  57. package/dist/cjs/components/timeline/index.js +12 -0
  58. package/dist/cjs/components/toggle/index.js +32 -0
  59. package/dist/cjs/components/tooltip/index.js +116 -0
  60. package/dist/cjs/components/treeview/index.js +89 -0
  61. package/dist/cjs/components/typography/index.js +20 -0
  62. package/dist/cjs/components/virtual-list/index.js +25 -0
  63. package/dist/cjs/context/ConfigProvider.js +22 -0
  64. package/dist/cjs/context/ThemeContext.js +25 -0
  65. package/dist/cjs/hooks/useControllableState.js +31 -0
  66. package/dist/cjs/hooks/useDialog.js +35 -0
  67. package/dist/cjs/hooks/useId.js +13 -0
  68. package/dist/cjs/hooks/useMenu.js +64 -0
  69. package/dist/cjs/hooks/usePopover.js +32 -0
  70. package/dist/cjs/hooks/useTabs.js +51 -0
  71. package/dist/cjs/index.js +102 -0
  72. package/dist/cjs/package.json +3 -0
  73. package/dist/cjs/utils/cn.js +10 -0
  74. package/dist/components/accordion/index.d.ts +19 -0
  75. package/dist/components/accordion/index.d.ts.map +1 -0
  76. package/dist/components/accordion/index.js +34 -0
  77. package/dist/components/accordion/index.js.map +1 -0
  78. package/dist/components/alert/index.d.ts +11 -0
  79. package/dist/components/alert/index.d.ts.map +1 -0
  80. package/dist/components/alert/index.js +12 -0
  81. package/dist/components/alert/index.js.map +1 -0
  82. package/dist/components/app-bar/index.d.ts +17 -0
  83. package/dist/components/app-bar/index.d.ts.map +1 -0
  84. package/dist/components/app-bar/index.js +7 -0
  85. package/dist/components/app-bar/index.js.map +1 -0
  86. package/dist/components/avatar/index.d.ts +33 -0
  87. package/dist/components/avatar/index.d.ts.map +1 -0
  88. package/dist/components/avatar/index.js +28 -0
  89. package/dist/components/avatar/index.js.map +1 -0
  90. package/dist/components/badge/index.d.ts +3 -0
  91. package/dist/components/badge/index.d.ts.map +1 -0
  92. package/dist/components/badge/index.js +3 -0
  93. package/dist/components/badge/index.js.map +1 -0
  94. package/dist/components/bottom-nav/index.d.ts +18 -0
  95. package/dist/components/bottom-nav/index.d.ts.map +1 -0
  96. package/dist/components/bottom-nav/index.js +10 -0
  97. package/dist/components/bottom-nav/index.js.map +1 -0
  98. package/dist/components/breadcrumbs/index.d.ts +19 -0
  99. package/dist/components/breadcrumbs/index.d.ts.map +1 -0
  100. package/dist/components/breadcrumbs/index.js +17 -0
  101. package/dist/components/breadcrumbs/index.js.map +1 -0
  102. package/dist/components/button/ButtonIcon.d.ts +8 -0
  103. package/dist/components/button/ButtonIcon.d.ts.map +1 -0
  104. package/dist/components/button/ButtonIcon.js +6 -0
  105. package/dist/components/button/ButtonIcon.js.map +1 -0
  106. package/dist/components/button/ButtonLabel.d.ts +6 -0
  107. package/dist/components/button/ButtonLabel.d.ts.map +1 -0
  108. package/dist/components/button/ButtonLabel.js +6 -0
  109. package/dist/components/button/ButtonLabel.js.map +1 -0
  110. package/dist/components/button/ButtonRoot.d.ts +15 -0
  111. package/dist/components/button/ButtonRoot.d.ts.map +1 -0
  112. package/dist/components/button/ButtonRoot.js +21 -0
  113. package/dist/components/button/ButtonRoot.js.map +1 -0
  114. package/dist/components/button/index.d.ts +9 -0
  115. package/dist/components/button/index.d.ts.map +1 -0
  116. package/dist/components/button/index.js +5 -0
  117. package/dist/components/button/index.js.map +1 -0
  118. package/dist/components/button/useButton.d.ts +16 -0
  119. package/dist/components/button/useButton.d.ts.map +1 -0
  120. package/dist/components/button/useButton.js +12 -0
  121. package/dist/components/button/useButton.js.map +1 -0
  122. package/dist/components/card/index.d.ts +17 -0
  123. package/dist/components/card/index.d.ts.map +1 -0
  124. package/dist/components/card/index.js +23 -0
  125. package/dist/components/card/index.js.map +1 -0
  126. package/dist/components/charts/index.d.ts +60 -0
  127. package/dist/components/charts/index.d.ts.map +1 -0
  128. package/dist/components/charts/index.js +209 -0
  129. package/dist/components/charts/index.js.map +1 -0
  130. package/dist/components/checkbox/index.d.ts +17 -0
  131. package/dist/components/checkbox/index.d.ts.map +1 -0
  132. package/dist/components/checkbox/index.js +16 -0
  133. package/dist/components/checkbox/index.js.map +1 -0
  134. package/dist/components/chip/index.d.ts +3 -0
  135. package/dist/components/chip/index.d.ts.map +1 -0
  136. package/dist/components/chip/index.js +3 -0
  137. package/dist/components/chip/index.js.map +1 -0
  138. package/dist/components/circular-progress/index.d.ts +15 -0
  139. package/dist/components/circular-progress/index.d.ts.map +1 -0
  140. package/dist/components/circular-progress/index.js +26 -0
  141. package/dist/components/circular-progress/index.js.map +1 -0
  142. package/dist/components/codeblock/CodeBlock.d.ts +13 -0
  143. package/dist/components/codeblock/CodeBlock.d.ts.map +1 -0
  144. package/dist/components/codeblock/CodeBlock.js +32 -0
  145. package/dist/components/codeblock/CodeBlock.js.map +1 -0
  146. package/dist/components/codeblock/index.d.ts +3 -0
  147. package/dist/components/codeblock/index.d.ts.map +1 -0
  148. package/dist/components/codeblock/index.js +2 -0
  149. package/dist/components/codeblock/index.js.map +1 -0
  150. package/dist/components/command-palette/index.d.ts +22 -0
  151. package/dist/components/command-palette/index.d.ts.map +1 -0
  152. package/dist/components/command-palette/index.js +82 -0
  153. package/dist/components/command-palette/index.js.map +1 -0
  154. package/dist/components/confirm-dialog/index.d.ts +17 -0
  155. package/dist/components/confirm-dialog/index.d.ts.map +1 -0
  156. package/dist/components/confirm-dialog/index.js +8 -0
  157. package/dist/components/confirm-dialog/index.js.map +1 -0
  158. package/dist/components/context-menu/index.d.ts +19 -0
  159. package/dist/components/context-menu/index.d.ts.map +1 -0
  160. package/dist/components/context-menu/index.js +47 -0
  161. package/dist/components/context-menu/index.js.map +1 -0
  162. package/dist/components/dialog/index.d.ts +16 -0
  163. package/dist/components/dialog/index.d.ts.map +1 -0
  164. package/dist/components/dialog/index.js +41 -0
  165. package/dist/components/dialog/index.js.map +1 -0
  166. package/dist/components/divider/index.d.ts +3 -0
  167. package/dist/components/divider/index.d.ts.map +1 -0
  168. package/dist/components/divider/index.js +3 -0
  169. package/dist/components/divider/index.js.map +1 -0
  170. package/dist/components/drawer/index.d.ts +16 -0
  171. package/dist/components/drawer/index.d.ts.map +1 -0
  172. package/dist/components/drawer/index.js +35 -0
  173. package/dist/components/drawer/index.js.map +1 -0
  174. package/dist/components/dropdown/index.d.ts +16 -0
  175. package/dist/components/dropdown/index.d.ts.map +1 -0
  176. package/dist/components/dropdown/index.js +69 -0
  177. package/dist/components/dropdown/index.js.map +1 -0
  178. package/dist/components/emptystate/index.d.ts +13 -0
  179. package/dist/components/emptystate/index.d.ts.map +1 -0
  180. package/dist/components/emptystate/index.js +7 -0
  181. package/dist/components/emptystate/index.js.map +1 -0
  182. package/dist/components/extended/index.d.ts +163 -0
  183. package/dist/components/extended/index.d.ts.map +1 -0
  184. package/dist/components/extended/index.js +267 -0
  185. package/dist/components/extended/index.js.map +1 -0
  186. package/dist/components/hover-card/index.d.ts +14 -0
  187. package/dist/components/hover-card/index.d.ts.map +1 -0
  188. package/dist/components/hover-card/index.js +72 -0
  189. package/dist/components/hover-card/index.js.map +1 -0
  190. package/dist/components/infinite-scroll/index.d.ts +16 -0
  191. package/dist/components/infinite-scroll/index.d.ts.map +1 -0
  192. package/dist/components/infinite-scroll/index.js +19 -0
  193. package/dist/components/infinite-scroll/index.js.map +1 -0
  194. package/dist/components/input/index.d.ts +19 -0
  195. package/dist/components/input/index.d.ts.map +1 -0
  196. package/dist/components/input/index.js +25 -0
  197. package/dist/components/input/index.js.map +1 -0
  198. package/dist/components/layout/index.d.ts +39 -0
  199. package/dist/components/layout/index.d.ts.map +1 -0
  200. package/dist/components/layout/index.js +32 -0
  201. package/dist/components/layout/index.js.map +1 -0
  202. package/dist/components/link/index.d.ts +3 -0
  203. package/dist/components/link/index.d.ts.map +1 -0
  204. package/dist/components/link/index.js +3 -0
  205. package/dist/components/link/index.js.map +1 -0
  206. package/dist/components/list/index.d.ts +13 -0
  207. package/dist/components/list/index.d.ts.map +1 -0
  208. package/dist/components/list/index.js +12 -0
  209. package/dist/components/list/index.js.map +1 -0
  210. package/dist/components/menu/index.d.ts +19 -0
  211. package/dist/components/menu/index.d.ts.map +1 -0
  212. package/dist/components/menu/index.js +85 -0
  213. package/dist/components/menu/index.js.map +1 -0
  214. package/dist/components/nav-rail/index.d.ts +20 -0
  215. package/dist/components/nav-rail/index.d.ts.map +1 -0
  216. package/dist/components/nav-rail/index.js +10 -0
  217. package/dist/components/nav-rail/index.js.map +1 -0
  218. package/dist/components/pagination/index.d.ts +9 -0
  219. package/dist/components/pagination/index.d.ts.map +1 -0
  220. package/dist/components/pagination/index.js +44 -0
  221. package/dist/components/pagination/index.js.map +1 -0
  222. package/dist/components/popover/index.d.ts +16 -0
  223. package/dist/components/popover/index.d.ts.map +1 -0
  224. package/dist/components/popover/index.js +79 -0
  225. package/dist/components/popover/index.js.map +1 -0
  226. package/dist/components/portal/index.d.ts +7 -0
  227. package/dist/components/portal/index.d.ts.map +1 -0
  228. package/dist/components/portal/index.js +8 -0
  229. package/dist/components/portal/index.js.map +1 -0
  230. package/dist/components/progress/index.d.ts +25 -0
  231. package/dist/components/progress/index.d.ts.map +1 -0
  232. package/dist/components/progress/index.js +19 -0
  233. package/dist/components/progress/index.js.map +1 -0
  234. package/dist/components/radio/index.d.ts +25 -0
  235. package/dist/components/radio/index.d.ts.map +1 -0
  236. package/dist/components/radio/index.js +24 -0
  237. package/dist/components/radio/index.js.map +1 -0
  238. package/dist/components/result/index.d.ts +14 -0
  239. package/dist/components/result/index.d.ts.map +1 -0
  240. package/dist/components/result/index.js +23 -0
  241. package/dist/components/result/index.js.map +1 -0
  242. package/dist/components/search-field/index.d.ts +15 -0
  243. package/dist/components/search-field/index.d.ts.map +1 -0
  244. package/dist/components/search-field/index.js +28 -0
  245. package/dist/components/search-field/index.js.map +1 -0
  246. package/dist/components/select/index.d.ts +23 -0
  247. package/dist/components/select/index.d.ts.map +1 -0
  248. package/dist/components/select/index.js +86 -0
  249. package/dist/components/select/index.js.map +1 -0
  250. package/dist/components/skeleton/index.d.ts +3 -0
  251. package/dist/components/skeleton/index.d.ts.map +1 -0
  252. package/dist/components/skeleton/index.js +3 -0
  253. package/dist/components/skeleton/index.js.map +1 -0
  254. package/dist/components/slider/index.d.ts +18 -0
  255. package/dist/components/slider/index.d.ts.map +1 -0
  256. package/dist/components/slider/index.js +71 -0
  257. package/dist/components/slider/index.js.map +1 -0
  258. package/dist/components/snackbar/index.d.ts +27 -0
  259. package/dist/components/snackbar/index.d.ts.map +1 -0
  260. package/dist/components/snackbar/index.js +38 -0
  261. package/dist/components/snackbar/index.js.map +1 -0
  262. package/dist/components/spinner/index.d.ts +3 -0
  263. package/dist/components/spinner/index.d.ts.map +1 -0
  264. package/dist/components/spinner/index.js +3 -0
  265. package/dist/components/spinner/index.js.map +1 -0
  266. package/dist/components/statistic/index.d.ts +13 -0
  267. package/dist/components/statistic/index.d.ts.map +1 -0
  268. package/dist/components/statistic/index.js +15 -0
  269. package/dist/components/statistic/index.js.map +1 -0
  270. package/dist/components/stepper/index.d.ts +17 -0
  271. package/dist/components/stepper/index.d.ts.map +1 -0
  272. package/dist/components/stepper/index.js +22 -0
  273. package/dist/components/stepper/index.js.map +1 -0
  274. package/dist/components/switch/index.d.ts +16 -0
  275. package/dist/components/switch/index.d.ts.map +1 -0
  276. package/dist/components/switch/index.js +17 -0
  277. package/dist/components/switch/index.js.map +1 -0
  278. package/dist/components/table/index.d.ts +17 -0
  279. package/dist/components/table/index.d.ts.map +1 -0
  280. package/dist/components/table/index.js +24 -0
  281. package/dist/components/table/index.js.map +1 -0
  282. package/dist/components/tabs/index.d.ts +19 -0
  283. package/dist/components/tabs/index.d.ts.map +1 -0
  284. package/dist/components/tabs/index.js +42 -0
  285. package/dist/components/tabs/index.js.map +1 -0
  286. package/dist/components/tag/index.d.ts +3 -0
  287. package/dist/components/tag/index.d.ts.map +1 -0
  288. package/dist/components/tag/index.js +3 -0
  289. package/dist/components/tag/index.js.map +1 -0
  290. package/dist/components/timeline/index.d.ts +16 -0
  291. package/dist/components/timeline/index.d.ts.map +1 -0
  292. package/dist/components/timeline/index.js +10 -0
  293. package/dist/components/timeline/index.js.map +1 -0
  294. package/dist/components/toggle/index.d.ts +32 -0
  295. package/dist/components/toggle/index.d.ts.map +1 -0
  296. package/dist/components/toggle/index.js +29 -0
  297. package/dist/components/toggle/index.js.map +1 -0
  298. package/dist/components/tooltip/index.d.ts +11 -0
  299. package/dist/components/tooltip/index.d.ts.map +1 -0
  300. package/dist/components/tooltip/index.js +81 -0
  301. package/dist/components/tooltip/index.js.map +1 -0
  302. package/dist/components/treeview/index.d.ts +19 -0
  303. package/dist/components/treeview/index.d.ts.map +1 -0
  304. package/dist/components/treeview/index.js +87 -0
  305. package/dist/components/treeview/index.js.map +1 -0
  306. package/dist/components/typography/index.d.ts +11 -0
  307. package/dist/components/typography/index.d.ts.map +1 -0
  308. package/dist/components/typography/index.js +18 -0
  309. package/dist/components/typography/index.js.map +1 -0
  310. package/dist/components/virtual-list/index.d.ts +15 -0
  311. package/dist/components/virtual-list/index.d.ts.map +1 -0
  312. package/dist/components/virtual-list/index.js +23 -0
  313. package/dist/components/virtual-list/index.js.map +1 -0
  314. package/dist/context/ConfigProvider.d.ts +12 -0
  315. package/dist/context/ConfigProvider.d.ts.map +1 -0
  316. package/dist/context/ConfigProvider.js +18 -0
  317. package/dist/context/ConfigProvider.js.map +1 -0
  318. package/dist/context/ThemeContext.d.ts +15 -0
  319. package/dist/context/ThemeContext.d.ts.map +1 -0
  320. package/dist/context/ThemeContext.js +21 -0
  321. package/dist/context/ThemeContext.js.map +1 -0
  322. package/dist/hooks/useControllableState.d.ts +10 -0
  323. package/dist/hooks/useControllableState.d.ts.map +1 -0
  324. package/dist/hooks/useControllableState.js +29 -0
  325. package/dist/hooks/useControllableState.js.map +1 -0
  326. package/dist/hooks/useDialog.d.ts +24 -0
  327. package/dist/hooks/useDialog.d.ts.map +1 -0
  328. package/dist/hooks/useDialog.js +33 -0
  329. package/dist/hooks/useDialog.js.map +1 -0
  330. package/dist/hooks/useId.d.ts +7 -0
  331. package/dist/hooks/useId.d.ts.map +1 -0
  332. package/dist/hooks/useId.js +11 -0
  333. package/dist/hooks/useId.js.map +1 -0
  334. package/dist/hooks/useMenu.d.ts +21 -0
  335. package/dist/hooks/useMenu.d.ts.map +1 -0
  336. package/dist/hooks/useMenu.js +62 -0
  337. package/dist/hooks/useMenu.js.map +1 -0
  338. package/dist/hooks/usePopover.d.ts +22 -0
  339. package/dist/hooks/usePopover.d.ts.map +1 -0
  340. package/dist/hooks/usePopover.js +30 -0
  341. package/dist/hooks/usePopover.js.map +1 -0
  342. package/dist/hooks/useTabs.d.ts +22 -0
  343. package/dist/hooks/useTabs.d.ts.map +1 -0
  344. package/dist/hooks/useTabs.js +49 -0
  345. package/dist/hooks/useTabs.js.map +1 -0
  346. package/dist/index.d.ts +65 -0
  347. package/dist/index.d.ts.map +1 -0
  348. package/dist/index.js +85 -0
  349. package/dist/index.js.map +1 -0
  350. package/dist/utils/cn.d.ts +6 -0
  351. package/dist/utils/cn.d.ts.map +1 -0
  352. package/dist/utils/cn.js +8 -0
  353. package/dist/utils/cn.js.map +1 -0
  354. package/package.json +79 -0
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { forwardRef } from 'react';
3
+ import { cn } from '../../utils/cn.js';
4
+ export const Breadcrumbs = forwardRef(({ items, separator = '/', maxItems, className, ...props }, ref) => {
5
+ const visible = maxItems && items.length > maxItems
6
+ ? [items[0], { label: '…', onClick: undefined }, ...items.slice(-(maxItems - 1))]
7
+ : items;
8
+ return (_jsx("nav", { ref: ref, "aria-label": "Breadcrumb", className: cn('tokis-breadcrumbs', className), ...props, children: _jsx("ol", { style: { display: 'flex', alignItems: 'center', flexWrap: 'wrap', listStyle: 'none', margin: 0, padding: 0 }, children: visible.map((item, i) => {
9
+ const isLast = i === visible.length - 1;
10
+ const isCurrent = item.current || isLast;
11
+ return (_jsxs("li", { className: cn('tokis-breadcrumbs-item', isCurrent && 'tokis-breadcrumbs-item--current'), "aria-current": isCurrent ? 'page' : undefined, children: [item.href ? (_jsx("a", { href: item.href, className: "tokis-breadcrumbs-link", children: item.label })) : item.onClick ? (_jsx("button", { className: "tokis-breadcrumbs-link", onClick: item.onClick, style: { background: 'none', border: 'none', padding: 0, font: 'inherit', cursor: 'pointer' }, children: item.label })) : (_jsx("span", { children: item.label })), !isLast && _jsx("span", { className: "tokis-breadcrumbs-separator", "aria-hidden": "true", children: separator })] }, i));
12
+ }) }) }));
13
+ });
14
+ Breadcrumbs.displayName = 'Breadcrumbs';
15
+ export const Link = forwardRef(({ external = false, underline = 'hover', className, children, ...props }, ref) => (_jsx("a", { ref: ref, target: external ? '_blank' : undefined, rel: external ? 'noopener noreferrer' : undefined, className: cn('tokis-link', external && 'tokis-link--external', className), ...props, children: children })));
16
+ Link.displayName = 'Link';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/breadcrumbs/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export interface ButtonIconProps {
3
+ children?: React.ReactNode;
4
+ /** Optional accessible label when icon is standalone */
5
+ 'aria-label'?: string;
6
+ }
7
+ export declare const ButtonIcon: React.FC<ButtonIconProps>;
8
+ //# sourceMappingURL=ButtonIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonIcon.d.ts","sourceRoot":"","sources":["../../../src/components/button/ButtonIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAMhD,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export const ButtonIcon = ({ children, 'aria-label': ariaLabel }) => {
3
+ return (_jsx("span", { className: "button-icon", "aria-hidden": ariaLabel ? undefined : true, "aria-label": ariaLabel, children: children }));
4
+ };
5
+ ButtonIcon.displayName = 'ButtonIcon';
6
+ //# sourceMappingURL=ButtonIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonIcon.js","sourceRoot":"","sources":["../../../src/components/button/ButtonIcon.tsx"],"names":[],"mappings":";AAQA,MAAM,CAAC,MAAM,UAAU,GAA8B,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE;IAC7F,OAAO,CACL,eAAM,SAAS,EAAC,aAAa,iBAAc,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,gBAAc,SAAS,YAC3F,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC,CAAC;AACF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export interface ButtonLabelProps {
3
+ children?: React.ReactNode;
4
+ }
5
+ export declare const ButtonLabel: React.FC<ButtonLabelProps>;
6
+ //# sourceMappingURL=ButtonLabel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonLabel.d.ts","sourceRoot":"","sources":["../../../src/components/button/ButtonLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAElD,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export const ButtonLabel = ({ children }) => {
3
+ return _jsx("span", { className: "button-label", children: children });
4
+ };
5
+ ButtonLabel.displayName = 'ButtonLabel';
6
+ //# sourceMappingURL=ButtonLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonLabel.js","sourceRoot":"","sources":["../../../src/components/button/ButtonLabel.tsx"],"names":[],"mappings":";AAMA,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACtE,OAAO,eAAM,SAAS,EAAC,cAAc,YAAE,QAAQ,GAAQ,CAAC;AAC1D,CAAC,CAAC;AACF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'outline' | 'destructive' | 'link';
3
+ export type ButtonSize = 'sm' | 'md' | 'lg' | 'xl';
4
+ export interface ButtonRootProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
5
+ /** Render as a different element or component (polymorphic) */
6
+ as?: React.ElementType;
7
+ variant?: ButtonVariant;
8
+ size?: ButtonSize;
9
+ fullWidth?: boolean;
10
+ loading?: boolean;
11
+ iconOnly?: boolean;
12
+ disabled?: boolean;
13
+ }
14
+ export declare const ButtonRoot: React.ForwardRefExoticComponent<ButtonRootProps & React.RefAttributes<HTMLButtonElement>>;
15
+ //# sourceMappingURL=ButtonRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonRoot.d.ts","sourceRoot":"","sources":["../../../src/components/button/ButtonRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAI9D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC;AACnG,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnD,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACpF,+DAA+D;IAC/D,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACvB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,2FAuDtB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { forwardRef, useId, useCallback } from 'react';
3
+ import { cn } from '../../utils/cn.js';
4
+ import { useButton } from './useButton.js';
5
+ export const ButtonRoot = forwardRef(({ as: Component = 'button', variant = 'primary', size = 'md', fullWidth = false, loading = false, iconOnly = false, disabled = false, className, onClick, children, ...props }, ref) => {
6
+ const { state, send } = useButton();
7
+ const id = useId();
8
+ const isNativeButton = Component === 'button';
9
+ const isDisabled = disabled || loading;
10
+ const handleClick = useCallback((e) => {
11
+ if (isDisabled)
12
+ return;
13
+ send({ type: 'PRESS' });
14
+ // Allow PRESS to register then immediately RELEASE for stateless click semantics
15
+ send({ type: 'RELEASE' });
16
+ onClick?.(e);
17
+ }, [isDisabled, onClick, send]);
18
+ return (_jsxs(Component, { ref: ref, id: id, disabled: isNativeButton ? isDisabled : undefined, "aria-disabled": !isNativeButton && isDisabled ? true : undefined, "aria-busy": loading || undefined, "data-state": state.value, className: cn('tokis-btn', `tokis-btn--${variant}`, size !== 'md' && `tokis-btn--${size}`, fullWidth && 'tokis-btn--full', loading && 'tokis-btn--loading', iconOnly && 'tokis-btn--icon-only', className), onClick: handleClick, ...props, children: [loading && _jsx("span", { className: "tokis-spinner tokis-spinner--sm tokis-spinner--white", "aria-hidden": "true" }), children] }));
19
+ });
20
+ ButtonRoot.displayName = 'ButtonRoot';
21
+ //# sourceMappingURL=ButtonRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonRoot.js","sourceRoot":"","sources":["../../../src/components/button/ButtonRoot.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAgB3C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CAAC,EACC,EAAE,EAAE,SAAS,GAAG,QAAQ,EACxB,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,GAAG,EAAE,EAAE;IACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,cAAc,GAAG,SAAS,KAAK,QAAQ,CAAC;IAC9C,MAAM,UAAU,GAAG,QAAQ,IAAI,OAAO,CAAC;IAEvC,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,CAAsC,EAAE,EAAE;QACzC,IAAI,UAAU;YAAE,OAAO;QACvB,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACxB,iFAAiF;QACjF,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1B,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,EACD,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAC5B,CAAC;IAEF,OAAO,CACL,MAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,mBAClC,CAAC,cAAc,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,eACpD,OAAO,IAAI,SAAS,gBACnB,KAAK,CAAC,KAAK,EACvB,SAAS,EAAE,EAAE,CACX,WAAW,EACX,cAAc,OAAO,EAAE,EACvB,IAAI,KAAK,IAAI,IAAI,cAAc,IAAI,EAAE,EACrC,SAAS,IAAI,iBAAiB,EAC9B,OAAO,IAAI,oBAAoB,EAC/B,QAAQ,IAAI,sBAAsB,EAClC,SAAS,CACV,EACD,OAAO,EAAE,WAAW,KAChB,KAAK,aAER,OAAO,IAAI,eAAM,SAAS,EAAC,sDAAsD,iBAAa,MAAM,GAAG,EACvG,QAAQ,IACC,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AACF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { ButtonRoot } from './ButtonRoot.js';
2
+ export type { ButtonRootProps } from './ButtonRoot.js';
3
+ export { ButtonIcon } from './ButtonIcon.js';
4
+ export type { ButtonIconProps } from './ButtonIcon.js';
5
+ export { ButtonLabel } from './ButtonLabel.js';
6
+ export type { ButtonLabelProps } from './ButtonLabel.js';
7
+ export { useButton } from './useButton.js';
8
+ export type { ButtonContext, ButtonEvent } from './useButton.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { ButtonRoot } from './ButtonRoot.js';
2
+ export { ButtonIcon } from './ButtonIcon.js';
3
+ export { ButtonLabel } from './ButtonLabel.js';
4
+ export { useButton } from './useButton.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,16 @@
1
+ export type ButtonState = 'idle' | 'pressed';
2
+ export interface ButtonContext {
3
+ disabled: boolean;
4
+ }
5
+ export type ButtonEvent = {
6
+ type: 'PRESS';
7
+ } | {
8
+ type: 'RELEASE';
9
+ };
10
+ export declare function useButton(): {
11
+ state: {
12
+ value: ButtonState;
13
+ };
14
+ send: (event: ButtonEvent) => void;
15
+ };
16
+ //# sourceMappingURL=useButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useButton.d.ts","sourceRoot":"","sources":["../../../src/components/button/useButton.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAElE,wBAAgB,SAAS;;;;kBAGU,WAAW;EAM7C"}
@@ -0,0 +1,12 @@
1
+ import { useCallback, useState } from 'react';
2
+ export function useButton() {
3
+ const [value, setValue] = useState('idle');
4
+ const send = useCallback((event) => {
5
+ if (event.type === 'PRESS')
6
+ setValue('pressed');
7
+ else if (event.type === 'RELEASE')
8
+ setValue('idle');
9
+ }, []);
10
+ return { state: { value }, send };
11
+ }
12
+ //# sourceMappingURL=useButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useButton.js","sourceRoot":"","sources":["../../../src/components/button/useButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAU9C,MAAM,UAAU,SAAS;IACvB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAc,MAAM,CAAC,CAAC;IAExD,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,KAAkB,EAAE,EAAE;QAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;aAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ export interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ variant?: 'default' | 'elevated' | 'ghost';
4
+ clickable?: boolean;
5
+ }
6
+ export declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
7
+ export declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
8
+ export declare const CardBody: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
9
+ export declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
10
+ export declare const CardTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLHeadingElement>>;
11
+ export declare const CardDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
12
+ export interface DividerProps extends React.HTMLAttributes<HTMLElement> {
13
+ orientation?: 'horizontal' | 'vertical';
14
+ label?: React.ReactNode;
15
+ }
16
+ export declare const Divider: React.ForwardRefExoticComponent<DividerProps & React.RefAttributes<HTMLHRElement>>;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/card/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAI1C,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACrE,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AACD,eAAO,MAAM,IAAI,kFAQf,CAAC;AAGH,eAAO,MAAM,UAAU,6GAErB,CAAC;AAGH,eAAO,MAAM,QAAQ,6GAEnB,CAAC;AAGH,eAAO,MAAM,UAAU,6GAErB,CAAC;AAGH,eAAO,MAAM,SAAS,qHAEpB,CAAC;AAGH,eAAO,MAAM,eAAe,yHAE1B,CAAC;AAIH,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IACrE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AACD,eAAO,MAAM,OAAO,oFAiBlB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from 'react';
3
+ import { cn } from '../../utils/cn.js';
4
+ export const Card = forwardRef(({ variant = 'default', clickable = false, className, children, ...props }, ref) => (_jsx("div", { ref: ref, className: cn('tokis-card', variant !== 'default' && `tokis-card--${variant}`, clickable && 'tokis-card--clickable', className), role: clickable ? 'button' : undefined, tabIndex: clickable ? 0 : undefined, ...props, children: children })));
5
+ Card.displayName = 'Card';
6
+ export const CardHeader = forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: cn('tokis-card-header', className), ...props })));
7
+ CardHeader.displayName = 'CardHeader';
8
+ export const CardBody = forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: cn('tokis-card-body', className), ...props })));
9
+ CardBody.displayName = 'CardBody';
10
+ export const CardFooter = forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: cn('tokis-card-footer', className), ...props })));
11
+ CardFooter.displayName = 'CardFooter';
12
+ export const CardTitle = forwardRef(({ className, ...props }, ref) => (_jsx("h3", { ref: ref, className: cn('tokis-card-title', className), ...props })));
13
+ CardTitle.displayName = 'CardTitle';
14
+ export const CardDescription = forwardRef(({ className, ...props }, ref) => (_jsx("p", { ref: ref, className: cn('tokis-card-description', className), ...props })));
15
+ CardDescription.displayName = 'CardDescription';
16
+ export const Divider = forwardRef(({ orientation = 'horizontal', label, className, ...props }, ref) => {
17
+ if (label) {
18
+ return (_jsx("div", { className: cn('tokis-divider tokis-divider--with-text', className), children: _jsx("span", { className: "tokis-divider__text", children: label }) }));
19
+ }
20
+ return (_jsx("hr", { ref: ref, role: "separator", "aria-orientation": orientation, className: cn('tokis-divider', orientation === 'vertical' && 'tokis-divider--vertical', className), ...props }));
21
+ });
22
+ Divider.displayName = 'Divider';
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/card/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ export interface ChartDataPoint {
2
+ label: string;
3
+ value: number;
4
+ color?: string;
5
+ }
6
+ export interface BarChartProps {
7
+ data: ChartDataPoint[];
8
+ height?: number;
9
+ barColor?: string;
10
+ animated?: boolean;
11
+ horizontal?: boolean;
12
+ className?: string;
13
+ }
14
+ export declare function BarChart({ data, height, barColor, animated, horizontal, className, }: BarChartProps): JSX.Element;
15
+ export declare namespace BarChart {
16
+ var displayName: string;
17
+ }
18
+ export interface LineChartDataset {
19
+ label: string;
20
+ data: number[];
21
+ color?: string;
22
+ }
23
+ export interface LineChartProps {
24
+ labels: string[];
25
+ datasets: LineChartDataset[];
26
+ height?: number;
27
+ smooth?: boolean;
28
+ animated?: boolean;
29
+ className?: string;
30
+ }
31
+ export declare function LineChart({ labels, datasets, height, smooth, animated, className, }: LineChartProps): JSX.Element;
32
+ export declare namespace LineChart {
33
+ var displayName: string;
34
+ }
35
+ export interface PieChartProps {
36
+ data: ChartDataPoint[];
37
+ donut?: boolean;
38
+ size?: number;
39
+ animated?: boolean;
40
+ showLegend?: boolean;
41
+ className?: string;
42
+ }
43
+ export declare function PieChart({ data, donut, size, animated, showLegend, className, }: PieChartProps): JSX.Element;
44
+ export declare namespace PieChart {
45
+ var displayName: string;
46
+ }
47
+ export type SparklineType = 'line' | 'bar' | 'area';
48
+ export interface SparklineProps {
49
+ data: number[];
50
+ type?: SparklineType;
51
+ width?: number;
52
+ height?: number;
53
+ color?: string;
54
+ className?: string;
55
+ }
56
+ export declare function Sparkline({ data, type, width, height, color, className, }: SparklineProps): JSX.Element;
57
+ export declare namespace Sparkline {
58
+ var displayName: string;
59
+ }
60
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/charts/index.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA0BD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,MAAY,EACZ,QAAQ,EACR,QAAe,EACf,UAAkB,EAClB,SAAS,GACV,EAAE,aAAa,GAAG,GAAG,CAAC,OAAO,CA+G7B;yBAtHe,QAAQ;;;AA4HxB,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,QAAQ,EACR,MAAY,EACZ,MAAa,EACb,QAAe,EACf,SAAS,GACV,EAAE,cAAc,GAAG,GAAG,CAAC,OAAO,CA0I9B;yBAjJe,SAAS;;;AAuJzB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,KAAa,EACb,IAAU,EACV,QAAe,EACf,UAAiB,EACjB,SAAS,GACV,EAAE,aAAa,GAAG,GAAG,CAAC,OAAO,CAkE7B;yBAzEe,QAAQ;;;AA+ExB,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,IAAa,EACb,KAAU,EACV,MAAW,EACX,KAAoC,EACpC,SAAS,GACV,EAAE,cAAc,GAAG,GAAG,CAAC,OAAO,CAiC9B;yBAxCe,SAAS"}
@@ -0,0 +1,209 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useRef, useEffect, useState } from 'react';
3
+ import { cn } from '../../utils/cn.js';
4
+ const DEFAULT_COLORS = [
5
+ 'var(--tokis-color-primary)',
6
+ '#7c3aed',
7
+ '#059669',
8
+ '#d97706',
9
+ '#dc2626',
10
+ '#0284c7',
11
+ '#db2777',
12
+ ];
13
+ function useContainerWidth(ref) {
14
+ const [width, setWidth] = useState(300);
15
+ useEffect(() => {
16
+ if (!ref.current)
17
+ return;
18
+ const ro = new ResizeObserver(([entry]) => setWidth(entry.contentRect.width));
19
+ ro.observe(ref.current);
20
+ setWidth(ref.current.clientWidth);
21
+ return () => ro.disconnect();
22
+ }, [ref]);
23
+ return width;
24
+ }
25
+ export function BarChart({ data, height = 200, barColor, animated = true, horizontal = false, className, }) {
26
+ const containerRef = useRef(null);
27
+ const containerWidth = useContainerWidth(containerRef);
28
+ const [mounted, setMounted] = useState(false);
29
+ useEffect(() => { if (animated)
30
+ setTimeout(() => setMounted(true), 50); }, [animated]);
31
+ const [hoveredBar, setHoveredBar] = useState(null);
32
+ const maxVal = Math.max(...data.map((d) => d.value), 1);
33
+ const padding = { top: 8, right: 8, bottom: 32, left: 40 };
34
+ const w = containerWidth;
35
+ const h = height;
36
+ const chartW = w - padding.left - padding.right;
37
+ const chartH = h - padding.top - padding.bottom;
38
+ const barWidth = (chartW / data.length) * 0.6;
39
+ const barGap = (chartW / data.length) * 0.4;
40
+ if (!horizontal) {
41
+ return (_jsx("div", { ref: containerRef, className: cn('tokis-chart tokis-chart--bar', className), children: _jsx("svg", { width: w, height: h, "aria-label": "Bar chart", onMouseMove: (e) => {
42
+ const svgRect = e.currentTarget.getBoundingClientRect();
43
+ const mouseX = e.clientX - svgRect.left - padding.left;
44
+ const colW = chartW / data.length;
45
+ const idx = Math.floor(mouseX / colW);
46
+ setHoveredBar(idx >= 0 && idx < data.length ? idx : null);
47
+ }, onMouseLeave: () => setHoveredBar(null), children: _jsxs("g", { transform: `translate(${padding.left},${padding.top})`, children: [[0, 0.25, 0.5, 0.75, 1].map((t) => (_jsxs("g", { transform: `translate(0,${chartH * (1 - t)})`, children: [_jsx("line", { x1: -4, x2: chartW, stroke: "var(--tokis-color-border)", strokeWidth: "1" }), _jsx("text", { x: -8, y: 4, fontSize: "10", fill: "var(--tokis-text-tertiary)", textAnchor: "end", children: Math.round(maxVal * t) })] }, t))), data.map((d, i) => {
48
+ const x = i * (chartW / data.length) + barGap / 2;
49
+ const barH = (d.value / maxVal) * chartH;
50
+ const y = chartH - (mounted || !animated ? barH : 0);
51
+ const color = d.color ?? barColor ?? DEFAULT_COLORS[i % DEFAULT_COLORS.length];
52
+ return (_jsxs("g", { children: [_jsx("rect", { x: x, y: y, width: barWidth, height: mounted || !animated ? barH : 0, fill: color, rx: 3, opacity: hoveredBar !== null && hoveredBar !== i ? 0.5 : 1, style: { transition: animated ? 'y 0.6s ease, height 0.6s ease' : undefined } }), _jsx("text", { x: x + barWidth / 2, y: chartH + 18, fontSize: "10", fill: "var(--tokis-text-secondary)", textAnchor: "middle", children: d.label })] }, i));
53
+ }), hoveredBar !== null && (() => {
54
+ const d = data[hoveredBar];
55
+ const x = hoveredBar * (chartW / data.length) + barGap / 2 + barWidth / 2;
56
+ const barH = (d.value / maxVal) * chartH;
57
+ const tipY = Math.max(4, chartH - (mounted || !animated ? barH : 0) - 28);
58
+ const txt = String(d.value);
59
+ const tw = Math.max(36, txt.length * 7 + 16);
60
+ return (_jsxs("g", { style: { pointerEvents: 'none' }, children: [_jsx("rect", { x: x - tw / 2, y: tipY, width: tw, height: 20, rx: 4, fill: "rgba(17,24,39,0.92)" }), _jsx("text", { x: x, y: tipY + 13, fontSize: "10", textAnchor: "middle", fill: "#fff", fontWeight: "600", children: txt })] }));
61
+ })()] }) }) }));
62
+ }
63
+ // Horizontal
64
+ const barH = (chartH / data.length) * 0.6;
65
+ const barGapH = (chartH / data.length) * 0.4;
66
+ return (_jsx("div", { ref: containerRef, className: cn('tokis-chart tokis-chart--bar', className), children: _jsx("svg", { width: w, height: h, "aria-label": "Bar chart horizontal", children: _jsx("g", { transform: `translate(${padding.left},${padding.top})`, children: data.map((d, i) => {
67
+ const y = i * (chartH / data.length) + barGapH / 2;
68
+ const barW = (d.value / maxVal) * chartW;
69
+ const color = d.color ?? barColor ?? DEFAULT_COLORS[i % DEFAULT_COLORS.length];
70
+ return (_jsxs("g", { children: [_jsx("text", { x: -8, y: y + barH / 2 + 4, fontSize: "10", fill: "var(--tokis-text-secondary)", textAnchor: "end", children: d.label }), _jsx("rect", { x: 0, y: y, width: mounted || !animated ? barW : 0, height: barH, fill: color, rx: 3, style: { transition: animated ? 'width 0.6s ease' : undefined } })] }, i));
71
+ }) }) }) }));
72
+ }
73
+ BarChart.displayName = 'BarChart';
74
+ function toPath(points, smooth) {
75
+ if (points.length < 2)
76
+ return '';
77
+ if (!smooth) {
78
+ return points.map((p, i) => `${i === 0 ? 'M' : 'L'}${p.x},${p.y}`).join(' ');
79
+ }
80
+ let d = `M${points[0].x},${points[0].y}`;
81
+ for (let i = 1; i < points.length; i++) {
82
+ const prev = points[i - 1];
83
+ const curr = points[i];
84
+ const cpx = (prev.x + curr.x) / 2;
85
+ d += ` C${cpx},${prev.y} ${cpx},${curr.y} ${curr.x},${curr.y}`;
86
+ }
87
+ return d;
88
+ }
89
+ export function LineChart({ labels, datasets, height = 200, smooth = true, animated = true, className, }) {
90
+ const containerRef = useRef(null);
91
+ const containerWidth = useContainerWidth(containerRef);
92
+ const [mounted, setMounted] = useState(false);
93
+ const [hoveredCol, setHoveredCol] = useState(null);
94
+ useEffect(() => { if (animated)
95
+ setTimeout(() => setMounted(true), 50); }, [animated]);
96
+ const padding = { top: 12, right: 12, bottom: 32, left: 44 };
97
+ const w = containerWidth;
98
+ const h = height;
99
+ const chartW = w - padding.left - padding.right;
100
+ const chartH = h - padding.top - padding.bottom;
101
+ const allValues = datasets.flatMap((d) => d.data);
102
+ const maxVal = Math.max(...allValues, 1);
103
+ const minVal = Math.min(...allValues, 0);
104
+ const range = maxVal - minVal || 1;
105
+ const toPoint = (val, idx) => ({
106
+ x: (idx / (labels.length - 1 || 1)) * chartW,
107
+ y: chartH - ((val - minVal) / range) * chartH,
108
+ });
109
+ return (_jsxs("div", { ref: containerRef, className: cn('tokis-chart tokis-chart--line', className), children: [_jsx("svg", { width: w, height: h, "aria-label": "Line chart", onMouseMove: (e) => {
110
+ const svgRect = e.currentTarget.getBoundingClientRect();
111
+ const mouseX = e.clientX - svgRect.left - padding.left;
112
+ const colW = chartW / (labels.length - 1 || 1);
113
+ const idx = Math.round(mouseX / colW);
114
+ setHoveredCol(idx >= 0 && idx < labels.length ? idx : null);
115
+ }, onMouseLeave: () => setHoveredCol(null), children: _jsxs("g", { transform: `translate(${padding.left},${padding.top})`, children: [[0, 0.25, 0.5, 0.75, 1].map((t) => (_jsxs("g", { transform: `translate(0,${chartH * (1 - t)})`, children: [_jsx("line", { x1: 0, x2: chartW, stroke: "var(--tokis-color-border)", strokeWidth: "1" }), _jsx("text", { x: -8, y: 4, fontSize: "10", fill: "var(--tokis-text-tertiary)", textAnchor: "end", children: Math.round(minVal + range * t) })] }, t))), labels.map((lbl, i) => (_jsx("text", { x: toPoint(0, i).x, y: chartH + 18, fontSize: "10", fill: "var(--tokis-text-secondary)", textAnchor: "middle", children: lbl }, i))), datasets.map((dataset, di) => {
116
+ const points = dataset.data.map((v, i) => toPoint(v, i));
117
+ const pathD = toPath(points, smooth);
118
+ const color = dataset.color ?? DEFAULT_COLORS[di % DEFAULT_COLORS.length];
119
+ return (_jsxs("g", { children: [_jsx("path", { d: pathD, fill: "none", stroke: color, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: animated ? { strokeDasharray: 2000, strokeDashoffset: mounted ? 0 : 2000, transition: 'stroke-dashoffset 1s ease' } : undefined }), points.map((p, pi) => (_jsx("circle", { cx: p.x, cy: p.y, r: 3, fill: color, style: animated ? { opacity: mounted ? 1 : 0, transition: `opacity 0.5s ease ${pi * 0.05}s` } : undefined }, pi)))] }, di));
120
+ }), hoveredCol !== null && (() => {
121
+ const x = toPoint(0, hoveredCol).x;
122
+ const vals = datasets.map((ds) => ({ val: ds.data[hoveredCol], color: ds.color ?? DEFAULT_COLORS[datasets.indexOf(ds) % DEFAULT_COLORS.length], label: ds.label }));
123
+ const firstVal = vals[0];
124
+ if (!firstVal || firstVal.val === undefined)
125
+ return null;
126
+ const y = toPoint(firstVal.val, hoveredCol).y;
127
+ const isMulti = vals.length > 1;
128
+ return (_jsxs("g", { style: { pointerEvents: 'none' }, children: [_jsx("line", { x1: x, x2: x, y1: 0, y2: chartH, stroke: "var(--tokis-color-border)", strokeWidth: "1", strokeDasharray: "3,3" }), vals.map(({ val, color }, vi) => {
129
+ if (val === undefined)
130
+ return null;
131
+ const py = toPoint(val, hoveredCol).y;
132
+ return _jsx("circle", { cx: x, cy: py, r: 4, fill: color, stroke: "#fff", strokeWidth: "1.5" }, vi);
133
+ }), !isMulti && ((() => {
134
+ const txt = String(firstVal.val);
135
+ const tw = Math.max(36, txt.length * 7 + 16);
136
+ const tipX = Math.min(Math.max(x, tw / 2 + 2), chartW - tw / 2 - 2);
137
+ const tipY = Math.max(4, y - 30);
138
+ return (_jsxs("g", { children: [_jsx("rect", { x: tipX - tw / 2, y: tipY, width: tw, height: 20, rx: 4, fill: "rgba(17,24,39,0.92)" }), _jsx("text", { x: tipX, y: tipY + 13, fontSize: "10", textAnchor: "middle", fill: "#fff", fontWeight: "600", children: txt })] }));
139
+ })()), isMulti && ((() => {
140
+ const lines = vals.filter(v => v.val !== undefined);
141
+ const tw = 90;
142
+ const th = lines.length * 16 + 8;
143
+ const tipX = Math.min(Math.max(x + 8, tw / 2 + 2), chartW - tw / 2 - 2);
144
+ const tipY = Math.max(4, Math.min(y - th / 2, chartH - th - 4));
145
+ return (_jsxs("g", { children: [_jsx("rect", { x: tipX - tw / 2, y: tipY, width: tw, height: th, rx: 4, fill: "rgba(17,24,39,0.92)" }), lines.map(({ val, color, label }, li) => (_jsxs("g", { children: [_jsx("circle", { cx: tipX - tw / 2 + 10, cy: tipY + 12 + li * 16, r: 3, fill: color }), _jsxs("text", { x: tipX - tw / 2 + 18, y: tipY + 16 + li * 16, fontSize: "10", fill: "#fff", children: [label, ": ", val] })] }, li)))] }));
146
+ })())] }));
147
+ })()] }) }), datasets.length > 1 && (_jsx("div", { className: "tokis-chart__legend", children: datasets.map((d, i) => (_jsxs("span", { className: "tokis-chart__legend-item", children: [_jsx("span", { className: "tokis-chart__legend-dot", style: { background: d.color ?? DEFAULT_COLORS[i % DEFAULT_COLORS.length] } }), d.label] }, i))) }))] }));
148
+ }
149
+ LineChart.displayName = 'LineChart';
150
+ export function PieChart({ data, donut = false, size = 200, animated = true, showLegend = true, className, }) {
151
+ const [mounted, setMounted] = useState(false);
152
+ useEffect(() => { if (animated)
153
+ setTimeout(() => setMounted(true), 50); }, [animated]);
154
+ const [hovered, setHovered] = useState(null);
155
+ const total = data.reduce((s, d) => s + d.value, 0) || 1;
156
+ const cx = size / 2;
157
+ const cy = size / 2;
158
+ const r = (size / 2) * 0.78;
159
+ const innerR = donut ? r * 0.55 : 0;
160
+ let cumAngle = -Math.PI / 2;
161
+ const slices = data.map((d, i) => {
162
+ const angle = (d.value / total) * Math.PI * 2;
163
+ const startAngle = cumAngle;
164
+ cumAngle += angle;
165
+ const endAngle = cumAngle;
166
+ const expand = hovered === i ? 6 : 0;
167
+ const midAngle = startAngle + angle / 2;
168
+ const offsetX = expand * Math.cos(midAngle);
169
+ const offsetY = expand * Math.sin(midAngle);
170
+ const x1 = cx + offsetX + r * Math.cos(startAngle);
171
+ const y1 = cy + offsetY + r * Math.sin(startAngle);
172
+ const x2 = cx + offsetX + r * Math.cos(endAngle);
173
+ const y2 = cy + offsetY + r * Math.sin(endAngle);
174
+ const ix1 = cx + offsetX + innerR * Math.cos(endAngle);
175
+ const iy1 = cy + offsetY + innerR * Math.sin(endAngle);
176
+ const ix2 = cx + offsetX + innerR * Math.cos(startAngle);
177
+ const iy2 = cy + offsetY + innerR * Math.sin(startAngle);
178
+ const largeArc = angle > Math.PI ? 1 : 0;
179
+ const pathD = donut
180
+ ? `M${x1},${y1} A${r},${r} 0 ${largeArc},1 ${x2},${y2} L${ix1},${iy1} A${innerR},${innerR} 0 ${largeArc},0 ${ix2},${iy2} Z`
181
+ : `M${cx + offsetX},${cy + offsetY} L${x1},${y1} A${r},${r} 0 ${largeArc},1 ${x2},${y2} Z`;
182
+ return { ...d, pathD, color: d.color ?? DEFAULT_COLORS[i % DEFAULT_COLORS.length] };
183
+ });
184
+ return (_jsxs("div", { className: cn('tokis-chart tokis-chart--pie', className), children: [_jsx("svg", { width: size, height: size, "aria-label": "Pie chart", children: slices.map((s, i) => (_jsx("path", { d: s.pathD, fill: s.color, style: { opacity: mounted || !animated ? 1 : 0, transition: animated ? `opacity 0.4s ease ${i * 0.07}s` : undefined, cursor: 'pointer' }, onMouseEnter: () => setHovered(i), onMouseLeave: () => setHovered(null), children: _jsxs("title", { children: [s.label, ": ", s.value, " (", ((s.value / total) * 100).toFixed(1), "%)"] }) }, i))) }), showLegend && (_jsx("div", { className: "tokis-chart__legend", children: slices.map((s, i) => (_jsxs("span", { className: "tokis-chart__legend-item", children: [_jsx("span", { className: "tokis-chart__legend-dot", style: { background: s.color } }), s.label] }, i))) }))] }));
185
+ }
186
+ PieChart.displayName = 'PieChart';
187
+ export function Sparkline({ data, type = 'line', width = 80, height = 24, color = 'var(--tokis-color-primary)', className, }) {
188
+ if (data.length < 2)
189
+ return _jsx("span", { className: cn('tokis-sparkline', className) });
190
+ const maxVal = Math.max(...data, 1);
191
+ const minVal = Math.min(...data);
192
+ const range = maxVal - minVal || 1;
193
+ const xStep = width / (data.length - 1);
194
+ const toX = (i) => i * xStep;
195
+ const toY = (v) => height - ((v - minVal) / range) * (height - 2) - 1;
196
+ if (type === 'bar') {
197
+ const bw = Math.max(1, (width / data.length) * 0.7);
198
+ return (_jsx("svg", { width: width, height: height, className: cn('tokis-sparkline', className), "aria-hidden": "true", children: data.map((v, i) => {
199
+ const bh = ((v - minVal) / range) * height;
200
+ return _jsx("rect", { x: i * (width / data.length), y: height - bh, width: bw, height: bh, fill: color, rx: 1 }, i);
201
+ }) }));
202
+ }
203
+ const points = data.map((v, i) => ({ x: toX(i), y: toY(v) }));
204
+ const lineD = points.map((p, i) => `${i === 0 ? 'M' : 'L'}${p.x},${p.y}`).join(' ');
205
+ const areaD = `${lineD} L${points[points.length - 1].x},${height} L${points[0].x},${height} Z`;
206
+ return (_jsxs("svg", { width: width, height: height, className: cn('tokis-sparkline', className), "aria-hidden": "true", children: [type === 'area' && _jsx("path", { d: areaD, fill: color, opacity: 0.2 }), _jsx("path", { d: lineD, fill: "none", stroke: color, strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] }));
207
+ }
208
+ Sparkline.displayName = 'Sparkline';
209
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/charts/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ export interface CheckboxProps {
3
+ label?: React.ReactNode;
4
+ description?: string;
5
+ checked?: boolean;
6
+ defaultChecked?: boolean;
7
+ indeterminate?: boolean;
8
+ disabled?: boolean;
9
+ onChange?: (checked: boolean) => void;
10
+ id?: string;
11
+ name?: string;
12
+ value?: string;
13
+ className?: string;
14
+ 'aria-label'?: string;
15
+ }
16
+ export declare function Checkbox({ label, description, checked, defaultChecked, indeterminate, disabled, onChange, id, name, value, className, 'aria-label': ariaLabel, }: CheckboxProps): import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAGxD,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,aAAqB,EAClE,QAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,GAChF,EAAE,aAAa,2CA8Cf"}