@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.
- package/dist/Cards/Card/Card.d.ts +49 -0
- package/dist/Cards/Card/Card.js +45 -0
- package/dist/Cards/Card/Card.js.map +1 -0
- package/dist/Cards/Card/Card.module.css.js +4 -0
- package/dist/Cards/Card/Card.module.css.js.map +1 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCard.d.ts +55 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCard.js +48 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCard.js.map +1 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCard.module.css.js +4 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCard.module.css.js.map +1 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCardActions.d.ts +19 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCardActions.js +34 -0
- package/dist/Cards/CollectionItemCard/CollectionItemCardActions.js.map +1 -0
- package/dist/Cards/GlassCard/GlassCard.d.ts +7 -0
- package/dist/Cards/GlassCard/GlassCard.js +52 -0
- package/dist/Cards/GlassCard/GlassCard.js.map +1 -0
- package/dist/Cards/GlassCard/GlassCard.module.css.js +4 -0
- package/dist/Cards/GlassCard/GlassCard.module.css.js.map +1 -0
- package/dist/Display/Accordion/Accordion.d.ts +14 -0
- package/dist/Display/Accordion/Accordion.js +28 -0
- package/dist/Display/Accordion/Accordion.js.map +1 -0
- package/dist/Display/Accordion/Accordion.module.css.js +4 -0
- package/dist/Display/Accordion/Accordion.module.css.js.map +1 -0
- package/dist/Display/Accordion/AccordionItem.d.ts +15 -0
- package/dist/Display/Accordion/AccordionItem.js +56 -0
- package/dist/Display/Accordion/AccordionItem.js.map +1 -0
- package/dist/Display/Chip/Chip.d.ts +46 -0
- package/dist/Display/Chip/Chip.js +43 -0
- package/dist/Display/Chip/Chip.js.map +1 -0
- package/dist/Display/Chip/Chip.module.css.js +4 -0
- package/dist/Display/Chip/Chip.module.css.js.map +1 -0
- package/dist/Display/IdentityDisplay/IdentityDisplay.d.ts +21 -0
- package/dist/Display/IdentityDisplay/IdentityDisplay.js +36 -0
- package/dist/Display/IdentityDisplay/IdentityDisplay.js.map +1 -0
- package/dist/Display/IdentityDisplay/IdentityDisplay.module.css.js +4 -0
- package/dist/Display/IdentityDisplay/IdentityDisplay.module.css.js.map +1 -0
- package/dist/Display/InputErrors/InputErrors.d.ts +11 -0
- package/dist/Display/InputErrors/InputErrors.js +25 -0
- package/dist/Display/InputErrors/InputErrors.js.map +1 -0
- package/dist/Display/InputErrors/InputErrors.module.css.js +4 -0
- package/dist/Display/InputErrors/InputErrors.module.css.js.map +1 -0
- package/dist/Display/Kbd/Kbd.d.ts +8 -0
- package/dist/Display/Kbd/Kbd.js +19 -0
- package/dist/Display/Kbd/Kbd.js.map +1 -0
- package/dist/Display/Kbd/Kbd.module.css.js +4 -0
- package/dist/Display/Kbd/Kbd.module.css.js.map +1 -0
- package/dist/Display/Kbd/buttonList.d.ts +324 -0
- package/dist/Display/Kbd/buttonList.js +198 -0
- package/dist/Display/Kbd/buttonList.js.map +1 -0
- package/dist/Display/LabeledValue/LabeledValue.d.ts +9 -0
- package/dist/Display/LabeledValue/LabeledValue.js +11 -0
- package/dist/Display/LabeledValue/LabeledValue.js.map +1 -0
- package/dist/Display/LabeledValue/LabeledValue.module.css.js +4 -0
- package/dist/Display/LabeledValue/LabeledValue.module.css.js.map +1 -0
- package/dist/Display/List/List.d.ts +50 -0
- package/dist/Display/List/List.js +96 -0
- package/dist/Display/List/List.js.map +1 -0
- package/dist/Display/List/List.module.css.js +4 -0
- package/dist/Display/List/List.module.css.js.map +1 -0
- package/dist/Display/PasswordStrength/PasswordStrength.d.ts +4 -0
- package/dist/Display/PasswordStrength/PasswordStrength.js +17 -0
- package/dist/Display/PasswordStrength/PasswordStrength.js.map +1 -0
- package/dist/Display/PasswordStrength/PasswordStrength.module.css.js +4 -0
- package/dist/Display/PasswordStrength/PasswordStrength.module.css.js.map +1 -0
- package/dist/Display/PasswordStrength/usePasswordStrength.d.ts +42 -0
- package/dist/Display/PasswordStrength/usePasswordStrength.js +49 -0
- package/dist/Display/PasswordStrength/usePasswordStrength.js.map +1 -0
- package/dist/Display/Skeleton/Skeleton.d.ts +8 -0
- package/dist/Display/Skeleton/Skeleton.js +11 -0
- package/dist/Display/Skeleton/Skeleton.js.map +1 -0
- package/dist/Display/Skeleton/Skeleton.module.css.js +4 -0
- package/dist/Display/Skeleton/Skeleton.module.css.js.map +1 -0
- package/dist/Display/Toast/Toaster.d.ts +1 -0
- package/dist/Display/Toast/Toaster.js +45 -0
- package/dist/Display/Toast/Toaster.js.map +1 -0
- package/dist/Display/Toast/toast.d.ts +12 -0
- package/dist/Display/Toast/toast.js +32 -0
- package/dist/Display/Toast/toast.js.map +1 -0
- package/dist/Display/Tooltip/Tooltip.d.ts +8 -0
- package/dist/Display/Tooltip/Tooltip.js +45 -0
- package/dist/Display/Tooltip/Tooltip.js.map +1 -0
- package/dist/Display/Tooltip/Tooltip.module.css.js +4 -0
- package/dist/Display/Tooltip/Tooltip.module.css.js.map +1 -0
- package/dist/Display/Tooltip/getArrowDirection.d.ts +1 -0
- package/dist/Display/Tooltip/getArrowDirection.js +48 -0
- package/dist/Display/Tooltip/getArrowDirection.js.map +1 -0
- package/dist/Display/Tooltip/useTooltip.d.ts +8 -0
- package/dist/Display/Tooltip/useTooltip.js +48 -0
- package/dist/Display/Tooltip/useTooltip.js.map +1 -0
- package/dist/Forms/ConfirmationForm/ConfirmationForm.d.ts +15 -0
- package/dist/Forms/ConfirmationForm/ConfirmationForm.js +12 -0
- package/dist/Forms/ConfirmationForm/ConfirmationForm.js.map +1 -0
- package/dist/Forms/ConfirmationForm/ConfirmationForm.module.css.js +4 -0
- package/dist/Forms/ConfirmationForm/ConfirmationForm.module.css.js.map +1 -0
- package/dist/Inputs/Button/Button.d.ts +83 -0
- package/dist/Inputs/Button/Button.js +56 -0
- package/dist/Inputs/Button/Button.js.map +1 -0
- package/dist/Inputs/Button/Button.module.css.js +4 -0
- package/dist/Inputs/Button/Button.module.css.js.map +1 -0
- package/dist/Inputs/Checkbox/Checkbox.d.ts +23 -0
- package/dist/Inputs/Checkbox/Checkbox.js +55 -0
- package/dist/Inputs/Checkbox/Checkbox.js.map +1 -0
- package/dist/Inputs/Checkbox/Checkbox.module.css.js +4 -0
- package/dist/Inputs/Checkbox/Checkbox.module.css.js.map +1 -0
- package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.d.ts +15 -0
- package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.js +35 -0
- package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css.js +4 -0
- package/dist/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
- package/dist/Inputs/Checkbox/CheckboxSelectAll.d.ts +5 -0
- package/dist/Inputs/Checkbox/CheckboxSelectAll.js +19 -0
- package/dist/Inputs/Checkbox/CheckboxSelectAll.js.map +1 -0
- package/dist/Inputs/PasswordInput/PasswordInput.d.ts +31 -0
- package/dist/Inputs/PasswordInput/PasswordInput.js +45 -0
- package/dist/Inputs/PasswordInput/PasswordInput.js.map +1 -0
- package/dist/Inputs/PasswordInput/PasswordInput.module.css.js +4 -0
- package/dist/Inputs/PasswordInput/PasswordInput.module.css.js.map +1 -0
- package/dist/Inputs/Select/Select.d.ts +22 -0
- package/dist/Inputs/Select/Select.js +26 -0
- package/dist/Inputs/Select/Select.js.map +1 -0
- package/dist/Inputs/Select/Select.module.css.js +4 -0
- package/dist/Inputs/Select/Select.module.css.js.map +1 -0
- package/dist/Inputs/Switch/Switch.d.ts +43 -0
- package/dist/Inputs/Switch/Switch.js +81 -0
- package/dist/Inputs/Switch/Switch.js.map +1 -0
- package/dist/Inputs/Switch/Switch.module.css.js +4 -0
- package/dist/Inputs/Switch/Switch.module.css.js.map +1 -0
- package/dist/Inputs/TextAreaInput/TextAreaInput.d.ts +17 -0
- package/dist/Inputs/TextAreaInput/TextAreaInput.js +30 -0
- package/dist/Inputs/TextAreaInput/TextAreaInput.js.map +1 -0
- package/dist/Inputs/TextAreaInput/TextAreaInput.module.css.js +4 -0
- package/dist/Inputs/TextAreaInput/TextAreaInput.module.css.js.map +1 -0
- package/dist/Inputs/TextInput/TextInput.d.ts +27 -0
- package/dist/Inputs/TextInput/TextInput.js +23 -0
- package/dist/Inputs/TextInput/TextInput.js.map +1 -0
- package/dist/Inputs/TextInput/TextInput.module.css.js +4 -0
- package/dist/Inputs/TextInput/TextInput.module.css.js.map +1 -0
- package/dist/Inputs/ThemeToggle/ThemeToggleListItem.d.ts +16 -0
- package/dist/Inputs/ThemeToggle/ThemeToggleListItem.js +31 -0
- package/dist/Inputs/ThemeToggle/ThemeToggleListItem.js.map +1 -0
- package/dist/Inputs/ThemeToggle/_index.d.ts +1 -0
- package/dist/Layout/Dialog/Dialog.d.ts +13 -0
- package/dist/Layout/Dialog/Dialog.js +74 -0
- package/dist/Layout/Dialog/Dialog.js.map +1 -0
- package/dist/Layout/Dialog/Dialog.module.css.js +4 -0
- package/dist/Layout/Dialog/Dialog.module.css.js.map +1 -0
- package/dist/Layout/PageLayout/PageLayout.d.ts +28 -0
- package/dist/Layout/PageLayout/PageLayout.js +25 -0
- package/dist/Layout/PageLayout/PageLayout.js.map +1 -0
- package/dist/Layout/PageLayout/PageLayout.module.css.js +4 -0
- package/dist/Layout/PageLayout/PageLayout.module.css.js.map +1 -0
- package/dist/Layout/PageLayoutPagination/PageLayoutPagination.d.ts +7 -0
- package/dist/Layout/PageLayoutPagination/PageLayoutPagination.js +13 -0
- package/dist/Layout/PageLayoutPagination/PageLayoutPagination.js.map +1 -0
- package/dist/Layout/PageLayoutPagination/PageLayoutPagination.module.css.js +4 -0
- package/dist/Layout/PageLayoutPagination/PageLayoutPagination.module.css.js.map +1 -0
- package/dist/Layout/PageLayoutTabs/PageLayoutTabs.d.ts +14 -0
- package/dist/Layout/PageLayoutTabs/PageLayoutTabs.js +22 -0
- package/dist/Layout/PageLayoutTabs/PageLayoutTabs.js.map +1 -0
- package/dist/Layout/PageLayoutTabs/PageLayoutTabs.module.css.js +4 -0
- package/dist/Layout/PageLayoutTabs/PageLayoutTabs.module.css.js.map +1 -0
- package/dist/Layout/Popover/Popover.d.ts +14 -0
- package/dist/Layout/Popover/Popover.js +103 -0
- package/dist/Layout/Popover/Popover.js.map +1 -0
- package/dist/Layout/Popover/Popover.module.css.js +4 -0
- package/dist/Layout/Popover/Popover.module.css.js.map +1 -0
- package/dist/Layout/SectionWrapper/SectionWrapper.d.ts +14 -0
- package/dist/Layout/SectionWrapper/SectionWrapper.js +11 -0
- package/dist/Layout/SectionWrapper/SectionWrapper.js.map +1 -0
- package/dist/Layout/SectionWrapper/SectionWrapper.module.css.js +4 -0
- package/dist/Layout/SectionWrapper/SectionWrapper.module.css.js.map +1 -0
- package/dist/Layout/Sidebar/Sidebar.d.ts +15 -0
- package/dist/Layout/Sidebar/Sidebar.js +25 -0
- package/dist/Layout/Sidebar/Sidebar.js.map +1 -0
- package/dist/Layout/Sidebar/Sidebar.module.css.js +4 -0
- package/dist/Layout/Sidebar/Sidebar.module.css.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarBody/SidebarBody.d.ts +2 -0
- package/dist/Layout/Sidebar/SidebarBody/SidebarBody.js +14 -0
- package/dist/Layout/Sidebar/SidebarBody/SidebarBody.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarBody/SidebarBody.module.css.js +4 -0
- package/dist/Layout/Sidebar/SidebarBody/SidebarBody.module.css.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.d.ts +2 -0
- package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.js +14 -0
- package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css.js +4 -0
- package/dist/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.d.ts +2 -0
- package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.js +14 -0
- package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css.js +4 -0
- package/dist/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.d.ts +2 -0
- package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.js +12 -0
- package/dist/Layout/Sidebar/SidebarHeader/SidebarHeader.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.d.ts +2 -0
- package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.js +11 -0
- package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.js.map +1 -0
- package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css.js +4 -0
- package/dist/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css.js.map +1 -0
- package/dist/Layout/Table/Table.d.ts +54 -0
- package/dist/Layout/Table/Table.js +131 -0
- package/dist/Layout/Table/Table.js.map +1 -0
- package/dist/Layout/Table/Table.module.css.js +4 -0
- package/dist/Layout/Table/Table.module.css.js.map +1 -0
- package/dist/Layout/Table/TableFooter.d.ts +1 -0
- package/dist/Layout/Table/TableFooter.js +9 -0
- package/dist/Layout/Table/TableFooter.js.map +1 -0
- package/dist/Layout/Table/TableHeader.d.ts +1 -0
- package/dist/Layout/Table/TableHeader.js +9 -0
- package/dist/Layout/Table/TableHeader.js.map +1 -0
- package/dist/Layout/Table/tableUtils.d.ts +52 -0
- package/dist/Layout/Table/tableUtils.js +124 -0
- package/dist/Layout/Table/tableUtils.js.map +1 -0
- package/dist/Layout/Table/types.d.ts +43 -0
- package/dist/Misc/Cursor/Cursor.d.ts +1 -0
- package/dist/Misc/Cursor/Cursor.js +59 -0
- package/dist/Misc/Cursor/Cursor.js.map +1 -0
- package/dist/Misc/Cursor/Cursor.module.css.js +4 -0
- package/dist/Misc/Cursor/Cursor.module.css.js.map +1 -0
- package/dist/Misc/Logos.d.ts +14 -0
- package/dist/Misc/Logos.js +29 -0
- package/dist/Misc/Logos.js.map +1 -0
- package/dist/Misc/PoweredByBanner/PoweredByBanner.d.ts +3 -0
- package/dist/Misc/PoweredByBanner/PoweredByBanner.js +11 -0
- package/dist/Misc/PoweredByBanner/PoweredByBanner.js.map +1 -0
- package/dist/Misc/PoweredByBanner/PoweredByBanner.module.css.js +4 -0
- package/dist/Misc/PoweredByBanner/PoweredByBanner.module.css.js.map +1 -0
- package/dist/Misc/Ripple/Ripple.d.ts +21 -0
- package/dist/Misc/Ripple/Ripple.js +62 -0
- package/dist/Misc/Ripple/Ripple.js.map +1 -0
- package/dist/Misc/Ripple/Ripple.module.css.js +4 -0
- package/dist/Misc/Ripple/Ripple.module.css.js.map +1 -0
- package/dist/Misc/Spinner/Spinner.d.ts +2 -0
- package/dist/Misc/Spinner/Spinner.js +12 -0
- package/dist/Misc/Spinner/Spinner.js.map +1 -0
- package/dist/Misc/Spinner/Spinner.module.css.js +4 -0
- package/dist/Misc/Spinner/Spinner.module.css.js.map +1 -0
- package/dist/Misc/TransitionAnimation/TransitionAnimation.d.ts +71 -0
- package/dist/Misc/TransitionAnimation/TransitionAnimation.js +87 -0
- package/dist/Misc/TransitionAnimation/TransitionAnimation.js.map +1 -0
- package/dist/Misc/TransitionAnimation/TransitionAnimation.module.css.js +4 -0
- package/dist/Misc/TransitionAnimation/TransitionAnimation.module.css.js.map +1 -0
- package/dist/Navigation/Breadcrumbs/Breadcrumbs.d.ts +39 -0
- package/dist/Navigation/Breadcrumbs/Breadcrumbs.js +36 -0
- package/dist/Navigation/Breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/Navigation/Breadcrumbs/Breadcrumbs.module.css.js +4 -0
- package/dist/Navigation/Breadcrumbs/Breadcrumbs.module.css.js.map +1 -0
- package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.d.ts +10 -0
- package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.js +15 -0
- package/dist/Navigation/Breadcrumbs/BreadcrumbsItem.js.map +1 -0
- package/dist/Navigation/Breadcrumbs/useBreadcrumbs.d.ts +7 -0
- package/dist/Navigation/Breadcrumbs/useBreadcrumbs.js +44 -0
- package/dist/Navigation/Breadcrumbs/useBreadcrumbs.js.map +1 -0
- package/dist/Navigation/Pagination/Pagination.d.ts +52 -0
- package/dist/Navigation/Pagination/Pagination.js +61 -0
- package/dist/Navigation/Pagination/Pagination.js.map +1 -0
- package/dist/Navigation/Pagination/Pagination.module.css.js +4 -0
- package/dist/Navigation/Pagination/Pagination.module.css.js.map +1 -0
- package/dist/Navigation/Pagination/PaginationItem.d.ts +8 -0
- package/dist/Navigation/Pagination/PaginationItem.js +14 -0
- package/dist/Navigation/Pagination/PaginationItem.js.map +1 -0
- package/dist/Navigation/Pagination/usePagination.d.ts +6 -0
- package/dist/Navigation/Pagination/usePagination.js +38 -0
- package/dist/Navigation/Pagination/usePagination.js.map +1 -0
- package/dist/Navigation/Tabs/Tab/Tab.d.ts +46 -0
- package/dist/Navigation/Tabs/Tab/Tab.js +70 -0
- package/dist/Navigation/Tabs/Tab/Tab.js.map +1 -0
- package/dist/Navigation/Tabs/Tab/Tab.module.css.js +4 -0
- package/dist/Navigation/Tabs/Tab/Tab.module.css.js.map +1 -0
- package/dist/Navigation/Tabs/Tabs.d.ts +12 -0
- package/dist/Navigation/Tabs/Tabs.js +22 -0
- package/dist/Navigation/Tabs/Tabs.js.map +1 -0
- package/dist/Navigation/Tabs/TabsBar/TabsBar.d.ts +12 -0
- package/dist/Navigation/Tabs/TabsBar/TabsBar.js +44 -0
- package/dist/Navigation/Tabs/TabsBar/TabsBar.js.map +1 -0
- package/dist/Navigation/Tabs/TabsBar/TabsBar.module.css.js +4 -0
- package/dist/Navigation/Tabs/TabsBar/TabsBar.module.css.js.map +1 -0
- package/dist/Typography/ClampedText/ClampedText.d.ts +38 -0
- package/dist/Typography/ClampedText/ClampedText.js +44 -0
- package/dist/Typography/ClampedText/ClampedText.js.map +1 -0
- package/dist/Typography/ClampedText/ClampedText.module.css.js +4 -0
- package/dist/Typography/ClampedText/ClampedText.module.css.js.map +1 -0
- package/dist/Typography/CopyableText/CopyableText.d.ts +16 -0
- package/dist/Typography/CopyableText/CopyableText.js +39 -0
- package/dist/Typography/CopyableText/CopyableText.js.map +1 -0
- package/dist/Typography/CopyableText/CopyableText.module.css.js +4 -0
- package/dist/Typography/CopyableText/CopyableText.module.css.js.map +1 -0
- package/dist/Typography/PageTitle/PageTitle.d.ts +9 -0
- package/dist/Typography/PageTitle/PageTitle.js +10 -0
- package/dist/Typography/PageTitle/PageTitle.js.map +1 -0
- package/dist/Typography/PageTitle/PageTitle.module.css.js +4 -0
- package/dist/Typography/PageTitle/PageTitle.module.css.js.map +1 -0
- package/dist/index.css +2392 -0
- package/dist/index.js +64 -0
- package/dist/index.js.map +1 -0
- package/package.json +4 -4
- package/CHANGELOG.md +0 -11
- package/eslint.config.js +0 -21
- package/src/Cards/Card/Card.module.css +0 -27
- package/src/Cards/Card/Card.tsx +0 -105
- package/src/Cards/CollectionItemCard/CollectionItemCard.module.css +0 -84
- package/src/Cards/CollectionItemCard/CollectionItemCard.tsx +0 -170
- package/src/Cards/CollectionItemCard/CollectionItemCardActions.tsx +0 -85
- package/src/Cards/GlassCard/GlassCard.module.css +0 -71
- package/src/Cards/GlassCard/GlassCard.tsx +0 -80
- package/src/Display/Accordion/Accordion.module.css +0 -69
- package/src/Display/Accordion/Accordion.tsx +0 -61
- package/src/Display/Accordion/AccordionItem.tsx +0 -135
- package/src/Display/Chip/Chip.module.css +0 -64
- package/src/Display/Chip/Chip.tsx +0 -105
- package/src/Display/IdentityDisplay/IdentityDisplay.module.css +0 -95
- package/src/Display/IdentityDisplay/IdentityDisplay.tsx +0 -119
- package/src/Display/InputErrors/InputErrors.module.css +0 -6
- package/src/Display/InputErrors/InputErrors.tsx +0 -52
- package/src/Display/Kbd/Kbd.module.css +0 -29
- package/src/Display/Kbd/Kbd.tsx +0 -39
- package/src/Display/Kbd/buttonList.tsx +0 -246
- package/src/Display/LabeledValue/LabeledValue.module.css +0 -32
- package/src/Display/LabeledValue/LabeledValue.tsx +0 -20
- package/src/Display/List/List.module.css +0 -143
- package/src/Display/List/List.tsx +0 -298
- package/src/Display/PasswordStrength/PasswordStrength.module.css +0 -45
- package/src/Display/PasswordStrength/PasswordStrength.tsx +0 -41
- package/src/Display/PasswordStrength/usePasswordStrength.tsx +0 -77
- package/src/Display/Skeleton/Skeleton.module.css +0 -54
- package/src/Display/Skeleton/Skeleton.tsx +0 -28
- package/src/Display/Toast/Toaster.tsx +0 -58
- package/src/Display/Toast/toast.ts +0 -44
- package/src/Display/Tooltip/Tooltip.module.css +0 -128
- package/src/Display/Tooltip/Tooltip.tsx +0 -93
- package/src/Display/Tooltip/getArrowDirection.ts +0 -55
- package/src/Display/Tooltip/useTooltip.tsx +0 -63
- package/src/Forms/ConfirmationForm/ConfirmationForm.module.css +0 -23
- package/src/Forms/ConfirmationForm/ConfirmationForm.tsx +0 -60
- package/src/Inputs/Button/Button.module.css +0 -131
- package/src/Inputs/Button/Button.tsx +0 -178
- package/src/Inputs/Checkbox/Checkbox.module.css +0 -77
- package/src/Inputs/Checkbox/Checkbox.tsx +0 -191
- package/src/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.module.css +0 -10
- package/src/Inputs/Checkbox/CheckboxGroup/CheckboxGroup.tsx +0 -83
- package/src/Inputs/Checkbox/CheckboxSelectAll.tsx +0 -34
- package/src/Inputs/PasswordInput/PasswordInput.module.css +0 -111
- package/src/Inputs/PasswordInput/PasswordInput.tsx +0 -229
- package/src/Inputs/Select/Select.module.css +0 -138
- package/src/Inputs/Select/Select.tsx +0 -136
- package/src/Inputs/Switch/Switch.module.css +0 -119
- package/src/Inputs/Switch/Switch.tsx +0 -195
- package/src/Inputs/TextAreaInput/TextAreaInput.module.css +0 -65
- package/src/Inputs/TextAreaInput/TextAreaInput.tsx +0 -97
- package/src/Inputs/TextInput/TextInput.module.css +0 -112
- package/src/Inputs/TextInput/TextInput.tsx +0 -142
- package/src/Inputs/ThemeToggle/ThemeToggleListItem.tsx +0 -80
- package/src/Inputs/ThemeToggle/_index.ts +0 -1
- package/src/Layout/Dialog/Dialog.module.css +0 -15
- package/src/Layout/Dialog/Dialog.tsx +0 -115
- package/src/Layout/PageLayout/PageLayout.module.css +0 -20
- package/src/Layout/PageLayout/PageLayout.tsx +0 -79
- package/src/Layout/PageLayoutPagination/PageLayoutPagination.module.css +0 -5
- package/src/Layout/PageLayoutPagination/PageLayoutPagination.tsx +0 -40
- package/src/Layout/PageLayoutTabs/PageLayoutTabs.module.css +0 -3
- package/src/Layout/PageLayoutTabs/PageLayoutTabs.tsx +0 -62
- package/src/Layout/Popover/Popover.module.css +0 -9
- package/src/Layout/Popover/Popover.tsx +0 -145
- package/src/Layout/SectionWrapper/SectionWrapper.module.css +0 -31
- package/src/Layout/SectionWrapper/SectionWrapper.tsx +0 -62
- package/src/Layout/Sidebar/Sidebar.module.css +0 -17
- package/src/Layout/Sidebar/Sidebar.tsx +0 -39
- package/src/Layout/Sidebar/SidebarBody/SidebarBody.module.css +0 -31
- package/src/Layout/Sidebar/SidebarBody/SidebarBody.tsx +0 -18
- package/src/Layout/Sidebar/SidebarDrawer/SidebarDrawer.module.css +0 -20
- package/src/Layout/Sidebar/SidebarDrawer/SidebarDrawer.tsx +0 -19
- package/src/Layout/Sidebar/SidebarFooter/SidebarFooter.module.css +0 -35
- package/src/Layout/Sidebar/SidebarFooter/SidebarFooter.tsx +0 -19
- package/src/Layout/Sidebar/SidebarHeader/SidebarHeader.tsx +0 -14
- package/src/Layout/Sidebar/SidebarViewport/SidebarViewport.module.css +0 -12
- package/src/Layout/Sidebar/SidebarViewport/SidebarViewport.tsx +0 -11
- package/src/Layout/Table/Table.module.css +0 -46
- package/src/Layout/Table/Table.tsx +0 -222
- package/src/Layout/Table/TableFooter.tsx +0 -4
- package/src/Layout/Table/TableHeader.tsx +0 -4
- package/src/Layout/Table/tableUtils.ts +0 -142
- package/src/Layout/Table/types.ts +0 -48
- package/src/Misc/Cursor/Cursor.module.css +0 -31
- package/src/Misc/Cursor/Cursor.tsx +0 -77
- package/src/Misc/Logos.tsx +0 -230
- package/src/Misc/PoweredByBanner/PoweredByBanner.module.css +0 -20
- package/src/Misc/PoweredByBanner/PoweredByBanner.tsx +0 -17
- package/src/Misc/Ripple/Ripple.module.css +0 -25
- package/src/Misc/Ripple/Ripple.tsx +0 -126
- package/src/Misc/Spinner/Spinner.module.css +0 -38
- package/src/Misc/Spinner/Spinner.tsx +0 -36
- package/src/Misc/TransitionAnimation/TransitionAnimation.module.css +0 -131
- package/src/Misc/TransitionAnimation/TransitionAnimation.tsx +0 -166
- package/src/Navigation/Breadcrumbs/Breadcrumbs.module.css +0 -22
- package/src/Navigation/Breadcrumbs/Breadcrumbs.tsx +0 -127
- package/src/Navigation/Breadcrumbs/BreadcrumbsItem.tsx +0 -31
- package/src/Navigation/Breadcrumbs/useBreadcrumbs.tsx +0 -74
- package/src/Navigation/Pagination/Pagination.module.css +0 -41
- package/src/Navigation/Pagination/Pagination.tsx +0 -187
- package/src/Navigation/Pagination/PaginationItem.tsx +0 -28
- package/src/Navigation/Pagination/usePagination.tsx +0 -65
- package/src/Navigation/Tabs/Tab/Tab.module.css +0 -43
- package/src/Navigation/Tabs/Tab/Tab.tsx +0 -155
- package/src/Navigation/Tabs/Tabs.tsx +0 -37
- package/src/Navigation/Tabs/TabsBar/TabsBar.module.css +0 -47
- package/src/Navigation/Tabs/TabsBar/TabsBar.tsx +0 -92
- package/src/Typography/ClampedText/ClampedText.module.css +0 -5
- package/src/Typography/ClampedText/ClampedText.tsx +0 -77
- package/src/Typography/CopyableText/CopyableText.module.css +0 -21
- package/src/Typography/CopyableText/CopyableText.tsx +0 -120
- package/src/Typography/PageTitle/PageTitle.module.css +0 -47
- package/src/Typography/PageTitle/PageTitle.tsx +0 -35
- package/src/declaration.d.ts +0 -4
- package/tsconfig.json +0 -32
- /package/{src/Cards/CollectionItemCard/_index.ts → dist/Cards/CollectionItemCard/_index.d.ts} +0 -0
- /package/{src/Cards/_index.ts → dist/Cards/_index.d.ts} +0 -0
- /package/{src/Display/Accordion/_index.ts → dist/Display/Accordion/_index.d.ts} +0 -0
- /package/{src/Display/Kbd/_index.ts → dist/Display/Kbd/_index.d.ts} +0 -0
- /package/{src/Display/Toast/_index.ts → dist/Display/Toast/_index.d.ts} +0 -0
- /package/{src/Display/_index.ts → dist/Display/_index.d.ts} +0 -0
- /package/{src/Forms/_index.ts → dist/Forms/_index.d.ts} +0 -0
- /package/{src/Inputs/Checkbox/_index.ts → dist/Inputs/Checkbox/_index.d.ts} +0 -0
- /package/{src/Inputs/_index.ts → dist/Inputs/_index.d.ts} +0 -0
- /package/{src/Layout/Sidebar/_index.ts → dist/Layout/Sidebar/_index.d.ts} +0 -0
- /package/{src/Layout/Table/_index.ts → dist/Layout/Table/_index.d.ts} +0 -0
- /package/{src/Layout/_index.ts → dist/Layout/_index.d.ts} +0 -0
- /package/{src/Misc/_index.ts → dist/Misc/_index.d.ts} +0 -0
- /package/{src/Navigation/Breadcrumbs/_index.ts → dist/Navigation/Breadcrumbs/_index.d.ts} +0 -0
- /package/{src/Navigation/Pagination/_index.ts → dist/Navigation/Pagination/_index.d.ts} +0 -0
- /package/{src/Navigation/Tabs/_index.ts → dist/Navigation/Tabs/_index.d.ts} +0 -0
- /package/{src/Navigation/_index.ts → dist/Navigation/_index.d.ts} +0 -0
- /package/{src/Typography/_index.ts → dist/Typography/_index.d.ts} +0 -0
- /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.
|
|
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/
|
|
39
|
-
"@studiocubics/
|
|
40
|
-
"@studiocubics/types": "^0.0.
|
|
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
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
|
-
}
|
package/src/Cards/Card/Card.tsx
DELETED
|
@@ -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
|
-
}
|