@bspk/ui 1.0.1 → 1.1.12
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/README.md +5 -0
- package/{Avatar.d.ts → dist/Avatar.d.ts} +2 -2
- package/dist/Avatar.js +27 -0
- package/dist/Avatar.js.map +1 -0
- package/{Badge.d.ts → dist/Badge.d.ts} +2 -2
- package/dist/Badge.js +16 -0
- package/dist/Badge.js.map +1 -0
- package/{BannerAlert.d.ts → dist/BannerAlert.d.ts} +4 -4
- package/dist/BannerAlert.js +20 -0
- package/dist/BannerAlert.js.map +1 -0
- package/{Button.d.ts → dist/Button.d.ts} +1 -1
- package/dist/Button.js +30 -0
- package/dist/Button.js.map +1 -0
- package/{Card.d.ts → dist/Card.d.ts} +2 -2
- package/dist/Card.js +18 -0
- package/dist/Card.js.map +1 -0
- package/{Checkbox.d.ts → dist/Checkbox.d.ts} +2 -2
- package/dist/Checkbox.js +32 -0
- package/dist/Checkbox.js.map +1 -0
- package/{CheckboxGroup.d.ts → dist/CheckboxGroup.d.ts} +1 -1
- package/dist/CheckboxGroup.js +16 -0
- package/dist/CheckboxGroup.js.map +1 -0
- package/{CheckboxOption.d.ts → dist/CheckboxOption.d.ts} +1 -1
- package/dist/CheckboxOption.js +14 -0
- package/dist/CheckboxOption.js.map +1 -0
- package/{Chip.d.ts → dist/Chip.d.ts} +2 -2
- package/dist/Chip.js +22 -0
- package/dist/Chip.js.map +1 -0
- package/{Dialog.d.ts → dist/Dialog.d.ts} +2 -2
- package/dist/Dialog.js +70 -0
- package/dist/Dialog.js.map +1 -0
- package/{Divider.d.ts → dist/Divider.d.ts} +2 -2
- package/dist/Divider.js +26 -0
- package/dist/Divider.js.map +1 -0
- package/{Dropdown.d.ts → dist/Dropdown.d.ts} +2 -2
- package/dist/Dropdown.js +37 -0
- package/dist/Dropdown.js.map +1 -0
- package/{DropdownField.d.ts → dist/DropdownField.d.ts} +1 -1
- package/{DropdownField.js → dist/DropdownField.js} +5 -7
- package/dist/DropdownField.js.map +1 -0
- package/{EmptyState.d.ts → dist/EmptyState.d.ts} +7 -1
- package/dist/EmptyState.js +18 -0
- package/dist/EmptyState.js.map +1 -0
- package/{Fab.d.ts → dist/Fab.d.ts} +2 -2
- package/dist/Fab.js +24 -0
- package/dist/Fab.js.map +1 -0
- package/{FormField.d.ts → dist/FormField.d.ts} +2 -2
- package/dist/FormField.js +27 -0
- package/dist/FormField.js.map +1 -0
- package/{Img.d.ts → dist/Img.d.ts} +1 -1
- package/dist/Img.js +12 -0
- package/dist/Img.js.map +1 -0
- package/{InlineAlert.d.ts → dist/InlineAlert.d.ts} +2 -2
- package/dist/InlineAlert.js +27 -0
- package/dist/InlineAlert.js.map +1 -0
- package/{Layout.d.ts → dist/Layout.d.ts} +1 -1
- package/{Layout.js → dist/Layout.js} +3 -5
- package/dist/Layout.js.map +1 -0
- package/{Link.d.ts → dist/Link.d.ts} +2 -2
- package/dist/Link.js +17 -0
- package/dist/Link.js.map +1 -0
- package/{ListItem.d.ts → dist/ListItem.d.ts} +3 -3
- package/dist/ListItem.js +93 -0
- package/dist/ListItem.js.map +1 -0
- package/{Menu.d.ts → dist/Menu.d.ts} +2 -2
- package/dist/Menu.js +62 -0
- package/dist/Menu.js.map +1 -0
- package/{MenuButton.d.ts → dist/MenuButton.d.ts} +2 -2
- package/dist/MenuButton.js +15 -0
- package/dist/MenuButton.js.map +1 -0
- package/{Modal.d.ts → dist/Modal.d.ts} +2 -2
- package/dist/Modal.js +32 -0
- package/dist/Modal.js.map +1 -0
- package/{NumberField.d.ts → dist/NumberField.d.ts} +1 -1
- package/{NumberField.js → dist/NumberField.js} +5 -7
- package/dist/NumberField.js.map +1 -0
- package/{NumberInput.d.ts → dist/NumberInput.d.ts} +2 -2
- package/dist/NumberInput.js +64 -0
- package/dist/NumberInput.js.map +1 -0
- package/{Popover.d.ts → dist/Popover.d.ts} +2 -2
- package/dist/Popover.js +46 -0
- package/dist/Popover.js.map +1 -0
- package/{Portal.js → dist/Portal.js} +4 -5
- package/dist/Portal.js.map +1 -0
- package/{ProgressBar.d.ts → dist/ProgressBar.d.ts} +2 -2
- package/dist/ProgressBar.js +17 -0
- package/dist/ProgressBar.js.map +1 -0
- package/{ProgressCircle.d.ts → dist/ProgressCircle.d.ts} +3 -3
- package/dist/ProgressCircle.js +30 -0
- package/dist/ProgressCircle.js.map +1 -0
- package/{ProgressionStepper.d.ts → dist/ProgressionStepper.d.ts} +2 -2
- package/dist/ProgressionStepper.js +24 -0
- package/dist/ProgressionStepper.js.map +1 -0
- package/{ProgressionStepperBar.d.ts → dist/ProgressionStepperBar.d.ts} +7 -3
- package/dist/ProgressionStepperBar.js +15 -0
- package/dist/ProgressionStepperBar.js.map +1 -0
- package/{Radio.d.ts → dist/Radio.d.ts} +2 -2
- package/dist/Radio.js +18 -0
- package/dist/Radio.js.map +1 -0
- package/{RadioGroup.d.ts → dist/RadioGroup.d.ts} +1 -1
- package/dist/RadioGroup.js +16 -0
- package/dist/RadioGroup.js.map +1 -0
- package/{RadioOption.d.ts → dist/RadioOption.d.ts} +1 -1
- package/dist/RadioOption.js +14 -0
- package/dist/RadioOption.js.map +1 -0
- package/{SearchBar.d.ts → dist/SearchBar.d.ts} +2 -2
- package/{SearchBar.js → dist/SearchBar.js} +13 -19
- package/dist/SearchBar.js.map +1 -0
- package/{SegmentedControl.d.ts → dist/SegmentedControl.d.ts} +2 -2
- package/dist/SegmentedControl.js +22 -0
- package/dist/SegmentedControl.js.map +1 -0
- package/dist/Skeleton.d.ts +45 -0
- package/dist/Skeleton.js +25 -0
- package/dist/Skeleton.js.map +1 -0
- package/{StylesProviderAnywhere.d.ts → dist/StylesProviderAnywhere.d.ts} +4 -1
- package/dist/StylesProviderAnywhere.js +15 -0
- package/dist/StylesProviderAnywhere.js.map +1 -0
- package/{StylesProviderBetterHomesGardens.d.ts → dist/StylesProviderBetterHomesGardens.d.ts} +4 -1
- package/dist/StylesProviderBetterHomesGardens.js +15 -0
- package/dist/StylesProviderBetterHomesGardens.js.map +1 -0
- package/{StylesProviderCartus.d.ts → dist/StylesProviderCartus.d.ts} +4 -1
- package/dist/StylesProviderCartus.js +15 -0
- package/dist/StylesProviderCartus.js.map +1 -0
- package/{StylesProviderCentury21.d.ts → dist/StylesProviderCentury21.d.ts} +4 -1
- package/dist/StylesProviderCentury21.js +15 -0
- package/dist/StylesProviderCentury21.js.map +1 -0
- package/{StylesProviderColdwellBanker.d.ts → dist/StylesProviderColdwellBanker.d.ts} +4 -1
- package/dist/StylesProviderColdwellBanker.js +15 -0
- package/dist/StylesProviderColdwellBanker.js.map +1 -0
- package/{StylesProviderCorcoran.d.ts → dist/StylesProviderCorcoran.d.ts} +4 -1
- package/dist/StylesProviderCorcoran.js +15 -0
- package/dist/StylesProviderCorcoran.js.map +1 -0
- package/{StylesProviderDenaliBoss.d.ts → dist/StylesProviderDenaliBoss.d.ts} +4 -1
- package/dist/StylesProviderDenaliBoss.js +15 -0
- package/dist/StylesProviderDenaliBoss.js.map +1 -0
- package/{StylesProviderEra.d.ts → dist/StylesProviderEra.d.ts} +4 -1
- package/dist/StylesProviderEra.js +15 -0
- package/dist/StylesProviderEra.js.map +1 -0
- package/{StylesProviderSothebys.d.ts → dist/StylesProviderSothebys.d.ts} +4 -1
- package/dist/StylesProviderSothebys.js +15 -0
- package/dist/StylesProviderSothebys.js.map +1 -0
- package/{Switch.d.ts → dist/Switch.d.ts} +2 -2
- package/dist/Switch.js +21 -0
- package/dist/Switch.js.map +1 -0
- package/{SwitchGroup.d.ts → dist/SwitchGroup.d.ts} +1 -1
- package/dist/SwitchGroup.js +16 -0
- package/dist/SwitchGroup.js.map +1 -0
- package/{SwitchOption.d.ts → dist/SwitchOption.d.ts} +1 -1
- package/dist/SwitchOption.js +14 -0
- package/dist/SwitchOption.js.map +1 -0
- package/{TabGroup.d.ts → dist/TabGroup.d.ts} +2 -2
- package/dist/TabGroup.js +22 -0
- package/dist/TabGroup.js.map +1 -0
- package/{Table.d.ts → dist/Table.d.ts} +2 -2
- package/dist/Table.js +20 -0
- package/dist/Table.js.map +1 -0
- package/{Tag.d.ts → dist/Tag.d.ts} +2 -2
- package/dist/Tag.js +15 -0
- package/dist/Tag.js.map +1 -0
- package/{TextField.d.ts → dist/TextField.d.ts} +1 -1
- package/dist/TextField.js +17 -0
- package/dist/TextField.js.map +1 -0
- package/{TextInput.d.ts → dist/TextInput.d.ts} +2 -2
- package/dist/TextInput.js +23 -0
- package/dist/TextInput.js.map +1 -0
- package/{Textarea.d.ts → dist/Textarea.d.ts} +2 -2
- package/dist/Textarea.js +39 -0
- package/dist/Textarea.js.map +1 -0
- package/{TextareaField.d.ts → dist/TextareaField.d.ts} +1 -1
- package/dist/TextareaField.js +24 -0
- package/dist/TextareaField.js.map +1 -0
- package/{ToggleOption.d.ts → dist/ToggleOption.d.ts} +2 -2
- package/dist/ToggleOption.js +14 -0
- package/dist/ToggleOption.js.map +1 -0
- package/{Tooltip.d.ts → dist/Tooltip.d.ts} +2 -2
- package/dist/Tooltip.js +42 -0
- package/dist/Tooltip.js.map +1 -0
- package/{TopNavigation.d.ts → dist/TopNavigation.d.ts} +2 -2
- package/dist/TopNavigation.js +14 -0
- package/dist/TopNavigation.js.map +1 -0
- package/{Txt.d.ts → dist/Txt.d.ts} +1 -1
- package/{Txt.js → dist/Txt.js} +3 -8
- package/dist/Txt.js.map +1 -0
- package/dist/avatar.css +1 -0
- package/dist/badge.css +1 -0
- package/dist/banner-alert.css +1 -0
- package/dist/base.css +1 -0
- package/dist/button.css +1 -0
- package/dist/card.css +1 -0
- package/dist/checkbox.css +1 -0
- package/dist/chip.css +1 -0
- package/dist/colors.css +1 -0
- package/dist/dialog.css +1 -0
- package/dist/divider.css +1 -0
- package/dist/dropdown.css +1 -0
- package/dist/fab.css +1 -0
- package/dist/form-field.css +1 -0
- package/{hooks → dist/hooks}/useCheckboxGroupState.d.ts +1 -1
- package/{hooks → dist/hooks}/useCheckboxGroupState.js +3 -6
- package/dist/hooks/useCheckboxGroupState.js.map +1 -0
- package/{hooks → dist/hooks}/useCheckboxState.js +2 -5
- package/dist/hooks/useCheckboxState.js.map +1 -0
- package/{hooks → dist/hooks}/useFloating.js +5 -8
- package/dist/hooks/useFloating.js.map +1 -0
- package/{hooks → dist/hooks}/useFloatingMenu.js +6 -9
- package/dist/hooks/useFloatingMenu.js.map +1 -0
- package/{hooks → dist/hooks}/useId.js +4 -7
- package/dist/hooks/useId.js.map +1 -0
- package/{hooks → dist/hooks}/useKeyboardNavigation.js +4 -7
- package/dist/hooks/useKeyboardNavigation.js.map +1 -0
- package/{hooks → dist/hooks}/useLongPress.js +3 -6
- package/dist/hooks/useLongPress.js.map +1 -0
- package/{hooks → dist/hooks}/useModalState.js +3 -6
- package/dist/hooks/useModalState.js.map +1 -0
- package/{hooks → dist/hooks}/useNavOptions.js +4 -7
- package/dist/hooks/useNavOptions.js.map +1 -0
- package/{hooks → dist/hooks}/useOutsideClick.js +2 -5
- package/dist/hooks/useOutsideClick.js.map +1 -0
- package/{hooks → dist/hooks}/useRadioState.js +2 -5
- package/dist/hooks/useRadioState.js.map +1 -0
- package/{hooks → dist/hooks}/useSwitchGroupState.d.ts +1 -1
- package/{hooks → dist/hooks}/useSwitchGroupState.js +3 -6
- package/dist/hooks/useSwitchGroupState.js.map +1 -0
- package/{hooks → dist/hooks}/useTimeout.js +2 -5
- package/dist/hooks/useTimeout.js.map +1 -0
- package/{hooks → dist/hooks}/useValidChildren.js +4 -7
- package/dist/hooks/useValidChildren.js.map +1 -0
- package/{index.js → dist/index.js} +2 -4
- package/dist/index.js.map +1 -0
- package/dist/inline-alert.css +1 -0
- package/dist/link.css +1 -0
- package/dist/list-item.css +1 -0
- package/dist/menu-button.css +1 -0
- package/dist/menu.css +1 -0
- package/dist/modal.css +1 -0
- package/dist/number-input.css +1 -0
- package/dist/popover.css +1 -0
- package/dist/progress-bar.css +1 -0
- package/dist/progress-circle.css +1 -0
- package/dist/progression-stepper-bar.css +1 -0
- package/dist/progression-stepper.css +1 -0
- package/dist/radio.css +1 -0
- package/dist/search-bar.css +1 -0
- package/dist/segmented-control.css +1 -0
- package/dist/skeleton.css +6 -0
- package/dist/switch.css +1 -0
- package/dist/tab-group.css +1 -0
- package/dist/table.css +1 -0
- package/dist/tag.css +1 -0
- package/dist/text-input.css +1 -0
- package/dist/textarea.css +4 -0
- package/dist/toggle-option.css +1 -0
- package/dist/tooltip.css +1 -0
- package/dist/top-navigation.css +1 -0
- package/{utils → dist/utils}/children.js +9 -12
- package/dist/utils/children.js.map +1 -0
- package/dist/utils/colorVariants.d.ts +7 -0
- package/dist/utils/colorVariants.js +22 -0
- package/dist/utils/colorVariants.js.map +1 -0
- package/{utils → dist/utils}/errors.d.ts +1 -1
- package/{utils → dist/utils}/errors.js +20 -12
- package/dist/utils/errors.js.map +1 -0
- package/{utils → dist/utils}/getValidNode.js +2 -5
- package/dist/utils/getValidNode.js.map +1 -0
- package/{utils → dist/utils}/keyboard.js +2 -4
- package/dist/utils/keyboard.js.map +1 -0
- package/dist/utils/placeholder.test.d.ts +1 -0
- package/dist/utils/placeholder.test.js +7 -0
- package/dist/utils/placeholder.test.js.map +1 -0
- package/{utils → dist/utils}/ref.js +2 -4
- package/dist/utils/ref.js.map +1 -0
- package/{utils → dist/utils}/scrollElementIntoView.js +2 -4
- package/dist/utils/scrollElementIntoView.js.map +1 -0
- package/{utils → dist/utils}/srOnly.js +2 -4
- package/dist/utils/srOnly.js.map +1 -0
- package/dist/utils/styleAdd.d.ts +1 -0
- package/dist/utils/styleAdd.js +11 -0
- package/dist/utils/styleAdd.js.map +1 -0
- package/{utils → dist/utils}/tryIntPsrse.js +2 -4
- package/dist/utils/tryIntPsrse.js.map +1 -0
- package/dist/utils/txtVariants.d.ts +7 -0
- package/{utils → dist/utils}/txtVariants.js +7 -4
- package/dist/utils/txtVariants.js.map +1 -0
- package/meta-types.ts +46 -0
- package/meta.ts +465 -0
- package/package.json +31 -20
- package/src/Avatar.tsx +3 -61
- package/src/Badge.tsx +2 -30
- package/src/BannerAlert.tsx +6 -119
- package/src/Button.tsx +3 -228
- package/src/Card.tsx +2 -22
- package/src/Checkbox.tsx +2 -94
- package/src/CheckboxGroup.tsx +2 -2
- package/src/CheckboxOption.tsx +3 -3
- package/src/Chip.tsx +2 -68
- package/src/Dialog.tsx +2 -154
- package/src/Divider.tsx +2 -54
- package/src/Dropdown.tsx +2 -119
- package/src/DropdownField.tsx +3 -2
- package/src/EmptyState.tsx +10 -4
- package/src/Fab.tsx +2 -125
- package/src/FormField.tsx +2 -15
- package/src/Img.tsx +1 -9
- package/src/InlineAlert.tsx +2 -48
- package/src/Layout.tsx +1 -0
- package/src/Link.tsx +2 -23
- package/src/ListItem.tsx +3 -118
- package/src/Menu.tsx +3 -41
- package/src/MenuButton.tsx +2 -17
- package/src/Modal.tsx +3 -24
- package/src/NumberField.tsx +3 -2
- package/src/NumberInput.tsx +2 -126
- package/src/Popover.tsx +3 -110
- package/src/Portal.tsx +1 -0
- package/src/ProgressBar.tsx +2 -49
- package/src/ProgressCircle.tsx +2 -57
- package/src/ProgressionStepper.tsx +2 -175
- package/src/ProgressionStepperBar.tsx +7 -44
- package/src/Radio.tsx +2 -82
- package/src/RadioGroup.tsx +2 -2
- package/src/RadioOption.tsx +3 -3
- package/src/SearchBar.tsx +4 -10
- package/src/SegmentedControl.tsx +2 -116
- package/src/Skeleton.tsx +40 -56
- package/src/StylesProviderAnywhere.tsx +4 -18
- package/src/StylesProviderBetterHomesGardens.tsx +4 -18
- package/src/StylesProviderCartus.tsx +4 -18
- package/src/StylesProviderCentury21.tsx +4 -18
- package/src/StylesProviderColdwellBanker.tsx +4 -18
- package/src/StylesProviderCorcoran.tsx +4 -18
- package/src/StylesProviderDenaliBoss.tsx +4 -18
- package/src/StylesProviderEra.tsx +4 -18
- package/src/StylesProviderSothebys.tsx +4 -18
- package/src/Switch.tsx +2 -66
- package/src/SwitchGroup.tsx +2 -2
- package/src/SwitchOption.tsx +3 -3
- package/src/TabGroup.tsx +2 -100
- package/src/Table.tsx +2 -49
- package/src/Tag.tsx +3 -67
- package/src/TextField.tsx +3 -2
- package/src/TextInput.tsx +2 -152
- package/src/Textarea.tsx +2 -80
- package/src/TextareaField.tsx +3 -2
- package/src/ToggleOption.tsx +2 -79
- package/src/Tooltip.tsx +3 -66
- package/src/TopNavigation.tsx +2 -10
- package/src/Txt.tsx +1 -9
- package/src/avatar.scss +74 -0
- package/src/badge.scss +28 -0
- package/{BannerAlert.js → src/banner-alert.scss} +5 -23
- package/src/{styles/base.css → base.scss} +5 -3
- package/src/button.scss +218 -0
- package/src/card.scss +23 -0
- package/{Checkbox.js → src/checkbox.scss} +9 -34
- package/{Chip.js → src/chip.scss} +3 -24
- package/src/colors.scss +76 -0
- package/{Dialog.js → src/dialog.scss} +7 -76
- package/src/divider.scss +47 -0
- package/{Dropdown.js → src/dropdown.scss} +4 -45
- package/{Fab.js → src/fab.scss} +4 -27
- package/src/form-field.scss +13 -0
- package/src/hooks/useFloating.ts +5 -5
- package/src/inline-alert.scss +51 -0
- package/src/link.scss +21 -0
- package/src/list-item.scss +113 -0
- package/src/menu-button.scss +16 -0
- package/src/menu.scss +36 -0
- package/src/modal.scss +22 -0
- package/src/number-input.scss +128 -0
- package/{Popover.js → src/popover.scss} +10 -49
- package/src/progress-bar.scss +50 -0
- package/src/progress-circle.scss +56 -0
- package/src/progression-stepper-bar.scss +39 -0
- package/{ProgressionStepper.js → src/progression-stepper.scss} +8 -27
- package/{Radio.js → src/radio.scss} +6 -22
- package/src/search-bar.scss +7 -0
- package/{SegmentedControl.js → src/segmented-control.scss} +7 -24
- package/src/skeleton.scss +83 -0
- package/{Switch.js → src/switch.scss} +4 -25
- package/{TabGroup.js → src/tab-group.scss} +9 -26
- package/{Table.js → src/table.scss} +4 -22
- package/{Tag.js → src/tag.scss} +5 -28
- package/{TextInput.js → src/text-input.scss} +7 -31
- package/{Textarea.js → src/textarea.scss} +9 -38
- package/{ToggleOption.js → src/toggle-option.scss} +3 -16
- package/src/tooltip.scss +63 -0
- package/src/top-navigation.scss +5 -0
- package/src/utils/children.ts +1 -1
- package/src/utils/colorVariants.ts +22 -73
- package/src/utils/styleAdd.ts +7 -0
- package/src/utils/txtVariants.ts +8 -27
- package/Accordion.d.ts +0 -20
- package/Accordion.js +0 -18
- package/Accordion.js.map +0 -1
- package/Avatar.js +0 -81
- package/Avatar.js.map +0 -1
- package/Badge.js +0 -43
- package/Badge.js.map +0 -1
- package/BannerAlert.js.map +0 -1
- package/BottomNavigation.d.ts +0 -20
- package/BottomNavigation.js +0 -18
- package/BottomNavigation.js.map +0 -1
- package/BottomSheet.d.ts +0 -20
- package/BottomSheet.js +0 -18
- package/BottomSheet.js.map +0 -1
- package/Breadcrumb.d.ts +0 -20
- package/Breadcrumb.js +0 -18
- package/Breadcrumb.js.map +0 -1
- package/Button.js +0 -254
- package/Button.js.map +0 -1
- package/ButtonDock.d.ts +0 -20
- package/ButtonDock.js +0 -18
- package/ButtonDock.js.map +0 -1
- package/CODE_OF_CONDUCT.md +0 -137
- package/CONTRIBUTING.md +0 -42
- package/Card.js +0 -38
- package/Card.js.map +0 -1
- package/Chart.d.ts +0 -20
- package/Chart.js +0 -18
- package/Chart.js.map +0 -1
- package/Checkbox.js.map +0 -1
- package/CheckboxGroup.js +0 -18
- package/CheckboxGroup.js.map +0 -1
- package/CheckboxOption.js +0 -16
- package/CheckboxOption.js.map +0 -1
- package/Chip.js.map +0 -1
- package/DatePicker.d.ts +0 -20
- package/DatePicker.js +0 -18
- package/DatePicker.js.map +0 -1
- package/Dialog.js.map +0 -1
- package/Divider.js +0 -76
- package/Divider.js.map +0 -1
- package/Drawer.d.ts +0 -20
- package/Drawer.js +0 -18
- package/Drawer.js.map +0 -1
- package/Dropdown.js.map +0 -1
- package/DropdownField.js.map +0 -1
- package/EmptyState.js +0 -20
- package/EmptyState.js.map +0 -1
- package/Fab.js.map +0 -1
- package/FileUpload.d.ts +0 -20
- package/FileUpload.js +0 -18
- package/FileUpload.js.map +0 -1
- package/FormField.js +0 -39
- package/FormField.js.map +0 -1
- package/GUIDELINES.md +0 -41
- package/Image.d.ts +0 -20
- package/Image.js +0 -18
- package/Image.js.map +0 -1
- package/Img.js +0 -20
- package/Img.js.map +0 -1
- package/InlineAlert.js +0 -73
- package/InlineAlert.js.map +0 -1
- package/Layout.js.map +0 -1
- package/Link.js +0 -37
- package/Link.js.map +0 -1
- package/ListItem.js +0 -207
- package/ListItem.js.map +0 -1
- package/Menu.js +0 -98
- package/Menu.js.map +0 -1
- package/MenuButton.js +0 -30
- package/MenuButton.js.map +0 -1
- package/Modal.js +0 -53
- package/Modal.js.map +0 -1
- package/MultiSelection.d.ts +0 -20
- package/MultiSelection.js +0 -18
- package/MultiSelection.js.map +0 -1
- package/NavigationRail.d.ts +0 -20
- package/NavigationRail.js +0 -18
- package/NavigationRail.js.map +0 -1
- package/NumberField.js.map +0 -1
- package/NumberInput.js +0 -188
- package/NumberInput.js.map +0 -1
- package/OTPInput.d.ts +0 -20
- package/OTPInput.js +0 -18
- package/OTPInput.js.map +0 -1
- package/PageControl.d.ts +0 -20
- package/PageControl.js +0 -18
- package/PageControl.js.map +0 -1
- package/PasswordInput.d.ts +0 -20
- package/PasswordInput.js +0 -18
- package/PasswordInput.js.map +0 -1
- package/PhoneNumberInput.d.ts +0 -20
- package/PhoneNumberInput.js +0 -18
- package/PhoneNumberInput.js.map +0 -1
- package/Popover.js.map +0 -1
- package/Portal.js.map +0 -1
- package/ProgressBar.js +0 -64
- package/ProgressBar.js.map +0 -1
- package/ProgressCircle.js +0 -82
- package/ProgressCircle.js.map +0 -1
- package/ProgressionStepper.js.map +0 -1
- package/ProgressionStepperBar.js +0 -51
- package/ProgressionStepperBar.js.map +0 -1
- package/Radio.js.map +0 -1
- package/RadioGroup.js +0 -18
- package/RadioGroup.js.map +0 -1
- package/RadioOption.js +0 -16
- package/RadioOption.js.map +0 -1
- package/Rating.d.ts +0 -16
- package/Rating.js +0 -18
- package/Rating.js.map +0 -1
- package/SearchBar.js.map +0 -1
- package/SegmentedControl.js.map +0 -1
- package/Skeleton.d.ts +0 -28
- package/Skeleton.js +0 -57
- package/Skeleton.js.map +0 -1
- package/SliderInput.d.ts +0 -16
- package/SliderInput.js +0 -18
- package/SliderInput.js.map +0 -1
- package/Snackbar.d.ts +0 -16
- package/Snackbar.js +0 -18
- package/Snackbar.js.map +0 -1
- package/StylesProviderAnywhere.js +0 -29
- package/StylesProviderAnywhere.js.map +0 -1
- package/StylesProviderBetterHomesGardens.js +0 -29
- package/StylesProviderBetterHomesGardens.js.map +0 -1
- package/StylesProviderCartus.js +0 -29
- package/StylesProviderCartus.js.map +0 -1
- package/StylesProviderCentury21.js +0 -29
- package/StylesProviderCentury21.js.map +0 -1
- package/StylesProviderColdwellBanker.js +0 -29
- package/StylesProviderColdwellBanker.js.map +0 -1
- package/StylesProviderCorcoran.js +0 -29
- package/StylesProviderCorcoran.js.map +0 -1
- package/StylesProviderDenaliBoss.js +0 -29
- package/StylesProviderDenaliBoss.js.map +0 -1
- package/StylesProviderEra.js +0 -29
- package/StylesProviderEra.js.map +0 -1
- package/StylesProviderSothebys.js +0 -29
- package/StylesProviderSothebys.js.map +0 -1
- package/Switch.js.map +0 -1
- package/SwitchGroup.js +0 -18
- package/SwitchGroup.js.map +0 -1
- package/SwitchOption.js +0 -16
- package/SwitchOption.js.map +0 -1
- package/TabGroup.js.map +0 -1
- package/Table.js.map +0 -1
- package/Tag.js.map +0 -1
- package/TextField.js +0 -19
- package/TextField.js.map +0 -1
- package/TextInput.js.map +0 -1
- package/Textarea.js.map +0 -1
- package/TextareaField.js +0 -26
- package/TextareaField.js.map +0 -1
- package/TimePicker.d.ts +0 -16
- package/TimePicker.js +0 -18
- package/TimePicker.js.map +0 -1
- package/ToggleOption.js.map +0 -1
- package/Tooltip.js +0 -104
- package/Tooltip.js.map +0 -1
- package/TopNavigation.js +0 -18
- package/TopNavigation.js.map +0 -1
- package/Txt.js.map +0 -1
- package/hooks/useCheckboxGroupState.js.map +0 -1
- package/hooks/useCheckboxState.js.map +0 -1
- package/hooks/useFloating.js.map +0 -1
- package/hooks/useFloatingMenu.js.map +0 -1
- package/hooks/useId.js.map +0 -1
- package/hooks/useKeyboardNavigation.js.map +0 -1
- package/hooks/useLongPress.js.map +0 -1
- package/hooks/useModalState.js.map +0 -1
- package/hooks/useNavOptions.js.map +0 -1
- package/hooks/useOutsideClick.js.map +0 -1
- package/hooks/useRadioState.js.map +0 -1
- package/hooks/useSwitchGroupState.js.map +0 -1
- package/hooks/useTimeout.js.map +0 -1
- package/hooks/useValidChildren.js.map +0 -1
- package/index.js.map +0 -1
- package/meta.d.ts +0 -44
- package/meta.js +0 -5789
- package/meta.js.map +0 -1
- package/src/Accordion.tsx +0 -33
- package/src/BottomNavigation.tsx +0 -33
- package/src/BottomSheet.tsx +0 -33
- package/src/Breadcrumb.tsx +0 -33
- package/src/ButtonDock.tsx +0 -33
- package/src/Chart.tsx +0 -33
- package/src/DatePicker.tsx +0 -33
- package/src/Drawer.tsx +0 -33
- package/src/FileUpload.tsx +0 -33
- package/src/Image.tsx +0 -33
- package/src/MultiSelection.tsx +0 -33
- package/src/NavigationRail.tsx +0 -33
- package/src/OTPInput.tsx +0 -33
- package/src/PageControl.tsx +0 -33
- package/src/PasswordInput.tsx +0 -33
- package/src/PhoneNumberInput.tsx +0 -33
- package/src/Rating.tsx +0 -29
- package/src/SliderInput.tsx +0 -29
- package/src/Snackbar.tsx +0 -29
- package/src/TimePicker.tsx +0 -29
- package/src/meta.ts +0 -6238
- package/src/package.json +0 -3
- package/src/styles/anywhere.css +0 -1693
- package/src/styles/anywhere.ts +0 -1694
- package/src/styles/base.ts +0 -161
- package/src/styles/better-homes-gardens.css +0 -1693
- package/src/styles/better-homes-gardens.ts +0 -1694
- package/src/styles/cartus.css +0 -1691
- package/src/styles/cartus.ts +0 -1692
- package/src/styles/century-21.css +0 -1689
- package/src/styles/century-21.ts +0 -1690
- package/src/styles/coldwell-banker.css +0 -1691
- package/src/styles/coldwell-banker.ts +0 -1692
- package/src/styles/corcoran.css +0 -1685
- package/src/styles/corcoran.ts +0 -1686
- package/src/styles/denali-boss.css +0 -1681
- package/src/styles/denali-boss.ts +0 -1682
- package/src/styles/era.css +0 -1685
- package/src/styles/era.ts +0 -1686
- package/src/styles/sothebys.css +0 -1677
- package/src/styles/sothebys.ts +0 -1678
- package/styles/anywhere.d.ts +0 -2
- package/styles/anywhere.js +0 -1697
- package/styles/anywhere.js.map +0 -1
- package/styles/base.d.ts +0 -2
- package/styles/base.js +0 -164
- package/styles/base.js.map +0 -1
- package/styles/better-homes-gardens.d.ts +0 -2
- package/styles/better-homes-gardens.js +0 -1697
- package/styles/better-homes-gardens.js.map +0 -1
- package/styles/cartus.d.ts +0 -2
- package/styles/cartus.js +0 -1695
- package/styles/cartus.js.map +0 -1
- package/styles/century-21.d.ts +0 -2
- package/styles/century-21.js +0 -1693
- package/styles/century-21.js.map +0 -1
- package/styles/coldwell-banker.d.ts +0 -2
- package/styles/coldwell-banker.js +0 -1695
- package/styles/coldwell-banker.js.map +0 -1
- package/styles/corcoran.d.ts +0 -2
- package/styles/corcoran.js +0 -1689
- package/styles/corcoran.js.map +0 -1
- package/styles/denali-boss.d.ts +0 -2
- package/styles/denali-boss.js +0 -1685
- package/styles/denali-boss.js.map +0 -1
- package/styles/era.d.ts +0 -2
- package/styles/era.js +0 -1689
- package/styles/era.js.map +0 -1
- package/styles/sothebys.d.ts +0 -2
- package/styles/sothebys.js +0 -1681
- package/styles/sothebys.js.map +0 -1
- package/utils/children.js.map +0 -1
- package/utils/colorVariants.d.ts +0 -5
- package/utils/colorVariants.js +0 -61
- package/utils/colorVariants.js.map +0 -1
- package/utils/errors.js.map +0 -1
- package/utils/getValidNode.js.map +0 -1
- package/utils/keyboard.js.map +0 -1
- package/utils/ref.js.map +0 -1
- package/utils/scrollElementIntoView.js.map +0 -1
- package/utils/srOnly.js.map +0 -1
- package/utils/tryIntPsrse.js.map +0 -1
- package/utils/txtVariants.d.ts +0 -2
- package/utils/txtVariants.js.map +0 -1
- /package/{Portal.d.ts → dist/Portal.d.ts} +0 -0
- /package/{hooks → dist/hooks}/useCheckboxState.d.ts +0 -0
- /package/{hooks → dist/hooks}/useFloating.d.ts +0 -0
- /package/{hooks → dist/hooks}/useFloatingMenu.d.ts +0 -0
- /package/{hooks → dist/hooks}/useId.d.ts +0 -0
- /package/{hooks → dist/hooks}/useKeyboardNavigation.d.ts +0 -0
- /package/{hooks → dist/hooks}/useLongPress.d.ts +0 -0
- /package/{hooks → dist/hooks}/useModalState.d.ts +0 -0
- /package/{hooks → dist/hooks}/useNavOptions.d.ts +0 -0
- /package/{hooks → dist/hooks}/useOutsideClick.d.ts +0 -0
- /package/{hooks → dist/hooks}/useRadioState.d.ts +0 -0
- /package/{hooks → dist/hooks}/useTimeout.d.ts +0 -0
- /package/{hooks → dist/hooks}/useValidChildren.d.ts +0 -0
- /package/{index.d.ts → dist/index.d.ts} +0 -0
- /package/{utils → dist/utils}/children.d.ts +0 -0
- /package/{utils → dist/utils}/getValidNode.d.ts +0 -0
- /package/{utils → dist/utils}/keyboard.d.ts +0 -0
- /package/{utils → dist/utils}/ref.d.ts +0 -0
- /package/{utils → dist/utils}/scrollElementIntoView.d.ts +0 -0
- /package/{utils → dist/utils}/srOnly.d.ts +0 -0
- /package/{utils → dist/utils}/tryIntPsrse.d.ts +0 -0
|
@@ -1,34 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { css } from '@emotion/react';
|
|
3
|
-
import { useRef, useEffect } from 'react';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* A control that allows users to choose one or more items from a list or turn an feature on or off. This is the base
|
|
7
|
-
* element and if used directly you must wrap it with a label. This will more often be used in the CheckboxOption or
|
|
8
|
-
* CheckboxGroup component.
|
|
9
|
-
*
|
|
10
|
-
* @element
|
|
11
|
-
*
|
|
12
|
-
* @name Checkbox
|
|
13
|
-
*/
|
|
14
|
-
function Checkbox({ checked: checkedProp = false, indeterminate: indeterminateProp, invalid, disabled, ...props }) {
|
|
15
|
-
const indeterminate = !!indeterminateProp;
|
|
16
|
-
const checked = !!checkedProp && !indeterminate;
|
|
17
|
-
const inputRef = useRef();
|
|
18
|
-
useEffect(() => {
|
|
19
|
-
if (!inputRef.current)
|
|
20
|
-
return;
|
|
21
|
-
inputRef.current.indeterminate = indeterminate;
|
|
22
|
-
}, [indeterminate]);
|
|
23
|
-
return (jsxs("span", { css: style, "data-checkbox": true, children: [jsx("input", { ...props, "aria-invalid": invalid || undefined, checked: checked, disabled: disabled || undefined, onChange: (event) => props.onChange(!!event.target.checked, event), ref: (node) => {
|
|
24
|
-
if (!node)
|
|
25
|
-
return;
|
|
26
|
-
inputRef.current = node;
|
|
27
|
-
node.indeterminate = indeterminate;
|
|
28
|
-
}, type: "checkbox" }), jsxs("span", { "aria-hidden": true, children: [jsx("svg", { "data-checked": true, fill: "none", viewBox: "0 0 14 11", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M5.485 10.182a1 1 0 0 1-1.414 0l-3.03-3.03a1 1 0 0 1 0-1.415l.14-.141a1 1 0 0 1 1.415 0l2.182 2.182 6.626-6.627a1 1 0 0 1 1.414 0l.142.142a1 1 0 0 1 0 1.414l-7.475 7.475Z", fill: "currentColor" }) }), jsx("svg", { "data-indeterminate": true, fill: "none", viewBox: "0 0 12 4", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M1.44444 3.11089C0.892158 3.11089 0.444443 2.66318 0.444443 2.11089V1.88867C0.444443 1.33639 0.892158 0.888672 1.44444 0.888672H10.5556C11.1078 0.888672 11.5556 1.33639 11.5556 1.88867V2.11089C11.5556 2.66318 11.1078 3.11089 10.5556 3.11089H1.44444Z", fill: "currentColor" }) })] })] }));
|
|
29
|
-
}
|
|
30
|
-
Checkbox.bspkName = 'Checkbox';
|
|
31
|
-
const style = css `
|
|
1
|
+
[data-bspk='checkbox'] {
|
|
32
2
|
display: block;
|
|
33
3
|
position: relative;
|
|
34
4
|
width: var(--spacing-sizing-06);
|
|
@@ -69,10 +39,12 @@ const style = css `
|
|
|
69
39
|
width: 14px;
|
|
70
40
|
display: none;
|
|
71
41
|
}
|
|
42
|
+
|
|
72
43
|
svg[data-indeterminate] {
|
|
73
44
|
width: 12px;
|
|
74
45
|
display: none;
|
|
75
46
|
}
|
|
47
|
+
|
|
76
48
|
color: var(--color);
|
|
77
49
|
}
|
|
78
50
|
|
|
@@ -80,6 +52,7 @@ const style = css `
|
|
|
80
52
|
&:hover + span {
|
|
81
53
|
background-color: var(--interactions-neutral-hover-opacity);
|
|
82
54
|
}
|
|
55
|
+
|
|
83
56
|
&:active + span {
|
|
84
57
|
background-color: var(--interactions-neutral-press-opacity);
|
|
85
58
|
}
|
|
@@ -98,9 +71,11 @@ const style = css `
|
|
|
98
71
|
|
|
99
72
|
input[type='checkbox']:disabled {
|
|
100
73
|
pointer-events: none;
|
|
74
|
+
|
|
101
75
|
& + span {
|
|
102
76
|
--stroke: var(--stroke-neutral-interactions-disabled-light);
|
|
103
77
|
}
|
|
78
|
+
|
|
104
79
|
&:is(:checked, :indeterminate) + span {
|
|
105
80
|
--stroke: transparent;
|
|
106
81
|
--background: var(--interactions-disabled-opacity);
|
|
@@ -113,11 +88,11 @@ const style = css `
|
|
|
113
88
|
&:indeterminate + span {
|
|
114
89
|
--background: var(--status-error);
|
|
115
90
|
}
|
|
91
|
+
|
|
116
92
|
& + span {
|
|
117
93
|
--stroke: var(--status-error);
|
|
118
94
|
}
|
|
119
95
|
}
|
|
120
|
-
|
|
96
|
+
}
|
|
121
97
|
|
|
122
|
-
|
|
123
|
-
//# sourceMappingURL=Checkbox.js.map
|
|
98
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
|
@@ -1,24 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { css } from '@emotion/react';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Dynamically generated options that are suggested to the user as responses or prompts.
|
|
6
|
-
*
|
|
7
|
-
* @name Chip
|
|
8
|
-
*/
|
|
9
|
-
function Chip({ children = '', wrap = false, variant = 'filter', flat = false, disabled = false, selected = false, onClick, style: styleProp, }) {
|
|
10
|
-
let additionalProps = {};
|
|
11
|
-
if (variant === 'filter') {
|
|
12
|
-
additionalProps = {
|
|
13
|
-
onClick,
|
|
14
|
-
role: 'button',
|
|
15
|
-
tabIndex: 0,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
return (jsx("span", { css: style, "data-chip": "", "data-disabled": disabled || undefined, "data-flat": flat || undefined, "data-selected": selected || undefined, "data-variant": variant, "data-wrap": wrap || undefined, style: styleProp, ...additionalProps, children: children }));
|
|
19
|
-
}
|
|
20
|
-
Chip.bspkName = 'Chip';
|
|
21
|
-
const style = css `
|
|
1
|
+
[data-bspk='chip'] {
|
|
22
2
|
display: flex;
|
|
23
3
|
flex-direction: column;
|
|
24
4
|
justify-content: center;
|
|
@@ -81,7 +61,6 @@ const style = css `
|
|
|
81
61
|
background-color: var(--surface-brand-primary-highlight);
|
|
82
62
|
border-color: var(--stroke-brand-primary);
|
|
83
63
|
}
|
|
84
|
-
|
|
64
|
+
}
|
|
85
65
|
|
|
86
|
-
|
|
87
|
-
//# sourceMappingURL=Chip.js.map
|
|
66
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
package/src/colors.scss
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is generated by /.scripts/update-css.ts.
|
|
3
|
+
* Do not edit this file directly.
|
|
4
|
+
* Instead, edit the script and run it again. */
|
|
5
|
+
|
|
6
|
+
[data-color='grey'] {
|
|
7
|
+
--foreground: var(--foreground-neutral-on-surface-variant-01);
|
|
8
|
+
--background: var(--surface-neutral-t2-lowest);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
[data-color='white'] {
|
|
12
|
+
--foreground: var(--foreground-neutral-on-surface-variant-01);
|
|
13
|
+
--background: var(--surface-neutral-t1-base);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
[data-color='primary'] {
|
|
17
|
+
--foreground: var(--foreground-brand-primary-depth);
|
|
18
|
+
--background: var(--surface-brand-primary-highlight);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
[data-color='secondary'] {
|
|
22
|
+
--foreground: var(--foreground-brand-secondary-depth);
|
|
23
|
+
--background: var(--surface-brand-secondary-highlight);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
[data-color='blue'] {
|
|
27
|
+
--foreground: var(--foreground-spectrum-blue);
|
|
28
|
+
--background: var(--surface-spectrum-blue);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
[data-color='green'] {
|
|
32
|
+
--foreground: var(--foreground-spectrum-green);
|
|
33
|
+
--background: var(--surface-spectrum-green);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
[data-color='lime'] {
|
|
37
|
+
--foreground: var(--foreground-spectrum-lime);
|
|
38
|
+
--background: var(--surface-spectrum-lime);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
[data-color='magenta'] {
|
|
42
|
+
--foreground: var(--foreground-spectrum-magenta);
|
|
43
|
+
--background: var(--surface-spectrum-magenta);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[data-color='orange'] {
|
|
47
|
+
--foreground: var(--foreground-spectrum-orange);
|
|
48
|
+
--background: var(--surface-spectrum-orange);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
[data-color='pink'] {
|
|
52
|
+
--foreground: var(--foreground-spectrum-pink);
|
|
53
|
+
--background: var(--surface-spectrum-pink);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
[data-color='purple'] {
|
|
57
|
+
--foreground: var(--foreground-spectrum-purple);
|
|
58
|
+
--background: var(--surface-spectrum-purple);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
[data-color='red'] {
|
|
62
|
+
--foreground: var(--foreground-spectrum-red);
|
|
63
|
+
--background: var(--surface-spectrum-red);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
[data-color='teal'] {
|
|
67
|
+
--foreground: var(--foreground-spectrum-teal);
|
|
68
|
+
--background: var(--surface-spectrum-teal);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-color='yellow'] {
|
|
72
|
+
--foreground: var(--foreground-spectrum-yellow);
|
|
73
|
+
--background: var(--surface-spectrum-yellow);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
|
@@ -1,72 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { css } from '@emotion/react';
|
|
3
|
-
import { FocusTrap } from 'focus-trap-react';
|
|
4
|
-
import { useRef, useState, useCallback, useEffect } from 'react';
|
|
5
|
-
import { Portal } from './Portal.js';
|
|
6
|
-
import { useId } from './hooks/useId.js';
|
|
7
|
-
import { useOutsideClick } from './hooks/useOutsideClick.js';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Dialogs display important information that users need to acknowledge. They appear over the interface and block
|
|
11
|
-
* further interactions until an action is selected.
|
|
12
|
-
*
|
|
13
|
-
* @name Dialog
|
|
14
|
-
*/
|
|
15
|
-
function Dialog({
|
|
16
|
-
//
|
|
17
|
-
children, innerRef, onClose, open, placement = 'center', hideScrim, id: idProp, ...containerProps }) {
|
|
18
|
-
const id = useId(idProp);
|
|
19
|
-
const boxRef = useRef(null);
|
|
20
|
-
const [visibility, setVisibilityState] = useState(open ? 'show' : 'hidden');
|
|
21
|
-
const prevVisibility = useRef(visibility);
|
|
22
|
-
const setVisibility = useCallback((next) => {
|
|
23
|
-
setVisibilityState((prev) => {
|
|
24
|
-
prevVisibility.current = prev;
|
|
25
|
-
return next;
|
|
26
|
-
});
|
|
27
|
-
}, []);
|
|
28
|
-
const handleKeyDown = useCallback((e) => e.key === 'Escape' && onClose(), [onClose]);
|
|
29
|
-
useEffect(() => {
|
|
30
|
-
if (open) {
|
|
31
|
-
if (prevVisibility.current.startsWith('show'))
|
|
32
|
-
return;
|
|
33
|
-
setVisibility('showing');
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (prevVisibility.current.startsWith('hid'))
|
|
37
|
-
return;
|
|
38
|
-
setVisibility('hiding');
|
|
39
|
-
}, [open, setVisibility]);
|
|
40
|
-
useEffect(() => {
|
|
41
|
-
if (prevVisibility.current === visibility)
|
|
42
|
-
return;
|
|
43
|
-
if (visibility === 'showing') {
|
|
44
|
-
document.body.style.overflow = 'hidden';
|
|
45
|
-
setTimeout(() => setVisibility('show'), 10);
|
|
46
|
-
}
|
|
47
|
-
if (visibility === 'hiding') {
|
|
48
|
-
document.body.style.overflow = '';
|
|
49
|
-
setTimeout(() => setVisibility('hidden'), 10);
|
|
50
|
-
}
|
|
51
|
-
}, [setVisibility, visibility]);
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (visibility.startsWith('hid'))
|
|
54
|
-
return;
|
|
55
|
-
document.addEventListener('keydown', handleKeyDown);
|
|
56
|
-
return () => {
|
|
57
|
-
document.removeEventListener('keydown', handleKeyDown);
|
|
58
|
-
};
|
|
59
|
-
}, [handleKeyDown, visibility]);
|
|
60
|
-
useOutsideClick([boxRef.current], onClose, !open);
|
|
61
|
-
return (visibility !== 'hidden' && (jsx(Portal, { children: jsxs("div", { ...containerProps, css: style, "data-dialog-root": "", "data-placement": placement, "data-visibility": visibility, id: id, ref: innerRef, role: "presentation", children: [!hideScrim && jsx("div", { "aria-hidden": "true", "data-dialog-backdrop": true }), jsx(FocusTrap, { focusTrapOptions: {
|
|
62
|
-
fallbackFocus: () => boxRef.current,
|
|
63
|
-
clickOutsideDeactivates: true,
|
|
64
|
-
}, children: jsx("div", { "data-dialog-box": true, ref: (node) => {
|
|
65
|
-
boxRef.current = node;
|
|
66
|
-
}, tabIndex: -1, children: children }) })] }) })));
|
|
67
|
-
}
|
|
68
|
-
Dialog.bspkName = 'Dialog';
|
|
69
|
-
const style = css `
|
|
1
|
+
[data-bspk='dialog'] {
|
|
70
2
|
position: fixed;
|
|
71
3
|
inset: 0;
|
|
72
4
|
z-index: var(--z-index-dialog);
|
|
@@ -91,19 +23,19 @@ const style = css `
|
|
|
91
23
|
}
|
|
92
24
|
|
|
93
25
|
// we make the width responsive to the viewport
|
|
94
|
-
@media (
|
|
26
|
+
@media (width >= 640px) {
|
|
95
27
|
width: 90%;
|
|
96
28
|
}
|
|
97
29
|
|
|
98
|
-
@media (
|
|
30
|
+
@media (width >= 768px) {
|
|
99
31
|
width: 80%;
|
|
100
32
|
}
|
|
101
33
|
|
|
102
|
-
@media (
|
|
34
|
+
@media (width >= 1024px) {
|
|
103
35
|
width: 60%;
|
|
104
36
|
}
|
|
105
37
|
|
|
106
|
-
@media (
|
|
38
|
+
@media (width >= 1280px) {
|
|
107
39
|
width: 50%;
|
|
108
40
|
}
|
|
109
41
|
}
|
|
@@ -215,7 +147,6 @@ const style = css `
|
|
|
215
147
|
}
|
|
216
148
|
}
|
|
217
149
|
}
|
|
218
|
-
|
|
150
|
+
}
|
|
219
151
|
|
|
220
|
-
|
|
221
|
-
//# sourceMappingURL=Dialog.js.map
|
|
152
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
package/src/divider.scss
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
[data-bspk='divider'] {
|
|
2
|
+
/*! --inset: is set via inline style */
|
|
3
|
+
|
|
4
|
+
display: flex;
|
|
5
|
+
background-color: var(--stroke-neutral-low);
|
|
6
|
+
align-self: stretch;
|
|
7
|
+
place-content: stretch stretch;
|
|
8
|
+
margin: 0;
|
|
9
|
+
padding: 0;
|
|
10
|
+
content: 'hello';
|
|
11
|
+
|
|
12
|
+
--length: calc(100% - var(--inset) * 2);
|
|
13
|
+
|
|
14
|
+
&,
|
|
15
|
+
&[data-thickness='light'] {
|
|
16
|
+
--line-thickness: 1px;
|
|
17
|
+
--padding: var(--spacing-sizing-02);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&[data-thickness='heavy'] {
|
|
21
|
+
--line-thickness: 2px;
|
|
22
|
+
--padding: var(--spacing-sizing-04);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&, // default
|
|
26
|
+
&[data-orientation='horizontal'] {
|
|
27
|
+
width: unset;
|
|
28
|
+
min-height: unset;
|
|
29
|
+
height: var(--line-thickness);
|
|
30
|
+
min-width: var(--length);
|
|
31
|
+
margin: var(--padding) var(--inset);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
&[data-orientation='vertical'] {
|
|
35
|
+
height: unset;
|
|
36
|
+
min-width: unset;
|
|
37
|
+
width: var(--line-thickness);
|
|
38
|
+
min-height: var(--length);
|
|
39
|
+
margin: var(--inset) var(--padding);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
&[data-hide-padding] {
|
|
43
|
+
--padding: 0;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
|
@@ -1,39 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { SvgChevronRight } from '@bspk/icons/ChevronRight';
|
|
3
|
-
import { css } from '@emotion/react';
|
|
4
|
-
import { ListItem } from './ListItem.js';
|
|
5
|
-
import { Menu } from './Menu.js';
|
|
6
|
-
import { Portal } from './Portal.js';
|
|
7
|
-
import { useFloatingMenu } from './hooks/useFloatingMenu.js';
|
|
8
|
-
import { useId } from './hooks/useId.js';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* A field element that allows users to select one option from a list of available choices. *
|
|
12
|
-
*
|
|
13
|
-
* @name Dropdown
|
|
14
|
-
*/
|
|
15
|
-
function Dropdown({ options = [], value: selected, onChange, 'aria-label': ariaLabel, placeholder = 'Select...', size = 'medium', itemCount = 5, disabled, id: propId, invalid, readOnly, placement = 'bottom', name, isMulti, renderListItem, style: styleProp, }) {
|
|
16
|
-
const id = useId(propId);
|
|
17
|
-
const { triggerProps, menuProps, closeMenu } = useFloatingMenu({
|
|
18
|
-
placement,
|
|
19
|
-
triggerProps: {
|
|
20
|
-
disabled,
|
|
21
|
-
invalid,
|
|
22
|
-
readOnly,
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
const dropdownLabel = isMulti
|
|
26
|
-
? `${selected?.length || 0} option${selected?.length !== 1 ? 's' : ''} selected`
|
|
27
|
-
: options.find((o) => o.value === selected?.[0])?.label;
|
|
28
|
-
return (jsxs(Fragment, { children: [jsx("input", { defaultValue: selected, name: name, type: "hidden" }), jsxs("button", { "aria-label": ariaLabel, css: style, "data-dropdown": "", "data-empty": dropdownLabel ? undefined : '', "data-invalid": invalid || undefined, "data-size": size, disabled: disabled || readOnly, id: id, style: styleProp, ...triggerProps, children: [jsx(ListItem, { "data-placeholder": "", label: dropdownLabel || placeholder, readOnly: true }), jsx("span", { "data-svg": true, children: jsx(SvgChevronRight, {}) })] }), jsx(Portal, { children: jsx(Menu, { "data-floating": true, isMulti: isMulti, itemCount: itemCount, items: options, onChange: (selectedValues, event) => {
|
|
29
|
-
event?.preventDefault();
|
|
30
|
-
if (!isMulti)
|
|
31
|
-
closeMenu();
|
|
32
|
-
onChange?.(selectedValues);
|
|
33
|
-
}, renderListItem: renderListItem, selectedValues: selected, ...menuProps }) })] }));
|
|
34
|
-
}
|
|
35
|
-
Dropdown.bspkName = 'Dropdown';
|
|
36
|
-
const style = css `
|
|
1
|
+
[data-bspk='dropdown'] {
|
|
37
2
|
// default -- size medium not disabled or readonly
|
|
38
3
|
--dropdown-background: var(--surface-neutral-t1-base);
|
|
39
4
|
--dropdown-border-color: var(--stroke-neutral-base);
|
|
@@ -83,18 +48,13 @@ const style = css `
|
|
|
83
48
|
display: flex;
|
|
84
49
|
flex-direction: column;
|
|
85
50
|
justify-content: center;
|
|
51
|
+
|
|
86
52
|
svg {
|
|
87
53
|
transform: rotate(90deg);
|
|
88
54
|
width: var(--dropdown-icon-width);
|
|
89
55
|
}
|
|
90
56
|
}
|
|
91
57
|
|
|
92
|
-
// &[data-size='medium'] {
|
|
93
|
-
& {
|
|
94
|
-
[data-svg] svg {
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
|
|
98
58
|
&[data-size='small'] {
|
|
99
59
|
--dropdown-height: var(--spacing-sizing-08);
|
|
100
60
|
--dropdown-font: var(--body-small);
|
|
@@ -147,7 +107,6 @@ const style = css `
|
|
|
147
107
|
&[data-empty] {
|
|
148
108
|
--dropdown-text-color: var(--foreground-neutral-on-surface-variant-03);
|
|
149
109
|
}
|
|
150
|
-
|
|
110
|
+
}
|
|
151
111
|
|
|
152
|
-
|
|
153
|
-
//# sourceMappingURL=Dropdown.js.map
|
|
112
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
package/{Fab.js → src/fab.scss}
RENAMED
|
@@ -1,26 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { css } from '@emotion/react';
|
|
3
|
-
import { Tooltip } from './Tooltip.js';
|
|
4
|
-
import { isValidIcon } from './utils/children.js';
|
|
5
|
-
import { useErrorLogger } from './utils/errors.js';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* A button that highlights a primary action that is elevated above the body content of a page; normally fixed to the
|
|
9
|
-
* bottom right of a screen.
|
|
10
|
-
*
|
|
11
|
-
* @name Fab
|
|
12
|
-
*/
|
|
13
|
-
function Fab({ size = 'small', variant = 'primary', showLabel: showLabelProp = true, as, placement = 'bottom-right', container = 'local', label, icon, toolTip, ...otherProps }) {
|
|
14
|
-
// ignore showLabel=false if there is no icon
|
|
15
|
-
const hideLabel = showLabelProp === false && icon;
|
|
16
|
-
const { logError } = useErrorLogger();
|
|
17
|
-
logError(!!icon && !isValidIcon(icon), 'Button - The icon prop must be a valid icon element.');
|
|
18
|
-
const As = as || 'button';
|
|
19
|
-
const button = (jsxs(As, { ...otherProps, "aria-label": label, css: style, "data-container": container, "data-fab": true, "data-placement": placement, "data-round": hideLabel || undefined, "data-size": size, "data-variant": variant, children: [!!icon && jsx("span", { "data-fab-icon": true, children: icon }), !hideLabel && jsx("span", { "data-fab-label": true, children: label })] }));
|
|
20
|
-
return toolTip || hideLabel ? (jsx(Tooltip, { label: toolTip || label, placement: "top", children: button })) : (button);
|
|
21
|
-
}
|
|
22
|
-
Fab.bspkName = 'Fab';
|
|
23
|
-
const style = css `
|
|
1
|
+
[data-bspk='fab'] {
|
|
24
2
|
--placement-offset: var(--spacing-sizing-04);
|
|
25
3
|
|
|
26
4
|
display: flex;
|
|
@@ -31,7 +9,6 @@ const style = css `
|
|
|
31
9
|
border: none;
|
|
32
10
|
cursor: pointer;
|
|
33
11
|
box-sizing: border-box;
|
|
34
|
-
background: transparent;
|
|
35
12
|
text-decoration: none;
|
|
36
13
|
z-index: var(--z-index-fab);
|
|
37
14
|
box-shadow: var(--drop-shadow-float);
|
|
@@ -114,6 +91,7 @@ const style = css `
|
|
|
114
91
|
|
|
115
92
|
background: var(--variant-background);
|
|
116
93
|
color: var(--variant-foreground);
|
|
94
|
+
|
|
117
95
|
--variant-gradient: linear-gradient(var(--variant-background), var(--variant-background));
|
|
118
96
|
|
|
119
97
|
[data-pseudo='hover'] > &,
|
|
@@ -140,7 +118,6 @@ const style = css `
|
|
|
140
118
|
aspect-ratio: 1/1;
|
|
141
119
|
padding: 0;
|
|
142
120
|
}
|
|
143
|
-
|
|
121
|
+
}
|
|
144
122
|
|
|
145
|
-
|
|
146
|
-
//# sourceMappingURL=Fab.js.map
|
|
123
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
package/src/hooks/useFloating.ts
CHANGED
|
@@ -11,18 +11,18 @@
|
|
|
11
11
|
* @param {boolean} [params.hide=false] - Whether to hide the floating element. Default is `false`
|
|
12
12
|
*/
|
|
13
13
|
import {
|
|
14
|
-
computePosition,
|
|
15
14
|
ComputePositionReturn,
|
|
16
15
|
Placement,
|
|
17
|
-
arrow,
|
|
18
16
|
Strategy,
|
|
17
|
+
MiddlewareData,
|
|
18
|
+
OffsetOptions,
|
|
19
|
+
MiddlewareState,
|
|
20
|
+
computePosition,
|
|
21
|
+
arrow,
|
|
19
22
|
offset,
|
|
20
23
|
flip,
|
|
21
24
|
autoUpdate,
|
|
22
|
-
MiddlewareData,
|
|
23
|
-
OffsetOptions,
|
|
24
25
|
size,
|
|
25
|
-
MiddlewareState,
|
|
26
26
|
} from '@floating-ui/dom';
|
|
27
27
|
import { useCallback, useEffect, useState } from 'react';
|
|
28
28
|
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
[data-bspk='inline-alert'] {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: start;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
flex-direction: row;
|
|
6
|
+
gap: var(--spacing-sizing-02);
|
|
7
|
+
|
|
8
|
+
[data-txt] {
|
|
9
|
+
flex: 1;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&[data-variant='error'] {
|
|
13
|
+
color: var(--status-error);
|
|
14
|
+
|
|
15
|
+
--first-tone: var(--status-error);
|
|
16
|
+
--second-tone: var(--status-on-information);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&[data-variant='success'] {
|
|
20
|
+
color: var(--status-success);
|
|
21
|
+
|
|
22
|
+
--first-tone: var(--status-success);
|
|
23
|
+
--second-tone: var(--status-on-success);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&[data-variant='warning'] {
|
|
27
|
+
color: var(--foreground-neutral-on-surface);
|
|
28
|
+
|
|
29
|
+
--first-tone: var(--status-warning);
|
|
30
|
+
--second-tone: var(--status-on-warning);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&[data-variant='informational'] {
|
|
34
|
+
color: var(--status-information);
|
|
35
|
+
|
|
36
|
+
--first-tone: var(--status-information);
|
|
37
|
+
--second-tone: var(--status-on-information);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
svg {
|
|
41
|
+
color: var(--first-tone);
|
|
42
|
+
width: var(--spacing-sizing-05);
|
|
43
|
+
height: var(--spacing-sizing-05);
|
|
44
|
+
|
|
45
|
+
[data-second-tone] {
|
|
46
|
+
fill: var(--second-tone);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|
package/src/link.scss
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
[data-bspk='link'] {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: row;
|
|
4
|
+
align-items: center;
|
|
5
|
+
gap: var(--spacing-sizing-01);
|
|
6
|
+
font: var(--labels-base);
|
|
7
|
+
|
|
8
|
+
&[data-size='large'] {
|
|
9
|
+
font: var(--labels-large);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&[data-size='small'] {
|
|
13
|
+
font: var(--labels-small);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
svg {
|
|
17
|
+
width: var(--spacing-sizing-05);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
|