@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
package/dist/index.js ADDED
@@ -0,0 +1,64 @@
1
+ export { Card } from './Cards/Card/Card.js';
2
+ export { CollectionItemCard } from './Cards/CollectionItemCard/CollectionItemCard.js';
3
+ export { CollectionItemCardActions } from './Cards/CollectionItemCard/CollectionItemCardActions.js';
4
+ export { GlassCard } from './Cards/GlassCard/GlassCard.js';
5
+ export { Accordion, AccordionContext } from './Display/Accordion/Accordion.js';
6
+ export { AccordionItem } from './Display/Accordion/AccordionItem.js';
7
+ export { Chip } from './Display/Chip/Chip.js';
8
+ export { IdentityDisplay } from './Display/IdentityDisplay/IdentityDisplay.js';
9
+ export { InputErrors } from './Display/InputErrors/InputErrors.js';
10
+ export { Kbd } from './Display/Kbd/Kbd.js';
11
+ export { buttonList } from './Display/Kbd/buttonList.js';
12
+ export { LabeledValue } from './Display/LabeledValue/LabeledValue.js';
13
+ export { List, ListItem, useList } from './Display/List/List.js';
14
+ export { Skeleton } from './Display/Skeleton/Skeleton.js';
15
+ export { Toaster } from './Display/Toast/Toaster.js';
16
+ export { dismiss, subscribe, toast } from './Display/Toast/toast.js';
17
+ export { Tooltip } from './Display/Tooltip/Tooltip.js';
18
+ export { useTooltip } from './Display/Tooltip/useTooltip.js';
19
+ export { ConfirmationForm } from './Forms/ConfirmationForm/ConfirmationForm.js';
20
+ export { Button, ButtonBase } from './Inputs/Button/Button.js';
21
+ export { Checkbox } from './Inputs/Checkbox/Checkbox.js';
22
+ export { CheckboxSelectAll } from './Inputs/Checkbox/CheckboxSelectAll.js';
23
+ export { CheckboxGroup, CheckboxGroupContext } from './Inputs/Checkbox/CheckboxGroup/CheckboxGroup.js';
24
+ export { PasswordInput } from './Inputs/PasswordInput/PasswordInput.js';
25
+ export { Select } from './Inputs/Select/Select.js';
26
+ export { Switch } from './Inputs/Switch/Switch.js';
27
+ export { TextInput } from './Inputs/TextInput/TextInput.js';
28
+ export { TextAreaInput } from './Inputs/TextAreaInput/TextAreaInput.js';
29
+ export { ThemeToggleListItem } from './Inputs/ThemeToggle/ThemeToggleListItem.js';
30
+ export { Dialog } from './Layout/Dialog/Dialog.js';
31
+ export { PageLayout } from './Layout/PageLayout/PageLayout.js';
32
+ export { PageLayoutPagination } from './Layout/PageLayoutPagination/PageLayoutPagination.js';
33
+ export { PageLayoutTabs } from './Layout/PageLayoutTabs/PageLayoutTabs.js';
34
+ export { Popover } from './Layout/Popover/Popover.js';
35
+ export { SectionWrapper } from './Layout/SectionWrapper/SectionWrapper.js';
36
+ export { SIDEBAR_COOKIE, SIDEBAR_COOKIE_MAX_AGE, Sidebar, useSidebar } from './Layout/Sidebar/Sidebar.js';
37
+ export { SidebarBody } from './Layout/Sidebar/SidebarBody/SidebarBody.js';
38
+ export { SidebarDrawer } from './Layout/Sidebar/SidebarDrawer/SidebarDrawer.js';
39
+ export { SidebarFooter } from './Layout/Sidebar/SidebarFooter/SidebarFooter.js';
40
+ export { SidebarHeader } from './Layout/Sidebar/SidebarHeader/SidebarHeader.js';
41
+ export { SidebarViewport } from './Layout/Sidebar/SidebarViewport/SidebarViewport.js';
42
+ export { Table, TableCell, renderCell, useTable } from './Layout/Table/Table.js';
43
+ export { TableFooter } from './Layout/Table/TableFooter.js';
44
+ export { TableHeader } from './Layout/Table/TableHeader.js';
45
+ export { getColumnCount, isAOA, isAOO, isOCR, isOOA } from './Layout/Table/tableUtils.js';
46
+ export { eventWithRipple, useRipple } from './Misc/Ripple/Ripple.js';
47
+ export { PoweredByBanner } from './Misc/PoweredByBanner/PoweredByBanner.js';
48
+ export { Cursor } from './Misc/Cursor/Cursor.js';
49
+ export { CubicsUILogo, StudioCubicsLogo } from './Misc/Logos.js';
50
+ export { Spinner } from './Misc/Spinner/Spinner.js';
51
+ export { TransitionAnimation } from './Misc/TransitionAnimation/TransitionAnimation.js';
52
+ export { Pagination } from './Navigation/Pagination/Pagination.js';
53
+ export { PaginationItem } from './Navigation/Pagination/PaginationItem.js';
54
+ export { usePagination } from './Navigation/Pagination/usePagination.js';
55
+ export { Breadcrumbs, ChevronRightIcon, EllipsisIcon } from './Navigation/Breadcrumbs/Breadcrumbs.js';
56
+ export { BreadcrumbsItem } from './Navigation/Breadcrumbs/BreadcrumbsItem.js';
57
+ export { useBreadcrumbs } from './Navigation/Breadcrumbs/useBreadcrumbs.js';
58
+ export { Tabs, useTabs } from './Navigation/Tabs/Tabs.js';
59
+ export { Tab } from './Navigation/Tabs/Tab/Tab.js';
60
+ export { TabsBar } from './Navigation/Tabs/TabsBar/TabsBar.js';
61
+ export { PageTitle } from './Typography/PageTitle/PageTitle.js';
62
+ export { ClampedText } from './Typography/ClampedText/ClampedText.js';
63
+ export { CopyIcon, CopyableText } from './Typography/CopyableText/CopyableText.js';
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "access": "public"
6
6
  },
7
7
  "private": false,
8
- "version": "0.0.1",
8
+ "version": "0.0.2",
9
9
  "keywords": [
10
10
  "@studiocubics",
11
11
  "cubics",
@@ -35,9 +35,9 @@
35
35
  "react-dom": ">= 19"
36
36
  },
37
37
  "dependencies": {
38
- "@studiocubics/hooks": "^0.0.1",
39
- "@studiocubics/utils": "^0.0.1",
40
- "@studiocubics/types": "^0.0.1"
38
+ "@studiocubics/utils": "^0.0.2",
39
+ "@studiocubics/hooks": "^0.0.2",
40
+ "@studiocubics/types": "^0.0.2"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@eslint/js": "^9.39.1",
package/CHANGELOG.md DELETED
@@ -1,11 +0,0 @@
1
- # @studiocubics/components
2
-
3
- ## 0.0.1
4
-
5
- ### Patch Changes
6
-
7
- - First publish inshallah!
8
- - Updated dependencies
9
- - @studiocubics/hooks@0.0.1
10
- - @studiocubics/types@0.0.1
11
- - @studiocubics/utils@0.0.1
package/eslint.config.js DELETED
@@ -1,21 +0,0 @@
1
- import js from "@eslint/js";
2
- import globals from "globals";
3
- import reactHooks from "eslint-plugin-react-hooks";
4
- import tseslint from "typescript-eslint";
5
- import { defineConfig, globalIgnores } from "eslint/config";
6
-
7
- export default defineConfig([
8
- globalIgnores(["dist"]),
9
- {
10
- files: ["**/*.{ts,tsx}"],
11
- extends: [
12
- js.configs.recommended,
13
- tseslint.configs.recommended,
14
- reactHooks.configs.flat.recommended,
15
- ],
16
- languageOptions: {
17
- ecmaVersion: 2020,
18
- globals: globals.browser,
19
- },
20
- },
21
- ]);
@@ -1,27 +0,0 @@
1
- .square {
2
- aspect-ratio: 1;
3
- }
4
- .fullWidth {
5
- width: 100%;
6
- }
7
-
8
- .size_sm {
9
- padding: var(--spacing-gap-2);
10
- border-radius: var(--shape-br-sm);
11
- }
12
- .size_md {
13
- padding: var(--spacing-gap-4);
14
- border-radius: var(--shape-br-md);
15
- }
16
- .size_lg {
17
- padding: var(--spacing-gap-6);
18
- border-radius: var(--shape-br-lg);
19
- }
20
-
21
- .outlined {
22
- border: 1px solid var(--color-outline);
23
- background: none;
24
- }
25
- .contained {
26
- background: var(--color-surface-alpha);
27
- }
@@ -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 "./Card.module.css";
11
-
12
- /**
13
- * Props specific to the Card component.
14
- *
15
- * These extend the intrinsic element props of whatever element is passed via `as`.
16
- * @group Card
17
- * @category inputs
18
- */
19
- export interface CardBaseProps {
20
- /** Visual style variant.
21
- * @default "contained"
22
- */
23
- variant?: "contained" | "outlined";
24
-
25
- /** Expands width to 100%. */
26
- fullWidth?: boolean;
27
-
28
- /** Force a 1:1 aspect ratio. */
29
- square?: boolean;
30
-
31
- /** Card size.
32
- * @default "md"
33
- */
34
- size?: "sm" | "md" | "lg";
35
- }
36
- const defaultElement = "div";
37
- type DefaultElement = typeof defaultElement;
38
- /**
39
- * Polymorphic props for the Card component.
40
- *
41
- * `C` defines the element type rendered by the component (e.g. `"Card"`, `"a"`, `"div"`).
42
- * All intrinsic props for `C` are supported unless overridden by `CardBaseProps`.
43
- *
44
- * @group Card
45
- * @category inputs
46
- */
47
- export type CardProps<C extends ElementType = DefaultElement> =
48
- PolymorphicComponentProps<C, CardBaseProps>;
49
-
50
- /**
51
- * Base implementation for the Card component.
52
- *
53
- * This is a polymorphic component that defaults to rendering a `<Card>`.
54
- * Use the `as` prop to change the underlying element.
55
- *
56
- * @typeParam C - The intrinsic or custom element type to render.
57
- *
58
- * @group Card
59
- * @category inputs
60
- */
61
- function CardBase<C extends ElementType = DefaultElement>(props: CardProps<C>) {
62
- const {
63
- as,
64
- className,
65
- variant = "contained",
66
- size = "md",
67
- fullWidth = false,
68
- square,
69
- ref,
70
- ...restProps
71
- } = props;
72
- const Component = (as || defaultElement) as ElementType;
73
-
74
- const componentProps = {
75
- className: cn(
76
- className,
77
- square ? styles.square : "",
78
- fullWidth ? styles.fullWidth : "",
79
- styles[`size_${size}`],
80
- styles[variant]
81
- ),
82
- ref,
83
- ...restProps,
84
- };
85
-
86
- return <Component {...componentProps} />;
87
- }
88
- CardBase.displayName = "Card";
89
-
90
- /**
91
- * A polymorphic Card component.
92
- *
93
- * By default it renders a `<Card>`, but any element can be used via the `as` prop:
94
- *
95
- * ```tsx
96
- * <Card as="a" href="/docs">Read docs</Card>
97
- * ```
98
- *
99
- * @group Card
100
- * @category inputs
101
- */
102
- export const Card = CardBase as PolymorphicComponentType<
103
- CardBaseProps,
104
- DefaultElement
105
- >;
@@ -1,84 +0,0 @@
1
- .root {
2
- display: flex;
3
- flex-direction: column;
4
- align-items: stretch;
5
- overflow: hidden;
6
- border-radius: var(--shape-br-md);
7
- background-color: var(--color-background);
8
- pointer-events: none;
9
- }
10
- .image {
11
- display: flex;
12
- justify-content: center;
13
- align-items: center;
14
- width: 100%;
15
- height: 20svh;
16
- overflow: hidden;
17
- & > img {
18
- width: 100%;
19
- height: 100%;
20
- object-fit: cover;
21
- }
22
- }
23
- .main {
24
- flex: 1;
25
- display: flex;
26
- flex-direction: column;
27
- gap: 0.1618em;
28
- padding: var(--spacing-gap-2) calc(1.618 * var(--spacing-gap-2));
29
- overflow: hidden;
30
- transition: all var(--transition-time) var(--transition-tf);
31
- color: var(--color-on-surface);
32
- pointer-events: all;
33
- border-radius: calc(var(--shape-br-md) - var(--spacing-gap));
34
- margin: var(--spacing-gap);
35
- & > p {
36
- display: flex;
37
- align-items: center;
38
- }
39
- }
40
- .description {
41
- color: var(--color-on-background-faint);
42
- font-size: 0.8em;
43
- }
44
- .subtitle {
45
- color: var(--color-on-background-faint);
46
- font-size: 1em;
47
- }
48
- .clickable {
49
- transition: all var(--transition-time) var(--transition-tf);
50
- & > .main {
51
- cursor: pointer;
52
- background: var(--color-background);
53
- }
54
- &:has(.main:hover) {
55
- background: var(--color-background-faint);
56
- }
57
- }
58
- .title {
59
- display: flex;
60
- align-items: center;
61
- gap: var(--spacing-gap-2);
62
- & > h4 {
63
- flex: 1;
64
- font-size: 1.2em;
65
- }
66
- }
67
- .footer {
68
- display: flex;
69
- justify-content: flex-end;
70
- pointer-events: all;
71
- }
72
-
73
- @container (min-width:600px) {
74
- .root {
75
- flex-direction: row;
76
- & > .image {
77
- width: 10vw;
78
- height: auto;
79
- aspect-ratio: 1;
80
- min-width: 3rem;
81
- max-width: 6rem;
82
- }
83
- }
84
- }
@@ -1,170 +0,0 @@
1
- "use client";
2
-
3
- import type { ComponentProps, ElementType, ReactNode } from "react";
4
- import styles from "./CollectionItemCard.module.css";
5
- import type {
6
- PolymorphicComponentProps,
7
- PolymorphicComponentType,
8
- } from "@studiocubics/types";
9
- import { cn } from "@studiocubics/utils";
10
- import {
11
- ClampedText,
12
- type ClampedTextProps,
13
- } from "../../Typography/ClampedText/ClampedText";
14
- import { Chip, type ChipProps } from "../../Display/Chip/Chip";
15
- /**
16
- * Props specific to the CollectionItemCard component.
17
- *
18
- * These extend the intrinsic element props of whatever element is passed via `as`.
19
- * @group CollectionItemCard
20
- * @category inputs
21
- */
22
- export interface CollectionItemCardBaseProps {
23
- thumbnail?: ReactNode;
24
- title: ReactNode;
25
- chip?: ReactNode;
26
- subtitle?: ReactNode;
27
- description?: ReactNode;
28
- footer?: ReactNode;
29
- slotProps?: {
30
- root?: ComponentProps<"div">;
31
- chip?: ChipProps;
32
- thumbnail?: ComponentProps<"div">;
33
- titleContainer?: ComponentProps<"div">;
34
- title?: ClampedTextProps;
35
- subtitle?: ClampedTextProps;
36
- description?: ClampedTextProps;
37
- footerContainer?: ComponentProps<"div">;
38
- };
39
- }
40
- const defaultElement = "a";
41
- type DefaultElement = typeof defaultElement;
42
- /**
43
- * Polymorphic props for the CollectionItemCard component.
44
- *
45
- * `C` defines the element type rendered by the component (e.g. `"CollectionItemCard"`, `"a"`, `"div"`).
46
- * All intrinsic props for `C` are supported unless overridden by `CollectionItemCardBaseProps`.
47
- *
48
- * @group CollectionItemCard
49
- * @category inputs
50
- */
51
- export type CollectionItemCardProps<C extends ElementType = DefaultElement> =
52
- PolymorphicComponentProps<C, CollectionItemCardBaseProps>;
53
-
54
- /**
55
- * Base implementation for the CollectionItemCard component.
56
- *
57
- * This is a polymorphic component that defaults to rendering a `<CollectionItemCard>`.
58
- * Use the `as` prop to change the underlying element.
59
- *
60
- * @typeParam C - The intrinsic or custom element type to render.
61
- *
62
- * @group CollectionItemCard
63
- * @category inputs
64
- */
65
- function CollectionItemCardBase<C extends ElementType = DefaultElement>(
66
- props: CollectionItemCardProps<C>,
67
- ) {
68
- const {
69
- as,
70
- className,
71
- ref,
72
- thumbnail,
73
- title,
74
- chip,
75
- subtitle,
76
- description,
77
- footer,
78
- slotProps = {},
79
- ...restProps
80
- } = props;
81
- const Component = as || defaultElement;
82
-
83
- const clickable = !!props.href || !!props.onClick;
84
- const componentProps = {
85
- className: cn(className, styles.main),
86
- ref,
87
- ...restProps,
88
- };
89
-
90
- return (
91
- <div
92
- {...slotProps.root}
93
- className={cn(
94
- styles.root,
95
- clickable ? styles.clickable : "",
96
- slotProps.root?.className,
97
- )}
98
- >
99
- {thumbnail && (
100
- <div
101
- {...slotProps.thumbnail}
102
- className={cn(styles.image, slotProps.thumbnail?.className)}
103
- >
104
- {thumbnail}
105
- </div>
106
- )}
107
- <Component {...componentProps}>
108
- <div
109
- {...slotProps.titleContainer}
110
- className={cn(styles.title, slotProps.titleContainer?.className)}
111
- >
112
- {chip &&
113
- (typeof chip == "string" ? (
114
- <Chip size="sm" {...slotProps.chip}>
115
- {chip}
116
- </Chip>
117
- ) : (
118
- chip
119
- ))}
120
- <ClampedText as="h4" {...slotProps.title}>
121
- {title}
122
- </ClampedText>
123
- </div>
124
- {subtitle && (
125
- <ClampedText
126
- {...slotProps.subtitle}
127
- className={cn(styles.subtitle, slotProps.subtitle?.className)}
128
- >
129
- {subtitle}
130
- </ClampedText>
131
- )}
132
- {description && (
133
- <ClampedText
134
- {...slotProps.description}
135
- className={cn(styles.description, slotProps.description?.className)}
136
- >
137
- {description}
138
- </ClampedText>
139
- )}
140
- </Component>
141
- {footer && (
142
- <div
143
- {...slotProps.footerContainer}
144
- className={cn(styles.footer, slotProps.footerContainer?.className)}
145
- >
146
- {footer}
147
- </div>
148
- )}
149
- </div>
150
- );
151
- }
152
- CollectionItemCardBase.displayName = "CollectionItemCard";
153
-
154
- /**
155
- * A polymorphic CollectionItemCard component.
156
- *
157
- * By default it renders a `<CollectionItemCard>`, but any element can be used via the `as` prop:
158
- *
159
- * ```tsx
160
- * <CollectionItemCard as="a" href="/docs">Read docs</CollectionItemCard>
161
- * ```
162
- *
163
- * @group CollectionItemCard
164
- * @category inputs
165
- */
166
- export const CollectionItemCard =
167
- CollectionItemCardBase as PolymorphicComponentType<
168
- CollectionItemCardBaseProps,
169
- DefaultElement
170
- >;
@@ -1,85 +0,0 @@
1
- import { useAnchorElement } from "@studiocubics/hooks";
2
- import {
3
- type ElementType,
4
- type ReactNode,
5
- type MouseEvent,
6
- Fragment,
7
- } from "react";
8
- import { Button, type ButtonProps } from "../../Inputs/Button/Button";
9
- import { Tooltip } from "../../Display/Tooltip/Tooltip";
10
- import { Popover } from "../../Layout/Popover/Popover";
11
-
12
- export type DocumentAction<C extends ElementType = "a"> = {
13
- label?: string;
14
- } & (
15
- | ({
16
- actionType: "popover";
17
- popoverChildren: ReactNode;
18
- icon: ReactNode;
19
- } & ButtonProps<C>)
20
- | { actionType: "node"; children: ReactNode }
21
- | ({
22
- actionType: "link";
23
- href: string;
24
- icon: ReactNode;
25
- } & ButtonProps) //TODO Avoid 'as' conflict
26
- );
27
- export function CollectionItemCardActions({
28
- actions,
29
- }: {
30
- actions: DocumentAction[];
31
- }) {
32
- return (
33
- <>
34
- {actions.map((action, i) => {
35
- switch (action.actionType) {
36
- case "popover":
37
- return <PopoverTypeAction key={i} action={action} />;
38
- case "link":
39
- return <LinkTypeAction key={i} action={action} />;
40
- default:
41
- return <Fragment key={i}>{action.children}</Fragment>;
42
- }
43
- })}
44
- </>
45
- );
46
- }
47
-
48
- function PopoverTypeAction({
49
- action,
50
- }: {
51
- action: DocumentAction & { actionType: "popover" };
52
- }) {
53
- const { actionType: _, icon, popoverChildren, onClick, ...rest } = action;
54
- const { anchorEl, open, handleClick, handleClose } = useAnchorElement();
55
- return (
56
- <>
57
- <Tooltip renderArrow title={action.label}>
58
- <Button
59
- {...rest}
60
- onClick={(e: MouseEvent<HTMLAnchorElement>) => {
61
- handleClick(e);
62
- onClick?.(e);
63
- }}
64
- >
65
- {icon}
66
- </Button>
67
- </Tooltip>
68
- <Popover open={open} anchorEl={anchorEl} onClose={handleClose}>
69
- {popoverChildren}
70
- </Popover>
71
- </>
72
- );
73
- }
74
- function LinkTypeAction({
75
- action,
76
- }: {
77
- action: DocumentAction & { actionType: "link" };
78
- }) {
79
- const { actionType: _, icon, ...rest } = action;
80
- return (
81
- <Tooltip renderArrow title={action.label}>
82
- <Button {...rest}>{icon}</Button>
83
- </Tooltip>
84
- );
85
- }
@@ -1,71 +0,0 @@
1
- .root {
2
- --glass-tint: var(--color-primary);
3
- --glass-border-width: 2px;
4
- --glass-border-radius: var(--shape-br-md);
5
- --glass-border-color: var(--color-outline);
6
- --glass-mouse-pointer-color: color-mix(
7
- in srgb,
8
- var(--color-primary) 50%,
9
- transparent
10
- );
11
- --glass-shadow: color-mix(in srgb, var(--color-primary) 15%, transparent);
12
- --glass-backdrop-blur: 5px;
13
- --glass-position: relative;
14
-
15
- isolation: isolate;
16
- border-radius: var(--glass-border-radius);
17
- position: var(--glass-position);
18
- box-shadow: inset 0px 0px 4px var(--glass-shadow);
19
- backdrop-filter: blur(var(--glass-backdrop-blur));
20
-
21
- /* Border */
22
- &::after {
23
- --glass-reflection-i: color-mix(
24
- in srgb,
25
- var(--glass-tint) 20%,
26
- transparent
27
- );
28
- --glass-reflection: color-mix(in srgb, var(--glass-tint) 40%, transparent);
29
- --glass-reflection-w: #ffffff79;
30
- content: "";
31
- position: absolute;
32
- inset: 0;
33
- border-radius: inherit;
34
- padding: var(--glass-border-width);
35
- background-image: linear-gradient(
36
- var(--gradient-angle, 255deg),
37
- var(--glass-reflection-w) 0%,
38
- var(--glass-reflection) 0.5%,
39
- transparent 30%,
40
- transparent 70%,
41
- var(--glass-reflection-i) 100%
42
- );
43
- opacity: var(--glass-reflection-intensity, 1);
44
- mask:
45
- linear-gradient(#000 0 0) exclude,
46
- linear-gradient(#000 0 0) content-box;
47
-
48
- z-index: -2;
49
- }
50
-
51
- /* Mouse Pointer Light */
52
- &::before {
53
- content: "";
54
- inset: 0;
55
- position: absolute;
56
- transition: opacity var(--transition-time);
57
- pointer-events: none;
58
- opacity: 1;
59
- padding: var(--glass-border-width);
60
- mask:
61
- linear-gradient(#000 0 0) exclude,
62
- linear-gradient(#000 0 0) content-box;
63
- border-radius: inherit;
64
- background: radial-gradient(
65
- 250px circle at var(--mouse-x) var(--mouse-y),
66
- var(--glass-mouse-pointer-color),
67
- transparent 40%
68
- );
69
- z-index: -1;
70
- }
71
- }