@cerberus-design/react 0.0.0-next-bd980a6d9bd07d60e8d7200bd4d56624754e936c
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/LICENSE +201 -0
- package/README.md +68 -0
- package/dist/components/AnimatingUploadIcon.cjs +71 -0
- package/dist/components/AnimatingUploadIcon.d.cts +8 -0
- package/dist/components/AnimatingUploadIcon.d.ts +8 -0
- package/dist/components/AnimatingUploadIcon.js +71 -0
- package/dist/components/accordion/index.cjs +12 -0
- package/dist/components/accordion/index.d.cts +3 -0
- package/dist/components/accordion/index.d.ts +3 -0
- package/dist/components/accordion/index.js +4 -0
- package/dist/components/accordion/item-group.cjs +52 -0
- package/dist/components/accordion/item-group.d.cts +28 -0
- package/dist/components/accordion/item-group.d.ts +28 -0
- package/dist/components/accordion/item-group.js +51 -0
- package/dist/components/accordion/item-indicator.cjs +22 -0
- package/dist/components/accordion/item-indicator.d.cts +7 -0
- package/dist/components/accordion/item-indicator.d.ts +7 -0
- package/dist/components/accordion/item-indicator.js +22 -0
- package/dist/components/accordion/parts.cjs +20 -0
- package/dist/components/accordion/parts.d.cts +38 -0
- package/dist/components/accordion/parts.d.ts +38 -0
- package/dist/components/accordion/parts.js +20 -0
- package/dist/components/accordion/primitives.cjs +58 -0
- package/dist/components/accordion/primitives.d.cts +47 -0
- package/dist/components/accordion/primitives.d.ts +47 -0
- package/dist/components/accordion/primitives.js +54 -0
- package/dist/components/admonition/admonition.cjs +38 -0
- package/dist/components/admonition/admonition.d.cts +28 -0
- package/dist/components/admonition/admonition.d.ts +28 -0
- package/dist/components/admonition/admonition.js +38 -0
- package/dist/components/admonition/index.cjs +11 -0
- package/dist/components/admonition/index.d.cts +3 -0
- package/dist/components/admonition/index.d.ts +3 -0
- package/dist/components/admonition/index.js +4 -0
- package/dist/components/admonition/match-avatar.cjs +41 -0
- package/dist/components/admonition/match-avatar.d.cts +4 -0
- package/dist/components/admonition/match-avatar.d.ts +4 -0
- package/dist/components/admonition/match-avatar.js +41 -0
- package/dist/components/admonition/parts.cjs +20 -0
- package/dist/components/admonition/parts.d.cts +38 -0
- package/dist/components/admonition/parts.d.ts +38 -0
- package/dist/components/admonition/parts.js +20 -0
- package/dist/components/admonition/primitives.cjs +49 -0
- package/dist/components/admonition/primitives.d.cts +29 -0
- package/dist/components/admonition/primitives.d.ts +29 -0
- package/dist/components/admonition/primitives.js +45 -0
- package/dist/components/avatar/avatar.cjs +27 -0
- package/dist/components/avatar/avatar.d.cts +24 -0
- package/dist/components/avatar/avatar.d.ts +24 -0
- package/dist/components/avatar/avatar.js +27 -0
- package/dist/components/avatar/index.cjs +16 -0
- package/dist/components/avatar/index.d.cts +4 -0
- package/dist/components/avatar/index.d.ts +4 -0
- package/dist/components/avatar/index.js +5 -0
- package/dist/components/avatar/parts.cjs +18 -0
- package/dist/components/avatar/parts.d.cts +30 -0
- package/dist/components/avatar/parts.d.ts +30 -0
- package/dist/components/avatar/parts.js +18 -0
- package/dist/components/avatar/primitives.cjs +25 -0
- package/dist/components/avatar/primitives.d.cts +19 -0
- package/dist/components/avatar/primitives.d.ts +19 -0
- package/dist/components/avatar/primitives.js +23 -0
- package/dist/components/button/button.cjs +58 -0
- package/dist/components/button/button.d.cts +21 -0
- package/dist/components/button/button.d.ts +21 -0
- package/dist/components/button/button.js +57 -0
- package/dist/components/button/index.cjs +8 -0
- package/dist/components/button/index.d.cts +3 -0
- package/dist/components/button/index.d.ts +3 -0
- package/dist/components/button/index.js +4 -0
- package/dist/components/button/parts.cjs +17 -0
- package/dist/components/button/parts.d.cts +26 -0
- package/dist/components/button/parts.d.ts +26 -0
- package/dist/components/button/parts.js +17 -0
- package/dist/components/button/primitives.cjs +21 -0
- package/dist/components/button/primitives.d.cts +14 -0
- package/dist/components/button/primitives.d.ts +14 -0
- package/dist/components/button/primitives.js +21 -0
- package/dist/components/carousel/carousel.cjs +38 -0
- package/dist/components/carousel/carousel.d.cts +33 -0
- package/dist/components/carousel/carousel.d.ts +33 -0
- package/dist/components/carousel/carousel.js +38 -0
- package/dist/components/carousel/index.cjs +14 -0
- package/dist/components/carousel/index.d.cts +3 -0
- package/dist/components/carousel/index.d.ts +3 -0
- package/dist/components/carousel/index.js +4 -0
- package/dist/components/carousel/parts.cjs +23 -0
- package/dist/components/carousel/parts.d.cts +50 -0
- package/dist/components/carousel/parts.d.ts +50 -0
- package/dist/components/carousel/parts.js +23 -0
- package/dist/components/carousel/primitives.cjs +26 -0
- package/dist/components/carousel/primitives.d.cts +20 -0
- package/dist/components/carousel/primitives.d.ts +20 -0
- package/dist/components/carousel/primitives.js +19 -0
- package/dist/components/checkbox/checkbox-icon.cjs +33 -0
- package/dist/components/checkbox/checkbox-icon.d.cts +21 -0
- package/dist/components/checkbox/checkbox-icon.d.ts +21 -0
- package/dist/components/checkbox/checkbox-icon.js +33 -0
- package/dist/components/checkbox/checkbox.cjs +38 -0
- package/dist/components/checkbox/checkbox.d.cts +14 -0
- package/dist/components/checkbox/checkbox.d.ts +14 -0
- package/dist/components/checkbox/checkbox.js +38 -0
- package/dist/components/checkbox/index.cjs +12 -0
- package/dist/components/checkbox/index.d.cts +3 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.js +4 -0
- package/dist/components/checkbox/parts.cjs +21 -0
- package/dist/components/checkbox/parts.d.cts +42 -0
- package/dist/components/checkbox/parts.d.ts +42 -0
- package/dist/components/checkbox/parts.js +21 -0
- package/dist/components/checkbox/primitives.cjs +54 -0
- package/dist/components/checkbox/primitives.d.cts +48 -0
- package/dist/components/checkbox/primitives.d.ts +48 -0
- package/dist/components/checkbox/primitives.js +49 -0
- package/dist/components/circular-progress/circular-progress.cjs +16 -0
- package/dist/components/circular-progress/circular-progress.d.cts +19 -0
- package/dist/components/circular-progress/circular-progress.d.ts +19 -0
- package/dist/components/circular-progress/circular-progress.js +16 -0
- package/dist/components/circular-progress/index.cjs +11 -0
- package/dist/components/circular-progress/index.d.cts +2 -0
- package/dist/components/circular-progress/index.d.ts +2 -0
- package/dist/components/circular-progress/index.js +3 -0
- package/dist/components/circular-progress/primitives.cjs +24 -0
- package/dist/components/circular-progress/primitives.d.cts +19 -0
- package/dist/components/circular-progress/primitives.d.ts +19 -0
- package/dist/components/circular-progress/primitives.js +18 -0
- package/dist/components/clipboard/copy-indicator.cjs +20 -0
- package/dist/components/clipboard/copy-indicator.d.cts +6 -0
- package/dist/components/clipboard/copy-indicator.d.ts +6 -0
- package/dist/components/clipboard/copy-indicator.js +20 -0
- package/dist/components/clipboard/copy-text.cjs +17 -0
- package/dist/components/clipboard/copy-text.d.cts +6 -0
- package/dist/components/clipboard/copy-text.d.ts +6 -0
- package/dist/components/clipboard/copy-text.js +17 -0
- package/dist/components/clipboard/index.cjs +11 -0
- package/dist/components/clipboard/index.d.cts +2 -0
- package/dist/components/clipboard/index.d.ts +2 -0
- package/dist/components/clipboard/index.js +3 -0
- package/dist/components/clipboard/parts.cjs +26 -0
- package/dist/components/clipboard/parts.d.cts +53 -0
- package/dist/components/clipboard/parts.d.ts +53 -0
- package/dist/components/clipboard/parts.js +26 -0
- package/dist/components/clipboard/primitives.cjs +23 -0
- package/dist/components/clipboard/primitives.d.cts +17 -0
- package/dist/components/clipboard/primitives.d.ts +17 -0
- package/dist/components/clipboard/primitives.js +17 -0
- package/dist/components/clipboard/trigger.cjs +19 -0
- package/dist/components/clipboard/trigger.d.cts +5 -0
- package/dist/components/clipboard/trigger.d.ts +5 -0
- package/dist/components/clipboard/trigger.js +19 -0
- package/dist/components/collapsible/index.cjs +9 -0
- package/dist/components/collapsible/index.d.cts +2 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/collapsible/index.js +3 -0
- package/dist/components/collapsible/parts.cjs +20 -0
- package/dist/components/collapsible/parts.d.cts +38 -0
- package/dist/components/collapsible/parts.d.ts +38 -0
- package/dist/components/collapsible/parts.js +20 -0
- package/dist/components/collapsible/primitives.cjs +20 -0
- package/dist/components/collapsible/primitives.d.cts +14 -0
- package/dist/components/collapsible/primitives.d.ts +14 -0
- package/dist/components/collapsible/primitives.js +16 -0
- package/dist/components/combobox/combobox.cjs +42 -0
- package/dist/components/combobox/combobox.d.cts +14 -0
- package/dist/components/combobox/combobox.d.ts +14 -0
- package/dist/components/combobox/combobox.js +42 -0
- package/dist/components/combobox/index.cjs +28 -0
- package/dist/components/combobox/index.d.cts +6 -0
- package/dist/components/combobox/index.d.ts +6 -0
- package/dist/components/combobox/index.js +7 -0
- package/dist/components/combobox/item-group.cjs +13 -0
- package/dist/components/combobox/item-group.d.cts +8 -0
- package/dist/components/combobox/item-group.d.ts +8 -0
- package/dist/components/combobox/item-group.js +13 -0
- package/dist/components/combobox/item.cjs +25 -0
- package/dist/components/combobox/item.d.cts +11 -0
- package/dist/components/combobox/item.d.ts +11 -0
- package/dist/components/combobox/item.js +25 -0
- package/dist/components/combobox/parts.cjs +29 -0
- package/dist/components/combobox/parts.d.cts +74 -0
- package/dist/components/combobox/parts.d.ts +74 -0
- package/dist/components/combobox/parts.js +29 -0
- package/dist/components/combobox/primitives.cjs +86 -0
- package/dist/components/combobox/primitives.d.cts +82 -0
- package/dist/components/combobox/primitives.d.ts +82 -0
- package/dist/components/combobox/primitives.js +71 -0
- package/dist/components/combobox/use-stateful-collection.cjs +32 -0
- package/dist/components/combobox/use-stateful-collection.d.cts +28 -0
- package/dist/components/combobox/use-stateful-collection.d.ts +28 -0
- package/dist/components/combobox/use-stateful-collection.js +32 -0
- package/dist/components/cta-dialog/context.cjs +6 -0
- package/dist/components/cta-dialog/context.d.cts +32 -0
- package/dist/components/cta-dialog/context.d.ts +32 -0
- package/dist/components/cta-dialog/context.js +7 -0
- package/dist/components/cta-dialog/index.cjs +6 -0
- package/dist/components/cta-dialog/index.d.cts +2 -0
- package/dist/components/cta-dialog/index.d.ts +2 -0
- package/dist/components/cta-dialog/index.js +3 -0
- package/dist/components/cta-dialog/provider.cjs +147 -0
- package/dist/components/cta-dialog/provider.d.cts +41 -0
- package/dist/components/cta-dialog/provider.d.ts +41 -0
- package/dist/components/cta-dialog/provider.js +146 -0
- package/dist/components/cta-dialog/trigger-item.cjs +31 -0
- package/dist/components/cta-dialog/trigger-item.d.cts +14 -0
- package/dist/components/cta-dialog/trigger-item.d.ts +14 -0
- package/dist/components/cta-dialog/trigger-item.js +31 -0
- package/dist/components/cta-dialog/utils.cjs +18 -0
- package/dist/components/cta-dialog/utils.d.cts +30 -0
- package/dist/components/cta-dialog/utils.d.ts +30 -0
- package/dist/components/cta-dialog/utils.js +18 -0
- package/dist/components/date-picker/calendar.cjs +36 -0
- package/dist/components/date-picker/calendar.d.cts +27 -0
- package/dist/components/date-picker/calendar.d.ts +27 -0
- package/dist/components/date-picker/calendar.js +36 -0
- package/dist/components/date-picker/content.cjs +19 -0
- package/dist/components/date-picker/content.d.cts +12 -0
- package/dist/components/date-picker/content.d.ts +12 -0
- package/dist/components/date-picker/content.js +19 -0
- package/dist/components/date-picker/date-picker.cjs +17 -0
- package/dist/components/date-picker/date-picker.d.cts +7 -0
- package/dist/components/date-picker/date-picker.d.ts +7 -0
- package/dist/components/date-picker/date-picker.js +17 -0
- package/dist/components/date-picker/day-view.cjs +39 -0
- package/dist/components/date-picker/day-view.d.cts +13 -0
- package/dist/components/date-picker/day-view.d.ts +13 -0
- package/dist/components/date-picker/day-view.js +39 -0
- package/dist/components/date-picker/index.cjs +68 -0
- package/dist/components/date-picker/index.d.cts +8 -0
- package/dist/components/date-picker/index.d.ts +8 -0
- package/dist/components/date-picker/index.js +9 -0
- package/dist/components/date-picker/input.cjs +23 -0
- package/dist/components/date-picker/input.d.cts +11 -0
- package/dist/components/date-picker/input.d.ts +11 -0
- package/dist/components/date-picker/input.js +23 -0
- package/dist/components/date-picker/month-view.cjs +31 -0
- package/dist/components/date-picker/month-view.d.cts +12 -0
- package/dist/components/date-picker/month-view.d.ts +12 -0
- package/dist/components/date-picker/month-view.js +31 -0
- package/dist/components/date-picker/parts.cjs +39 -0
- package/dist/components/date-picker/parts.d.cts +114 -0
- package/dist/components/date-picker/parts.d.ts +114 -0
- package/dist/components/date-picker/parts.js +39 -0
- package/dist/components/date-picker/primitives.cjs +58 -0
- package/dist/components/date-picker/primitives.d.cts +136 -0
- package/dist/components/date-picker/primitives.d.ts +136 -0
- package/dist/components/date-picker/primitives.js +35 -0
- package/dist/components/date-picker/range-input.cjs +35 -0
- package/dist/components/date-picker/range-input.d.cts +12 -0
- package/dist/components/date-picker/range-input.d.ts +12 -0
- package/dist/components/date-picker/range-input.js +35 -0
- package/dist/components/date-picker/trigger.cjs +31 -0
- package/dist/components/date-picker/trigger.d.cts +10 -0
- package/dist/components/date-picker/trigger.d.ts +10 -0
- package/dist/components/date-picker/trigger.js +31 -0
- package/dist/components/date-picker/view-control-group.cjs +59 -0
- package/dist/components/date-picker/view-control-group.d.cts +12 -0
- package/dist/components/date-picker/view-control-group.d.ts +12 -0
- package/dist/components/date-picker/view-control-group.js +59 -0
- package/dist/components/date-picker/year-view.cjs +28 -0
- package/dist/components/date-picker/year-view.d.cts +12 -0
- package/dist/components/date-picker/year-view.d.ts +12 -0
- package/dist/components/date-picker/year-view.js +28 -0
- package/dist/components/dialog/close-icon-trigger.cjs +32 -0
- package/dist/components/dialog/close-icon-trigger.d.cts +6 -0
- package/dist/components/dialog/close-icon-trigger.d.ts +6 -0
- package/dist/components/dialog/close-icon-trigger.js +32 -0
- package/dist/components/dialog/dialog.cjs +26 -0
- package/dist/components/dialog/dialog.d.cts +24 -0
- package/dist/components/dialog/dialog.d.ts +24 -0
- package/dist/components/dialog/dialog.js +26 -0
- package/dist/components/dialog/index.cjs +18 -0
- package/dist/components/dialog/index.d.cts +7 -0
- package/dist/components/dialog/index.d.ts +7 -0
- package/dist/components/dialog/index.js +5 -0
- package/dist/components/dialog/parts.cjs +23 -0
- package/dist/components/dialog/parts.d.cts +50 -0
- package/dist/components/dialog/parts.d.ts +50 -0
- package/dist/components/dialog/parts.js +23 -0
- package/dist/components/dialog/primitives.cjs +33 -0
- package/dist/components/dialog/primitives.d.cts +51 -0
- package/dist/components/dialog/primitives.d.ts +51 -0
- package/dist/components/dialog/primitives.js +24 -0
- package/dist/components/feature-flag/feature-flag.cjs +17 -0
- package/dist/components/feature-flag/feature-flag.d.cts +12 -0
- package/dist/components/feature-flag/feature-flag.d.ts +12 -0
- package/dist/components/feature-flag/feature-flag.js +17 -0
- package/dist/components/feature-flag/index.cjs +3 -0
- package/dist/components/feature-flag/index.d.cts +1 -0
- package/dist/components/feature-flag/index.d.ts +1 -0
- package/dist/components/feature-flag/index.js +2 -0
- package/dist/components/field/error-text.cjs +22 -0
- package/dist/components/field/error-text.d.cts +14 -0
- package/dist/components/field/error-text.d.ts +14 -0
- package/dist/components/field/error-text.js +22 -0
- package/dist/components/field/field.cjs +72 -0
- package/dist/components/field/field.d.cts +45 -0
- package/dist/components/field/field.d.ts +45 -0
- package/dist/components/field/field.js +72 -0
- package/dist/components/field/helper-text.cjs +18 -0
- package/dist/components/field/helper-text.d.cts +11 -0
- package/dist/components/field/helper-text.d.ts +11 -0
- package/dist/components/field/helper-text.js +18 -0
- package/dist/components/field/index.cjs +20 -0
- package/dist/components/field/index.d.cts +6 -0
- package/dist/components/field/index.d.ts +6 -0
- package/dist/components/field/index.js +6 -0
- package/dist/components/field/input.cjs +21 -0
- package/dist/components/field/input.d.cts +18 -0
- package/dist/components/field/input.d.ts +18 -0
- package/dist/components/field/input.js +21 -0
- package/dist/components/field/parts.cjs +26 -0
- package/dist/components/field/parts.d.cts +54 -0
- package/dist/components/field/parts.d.ts +54 -0
- package/dist/components/field/parts.js +26 -0
- package/dist/components/field/primitives.cjs +81 -0
- package/dist/components/field/primitives.d.cts +73 -0
- package/dist/components/field/primitives.d.ts +73 -0
- package/dist/components/field/primitives.js +72 -0
- package/dist/components/field/start-indicator.cjs +20 -0
- package/dist/components/field/start-indicator.d.cts +7 -0
- package/dist/components/field/start-indicator.d.ts +7 -0
- package/dist/components/field/start-indicator.js +20 -0
- package/dist/components/field/status-indicator.cjs +41 -0
- package/dist/components/field/status-indicator.d.cts +18 -0
- package/dist/components/field/status-indicator.d.ts +18 -0
- package/dist/components/field/status-indicator.js +41 -0
- package/dist/components/fieldset/fieldset.cjs +35 -0
- package/dist/components/fieldset/fieldset.d.cts +26 -0
- package/dist/components/fieldset/fieldset.d.ts +26 -0
- package/dist/components/fieldset/fieldset.js +35 -0
- package/dist/components/fieldset/index.cjs +10 -0
- package/dist/components/fieldset/index.d.cts +3 -0
- package/dist/components/fieldset/index.d.ts +3 -0
- package/dist/components/fieldset/index.js +4 -0
- package/dist/components/fieldset/parts.cjs +19 -0
- package/dist/components/fieldset/parts.d.cts +34 -0
- package/dist/components/fieldset/parts.d.ts +34 -0
- package/dist/components/fieldset/parts.js +19 -0
- package/dist/components/fieldset/primitives.cjs +18 -0
- package/dist/components/fieldset/primitives.d.cts +12 -0
- package/dist/components/fieldset/primitives.d.ts +12 -0
- package/dist/components/fieldset/primitives.js +15 -0
- package/dist/components/file-upload/file-status.cjs +169 -0
- package/dist/components/file-upload/file-status.d.cts +74 -0
- package/dist/components/file-upload/file-status.d.ts +74 -0
- package/dist/components/file-upload/file-status.js +168 -0
- package/dist/components/file-upload/file-uploader.cjs +47 -0
- package/dist/components/file-upload/file-uploader.d.cts +17 -0
- package/dist/components/file-upload/file-uploader.d.ts +17 -0
- package/dist/components/file-upload/file-uploader.js +47 -0
- package/dist/components/file-upload/helpers.cjs +19 -0
- package/dist/components/file-upload/helpers.d.cts +16 -0
- package/dist/components/file-upload/helpers.d.ts +16 -0
- package/dist/components/file-upload/helpers.js +19 -0
- package/dist/components/file-upload/img-preview.cjs +37 -0
- package/dist/components/file-upload/img-preview.d.cts +2 -0
- package/dist/components/file-upload/img-preview.d.ts +2 -0
- package/dist/components/file-upload/img-preview.js +37 -0
- package/dist/components/file-upload/index.cjs +31 -0
- package/dist/components/file-upload/index.d.cts +6 -0
- package/dist/components/file-upload/index.d.ts +6 -0
- package/dist/components/file-upload/index.js +7 -0
- package/dist/components/file-upload/parts.cjs +33 -0
- package/dist/components/file-upload/parts.d.cts +90 -0
- package/dist/components/file-upload/parts.d.ts +90 -0
- package/dist/components/file-upload/parts.js +33 -0
- package/dist/components/file-upload/primitives.cjs +42 -0
- package/dist/components/file-upload/primitives.d.cts +41 -0
- package/dist/components/file-upload/primitives.d.ts +41 -0
- package/dist/components/file-upload/primitives.js +25 -0
- package/dist/components/file-upload/utils.cjs +18 -0
- package/dist/components/file-upload/utils.d.cts +7 -0
- package/dist/components/file-upload/utils.d.ts +7 -0
- package/dist/components/file-upload/utils.js +18 -0
- package/dist/components/for/for.cjs +20 -0
- package/dist/components/for/for.d.cts +28 -0
- package/dist/components/for/for.d.ts +28 -0
- package/dist/components/for/for.js +20 -0
- package/dist/components/for/index.cjs +3 -0
- package/dist/components/for/index.d.cts +1 -0
- package/dist/components/for/index.d.ts +1 -0
- package/dist/components/for/index.js +2 -0
- package/dist/components/group/index.cjs +3 -0
- package/dist/components/group/index.d.cts +1 -0
- package/dist/components/group/index.d.ts +1 -0
- package/dist/components/group/index.js +2 -0
- package/dist/components/group/primitives.cjs +7 -0
- package/dist/components/group/primitives.d.cts +6 -0
- package/dist/components/group/primitives.d.ts +6 -0
- package/dist/components/group/primitives.js +7 -0
- package/dist/components/icon-button/button.cjs +16 -0
- package/dist/components/icon-button/button.d.cts +27 -0
- package/dist/components/icon-button/button.d.ts +27 -0
- package/dist/components/icon-button/button.js +16 -0
- package/dist/components/icon-button/index.d.cts +2 -0
- package/dist/components/icon-button/index.d.ts +2 -0
- package/dist/components/icon-button/primitives.cjs +14 -0
- package/dist/components/icon-button/primitives.d.cts +6 -0
- package/dist/components/icon-button/primitives.d.ts +6 -0
- package/dist/components/icon-button/primitives.js +14 -0
- package/dist/components/marquee/Marquee.1.d.cts +1 -0
- package/dist/components/marquee/Marquee.1.d.ts +1 -0
- package/dist/components/marquee/index.cjs +10 -0
- package/dist/components/marquee/index.d.cts +2 -0
- package/dist/components/marquee/index.d.ts +2 -0
- package/dist/components/marquee/index.js +3 -0
- package/dist/components/marquee/marquee.cjs +46 -0
- package/dist/components/marquee/marquee.d.cts +23 -0
- package/dist/components/marquee/marquee.d.ts +23 -0
- package/dist/components/marquee/marquee.js +46 -0
- package/dist/components/marquee/primitives.cjs +18 -0
- package/dist/components/marquee/primitives.d.cts +16 -0
- package/dist/components/marquee/primitives.d.ts +16 -0
- package/dist/components/marquee/primitives.js +13 -0
- package/dist/components/marquee/utils.cjs +33 -0
- package/dist/components/marquee/utils.d.cts +4 -0
- package/dist/components/marquee/utils.d.ts +4 -0
- package/dist/components/marquee/utils.js +31 -0
- package/dist/components/menu/index.cjs +20 -0
- package/dist/components/menu/index.d.cts +2 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/index.js +3 -0
- package/dist/components/menu/menu.cjs +134 -0
- package/dist/components/menu/menu.d.cts +120 -0
- package/dist/components/menu/menu.d.ts +120 -0
- package/dist/components/menu/menu.js +128 -0
- package/dist/components/menu/primitives.cjs +30 -0
- package/dist/components/menu/primitives.d.cts +24 -0
- package/dist/components/menu/primitives.d.ts +24 -0
- package/dist/components/menu/primitives.js +21 -0
- package/dist/components/notifications/center.cjs +58 -0
- package/dist/components/notifications/center.d.cts +13 -0
- package/dist/components/notifications/center.d.ts +13 -0
- package/dist/components/notifications/center.js +58 -0
- package/dist/components/notifications/close-trigger.cjs +20 -0
- package/dist/components/notifications/close-trigger.d.cts +6 -0
- package/dist/components/notifications/close-trigger.d.ts +6 -0
- package/dist/components/notifications/close-trigger.js +20 -0
- package/dist/components/notifications/index.cjs +14 -0
- package/dist/components/notifications/index.d.cts +5 -0
- package/dist/components/notifications/index.d.ts +5 -0
- package/dist/components/notifications/index.js +5 -0
- package/dist/components/notifications/match-icon.cjs +30 -0
- package/dist/components/notifications/match-icon.d.cts +8 -0
- package/dist/components/notifications/match-icon.d.ts +8 -0
- package/dist/components/notifications/match-icon.js +30 -0
- package/dist/components/notifications/parts.cjs +20 -0
- package/dist/components/notifications/parts.d.cts +38 -0
- package/dist/components/notifications/parts.d.ts +38 -0
- package/dist/components/notifications/parts.js +20 -0
- package/dist/components/notifications/primitives.cjs +22 -0
- package/dist/components/notifications/primitives.d.cts +16 -0
- package/dist/components/notifications/primitives.d.ts +16 -0
- package/dist/components/notifications/primitives.js +17 -0
- package/dist/components/notifications/toaster.cjs +10 -0
- package/dist/components/notifications/toaster.d.cts +2 -0
- package/dist/components/notifications/toaster.d.ts +2 -0
- package/dist/components/notifications/toaster.js +11 -0
- package/dist/components/notifications/types.d.cts +5 -0
- package/dist/components/notifications/types.d.ts +5 -0
- package/dist/components/number-input/decrement-trigger.cjs +16 -0
- package/dist/components/number-input/decrement-trigger.d.cts +2 -0
- package/dist/components/number-input/decrement-trigger.d.ts +2 -0
- package/dist/components/number-input/decrement-trigger.js +16 -0
- package/dist/components/number-input/increment-trigger.cjs +16 -0
- package/dist/components/number-input/increment-trigger.d.cts +2 -0
- package/dist/components/number-input/increment-trigger.d.ts +2 -0
- package/dist/components/number-input/increment-trigger.js +16 -0
- package/dist/components/number-input/index.cjs +13 -0
- package/dist/components/number-input/index.d.cts +3 -0
- package/dist/components/number-input/index.d.ts +3 -0
- package/dist/components/number-input/index.js +4 -0
- package/dist/components/number-input/input.cjs +26 -0
- package/dist/components/number-input/input.d.cts +13 -0
- package/dist/components/number-input/input.d.ts +13 -0
- package/dist/components/number-input/input.js +26 -0
- package/dist/components/number-input/parts.cjs +22 -0
- package/dist/components/number-input/parts.d.cts +46 -0
- package/dist/components/number-input/parts.d.ts +46 -0
- package/dist/components/number-input/parts.js +22 -0
- package/dist/components/number-input/primitives.cjs +24 -0
- package/dist/components/number-input/primitives.d.cts +18 -0
- package/dist/components/number-input/primitives.d.ts +18 -0
- package/dist/components/number-input/primitives.js +18 -0
- package/dist/components/pagination/compact.cjs +28 -0
- package/dist/components/pagination/compact.d.cts +7 -0
- package/dist/components/pagination/compact.d.ts +7 -0
- package/dist/components/pagination/compact.js +28 -0
- package/dist/components/pagination/index.cjs +20 -0
- package/dist/components/pagination/index.d.cts +6 -0
- package/dist/components/pagination/index.d.ts +6 -0
- package/dist/components/pagination/index.js +7 -0
- package/dist/components/pagination/item-list.cjs +28 -0
- package/dist/components/pagination/item-list.d.cts +7 -0
- package/dist/components/pagination/item-list.d.ts +7 -0
- package/dist/components/pagination/item-list.js +28 -0
- package/dist/components/pagination/item.cjs +13 -0
- package/dist/components/pagination/item.d.cts +2 -0
- package/dist/components/pagination/item.d.ts +2 -0
- package/dist/components/pagination/item.js +13 -0
- package/dist/components/pagination/pagination.cjs +31 -0
- package/dist/components/pagination/pagination.d.cts +21 -0
- package/dist/components/pagination/pagination.d.ts +21 -0
- package/dist/components/pagination/pagination.js +31 -0
- package/dist/components/pagination/parts.cjs +22 -0
- package/dist/components/pagination/parts.d.cts +46 -0
- package/dist/components/pagination/parts.d.ts +46 -0
- package/dist/components/pagination/parts.js +22 -0
- package/dist/components/pagination/primitives.cjs +19 -0
- package/dist/components/pagination/primitives.d.cts +20 -0
- package/dist/components/pagination/primitives.d.ts +20 -0
- package/dist/components/pagination/primitives.js +13 -0
- package/dist/components/pagination/triggers.cjs +46 -0
- package/dist/components/pagination/triggers.d.cts +7 -0
- package/dist/components/pagination/triggers.d.ts +7 -0
- package/dist/components/pagination/triggers.js +45 -0
- package/dist/components/pin-input/index.cjs +11 -0
- package/dist/components/pin-input/index.d.cts +3 -0
- package/dist/components/pin-input/index.d.ts +3 -0
- package/dist/components/pin-input/index.js +4 -0
- package/dist/components/pin-input/input.cjs +22 -0
- package/dist/components/pin-input/input.d.cts +6 -0
- package/dist/components/pin-input/input.d.ts +6 -0
- package/dist/components/pin-input/input.js +22 -0
- package/dist/components/pin-input/parts.cjs +20 -0
- package/dist/components/pin-input/parts.d.cts +38 -0
- package/dist/components/pin-input/parts.d.ts +38 -0
- package/dist/components/pin-input/parts.js +20 -0
- package/dist/components/pin-input/primitives.cjs +20 -0
- package/dist/components/pin-input/primitives.d.cts +14 -0
- package/dist/components/pin-input/primitives.d.ts +14 -0
- package/dist/components/pin-input/primitives.js +16 -0
- package/dist/components/popover/index.cjs +19 -0
- package/dist/components/popover/index.d.cts +3 -0
- package/dist/components/popover/index.d.ts +3 -0
- package/dist/components/popover/index.js +4 -0
- package/dist/components/popover/parts.cjs +23 -0
- package/dist/components/popover/parts.d.cts +65 -0
- package/dist/components/popover/parts.d.ts +65 -0
- package/dist/components/popover/parts.js +23 -0
- package/dist/components/popover/placement-container.cjs +12 -0
- package/dist/components/popover/placement-container.d.cts +7 -0
- package/dist/components/popover/placement-container.d.ts +7 -0
- package/dist/components/popover/placement-container.js +12 -0
- package/dist/components/popover/popover.cjs +46 -0
- package/dist/components/popover/popover.d.cts +15 -0
- package/dist/components/popover/popover.d.ts +15 -0
- package/dist/components/popover/popover.js +46 -0
- package/dist/components/popover/primitives.cjs +38 -0
- package/dist/components/popover/primitives.d.cts +30 -0
- package/dist/components/popover/primitives.d.ts +30 -0
- package/dist/components/popover/primitives.js +26 -0
- package/dist/components/portal/index.cjs +3 -0
- package/dist/components/portal/index.d.cts +1 -0
- package/dist/components/portal/index.d.ts +1 -0
- package/dist/components/portal/index.js +2 -0
- package/dist/components/portal/portal.cjs +23 -0
- package/dist/components/portal/portal.d.cts +26 -0
- package/dist/components/portal/portal.d.ts +26 -0
- package/dist/components/portal/portal.js +24 -0
- package/dist/components/progress/index.cjs +6 -0
- package/dist/components/progress/index.d.cts +2 -0
- package/dist/components/progress/index.d.ts +2 -0
- package/dist/components/progress/index.js +3 -0
- package/dist/components/progress/primitives.cjs +17 -0
- package/dist/components/progress/primitives.d.cts +8 -0
- package/dist/components/progress/primitives.d.ts +8 -0
- package/dist/components/progress/primitives.js +16 -0
- package/dist/components/progress/progress-bar.cjs +29 -0
- package/dist/components/progress/progress-bar.d.cts +51 -0
- package/dist/components/progress/progress-bar.d.ts +51 -0
- package/dist/components/progress/progress-bar.js +29 -0
- package/dist/components/radio/index.cjs +14 -0
- package/dist/components/radio/index.d.cts +3 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/index.js +4 -0
- package/dist/components/radio/parts.cjs +22 -0
- package/dist/components/radio/parts.d.cts +46 -0
- package/dist/components/radio/parts.d.ts +46 -0
- package/dist/components/radio/parts.js +22 -0
- package/dist/components/radio/primitives.cjs +42 -0
- package/dist/components/radio/primitives.d.cts +35 -0
- package/dist/components/radio/primitives.d.ts +35 -0
- package/dist/components/radio/primitives.js +35 -0
- package/dist/components/radio/radio.cjs +28 -0
- package/dist/components/radio/radio.d.cts +17 -0
- package/dist/components/radio/radio.d.ts +17 -0
- package/dist/components/radio/radio.js +28 -0
- package/dist/components/rating/index.cjs +13 -0
- package/dist/components/rating/index.d.cts +4 -0
- package/dist/components/rating/index.d.ts +4 -0
- package/dist/components/rating/index.js +4 -0
- package/dist/components/rating/parts.cjs +22 -0
- package/dist/components/rating/parts.d.cts +46 -0
- package/dist/components/rating/parts.d.ts +46 -0
- package/dist/components/rating/parts.js +22 -0
- package/dist/components/rating/primitives.cjs +24 -0
- package/dist/components/rating/primitives.d.cts +18 -0
- package/dist/components/rating/primitives.d.ts +18 -0
- package/dist/components/rating/primitives.js +18 -0
- package/dist/components/rating/rating.cjs +42 -0
- package/dist/components/rating/rating.d.cts +34 -0
- package/dist/components/rating/rating.d.ts +34 -0
- package/dist/components/rating/rating.js +42 -0
- package/dist/components/select/index.cjs +27 -0
- package/dist/components/select/index.d.cts +5 -0
- package/dist/components/select/index.d.ts +5 -0
- package/dist/components/select/index.js +6 -0
- package/dist/components/select/option-group.cjs +34 -0
- package/dist/components/select/option-group.d.cts +31 -0
- package/dist/components/select/option-group.d.ts +31 -0
- package/dist/components/select/option-group.js +33 -0
- package/dist/components/select/option.cjs +27 -0
- package/dist/components/select/option.d.cts +22 -0
- package/dist/components/select/option.d.ts +22 -0
- package/dist/components/select/option.js +27 -0
- package/dist/components/select/parts.cjs +30 -0
- package/dist/components/select/parts.d.cts +78 -0
- package/dist/components/select/parts.d.ts +78 -0
- package/dist/components/select/parts.js +30 -0
- package/dist/components/select/primitives.cjs +52 -0
- package/dist/components/select/primitives.d.cts +45 -0
- package/dist/components/select/primitives.d.ts +45 -0
- package/dist/components/select/primitives.js +37 -0
- package/dist/components/select/select.cjs +61 -0
- package/dist/components/select/select.d.cts +63 -0
- package/dist/components/select/select.d.ts +63 -0
- package/dist/components/select/select.js +61 -0
- package/dist/components/show/index.cjs +3 -0
- package/dist/components/show/index.d.cts +1 -0
- package/dist/components/show/index.d.ts +1 -0
- package/dist/components/show/index.js +2 -0
- package/dist/components/show/show.cjs +23 -0
- package/dist/components/show/show.d.cts +32 -0
- package/dist/components/show/show.d.ts +32 -0
- package/dist/components/show/show.js +23 -0
- package/dist/components/spinner/index.cjs +3 -0
- package/dist/components/spinner/index.d.cts +1 -0
- package/dist/components/spinner/index.d.ts +1 -0
- package/dist/components/spinner/index.js +2 -0
- package/dist/components/spinner/spinner.cjs +65 -0
- package/dist/components/spinner/spinner.d.cts +25 -0
- package/dist/components/spinner/spinner.d.ts +25 -0
- package/dist/components/spinner/spinner.js +65 -0
- package/dist/components/split-button/button.cjs +41 -0
- package/dist/components/split-button/button.d.cts +18 -0
- package/dist/components/split-button/button.d.ts +18 -0
- package/dist/components/split-button/button.js +41 -0
- package/dist/components/split-button/index.d.cts +1 -0
- package/dist/components/split-button/index.d.ts +1 -0
- package/dist/components/switch/index.cjs +11 -0
- package/dist/components/switch/index.d.cts +3 -0
- package/dist/components/switch/index.d.ts +3 -0
- package/dist/components/switch/index.js +4 -0
- package/dist/components/switch/parts.cjs +20 -0
- package/dist/components/switch/parts.d.cts +38 -0
- package/dist/components/switch/parts.d.ts +38 -0
- package/dist/components/switch/parts.js +20 -0
- package/dist/components/switch/primitives.cjs +20 -0
- package/dist/components/switch/primitives.d.cts +14 -0
- package/dist/components/switch/primitives.d.ts +14 -0
- package/dist/components/switch/primitives.js +16 -0
- package/dist/components/switch/switch-indicator.cjs +12 -0
- package/dist/components/switch/switch-indicator.d.cts +1 -0
- package/dist/components/switch/switch-indicator.d.ts +1 -0
- package/dist/components/switch/switch-indicator.js +12 -0
- package/dist/components/switch/switch.cjs +23 -0
- package/dist/components/switch/switch.d.cts +8 -0
- package/dist/components/switch/switch.d.ts +8 -0
- package/dist/components/switch/switch.js +23 -0
- package/dist/components/table/index.cjs +16 -0
- package/dist/components/table/index.d.cts +3 -0
- package/dist/components/table/index.d.ts +3 -0
- package/dist/components/table/index.js +4 -0
- package/dist/components/table/parts.cjs +25 -0
- package/dist/components/table/parts.d.cts +57 -0
- package/dist/components/table/parts.d.ts +57 -0
- package/dist/components/table/parts.js +25 -0
- package/dist/components/table/primitives.cjs +59 -0
- package/dist/components/table/primitives.d.cts +24 -0
- package/dist/components/table/primitives.d.ts +24 -0
- package/dist/components/table/primitives.js +50 -0
- package/dist/components/table/table.cjs +46 -0
- package/dist/components/table/table.d.cts +24 -0
- package/dist/components/table/table.d.ts +24 -0
- package/dist/components/table/table.js +46 -0
- package/dist/components/tabs/index.cjs +11 -0
- package/dist/components/tabs/index.d.cts +3 -0
- package/dist/components/tabs/index.d.ts +3 -0
- package/dist/components/tabs/index.js +4 -0
- package/dist/components/tabs/parts.cjs +20 -0
- package/dist/components/tabs/parts.d.cts +37 -0
- package/dist/components/tabs/parts.d.ts +37 -0
- package/dist/components/tabs/parts.js +20 -0
- package/dist/components/tabs/primitives.cjs +20 -0
- package/dist/components/tabs/primitives.d.cts +14 -0
- package/dist/components/tabs/primitives.d.ts +14 -0
- package/dist/components/tabs/primitives.js +16 -0
- package/dist/components/tabs/tabs.cjs +29 -0
- package/dist/components/tabs/tabs.d.cts +26 -0
- package/dist/components/tabs/tabs.d.ts +26 -0
- package/dist/components/tabs/tabs.js +29 -0
- package/dist/components/tag/closable.cjs +30 -0
- package/dist/components/tag/closable.d.cts +9 -0
- package/dist/components/tag/closable.d.ts +9 -0
- package/dist/components/tag/closable.js +30 -0
- package/dist/components/tag/index.cjs +5 -0
- package/dist/components/tag/index.d.cts +2 -0
- package/dist/components/tag/index.d.ts +2 -0
- package/dist/components/tag/index.js +3 -0
- package/dist/components/tag/primitives.cjs +10 -0
- package/dist/components/tag/primitives.d.cts +5 -0
- package/dist/components/tag/primitives.d.ts +5 -0
- package/dist/components/tag/primitives.js +10 -0
- package/dist/components/tag/tag.cjs +34 -0
- package/dist/components/tag/tag.d.cts +13 -0
- package/dist/components/tag/tag.d.ts +13 -0
- package/dist/components/tag/tag.js +34 -0
- package/dist/components/text/index.cjs +3 -0
- package/dist/components/text/index.d.cts +1 -0
- package/dist/components/text/index.d.ts +1 -0
- package/dist/components/text/index.js +2 -0
- package/dist/components/text/text.cjs +38 -0
- package/dist/components/text/text.d.cts +26 -0
- package/dist/components/text/text.d.ts +26 -0
- package/dist/components/text/text.js +38 -0
- package/dist/components/theme/index.cjs +3 -0
- package/dist/components/theme/index.d.cts +1 -0
- package/dist/components/theme/index.d.ts +1 -0
- package/dist/components/theme/index.js +2 -0
- package/dist/components/theme/theme.cjs +16 -0
- package/dist/components/theme/theme.d.cts +16 -0
- package/dist/components/theme/theme.d.ts +16 -0
- package/dist/components/theme/theme.js +16 -0
- package/dist/components/toggle/index.cjs +6 -0
- package/dist/components/toggle/index.d.cts +2 -0
- package/dist/components/toggle/index.d.ts +2 -0
- package/dist/components/toggle/index.js +3 -0
- package/dist/components/toggle/parts.cjs +17 -0
- package/dist/components/toggle/parts.d.cts +26 -0
- package/dist/components/toggle/parts.d.ts +26 -0
- package/dist/components/toggle/parts.js +17 -0
- package/dist/components/toggle/primitives.cjs +13 -0
- package/dist/components/toggle/primitives.d.cts +7 -0
- package/dist/components/toggle/primitives.d.ts +7 -0
- package/dist/components/toggle/primitives.js +12 -0
- package/dist/components/tooltip/index.cjs +12 -0
- package/dist/components/tooltip/index.d.cts +3 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/index.js +4 -0
- package/dist/components/tooltip/parts.cjs +21 -0
- package/dist/components/tooltip/parts.d.cts +42 -0
- package/dist/components/tooltip/parts.d.ts +42 -0
- package/dist/components/tooltip/parts.js +21 -0
- package/dist/components/tooltip/primitives.cjs +22 -0
- package/dist/components/tooltip/primitives.d.cts +15 -0
- package/dist/components/tooltip/primitives.d.ts +15 -0
- package/dist/components/tooltip/primitives.js +17 -0
- package/dist/components/tooltip/renderer.cjs +11 -0
- package/dist/components/tooltip/renderer.d.cts +6 -0
- package/dist/components/tooltip/renderer.d.ts +6 -0
- package/dist/components/tooltip/renderer.js +11 -0
- package/dist/components/tooltip/tooltip.cjs +31 -0
- package/dist/components/tooltip/tooltip.d.cts +26 -0
- package/dist/components/tooltip/tooltip.d.ts +26 -0
- package/dist/components/tooltip/tooltip.js +31 -0
- package/dist/config/defineIcons.cjs +23 -0
- package/dist/config/defineIcons.d.cts +15 -0
- package/dist/config/defineIcons.d.ts +15 -0
- package/dist/config/defineIcons.js +23 -0
- package/dist/config/icons/checkbox.icons.cjs +97 -0
- package/dist/config/icons/checkbox.icons.d.cts +20 -0
- package/dist/config/icons/checkbox.icons.d.ts +20 -0
- package/dist/config/icons/checkbox.icons.js +94 -0
- package/dist/config/icons/default.cjs +56 -0
- package/dist/config/icons/default.d.cts +5 -0
- package/dist/config/icons/default.d.ts +5 -0
- package/dist/config/icons/default.js +56 -0
- package/dist/config/icons/pinned.icons.cjs +28 -0
- package/dist/config/icons/pinned.icons.d.cts +5 -0
- package/dist/config/icons/pinned.icons.d.ts +5 -0
- package/dist/config/icons/pinned.icons.js +25 -0
- package/dist/config/icons/sort.icons.cjs +20 -0
- package/dist/config/icons/sort.icons.d.cts +3 -0
- package/dist/config/icons/sort.icons.d.ts +3 -0
- package/dist/config/icons/sort.icons.js +19 -0
- package/dist/config/index.cjs +37 -0
- package/dist/config/index.d.cts +24 -0
- package/dist/config/index.d.ts +24 -0
- package/dist/config/index.js +35 -0
- package/dist/config/types.d.cts +56 -0
- package/dist/config/types.d.ts +56 -0
- package/dist/context/cerberus.cjs +33 -0
- package/dist/context/cerberus.d.cts +17 -0
- package/dist/context/cerberus.d.ts +17 -0
- package/dist/context/cerberus.js +32 -0
- package/dist/context/confirm-modal.cjs +149 -0
- package/dist/context/confirm-modal.d.cts +82 -0
- package/dist/context/confirm-modal.d.ts +82 -0
- package/dist/context/confirm-modal.js +148 -0
- package/dist/context/feature-flags.cjs +45 -0
- package/dist/context/feature-flags.d.cts +38 -0
- package/dist/context/feature-flags.d.ts +38 -0
- package/dist/context/feature-flags.js +44 -0
- package/dist/context/field.d.cts +34 -0
- package/dist/context/field.d.ts +34 -0
- package/dist/context/navMenu.cjs +43 -0
- package/dist/context/navMenu.d.cts +34 -0
- package/dist/context/navMenu.d.ts +34 -0
- package/dist/context/navMenu.js +42 -0
- package/dist/context/prompt-modal.cjs +206 -0
- package/dist/context/prompt-modal.d.cts +85 -0
- package/dist/context/prompt-modal.d.ts +85 -0
- package/dist/context/prompt-modal.js +205 -0
- package/dist/context/theme.cjs +40 -0
- package/dist/context/theme.d.cts +53 -0
- package/dist/context/theme.d.ts +53 -0
- package/dist/context/theme.js +39 -0
- package/dist/hooks/useModal.d.cts +36 -0
- package/dist/hooks/useModal.d.ts +36 -0
- package/dist/hooks/useRootColors.cjs +44 -0
- package/dist/hooks/useRootColors.d.cts +22 -0
- package/dist/hooks/useRootColors.d.ts +22 -0
- package/dist/hooks/useRootColors.js +44 -0
- package/dist/hooks/useTheme.cjs +64 -0
- package/dist/hooks/useTheme.d.cts +29 -0
- package/dist/hooks/useTheme.d.ts +29 -0
- package/dist/hooks/useTheme.js +62 -0
- package/dist/index.cjs +1220 -0
- package/dist/index.client.d.cts +2 -0
- package/dist/index.client.d.ts +2 -0
- package/dist/index.client.js +5 -0
- package/dist/index.d.cts +60 -0
- package/dist/index.d.ts +60 -0
- package/dist/index.js +136 -0
- package/dist/panda.buildinfo.json +376 -0
- package/dist/system/factory.cjs +20 -0
- package/dist/system/factory.d.cts +7 -0
- package/dist/system/factory.d.ts +7 -0
- package/dist/system/factory.js +20 -0
- package/dist/system/index.cjs +44 -0
- package/dist/system/index.d.cts +38 -0
- package/dist/system/index.d.ts +38 -0
- package/dist/system/index.js +42 -0
- package/dist/system/primitive-factory.cjs +107 -0
- package/dist/system/primitive-factory.d.cts +48 -0
- package/dist/system/primitive-factory.d.ts +48 -0
- package/dist/system/primitive-factory.js +107 -0
- package/dist/system/types.d.cts +38 -0
- package/dist/system/types.d.ts +38 -0
- package/dist/types.d.cts +12 -0
- package/dist/types.d.ts +12 -0
- package/dist/utils/index.cjs +46 -0
- package/dist/utils/index.d.cts +25 -0
- package/dist/utils/index.d.ts +25 -0
- package/dist/utils/index.js +42 -0
- package/dist/utils/localStorage.cjs +26 -0
- package/dist/utils/localStorage.d.cts +13 -0
- package/dist/utils/localStorage.d.ts +13 -0
- package/dist/utils/localStorage.js +25 -0
- package/package.json +97 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
import { UseThemeOptions } from '../hooks/useTheme';
|
|
3
|
+
/**
|
|
4
|
+
* This module provides a context and hook for the theme.
|
|
5
|
+
* @module Theme
|
|
6
|
+
*/
|
|
7
|
+
export type DefaultThemes = 'cerberus' | 'acheron' | 'elysium';
|
|
8
|
+
export type CustomThemes<K extends string = DefaultThemes> = 'cerberus' | K;
|
|
9
|
+
export type ColorModes = 'light' | 'dark' | 'system';
|
|
10
|
+
export interface ThemeContextValue<T extends string = DefaultThemes> {
|
|
11
|
+
/**
|
|
12
|
+
* The current theme.
|
|
13
|
+
*/
|
|
14
|
+
theme: CustomThemes<T>;
|
|
15
|
+
/**
|
|
16
|
+
* The current color mode.
|
|
17
|
+
*/
|
|
18
|
+
mode: ColorModes;
|
|
19
|
+
/**
|
|
20
|
+
* Called when the theme is updated.
|
|
21
|
+
*/
|
|
22
|
+
updateTheme: (theme: T) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Called when the color mode is updated.
|
|
25
|
+
*/
|
|
26
|
+
updateMode: (mode: ColorModes) => void;
|
|
27
|
+
}
|
|
28
|
+
export interface ThemeProviderProps extends UseThemeOptions {
|
|
29
|
+
/**
|
|
30
|
+
* The default theme.
|
|
31
|
+
*/
|
|
32
|
+
defaultTheme?: DefaultThemes;
|
|
33
|
+
/**
|
|
34
|
+
* The default color mode.
|
|
35
|
+
*/
|
|
36
|
+
defaultColorMode?: ColorModes;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* A context provider that allows the user to set the theme and mode of the
|
|
40
|
+
* application.
|
|
41
|
+
* @see https://cerberus.digitalu.design/react/use-theme-context
|
|
42
|
+
* @example
|
|
43
|
+
* ```tsx
|
|
44
|
+
* <ThemeProvider>
|
|
45
|
+
* <App />
|
|
46
|
+
* </ThemeProvider>
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare function ThemeProvider(props: PropsWithChildren<ThemeProviderProps>): import("react").JSX.Element;
|
|
50
|
+
/**
|
|
51
|
+
* Used to access the theme context.
|
|
52
|
+
*/
|
|
53
|
+
export declare function useThemeContext(): ThemeContextValue<DefaultThemes>;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
import { UseThemeOptions } from '../hooks/useTheme';
|
|
3
|
+
/**
|
|
4
|
+
* This module provides a context and hook for the theme.
|
|
5
|
+
* @module Theme
|
|
6
|
+
*/
|
|
7
|
+
export type DefaultThemes = 'cerberus' | 'acheron' | 'elysium';
|
|
8
|
+
export type CustomThemes<K extends string = DefaultThemes> = 'cerberus' | K;
|
|
9
|
+
export type ColorModes = 'light' | 'dark' | 'system';
|
|
10
|
+
export interface ThemeContextValue<T extends string = DefaultThemes> {
|
|
11
|
+
/**
|
|
12
|
+
* The current theme.
|
|
13
|
+
*/
|
|
14
|
+
theme: CustomThemes<T>;
|
|
15
|
+
/**
|
|
16
|
+
* The current color mode.
|
|
17
|
+
*/
|
|
18
|
+
mode: ColorModes;
|
|
19
|
+
/**
|
|
20
|
+
* Called when the theme is updated.
|
|
21
|
+
*/
|
|
22
|
+
updateTheme: (theme: T) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Called when the color mode is updated.
|
|
25
|
+
*/
|
|
26
|
+
updateMode: (mode: ColorModes) => void;
|
|
27
|
+
}
|
|
28
|
+
export interface ThemeProviderProps extends UseThemeOptions {
|
|
29
|
+
/**
|
|
30
|
+
* The default theme.
|
|
31
|
+
*/
|
|
32
|
+
defaultTheme?: DefaultThemes;
|
|
33
|
+
/**
|
|
34
|
+
* The default color mode.
|
|
35
|
+
*/
|
|
36
|
+
defaultColorMode?: ColorModes;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* A context provider that allows the user to set the theme and mode of the
|
|
40
|
+
* application.
|
|
41
|
+
* @see https://cerberus.digitalu.design/react/use-theme-context
|
|
42
|
+
* @example
|
|
43
|
+
* ```tsx
|
|
44
|
+
* <ThemeProvider>
|
|
45
|
+
* <App />
|
|
46
|
+
* </ThemeProvider>
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare function ThemeProvider(props: PropsWithChildren<ThemeProviderProps>): import("react").JSX.Element;
|
|
50
|
+
/**
|
|
51
|
+
* Used to access the theme context.
|
|
52
|
+
*/
|
|
53
|
+
export declare function useThemeContext(): ThemeContextValue<DefaultThemes>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { useTheme } from "../hooks/useTheme.js";
|
|
4
|
+
import { createContext, useContext } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/context/theme.tsx
|
|
7
|
+
var ThemeContext = createContext(null);
|
|
8
|
+
/**
|
|
9
|
+
* A context provider that allows the user to set the theme and mode of the
|
|
10
|
+
* application.
|
|
11
|
+
* @see https://cerberus.digitalu.design/react/use-theme-context
|
|
12
|
+
* @example
|
|
13
|
+
* ```tsx
|
|
14
|
+
* <ThemeProvider>
|
|
15
|
+
* <App />
|
|
16
|
+
* </ThemeProvider>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
function ThemeProvider(props) {
|
|
20
|
+
const state = useTheme(props.defaultTheme, props.defaultColorMode, {
|
|
21
|
+
cache: props.cache,
|
|
22
|
+
updateMode: props.updateMode,
|
|
23
|
+
updateTheme: props.updateTheme
|
|
24
|
+
});
|
|
25
|
+
return /* @__PURE__ */ jsx(ThemeContext.Provider, {
|
|
26
|
+
value: state,
|
|
27
|
+
children: props.children
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Used to access the theme context.
|
|
32
|
+
*/
|
|
33
|
+
function useThemeContext() {
|
|
34
|
+
const context = useContext(ThemeContext);
|
|
35
|
+
if (!context) throw new Error("useThemeContext must be used within a ThemeProvider");
|
|
36
|
+
return context;
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { ThemeProvider, useThemeContext };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* This module provides a hook for using a custom modal.
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
export interface UseModalReturnValue {
|
|
7
|
+
/**
|
|
8
|
+
* The ref for the modal.
|
|
9
|
+
*/
|
|
10
|
+
modalRef: RefObject<HTMLDialogElement | null>;
|
|
11
|
+
/**
|
|
12
|
+
* Shows the modal.
|
|
13
|
+
*/
|
|
14
|
+
show: () => void;
|
|
15
|
+
/**
|
|
16
|
+
* Closes the modal.
|
|
17
|
+
*/
|
|
18
|
+
close: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* Whether the modal is open based on the show and close methods.
|
|
21
|
+
*/
|
|
22
|
+
isOpen: boolean;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Provides a hook for using a custom modal via the native dialog element
|
|
26
|
+
* methods.
|
|
27
|
+
*
|
|
28
|
+
* Cerberus modals use the native dialog element. This hook
|
|
29
|
+
* does not control the modal via React state but rather by calling the
|
|
30
|
+
* native dialog element's `showModal` and `close` methods.
|
|
31
|
+
*
|
|
32
|
+
* @memberof module:Modal
|
|
33
|
+
* @see https://cerberus.digitalu.design/react/modal
|
|
34
|
+
* @description [Moz Dev Dialog Docs](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/showModal)
|
|
35
|
+
*/
|
|
36
|
+
export declare function useModal(): UseModalReturnValue;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* This module provides a hook for using a custom modal.
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
export interface UseModalReturnValue {
|
|
7
|
+
/**
|
|
8
|
+
* The ref for the modal.
|
|
9
|
+
*/
|
|
10
|
+
modalRef: RefObject<HTMLDialogElement | null>;
|
|
11
|
+
/**
|
|
12
|
+
* Shows the modal.
|
|
13
|
+
*/
|
|
14
|
+
show: () => void;
|
|
15
|
+
/**
|
|
16
|
+
* Closes the modal.
|
|
17
|
+
*/
|
|
18
|
+
close: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* Whether the modal is open based on the show and close methods.
|
|
21
|
+
*/
|
|
22
|
+
isOpen: boolean;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Provides a hook for using a custom modal via the native dialog element
|
|
26
|
+
* methods.
|
|
27
|
+
*
|
|
28
|
+
* Cerberus modals use the native dialog element. This hook
|
|
29
|
+
* does not control the modal via React state but rather by calling the
|
|
30
|
+
* native dialog element's `showModal` and `close` methods.
|
|
31
|
+
*
|
|
32
|
+
* @memberof module:Modal
|
|
33
|
+
* @see https://cerberus.digitalu.design/react/modal
|
|
34
|
+
* @description [Moz Dev Dialog Docs](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/showModal)
|
|
35
|
+
*/
|
|
36
|
+
export declare function useModal(): UseModalReturnValue;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
let react = require("react");
|
|
4
|
+
//#region src/hooks/useRootColors.ts
|
|
5
|
+
/**
|
|
6
|
+
* This hook returns a record of Cerberus colors from the document root.
|
|
7
|
+
* This is useful when you are working with a component that uses the `<canvas>`
|
|
8
|
+
* element.
|
|
9
|
+
* @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
|
|
10
|
+
* @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
11
|
+
*/
|
|
12
|
+
function useRootColors(colors = []) {
|
|
13
|
+
const [state, dispatch] = (0, react.useReducer)(rootColorsReducer, {});
|
|
14
|
+
const handleRefetch = (0, react.useCallback)(() => {
|
|
15
|
+
return new Promise((resolve) => {
|
|
16
|
+
dispatch(formatColors(colors));
|
|
17
|
+
resolve();
|
|
18
|
+
});
|
|
19
|
+
}, [colors]);
|
|
20
|
+
(0, react.useEffect)(() => {
|
|
21
|
+
if (Object.keys(state).length === colors.length) return;
|
|
22
|
+
dispatch(formatColors(colors));
|
|
23
|
+
}, [colors, state]);
|
|
24
|
+
return (0, react.useMemo)(() => ({
|
|
25
|
+
colors: state,
|
|
26
|
+
refetch: handleRefetch
|
|
27
|
+
}), [state, handleRefetch]);
|
|
28
|
+
}
|
|
29
|
+
function formatColors(colors) {
|
|
30
|
+
const rootStyles = getComputedStyle(document.body);
|
|
31
|
+
return colors.reduce((acc, color) => {
|
|
32
|
+
const formattedColor = color.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().replaceAll(".", "-");
|
|
33
|
+
acc[color] = rootStyles.getPropertyValue(`--cerberus-colors-${formattedColor}`).trim();
|
|
34
|
+
return acc;
|
|
35
|
+
}, {});
|
|
36
|
+
}
|
|
37
|
+
function rootColorsReducer(state, action) {
|
|
38
|
+
return {
|
|
39
|
+
...state,
|
|
40
|
+
...action
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
exports.useRootColors = useRootColors;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides a hook to get Cerberus colors from the document root.
|
|
3
|
+
* @module useRootColors
|
|
4
|
+
*/
|
|
5
|
+
export interface RootColorsResult {
|
|
6
|
+
/**
|
|
7
|
+
* A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
8
|
+
*/
|
|
9
|
+
colors: Record<string, string>;
|
|
10
|
+
/**
|
|
11
|
+
* A function to refetch the Cerberus colors from the document root. Useful when you need the latest colors after a theme/mode change.
|
|
12
|
+
*/
|
|
13
|
+
refetch: () => Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* This hook returns a record of Cerberus colors from the document root.
|
|
17
|
+
* This is useful when you are working with a component that uses the `<canvas>`
|
|
18
|
+
* element.
|
|
19
|
+
* @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
|
|
20
|
+
* @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
21
|
+
*/
|
|
22
|
+
export declare function useRootColors(colors?: string[]): RootColorsResult;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides a hook to get Cerberus colors from the document root.
|
|
3
|
+
* @module useRootColors
|
|
4
|
+
*/
|
|
5
|
+
export interface RootColorsResult {
|
|
6
|
+
/**
|
|
7
|
+
* A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
8
|
+
*/
|
|
9
|
+
colors: Record<string, string>;
|
|
10
|
+
/**
|
|
11
|
+
* A function to refetch the Cerberus colors from the document root. Useful when you need the latest colors after a theme/mode change.
|
|
12
|
+
*/
|
|
13
|
+
refetch: () => Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* This hook returns a record of Cerberus colors from the document root.
|
|
17
|
+
* This is useful when you are working with a component that uses the `<canvas>`
|
|
18
|
+
* element.
|
|
19
|
+
* @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
|
|
20
|
+
* @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
21
|
+
*/
|
|
22
|
+
export declare function useRootColors(colors?: string[]): RootColorsResult;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { useCallback, useEffect, useMemo, useReducer } from "react";
|
|
4
|
+
//#region src/hooks/useRootColors.ts
|
|
5
|
+
/**
|
|
6
|
+
* This hook returns a record of Cerberus colors from the document root.
|
|
7
|
+
* This is useful when you are working with a component that uses the `<canvas>`
|
|
8
|
+
* element.
|
|
9
|
+
* @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
|
|
10
|
+
* @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
|
|
11
|
+
*/
|
|
12
|
+
function useRootColors(colors = []) {
|
|
13
|
+
const [state, dispatch] = useReducer(rootColorsReducer, {});
|
|
14
|
+
const handleRefetch = useCallback(() => {
|
|
15
|
+
return new Promise((resolve) => {
|
|
16
|
+
dispatch(formatColors(colors));
|
|
17
|
+
resolve();
|
|
18
|
+
});
|
|
19
|
+
}, [colors]);
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
if (Object.keys(state).length === colors.length) return;
|
|
22
|
+
dispatch(formatColors(colors));
|
|
23
|
+
}, [colors, state]);
|
|
24
|
+
return useMemo(() => ({
|
|
25
|
+
colors: state,
|
|
26
|
+
refetch: handleRefetch
|
|
27
|
+
}), [state, handleRefetch]);
|
|
28
|
+
}
|
|
29
|
+
function formatColors(colors) {
|
|
30
|
+
const rootStyles = getComputedStyle(document.body);
|
|
31
|
+
return colors.reduce((acc, color) => {
|
|
32
|
+
const formattedColor = color.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().replaceAll(".", "-");
|
|
33
|
+
acc[color] = rootStyles.getPropertyValue(`--cerberus-colors-${formattedColor}`).trim();
|
|
34
|
+
return acc;
|
|
35
|
+
}, {});
|
|
36
|
+
}
|
|
37
|
+
function rootColorsReducer(state, action) {
|
|
38
|
+
return {
|
|
39
|
+
...state,
|
|
40
|
+
...action
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { useRootColors };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
let react = require("react");
|
|
4
|
+
//#region src/hooks/useTheme.ts
|
|
5
|
+
/**
|
|
6
|
+
* This module provides a hook for using the theme.
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
var THEME_KEY = "cerberus-theme";
|
|
10
|
+
var MODE_KEY = "cerberus-mode";
|
|
11
|
+
/**
|
|
12
|
+
* Provides a hook for using the theme for a single instance of the application.
|
|
13
|
+
* @see https://cerberus.digitalu.design/react/use-theme
|
|
14
|
+
* @param defaultTheme The default theme.
|
|
15
|
+
* @param defaultColorMode The default color mode.
|
|
16
|
+
* @param options Additional options.
|
|
17
|
+
*/
|
|
18
|
+
function useTheme(defaultTheme = "cerberus", defaultColorMode = "light", options = {}) {
|
|
19
|
+
const { updateMode, updateTheme, cache } = options;
|
|
20
|
+
const [theme, setTheme] = (0, react.useState)(defaultTheme);
|
|
21
|
+
const [colorMode, setColorMode] = (0, react.useState)(defaultColorMode);
|
|
22
|
+
const handleThemeChange = (0, react.useCallback)((newTheme) => {
|
|
23
|
+
setTheme(newTheme);
|
|
24
|
+
updateTheme?.(newTheme);
|
|
25
|
+
}, [updateTheme]);
|
|
26
|
+
const handleColorModeChange = (0, react.useCallback)((newMode) => {
|
|
27
|
+
setColorMode(newMode);
|
|
28
|
+
updateMode?.(newMode);
|
|
29
|
+
}, [updateMode]);
|
|
30
|
+
(0, react.useLayoutEffect)(() => {
|
|
31
|
+
const theme = localStorage.getItem(THEME_KEY);
|
|
32
|
+
if (theme) setTheme(theme);
|
|
33
|
+
}, []);
|
|
34
|
+
(0, react.useLayoutEffect)(() => {
|
|
35
|
+
const mode = localStorage.getItem(MODE_KEY);
|
|
36
|
+
if (mode) setColorMode(mode);
|
|
37
|
+
}, []);
|
|
38
|
+
(0, react.useEffect)(() => {
|
|
39
|
+
const root = document.documentElement;
|
|
40
|
+
root.dataset.pandaTheme = theme;
|
|
41
|
+
if (cache) localStorage.setItem(THEME_KEY, theme);
|
|
42
|
+
}, [theme, cache]);
|
|
43
|
+
(0, react.useEffect)(() => {
|
|
44
|
+
const root = document.documentElement;
|
|
45
|
+
if (colorMode === "system") root.dataset.colorMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
46
|
+
else root.dataset.colorMode = colorMode;
|
|
47
|
+
if (cache) localStorage.setItem(MODE_KEY, colorMode);
|
|
48
|
+
}, [colorMode, cache]);
|
|
49
|
+
return (0, react.useMemo)(() => ({
|
|
50
|
+
theme,
|
|
51
|
+
mode: colorMode,
|
|
52
|
+
updateTheme: handleThemeChange,
|
|
53
|
+
updateMode: handleColorModeChange
|
|
54
|
+
}), [
|
|
55
|
+
theme,
|
|
56
|
+
colorMode,
|
|
57
|
+
handleThemeChange,
|
|
58
|
+
handleColorModeChange
|
|
59
|
+
]);
|
|
60
|
+
}
|
|
61
|
+
//#endregion
|
|
62
|
+
exports.MODE_KEY = MODE_KEY;
|
|
63
|
+
exports.THEME_KEY = THEME_KEY;
|
|
64
|
+
exports.useTheme = useTheme;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ColorModes, CustomThemes, DefaultThemes, ThemeContextValue } from '../context/theme';
|
|
2
|
+
/**
|
|
3
|
+
* This module provides a hook for using the theme.
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
export declare const THEME_KEY = "cerberus-theme";
|
|
7
|
+
export declare const MODE_KEY = "cerberus-mode";
|
|
8
|
+
export interface UseThemeOptions<T extends string = DefaultThemes> {
|
|
9
|
+
/**
|
|
10
|
+
* Whether to cache the theme in local storage.
|
|
11
|
+
*/
|
|
12
|
+
cache?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Called when the theme is updated.
|
|
15
|
+
*/
|
|
16
|
+
updateTheme?: (theme: T) => void;
|
|
17
|
+
/**
|
|
18
|
+
* Called when the color mode is updated.
|
|
19
|
+
*/
|
|
20
|
+
updateMode?: (mode: ColorModes) => void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Provides a hook for using the theme for a single instance of the application.
|
|
24
|
+
* @see https://cerberus.digitalu.design/react/use-theme
|
|
25
|
+
* @param defaultTheme The default theme.
|
|
26
|
+
* @param defaultColorMode The default color mode.
|
|
27
|
+
* @param options Additional options.
|
|
28
|
+
*/
|
|
29
|
+
export declare function useTheme<C extends string = DefaultThemes>(defaultTheme?: CustomThemes<C>, defaultColorMode?: ColorModes, options?: UseThemeOptions<C>): ThemeContextValue<C>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ColorModes, CustomThemes, DefaultThemes, ThemeContextValue } from '../context/theme';
|
|
2
|
+
/**
|
|
3
|
+
* This module provides a hook for using the theme.
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
export declare const THEME_KEY = "cerberus-theme";
|
|
7
|
+
export declare const MODE_KEY = "cerberus-mode";
|
|
8
|
+
export interface UseThemeOptions<T extends string = DefaultThemes> {
|
|
9
|
+
/**
|
|
10
|
+
* Whether to cache the theme in local storage.
|
|
11
|
+
*/
|
|
12
|
+
cache?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Called when the theme is updated.
|
|
15
|
+
*/
|
|
16
|
+
updateTheme?: (theme: T) => void;
|
|
17
|
+
/**
|
|
18
|
+
* Called when the color mode is updated.
|
|
19
|
+
*/
|
|
20
|
+
updateMode?: (mode: ColorModes) => void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Provides a hook for using the theme for a single instance of the application.
|
|
24
|
+
* @see https://cerberus.digitalu.design/react/use-theme
|
|
25
|
+
* @param defaultTheme The default theme.
|
|
26
|
+
* @param defaultColorMode The default color mode.
|
|
27
|
+
* @param options Additional options.
|
|
28
|
+
*/
|
|
29
|
+
export declare function useTheme<C extends string = DefaultThemes>(defaultTheme?: CustomThemes<C>, defaultColorMode?: ColorModes, options?: UseThemeOptions<C>): ThemeContextValue<C>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { useCallback, useEffect, useLayoutEffect, useMemo, useState } from "react";
|
|
4
|
+
//#region src/hooks/useTheme.ts
|
|
5
|
+
/**
|
|
6
|
+
* This module provides a hook for using the theme.
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
var THEME_KEY = "cerberus-theme";
|
|
10
|
+
var MODE_KEY = "cerberus-mode";
|
|
11
|
+
/**
|
|
12
|
+
* Provides a hook for using the theme for a single instance of the application.
|
|
13
|
+
* @see https://cerberus.digitalu.design/react/use-theme
|
|
14
|
+
* @param defaultTheme The default theme.
|
|
15
|
+
* @param defaultColorMode The default color mode.
|
|
16
|
+
* @param options Additional options.
|
|
17
|
+
*/
|
|
18
|
+
function useTheme(defaultTheme = "cerberus", defaultColorMode = "light", options = {}) {
|
|
19
|
+
const { updateMode, updateTheme, cache } = options;
|
|
20
|
+
const [theme, setTheme] = useState(defaultTheme);
|
|
21
|
+
const [colorMode, setColorMode] = useState(defaultColorMode);
|
|
22
|
+
const handleThemeChange = useCallback((newTheme) => {
|
|
23
|
+
setTheme(newTheme);
|
|
24
|
+
updateTheme?.(newTheme);
|
|
25
|
+
}, [updateTheme]);
|
|
26
|
+
const handleColorModeChange = useCallback((newMode) => {
|
|
27
|
+
setColorMode(newMode);
|
|
28
|
+
updateMode?.(newMode);
|
|
29
|
+
}, [updateMode]);
|
|
30
|
+
useLayoutEffect(() => {
|
|
31
|
+
const theme = localStorage.getItem(THEME_KEY);
|
|
32
|
+
if (theme) setTheme(theme);
|
|
33
|
+
}, []);
|
|
34
|
+
useLayoutEffect(() => {
|
|
35
|
+
const mode = localStorage.getItem(MODE_KEY);
|
|
36
|
+
if (mode) setColorMode(mode);
|
|
37
|
+
}, []);
|
|
38
|
+
useEffect(() => {
|
|
39
|
+
const root = document.documentElement;
|
|
40
|
+
root.dataset.pandaTheme = theme;
|
|
41
|
+
if (cache) localStorage.setItem(THEME_KEY, theme);
|
|
42
|
+
}, [theme, cache]);
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
const root = document.documentElement;
|
|
45
|
+
if (colorMode === "system") root.dataset.colorMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
46
|
+
else root.dataset.colorMode = colorMode;
|
|
47
|
+
if (cache) localStorage.setItem(MODE_KEY, colorMode);
|
|
48
|
+
}, [colorMode, cache]);
|
|
49
|
+
return useMemo(() => ({
|
|
50
|
+
theme,
|
|
51
|
+
mode: colorMode,
|
|
52
|
+
updateTheme: handleThemeChange,
|
|
53
|
+
updateMode: handleColorModeChange
|
|
54
|
+
}), [
|
|
55
|
+
theme,
|
|
56
|
+
colorMode,
|
|
57
|
+
handleThemeChange,
|
|
58
|
+
handleColorModeChange
|
|
59
|
+
]);
|
|
60
|
+
}
|
|
61
|
+
//#endregion
|
|
62
|
+
export { MODE_KEY, THEME_KEY, useTheme };
|