@nebula-demo/ui 0.1.3
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/CHANGELOG.md +23 -0
- package/LICENSE +21 -0
- package/README.md +109 -0
- package/dist/components/Accordion/Accordion.cjs +1 -0
- package/dist/components/Accordion/Accordion.d.ts +8 -0
- package/dist/components/Accordion/Accordion.d.ts.map +1 -0
- package/dist/components/Accordion/Accordion.js +59 -0
- package/dist/components/Accordion/index.d.ts +2 -0
- package/dist/components/Accordion/index.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialog.cjs +1 -0
- package/dist/components/AlertDialog/AlertDialog.d.ts +26 -0
- package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialog.js +160 -0
- package/dist/components/AlertDialog/index.d.ts +3 -0
- package/dist/components/AlertDialog/index.d.ts.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.cjs +1 -0
- package/dist/components/AspectRatio/AspectRatio.d.ts +17 -0
- package/dist/components/AspectRatio/AspectRatio.d.ts.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.js +45 -0
- package/dist/components/AspectRatio/index.d.ts +3 -0
- package/dist/components/AspectRatio/index.d.ts.map +1 -0
- package/dist/components/Avatar/Avatar.cjs +1 -0
- package/dist/components/Avatar/Avatar.d.ts +18 -0
- package/dist/components/Avatar/Avatar.d.ts.map +1 -0
- package/dist/components/Avatar/Avatar.js +48 -0
- package/dist/components/Avatar/Avatar.variants.cjs +1 -0
- package/dist/components/Avatar/Avatar.variants.d.ts +7 -0
- package/dist/components/Avatar/Avatar.variants.d.ts.map +1 -0
- package/dist/components/Avatar/Avatar.variants.js +37 -0
- package/dist/components/Avatar/index.d.ts +5 -0
- package/dist/components/Avatar/index.d.ts.map +1 -0
- package/dist/components/AvatarGroup/AvatarGroup.cjs +1 -0
- package/dist/components/AvatarGroup/AvatarGroup.d.ts +19 -0
- package/dist/components/AvatarGroup/AvatarGroup.d.ts.map +1 -0
- package/dist/components/AvatarGroup/AvatarGroup.js +106 -0
- package/dist/components/AvatarGroup/index.d.ts +3 -0
- package/dist/components/AvatarGroup/index.d.ts.map +1 -0
- package/dist/components/AvatarLabelGroup/AvatarLabelGroup.cjs +1 -0
- package/dist/components/AvatarLabelGroup/AvatarLabelGroup.d.ts +19 -0
- package/dist/components/AvatarLabelGroup/AvatarLabelGroup.d.ts.map +1 -0
- package/dist/components/AvatarLabelGroup/AvatarLabelGroup.js +43 -0
- package/dist/components/AvatarLabelGroup/index.d.ts +3 -0
- package/dist/components/AvatarLabelGroup/index.d.ts.map +1 -0
- package/dist/components/Badge/Badge.cjs +1 -0
- package/dist/components/Badge/Badge.d.ts +11 -0
- package/dist/components/Badge/Badge.d.ts.map +1 -0
- package/dist/components/Badge/Badge.js +70 -0
- package/dist/components/Badge/Badge.variants.cjs +1 -0
- package/dist/components/Badge/Badge.variants.d.ts +8 -0
- package/dist/components/Badge/Badge.variants.d.ts.map +1 -0
- package/dist/components/Badge/Badge.variants.js +46 -0
- package/dist/components/Badge/index.d.ts +5 -0
- package/dist/components/Badge/index.d.ts.map +1 -0
- package/dist/components/BadgeCounter/BadgeCounter.cjs +1 -0
- package/dist/components/BadgeCounter/BadgeCounter.d.ts +13 -0
- package/dist/components/BadgeCounter/BadgeCounter.d.ts.map +1 -0
- package/dist/components/BadgeCounter/BadgeCounter.js +43 -0
- package/dist/components/BadgeCounter/BadgeCounter.variants.cjs +1 -0
- package/dist/components/BadgeCounter/BadgeCounter.variants.d.ts +6 -0
- package/dist/components/BadgeCounter/BadgeCounter.variants.d.ts.map +1 -0
- package/dist/components/BadgeCounter/BadgeCounter.variants.js +19 -0
- package/dist/components/BadgeCounter/index.d.ts +5 -0
- package/dist/components/BadgeCounter/index.d.ts.map +1 -0
- package/dist/components/Button/Button.cjs +1 -0
- package/dist/components/Button/Button.d.ts +13 -0
- package/dist/components/Button/Button.d.ts.map +1 -0
- package/dist/components/Button/Button.js +23 -0
- package/dist/components/Button/Button.variants.cjs +1 -0
- package/dist/components/Button/Button.variants.d.ts +7 -0
- package/dist/components/Button/Button.variants.d.ts.map +1 -0
- package/dist/components/Button/Button.variants.js +40 -0
- package/dist/components/Button/index.d.ts +5 -0
- package/dist/components/Button/index.d.ts.map +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.cjs +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.d.ts +13 -0
- package/dist/components/ButtonIcon/ButtonIcon.d.ts.map +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.js +37 -0
- package/dist/components/ButtonIcon/ButtonIcon.variants.cjs +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.variants.d.ts +7 -0
- package/dist/components/ButtonIcon/ButtonIcon.variants.d.ts.map +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.variants.js +37 -0
- package/dist/components/ButtonIcon/index.d.ts +5 -0
- package/dist/components/ButtonIcon/index.d.ts.map +1 -0
- package/dist/components/Calendar/Calendar.cjs +1 -0
- package/dist/components/Calendar/Calendar.d.ts +28 -0
- package/dist/components/Calendar/Calendar.d.ts.map +1 -0
- package/dist/components/Calendar/Calendar.js +365 -0
- package/dist/components/Calendar/index.d.ts +3 -0
- package/dist/components/Calendar/index.d.ts.map +1 -0
- package/dist/components/Card/Card.cjs +1 -0
- package/dist/components/Card/Card.d.ts +41 -0
- package/dist/components/Card/Card.d.ts.map +1 -0
- package/dist/components/Card/Card.js +103 -0
- package/dist/components/Card/index.d.ts +3 -0
- package/dist/components/Card/index.d.ts.map +1 -0
- package/dist/components/Carousel/Carousel.cjs +1 -0
- package/dist/components/Carousel/Carousel.d.ts +35 -0
- package/dist/components/Carousel/Carousel.d.ts.map +1 -0
- package/dist/components/Carousel/Carousel.js +217 -0
- package/dist/components/Carousel/index.d.ts +3 -0
- package/dist/components/Carousel/index.d.ts.map +1 -0
- package/dist/components/Checkbox/Checkbox.cjs +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts +17 -0
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/Checkbox/Checkbox.js +68 -0
- package/dist/components/Checkbox/index.d.ts +3 -0
- package/dist/components/Checkbox/index.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.cjs +1 -0
- package/dist/components/ContextMenu/ContextMenu.d.ts +33 -0
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.js +182 -0
- package/dist/components/ContextMenu/index.d.ts +3 -0
- package/dist/components/ContextMenu/index.d.ts.map +1 -0
- package/dist/components/DatePicker/DatePicker.cjs +1 -0
- package/dist/components/DatePicker/DatePicker.d.ts +49 -0
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -0
- package/dist/components/DatePicker/DatePicker.js +238 -0
- package/dist/components/DatePicker/index.d.ts +3 -0
- package/dist/components/DatePicker/index.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.cjs +1 -0
- package/dist/components/Drawer/Drawer.d.ts +29 -0
- package/dist/components/Drawer/Drawer.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.js +130 -0
- package/dist/components/Drawer/index.d.ts +3 -0
- package/dist/components/Drawer/index.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.cjs +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts +33 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.js +184 -0
- package/dist/components/DropdownMenu/index.d.ts +3 -0
- package/dist/components/DropdownMenu/index.d.ts.map +1 -0
- package/dist/components/DropdownSelect/DropdownSelect.cjs +1 -0
- package/dist/components/DropdownSelect/DropdownSelect.d.ts +45 -0
- package/dist/components/DropdownSelect/DropdownSelect.d.ts.map +1 -0
- package/dist/components/DropdownSelect/DropdownSelect.js +342 -0
- package/dist/components/DropdownSelect/index.d.ts +3 -0
- package/dist/components/DropdownSelect/index.d.ts.map +1 -0
- package/dist/components/FileStatus/FileStatus.cjs +1 -0
- package/dist/components/FileStatus/FileStatus.d.ts +25 -0
- package/dist/components/FileStatus/FileStatus.d.ts.map +1 -0
- package/dist/components/FileStatus/FileStatus.js +127 -0
- package/dist/components/FileStatus/index.d.ts +3 -0
- package/dist/components/FileStatus/index.d.ts.map +1 -0
- package/dist/components/FileUpload/FileUpload.cjs +1 -0
- package/dist/components/FileUpload/FileUpload.d.ts +38 -0
- package/dist/components/FileUpload/FileUpload.d.ts.map +1 -0
- package/dist/components/FileUpload/FileUpload.js +151 -0
- package/dist/components/FileUpload/index.d.ts +3 -0
- package/dist/components/FileUpload/index.d.ts.map +1 -0
- package/dist/components/FilterChip/FilterChip.cjs +1 -0
- package/dist/components/FilterChip/FilterChip.d.ts +43 -0
- package/dist/components/FilterChip/FilterChip.d.ts.map +1 -0
- package/dist/components/FilterChip/FilterChip.js +71 -0
- package/dist/components/FilterChip/FilterChip.variants.cjs +1 -0
- package/dist/components/FilterChip/FilterChip.variants.d.ts +22 -0
- package/dist/components/FilterChip/FilterChip.variants.d.ts.map +1 -0
- package/dist/components/FilterChip/FilterChip.variants.js +103 -0
- package/dist/components/FilterChip/index.d.ts +3 -0
- package/dist/components/FilterChip/index.d.ts.map +1 -0
- package/dist/components/FilterChipGroup/FilterChipGroup.cjs +1 -0
- package/dist/components/FilterChipGroup/FilterChipGroup.d.ts +54 -0
- package/dist/components/FilterChipGroup/FilterChipGroup.d.ts.map +1 -0
- package/dist/components/FilterChipGroup/FilterChipGroup.js +112 -0
- package/dist/components/FilterChipGroup/index.d.ts +3 -0
- package/dist/components/FilterChipGroup/index.d.ts.map +1 -0
- package/dist/components/Icon/Icon.cjs +1 -0
- package/dist/components/Icon/Icon.d.ts +16 -0
- package/dist/components/Icon/Icon.d.ts.map +1 -0
- package/dist/components/Icon/Icon.js +34 -0
- package/dist/components/Icon/icons.cjs +1 -0
- package/dist/components/Icon/icons.d.ts +5 -0
- package/dist/components/Icon/icons.d.ts.map +1 -0
- package/dist/components/Icon/icons.js +1396 -0
- package/dist/components/Icon/index.d.ts +5 -0
- package/dist/components/Icon/index.d.ts.map +1 -0
- package/dist/components/InlineNotification/InlineNotification.cjs +1 -0
- package/dist/components/InlineNotification/InlineNotification.d.ts +17 -0
- package/dist/components/InlineNotification/InlineNotification.d.ts.map +1 -0
- package/dist/components/InlineNotification/InlineNotification.js +80 -0
- package/dist/components/InlineNotification/InlineNotification.variants.cjs +1 -0
- package/dist/components/InlineNotification/InlineNotification.variants.d.ts +6 -0
- package/dist/components/InlineNotification/InlineNotification.variants.d.ts.map +1 -0
- package/dist/components/InlineNotification/InlineNotification.variants.js +22 -0
- package/dist/components/InlineNotification/index.d.ts +5 -0
- package/dist/components/InlineNotification/index.d.ts.map +1 -0
- package/dist/components/Input/Input.cjs +1 -0
- package/dist/components/Input/Input.d.ts +44 -0
- package/dist/components/Input/Input.d.ts.map +1 -0
- package/dist/components/Input/Input.js +104 -0
- package/dist/components/Input/Input.variants.cjs +1 -0
- package/dist/components/Input/Input.variants.d.ts +70 -0
- package/dist/components/Input/Input.variants.d.ts.map +1 -0
- package/dist/components/Input/Input.variants.js +91 -0
- package/dist/components/Input/index.d.ts +3 -0
- package/dist/components/Input/index.d.ts.map +1 -0
- package/dist/components/InputSearch/InputSearch.cjs +1 -0
- package/dist/components/InputSearch/InputSearch.d.ts +62 -0
- package/dist/components/InputSearch/InputSearch.d.ts.map +1 -0
- package/dist/components/InputSearch/InputSearch.js +289 -0
- package/dist/components/InputSearch/index.d.ts +3 -0
- package/dist/components/InputSearch/index.d.ts.map +1 -0
- package/dist/components/Line/Line.cjs +1 -0
- package/dist/components/Line/Line.d.ts +16 -0
- package/dist/components/Line/Line.d.ts.map +1 -0
- package/dist/components/Line/Line.js +29 -0
- package/dist/components/Line/index.d.ts +3 -0
- package/dist/components/Line/index.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.cjs +1 -0
- package/dist/components/Pagination/Pagination.d.ts +49 -0
- package/dist/components/Pagination/Pagination.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.js +225 -0
- package/dist/components/Pagination/index.d.ts +3 -0
- package/dist/components/Pagination/index.d.ts.map +1 -0
- package/dist/components/Popover/Popover.cjs +1 -0
- package/dist/components/Popover/Popover.d.ts +11 -0
- package/dist/components/Popover/Popover.d.ts.map +1 -0
- package/dist/components/Popover/Popover.js +26 -0
- package/dist/components/Popover/index.d.ts +3 -0
- package/dist/components/Popover/index.d.ts.map +1 -0
- package/dist/components/ProgressBar/ProgressBar.cjs +1 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts +23 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts.map +1 -0
- package/dist/components/ProgressBar/ProgressBar.js +74 -0
- package/dist/components/ProgressBar/index.d.ts +3 -0
- package/dist/components/ProgressBar/index.d.ts.map +1 -0
- package/dist/components/ProgressCircle/ProgressCircle.cjs +1 -0
- package/dist/components/ProgressCircle/ProgressCircle.d.ts +23 -0
- package/dist/components/ProgressCircle/ProgressCircle.d.ts.map +1 -0
- package/dist/components/ProgressCircle/ProgressCircle.js +155 -0
- package/dist/components/ProgressCircle/index.d.ts +3 -0
- package/dist/components/ProgressCircle/index.d.ts.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.cjs +1 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts +22 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.js +75 -0
- package/dist/components/RadioGroup/index.d.ts +3 -0
- package/dist/components/RadioGroup/index.d.ts.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.cjs +1 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts +8 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.js +10 -0
- package/dist/components/ScrollArea/index.d.ts +3 -0
- package/dist/components/ScrollArea/index.d.ts.map +1 -0
- package/dist/components/Select/Select.cjs +1 -0
- package/dist/components/Select/Select.d.ts +12 -0
- package/dist/components/Select/Select.d.ts.map +1 -0
- package/dist/components/Select/Select.js +171 -0
- package/dist/components/Select/index.d.ts +2 -0
- package/dist/components/Select/index.d.ts.map +1 -0
- package/dist/components/Skeleton/Skeleton.cjs +1 -0
- package/dist/components/Skeleton/Skeleton.d.ts +8 -0
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -0
- package/dist/components/Skeleton/Skeleton.js +22 -0
- package/dist/components/Skeleton/index.d.ts +3 -0
- package/dist/components/Skeleton/index.d.ts.map +1 -0
- package/dist/components/Slider/Slider.cjs +1 -0
- package/dist/components/Slider/Slider.d.ts +19 -0
- package/dist/components/Slider/Slider.d.ts.map +1 -0
- package/dist/components/Slider/Slider.js +101 -0
- package/dist/components/Slider/index.d.ts +3 -0
- package/dist/components/Slider/index.d.ts.map +1 -0
- package/dist/components/Switch/Switch.cjs +1 -0
- package/dist/components/Switch/Switch.d.ts +10 -0
- package/dist/components/Switch/Switch.d.ts.map +1 -0
- package/dist/components/Switch/Switch.js +20 -0
- package/dist/components/Switch/Switch.variants.cjs +1 -0
- package/dist/components/Switch/Switch.variants.d.ts +7 -0
- package/dist/components/Switch/Switch.variants.d.ts.map +1 -0
- package/dist/components/Switch/Switch.variants.js +39 -0
- package/dist/components/Switch/index.d.ts +4 -0
- package/dist/components/Switch/index.d.ts.map +1 -0
- package/dist/components/SwitchGroup/SwitchGroup.cjs +1 -0
- package/dist/components/SwitchGroup/SwitchGroup.d.ts +24 -0
- package/dist/components/SwitchGroup/SwitchGroup.d.ts.map +1 -0
- package/dist/components/SwitchGroup/SwitchGroup.js +36 -0
- package/dist/components/SwitchGroup/SwitchGroup.variants.cjs +1 -0
- package/dist/components/SwitchGroup/SwitchGroup.variants.d.ts +4 -0
- package/dist/components/SwitchGroup/SwitchGroup.variants.d.ts.map +1 -0
- package/dist/components/SwitchGroup/SwitchGroup.variants.js +5 -0
- package/dist/components/SwitchGroup/index.d.ts +3 -0
- package/dist/components/SwitchGroup/index.d.ts.map +1 -0
- package/dist/components/TabNavigation/TabNavigation.cjs +1 -0
- package/dist/components/TabNavigation/TabNavigation.d.ts +31 -0
- package/dist/components/TabNavigation/TabNavigation.d.ts.map +1 -0
- package/dist/components/TabNavigation/TabNavigation.js +107 -0
- package/dist/components/TabNavigation/index.d.ts +4 -0
- package/dist/components/TabNavigation/index.d.ts.map +1 -0
- package/dist/components/Table/Table.cjs +1 -0
- package/dist/components/Table/Table.d.ts +103 -0
- package/dist/components/Table/Table.d.ts.map +1 -0
- package/dist/components/Table/Table.js +278 -0
- package/dist/components/Table/index.d.ts +3 -0
- package/dist/components/Table/index.d.ts.map +1 -0
- package/dist/components/TablePagination/TablePagination.cjs +1 -0
- package/dist/components/TablePagination/TablePagination.d.ts +26 -0
- package/dist/components/TablePagination/TablePagination.d.ts.map +1 -0
- package/dist/components/TablePagination/TablePagination.js +80 -0
- package/dist/components/TablePagination/index.d.ts +3 -0
- package/dist/components/TablePagination/index.d.ts.map +1 -0
- package/dist/components/Tag/Tag.cjs +1 -0
- package/dist/components/Tag/Tag.d.ts +25 -0
- package/dist/components/Tag/Tag.d.ts.map +1 -0
- package/dist/components/Tag/Tag.js +84 -0
- package/dist/components/Tag/Tag.variants.cjs +1 -0
- package/dist/components/Tag/Tag.variants.d.ts +8 -0
- package/dist/components/Tag/Tag.variants.d.ts.map +1 -0
- package/dist/components/Tag/Tag.variants.js +41 -0
- package/dist/components/Tag/TagGroup.cjs +1 -0
- package/dist/components/Tag/TagGroup.d.ts +8 -0
- package/dist/components/Tag/TagGroup.d.ts.map +1 -0
- package/dist/components/Tag/TagGroup.js +20 -0
- package/dist/components/Tag/TagGroup.variants.cjs +1 -0
- package/dist/components/Tag/TagGroup.variants.d.ts +6 -0
- package/dist/components/Tag/TagGroup.variants.d.ts.map +1 -0
- package/dist/components/Tag/TagGroup.variants.js +16 -0
- package/dist/components/Tag/index.d.ts +9 -0
- package/dist/components/Tag/index.d.ts.map +1 -0
- package/dist/components/Textarea/Textarea.cjs +1 -0
- package/dist/components/Textarea/Textarea.d.ts +54 -0
- package/dist/components/Textarea/Textarea.d.ts.map +1 -0
- package/dist/components/Textarea/Textarea.js +162 -0
- package/dist/components/Textarea/Textarea.variants.cjs +1 -0
- package/dist/components/Textarea/Textarea.variants.d.ts +60 -0
- package/dist/components/Textarea/Textarea.variants.d.ts.map +1 -0
- package/dist/components/Textarea/Textarea.variants.js +116 -0
- package/dist/components/Textarea/index.d.ts +3 -0
- package/dist/components/Textarea/index.d.ts.map +1 -0
- package/dist/components/Toast/Toast.cjs +1 -0
- package/dist/components/Toast/Toast.d.ts +71 -0
- package/dist/components/Toast/Toast.d.ts.map +1 -0
- package/dist/components/Toast/Toast.js +242 -0
- package/dist/components/Toast/index.d.ts +3 -0
- package/dist/components/Toast/index.d.ts.map +1 -0
- package/dist/components/Toggle/Toggle.cjs +1 -0
- package/dist/components/Toggle/Toggle.d.ts +18 -0
- package/dist/components/Toggle/Toggle.d.ts.map +1 -0
- package/dist/components/Toggle/Toggle.js +60 -0
- package/dist/components/Toggle/Toggle.variants.cjs +1 -0
- package/dist/components/Toggle/Toggle.variants.d.ts +13 -0
- package/dist/components/Toggle/Toggle.variants.d.ts.map +1 -0
- package/dist/components/Toggle/Toggle.variants.js +76 -0
- package/dist/components/Toggle/index.d.ts +4 -0
- package/dist/components/Toggle/index.d.ts.map +1 -0
- package/dist/components/Tooltip/Tooltip.cjs +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts +13 -0
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/Tooltip/Tooltip.js +41 -0
- package/dist/components/Tooltip/index.d.ts +3 -0
- package/dist/components/Tooltip/index.d.ts.map +1 -0
- package/dist/components/_shared/SelectionIndicators.cjs +1 -0
- package/dist/components/_shared/SelectionIndicators.d.ts +33 -0
- package/dist/components/_shared/SelectionIndicators.d.ts.map +1 -0
- package/dist/components/_shared/SelectionIndicators.js +49 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +96 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +202 -0
- package/dist/utils/cn.cjs +1 -0
- package/dist/utils/cn.d.ts +3 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/dist/utils/cn.js +9 -0
- package/dist/utils/focusRing.cjs +1 -0
- package/dist/utils/focusRing.d.ts +20 -0
- package/dist/utils/focusRing.d.ts.map +1 -0
- package/dist/utils/focusRing.js +5 -0
- package/package.json +82 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),h=require("react"),t=require("../../utils/cn.cjs"),y=require("../../utils/focusRing.cjs"),N=require("./InlineNotification.variants.cjs"),s=require("../Icon/Icon.cjs");function v(a){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const i in a)if(i!=="default"){const r=Object.getOwnPropertyDescriptor(a,i);Object.defineProperty(e,i,r.get?r:{enumerable:!0,get:()=>a[i]})}}return e.default=a,Object.freeze(e)}const l=v(h),j={information:"info-circle",success:"check-circle",warning:"alert-triangle",error:"alert-circle","brand-primary":"announcement-02","brand-secondary":"announcement-02"},I={information:"cai-text-[var(--icon-primary-alt)]",success:"cai-text-[var(--icon-success-alt)]",warning:"cai-text-[var(--icon-warning-alt)]",error:"cai-text-[var(--icon-error-alt)]","brand-primary":"cai-text-[var(--icon-primary-invert)]","brand-secondary":"cai-text-[var(--icon-primary-invert)]"},d=l.forwardRef(({className:a,variant:e="information",title:i,description:r,close:u=!1,onClose:m,headingLevel:f=2,...b},x)=>{const p=j[e],g=I[e],c=l.useId(),o=e==="error"||e==="warning";return n.jsxs("div",{ref:x,role:o?"alert":"status","aria-live":o?"assertive":"polite",className:t.cn(N.inlineNotificationVariants({variant:e}),a),...b,children:[n.jsx("div",{className:t.cn("cai-flex-shrink-0 cai-mt-0.5",g),children:n.jsx(s.Icon,{name:p,width:18,height:18,"aria-hidden":"true"})}),n.jsxs("div",{className:"cai-flex-1 cai-min-w-0",children:[i&&n.jsx("div",{id:c,role:"heading","aria-level":f,className:"cai-text-subbody cai-font-semibold",children:i}),n.jsx("div",{className:"cai-text-subbody cai-font-normal cai-leading-normal",children:r})]}),u&&n.jsx("button",{type:"button",onClick:m,"aria-label":"Close","aria-describedby":i?c:void 0,className:t.cn("cai-flex-shrink-0 cai-mt-0.5 cai-cursor-pointer","cai-bg-transparent cai-border-none cai-p-0","hover:cai-opacity-70 cai-transition-opacity",y.FOCUS_RING),children:n.jsx(s.Icon,{name:"x-close",width:14,height:14,"aria-hidden":"true"})})]})});d.displayName="InlineNotification";exports.InlineNotification=d;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InlineNotificationVariantsProps } from './InlineNotification.variants';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface InlineNotificationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'>, InlineNotificationVariantsProps {
|
|
4
|
+
/** Optional heading text */
|
|
5
|
+
title?: string;
|
|
6
|
+
/** Required body text */
|
|
7
|
+
description: string;
|
|
8
|
+
/** Show close icon */
|
|
9
|
+
close?: boolean;
|
|
10
|
+
/** Close handler (required when close is true) */
|
|
11
|
+
onClose?: () => void;
|
|
12
|
+
/** Heading level for screen readers (1 to 6) */
|
|
13
|
+
headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
14
|
+
}
|
|
15
|
+
declare const InlineNotification: React.ForwardRefExoticComponent<InlineNotificationProps & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
+
export { InlineNotification };
|
|
17
|
+
//# sourceMappingURL=InlineNotification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineNotification.d.ts","sourceRoot":"","sources":["../../../src/components/InlineNotification/InlineNotification.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,+BAA+B,CAAA;AAoCtC,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,EACzD,+BAA+B;IACjC,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,sBAAsB;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,gDAAgD;IAChD,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACrC;AAED,QAAA,MAAM,kBAAkB,gGAiEvB,CAAA;AAID,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { jsxs as o, jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import * as t from "react";
|
|
3
|
+
import { cn as e } from "../../utils/cn.js";
|
|
4
|
+
import { FOCUS_RING as N } from "../../utils/focusRing.js";
|
|
5
|
+
import { inlineNotificationVariants as v } from "./InlineNotification.variants.js";
|
|
6
|
+
import { Icon as s } from "../Icon/Icon.js";
|
|
7
|
+
const y = {
|
|
8
|
+
information: "info-circle",
|
|
9
|
+
success: "check-circle",
|
|
10
|
+
warning: "alert-triangle",
|
|
11
|
+
error: "alert-circle",
|
|
12
|
+
"brand-primary": "announcement-02",
|
|
13
|
+
"brand-secondary": "announcement-02"
|
|
14
|
+
}, g = {
|
|
15
|
+
information: "cai-text-[var(--icon-primary-alt)]",
|
|
16
|
+
success: "cai-text-[var(--icon-success-alt)]",
|
|
17
|
+
warning: "cai-text-[var(--icon-warning-alt)]",
|
|
18
|
+
error: "cai-text-[var(--icon-error-alt)]",
|
|
19
|
+
"brand-primary": "cai-text-[var(--icon-primary-invert)]",
|
|
20
|
+
"brand-secondary": "cai-text-[var(--icon-primary-invert)]"
|
|
21
|
+
}, I = t.forwardRef(
|
|
22
|
+
({
|
|
23
|
+
className: l,
|
|
24
|
+
variant: a = "information",
|
|
25
|
+
title: r,
|
|
26
|
+
description: m,
|
|
27
|
+
close: d = !1,
|
|
28
|
+
onClose: f,
|
|
29
|
+
headingLevel: p = 2,
|
|
30
|
+
...h
|
|
31
|
+
}, b) => {
|
|
32
|
+
const u = y[a], x = g[a], n = t.useId(), c = a === "error" || a === "warning";
|
|
33
|
+
return /* @__PURE__ */ o(
|
|
34
|
+
"div",
|
|
35
|
+
{
|
|
36
|
+
ref: b,
|
|
37
|
+
role: c ? "alert" : "status",
|
|
38
|
+
"aria-live": c ? "assertive" : "polite",
|
|
39
|
+
className: e(v({ variant: a }), l),
|
|
40
|
+
...h,
|
|
41
|
+
children: [
|
|
42
|
+
/* @__PURE__ */ i("div", { className: e("cai-flex-shrink-0 cai-mt-0.5", x), children: /* @__PURE__ */ i(s, { name: u, width: 18, height: 18, "aria-hidden": "true" }) }),
|
|
43
|
+
/* @__PURE__ */ o("div", { className: "cai-flex-1 cai-min-w-0", children: [
|
|
44
|
+
r && /* @__PURE__ */ i(
|
|
45
|
+
"div",
|
|
46
|
+
{
|
|
47
|
+
id: n,
|
|
48
|
+
role: "heading",
|
|
49
|
+
"aria-level": p,
|
|
50
|
+
className: "cai-text-subbody cai-font-semibold",
|
|
51
|
+
children: r
|
|
52
|
+
}
|
|
53
|
+
),
|
|
54
|
+
/* @__PURE__ */ i("div", { className: "cai-text-subbody cai-font-normal cai-leading-normal", children: m })
|
|
55
|
+
] }),
|
|
56
|
+
d && /* @__PURE__ */ i(
|
|
57
|
+
"button",
|
|
58
|
+
{
|
|
59
|
+
type: "button",
|
|
60
|
+
onClick: f,
|
|
61
|
+
"aria-label": "Close",
|
|
62
|
+
"aria-describedby": r ? n : void 0,
|
|
63
|
+
className: e(
|
|
64
|
+
"cai-flex-shrink-0 cai-mt-0.5 cai-cursor-pointer",
|
|
65
|
+
"cai-bg-transparent cai-border-none cai-p-0",
|
|
66
|
+
"hover:cai-opacity-70 cai-transition-opacity",
|
|
67
|
+
N
|
|
68
|
+
),
|
|
69
|
+
children: /* @__PURE__ */ i(s, { name: "x-close", width: 14, height: 14, "aria-hidden": "true" })
|
|
70
|
+
}
|
|
71
|
+
)
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
I.displayName = "InlineNotification";
|
|
78
|
+
export {
|
|
79
|
+
I as InlineNotification
|
|
80
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("class-variance-authority"),r=a.cva("cai-relative cai-flex cai-items-start cai-gap-2.5 cai-rounded-lg cai-border-[1.5px] cai-px-4 cai-py-3",{variants:{variant:{information:"cai-border-information-alt cai-bg-information cai-text-primary-alt",success:"cai-border-success-alt cai-bg-success cai-text-primary-alt",warning:"cai-border-warning-alt cai-bg-warning cai-text-primary-alt",error:"cai-border-error-alt cai-bg-error cai-text-primary-alt","brand-primary":"cai-border-brand-primary cai-bg-brand-primary cai-text-primary-invert","brand-secondary":"cai-border-brand-tertiary cai-bg-brand-tertiary cai-text-primary-invert"}},defaultVariants:{variant:"information"}});exports.inlineNotificationVariants=r;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
export declare const inlineNotificationVariants: (props?: ({
|
|
3
|
+
variant?: "success" | "warning" | "error" | "information" | "brand-primary" | "brand-secondary" | null | undefined;
|
|
4
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
5
|
+
export type InlineNotificationVariantsProps = VariantProps<typeof inlineNotificationVariants>;
|
|
6
|
+
//# sourceMappingURL=InlineNotification.variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineNotification.variants.d.ts","sourceRoot":"","sources":["../../../src/components/InlineNotification/InlineNotification.variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,eAAO,MAAM,0BAA0B;;8EAkBtC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,YAAY,CAAC,OAAO,0BAA0B,CAAC,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { cva as a } from "class-variance-authority";
|
|
2
|
+
const i = a(
|
|
3
|
+
"cai-relative cai-flex cai-items-start cai-gap-2.5 cai-rounded-lg cai-border-[1.5px] cai-px-4 cai-py-3",
|
|
4
|
+
{
|
|
5
|
+
variants: {
|
|
6
|
+
variant: {
|
|
7
|
+
information: "cai-border-information-alt cai-bg-information cai-text-primary-alt",
|
|
8
|
+
success: "cai-border-success-alt cai-bg-success cai-text-primary-alt",
|
|
9
|
+
warning: "cai-border-warning-alt cai-bg-warning cai-text-primary-alt",
|
|
10
|
+
error: "cai-border-error-alt cai-bg-error cai-text-primary-alt",
|
|
11
|
+
"brand-primary": "cai-border-brand-primary cai-bg-brand-primary cai-text-primary-invert",
|
|
12
|
+
"brand-secondary": "cai-border-brand-tertiary cai-bg-brand-tertiary cai-text-primary-invert"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
defaultVariants: {
|
|
16
|
+
variant: "information"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
);
|
|
20
|
+
export {
|
|
21
|
+
i as inlineNotificationVariants
|
|
22
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { InlineNotification } from './InlineNotification';
|
|
2
|
+
export type { InlineNotificationProps } from './InlineNotification';
|
|
3
|
+
export { inlineNotificationVariants } from './InlineNotification.variants';
|
|
4
|
+
export type { InlineNotificationVariantsProps } from './InlineNotification.variants';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/InlineNotification/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAA;AAC1E,YAAY,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),B=require("react"),f=require("../../utils/cn.cjs"),n=require("./Input.variants.cjs"),N=require("../Icon/Icon.cjs");function G(s){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const r in s)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(s,r);Object.defineProperty(a,r,o.get?o:{enumerable:!0,get:()=>s[r]})}}return a.default=s,Object.freeze(a)}const l=G(B),C=l.forwardRef(({label:s,labelRight:a,required:r=!1,placeholder:o,type:S="text",contextualIcon:I,suffixIcon:x,error:t=!1,errorText:h,counter:j=!1,maxLength:y=200,hintBottomLeft:d,hintBottomRight:p,disabled:b=!1,id:z,className:_,onChange:g,value:i,defaultValue:m,...P},k)=>{const D=l.useId(),u=z??D,[E,v]=l.useState(()=>typeof i=="string"?i.length:typeof m=="string"?m.length:0);l.useEffect(()=>{typeof i=="string"&&v(i.length)},[i]);const F=l.useCallback(c=>{v(c.target.value.length),g?.(c)},[g]),w=!!I,$=!!(t||x),T=c=>{if(!c)return null;if(typeof c=="string")return e.jsx(N.Icon,{name:c,size:16,"aria-hidden":"true"});const q=c;return l.cloneElement(q,{"aria-hidden":"true",...q.props})},O=h?`${u}-error`:void 0,R=d||p?`${u}-hint`:void 0,H=[O,R].filter(Boolean).join(" ")||void 0,W=!!(s||a||j),A=!!((d||p)&&!t);return e.jsxs("div",{className:n.inputWrapper({disabled:b}),children:[W&&e.jsxs("span",{className:n.labelRow(),children:[s?e.jsxs("label",{htmlFor:u,className:f.cn(n.labelText(),"cai-flex-1"),children:[s,r&&e.jsx("span",{className:"cai-text-primary cai-ml-0.5","aria-hidden":"true",children:"*"})]}):e.jsx("span",{className:"cai-flex-1"}),j?e.jsxs("span",{className:n.labelText(),"aria-live":"polite","aria-atomic":"true",children:[E,"/",y]}):a?e.jsx("span",{className:n.labelText(),children:a}):null]}),e.jsxs("span",{className:n.inputRow(),children:[w&&e.jsx("span",{className:n.leftIcon({error:t}),children:T(I)}),e.jsx("input",{ref:k,id:u,type:S,placeholder:o,disabled:b,maxLength:j?y:void 0,"aria-invalid":t||void 0,"aria-describedby":H,"aria-required":r||void 0,value:i,defaultValue:m,onChange:F,className:f.cn(n.inputField({error:t,hasLeftIcon:w,hasRightIcon:$}),_),...P}),t?e.jsx("span",{className:n.rightIcon({variant:"error"}),children:e.jsx(N.Icon,{name:"alert-circle",size:16,"aria-hidden":"true"})}):x?e.jsx("span",{className:n.rightIcon({variant:"suffix"}),children:T(x)}):null]}),A&&e.jsxs("span",{className:n.hintRow(),id:R,children:[d&&e.jsx("span",{className:f.cn(n.hintText(),"cai-flex-1"),children:d}),p&&e.jsx("span",{className:n.hintText(),children:p})]}),t&&h&&e.jsxs("span",{className:n.errorRow(),id:O,role:"alert",children:[e.jsx("span",{className:n.errorIcon(),children:e.jsx(N.Icon,{name:"alert-circle",size:16,"aria-hidden":"true"})}),e.jsx("span",{className:n.errorText(),children:h})]})]})});C.displayName="Input";exports.Input=C;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
3
|
+
/** Label text above the input. */
|
|
4
|
+
label?: string;
|
|
5
|
+
/** Right-aligned label text (e.g. "Optional"). */
|
|
6
|
+
labelRight?: string;
|
|
7
|
+
/** Shows an asterisk after the label to indicate a required field. */
|
|
8
|
+
required?: boolean;
|
|
9
|
+
/** Placeholder text inside the input. */
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
/** Native input type. Defaults to "text". */
|
|
12
|
+
type?: 'text' | 'email' | 'search' | 'password' | 'number' | 'tel' | 'url';
|
|
13
|
+
/**
|
|
14
|
+
* Left icon slot. Pass a React element (e.g. an SVG icon) or a string
|
|
15
|
+
* that your icon system resolves.
|
|
16
|
+
*/
|
|
17
|
+
contextualIcon?: React.ReactElement | string;
|
|
18
|
+
/**
|
|
19
|
+
* Right icon slot. Rendered only when the input is NOT in the error state,
|
|
20
|
+
* as the error state reserves the right slot for the alert-circle icon.
|
|
21
|
+
*/
|
|
22
|
+
suffixIcon?: React.ReactElement | string;
|
|
23
|
+
/** Enables the error visual state. */
|
|
24
|
+
error?: boolean;
|
|
25
|
+
/** Error message text rendered below the input. */
|
|
26
|
+
errorText?: string;
|
|
27
|
+
/** Shows a character counter in the label-right position (charCount / maxLength). */
|
|
28
|
+
counter?: boolean;
|
|
29
|
+
/** Maximum character count. Defaults to 200. */
|
|
30
|
+
maxLength?: number;
|
|
31
|
+
/** Hint text displayed bottom-left. */
|
|
32
|
+
hintBottomLeft?: string;
|
|
33
|
+
/** Hint text displayed bottom-right. */
|
|
34
|
+
hintBottomRight?: string;
|
|
35
|
+
/** Disables the input (opacity-40, pointer-events-none). */
|
|
36
|
+
disabled?: boolean;
|
|
37
|
+
/** Input id. Auto-generated if omitted. */
|
|
38
|
+
id?: string;
|
|
39
|
+
/** Additional class names applied to the `<input>` element. */
|
|
40
|
+
className?: string;
|
|
41
|
+
}
|
|
42
|
+
declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
43
|
+
export { Input };
|
|
44
|
+
//# sourceMappingURL=Input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAsB9B,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC3F,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAA;IAC1E;;;OAGG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAA;IAC5C;;;OAGG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAA;IACxC,sCAAsC;IACtC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,2CAA2C;IAC3C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAMD,QAAA,MAAM,KAAK,qFA4KV,CAAA;AAID,OAAO,EAAE,KAAK,EAAE,CAAA"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { jsxs as s, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import * as i from "react";
|
|
3
|
+
import { cn as N } from "../../utils/cn.js";
|
|
4
|
+
import { labelText as u, labelRow as P, leftIcon as Q, inputField as U, rightIcon as E, inputRow as X, hintText as F, hintRow as Y, errorIcon as Z, errorText as _, errorRow as L, inputWrapper as M } from "./Input.variants.js";
|
|
5
|
+
import { Icon as I } from "../Icon/Icon.js";
|
|
6
|
+
const V = i.forwardRef(
|
|
7
|
+
({
|
|
8
|
+
label: o,
|
|
9
|
+
labelRight: d,
|
|
10
|
+
required: x = !1,
|
|
11
|
+
placeholder: $,
|
|
12
|
+
type: k = "text",
|
|
13
|
+
contextualIcon: w,
|
|
14
|
+
suffixIcon: p,
|
|
15
|
+
error: e = !1,
|
|
16
|
+
errorText: m,
|
|
17
|
+
counter: h = !1,
|
|
18
|
+
maxLength: y = 200,
|
|
19
|
+
hintBottomLeft: c,
|
|
20
|
+
hintBottomRight: l,
|
|
21
|
+
disabled: v = !1,
|
|
22
|
+
id: H,
|
|
23
|
+
className: S,
|
|
24
|
+
onChange: g,
|
|
25
|
+
value: r,
|
|
26
|
+
defaultValue: f,
|
|
27
|
+
...W
|
|
28
|
+
}, q) => {
|
|
29
|
+
const A = i.useId(), t = H ?? A, [B, C] = i.useState(() => typeof r == "string" ? r.length : typeof f == "string" ? f.length : 0);
|
|
30
|
+
i.useEffect(() => {
|
|
31
|
+
typeof r == "string" && C(r.length);
|
|
32
|
+
}, [r]);
|
|
33
|
+
const D = i.useCallback(
|
|
34
|
+
(n) => {
|
|
35
|
+
C(n.target.value.length), g?.(n);
|
|
36
|
+
},
|
|
37
|
+
[g]
|
|
38
|
+
), R = !!w, G = !!(e || p), T = (n) => {
|
|
39
|
+
if (!n) return null;
|
|
40
|
+
if (typeof n == "string")
|
|
41
|
+
return /* @__PURE__ */ a(I, { name: n, size: 16, "aria-hidden": "true" });
|
|
42
|
+
const z = n;
|
|
43
|
+
return i.cloneElement(z, {
|
|
44
|
+
"aria-hidden": "true",
|
|
45
|
+
...z.props
|
|
46
|
+
});
|
|
47
|
+
}, b = m ? `${t}-error` : void 0, j = c || l ? `${t}-hint` : void 0, J = [b, j].filter(Boolean).join(" ") || void 0, K = !!(o || d || h), O = !!((c || l) && !e);
|
|
48
|
+
return /* @__PURE__ */ s("div", { className: M({ disabled: v }), children: [
|
|
49
|
+
K && /* @__PURE__ */ s("span", { className: P(), children: [
|
|
50
|
+
o ? /* @__PURE__ */ s("label", { htmlFor: t, className: N(u(), "cai-flex-1"), children: [
|
|
51
|
+
o,
|
|
52
|
+
x && /* @__PURE__ */ a("span", { className: "cai-text-primary cai-ml-0.5", "aria-hidden": "true", children: "*" })
|
|
53
|
+
] }) : /* @__PURE__ */ a("span", { className: "cai-flex-1" }),
|
|
54
|
+
h ? /* @__PURE__ */ s("span", { className: u(), "aria-live": "polite", "aria-atomic": "true", children: [
|
|
55
|
+
B,
|
|
56
|
+
"/",
|
|
57
|
+
y
|
|
58
|
+
] }) : d ? /* @__PURE__ */ a("span", { className: u(), children: d }) : null
|
|
59
|
+
] }),
|
|
60
|
+
/* @__PURE__ */ s("span", { className: X(), children: [
|
|
61
|
+
R && /* @__PURE__ */ a("span", { className: Q({ error: e }), children: T(w) }),
|
|
62
|
+
/* @__PURE__ */ a(
|
|
63
|
+
"input",
|
|
64
|
+
{
|
|
65
|
+
ref: q,
|
|
66
|
+
id: t,
|
|
67
|
+
type: k,
|
|
68
|
+
placeholder: $,
|
|
69
|
+
disabled: v,
|
|
70
|
+
maxLength: h ? y : void 0,
|
|
71
|
+
"aria-invalid": e || void 0,
|
|
72
|
+
"aria-describedby": J,
|
|
73
|
+
"aria-required": x || void 0,
|
|
74
|
+
value: r,
|
|
75
|
+
defaultValue: f,
|
|
76
|
+
onChange: D,
|
|
77
|
+
className: N(
|
|
78
|
+
U({
|
|
79
|
+
error: e,
|
|
80
|
+
hasLeftIcon: R,
|
|
81
|
+
hasRightIcon: G
|
|
82
|
+
}),
|
|
83
|
+
S
|
|
84
|
+
),
|
|
85
|
+
...W
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
e ? /* @__PURE__ */ a("span", { className: E({ variant: "error" }), children: /* @__PURE__ */ a(I, { name: "alert-circle", size: 16, "aria-hidden": "true" }) }) : p ? /* @__PURE__ */ a("span", { className: E({ variant: "suffix" }), children: T(p) }) : null
|
|
89
|
+
] }),
|
|
90
|
+
O && /* @__PURE__ */ s("span", { className: Y(), id: j, children: [
|
|
91
|
+
c && /* @__PURE__ */ a("span", { className: N(F(), "cai-flex-1"), children: c }),
|
|
92
|
+
l && /* @__PURE__ */ a("span", { className: F(), children: l })
|
|
93
|
+
] }),
|
|
94
|
+
e && m && /* @__PURE__ */ s("span", { className: L(), id: b, role: "alert", children: [
|
|
95
|
+
/* @__PURE__ */ a("span", { className: Z(), children: /* @__PURE__ */ a(I, { name: "alert-circle", size: 16, "aria-hidden": "true" }) }),
|
|
96
|
+
/* @__PURE__ */ a("span", { className: _(), children: m })
|
|
97
|
+
] })
|
|
98
|
+
] });
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
V.displayName = "Input";
|
|
102
|
+
export {
|
|
103
|
+
V as Input
|
|
104
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("class-variance-authority"),e=require("../../utils/focusRing.cjs"),i=a.cva("cai-relative cai-flex cai-flex-col cai-w-full",{variants:{disabled:{true:"cai-opacity-40 cai-pointer-events-none",false:""}},defaultVariants:{disabled:!1}}),c=a.cva("cai-flex cai-items-baseline cai-gap-x-2 cai-mb-1.5"),t=a.cva("cai-font-sans cai-text-micro1 cai-font-medium cai-text-primary"),r=a.cva("cai-group cai-relative cai-flex cai-items-center"),o=a.cva(["cai-w-full cai-h-10 cai-rounded-md","cai-font-sans cai-text-subbody cai-font-medium","cai-outline-none cai-transition-colors","placeholder:cai-font-sans placeholder:cai-text-subbody placeholder:cai-font-medium",e.FOCUS_RING],{variants:{error:{true:["cai-border cai-border-error-alt","cai-bg-error","cai-text-primary-alt","placeholder:cai-text-primary-alt placeholder:cai-opacity-60"],false:["cai-border cai-border-septenary","cai-bg-primary-invert cai-bg-opacity-0","cai-text-primary","placeholder:cai-text-primary placeholder:cai-opacity-45","hover:cai-border-nonary hover:cai-bg-secondary","focus-visible:cai-border-brand-primary"]},hasLeftIcon:{true:"cai-pl-10",false:"cai-pl-3"},hasRightIcon:{true:"cai-pr-10",false:"cai-pr-3"}},defaultVariants:{error:!1,hasLeftIcon:!1,hasRightIcon:!1}}),n=a.cva(["cai-absolute cai-left-3","cai-flex cai-items-center","cai-pointer-events-none"],{variants:{error:{true:"cai-text-icon-primary-alt",false:"cai-text-icon-primary"}},defaultVariants:{error:!1}}),s=a.cva(["cai-absolute cai-right-3","cai-flex cai-items-center"],{variants:{variant:{error:"cai-text-icon-error",suffix:"cai-text-icon-primary cai-pointer-events-none"}},defaultVariants:{variant:"suffix"}}),l=a.cva("cai-flex cai-items-baseline cai-gap-x-2 cai-mt-1.5"),f=a.cva("cai-font-sans cai-text-micro1 cai-font-medium cai-text-primary"),p=a.cva("cai-flex cai-items-center cai-gap-1 cai-mt-1.5"),u=a.cva("cai-font-sans cai-text-xs cai-font-medium cai-text-error-alt"),d=a.cva("cai-flex cai-items-center cai-text-icon-error");exports.errorIcon=d;exports.errorRow=p;exports.errorText=u;exports.hintRow=l;exports.hintText=f;exports.inputField=o;exports.inputRow=r;exports.inputWrapper=i;exports.labelRow=c;exports.labelText=t;exports.leftIcon=n;exports.rightIcon=s;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Wrapper — outermost flex-col container that holds the entire Input
|
|
3
|
+
* anatomy: label row, input row, hint row, error text.
|
|
4
|
+
*/
|
|
5
|
+
export declare const inputWrapper: (props?: ({
|
|
6
|
+
disabled?: boolean | null | undefined;
|
|
7
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
8
|
+
/**
|
|
9
|
+
* Label row — horizontal flex that holds the left label and the
|
|
10
|
+
* right label (or counter).
|
|
11
|
+
*/
|
|
12
|
+
export declare const labelRow: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
13
|
+
/**
|
|
14
|
+
* Label text — shared between left label and right label / counter.
|
|
15
|
+
*/
|
|
16
|
+
export declare const labelText: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
17
|
+
/**
|
|
18
|
+
* Input row — the relative container that holds the `<input>` and
|
|
19
|
+
* optional left/right icon slots.
|
|
20
|
+
*/
|
|
21
|
+
export declare const inputRow: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
22
|
+
/**
|
|
23
|
+
* The `<input>` element itself.
|
|
24
|
+
*
|
|
25
|
+
* State tokens:
|
|
26
|
+
* Default → border-septenary, bg-primary-invert (transparent), text-primary
|
|
27
|
+
* Hover → border-nonary, bg-senary
|
|
28
|
+
* Focus → border-brand-primary + FOCUS_RING (system-shared 2px outline / 2px offset)
|
|
29
|
+
* Error → border-error-alt, bg-error, text-primary-alt
|
|
30
|
+
* Disabled → handled at wrapper level (opacity-40, pointer-events-none)
|
|
31
|
+
*/
|
|
32
|
+
export declare const inputField: (props?: ({
|
|
33
|
+
error?: boolean | null | undefined;
|
|
34
|
+
hasLeftIcon?: boolean | null | undefined;
|
|
35
|
+
hasRightIcon?: boolean | null | undefined;
|
|
36
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
37
|
+
/**
|
|
38
|
+
* Left icon slot (contextualIcon) — absolutely positioned, decorative.
|
|
39
|
+
*/
|
|
40
|
+
export declare const leftIcon: (props?: ({
|
|
41
|
+
error?: boolean | null | undefined;
|
|
42
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
43
|
+
/**
|
|
44
|
+
* Right icon slot — shows either suffixIcon or the error alert-circle.
|
|
45
|
+
*/
|
|
46
|
+
export declare const rightIcon: (props?: ({
|
|
47
|
+
variant?: "error" | "suffix" | null | undefined;
|
|
48
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
49
|
+
/**
|
|
50
|
+
* Bottom hints row — flex row below the input for hintBottomLeft
|
|
51
|
+
* and hintBottomRight.
|
|
52
|
+
*/
|
|
53
|
+
export declare const hintRow: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
54
|
+
/**
|
|
55
|
+
* Individual hint text (left or right).
|
|
56
|
+
*/
|
|
57
|
+
export declare const hintText: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
58
|
+
/**
|
|
59
|
+
* Error text row — rendered below the input when `error` is true.
|
|
60
|
+
*/
|
|
61
|
+
export declare const errorRow: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
62
|
+
/**
|
|
63
|
+
* Error message text.
|
|
64
|
+
*/
|
|
65
|
+
export declare const errorText: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
66
|
+
/**
|
|
67
|
+
* Error icon (alert-circle) next to the error message.
|
|
68
|
+
*/
|
|
69
|
+
export declare const errorIcon: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
70
|
+
//# sourceMappingURL=Input.variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.variants.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.variants.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,eAAO,MAAM,YAAY;;8EAUvB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,oFAA4D,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,SAAS,oFAAwE,CAAA;AAE9F;;;GAGG;AACH,eAAO,MAAM,QAAQ,oFAA0D,CAAA;AAE/E;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU;;;;8EAyCtB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ;;8EAapB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;;8EAUpB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,OAAO,oFAA4D,CAAA;AAEhF;;GAEG;AACH,eAAO,MAAM,QAAQ,oFAAwE,CAAA;AAE7F;;GAEG;AACH,eAAO,MAAM,QAAQ,oFAAwD,CAAA;AAE7E;;GAEG;AACH,eAAO,MAAM,SAAS,oFAAsE,CAAA;AAE5F;;GAEG;AACH,eAAO,MAAM,SAAS,oFAAuD,CAAA"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { cva as a } from "class-variance-authority";
|
|
2
|
+
import { FOCUS_RING as i } from "../../utils/focusRing.js";
|
|
3
|
+
const c = a("cai-relative cai-flex cai-flex-col cai-w-full", {
|
|
4
|
+
variants: {
|
|
5
|
+
disabled: {
|
|
6
|
+
true: "cai-opacity-40 cai-pointer-events-none",
|
|
7
|
+
false: ""
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
defaultVariants: {
|
|
11
|
+
disabled: !1
|
|
12
|
+
}
|
|
13
|
+
}), r = a("cai-flex cai-items-baseline cai-gap-x-2 cai-mb-1.5"), o = a("cai-font-sans cai-text-micro1 cai-font-medium cai-text-primary"), n = a("cai-group cai-relative cai-flex cai-items-center"), s = a(
|
|
14
|
+
[
|
|
15
|
+
"cai-w-full cai-h-10 cai-rounded-md",
|
|
16
|
+
"cai-font-sans cai-text-subbody cai-font-medium",
|
|
17
|
+
"cai-outline-none cai-transition-colors",
|
|
18
|
+
"placeholder:cai-font-sans placeholder:cai-text-subbody placeholder:cai-font-medium",
|
|
19
|
+
i
|
|
20
|
+
],
|
|
21
|
+
{
|
|
22
|
+
variants: {
|
|
23
|
+
error: {
|
|
24
|
+
true: [
|
|
25
|
+
"cai-border cai-border-error-alt",
|
|
26
|
+
"cai-bg-error",
|
|
27
|
+
"cai-text-primary-alt",
|
|
28
|
+
"placeholder:cai-text-primary-alt placeholder:cai-opacity-60"
|
|
29
|
+
],
|
|
30
|
+
false: [
|
|
31
|
+
"cai-border cai-border-septenary",
|
|
32
|
+
"cai-bg-primary-invert cai-bg-opacity-0",
|
|
33
|
+
"cai-text-primary",
|
|
34
|
+
"placeholder:cai-text-primary placeholder:cai-opacity-45",
|
|
35
|
+
"hover:cai-border-nonary hover:cai-bg-secondary",
|
|
36
|
+
"focus-visible:cai-border-brand-primary"
|
|
37
|
+
]
|
|
38
|
+
},
|
|
39
|
+
hasLeftIcon: {
|
|
40
|
+
true: "cai-pl-10",
|
|
41
|
+
false: "cai-pl-3"
|
|
42
|
+
},
|
|
43
|
+
hasRightIcon: {
|
|
44
|
+
true: "cai-pr-10",
|
|
45
|
+
false: "cai-pr-3"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
defaultVariants: {
|
|
49
|
+
error: !1,
|
|
50
|
+
hasLeftIcon: !1,
|
|
51
|
+
hasRightIcon: !1
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
), l = a(
|
|
55
|
+
["cai-absolute cai-left-3", "cai-flex cai-items-center", "cai-pointer-events-none"],
|
|
56
|
+
{
|
|
57
|
+
variants: {
|
|
58
|
+
error: {
|
|
59
|
+
true: "cai-text-icon-primary-alt",
|
|
60
|
+
false: "cai-text-icon-primary"
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
defaultVariants: {
|
|
64
|
+
error: !1
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
), f = a(["cai-absolute cai-right-3", "cai-flex cai-items-center"], {
|
|
68
|
+
variants: {
|
|
69
|
+
variant: {
|
|
70
|
+
error: "cai-text-icon-error",
|
|
71
|
+
suffix: "cai-text-icon-primary cai-pointer-events-none"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
defaultVariants: {
|
|
75
|
+
variant: "suffix"
|
|
76
|
+
}
|
|
77
|
+
}), p = a("cai-flex cai-items-baseline cai-gap-x-2 cai-mt-1.5"), m = a("cai-font-sans cai-text-micro1 cai-font-medium cai-text-primary"), x = a("cai-flex cai-items-center cai-gap-1 cai-mt-1.5"), d = a("cai-font-sans cai-text-xs cai-font-medium cai-text-error-alt"), u = a("cai-flex cai-items-center cai-text-icon-error");
|
|
78
|
+
export {
|
|
79
|
+
u as errorIcon,
|
|
80
|
+
x as errorRow,
|
|
81
|
+
d as errorText,
|
|
82
|
+
p as hintRow,
|
|
83
|
+
m as hintText,
|
|
84
|
+
s as inputField,
|
|
85
|
+
n as inputRow,
|
|
86
|
+
c as inputWrapper,
|
|
87
|
+
r as labelRow,
|
|
88
|
+
o as labelText,
|
|
89
|
+
l as leftIcon,
|
|
90
|
+
f as rightIcon
|
|
91
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),ia=require("react"),o=require("../../utils/cn.cjs"),ta=require("../../utils/focusRing.cjs"),y=require("../Input/Input.variants.cjs"),q=require("../Icon/Icon.cjs"),sa=require("../Tag/Tag.cjs");function na(n){const u=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const p=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(u,t,p.get?p:{enumerable:!0,get:()=>n[t]})}}return u.default=n,Object.freeze(u)}const r=na(ia),oa=({showStatus:n})=>e.jsxs("div",{className:"cai-flex cai-items-center cai-gap-2 cai-px-3 cai-py-2",children:[n&&e.jsx("div",{className:"cai-h-2 cai-w-2 cai-rounded-full cai-bg-secondary cai-animate-pulse"}),e.jsx("div",{className:"cai-h-xl cai-flex-1 cai-rounded cai-bg-secondary cai-animate-pulse"})]}),B=r.forwardRef(({items:n=[],onChange:u,onSearchValueChange:t,selectedValue:p,isLoading:O=!1,showStatus:k=!1,statusVariants:E={},alphabeticalSort:A=!0,clearAllLabel:H="Clear All",placeholder:_="Search...",label:m,disabled:I=!1,error:w,customLoader:K,open:L=!1,id:U,className:W},G)=>{const J=r.useId(),C=U??J,$=`${C}-input`,h=`${C}-listbox`,[l,S]=r.useState(""),[d,R]=r.useState(L),[Q,X]=r.useState([]),[x,v]=r.useState(0),i=p??Q,f=r.useCallback(a=>{p||X(a),u?.(a)},[p,u]),g=r.useRef(null),j=r.useMemo(()=>{const a=[...n];return A&&a.sort((c,s)=>c.label.localeCompare(s.label)),a},[n,A]),b=r.useMemo(()=>{const a=j.filter(c=>!i.includes(c.value));return l?a.filter(c=>c.label.toLowerCase().includes(l.toLowerCase())):a},[j,i,l]),z=r.useMemo(()=>j.filter(a=>i.includes(a.value)),[j,i]),Y=r.useCallback(a=>{const c=a.target.value;S(c),t?.(c),d||R(!0)},[t,d]),Z=r.useCallback(()=>{S(""),t?.(""),g.current?.focus()},[t]),D=r.useCallback(a=>{i.includes(a)||f([...i,a]),S(""),t?.(""),g.current?.focus()},[i,f,t]),T=r.useCallback(a=>{f(i.filter(c=>c!==a))},[i,f]),V=r.useCallback(()=>{f([]),g.current?.focus()},[f]),aa=r.useCallback(()=>{d||R(!0)},[d]);r.useEffect(()=>{v(0)},[l,i]);const ea=r.useCallback(a=>{if(a.key==="Escape"){R(!1);return}if(a.key==="Backspace"&&!l&&i.length>0){T(i[i.length-1]);return}if(!d)return;const c=b.length;if(c!==0){if(a.key==="ArrowDown")a.preventDefault(),v(s=>(s+1)%c);else if(a.key==="ArrowUp")a.preventDefault(),v(s=>(s-1+c)%c);else if(a.key==="Home")a.preventDefault(),v(0);else if(a.key==="End")a.preventDefault(),v(c-1);else if(a.key==="Enter"){a.preventDefault();const s=b[x];s&&!s.disabled&&D(s.value)}}},[l,i,T,d,b,x,D]),F=w?`${C}-error`:void 0,M=!!w,ca=z.length>0,N=d&&!I;return e.jsxs("div",{ref:G,className:o.cn(y.inputWrapper({disabled:I}),W),children:[m&&e.jsx("span",{className:y.labelRow(),children:e.jsx("label",{htmlFor:$,className:o.cn(y.labelText(),"cai-flex-1"),children:m})}),M&&e.jsxs("span",{className:y.errorRow(),id:F,role:"alert",children:[e.jsx("span",{className:y.errorIcon(),children:e.jsx(q.Icon,{name:"alert-circle",size:14,"aria-hidden":"true"})}),e.jsx("span",{className:"cai-font-sans cai-text-xs cai-font-medium cai-text-error",children:w})]}),e.jsxs("div",{className:o.cn("cai-rounded-md cai-border cai-overflow-hidden cai-transition-colors",ta.FOCUS_WITHIN_RING,M?"cai-border-error-alt":d?"cai-border-nonary":"cai-border-septenary hover:cai-bg-secondary hover:cai-border-nonary focus-within:cai-bg-transparent focus-within:cai-border-nonary"),children:[e.jsxs("div",{className:"cai-flex cai-items-center cai-gap-2 cai-px-3 cai-py-2",children:[e.jsx("span",{className:"cai-flex cai-items-center cai-text-icon-primary cai-shrink-0",children:e.jsx(q.Icon,{name:"search-md",size:16,"aria-hidden":"true"})}),e.jsx("input",{ref:g,id:$,type:"text",role:"combobox","aria-expanded":N,"aria-controls":h,"aria-autocomplete":"list","aria-activedescendant":N&&b[x]?`${h}-opt-${x}`:void 0,"aria-describedby":F,"aria-label":m?void 0:_,placeholder:_,disabled:I,value:l,onChange:Y,onFocus:aa,onKeyDown:ea,className:o.cn("cai-flex-1 cai-bg-transparent cai-border-none cai-outline-none","cai-font-sans cai-text-[12px] cai-font-medium cai-text-primary","placeholder:cai-text-primary placeholder:cai-opacity-45")}),l&&e.jsx("button",{type:"button",onClick:Z,"aria-label":"Clear search",className:"cai-flex cai-items-center cai-text-icon-primary cai-cursor-pointer cai-shrink-0",children:e.jsx(q.Icon,{name:"x-close",size:14,"aria-hidden":"true"})})]}),ca&&e.jsxs("div",{className:"cai-border-t cai-border-quaternary cai-px-3 cai-py-2.5",children:[e.jsx("button",{type:"button",onClick:V,className:o.cn("cai-mb-2 cai-font-sans cai-text-xs cai-text-tertiary","cai-underline cai-cursor-pointer cai-bg-transparent cai-border-none cai-p-0","hover:cai-text-secondary"),children:H}),e.jsx("div",{className:"cai-flex cai-flex-wrap cai-gap-1.5",children:z.map(a=>{const c=a.error===!0,s=!c&&a.variant==="avatar"&&a.avatar,ra=!c&&k&&a.status?e.jsx("span",{"aria-hidden":"true",className:o.cn("cai-inline-block cai-w-1.5 cai-h-1.5 cai-rounded-full cai-shrink-0 cai-mr-1",E[a.status]??"cai-bg-icon-information")}):null,P=e.jsxs(sa.Tag,{size:"sm",variant:c?"error":"primary",isClose:!0,onClose:()=>T(a.value),labelClose:"Remove",avatar:s?a.avatar:void 0,children:[ra,a.label]});return c?e.jsxs("span",{className:"cai-relative cai-group/tag",children:[P,e.jsx("span",{className:o.cn("cai-absolute cai-bottom-full cai-left-1/2 cai--translate-x-1/2 cai-mb-2","cai-hidden group-hover/tag:cai-block","cai-bg-quaternary cai-text-primary-invert","cai-text-[11px] cai-leading-snug cai-px-2.5 cai-py-1.5","cai-rounded-md cai-w-[220px] cai-text-center","cai-shadow-medium cai-pointer-events-none cai-z-10"),children:a.errorTooltipLabel??"Invalid Entry"})]},a.value):r.cloneElement(P,{key:a.value})})})]})]}),N&&!O&&e.jsx("div",{id:h,role:"listbox","aria-label":m??"Search results",className:o.cn("cai-mt-1 cai-rounded-md cai-border cai-border-tertiary cai-bg-primary-invert","cai-p-lg cai-shadow-shallow","cai-max-h-[220px] cai-overflow-y-auto"),children:b.length===0?e.jsx("div",{role:"status",className:"cai-p-lg cai-font-sans cai-text-subbody cai-font-medium cai-text-tertiary",children:"No results available"}):b.map((a,c)=>e.jsxs("div",{id:`${h}-opt-${c}`,role:"option","aria-selected":c===x,"aria-disabled":a.disabled,onClick:()=>!a.disabled&&D(a.value),className:o.cn("cai-flex cai-items-center cai-gap-2 cai-rounded-md cai-border cai-border-transparent cai-p-lg","cai-font-sans cai-text-subbody cai-font-medium cai-text-primary","cai-cursor-pointer cai-transition-colors","hover:cai-bg-tertiary",c===x&&"cai-bg-tertiary",a.disabled&&"cai-opacity-40 cai-pointer-events-none"),children:[k&&a.status&&e.jsx("span",{className:o.cn("cai-w-2 cai-h-2 cai-rounded-full cai-shrink-0",E[a.status]??"cai-bg-icon-information")}),a.variant==="avatar"&&a.avatar&&e.jsx("span",{className:"cai-shrink-0",children:a.avatar}),a.variant==="icon"&&a.icon&&e.jsx("span",{className:"cai-shrink-0 cai-text-icon-primary",children:a.icon}),e.jsx("span",{className:"cai-flex-1 cai-truncate",children:a.label}),a.supportText&&e.jsx("span",{className:"cai-text-tertiary cai-text-sm cai-truncate cai-shrink-0",children:a.supportText})]},a.value))}),N&&O&&e.jsx("div",{id:h,role:"listbox","aria-label":m??"Search results","aria-busy":"true",className:"cai-mt-1 cai-rounded-md cai-border cai-border-tertiary cai-bg-primary-invert cai-p-lg cai-shadow-shallow cai-overflow-hidden",children:K??e.jsx(e.Fragment,{children:Array.from({length:5}).map((a,c)=>e.jsx(oa,{showStatus:k},c))})})]})});B.displayName="InputSearch";exports.InputSearch=B;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface InputSearchItemProps {
|
|
3
|
+
/** Display text (required). */
|
|
4
|
+
label: string;
|
|
5
|
+
/** Unique identifier (required). */
|
|
6
|
+
value: string;
|
|
7
|
+
/** Visual type for the item row. */
|
|
8
|
+
variant?: 'default' | 'avatar' | 'icon';
|
|
9
|
+
/** Icon element (used when variant is 'icon'). */
|
|
10
|
+
icon?: React.ReactElement;
|
|
11
|
+
/** Avatar element (used when variant is 'avatar'). Pass an `<Avatar />` atom; size='md' (24px) is the recommended default for dropdown rows. */
|
|
12
|
+
avatar?: React.ReactElement;
|
|
13
|
+
/** Status indicator key. */
|
|
14
|
+
status?: string;
|
|
15
|
+
/** Secondary text displayed to the right. */
|
|
16
|
+
supportText?: string;
|
|
17
|
+
/** Prevents selection of this item. */
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
/** Marks item as invalid (shows error badge). */
|
|
20
|
+
error?: boolean;
|
|
21
|
+
/** Custom error tooltip text. */
|
|
22
|
+
errorTooltipLabel?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface InputSearchProps {
|
|
25
|
+
/** List of searchable items. */
|
|
26
|
+
items?: InputSearchItemProps[];
|
|
27
|
+
/** Selection change callback. */
|
|
28
|
+
onChange?: (value: string[]) => void;
|
|
29
|
+
/** Search text change callback. */
|
|
30
|
+
onSearchValueChange?: (inputValue: string) => void;
|
|
31
|
+
/** Controlled selected values. */
|
|
32
|
+
selectedValue?: string[];
|
|
33
|
+
/** Shows skeleton loaders in the dropdown. */
|
|
34
|
+
isLoading?: boolean;
|
|
35
|
+
/** Displays status dots on items. */
|
|
36
|
+
showStatus?: boolean;
|
|
37
|
+
/** Status dot class map (e.g. { success: 'cai-bg-icon-success' }). */
|
|
38
|
+
statusVariants?: Record<string, string>;
|
|
39
|
+
/** Sort items alphabetically (default: true). */
|
|
40
|
+
alphabeticalSort?: boolean;
|
|
41
|
+
/** Label for the clear button (default: 'Clear All'). */
|
|
42
|
+
clearAllLabel?: string;
|
|
43
|
+
/** Input placeholder text (default: 'Search...'). */
|
|
44
|
+
placeholder?: string;
|
|
45
|
+
/** Field label above the component. */
|
|
46
|
+
label?: string;
|
|
47
|
+
/** Disables the entire component. */
|
|
48
|
+
disabled?: boolean;
|
|
49
|
+
/** Error message displayed below the label. */
|
|
50
|
+
error?: string;
|
|
51
|
+
/** Custom skeleton for loading state. */
|
|
52
|
+
customLoader?: React.ReactNode;
|
|
53
|
+
/** Initial open state. */
|
|
54
|
+
open?: boolean;
|
|
55
|
+
/** Component id. */
|
|
56
|
+
id?: string;
|
|
57
|
+
/** Additional class names on the outer wrapper. */
|
|
58
|
+
className?: string;
|
|
59
|
+
}
|
|
60
|
+
declare const InputSearch: React.ForwardRefExoticComponent<InputSearchProps & React.RefAttributes<HTMLDivElement>>;
|
|
61
|
+
export { InputSearch };
|
|
62
|
+
//# sourceMappingURL=InputSearch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputSearch.d.ts","sourceRoot":"","sources":["../../../src/components/InputSearch/InputSearch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAiB9B,MAAM,WAAW,oBAAoB;IACnC,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,oCAAoC;IACpC,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;IACvC,kDAAkD;IAClD,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAA;IACzB,gJAAgJ;IAChJ,MAAM,CAAC,EAAE,KAAK,CAAC,YAAY,CAAA;IAC3B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iDAAiD;IACjD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,iCAAiC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAC9B,iCAAiC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACpC,mCAAmC;IACnC,mBAAmB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAClD,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvC,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,yDAAyD;IACzD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,yCAAyC;IACzC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,0BAA0B;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,oBAAoB;IACpB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAoBD,QAAA,MAAM,WAAW,yFAsZhB,CAAA;AAID,OAAO,EAAE,WAAW,EAAE,CAAA"}
|