@studiocubics/components 0.0.1 → 0.0.2

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 (433) hide show
  1. package/dist/Cards/Card/Card.d.ts +49 -0
  2. package/dist/Cards/Card/Card.js +45 -0
  3. package/dist/Cards/Card/Card.js.map +1 -0
  4. package/dist/Cards/Card/Card.module.css.js +4 -0
  5. package/dist/Cards/Card/Card.module.css.js.map +1 -0
  6. package/dist/Cards/CollectionItemCard/CollectionItemCard.d.ts +55 -0
  7. package/dist/Cards/CollectionItemCard/CollectionItemCard.js +48 -0
  8. package/dist/Cards/CollectionItemCard/CollectionItemCard.js.map +1 -0
  9. package/dist/Cards/CollectionItemCard/CollectionItemCard.module.css.js +4 -0
  10. package/dist/Cards/CollectionItemCard/CollectionItemCard.module.css.js.map +1 -0
  11. package/dist/Cards/CollectionItemCard/CollectionItemCardActions.d.ts +19 -0
  12. package/dist/Cards/CollectionItemCard/CollectionItemCardActions.js +34 -0
  13. package/dist/Cards/CollectionItemCard/CollectionItemCardActions.js.map +1 -0
  14. package/dist/Cards/GlassCard/GlassCard.d.ts +7 -0
  15. package/dist/Cards/GlassCard/GlassCard.js +52 -0
  16. package/dist/Cards/GlassCard/GlassCard.js.map +1 -0
  17. package/dist/Cards/GlassCard/GlassCard.module.css.js +4 -0
  18. package/dist/Cards/GlassCard/GlassCard.module.css.js.map +1 -0
  19. package/dist/Display/Accordion/Accordion.d.ts +14 -0
  20. package/dist/Display/Accordion/Accordion.js +28 -0
  21. package/dist/Display/Accordion/Accordion.js.map +1 -0
  22. package/dist/Display/Accordion/Accordion.module.css.js +4 -0
  23. package/dist/Display/Accordion/Accordion.module.css.js.map +1 -0
  24. package/dist/Display/Accordion/AccordionItem.d.ts +15 -0
  25. package/dist/Display/Accordion/AccordionItem.js +56 -0
  26. package/dist/Display/Accordion/AccordionItem.js.map +1 -0
  27. package/dist/Display/Chip/Chip.d.ts +46 -0
  28. package/dist/Display/Chip/Chip.js +43 -0
  29. package/dist/Display/Chip/Chip.js.map +1 -0
  30. package/dist/Display/Chip/Chip.module.css.js +4 -0
  31. package/dist/Display/Chip/Chip.module.css.js.map +1 -0
  32. package/dist/Display/IdentityDisplay/IdentityDisplay.d.ts +21 -0
  33. package/dist/Display/IdentityDisplay/IdentityDisplay.js +36 -0
  34. package/dist/Display/IdentityDisplay/IdentityDisplay.js.map +1 -0
  35. package/dist/Display/IdentityDisplay/IdentityDisplay.module.css.js +4 -0
  36. package/dist/Display/IdentityDisplay/IdentityDisplay.module.css.js.map +1 -0
  37. package/dist/Display/InputErrors/InputErrors.d.ts +11 -0
  38. package/dist/Display/InputErrors/InputErrors.js +25 -0
  39. package/dist/Display/InputErrors/InputErrors.js.map +1 -0
  40. package/dist/Display/InputErrors/InputErrors.module.css.js +4 -0
  41. package/dist/Display/InputErrors/InputErrors.module.css.js.map +1 -0
  42. package/dist/Display/Kbd/Kbd.d.ts +8 -0
  43. package/dist/Display/Kbd/Kbd.js +19 -0
  44. package/dist/Display/Kbd/Kbd.js.map +1 -0
  45. package/dist/Display/Kbd/Kbd.module.css.js +4 -0
  46. package/dist/Display/Kbd/Kbd.module.css.js.map +1 -0
  47. package/dist/Display/Kbd/buttonList.d.ts +324 -0
  48. package/dist/Display/Kbd/buttonList.js +198 -0
  49. package/dist/Display/Kbd/buttonList.js.map +1 -0
  50. package/dist/Display/LabeledValue/LabeledValue.d.ts +9 -0
  51. package/dist/Display/LabeledValue/LabeledValue.js +11 -0
  52. package/dist/Display/LabeledValue/LabeledValue.js.map +1 -0
  53. package/dist/Display/LabeledValue/LabeledValue.module.css.js +4 -0
  54. package/dist/Display/LabeledValue/LabeledValue.module.css.js.map +1 -0
  55. package/dist/Display/List/List.d.ts +50 -0
  56. package/dist/Display/List/List.js +96 -0
  57. package/dist/Display/List/List.js.map +1 -0
  58. package/dist/Display/List/List.module.css.js +4 -0
  59. package/dist/Display/List/List.module.css.js.map +1 -0
  60. package/dist/Display/PasswordStrength/PasswordStrength.d.ts +4 -0
  61. package/dist/Display/PasswordStrength/PasswordStrength.js +17 -0
  62. package/dist/Display/PasswordStrength/PasswordStrength.js.map +1 -0
  63. package/dist/Display/PasswordStrength/PasswordStrength.module.css.js +4 -0
  64. package/dist/Display/PasswordStrength/PasswordStrength.module.css.js.map +1 -0
  65. package/dist/Display/PasswordStrength/usePasswordStrength.d.ts +42 -0
  66. package/dist/Display/PasswordStrength/usePasswordStrength.js +49 -0
  67. package/dist/Display/PasswordStrength/usePasswordStrength.js.map +1 -0
  68. package/dist/Display/Skeleton/Skeleton.d.ts +8 -0
  69. package/dist/Display/Skeleton/Skeleton.js +11 -0
  70. package/dist/Display/Skeleton/Skeleton.js.map +1 -0
  71. package/dist/Display/Skeleton/Skeleton.module.css.js +4 -0
  72. package/dist/Display/Skeleton/Skeleton.module.css.js.map +1 -0
  73. package/dist/Display/Toast/Toaster.d.ts +1 -0
  74. package/dist/Display/Toast/Toaster.js +45 -0
  75. package/dist/Display/Toast/Toaster.js.map +1 -0
  76. package/dist/Display/Toast/toast.d.ts +12 -0
  77. package/dist/Display/Toast/toast.js +32 -0
  78. package/dist/Display/Toast/toast.js.map +1 -0
  79. package/dist/Display/Tooltip/Tooltip.d.ts +8 -0
  80. package/dist/Display/Tooltip/Tooltip.js +45 -0
  81. package/dist/Display/Tooltip/Tooltip.js.map +1 -0
  82. package/dist/Display/Tooltip/Tooltip.module.css.js +4 -0
  83. package/dist/Display/Tooltip/Tooltip.module.css.js.map +1 -0
  84. package/dist/Display/Tooltip/getArrowDirection.d.ts +1 -0
  85. package/dist/Display/Tooltip/getArrowDirection.js +48 -0
  86. package/dist/Display/Tooltip/getArrowDirection.js.map +1 -0
  87. package/dist/Display/Tooltip/useTooltip.d.ts +8 -0
  88. package/dist/Display/Tooltip/useTooltip.js +48 -0
  89. package/dist/Display/Tooltip/useTooltip.js.map +1 -0
  90. package/dist/Forms/ConfirmationForm/ConfirmationForm.d.ts +15 -0
  91. package/dist/Forms/ConfirmationForm/ConfirmationForm.js +12 -0
  92. package/dist/Forms/ConfirmationForm/ConfirmationForm.js.map +1 -0
  93. package/dist/Forms/ConfirmationForm/ConfirmationForm.module.css.js +4 -0
  94. package/dist/Forms/ConfirmationForm/ConfirmationForm.module.css.js.map +1 -0
  95. package/dist/Inputs/Button/Button.d.ts +83 -0
  96. package/dist/Inputs/Button/Button.js +56 -0
  97. package/dist/Inputs/Button/Button.js.map +1 -0
  98. package/dist/Inputs/Button/Button.module.css.js +4 -0
  99. package/dist/Inputs/Button/Button.module.css.js.map +1 -0
  100. package/dist/Inputs/Checkbox/Checkbox.d.ts +23 -0
  101. package/dist/Inputs/Checkbox/Checkbox.js +55 -0
  102. package/dist/Inputs/Checkbox/Checkbox.js.map +1 -0
  103. package/dist/Inputs/Checkbox/Checkbox.module.css.js +4 -0
  104. package/dist/Inputs/Checkbox/Checkbox.module.css.js.map +1 -0
  105. package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.d.ts +15 -0
  106. package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.js +35 -0
  107. package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -0
  108. package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css.js +4 -0
  109. package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
  110. package/dist/Inputs/Checkbox/CheckboxSelectAll.d.ts +5 -0
  111. package/dist/Inputs/Checkbox/CheckboxSelectAll.js +19 -0
  112. package/dist/Inputs/Checkbox/CheckboxSelectAll.js.map +1 -0
  113. package/dist/Inputs/PasswordInput/PasswordInput.d.ts +31 -0
  114. package/dist/Inputs/PasswordInput/PasswordInput.js +45 -0
  115. package/dist/Inputs/PasswordInput/PasswordInput.js.map +1 -0
  116. package/dist/Inputs/PasswordInput/PasswordInput.module.css.js +4 -0
  117. package/dist/Inputs/PasswordInput/PasswordInput.module.css.js.map +1 -0
  118. package/dist/Inputs/Select/Select.d.ts +22 -0
  119. package/dist/Inputs/Select/Select.js +26 -0
  120. package/dist/Inputs/Select/Select.js.map +1 -0
  121. package/dist/Inputs/Select/Select.module.css.js +4 -0
  122. package/dist/Inputs/Select/Select.module.css.js.map +1 -0
  123. package/dist/Inputs/Switch/Switch.d.ts +43 -0
  124. package/dist/Inputs/Switch/Switch.js +81 -0
  125. package/dist/Inputs/Switch/Switch.js.map +1 -0
  126. package/dist/Inputs/Switch/Switch.module.css.js +4 -0
  127. package/dist/Inputs/Switch/Switch.module.css.js.map +1 -0
  128. package/dist/Inputs/TextAreaInput/TextAreaInput.d.ts +17 -0
  129. package/dist/Inputs/TextAreaInput/TextAreaInput.js +30 -0
  130. package/dist/Inputs/TextAreaInput/TextAreaInput.js.map +1 -0
  131. package/dist/Inputs/TextAreaInput/TextAreaInput.module.css.js +4 -0
  132. package/dist/Inputs/TextAreaInput/TextAreaInput.module.css.js.map +1 -0
  133. package/dist/Inputs/TextInput/TextInput.d.ts +27 -0
  134. package/dist/Inputs/TextInput/TextInput.js +23 -0
  135. package/dist/Inputs/TextInput/TextInput.js.map +1 -0
  136. package/dist/Inputs/TextInput/TextInput.module.css.js +4 -0
  137. package/dist/Inputs/TextInput/TextInput.module.css.js.map +1 -0
  138. package/dist/Inputs/ThemeToggle/ThemeToggleListItem.d.ts +16 -0
  139. package/dist/Inputs/ThemeToggle/ThemeToggleListItem.js +31 -0
  140. package/dist/Inputs/ThemeToggle/ThemeToggleListItem.js.map +1 -0
  141. package/dist/Inputs/ThemeToggle/_index.d.ts +1 -0
  142. package/dist/Layout/Dialog/Dialog.d.ts +13 -0
  143. package/dist/Layout/Dialog/Dialog.js +74 -0
  144. package/dist/Layout/Dialog/Dialog.js.map +1 -0
  145. package/dist/Layout/Dialog/Dialog.module.css.js +4 -0
  146. package/dist/Layout/Dialog/Dialog.module.css.js.map +1 -0
  147. package/dist/Layout/PageLayout/PageLayout.d.ts +28 -0
  148. package/dist/Layout/PageLayout/PageLayout.js +25 -0
  149. package/dist/Layout/PageLayout/PageLayout.js.map +1 -0
  150. package/dist/Layout/PageLayout/PageLayout.module.css.js +4 -0
  151. package/dist/Layout/PageLayout/PageLayout.module.css.js.map +1 -0
  152. package/dist/Layout/PageLayoutPagination/PageLayoutPagination.d.ts +7 -0
  153. package/dist/Layout/PageLayoutPagination/PageLayoutPagination.js +13 -0
  154. package/dist/Layout/PageLayoutPagination/PageLayoutPagination.js.map +1 -0
  155. package/dist/Layout/PageLayoutPagination/PageLayoutPagination.module.css.js +4 -0
  156. package/dist/Layout/PageLayoutPagination/PageLayoutPagination.module.css.js.map +1 -0
  157. package/dist/Layout/PageLayoutTabs/PageLayoutTabs.d.ts +14 -0
  158. package/dist/Layout/PageLayoutTabs/PageLayoutTabs.js +22 -0
  159. package/dist/Layout/PageLayoutTabs/PageLayoutTabs.js.map +1 -0
  160. package/dist/Layout/PageLayoutTabs/PageLayoutTabs.module.css.js +4 -0
  161. package/dist/Layout/PageLayoutTabs/PageLayoutTabs.module.css.js.map +1 -0
  162. package/dist/Layout/Popover/Popover.d.ts +14 -0
  163. package/dist/Layout/Popover/Popover.js +103 -0
  164. package/dist/Layout/Popover/Popover.js.map +1 -0
  165. package/dist/Layout/Popover/Popover.module.css.js +4 -0
  166. package/dist/Layout/Popover/Popover.module.css.js.map +1 -0
  167. package/dist/Layout/SectionWrapper/SectionWrapper.d.ts +14 -0
  168. package/dist/Layout/SectionWrapper/SectionWrapper.js +11 -0
  169. package/dist/Layout/SectionWrapper/SectionWrapper.js.map +1 -0
  170. package/dist/Layout/SectionWrapper/SectionWrapper.module.css.js +4 -0
  171. package/dist/Layout/SectionWrapper/SectionWrapper.module.css.js.map +1 -0
  172. package/dist/Layout/Sidebar/Sidebar.d.ts +15 -0
  173. package/dist/Layout/Sidebar/Sidebar.js +25 -0
  174. package/dist/Layout/Sidebar/Sidebar.js.map +1 -0
  175. package/dist/Layout/Sidebar/Sidebar.module.css.js +4 -0
  176. package/dist/Layout/Sidebar/Sidebar.module.css.js.map +1 -0
  177. package/dist/Layout/Sidebar/SidebarBody/SidebarBody.d.ts +2 -0
  178. package/dist/Layout/Sidebar/SidebarBody/SidebarBody.js +14 -0
  179. package/dist/Layout/Sidebar/SidebarBody/SidebarBody.js.map +1 -0
  180. package/dist/Layout/Sidebar/SidebarBody/SidebarBody.module.css.js +4 -0
  181. package/dist/Layout/Sidebar/SidebarBody/SidebarBody.module.css.js.map +1 -0
  182. package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.d.ts +2 -0
  183. package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.js +14 -0
  184. package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.js.map +1 -0
  185. package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css.js +4 -0
  186. package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css.js.map +1 -0
  187. package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.d.ts +2 -0
  188. package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.js +14 -0
  189. package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.js.map +1 -0
  190. package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css.js +4 -0
  191. package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css.js.map +1 -0
  192. package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.d.ts +2 -0
  193. package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.js +12 -0
  194. package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.js.map +1 -0
  195. package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.d.ts +2 -0
  196. package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.js +11 -0
  197. package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.js.map +1 -0
  198. package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css.js +4 -0
  199. package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css.js.map +1 -0
  200. package/dist/Layout/Table/Table.d.ts +54 -0
  201. package/dist/Layout/Table/Table.js +131 -0
  202. package/dist/Layout/Table/Table.js.map +1 -0
  203. package/dist/Layout/Table/Table.module.css.js +4 -0
  204. package/dist/Layout/Table/Table.module.css.js.map +1 -0
  205. package/dist/Layout/Table/TableFooter.d.ts +1 -0
  206. package/dist/Layout/Table/TableFooter.js +9 -0
  207. package/dist/Layout/Table/TableFooter.js.map +1 -0
  208. package/dist/Layout/Table/TableHeader.d.ts +1 -0
  209. package/dist/Layout/Table/TableHeader.js +9 -0
  210. package/dist/Layout/Table/TableHeader.js.map +1 -0
  211. package/dist/Layout/Table/tableUtils.d.ts +52 -0
  212. package/dist/Layout/Table/tableUtils.js +124 -0
  213. package/dist/Layout/Table/tableUtils.js.map +1 -0
  214. package/dist/Layout/Table/types.d.ts +43 -0
  215. package/dist/Misc/Cursor/Cursor.d.ts +1 -0
  216. package/dist/Misc/Cursor/Cursor.js +59 -0
  217. package/dist/Misc/Cursor/Cursor.js.map +1 -0
  218. package/dist/Misc/Cursor/Cursor.module.css.js +4 -0
  219. package/dist/Misc/Cursor/Cursor.module.css.js.map +1 -0
  220. package/dist/Misc/Logos.d.ts +14 -0
  221. package/dist/Misc/Logos.js +29 -0
  222. package/dist/Misc/Logos.js.map +1 -0
  223. package/dist/Misc/PoweredByBanner/PoweredByBanner.d.ts +3 -0
  224. package/dist/Misc/PoweredByBanner/PoweredByBanner.js +11 -0
  225. package/dist/Misc/PoweredByBanner/PoweredByBanner.js.map +1 -0
  226. package/dist/Misc/PoweredByBanner/PoweredByBanner.module.css.js +4 -0
  227. package/dist/Misc/PoweredByBanner/PoweredByBanner.module.css.js.map +1 -0
  228. package/dist/Misc/Ripple/Ripple.d.ts +21 -0
  229. package/dist/Misc/Ripple/Ripple.js +62 -0
  230. package/dist/Misc/Ripple/Ripple.js.map +1 -0
  231. package/dist/Misc/Ripple/Ripple.module.css.js +4 -0
  232. package/dist/Misc/Ripple/Ripple.module.css.js.map +1 -0
  233. package/dist/Misc/Spinner/Spinner.d.ts +2 -0
  234. package/dist/Misc/Spinner/Spinner.js +12 -0
  235. package/dist/Misc/Spinner/Spinner.js.map +1 -0
  236. package/dist/Misc/Spinner/Spinner.module.css.js +4 -0
  237. package/dist/Misc/Spinner/Spinner.module.css.js.map +1 -0
  238. package/dist/Misc/TransitionAnimation/TransitionAnimation.d.ts +71 -0
  239. package/dist/Misc/TransitionAnimation/TransitionAnimation.js +87 -0
  240. package/dist/Misc/TransitionAnimation/TransitionAnimation.js.map +1 -0
  241. package/dist/Misc/TransitionAnimation/TransitionAnimation.module.css.js +4 -0
  242. package/dist/Misc/TransitionAnimation/TransitionAnimation.module.css.js.map +1 -0
  243. package/dist/Navigation/Breadcrumbs/Breadcrumbs.d.ts +39 -0
  244. package/dist/Navigation/Breadcrumbs/Breadcrumbs.js +36 -0
  245. package/dist/Navigation/Breadcrumbs/Breadcrumbs.js.map +1 -0
  246. package/dist/Navigation/Breadcrumbs/Breadcrumbs.module.css.js +4 -0
  247. package/dist/Navigation/Breadcrumbs/Breadcrumbs.module.css.js.map +1 -0
  248. package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.d.ts +10 -0
  249. package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.js +15 -0
  250. package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.js.map +1 -0
  251. package/dist/Navigation/Breadcrumbs/useBreadcrumbs.d.ts +7 -0
  252. package/dist/Navigation/Breadcrumbs/useBreadcrumbs.js +44 -0
  253. package/dist/Navigation/Breadcrumbs/useBreadcrumbs.js.map +1 -0
  254. package/dist/Navigation/Pagination/Pagination.d.ts +52 -0
  255. package/dist/Navigation/Pagination/Pagination.js +61 -0
  256. package/dist/Navigation/Pagination/Pagination.js.map +1 -0
  257. package/dist/Navigation/Pagination/Pagination.module.css.js +4 -0
  258. package/dist/Navigation/Pagination/Pagination.module.css.js.map +1 -0
  259. package/dist/Navigation/Pagination/PaginationItem.d.ts +8 -0
  260. package/dist/Navigation/Pagination/PaginationItem.js +14 -0
  261. package/dist/Navigation/Pagination/PaginationItem.js.map +1 -0
  262. package/dist/Navigation/Pagination/usePagination.d.ts +6 -0
  263. package/dist/Navigation/Pagination/usePagination.js +38 -0
  264. package/dist/Navigation/Pagination/usePagination.js.map +1 -0
  265. package/dist/Navigation/Tabs/Tab/Tab.d.ts +46 -0
  266. package/dist/Navigation/Tabs/Tab/Tab.js +70 -0
  267. package/dist/Navigation/Tabs/Tab/Tab.js.map +1 -0
  268. package/dist/Navigation/Tabs/Tab/Tab.module.css.js +4 -0
  269. package/dist/Navigation/Tabs/Tab/Tab.module.css.js.map +1 -0
  270. package/dist/Navigation/Tabs/Tabs.d.ts +12 -0
  271. package/dist/Navigation/Tabs/Tabs.js +22 -0
  272. package/dist/Navigation/Tabs/Tabs.js.map +1 -0
  273. package/dist/Navigation/Tabs/TabsBar/TabsBar.d.ts +12 -0
  274. package/dist/Navigation/Tabs/TabsBar/TabsBar.js +44 -0
  275. package/dist/Navigation/Tabs/TabsBar/TabsBar.js.map +1 -0
  276. package/dist/Navigation/Tabs/TabsBar/TabsBar.module.css.js +4 -0
  277. package/dist/Navigation/Tabs/TabsBar/TabsBar.module.css.js.map +1 -0
  278. package/dist/Typography/ClampedText/ClampedText.d.ts +38 -0
  279. package/dist/Typography/ClampedText/ClampedText.js +44 -0
  280. package/dist/Typography/ClampedText/ClampedText.js.map +1 -0
  281. package/dist/Typography/ClampedText/ClampedText.module.css.js +4 -0
  282. package/dist/Typography/ClampedText/ClampedText.module.css.js.map +1 -0
  283. package/dist/Typography/CopyableText/CopyableText.d.ts +16 -0
  284. package/dist/Typography/CopyableText/CopyableText.js +39 -0
  285. package/dist/Typography/CopyableText/CopyableText.js.map +1 -0
  286. package/dist/Typography/CopyableText/CopyableText.module.css.js +4 -0
  287. package/dist/Typography/CopyableText/CopyableText.module.css.js.map +1 -0
  288. package/dist/Typography/PageTitle/PageTitle.d.ts +9 -0
  289. package/dist/Typography/PageTitle/PageTitle.js +10 -0
  290. package/dist/Typography/PageTitle/PageTitle.js.map +1 -0
  291. package/dist/Typography/PageTitle/PageTitle.module.css.js +4 -0
  292. package/dist/Typography/PageTitle/PageTitle.module.css.js.map +1 -0
  293. package/dist/index.css +2392 -0
  294. package/dist/index.js +64 -0
  295. package/dist/index.js.map +1 -0
  296. package/package.json +4 -4
  297. package/CHANGELOG.md +0 -11
  298. package/eslint.config.js +0 -21
  299. package/src/Cards/Card/Card.module.css +0 -27
  300. package/src/Cards/Card/Card.tsx +0 -105
  301. package/src/Cards/CollectionItemCard/CollectionItemCard.module.css +0 -84
  302. package/src/Cards/CollectionItemCard/CollectionItemCard.tsx +0 -170
  303. package/src/Cards/CollectionItemCard/CollectionItemCardActions.tsx +0 -85
  304. package/src/Cards/GlassCard/GlassCard.module.css +0 -71
  305. package/src/Cards/GlassCard/GlassCard.tsx +0 -80
  306. package/src/Display/Accordion/Accordion.module.css +0 -69
  307. package/src/Display/Accordion/Accordion.tsx +0 -61
  308. package/src/Display/Accordion/AccordionItem.tsx +0 -135
  309. package/src/Display/Chip/Chip.module.css +0 -64
  310. package/src/Display/Chip/Chip.tsx +0 -105
  311. package/src/Display/IdentityDisplay/IdentityDisplay.module.css +0 -95
  312. package/src/Display/IdentityDisplay/IdentityDisplay.tsx +0 -119
  313. package/src/Display/InputErrors/InputErrors.module.css +0 -6
  314. package/src/Display/InputErrors/InputErrors.tsx +0 -52
  315. package/src/Display/Kbd/Kbd.module.css +0 -29
  316. package/src/Display/Kbd/Kbd.tsx +0 -39
  317. package/src/Display/Kbd/buttonList.tsx +0 -246
  318. package/src/Display/LabeledValue/LabeledValue.module.css +0 -32
  319. package/src/Display/LabeledValue/LabeledValue.tsx +0 -20
  320. package/src/Display/List/List.module.css +0 -143
  321. package/src/Display/List/List.tsx +0 -298
  322. package/src/Display/PasswordStrength/PasswordStrength.module.css +0 -45
  323. package/src/Display/PasswordStrength/PasswordStrength.tsx +0 -41
  324. package/src/Display/PasswordStrength/usePasswordStrength.tsx +0 -77
  325. package/src/Display/Skeleton/Skeleton.module.css +0 -54
  326. package/src/Display/Skeleton/Skeleton.tsx +0 -28
  327. package/src/Display/Toast/Toaster.tsx +0 -58
  328. package/src/Display/Toast/toast.ts +0 -44
  329. package/src/Display/Tooltip/Tooltip.module.css +0 -128
  330. package/src/Display/Tooltip/Tooltip.tsx +0 -93
  331. package/src/Display/Tooltip/getArrowDirection.ts +0 -55
  332. package/src/Display/Tooltip/useTooltip.tsx +0 -63
  333. package/src/Forms/ConfirmationForm/ConfirmationForm.module.css +0 -23
  334. package/src/Forms/ConfirmationForm/ConfirmationForm.tsx +0 -60
  335. package/src/Inputs/Button/Button.module.css +0 -131
  336. package/src/Inputs/Button/Button.tsx +0 -178
  337. package/src/Inputs/Checkbox/Checkbox.module.css +0 -77
  338. package/src/Inputs/Checkbox/Checkbox.tsx +0 -191
  339. package/src/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css +0 -10
  340. package/src/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.tsx +0 -83
  341. package/src/Inputs/Checkbox/CheckboxSelectAll.tsx +0 -34
  342. package/src/Inputs/PasswordInput/PasswordInput.module.css +0 -111
  343. package/src/Inputs/PasswordInput/PasswordInput.tsx +0 -229
  344. package/src/Inputs/Select/Select.module.css +0 -138
  345. package/src/Inputs/Select/Select.tsx +0 -136
  346. package/src/Inputs/Switch/Switch.module.css +0 -119
  347. package/src/Inputs/Switch/Switch.tsx +0 -195
  348. package/src/Inputs/TextAreaInput/TextAreaInput.module.css +0 -65
  349. package/src/Inputs/TextAreaInput/TextAreaInput.tsx +0 -97
  350. package/src/Inputs/TextInput/TextInput.module.css +0 -112
  351. package/src/Inputs/TextInput/TextInput.tsx +0 -142
  352. package/src/Inputs/ThemeToggle/ThemeToggleListItem.tsx +0 -80
  353. package/src/Inputs/ThemeToggle/_index.ts +0 -1
  354. package/src/Layout/Dialog/Dialog.module.css +0 -15
  355. package/src/Layout/Dialog/Dialog.tsx +0 -115
  356. package/src/Layout/PageLayout/PageLayout.module.css +0 -20
  357. package/src/Layout/PageLayout/PageLayout.tsx +0 -79
  358. package/src/Layout/PageLayoutPagination/PageLayoutPagination.module.css +0 -5
  359. package/src/Layout/PageLayoutPagination/PageLayoutPagination.tsx +0 -40
  360. package/src/Layout/PageLayoutTabs/PageLayoutTabs.module.css +0 -3
  361. package/src/Layout/PageLayoutTabs/PageLayoutTabs.tsx +0 -62
  362. package/src/Layout/Popover/Popover.module.css +0 -9
  363. package/src/Layout/Popover/Popover.tsx +0 -145
  364. package/src/Layout/SectionWrapper/SectionWrapper.module.css +0 -31
  365. package/src/Layout/SectionWrapper/SectionWrapper.tsx +0 -62
  366. package/src/Layout/Sidebar/Sidebar.module.css +0 -17
  367. package/src/Layout/Sidebar/Sidebar.tsx +0 -39
  368. package/src/Layout/Sidebar/SidebarBody/SidebarBody.module.css +0 -31
  369. package/src/Layout/Sidebar/SidebarBody/SidebarBody.tsx +0 -18
  370. package/src/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css +0 -20
  371. package/src/Layout/Sidebar/SidebarDrawer/SidebarDrawer.tsx +0 -19
  372. package/src/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css +0 -35
  373. package/src/Layout/Sidebar/SidebarFooter/SidebarFooter.tsx +0 -19
  374. package/src/Layout/Sidebar/SidebarHeader/SidebarHeader.tsx +0 -14
  375. package/src/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css +0 -12
  376. package/src/Layout/Sidebar/SidebarViewport/SidebarViewport.tsx +0 -11
  377. package/src/Layout/Table/Table.module.css +0 -46
  378. package/src/Layout/Table/Table.tsx +0 -222
  379. package/src/Layout/Table/TableFooter.tsx +0 -4
  380. package/src/Layout/Table/TableHeader.tsx +0 -4
  381. package/src/Layout/Table/tableUtils.ts +0 -142
  382. package/src/Layout/Table/types.ts +0 -48
  383. package/src/Misc/Cursor/Cursor.module.css +0 -31
  384. package/src/Misc/Cursor/Cursor.tsx +0 -77
  385. package/src/Misc/Logos.tsx +0 -230
  386. package/src/Misc/PoweredByBanner/PoweredByBanner.module.css +0 -20
  387. package/src/Misc/PoweredByBanner/PoweredByBanner.tsx +0 -17
  388. package/src/Misc/Ripple/Ripple.module.css +0 -25
  389. package/src/Misc/Ripple/Ripple.tsx +0 -126
  390. package/src/Misc/Spinner/Spinner.module.css +0 -38
  391. package/src/Misc/Spinner/Spinner.tsx +0 -36
  392. package/src/Misc/TransitionAnimation/TransitionAnimation.module.css +0 -131
  393. package/src/Misc/TransitionAnimation/TransitionAnimation.tsx +0 -166
  394. package/src/Navigation/Breadcrumbs/Breadcrumbs.module.css +0 -22
  395. package/src/Navigation/Breadcrumbs/Breadcrumbs.tsx +0 -127
  396. package/src/Navigation/Breadcrumbs/BreadcrumbsItem.tsx +0 -31
  397. package/src/Navigation/Breadcrumbs/useBreadcrumbs.tsx +0 -74
  398. package/src/Navigation/Pagination/Pagination.module.css +0 -41
  399. package/src/Navigation/Pagination/Pagination.tsx +0 -187
  400. package/src/Navigation/Pagination/PaginationItem.tsx +0 -28
  401. package/src/Navigation/Pagination/usePagination.tsx +0 -65
  402. package/src/Navigation/Tabs/Tab/Tab.module.css +0 -43
  403. package/src/Navigation/Tabs/Tab/Tab.tsx +0 -155
  404. package/src/Navigation/Tabs/Tabs.tsx +0 -37
  405. package/src/Navigation/Tabs/TabsBar/TabsBar.module.css +0 -47
  406. package/src/Navigation/Tabs/TabsBar/TabsBar.tsx +0 -92
  407. package/src/Typography/ClampedText/ClampedText.module.css +0 -5
  408. package/src/Typography/ClampedText/ClampedText.tsx +0 -77
  409. package/src/Typography/CopyableText/CopyableText.module.css +0 -21
  410. package/src/Typography/CopyableText/CopyableText.tsx +0 -120
  411. package/src/Typography/PageTitle/PageTitle.module.css +0 -47
  412. package/src/Typography/PageTitle/PageTitle.tsx +0 -35
  413. package/src/declaration.d.ts +0 -4
  414. package/tsconfig.json +0 -32
  415. /package/{src/Cards/CollectionItemCard/_index.ts → dist/Cards/CollectionItemCard/_index.d.ts} +0 -0
  416. /package/{src/Cards/_index.ts → dist/Cards/_index.d.ts} +0 -0
  417. /package/{src/Display/Accordion/_index.ts → dist/Display/Accordion/_index.d.ts} +0 -0
  418. /package/{src/Display/Kbd/_index.ts → dist/Display/Kbd/_index.d.ts} +0 -0
  419. /package/{src/Display/Toast/_index.ts → dist/Display/Toast/_index.d.ts} +0 -0
  420. /package/{src/Display/_index.ts → dist/Display/_index.d.ts} +0 -0
  421. /package/{src/Forms/_index.ts → dist/Forms/_index.d.ts} +0 -0
  422. /package/{src/Inputs/Checkbox/_index.ts → dist/Inputs/Checkbox/_index.d.ts} +0 -0
  423. /package/{src/Inputs/_index.ts → dist/Inputs/_index.d.ts} +0 -0
  424. /package/{src/Layout/Sidebar/_index.ts → dist/Layout/Sidebar/_index.d.ts} +0 -0
  425. /package/{src/Layout/Table/_index.ts → dist/Layout/Table/_index.d.ts} +0 -0
  426. /package/{src/Layout/_index.ts → dist/Layout/_index.d.ts} +0 -0
  427. /package/{src/Misc/_index.ts → dist/Misc/_index.d.ts} +0 -0
  428. /package/{src/Navigation/Breadcrumbs/_index.ts → dist/Navigation/Breadcrumbs/_index.d.ts} +0 -0
  429. /package/{src/Navigation/Pagination/_index.ts → dist/Navigation/Pagination/_index.d.ts} +0 -0
  430. /package/{src/Navigation/Tabs/_index.ts → dist/Navigation/Tabs/_index.d.ts} +0 -0
  431. /package/{src/Navigation/_index.ts → dist/Navigation/_index.d.ts} +0 -0
  432. /package/{src/Typography/_index.ts → dist/Typography/_index.d.ts} +0 -0
  433. /package/{src/index.ts → dist/index.d.ts} +0 -0
@@ -1,80 +0,0 @@
1
- "use client";
2
-
3
- import { useMousePosition } from "@studiocubics/hooks";
4
- import type {
5
- PolymorphicComponentProps,
6
- PolymorphicComponentType,
7
- } from "@studiocubics/types";
8
- import { mergeRefs, cn } from "@studiocubics/utils";
9
- import { type ElementType, useRef, useEffect } from "react";
10
- import styles from "./GlassCard.module.css";
11
-
12
- const defaultElement = "div";
13
- type DefaultElement = typeof defaultElement;
14
-
15
- export type GlassCardProps<C extends ElementType = DefaultElement> = Omit<
16
- PolymorphicComponentProps<C, object>,
17
- "ref"
18
- >;
19
-
20
- // Create the base component with forwardRef
21
- function GlassCardBase<C extends ElementType = DefaultElement>({
22
- as,
23
- children,
24
- className,
25
- ref,
26
- ...restProps
27
- }: GlassCardProps<C>) {
28
- const Component = (as || defaultElement) as ElementType;
29
- const { mousePosition } = useMousePosition({ includeTouch: false });
30
- const cardRef = useRef<HTMLDivElement>(null);
31
-
32
- useEffect(() => {
33
- if (!cardRef.current) return;
34
- if (!mousePosition.x || !mousePosition.y) return;
35
-
36
- const rect = cardRef.current.getBoundingClientRect();
37
- const x = mousePosition.x - rect.left;
38
- const y = mousePosition.y - rect.top;
39
- const xCenter = rect.left + rect.width / 2;
40
- const yCenter = rect.top + rect.height / 2;
41
-
42
- const dx = (mousePosition.x - xCenter) / rect.width;
43
- const dy = (mousePosition.y - yCenter) / rect.height;
44
-
45
- // Angle from card center to mouse
46
- const angle = Math.atan2(dy, dx) * (180 / Math.PI) + 270;
47
-
48
- // Distance normalized against window width/height
49
- const dxGlobal = mousePosition.x - xCenter;
50
- const dyGlobal = mousePosition.y - yCenter;
51
- const tX = Math.min(Math.abs(dxGlobal) / window.innerWidth, 1);
52
- const tY = Math.min(Math.abs(dyGlobal) / window.innerHeight, 1);
53
- const t = Math.min(tX + tY, 1); // Manhattan distance capped at 1
54
- const intensity = 1 - 0.8 * t; // maps to 0.2..1
55
-
56
- cardRef.current.style.setProperty("--mouse-x", `${x}px`);
57
- cardRef.current.style.setProperty("--mouse-y", `${y}px`);
58
- cardRef.current.style.setProperty("--gradient-angle", `${angle}deg`);
59
- cardRef.current.style.setProperty(
60
- "--glass-reflection-intensity",
61
- `${intensity}`
62
- );
63
- }, [mousePosition]);
64
-
65
- const componentProps = {
66
- ref: mergeRefs(ref, cardRef),
67
- className: cn(className, styles.root),
68
- ...restProps,
69
- };
70
-
71
- return <Component {...componentProps}>{children}</Component>;
72
- }
73
-
74
- GlassCardBase.displayName = "GlassCard";
75
-
76
- // Type assertion to make it polymorphic
77
- export const GlassCard = GlassCardBase as PolymorphicComponentType<
78
- object,
79
- DefaultElement
80
- >;
@@ -1,69 +0,0 @@
1
- .summary {
2
- cursor: pointer;
3
- display: flex;
4
- align-items: center;
5
- gap: var(--spacing-gap);
6
- padding: var(--spacing-gap);
7
- border-radius: var(--shape-br-md);
8
- position: relative;
9
- isolation: isolate;
10
- transition: all var(--transition-time) var(--transition-tf);
11
- /* background: var(--color-background); */
12
- &:hover {
13
- background: var(--color-background-faint);
14
- }
15
- }
16
- .highlight {
17
- position: absolute;
18
- inset: 0;
19
- z-index: -1;
20
- }
21
- .summaryContent {
22
- flex: 1;
23
- border-radius: calc(var(--shape-br-md) - var(--spacing-gap));
24
- container-type: inline-size;
25
- overflow: hidden;
26
- }
27
- .marker {
28
- flex: 0 0 var(--spacing-gap-4);
29
- width: var(--spacing-gap-4);
30
- height: var(--spacing-gap-4);
31
- position: relative;
32
- & > svg {
33
- position: absolute;
34
- inset: 0;
35
- }
36
- }
37
- .root {
38
- background: var(--color-background);
39
- border-radius: var(--shape-br-md);
40
- overflow: hidden;
41
- transition: margin-block var(--transition-time) var(--transition-tf);
42
- margin-block: 0;
43
-
44
- @media (prefers-reduced-motion: no-preference) {
45
- interpolate-size: allow-keywords;
46
- }
47
- &::details-content {
48
- overflow: hidden;
49
- max-height: 0;
50
- transition:
51
- content-visibility var(--transition-time) allow-discrete,
52
- max-height var(--transition-time) var(--transition-tf);
53
- }
54
- &[open] {
55
- margin-block: var(--spacing-gap-2);
56
- & > .summary {
57
- background: var(--color-surface);
58
- }
59
- &::details-content {
60
- max-height: 999px;
61
- @supports (interpolate-size: allow-keywords) {
62
- max-height: auto;
63
- }
64
- }
65
- }
66
- }
67
- .content {
68
- padding: var(--spacing-gap-3);
69
- }
@@ -1,61 +0,0 @@
1
- "use client";
2
-
3
- import {
4
- createContext,
5
- type ReactNode,
6
- useCallback,
7
- useRef,
8
- useState,
9
- } from "react";
10
-
11
- interface AccordionContextProps {
12
- values: boolean[];
13
- register: () => number;
14
- update: (index: number, checked: boolean) => void;
15
- }
16
- interface AccordionProviderProps {
17
- children: ReactNode;
18
- exclusive?: boolean;
19
- onChange?: (checked: boolean[]) => void;
20
- }
21
-
22
- export const AccordionContext = createContext<AccordionContextProps | null>(
23
- null,
24
- );
25
-
26
- export function Accordion({
27
- children,
28
- exclusive = false,
29
- onChange,
30
- }: AccordionProviderProps) {
31
- const [values, setValues] = useState<boolean[]>([]);
32
- const indexRef = useRef(-1);
33
-
34
- const register = useCallback(() => {
35
- const index = indexRef.current++;
36
- setValues((prev) => [...prev, false]);
37
- return index;
38
- }, []);
39
-
40
- const update = useCallback(
41
- (index: number, checked: boolean) => {
42
- console.log("index", index, checked);
43
-
44
- setValues((prev) => {
45
- let next =
46
- exclusive && checked ? new Array(prev.length).fill(false) : [...prev];
47
- next[index] = checked;
48
- onChange?.(next);
49
- return next;
50
- });
51
- },
52
- [exclusive, onChange],
53
- );
54
- const context = { values, register, update };
55
-
56
- return (
57
- <AccordionContext.Provider value={context}>
58
- {children}
59
- </AccordionContext.Provider>
60
- );
61
- }
@@ -1,135 +0,0 @@
1
- "use client";
2
-
3
- import {
4
- type ComponentProps,
5
- type ReactNode,
6
- type ToggleEvent,
7
- useContext,
8
- useEffect,
9
- useRef,
10
- useState,
11
- } from "react";
12
- import { AccordionContext } from "./Accordion";
13
- import styles from "./Accordion.module.css";
14
- import { cn, mergeRefs } from "@studiocubics/utils";
15
- import { GlassCard } from "../../Cards/GlassCard/GlassCard";
16
-
17
- export type AccordionProps = {
18
- summary: ReactNode;
19
- onToggle?: (e: ToggleEvent<HTMLDetailsElement>, current: boolean) => void;
20
- openMarker?: ReactNode;
21
- closeMarker?: ReactNode;
22
- highlightOpen?: boolean;
23
- slotProps?: {
24
- marker?: ComponentProps<"span">;
25
- summary?: ComponentProps<"summary">;
26
- summaryContent?: ComponentProps<"div">;
27
- content?: ComponentProps<"div">;
28
- };
29
- } & ComponentProps<"details">;
30
-
31
- export function AccordionItem(props: AccordionProps) {
32
- const {
33
- summary,
34
- open: htmlOpen,
35
- children,
36
- className,
37
- onToggle,
38
- highlightOpen = true,
39
- openMarker = <OpenMarkerIcon />,
40
- closeMarker = <CloseMarkerIcon />,
41
- slotProps = {},
42
- ref,
43
- ...rest
44
- } = props;
45
-
46
- const [index, setIndex] = useState<number | null>(null);
47
- const isRegistered = useRef(false);
48
- const [uncontrolledOpen, setUncontrolledOpen] = useState(!!htmlOpen);
49
- const itemRef = useRef<HTMLDetailsElement | null>(null);
50
- const group = useContext(AccordionContext);
51
-
52
- const open = group && index !== null ? group.values[index] : uncontrolledOpen;
53
-
54
- const handleToggle = async (e: ToggleEvent<HTMLDetailsElement>) => {
55
- const next = e.currentTarget.open;
56
- if (group && index !== null) group.update(index, next);
57
- else setUncontrolledOpen(next);
58
- onToggle?.(e, next);
59
- if (next) {
60
- itemRef.current?.scrollIntoView({
61
- block: "nearest",
62
- inline: "nearest",
63
- behavior: "smooth",
64
- });
65
- }
66
- };
67
-
68
- const componentProps = {
69
- open,
70
- onToggle: handleToggle,
71
- className: cn(className, styles.root, open ? styles.open : ""),
72
- ref: mergeRefs(ref, itemRef),
73
- ...rest,
74
- };
75
- // Register with group if present
76
- useEffect(() => {
77
- if (!group || isRegistered.current) return;
78
- isRegistered.current = true;
79
- setIndex(group.register());
80
- }, [group]);
81
-
82
- return (
83
- <details {...componentProps}>
84
- <summary className={cn(className, styles.summary)}>
85
- {open && highlightOpen && <GlassCard className={styles.highlight} />}
86
- <div
87
- {...slotProps.summaryContent}
88
- className={cn(
89
- styles.summaryContent,
90
- slotProps.summaryContent?.className,
91
- )}
92
- >
93
- {summary}
94
- </div>
95
- <span {...slotProps.marker} className={cn(styles.marker)}>
96
- {open ? closeMarker : openMarker}
97
- </span>
98
- </summary>
99
- <div
100
- {...slotProps.content}
101
- className={cn(styles.content, slotProps.content?.className)}
102
- >
103
- {children}
104
- </div>
105
- </details>
106
- );
107
- }
108
- function OpenMarkerIcon(props: ComponentProps<"svg">) {
109
- return (
110
- <svg
111
- {...props}
112
- xmlns="http://www.w3.org/2000/svg"
113
- viewBox="0 0 24 24"
114
- fill="none"
115
- strokeWidth="2.3"
116
- stroke="currentColor"
117
- >
118
- <path d="m6 9 6 6 6-6" />
119
- </svg>
120
- );
121
- }
122
- function CloseMarkerIcon(props: ComponentProps<"svg">) {
123
- return (
124
- <svg
125
- {...props}
126
- xmlns="http://www.w3.org/2000/svg"
127
- viewBox="0 0 24 24"
128
- fill="none"
129
- strokeWidth="2.3"
130
- stroke="currentColor"
131
- >
132
- <path d="m18 15-6-6-6 6" />
133
- </svg>
134
- );
135
- }
@@ -1,64 +0,0 @@
1
- .root {
2
- --badge-outline-color: var(--color-outline);
3
- --badge-color: var(--color-on-surface);
4
- --badge-background: var(--color-surface);
5
- color: var(--badge-color);
6
- border: 1px solid var(--badge-outline-color);
7
- background: var(--badge-background);
8
- width: fit-content;
9
- font-size: 0.9em;
10
- display: flex;
11
- align-items: center;
12
- flex-wrap: wrap;
13
- gap: var(--spacing-gap);
14
- }
15
- .outlined {
16
- background: none;
17
- }
18
- .contained {
19
- border: none;
20
- }
21
- .size_sm {
22
- padding: calc(var(--spacing-gap) / 2) calc(1.618 * (var(--spacing-gap) / 2));
23
- font-size: 0.8em;
24
- border-radius: var(--shape-br-xs);
25
- }
26
- .size_md {
27
- padding: calc(var(--spacing-gap-2) / 2)
28
- calc(1.618 * (var(--spacing-gap-2) / 2));
29
- border-radius: var(--shape-br-sm);
30
- }
31
-
32
- .size_lg {
33
- padding: calc(var(--spacing-gap-3) / 2)
34
- calc(1.618 * (var(--spacing-gap-3) / 2));
35
- font-size: 1em;
36
- border-radius: var(--shape-br-sm);
37
- }
38
- .root[data-color="primary"] {
39
- --badge-color: var(--color-primary);
40
- --badge-background: none;
41
- --badge-outline-color: var(--color-primary);
42
- }
43
- .root[data-color="secondary"] {
44
- --badge-color: var(--color-secondary);
45
- --badge-background: none;
46
- --badge-outline-color: var(--color-secondary);
47
- }
48
- .root[data-color="error"] {
49
- --badge-color: var(--color-error);
50
- --badge-background: none;
51
- --badge-outline-color: var(--color-error);
52
- }
53
- .contained[data-color="primary"] {
54
- --badge-color: var(--color-on-primary);
55
- --badge-background: var(--color-primary);
56
- }
57
- .contained[data-color="secondary"] {
58
- --badge-color: var(--color-on-secondary);
59
- --badge-background: var(--color-secondary);
60
- }
61
- .contained[data-color="error"] {
62
- --badge-color: var(--color-on-error);
63
- --badge-background: var(--color-error);
64
- }
@@ -1,105 +0,0 @@
1
- "use client";
2
-
3
- import type {
4
- PolymorphicComponentProps,
5
- PolymorphicComponentType,
6
- } from "@studiocubics/types";
7
- import { type ElementType } from "react";
8
-
9
- import { cn } from "@studiocubics/utils";
10
- import styles from "./Chip.module.css";
11
-
12
- const defaultElement = "span";
13
- type DefaultElement = typeof defaultElement;
14
-
15
- /**
16
- * Props specific to the Chip component.
17
- *
18
- * These extend the intrinsic element props of whatever element is passed via `as`.
19
- * @group Chip
20
- * @category inputs
21
- */
22
- export interface ChipBaseProps {
23
- /** Visual style variant.
24
- * @default "outlined"
25
- */
26
- variant?: "contained" | "outlined";
27
-
28
- /** Expands width to 100%. */
29
- fullWidth?: boolean;
30
-
31
- /** Chip size.
32
- * @default "md"
33
- */
34
- size?: "sm" | "md" | "lg";
35
-
36
- color?: "primary" | "secondary" | "error";
37
- }
38
-
39
- /**
40
- * Polymorphic props for the Chip component.
41
- *
42
- * `C` defines the element type rendered by the component (e.g. `"Chip"`, `"a"`, `"div"`).
43
- * All intrinsic props for `C` are supported unless overridden by `ChipBaseProps`.
44
- *
45
- * @group Chip
46
- * @category inputs
47
- */
48
- export type ChipProps<C extends ElementType = DefaultElement> =
49
- PolymorphicComponentProps<C, ChipBaseProps>;
50
-
51
- /**
52
- * Base implementation for the Chip component.
53
- *
54
- * This is a polymorphic component that defaults to rendering a `<Chip>`.
55
- * Use the `as` prop to change the underlying element.
56
- *
57
- * @typeParam C - The intrinsic or custom element type to render.
58
- *
59
- * @group Chip
60
- * @category inputs
61
- */
62
- function ChipBase<C extends ElementType = DefaultElement>(props: ChipProps<C>) {
63
- const {
64
- as,
65
- className,
66
- variant = "outlined",
67
- size = "md",
68
- fullWidth = false,
69
- color,
70
- square,
71
- ...restProps
72
- } = props;
73
- const Component = (as || defaultElement) as ElementType;
74
-
75
- const componentProps = {
76
- className: cn(
77
- className,
78
- styles.root,
79
- square ? styles.square : "",
80
- fullWidth ? styles.fullWidth : "",
81
- styles[`size_${size}`],
82
- styles[variant]
83
- ),
84
- "data-color": color,
85
- ...restProps,
86
- };
87
-
88
- return <Component {...componentProps} />;
89
- }
90
- ChipBase.displayName = "Chip";
91
-
92
- /**
93
- * A polymorphic Chip component.
94
- *
95
- * ```tsx
96
- * <Chip as="a" href="/docs">Read docs</Chip>
97
- * ```
98
- *
99
- * @group Chip
100
- * @category inputs
101
- */
102
- export const Chip = ChipBase as PolymorphicComponentType<
103
- ChipBaseProps,
104
- DefaultElement
105
- >;
@@ -1,95 +0,0 @@
1
- .root {
2
- position: relative;
3
- display: flex;
4
- flex-direction: column;
5
- padding: var(--spacing-gap-2);
6
- border-radius: var(--shape-br-md);
7
- overflow: hidden;
8
- transition:
9
- padding var(--transition-time) var(--transition-tf),
10
- width 0.1s var(--transition-time) var(--transition-tf),
11
- color var(--transition-time) var(--transition-tf),
12
- background var(--transition-time) var(--transition-tf);
13
- }
14
- .clickable {
15
- cursor: pointer;
16
- &:hover {
17
- color: var(--color-on-primary-container);
18
- background: var(--color-primary-container);
19
- }
20
- }
21
- .main {
22
- display: flex;
23
- align-items: center;
24
- gap: var(--spacing-gap-2);
25
- }
26
- .image {
27
- display: flex;
28
- justify-content: center;
29
- align-items: center;
30
- & > img {
31
- width: 48px;
32
- height: 48px;
33
- object-fit: cover;
34
- overflow: hidden;
35
- border-radius: 50%;
36
- }
37
- }
38
- .details {
39
- color: inherit;
40
- display: flex;
41
- flex-direction: column;
42
- & h4 {
43
- font-weight: bold;
44
- font-size: 1.1em;
45
- overflow: hidden;
46
- white-space: nowrap;
47
- text-overflow: ellipsis;
48
- text-align: left;
49
- }
50
- & > p {
51
- text-align: left;
52
- font-size: 0.9em;
53
- font-weight: 400;
54
- overflow: hidden;
55
- white-space: nowrap;
56
- text-overflow: ellipsis;
57
- color: var(--color-on-background-faint);
58
- }
59
- }
60
- .desc {
61
- font-size: 0.9em;
62
- }
63
- .image-only {
64
- padding: 0;
65
- & .main,
66
- & .image {
67
- width: 100%;
68
- }
69
- .details {
70
- display: none;
71
- }
72
- .desc {
73
- display: none;
74
- }
75
- }
76
- .square {
77
- .main {
78
- flex-direction: column;
79
- align-items: center;
80
- }
81
- .details {
82
- & > h4,
83
- & > p {
84
- text-align: center;
85
- }
86
- }
87
- .desc {
88
- display: none;
89
- }
90
- }
91
- .compact {
92
- .desc {
93
- display: none;
94
- }
95
- }