@clicoh/orion-library 1.2.0-beta.2 → 1.2.0-beta.20
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/assets/css/expresivo.css +968 -0
- package/assets/logos/oculus-icon.svg +1 -0
- package/assets/logos/oculus-logo-sm-dark.svg +1 -0
- package/assets/logos/oculus-logo-sm.svg +1 -0
- package/assets/mascotas/svg/bugi-mascota-01-alerta.svg +39 -0
- package/assets/mascotas/svg/bugi-mascota-02-investigando.svg +36 -0
- package/assets/mascotas/svg/bugi-mascota-05-sorprendido.svg +38 -0
- package/assets/mascotas/svg/oculus-mascota-01-feliz.svg +52 -0
- package/assets/mascotas/svg/oculus-mascota-02-investigando.svg +51 -0
- package/assets/mascotas/svg/oculus-mascota-03-dudando.svg +51 -0
- package/assets/mascotas/svg/oculus-mascota-04-analizando-documento.svg +53 -0
- package/assets/mascotas/svg/oculus-mascota-06-celebrando.svg +54 -0
- package/assets/mascotas/svg/oculus-mascota-07-buscando-rapido.svg +57 -0
- package/assets/mascotas/svg/oculus-mascota-08-satisfecho.svg +55 -0
- package/assets/mascotas/webp/fixi-mascota-01-feliz-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-02-investigando-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-03-dudando-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-04-reparando-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-05-sorprendido-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-06-celebrando-sm.webp +0 -0
- package/assets/mascotas/webp/fixi-mascota-07-corriendo-sm.webp +0 -0
- package/dist/components/01-atoms/Button/Button.d.ts +21 -1
- package/dist/components/01-atoms/Button/Button.d.ts.map +1 -1
- package/dist/components/01-atoms/Button/Button.jsx +38 -4
- package/dist/components/01-atoms/Button/Button.jsx.map +1 -1
- package/dist/components/01-atoms/CodeBlock/CodeBlock.d.ts +56 -0
- package/dist/components/01-atoms/CodeBlock/CodeBlock.d.ts.map +1 -0
- package/dist/components/01-atoms/CodeBlock/CodeBlock.jsx +97 -0
- package/dist/components/01-atoms/CodeBlock/CodeBlock.jsx.map +1 -0
- package/dist/components/01-atoms/CodeBlock/index.d.ts +2 -0
- package/dist/components/01-atoms/CodeBlock/index.d.ts.map +1 -0
- package/dist/components/01-atoms/CodeBlock/index.js +2 -0
- package/dist/components/01-atoms/CodeBlock/index.js.map +1 -0
- package/dist/components/01-atoms/Heading/Heading.jsx +1 -1
- package/dist/components/01-atoms/Heading/Heading.jsx.map +1 -1
- package/dist/components/01-atoms/IconButton/IconButton.d.ts +28 -0
- package/dist/components/01-atoms/IconButton/IconButton.d.ts.map +1 -0
- package/dist/components/01-atoms/IconButton/IconButton.jsx +32 -0
- package/dist/components/01-atoms/IconButton/IconButton.jsx.map +1 -0
- package/dist/components/01-atoms/IconButton/index.d.ts +2 -0
- package/dist/components/01-atoms/IconButton/index.d.ts.map +1 -0
- package/dist/components/01-atoms/IconButton/index.js +2 -0
- package/dist/components/01-atoms/IconButton/index.js.map +1 -0
- package/dist/components/01-atoms/Input/Input.d.ts +1 -1
- package/dist/components/01-atoms/Input/Input.d.ts.map +1 -1
- package/dist/components/01-atoms/Input/Input.jsx +13 -9
- package/dist/components/01-atoms/Input/Input.jsx.map +1 -1
- package/dist/components/01-atoms/Input/utils/RenderErrorOrHelperText.d.ts.map +1 -1
- package/dist/components/01-atoms/Input/utils/RenderErrorOrHelperText.jsx +1 -1
- package/dist/components/01-atoms/Input/utils/RenderErrorOrHelperText.jsx.map +1 -1
- package/dist/components/01-atoms/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/01-atoms/MultiSelect/MultiSelect.jsx +2 -1
- package/dist/components/01-atoms/MultiSelect/MultiSelect.jsx.map +1 -1
- package/dist/components/01-atoms/ProgressBar/ProgressBar.d.ts +12 -1
- package/dist/components/01-atoms/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/components/01-atoms/ProgressBar/ProgressBar.jsx +18 -2
- package/dist/components/01-atoms/ProgressBar/ProgressBar.jsx.map +1 -1
- package/dist/components/01-atoms/Select/Select.d.ts +7 -1
- package/dist/components/01-atoms/Select/Select.d.ts.map +1 -1
- package/dist/components/01-atoms/Select/Select.jsx +61 -13
- package/dist/components/01-atoms/Select/Select.jsx.map +1 -1
- package/dist/components/01-atoms/Select/SelectList.d.ts +41 -0
- package/dist/components/01-atoms/Select/SelectList.d.ts.map +1 -0
- package/dist/components/01-atoms/Select/SelectList.jsx +116 -0
- package/dist/components/01-atoms/Select/SelectList.jsx.map +1 -0
- package/dist/components/01-atoms/SmallInput/SmallInput.d.ts.map +1 -1
- package/dist/components/01-atoms/SmallInput/SmallInput.jsx +1 -0
- package/dist/components/01-atoms/SmallInput/SmallInput.jsx.map +1 -1
- package/dist/components/01-atoms/Spinner/Spinner.d.ts +24 -3
- package/dist/components/01-atoms/Spinner/Spinner.d.ts.map +1 -1
- package/dist/components/01-atoms/Spinner/Spinner.jsx +30 -4
- package/dist/components/01-atoms/Spinner/Spinner.jsx.map +1 -1
- package/dist/components/01-atoms/Spinner/index.d.ts +1 -0
- package/dist/components/01-atoms/Spinner/index.d.ts.map +1 -1
- package/dist/components/01-atoms/Stat/Stat.d.ts +47 -0
- package/dist/components/01-atoms/Stat/Stat.d.ts.map +1 -0
- package/dist/components/01-atoms/Stat/Stat.jsx +64 -0
- package/dist/components/01-atoms/Stat/Stat.jsx.map +1 -0
- package/dist/components/01-atoms/Stat/index.d.ts +2 -0
- package/dist/components/01-atoms/Stat/index.d.ts.map +1 -0
- package/dist/components/01-atoms/Stat/index.js +2 -0
- package/dist/components/01-atoms/Stat/index.js.map +1 -0
- package/dist/components/01-atoms/Switch/Switch.d.ts +5 -2
- package/dist/components/01-atoms/Switch/Switch.d.ts.map +1 -1
- package/dist/components/01-atoms/Switch/Switch.jsx +15 -12
- package/dist/components/01-atoms/Switch/Switch.jsx.map +1 -1
- package/dist/components/01-atoms/Textarea/Textarea.d.ts +38 -0
- package/dist/components/01-atoms/Textarea/Textarea.d.ts.map +1 -0
- package/dist/components/01-atoms/Textarea/Textarea.jsx +50 -0
- package/dist/components/01-atoms/Textarea/Textarea.jsx.map +1 -0
- package/dist/components/01-atoms/Textarea/index.d.ts +2 -0
- package/dist/components/01-atoms/Textarea/index.d.ts.map +1 -0
- package/dist/components/01-atoms/Textarea/index.js +2 -0
- package/dist/components/01-atoms/Textarea/index.js.map +1 -0
- package/dist/components/01-atoms/Toast/Toast.d.ts.map +1 -1
- package/dist/components/01-atoms/Toast/Toast.jsx +3 -1
- package/dist/components/01-atoms/Toast/Toast.jsx.map +1 -1
- package/dist/components/01-atoms/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/01-atoms/Tooltip/Tooltip.jsx +4 -1
- package/dist/components/01-atoms/Tooltip/Tooltip.jsx.map +1 -1
- package/dist/components/01-atoms/index.d.ts +4 -0
- package/dist/components/01-atoms/index.d.ts.map +1 -1
- package/dist/components/01-atoms/index.js +4 -0
- package/dist/components/01-atoms/index.js.map +1 -1
- package/dist/components/02-molecules/Accordion/Accordion.d.ts +15 -4
- package/dist/components/02-molecules/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/02-molecules/Accordion/Accordion.jsx +20 -6
- package/dist/components/02-molecules/Accordion/Accordion.jsx.map +1 -1
- package/dist/components/02-molecules/Accordion/AccordionContext.d.ts +5 -1
- package/dist/components/02-molecules/Accordion/AccordionContext.d.ts.map +1 -1
- package/dist/components/02-molecules/Accordion/AccordionContext.jsx +7 -6
- package/dist/components/02-molecules/Accordion/AccordionContext.jsx.map +1 -1
- package/dist/components/02-molecules/Accordion/AccordionSection.d.ts +2 -1
- package/dist/components/02-molecules/Accordion/AccordionSection.d.ts.map +1 -1
- package/dist/components/02-molecules/Accordion/AccordionSection.jsx +62 -11
- package/dist/components/02-molecules/Accordion/AccordionSection.jsx.map +1 -1
- package/dist/components/02-molecules/Accordion/index.d.ts +1 -0
- package/dist/components/02-molecules/Accordion/index.d.ts.map +1 -1
- package/dist/components/02-molecules/Accordion/index.js.map +1 -1
- package/dist/components/02-molecules/Autocomplete/Autocomplete.d.ts +4 -1
- package/dist/components/02-molecules/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/components/02-molecules/Autocomplete/Autocomplete.jsx +34 -15
- package/dist/components/02-molecules/Autocomplete/Autocomplete.jsx.map +1 -1
- package/dist/components/02-molecules/Card/Card.d.ts +74 -0
- package/dist/components/02-molecules/Card/Card.d.ts.map +1 -0
- package/dist/components/02-molecules/Card/Card.jsx +87 -0
- package/dist/components/02-molecules/Card/Card.jsx.map +1 -0
- package/dist/components/02-molecules/Card/index.d.ts +2 -0
- package/dist/components/02-molecules/Card/index.d.ts.map +1 -0
- package/dist/components/02-molecules/Card/index.js +2 -0
- package/dist/components/02-molecules/Card/index.js.map +1 -0
- package/dist/components/02-molecules/DatePicker/DatePicker.d.ts +41 -3
- package/dist/components/02-molecules/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/02-molecules/DatePicker/DatePicker.jsx +190 -34
- package/dist/components/02-molecules/DatePicker/DatePicker.jsx.map +1 -1
- package/dist/components/02-molecules/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/components/02-molecules/Dropdown/Dropdown.jsx +1 -0
- package/dist/components/02-molecules/Dropdown/Dropdown.jsx.map +1 -1
- package/dist/components/02-molecules/EmptyState/EmptyState.d.ts +52 -0
- package/dist/components/02-molecules/EmptyState/EmptyState.d.ts.map +1 -0
- package/dist/components/02-molecules/EmptyState/EmptyState.jsx +66 -0
- package/dist/components/02-molecules/EmptyState/EmptyState.jsx.map +1 -0
- package/dist/components/02-molecules/EmptyState/index.d.ts +2 -0
- package/dist/components/02-molecules/EmptyState/index.d.ts.map +1 -0
- package/dist/components/02-molecules/EmptyState/index.js +2 -0
- package/dist/components/02-molecules/EmptyState/index.js.map +1 -0
- package/dist/components/02-molecules/Filter/Filter.d.ts +8 -1
- package/dist/components/02-molecules/Filter/Filter.d.ts.map +1 -1
- package/dist/components/02-molecules/Filter/Filter.jsx +35 -11
- package/dist/components/02-molecules/Filter/Filter.jsx.map +1 -1
- package/dist/components/02-molecules/Filter/index.d.ts +1 -0
- package/dist/components/02-molecules/Filter/index.d.ts.map +1 -1
- package/dist/components/02-molecules/Filter/index.js +1 -0
- package/dist/components/02-molecules/Filter/index.js.map +1 -1
- package/dist/components/02-molecules/Filter/types.d.ts +24 -5
- package/dist/components/02-molecules/Filter/types.d.ts.map +1 -1
- package/dist/components/02-molecules/Filter/utils/pruneOrphanValues.d.ts +34 -0
- package/dist/components/02-molecules/Filter/utils/pruneOrphanValues.d.ts.map +1 -0
- package/dist/components/02-molecules/Filter/utils/pruneOrphanValues.js +70 -0
- package/dist/components/02-molecules/Filter/utils/pruneOrphanValues.js.map +1 -0
- package/dist/components/02-molecules/ImageViewer/ImageViewer.d.ts +55 -5
- package/dist/components/02-molecules/ImageViewer/ImageViewer.d.ts.map +1 -1
- package/dist/components/02-molecules/ImageViewer/ImageViewer.jsx +118 -27
- package/dist/components/02-molecules/ImageViewer/ImageViewer.jsx.map +1 -1
- package/dist/components/02-molecules/ImageViewer/ImageViewerImage.d.ts +40 -0
- package/dist/components/02-molecules/ImageViewer/ImageViewerImage.d.ts.map +1 -0
- package/dist/components/02-molecules/ImageViewer/ImageViewerImage.jsx +109 -0
- package/dist/components/02-molecules/ImageViewer/ImageViewerImage.jsx.map +1 -0
- package/dist/components/02-molecules/InlineMessage/InlineMessage.d.ts +15 -1
- package/dist/components/02-molecules/InlineMessage/InlineMessage.d.ts.map +1 -1
- package/dist/components/02-molecules/InlineMessage/InlineMessage.jsx +18 -3
- package/dist/components/02-molecules/InlineMessage/InlineMessage.jsx.map +1 -1
- package/dist/components/02-molecules/Menu/MenuItem.d.ts.map +1 -1
- package/dist/components/02-molecules/Menu/MenuItem.jsx +2 -2
- package/dist/components/02-molecules/Menu/MenuItem.jsx.map +1 -1
- package/dist/components/02-molecules/Menu/MenuList.d.ts.map +1 -1
- package/dist/components/02-molecules/Menu/MenuList.jsx +1 -1
- package/dist/components/02-molecules/Menu/MenuList.jsx.map +1 -1
- package/dist/components/02-molecules/Modal/Modal.d.ts +5 -1
- package/dist/components/02-molecules/Modal/Modal.d.ts.map +1 -1
- package/dist/components/02-molecules/Modal/Modal.jsx +4 -2
- package/dist/components/02-molecules/Modal/Modal.jsx.map +1 -1
- package/dist/components/02-molecules/MultiAutocomplete/MultiAutocomplete.d.ts +80 -0
- package/dist/components/02-molecules/MultiAutocomplete/MultiAutocomplete.d.ts.map +1 -0
- package/dist/components/02-molecules/MultiAutocomplete/MultiAutocomplete.jsx +261 -0
- package/dist/components/02-molecules/MultiAutocomplete/MultiAutocomplete.jsx.map +1 -0
- package/dist/components/02-molecules/MultiAutocomplete/index.d.ts +2 -0
- package/dist/components/02-molecules/MultiAutocomplete/index.d.ts.map +1 -0
- package/dist/components/02-molecules/MultiAutocomplete/index.js +2 -0
- package/dist/components/02-molecules/MultiAutocomplete/index.js.map +1 -0
- package/dist/components/02-molecules/Stepper/Stepper.d.ts +70 -0
- package/dist/components/02-molecules/Stepper/Stepper.d.ts.map +1 -0
- package/dist/components/02-molecules/Stepper/Stepper.jsx +204 -0
- package/dist/components/02-molecules/Stepper/Stepper.jsx.map +1 -0
- package/dist/components/02-molecules/Stepper/index.d.ts +2 -0
- package/dist/components/02-molecules/Stepper/index.d.ts.map +1 -0
- package/dist/components/02-molecules/Stepper/index.js +2 -0
- package/dist/components/02-molecules/Stepper/index.js.map +1 -0
- package/dist/components/02-molecules/Table/Table.d.ts +3 -1
- package/dist/components/02-molecules/Table/Table.d.ts.map +1 -1
- package/dist/components/02-molecules/Table/Table.jsx +6 -5
- package/dist/components/02-molecules/Table/Table.jsx.map +1 -1
- package/dist/components/02-molecules/Timeline/Timeline.d.ts +47 -0
- package/dist/components/02-molecules/Timeline/Timeline.d.ts.map +1 -0
- package/dist/components/02-molecules/Timeline/Timeline.jsx +65 -0
- package/dist/components/02-molecules/Timeline/Timeline.jsx.map +1 -0
- package/dist/components/02-molecules/Timeline/index.d.ts +2 -0
- package/dist/components/02-molecules/Timeline/index.d.ts.map +1 -0
- package/dist/components/02-molecules/Timeline/index.js +2 -0
- package/dist/components/02-molecules/Timeline/index.js.map +1 -0
- package/dist/components/02-molecules/index.d.ts +5 -0
- package/dist/components/02-molecules/index.d.ts.map +1 -1
- package/dist/components/02-molecules/index.js +5 -0
- package/dist/components/02-molecules/index.js.map +1 -1
- package/dist/components/03-organisms/DataTable/DataTable.d.ts +1 -1
- package/dist/components/03-organisms/DataTable/DataTable.d.ts.map +1 -1
- package/dist/components/03-organisms/DataTable/DataTable.jsx.map +1 -1
- package/dist/components/03-organisms/Header/Header.d.ts +3 -1
- package/dist/components/03-organisms/Header/Header.d.ts.map +1 -1
- package/dist/components/03-organisms/Header/Header.jsx +4 -5
- package/dist/components/03-organisms/Header/Header.jsx.map +1 -1
- package/dist/components/03-organisms/MapView/MapView.d.ts +14 -3
- package/dist/components/03-organisms/MapView/MapView.d.ts.map +1 -1
- package/dist/components/03-organisms/MapView/MapView.jsx +40 -9
- package/dist/components/03-organisms/MapView/MapView.jsx.map +1 -1
- package/dist/components/03-organisms/ModalMultiple/ModalMultiple.d.ts.map +1 -1
- package/dist/components/03-organisms/ModalMultiple/ModalMultiple.jsx +1 -0
- package/dist/components/03-organisms/ModalMultiple/ModalMultiple.jsx.map +1 -1
- package/dist/components/04-templates/DashboardTemplate/DashboardTemplate.d.ts +36 -4
- package/dist/components/04-templates/DashboardTemplate/DashboardTemplate.d.ts.map +1 -1
- package/dist/components/04-templates/DashboardTemplate/DashboardTemplate.jsx +44 -10
- package/dist/components/04-templates/DashboardTemplate/DashboardTemplate.jsx.map +1 -1
- package/dist/components/04-templates/DashboardTemplate/HeadingWithTitle.d.ts +6 -2
- package/dist/components/04-templates/DashboardTemplate/HeadingWithTitle.d.ts.map +1 -1
- package/dist/components/04-templates/DashboardTemplate/HeadingWithTitle.jsx +7 -3
- package/dist/components/04-templates/DashboardTemplate/HeadingWithTitle.jsx.map +1 -1
- package/dist/components/04-templates/LoginTemplate/LoginForm.d.ts +66 -3
- package/dist/components/04-templates/LoginTemplate/LoginForm.d.ts.map +1 -1
- package/dist/components/04-templates/LoginTemplate/LoginForm.jsx +80 -16
- package/dist/components/04-templates/LoginTemplate/LoginForm.jsx.map +1 -1
- package/dist/components/04-templates/LoginTemplate/LoginTemplate.d.ts +24 -4
- package/dist/components/04-templates/LoginTemplate/LoginTemplate.d.ts.map +1 -1
- package/dist/components/04-templates/LoginTemplate/LoginTemplate.jsx +27 -7
- package/dist/components/04-templates/LoginTemplate/LoginTemplate.jsx.map +1 -1
- package/dist/components/04-templates/LoginTemplate/index.d.ts +1 -0
- package/dist/components/04-templates/LoginTemplate/index.d.ts.map +1 -1
- package/dist/components/04-templates/SideFilterTemplate/SideFilterTemplate.d.ts.map +1 -1
- package/dist/components/04-templates/SideFilterTemplate/SideFilterTemplate.jsx +4 -1
- package/dist/components/04-templates/SideFilterTemplate/SideFilterTemplate.jsx.map +1 -1
- package/dist/hooks/useSegments.d.ts.map +1 -1
- package/dist/hooks/useSegments.js +2 -3
- package/dist/hooks/useSegments.js.map +1 -1
- package/dist/hooks/useTheme.d.ts.map +1 -1
- package/dist/hooks/useTheme.jsx +1 -0
- package/dist/hooks/useTheme.jsx.map +1 -1
- package/expresivo/ExpBubble/ExpBubble.d.ts +51 -0
- package/expresivo/ExpBubble/ExpBubble.d.ts.map +1 -0
- package/expresivo/ExpBubble/ExpBubble.jsx +74 -0
- package/expresivo/ExpBubble/ExpBubble.jsx.map +1 -0
- package/expresivo/ExpBubble/index.d.ts +3 -0
- package/expresivo/ExpBubble/index.d.ts.map +1 -0
- package/expresivo/ExpBubble/index.js +2 -0
- package/expresivo/ExpBubble/index.js.map +1 -0
- package/expresivo/ExpChip/ExpChip.d.ts +30 -0
- package/expresivo/ExpChip/ExpChip.d.ts.map +1 -0
- package/expresivo/ExpChip/ExpChip.jsx +46 -0
- package/expresivo/ExpChip/ExpChip.jsx.map +1 -0
- package/expresivo/ExpChip/index.d.ts +3 -0
- package/expresivo/ExpChip/index.d.ts.map +1 -0
- package/expresivo/ExpChip/index.js +2 -0
- package/expresivo/ExpChip/index.js.map +1 -0
- package/expresivo/ExpCollapseToggle/ExpCollapseToggle.d.ts +37 -0
- package/expresivo/ExpCollapseToggle/ExpCollapseToggle.d.ts.map +1 -0
- package/expresivo/ExpCollapseToggle/ExpCollapseToggle.jsx +43 -0
- package/expresivo/ExpCollapseToggle/ExpCollapseToggle.jsx.map +1 -0
- package/expresivo/ExpCollapseToggle/index.d.ts +3 -0
- package/expresivo/ExpCollapseToggle/index.d.ts.map +1 -0
- package/expresivo/ExpCollapseToggle/index.js +2 -0
- package/expresivo/ExpCollapseToggle/index.js.map +1 -0
- package/expresivo/ExpEnterIcon/ExpEnterIcon.d.ts +32 -0
- package/expresivo/ExpEnterIcon/ExpEnterIcon.d.ts.map +1 -0
- package/expresivo/ExpEnterIcon/ExpEnterIcon.jsx +32 -0
- package/expresivo/ExpEnterIcon/ExpEnterIcon.jsx.map +1 -0
- package/expresivo/ExpEnterIcon/index.d.ts +3 -0
- package/expresivo/ExpEnterIcon/index.d.ts.map +1 -0
- package/expresivo/ExpEnterIcon/index.js +2 -0
- package/expresivo/ExpEnterIcon/index.js.map +1 -0
- package/expresivo/ExpGrowBar/ExpGrowBar.d.ts +26 -0
- package/expresivo/ExpGrowBar/ExpGrowBar.d.ts.map +1 -0
- package/expresivo/ExpGrowBar/ExpGrowBar.jsx +39 -0
- package/expresivo/ExpGrowBar/ExpGrowBar.jsx.map +1 -0
- package/expresivo/ExpGrowBar/index.d.ts +3 -0
- package/expresivo/ExpGrowBar/index.d.ts.map +1 -0
- package/expresivo/ExpGrowBar/index.js +2 -0
- package/expresivo/ExpGrowBar/index.js.map +1 -0
- package/expresivo/ExpJourneyTrack/ExpJourneyTrack.d.ts +65 -0
- package/expresivo/ExpJourneyTrack/ExpJourneyTrack.d.ts.map +1 -0
- package/expresivo/ExpJourneyTrack/ExpJourneyTrack.jsx +156 -0
- package/expresivo/ExpJourneyTrack/ExpJourneyTrack.jsx.map +1 -0
- package/expresivo/ExpJourneyTrack/index.d.ts +3 -0
- package/expresivo/ExpJourneyTrack/index.d.ts.map +1 -0
- package/expresivo/ExpJourneyTrack/index.js +2 -0
- package/expresivo/ExpJourneyTrack/index.js.map +1 -0
- package/expresivo/ExpKeyButton/ExpKeyButton.d.ts +49 -0
- package/expresivo/ExpKeyButton/ExpKeyButton.d.ts.map +1 -0
- package/expresivo/ExpKeyButton/ExpKeyButton.jsx +60 -0
- package/expresivo/ExpKeyButton/ExpKeyButton.jsx.map +1 -0
- package/expresivo/ExpKeyButton/index.d.ts +3 -0
- package/expresivo/ExpKeyButton/index.d.ts.map +1 -0
- package/expresivo/ExpKeyButton/index.js +2 -0
- package/expresivo/ExpKeyButton/index.js.map +1 -0
- package/expresivo/ExpLensIcon/ExpLensIcon.d.ts +29 -0
- package/expresivo/ExpLensIcon/ExpLensIcon.d.ts.map +1 -0
- package/expresivo/ExpLensIcon/ExpLensIcon.jsx +29 -0
- package/expresivo/ExpLensIcon/ExpLensIcon.jsx.map +1 -0
- package/expresivo/ExpLensIcon/index.d.ts +3 -0
- package/expresivo/ExpLensIcon/index.d.ts.map +1 -0
- package/expresivo/ExpLensIcon/index.js +2 -0
- package/expresivo/ExpLensIcon/index.js.map +1 -0
- package/expresivo/ExpLogo/ExpLogo.d.ts +33 -0
- package/expresivo/ExpLogo/ExpLogo.d.ts.map +1 -0
- package/expresivo/ExpLogo/ExpLogo.jsx +42 -0
- package/expresivo/ExpLogo/ExpLogo.jsx.map +1 -0
- package/expresivo/ExpLogo/catalog.d.ts +17 -0
- package/expresivo/ExpLogo/catalog.d.ts.map +1 -0
- package/expresivo/ExpLogo/catalog.js +11 -0
- package/expresivo/ExpLogo/catalog.js.map +1 -0
- package/expresivo/ExpLogo/index.d.ts +4 -0
- package/expresivo/ExpLogo/index.d.ts.map +1 -0
- package/expresivo/ExpLogo/index.js +2 -0
- package/expresivo/ExpLogo/index.js.map +1 -0
- package/expresivo/ExpMascot/ExpMascot.d.ts +42 -0
- package/expresivo/ExpMascot/ExpMascot.d.ts.map +1 -0
- package/expresivo/ExpMascot/ExpMascot.jsx +46 -0
- package/expresivo/ExpMascot/ExpMascot.jsx.map +1 -0
- package/expresivo/ExpMascot/catalog.d.ts +12 -0
- package/expresivo/ExpMascot/catalog.d.ts.map +1 -0
- package/expresivo/ExpMascot/catalog.js +41 -0
- package/expresivo/ExpMascot/catalog.js.map +1 -0
- package/expresivo/ExpMascot/index.d.ts +4 -0
- package/expresivo/ExpMascot/index.d.ts.map +1 -0
- package/expresivo/ExpMascot/index.js +2 -0
- package/expresivo/ExpMascot/index.js.map +1 -0
- package/expresivo/ExpMedalBadge/ExpMedalBadge.d.ts +29 -0
- package/expresivo/ExpMedalBadge/ExpMedalBadge.d.ts.map +1 -0
- package/expresivo/ExpMedalBadge/ExpMedalBadge.jsx +87 -0
- package/expresivo/ExpMedalBadge/ExpMedalBadge.jsx.map +1 -0
- package/expresivo/ExpMedalBadge/index.d.ts +3 -0
- package/expresivo/ExpMedalBadge/index.d.ts.map +1 -0
- package/expresivo/ExpMedalBadge/index.js +2 -0
- package/expresivo/ExpMedalBadge/index.js.map +1 -0
- package/expresivo/ExpPageHero/ExpPageHero.d.ts +82 -0
- package/expresivo/ExpPageHero/ExpPageHero.d.ts.map +1 -0
- package/expresivo/ExpPageHero/ExpPageHero.jsx +113 -0
- package/expresivo/ExpPageHero/ExpPageHero.jsx.map +1 -0
- package/expresivo/ExpPageHero/index.d.ts +3 -0
- package/expresivo/ExpPageHero/index.d.ts.map +1 -0
- package/expresivo/ExpPageHero/index.js +2 -0
- package/expresivo/ExpPageHero/index.js.map +1 -0
- package/expresivo/ExpPeek/ExpPeek.d.ts +56 -0
- package/expresivo/ExpPeek/ExpPeek.d.ts.map +1 -0
- package/expresivo/ExpPeek/ExpPeek.jsx +131 -0
- package/expresivo/ExpPeek/ExpPeek.jsx.map +1 -0
- package/expresivo/ExpPeek/index.d.ts +3 -0
- package/expresivo/ExpPeek/index.d.ts.map +1 -0
- package/expresivo/ExpPeek/index.js +2 -0
- package/expresivo/ExpPeek/index.js.map +1 -0
- package/expresivo/ExpPillButton/ExpPillButton.d.ts +44 -0
- package/expresivo/ExpPillButton/ExpPillButton.d.ts.map +1 -0
- package/expresivo/ExpPillButton/ExpPillButton.jsx +75 -0
- package/expresivo/ExpPillButton/ExpPillButton.jsx.map +1 -0
- package/expresivo/ExpPillButton/index.d.ts +3 -0
- package/expresivo/ExpPillButton/index.d.ts.map +1 -0
- package/expresivo/ExpPillButton/index.js +2 -0
- package/expresivo/ExpPillButton/index.js.map +1 -0
- package/expresivo/ExpScope/ExpScope.d.ts +63 -0
- package/expresivo/ExpScope/ExpScope.d.ts.map +1 -0
- package/expresivo/ExpScope/ExpScope.jsx +67 -0
- package/expresivo/ExpScope/ExpScope.jsx.map +1 -0
- package/expresivo/ExpScope/index.d.ts +3 -0
- package/expresivo/ExpScope/index.d.ts.map +1 -0
- package/expresivo/ExpScope/index.js +2 -0
- package/expresivo/ExpScope/index.js.map +1 -0
- package/expresivo/ExpScoreRing/ExpScoreRing.d.ts +35 -0
- package/expresivo/ExpScoreRing/ExpScoreRing.d.ts.map +1 -0
- package/expresivo/ExpScoreRing/ExpScoreRing.jsx +67 -0
- package/expresivo/ExpScoreRing/ExpScoreRing.jsx.map +1 -0
- package/expresivo/ExpScoreRing/index.d.ts +3 -0
- package/expresivo/ExpScoreRing/index.d.ts.map +1 -0
- package/expresivo/ExpScoreRing/index.js +2 -0
- package/expresivo/ExpScoreRing/index.js.map +1 -0
- package/expresivo/ExpStepBadge/ExpStepBadge.d.ts +25 -0
- package/expresivo/ExpStepBadge/ExpStepBadge.d.ts.map +1 -0
- package/expresivo/ExpStepBadge/ExpStepBadge.jsx +30 -0
- package/expresivo/ExpStepBadge/ExpStepBadge.jsx.map +1 -0
- package/expresivo/ExpStepBadge/index.d.ts +2 -0
- package/expresivo/ExpStepBadge/index.d.ts.map +1 -0
- package/expresivo/ExpStepBadge/index.js +2 -0
- package/expresivo/ExpStepBadge/index.js.map +1 -0
- package/expresivo/index.d.ts +18 -0
- package/expresivo/index.d.ts.map +1 -0
- package/expresivo/index.js +18 -0
- package/expresivo/index.js.map +1 -0
- package/expresivo/shared/glyphs.d.ts +20 -0
- package/expresivo/shared/glyphs.d.ts.map +1 -0
- package/expresivo/shared/glyphs.jsx +60 -0
- package/expresivo/shared/glyphs.jsx.map +1 -0
- package/package.json +6 -4
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import { FiLogIn, FiRefreshCw, FiSearch } from 'react-icons/fi';
|
|
4
|
+
import { Button } from '@clicoh/orion-library';
|
|
5
|
+
import { useExpScope } from '../ExpScope/ExpScope';
|
|
6
|
+
import { EnterGlyph, LensGlyph, SyncBadgeGlyph, SyncGlyph, } from '../shared/glyphs';
|
|
7
|
+
const fallbackIconMap = {
|
|
8
|
+
lens: <FiSearch />,
|
|
9
|
+
sync: <FiRefreshCw />,
|
|
10
|
+
enter: <FiLogIn />,
|
|
11
|
+
none: undefined,
|
|
12
|
+
};
|
|
13
|
+
const toneMap = {
|
|
14
|
+
brand: {
|
|
15
|
+
idle: clsx('bg-lavender dark:bg-lavender-dark text-white shadow-[0_3px_10px_rgba(106,93,249,0.22)]', 'hover:from-lavender hover:to-violet hover:bg-linear-135 hover:shadow-[0_8px_20px_rgba(200,84,228,0.28)]', 'hover:-translate-y-px active:translate-y-0 active:scale-[.98]'),
|
|
16
|
+
busy: 'bg-lavender dark:bg-lavender-dark cursor-progress text-white shadow-[0_3px_10px_rgba(106,93,249,0.22)]',
|
|
17
|
+
disabled: 'bg-gray-5 text-gray-2 dark:bg-gray-dark-1 cursor-not-allowed',
|
|
18
|
+
},
|
|
19
|
+
soft: {
|
|
20
|
+
idle: clsx('bg-lavender-2 text-lavender dark:bg-lavender-dark-1 dark:text-lavender-dark', 'hover:bg-lavender-1 hover:-translate-y-px active:translate-y-0 active:scale-[.98]'),
|
|
21
|
+
busy: 'bg-lavender-2 text-lavender dark:bg-lavender-dark-1 dark:text-lavender-dark cursor-progress',
|
|
22
|
+
disabled: 'bg-gray-5 text-gray-2 dark:bg-gray-dark-1 cursor-not-allowed',
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Light pill-shaped call to action, the same 44px height as the core
|
|
27
|
+
* `Button`. `brand` is a filled lavender pill that turns into the clicOH
|
|
28
|
+
* gradient on hover, with its glyph in a white disc; `soft` is a tinted pill
|
|
29
|
+
* for secondary actions, such as a button inside a field.
|
|
30
|
+
*
|
|
31
|
+
* Outside an `ExpScope` it falls back to the core `Button`: `brand` maps to
|
|
32
|
+
* `principal` and `soft` to `second`.
|
|
33
|
+
*
|
|
34
|
+
* @component
|
|
35
|
+
* @example
|
|
36
|
+
* <ExpPillButton onClick={search}>Search</ExpPillButton>
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* <ExpPillButton tone="soft" icon="sync" busy={isSyncing} busyLabel="Syncing…">
|
|
40
|
+
* Sync
|
|
41
|
+
* </ExpPillButton>
|
|
42
|
+
*
|
|
43
|
+
* @param {Object} props - The properties of the ExpPillButton component.
|
|
44
|
+
* @param {'brand' | 'soft'} [props.tone='brand'] - Filled lavender or tinted.
|
|
45
|
+
* @param {'lens' | 'sync' | 'enter' | 'none'} [props.icon='lens'] - Glyph before the label.
|
|
46
|
+
* @param {boolean} [props.busy=false] - Blocks the button and animates its glyph.
|
|
47
|
+
* @param {string} [props.busyLabel] - Label shown while `busy`.
|
|
48
|
+
* @param {boolean} [props.block=false] - Takes the full width of its container.
|
|
49
|
+
* @param {ReactNode} props.children - Label of the action.
|
|
50
|
+
* @param {ButtonHTMLAttributes<HTMLButtonElement>} restProps - Additional properties for the button element.
|
|
51
|
+
*
|
|
52
|
+
* @returns {ReactNode} The rendered pill, or a core `Button` outside an `ExpScope`.
|
|
53
|
+
*/
|
|
54
|
+
export function ExpPillButton({ tone = 'brand', icon = 'lens', busy = false, busyLabel, block = false, disabled = false, children, ...restProps }) {
|
|
55
|
+
const inScope = useExpScope();
|
|
56
|
+
const label = busy && busyLabel ? busyLabel : children;
|
|
57
|
+
if (!inScope) {
|
|
58
|
+
return (<Button {...restProps} modifier={tone === 'brand' ? 'principal' : 'second'} iconL={fallbackIconMap[icon]} disabled={disabled || busy} aria-busy={busy || undefined} className={clsx(block && 'w-full', restProps.className)}>
|
|
59
|
+
{label}
|
|
60
|
+
</Button>);
|
|
61
|
+
}
|
|
62
|
+
const state = disabled ? 'disabled' : busy ? 'busy' : 'idle';
|
|
63
|
+
const hasDisc = tone === 'brand' && (icon === 'lens' || icon === 'sync');
|
|
64
|
+
return (<button {...restProps} disabled={disabled || busy} aria-busy={busy || undefined} className={clsx('h-11 items-center gap-2.5 rounded-full text-sm leading-5 font-semibold whitespace-nowrap', 'transition-[background-color,box-shadow,translate,scale] duration-200 motion-reduce:translate-none motion-reduce:scale-none motion-reduce:transition-none', block ? 'flex w-full justify-center' : 'inline-flex', icon === 'none' && 'px-6', icon !== 'none' && (hasDisc ? 'pr-[22px] pl-1.5' : 'pr-[18px] pl-3'), toneMap[tone][state], restProps.className)}>
|
|
65
|
+
{tone === 'brand' && icon === 'lens' && (<span aria-hidden="true" className={clsx('flex size-8 shrink-0 items-center justify-center rounded-full', disabled ? 'bg-gray-6' : 'bg-white')}>
|
|
66
|
+
<LensGlyph size={22} busy={busy} disabled={disabled}/>
|
|
67
|
+
</span>)}
|
|
68
|
+
{tone === 'brand' && icon === 'sync' && (<SyncBadgeGlyph size={32} busy={busy} disabled={disabled}/>)}
|
|
69
|
+
{tone === 'soft' && icon === 'lens' && (<LensGlyph size={20} busy={busy} disabled={disabled}/>)}
|
|
70
|
+
{tone === 'soft' && icon === 'sync' && (<SyncGlyph size={20} busy={busy} disabled={disabled}/>)}
|
|
71
|
+
{icon === 'enter' && (<EnterGlyph size={20} busy={busy} disabled={disabled}/>)}
|
|
72
|
+
{label}
|
|
73
|
+
</button>);
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=ExpPillButton.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpPillButton.jsx","sourceRoot":"","sources":["../../src/expresivo/ExpPillButton/ExpPillButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpPillButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expresivo/ExpPillButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export type ExpScopeTitles = 'playful' | 'plain';
|
|
3
|
+
export type ExpScopeTables = 'cards' | 'plain';
|
|
4
|
+
export type ExpScopeMascots = 'shown' | 'hidden';
|
|
5
|
+
export type ExpScopeOptions = {
|
|
6
|
+
/** `playful` sets core headings, top menu links and table headers in the title font. */
|
|
7
|
+
titles: ExpScopeTitles;
|
|
8
|
+
/** `cards` turns core table rows into separate cards that lift on hover. */
|
|
9
|
+
tables: ExpScopeTables;
|
|
10
|
+
/** `hidden` silences every mascot, for users who prefer a quiet interface. */
|
|
11
|
+
mascots: ExpScopeMascots;
|
|
12
|
+
};
|
|
13
|
+
export type ExpScopeProps = {
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
} & Partial<ExpScopeOptions>;
|
|
16
|
+
/**
|
|
17
|
+
* ExpScope turns on Orion's expressive layer for the page it renders in.
|
|
18
|
+
*
|
|
19
|
+
* Inside it, `Exp*` components render in full; outside it, they fall back to
|
|
20
|
+
* their core equivalent. While it is mounted, `assets/css/expresivo.css`
|
|
21
|
+
* reskins the core parts marked with `data-orion-part`, including the ones
|
|
22
|
+
* rendered in portals (tooltips, side filters, header menus).
|
|
23
|
+
*
|
|
24
|
+
* The options tune how loud the layer is, so a product can let its users
|
|
25
|
+
* pick a calmer look without leaving the scope.
|
|
26
|
+
*
|
|
27
|
+
* Only for consumers whose own docs declare `capa expresiva: sí`.
|
|
28
|
+
*
|
|
29
|
+
* @component
|
|
30
|
+
* @example
|
|
31
|
+
* <ExpScope>
|
|
32
|
+
* <App />
|
|
33
|
+
* </ExpScope>
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* // Core table rows and plain titles, no mascots
|
|
37
|
+
* <ExpScope titles="plain" tables="plain" mascots="hidden">
|
|
38
|
+
* <App />
|
|
39
|
+
* </ExpScope>
|
|
40
|
+
*
|
|
41
|
+
* @param {ExpScopeProps} props
|
|
42
|
+
* @param {ReactNode} props.children - Content that gets the expressive layer.
|
|
43
|
+
* @param {'playful' | 'plain'} [props.titles='playful'] - `playful` sets core headings, top menu links and table headers in the title font.
|
|
44
|
+
* @param {'cards' | 'plain'} [props.tables='cards'] - `cards` turns core table rows into separate cards; `plain` keeps the core rows.
|
|
45
|
+
* @param {'shown' | 'hidden'} [props.mascots='shown'] - `hidden` stops every `Exp*` component from drawing a mascot.
|
|
46
|
+
* @returns {ReactNode} The children inside a wrapper that adds no box.
|
|
47
|
+
*/
|
|
48
|
+
export declare function ExpScope({ children, titles, tables, mascots, }: ExpScopeProps): ReactNode;
|
|
49
|
+
/**
|
|
50
|
+
* Tells whether the caller renders inside an `ExpScope`. `Exp*` components
|
|
51
|
+
* use it to choose between their full look and their core fallback.
|
|
52
|
+
*
|
|
53
|
+
* @returns {boolean} `true` inside an `ExpScope`.
|
|
54
|
+
*/
|
|
55
|
+
export declare function useExpScope(): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Options of the nearest `ExpScope`, for `Exp*` components that change with
|
|
58
|
+
* them.
|
|
59
|
+
*
|
|
60
|
+
* @returns {ExpScopeOptions | null} The options, or `null` outside an `ExpScope`.
|
|
61
|
+
*/
|
|
62
|
+
export declare function useExpScopeOptions(): ExpScopeOptions | null;
|
|
63
|
+
//# sourceMappingURL=ExpScope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpScope.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpScope/ExpScope.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAiB,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAC;AAE3E,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEjD,MAAM,MAAM,eAAe,GAAG;IAC5B,wFAAwF;IACxF,MAAM,EAAE,cAAc,CAAC;IACvB,4EAA4E;IAC5E,MAAM,EAAE,cAAc,CAAC;IACvB,8EAA8E;IAC9E,OAAO,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAM7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,MAAkB,EAClB,MAAgB,EAChB,OAAiB,GAClB,EAAE,aAAa,GAAG,SAAS,CAqB3B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,GAAG,IAAI,CAE3D"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { DynaPuff } from 'next/font/google';
|
|
3
|
+
import { createContext, useContext, useMemo } from 'react';
|
|
4
|
+
const titleFont = DynaPuff({ subsets: ['latin'], display: 'swap' });
|
|
5
|
+
const ExpScopeContext = createContext(null);
|
|
6
|
+
/**
|
|
7
|
+
* ExpScope turns on Orion's expressive layer for the page it renders in.
|
|
8
|
+
*
|
|
9
|
+
* Inside it, `Exp*` components render in full; outside it, they fall back to
|
|
10
|
+
* their core equivalent. While it is mounted, `assets/css/expresivo.css`
|
|
11
|
+
* reskins the core parts marked with `data-orion-part`, including the ones
|
|
12
|
+
* rendered in portals (tooltips, side filters, header menus).
|
|
13
|
+
*
|
|
14
|
+
* The options tune how loud the layer is, so a product can let its users
|
|
15
|
+
* pick a calmer look without leaving the scope.
|
|
16
|
+
*
|
|
17
|
+
* Only for consumers whose own docs declare `capa expresiva: sí`.
|
|
18
|
+
*
|
|
19
|
+
* @component
|
|
20
|
+
* @example
|
|
21
|
+
* <ExpScope>
|
|
22
|
+
* <App />
|
|
23
|
+
* </ExpScope>
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* // Core table rows and plain titles, no mascots
|
|
27
|
+
* <ExpScope titles="plain" tables="plain" mascots="hidden">
|
|
28
|
+
* <App />
|
|
29
|
+
* </ExpScope>
|
|
30
|
+
*
|
|
31
|
+
* @param {ExpScopeProps} props
|
|
32
|
+
* @param {ReactNode} props.children - Content that gets the expressive layer.
|
|
33
|
+
* @param {'playful' | 'plain'} [props.titles='playful'] - `playful` sets core headings, top menu links and table headers in the title font.
|
|
34
|
+
* @param {'cards' | 'plain'} [props.tables='cards'] - `cards` turns core table rows into separate cards; `plain` keeps the core rows.
|
|
35
|
+
* @param {'shown' | 'hidden'} [props.mascots='shown'] - `hidden` stops every `Exp*` component from drawing a mascot.
|
|
36
|
+
* @returns {ReactNode} The children inside a wrapper that adds no box.
|
|
37
|
+
*/
|
|
38
|
+
export function ExpScope({ children, titles = 'playful', tables = 'cards', mascots = 'shown', }) {
|
|
39
|
+
const options = useMemo(() => ({ titles, tables, mascots }), [titles, tables, mascots]);
|
|
40
|
+
return (<ExpScopeContext.Provider value={options}>
|
|
41
|
+
<style href="exp-title-font" precedence="exp">
|
|
42
|
+
{`:root{--exp-title-font:${titleFont.style.fontFamily}}`}
|
|
43
|
+
</style>
|
|
44
|
+
<div className="exp-scope" data-exp-titles={titles} data-exp-tables={tables} data-exp-mascots={mascots}>
|
|
45
|
+
{children}
|
|
46
|
+
</div>
|
|
47
|
+
</ExpScopeContext.Provider>);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Tells whether the caller renders inside an `ExpScope`. `Exp*` components
|
|
51
|
+
* use it to choose between their full look and their core fallback.
|
|
52
|
+
*
|
|
53
|
+
* @returns {boolean} `true` inside an `ExpScope`.
|
|
54
|
+
*/
|
|
55
|
+
export function useExpScope() {
|
|
56
|
+
return useContext(ExpScopeContext) !== null;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Options of the nearest `ExpScope`, for `Exp*` components that change with
|
|
60
|
+
* them.
|
|
61
|
+
*
|
|
62
|
+
* @returns {ExpScopeOptions | null} The options, or `null` outside an `ExpScope`.
|
|
63
|
+
*/
|
|
64
|
+
export function useExpScopeOptions() {
|
|
65
|
+
return useContext(ExpScopeContext);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ExpScope.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpScope.jsx","sourceRoot":"","sources":["../../src/expresivo/ExpScope/ExpScope.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAqB3E,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAEpE,MAAM,eAAe,GAAG,aAAa,CAAyB,IAAI,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,QAAQ,CAAC,EACvB,QAAQ,EACR,MAAM,GAAG,SAAS,EAClB,MAAM,GAAG,OAAO,EAChB,OAAO,GAAG,OAAO,GACH;IACd,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EACnC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAC1B,CAAC;IAEF,OAAO,CACL,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CACvC;MAAA,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAC3C;QAAA,CAAC,0BAA0B,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,CAC1D;MAAA,EAAE,KAAK,CACP;MAAA,CAAC,GAAG,CACF,SAAS,CAAC,WAAW,CACrB,eAAe,CAAC,CAAC,MAAM,CAAC,CACxB,eAAe,CAAC,CAAC,MAAM,CAAC,CACxB,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAE1B;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,eAAe,CAAC,QAAQ,CAAC,CAC5B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,UAAU,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,UAAU,CAAC,eAAe,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpScope/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expresivo/ExpScope/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
export type ExpScoreRingProps = {
|
|
3
|
+
/** Score between 0 and 100. */
|
|
4
|
+
value: number;
|
|
5
|
+
/** Target score between 0 and 100, marked with a tick on the ring. */
|
|
6
|
+
goal?: number;
|
|
7
|
+
/** Width and height in pixels. */
|
|
8
|
+
size?: number;
|
|
9
|
+
/** Content centered inside the ring, such as the score and its caption. */
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
} & Omit<HTMLAttributes<HTMLDivElement>, 'children'>;
|
|
12
|
+
/**
|
|
13
|
+
* Score ring with an optional goal tick. The arc grows in the clicOH
|
|
14
|
+
* gradient when it mounts. The ring is decorative: put the score as text in
|
|
15
|
+
* `children`, centered inside it.
|
|
16
|
+
*
|
|
17
|
+
* Outside an `ExpScope` it falls back to the core `RadialProgressBar`, with
|
|
18
|
+
* `children` still centered on top.
|
|
19
|
+
*
|
|
20
|
+
* @component
|
|
21
|
+
* @example
|
|
22
|
+
* <ExpScoreRing value={57} goal={70}>
|
|
23
|
+
* <Heading level="h4">57</Heading>
|
|
24
|
+
* </ExpScoreRing>
|
|
25
|
+
*
|
|
26
|
+
* @param {Object} props - The properties of the ExpScoreRing component.
|
|
27
|
+
* @param {number} props.value - Score between 0 and 100.
|
|
28
|
+
* @param {number} [props.goal] - Target score, marked with a tick.
|
|
29
|
+
* @param {number} [props.size=120] - Width and height in pixels.
|
|
30
|
+
* @param {ReactNode} [props.children] - Content centered inside the ring.
|
|
31
|
+
*
|
|
32
|
+
* @returns {ReactNode} The ring, or a core `RadialProgressBar` outside an `ExpScope`.
|
|
33
|
+
*/
|
|
34
|
+
export declare function ExpScoreRing({ value, goal, size, children, ...restProps }: ExpScoreRingProps): ReactNode;
|
|
35
|
+
//# sourceMappingURL=ExpScoreRing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpScoreRing.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpScoreRing/ExpScoreRing.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAIf,MAAM,MAAM,iBAAiB,GAAG;IAC9B,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC;AAOrD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,IAAI,EACJ,IAAU,EACV,QAAQ,EACR,GAAG,SAAS,EACb,EAAE,iBAAiB,GAAG,SAAS,CAoF/B"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import { useEffect, useId, useState, } from 'react';
|
|
4
|
+
import { RadialProgressBar, Show } from '@clicoh/orion-library';
|
|
5
|
+
import { useExpScope } from '../ExpScope/ExpScope';
|
|
6
|
+
const RADIUS = 50;
|
|
7
|
+
const CIRCUMFERENCE = 2 * Math.PI * RADIUS;
|
|
8
|
+
const clamp = (value) => Math.min(100, Math.max(0, value));
|
|
9
|
+
/**
|
|
10
|
+
* Score ring with an optional goal tick. The arc grows in the clicOH
|
|
11
|
+
* gradient when it mounts. The ring is decorative: put the score as text in
|
|
12
|
+
* `children`, centered inside it.
|
|
13
|
+
*
|
|
14
|
+
* Outside an `ExpScope` it falls back to the core `RadialProgressBar`, with
|
|
15
|
+
* `children` still centered on top.
|
|
16
|
+
*
|
|
17
|
+
* @component
|
|
18
|
+
* @example
|
|
19
|
+
* <ExpScoreRing value={57} goal={70}>
|
|
20
|
+
* <Heading level="h4">57</Heading>
|
|
21
|
+
* </ExpScoreRing>
|
|
22
|
+
*
|
|
23
|
+
* @param {Object} props - The properties of the ExpScoreRing component.
|
|
24
|
+
* @param {number} props.value - Score between 0 and 100.
|
|
25
|
+
* @param {number} [props.goal] - Target score, marked with a tick.
|
|
26
|
+
* @param {number} [props.size=120] - Width and height in pixels.
|
|
27
|
+
* @param {ReactNode} [props.children] - Content centered inside the ring.
|
|
28
|
+
*
|
|
29
|
+
* @returns {ReactNode} The ring, or a core `RadialProgressBar` outside an `ExpScope`.
|
|
30
|
+
*/
|
|
31
|
+
export function ExpScoreRing({ value, goal, size = 120, children, ...restProps }) {
|
|
32
|
+
const inScope = useExpScope();
|
|
33
|
+
const gradientId = useId();
|
|
34
|
+
const [shown, setShown] = useState(0);
|
|
35
|
+
const percent = clamp(value);
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
const timer = setTimeout(() => setShown(percent), 60);
|
|
38
|
+
return () => clearTimeout(timer);
|
|
39
|
+
}, [percent]);
|
|
40
|
+
const goalAngle = typeof goal === 'number'
|
|
41
|
+
? ((clamp(goal) / 100) * 360 - 90) * (Math.PI / 180)
|
|
42
|
+
: null;
|
|
43
|
+
return (<div {...restProps} style={{ width: size, height: size, ...restProps.style }} className={clsx('relative inline-flex shrink-0', restProps.className)}>
|
|
44
|
+
<Show>
|
|
45
|
+
<Show.When isTrue={inScope}>
|
|
46
|
+
<svg aria-hidden="true" width={size} height={size} viewBox="0 0 120 120">
|
|
47
|
+
<defs>
|
|
48
|
+
<linearGradient id={gradientId} x1={0} y1={0} x2={1} y2={1}>
|
|
49
|
+
<stop offset={0} className="[stop-color:var(--color-lavender)]"/>
|
|
50
|
+
<stop offset={1} className="[stop-color:var(--color-violet)]"/>
|
|
51
|
+
</linearGradient>
|
|
52
|
+
</defs>
|
|
53
|
+
<circle cx={60} cy={60} r={RADIUS} fill="none" strokeWidth={10} className="stroke-gray-5 dark:stroke-gray-dark-1"/>
|
|
54
|
+
<circle cx={60} cy={60} r={RADIUS} fill="none" stroke={`url(#${gradientId})`} strokeWidth={10} strokeLinecap="round" strokeDasharray={CIRCUMFERENCE} strokeDashoffset={CIRCUMFERENCE * (1 - shown / 100)} transform="rotate(-90 60 60)" className="transition-[stroke-dashoffset] duration-900 ease-[cubic-bezier(.22,1,.36,1)] motion-reduce:transition-none"/>
|
|
55
|
+
{goalAngle !== null && (<line x1={60 + Math.cos(goalAngle) * 42} y1={60 + Math.sin(goalAngle) * 42} x2={60 + Math.cos(goalAngle) * 58} y2={60 + Math.sin(goalAngle) * 58} strokeWidth={2.5} strokeLinecap="round" className="stroke-black dark:stroke-white"/>)}
|
|
56
|
+
</svg>
|
|
57
|
+
</Show.When>
|
|
58
|
+
<Show.Else>
|
|
59
|
+
<RadialProgressBar value={percent} className="h-full w-full"/>
|
|
60
|
+
</Show.Else>
|
|
61
|
+
</Show>
|
|
62
|
+
{!!children && (<div className="absolute inset-0 flex flex-col items-center justify-center text-center">
|
|
63
|
+
{children}
|
|
64
|
+
</div>)}
|
|
65
|
+
</div>);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ExpScoreRing.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpScoreRing.jsx","sourceRoot":"","sources":["../../src/expresivo/ExpScoreRing/ExpScoreRing.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpScoreRing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expresivo/ExpScoreRing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export type ExpStepBadgeProps = {
|
|
3
|
+
/** Number of the step, usually 1 to 9. */
|
|
4
|
+
step: number;
|
|
5
|
+
} & Omit<HTMLAttributes<HTMLSpanElement>, 'children'>;
|
|
6
|
+
/**
|
|
7
|
+
* Tilted square with a step number, to put before the title of a numbered
|
|
8
|
+
* section. It is decorative: the title next to it carries the meaning.
|
|
9
|
+
*
|
|
10
|
+
* Outside an `ExpScope` it renders nothing, and the title stands alone.
|
|
11
|
+
*
|
|
12
|
+
* @component
|
|
13
|
+
* @example
|
|
14
|
+
* <div className="flex items-center gap-3">
|
|
15
|
+
* <ExpStepBadge step={1} />
|
|
16
|
+
* <Heading level="h6">Tell us what happened</Heading>
|
|
17
|
+
* </div>
|
|
18
|
+
*
|
|
19
|
+
* @param {ExpStepBadgeProps} props - The properties of the ExpStepBadge component.
|
|
20
|
+
* @param {number} props.step - Number of the step.
|
|
21
|
+
*
|
|
22
|
+
* @returns {ReactNode} The badge, or nothing outside an `ExpScope`.
|
|
23
|
+
*/
|
|
24
|
+
export declare function ExpStepBadge({ step, ...restProps }: ExpStepBadgeProps): ReactNode;
|
|
25
|
+
//# sourceMappingURL=ExpStepBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpStepBadge.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpStepBadge/ExpStepBadge.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,UAAU,CAAC,CAAC;AAEtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,SAAS,EACb,EAAE,iBAAiB,GAAG,SAAS,CAkB/B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import { useExpScope } from '../ExpScope/ExpScope';
|
|
4
|
+
/**
|
|
5
|
+
* Tilted square with a step number, to put before the title of a numbered
|
|
6
|
+
* section. It is decorative: the title next to it carries the meaning.
|
|
7
|
+
*
|
|
8
|
+
* Outside an `ExpScope` it renders nothing, and the title stands alone.
|
|
9
|
+
*
|
|
10
|
+
* @component
|
|
11
|
+
* @example
|
|
12
|
+
* <div className="flex items-center gap-3">
|
|
13
|
+
* <ExpStepBadge step={1} />
|
|
14
|
+
* <Heading level="h6">Tell us what happened</Heading>
|
|
15
|
+
* </div>
|
|
16
|
+
*
|
|
17
|
+
* @param {ExpStepBadgeProps} props - The properties of the ExpStepBadge component.
|
|
18
|
+
* @param {number} props.step - Number of the step.
|
|
19
|
+
*
|
|
20
|
+
* @returns {ReactNode} The badge, or nothing outside an `ExpScope`.
|
|
21
|
+
*/
|
|
22
|
+
export function ExpStepBadge({ step, ...restProps }) {
|
|
23
|
+
const inScope = useExpScope();
|
|
24
|
+
if (!inScope)
|
|
25
|
+
return null;
|
|
26
|
+
return (<span {...restProps} aria-hidden="true" className={clsx('flex size-7 shrink-0 -rotate-8 items-center justify-center rounded-lg bg-black text-[0.8125rem] leading-none font-bold text-white shadow-[2px_2px_0_var(--color-lavender-1)]', 'dark:bg-white dark:text-black dark:shadow-[2px_2px_0_var(--color-lavender-dark-1)]', restProps.className)}>
|
|
27
|
+
{step}
|
|
28
|
+
</span>);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=ExpStepBadge.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpStepBadge.jsx","sourceRoot":"","sources":["../../src/expresivo/ExpStepBadge/ExpStepBadge.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAOnD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,SAAS,EACM;IAClB,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAE9B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,OAAO,CACL,CAAC,IAAI,CACH,IAAI,SAAS,CAAC,CACd,WAAW,CAAC,MAAM,CAClB,SAAS,CAAC,CAAC,IAAI,CACb,8KAA8K,EAC9K,oFAAoF,EACpF,SAAS,CAAC,SAAS,CACpB,CAAC,CAEF;MAAA,CAAC,IAAI,CACP;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/expresivo/ExpStepBadge/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expresivo/ExpStepBadge/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './ExpScope';
|
|
2
|
+
export * from './ExpMascot';
|
|
3
|
+
export * from './ExpLogo';
|
|
4
|
+
export * from './ExpLensIcon';
|
|
5
|
+
export * from './ExpEnterIcon';
|
|
6
|
+
export * from './ExpPeek';
|
|
7
|
+
export * from './ExpKeyButton';
|
|
8
|
+
export * from './ExpPillButton';
|
|
9
|
+
export * from './ExpMedalBadge';
|
|
10
|
+
export * from './ExpScoreRing';
|
|
11
|
+
export * from './ExpGrowBar';
|
|
12
|
+
export * from './ExpJourneyTrack';
|
|
13
|
+
export * from './ExpBubble';
|
|
14
|
+
export * from './ExpCollapseToggle';
|
|
15
|
+
export * from './ExpPageHero';
|
|
16
|
+
export * from './ExpStepBadge';
|
|
17
|
+
export * from './ExpChip';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/expresivo/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './ExpScope';
|
|
2
|
+
export * from './ExpMascot';
|
|
3
|
+
export * from './ExpLogo';
|
|
4
|
+
export * from './ExpLensIcon';
|
|
5
|
+
export * from './ExpEnterIcon';
|
|
6
|
+
export * from './ExpPeek';
|
|
7
|
+
export * from './ExpKeyButton';
|
|
8
|
+
export * from './ExpPillButton';
|
|
9
|
+
export * from './ExpMedalBadge';
|
|
10
|
+
export * from './ExpScoreRing';
|
|
11
|
+
export * from './ExpGrowBar';
|
|
12
|
+
export * from './ExpJourneyTrack';
|
|
13
|
+
export * from './ExpBubble';
|
|
14
|
+
export * from './ExpCollapseToggle';
|
|
15
|
+
export * from './ExpPageHero';
|
|
16
|
+
export * from './ExpStepBadge';
|
|
17
|
+
export * from './ExpChip';
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/expresivo/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export type GlyphProps = {
|
|
3
|
+
size: number;
|
|
4
|
+
busy?: boolean;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Magnifier with an eye inside. Blinks at rest, looks towards the label
|
|
9
|
+
* while its button is hovered and scans while busy.
|
|
10
|
+
*/
|
|
11
|
+
export declare function LensGlyph({ size, busy, disabled }: GlyphProps): ReactNode;
|
|
12
|
+
/** Two arrows in a white disc. Turn while hovered, spin while busy. */
|
|
13
|
+
export declare function SyncBadgeGlyph({ size, busy, disabled, }: GlyphProps): ReactNode;
|
|
14
|
+
/** Two arrows in the text color. Half turn while hovered, spin while busy. */
|
|
15
|
+
export declare function SyncGlyph({ size, busy, disabled }: GlyphProps): ReactNode;
|
|
16
|
+
/** A door with an arrow going in. The arrow steps in while hovered or busy. */
|
|
17
|
+
export declare function EnterGlyph({ size, busy, disabled }: GlyphProps): ReactNode;
|
|
18
|
+
/** Right arrow that steps forward while its button is hovered. */
|
|
19
|
+
export declare function ArrowGlyph({ size }: Pick<GlyphProps, 'size'>): ReactNode;
|
|
20
|
+
//# sourceMappingURL=glyphs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glyphs.d.ts","sourceRoot":"","sources":["../../src/expresivo/shared/glyphs.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,UAAU,GAAG,SAAS,CAqDzE;AAED,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,IAAI,EACJ,QAAQ,GACT,EAAE,UAAU,GAAG,SAAS,CAwCxB;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,UAAU,GAAG,SAAS,CA4BzE;AAED,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,UAAU,GAAG,SAAS,CAyB1E;AAED,kEAAkE;AAClE,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,SAAS,CAiBxE"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import clsx from 'clsx';
|
|
2
|
+
/**
|
|
3
|
+
* Magnifier with an eye inside. Blinks at rest, looks towards the label
|
|
4
|
+
* while its button is hovered and scans while busy.
|
|
5
|
+
*/
|
|
6
|
+
export function LensGlyph({ size, busy, disabled }) {
|
|
7
|
+
return (<svg aria-hidden="true" width={size} height={size} viewBox="0 0 34 34" className={clsx('exp-lens shrink-0 overflow-visible', busy && 'exp-glyph--busy', disabled && 'exp-glyph--disabled')}>
|
|
8
|
+
<path d="M22.5 22.5 30 30" strokeWidth={4.5} strokeLinecap="round" className={disabled ? 'stroke-gray-3' : 'stroke-amber'}/>
|
|
9
|
+
<path d="M22.5 22.5 30 30" strokeWidth={2} strokeLinecap="round" className={disabled ? 'stroke-gray-4' : 'stroke-warning'}/>
|
|
10
|
+
<circle cx={14} cy={14} r={12.5} strokeWidth={2} className={clsx('fill-white', disabled ? 'stroke-gray-4' : 'stroke-lavender-1')}/>
|
|
11
|
+
<g className="exp-lens-lid">
|
|
12
|
+
<path d="M5 14C7.2 10.2 10.4 8.3 14 8.3S20.8 10.2 23 14C20.8 17.8 17.6 19.7 14 19.7S7.2 17.8 5 14Z" className={disabled ? 'fill-gray-6' : 'fill-lavender-2'}/>
|
|
13
|
+
<g className="exp-lens-pupil">
|
|
14
|
+
<circle cx={14} cy={14} r={4.6} className={disabled ? 'fill-gray-2' : 'fill-lavender'}/>
|
|
15
|
+
<circle cx={14} cy={14} r={2.2} className="fill-black"/>
|
|
16
|
+
<circle cx={15.6} cy={12.4} r={1.2} className="fill-white"/>
|
|
17
|
+
</g>
|
|
18
|
+
</g>
|
|
19
|
+
</svg>);
|
|
20
|
+
}
|
|
21
|
+
/** Two arrows in a white disc. Turn while hovered, spin while busy. */
|
|
22
|
+
export function SyncBadgeGlyph({ size, busy, disabled, }) {
|
|
23
|
+
return (<svg aria-hidden="true" width={size} height={size} viewBox="0 0 34 34" className={clsx('shrink-0 overflow-visible [--exp-rotor-turn:150deg]', busy && 'exp-glyph--busy', disabled && 'exp-glyph--disabled')}>
|
|
24
|
+
<circle cx={17} cy={17} r={15.5} strokeWidth={2} className={clsx('fill-white', disabled ? 'stroke-gray-4' : 'stroke-lavender-1')}/>
|
|
25
|
+
<g fill="none" strokeWidth={2.4} strokeLinecap="round" strokeLinejoin="round" className={clsx('exp-rotor', disabled ? 'stroke-gray-2' : 'stroke-lavender')}>
|
|
26
|
+
<path d="M24.5 13.5A8 8 0 0 0 10 12"/>
|
|
27
|
+
<polyline points="24.8 8.5 24.8 13.8 19.5 13.8"/>
|
|
28
|
+
<path d="M9.5 20.5A8 8 0 0 0 24 22"/>
|
|
29
|
+
<polyline points="9.2 25.5 9.2 20.2 14.5 20.2"/>
|
|
30
|
+
</g>
|
|
31
|
+
</svg>);
|
|
32
|
+
}
|
|
33
|
+
/** Two arrows in the text color. Half turn while hovered, spin while busy. */
|
|
34
|
+
export function SyncGlyph({ size, busy, disabled }) {
|
|
35
|
+
return (<svg aria-hidden="true" width={size} height={size} viewBox="0 0 24 24" className={clsx('shrink-0 overflow-visible', busy && 'exp-glyph--busy', disabled && 'exp-glyph--disabled')}>
|
|
36
|
+
<g fill="none" stroke="currentColor" strokeWidth={2.2} strokeLinecap="round" strokeLinejoin="round" className="exp-rotor">
|
|
37
|
+
<path d="M20 9A8 8 0 0 0 5.6 7.2"/>
|
|
38
|
+
<polyline points="20.5 4 20.5 9.2 15.3 9.2"/>
|
|
39
|
+
<path d="M4 15a8 8 0 0 0 14.4 1.8"/>
|
|
40
|
+
<polyline points="3.5 20 3.5 14.8 8.7 14.8"/>
|
|
41
|
+
</g>
|
|
42
|
+
</svg>);
|
|
43
|
+
}
|
|
44
|
+
/** A door with an arrow going in. The arrow steps in while hovered or busy. */
|
|
45
|
+
export function EnterGlyph({ size, busy, disabled }) {
|
|
46
|
+
return (<svg aria-hidden="true" width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth={2.2} strokeLinecap="round" strokeLinejoin="round" className={clsx('shrink-0 overflow-visible', busy && 'exp-glyph--busy', disabled && 'exp-glyph--disabled')}>
|
|
47
|
+
<path d="M14 4h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-4"/>
|
|
48
|
+
<g className="exp-enter-arrow">
|
|
49
|
+
<polyline points="10 17 15 12 10 7"/>
|
|
50
|
+
<line x1={15} y1={12} x2={3} y2={12}/>
|
|
51
|
+
</g>
|
|
52
|
+
</svg>);
|
|
53
|
+
}
|
|
54
|
+
/** Right arrow that steps forward while its button is hovered. */
|
|
55
|
+
export function ArrowGlyph({ size }) {
|
|
56
|
+
return (<svg aria-hidden="true" width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth={2.4} strokeLinecap="round" strokeLinejoin="round" className="exp-arrow shrink-0">
|
|
57
|
+
<path d="M5 12h14M13 6l6 6-6 6"/>
|
|
58
|
+
</svg>);
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=glyphs.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glyphs.jsx","sourceRoot":"","sources":["../../src/expresivo/shared/glyphs.tsx"],"names":[],"mappings":"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"}
|