@koobiq/react-components 0.0.1-beta.8 → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Alert/Alert.js +36 -21
- package/dist/components/Alert/components/AlertIcon/AlertIcon.js +3 -3
- package/dist/components/Alert/components/AlertIcon/types.d.ts +1 -1
- package/dist/components/Alert/types.d.ts +22 -6
- package/dist/components/AnimatedIcon/types.d.ts +1 -1
- package/dist/components/Backdrop/Backdrop.js +10 -2
- package/dist/components/Backdrop/types.d.ts +12 -2
- package/dist/components/Badge/Badge.js +34 -23
- package/dist/components/Badge/types.d.ts +12 -4
- package/dist/components/Button/Button.js +42 -26
- package/dist/components/Button/Button.module.css.js +5 -2
- package/dist/components/Button/types.d.ts +32 -18
- package/dist/components/ButtonToggleGroup/ButtonToggleGroup.d.ts +2 -0
- package/dist/components/ButtonToggleGroup/ButtonToggleGroup.js +130 -0
- package/dist/components/ButtonToggleGroup/ButtonToggleGroup.module.css.js +17 -0
- package/dist/components/ButtonToggleGroup/ButtonToggleGroupContext.d.ts +7 -0
- package/dist/components/ButtonToggleGroup/ButtonToggleGroupContext.js +12 -0
- package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.d.ts +2 -0
- package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.js +90 -0
- package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.module.css.js +32 -0
- package/dist/components/ButtonToggleGroup/components/ButtonToggle/index.d.ts +2 -0
- package/dist/components/ButtonToggleGroup/components/ButtonToggle/types.d.ts +27 -0
- package/dist/components/ButtonToggleGroup/components/index.d.ts +1 -0
- package/dist/components/ButtonToggleGroup/index.d.ts +3 -0
- package/dist/components/ButtonToggleGroup/reducer.d.ts +23 -0
- package/dist/components/ButtonToggleGroup/reducer.js +25 -0
- package/dist/components/ButtonToggleGroup/types.d.ts +38 -0
- package/dist/components/ButtonToggleGroup/utils.d.ts +3 -0
- package/dist/components/ButtonToggleGroup/utils.js +19 -0
- package/dist/components/Calendar/Calendar.d.ts +2 -0
- package/dist/components/Calendar/Calendar.js +42 -0
- package/dist/components/Calendar/Calendar.module.css.js +14 -0
- package/dist/components/Calendar/components/CalendarCell/CalendarCell.d.ts +7 -0
- package/dist/components/Calendar/components/CalendarCell/CalendarCell.js +51 -0
- package/dist/components/Calendar/components/CalendarCell/CalendarCell.module.css.js +32 -0
- package/dist/components/Calendar/components/CalendarCell/index.d.ts +1 -0
- package/dist/components/Calendar/components/CalendarGrid/CalendarGrid.d.ts +6 -0
- package/dist/components/Calendar/components/CalendarGrid/CalendarGrid.js +28 -0
- package/dist/components/Calendar/components/CalendarGrid/CalendarGrid.module.css.js +14 -0
- package/dist/components/Calendar/components/CalendarGrid/index.d.ts +1 -0
- package/dist/components/Calendar/components/CalendarHeader/CalendarHeader.d.ts +8 -0
- package/dist/components/Calendar/components/CalendarHeader/CalendarHeader.js +54 -0
- package/dist/components/Calendar/components/CalendarHeader/CalendarHeader.module.css.js +11 -0
- package/dist/components/Calendar/components/CalendarHeader/index.d.ts +1 -0
- package/dist/components/Calendar/components/CalendarMonthDropdown/CalendarMonthDropdown.d.ts +6 -0
- package/dist/components/Calendar/components/CalendarMonthDropdown/CalendarMonthDropdown.js +101 -0
- package/dist/components/Calendar/components/CalendarMonthDropdown/index.d.ts +1 -0
- package/dist/components/Calendar/components/CalendarYearDropdown/CalendarYearDropdown.d.ts +6 -0
- package/dist/components/Calendar/components/CalendarYearDropdown/CalendarYearDropdown.js +76 -0
- package/dist/components/Calendar/components/CalendarYearDropdown/index.d.ts +1 -0
- package/dist/components/Calendar/components/index.d.ts +2 -0
- package/dist/components/Calendar/index.d.ts +2 -0
- package/dist/components/Calendar/intl.json.js +7 -0
- package/dist/components/Calendar/types.d.ts +51 -0
- package/dist/components/Checkbox/Checkbox.d.ts +20 -11
- package/dist/components/Checkbox/Checkbox.js +81 -17
- package/dist/components/Checkbox/Checkbox.module.css.js +6 -6
- package/dist/components/Checkbox/types.d.ts +95 -10
- package/dist/components/Collections/Cell.d.ts +28 -0
- package/dist/components/Collections/Cell.js +10 -0
- package/dist/components/Collections/Column.d.ts +28 -0
- package/dist/components/Collections/Column.js +10 -0
- package/dist/components/Collections/Divider.d.ts +19 -0
- package/dist/components/Collections/Divider.js +14 -0
- package/dist/components/Collections/Header.d.ts +20 -0
- package/dist/components/Collections/Header.js +16 -0
- package/dist/components/Collections/Item.d.ts +14 -0
- package/dist/components/Collections/Item.js +10 -0
- package/dist/components/Collections/Row.d.ts +14 -0
- package/dist/components/Collections/Row.js +10 -0
- package/dist/components/{List/ListSection.d.ts → Collections/Section.d.ts} +6 -6
- package/dist/components/Collections/Section.js +10 -0
- package/dist/components/Collections/TableBody.d.ts +6 -0
- package/dist/components/Collections/TableBody.js +10 -0
- package/dist/components/Collections/TableHeader.d.ts +6 -0
- package/dist/components/Collections/TableHeader.js +10 -0
- package/dist/components/Collections/index.d.ts +9 -0
- package/dist/components/Container/Container.js +13 -2
- package/dist/components/Container/types.d.ts +16 -6
- package/dist/components/DateInput/DateInput.d.ts +5 -0
- package/dist/components/DateInput/DateInput.js +105 -0
- package/dist/components/DateInput/DateInput.module.css.js +8 -0
- package/dist/components/DateInput/components/DateInputSegment/DateInputSegment.d.ts +7 -0
- package/dist/components/DateInput/components/DateInputSegment/DateInputSegment.js +27 -0
- package/dist/components/DateInput/components/DateInputSegment/DateInputSegment.module.css.js +17 -0
- package/dist/components/DateInput/components/DateInputSegment/index.d.ts +1 -0
- package/dist/components/DateInput/components/index.d.ts +1 -0
- package/dist/components/DateInput/index.d.ts +2 -0
- package/dist/components/DateInput/types.d.ts +47 -0
- package/dist/components/DateInput/types.js +4 -0
- package/dist/components/DatePicker/DatePicker.d.ts +5 -0
- package/dist/components/DatePicker/DatePicker.js +101 -0
- package/dist/components/DatePicker/DatePicker.module.css.js +8 -0
- package/dist/components/DatePicker/index.d.ts +2 -0
- package/dist/components/DatePicker/types.d.ts +34 -0
- package/dist/components/Dialog/Dialog.d.ts +9 -1
- package/dist/components/Dialog/Dialog.js +31 -17
- package/dist/components/Dialog/components/DialogBody.d.ts +13 -0
- package/dist/components/Dialog/components/{DialogContent.js → DialogBody.js} +9 -8
- package/dist/components/Dialog/components/DialogCloseButton.d.ts +22 -1
- package/dist/components/Dialog/components/DialogCloseButton.js +4 -7
- package/dist/components/Dialog/components/index.d.ts +1 -1
- package/dist/components/Dialog/index.d.ts +0 -1
- package/dist/components/Dialog/types.d.ts +1 -1
- package/dist/components/Divider/Divider.d.ts +4 -0
- package/dist/components/Divider/Divider.js +47 -0
- package/dist/components/Divider/Divider.module.css.js +29 -0
- package/dist/components/Divider/index.d.ts +2 -0
- package/dist/components/Divider/types.d.ts +27 -0
- package/dist/components/Divider/types.js +6 -0
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.d.ts +2 -1
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.js +19 -2
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.module.css.js +6 -3
- package/dist/components/FieldComponents/FieldControl/FieldControl.d.ts +6 -8
- package/dist/components/FieldComponents/FieldControl/FieldControl.js +5 -8
- package/dist/components/FieldComponents/FieldError/FieldError.d.ts +1 -1
- package/dist/components/FieldComponents/FieldError/FieldError.js +1 -1
- package/dist/components/FieldComponents/FieldInput/FieldInput.d.ts +3 -3
- package/dist/components/FieldComponents/FieldInput/FieldInput.js +4 -4
- package/dist/components/FieldComponents/FieldInput/FieldInput.module.css.js +3 -3
- package/dist/components/FieldComponents/FieldInputDate/FieldInputDate.d.ts +12 -0
- package/dist/components/FieldComponents/FieldInputDate/FieldInputDate.js +32 -0
- package/dist/components/FieldComponents/FieldInputDate/FieldInputDate.module.css.js +20 -0
- package/dist/components/FieldComponents/FieldInputDate/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.d.ts +8 -2
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.js +29 -5
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroupContext.d.ts +4 -3
- package/dist/components/FieldComponents/FieldLabel/FieldLabel.d.ts +2 -2
- package/dist/components/FieldComponents/FieldLabel/FieldLabel.js +3 -3
- package/dist/components/FieldComponents/FieldSelect/FieldSelect.d.ts +13 -0
- package/dist/components/FieldComponents/FieldSelect/FieldSelect.js +37 -0
- package/dist/components/FieldComponents/FieldSelect/FieldSelect.module.css.js +20 -0
- package/dist/components/FieldComponents/FieldSelect/index.d.ts +1 -0
- package/dist/components/FieldComponents/index.d.ts +2 -1
- package/dist/components/FormControlLabel/types.d.ts +5 -5
- package/dist/components/Grid/Grid.d.ts +8 -2
- package/dist/components/Grid/Grid.js +5 -2
- package/dist/components/Grid/types.d.ts +2 -2
- package/dist/components/IconButton/IconButton.js +38 -22
- package/dist/components/IconButton/index.d.ts +2 -2
- package/dist/components/IconButton/types.d.ts +32 -16
- package/dist/components/Input/Input.d.ts +32 -12
- package/dist/components/Input/Input.js +62 -15
- package/dist/components/Input/types.d.ts +69 -17
- package/dist/components/InputNumber/InputNumber.d.ts +27 -11
- package/dist/components/InputNumber/InputNumber.js +77 -26
- package/dist/components/InputNumber/components/InputNumberCounterControls.js +12 -12
- package/dist/components/InputNumber/components/InputNumberCounterControls.module.css.js +7 -4
- package/dist/components/InputNumber/types.d.ts +57 -17
- package/dist/components/Link/Link.js +42 -22
- package/dist/components/Link/Link.module.css.js +4 -4
- package/dist/components/Link/types.d.ts +43 -10
- package/dist/components/List/List.d.ts +17 -3
- package/dist/components/List/List.js +20 -8
- package/dist/components/List/List.module.css.js +0 -3
- package/dist/components/List/components/ListItemText/ListItemText.js +26 -0
- package/dist/components/List/components/ListItemText/ListItemText.module.css.js +11 -0
- package/dist/components/List/components/ListOption/ListOption.d.ts +5 -3
- package/dist/components/List/components/ListOption/ListOption.js +10 -15
- package/dist/components/List/components/ListSection/ListSection.d.ts +5 -3
- package/dist/components/List/components/ListSection/ListSection.js +1 -4
- package/dist/components/List/index.d.ts +2 -2
- package/dist/components/List/types.d.ts +2 -0
- package/dist/components/Menu/Menu.d.ts +15 -0
- package/dist/components/Menu/Menu.js +75 -0
- package/dist/components/Menu/Menu.module.css.js +8 -0
- package/dist/components/Menu/components/MenuHeader/MenuHeader.d.ts +5 -0
- package/dist/components/Menu/components/MenuHeader/MenuHeader.js +9 -0
- package/dist/components/Menu/components/MenuHeader/index.d.ts +1 -0
- package/dist/components/Menu/components/MenuInner/MenuInner.d.ts +6 -0
- package/dist/components/Menu/components/MenuInner/MenuInner.js +46 -0
- package/dist/components/Menu/components/MenuInner/MenuInner.module.css.js +11 -0
- package/dist/components/Menu/components/MenuInner/index.d.ts +1 -0
- package/dist/components/Menu/components/MenuItem/MenuItem.d.ts +7 -0
- package/dist/components/Menu/components/MenuItem/MenuItem.js +36 -0
- package/dist/components/Menu/components/MenuItem/index.d.ts +1 -0
- package/dist/components/Menu/components/MenuSection/MenuSection.d.ts +7 -0
- package/dist/components/Menu/components/MenuSection/MenuSection.js +30 -0
- package/dist/components/Menu/components/MenuSection/MenuSection.module.css.js +11 -0
- package/dist/components/Menu/components/MenuSection/index.d.ts +1 -0
- package/dist/components/Menu/components/index.d.ts +1 -0
- package/dist/components/Menu/index.d.ts +2 -0
- package/dist/components/Menu/types.d.ts +72 -0
- package/dist/components/Menu/types.js +4 -0
- package/dist/components/Modal/Modal.d.ts +33 -2
- package/dist/components/Modal/Modal.js +23 -16
- package/dist/components/Modal/index.d.ts +15 -2
- package/dist/components/Modal/index.js +9 -0
- package/dist/components/Modal/types.d.ts +14 -5
- package/dist/components/Popover/Popover.d.ts +42 -2
- package/dist/components/Popover/Popover.js +23 -141
- package/dist/components/Popover/Popover.module.css.js +3 -0
- package/dist/components/Popover/PopoverInner.d.ts +3 -0
- package/dist/components/Popover/PopoverInner.js +143 -0
- package/dist/components/Popover/index.d.ts +15 -2
- package/dist/components/Popover/index.js +9 -0
- package/dist/components/Popover/types.d.ts +37 -11
- package/dist/components/Popover/types.js +9 -1
- package/dist/components/ProgressBar/types.d.ts +2 -2
- package/dist/components/ProgressSpinner/types.d.ts +4 -4
- package/dist/components/Provider/Provider.d.ts +1 -1
- package/dist/components/Provider/Provider.js +8 -4
- package/dist/components/Provider/types.d.ts +3 -1
- package/dist/components/RadioGroup/RadioGroup.js +42 -2
- package/dist/components/RadioGroup/components/Radio/Radio.d.ts +7 -4
- package/dist/components/RadioGroup/components/Radio/Radio.js +36 -10
- package/dist/components/RadioGroup/components/Radio/Radio.module.css.js +9 -6
- package/dist/components/RadioGroup/components/Radio/types.d.ts +25 -10
- package/dist/components/RadioGroup/components/Radio/types.js +1 -0
- package/dist/components/RadioGroup/types.d.ts +44 -17
- package/dist/components/Select/Select.d.ts +11 -0
- package/dist/components/Select/Select.js +204 -0
- package/dist/components/Select/Select.module.css.js +20 -0
- package/dist/components/Select/index.d.ts +2 -0
- package/dist/components/Select/types.d.ts +125 -0
- package/dist/components/SidePanel/SidePanel.d.ts +35 -2
- package/dist/components/SidePanel/SidePanel.js +31 -18
- package/dist/components/SidePanel/SidePanel.module.css.js +7 -1
- package/dist/components/SidePanel/index.d.ts +15 -2
- package/dist/components/SidePanel/index.js +9 -0
- package/dist/components/SidePanel/types.d.ts +26 -8
- package/dist/components/SidePanel/types.js +2 -0
- package/dist/components/SkeletonTypography/types.d.ts +2 -2
- package/dist/components/Table/Table.d.ts +12 -0
- package/dist/components/Table/Table.js +97 -0
- package/dist/components/Table/Table.module.css.js +11 -0
- package/dist/components/Table/components/TableCell/TableCell.d.ts +7 -0
- package/dist/components/Table/components/TableCell/TableCell.js +39 -0
- package/dist/components/Table/components/TableCell/TableCell.module.css.js +27 -0
- package/dist/components/Table/components/TableCell/index.d.ts +1 -0
- package/dist/components/Table/components/TableCheckboxCell/TableCheckboxCell.d.ts +7 -0
- package/dist/components/Table/components/TableCheckboxCell/TableCheckboxCell.js +21 -0
- package/dist/components/Table/components/TableCheckboxCell/index.d.ts +1 -0
- package/dist/components/Table/components/TableColumnHeader/TableColumnHeader.d.ts +7 -0
- package/dist/components/Table/components/TableColumnHeader/TableColumnHeader.js +46 -0
- package/dist/components/Table/components/TableColumnHeader/TableColumnHeader.module.css.js +27 -0
- package/dist/components/Table/components/TableColumnHeader/index.d.ts +1 -0
- package/dist/components/Table/components/TableHeaderRow/TableHeaderRow.d.ts +9 -0
- package/dist/components/Table/components/TableHeaderRow/TableHeaderRow.js +16 -0
- package/dist/components/Table/components/TableHeaderRow/index.d.ts +1 -0
- package/dist/components/Table/components/TableRow/TableRow.d.ts +9 -0
- package/dist/components/Table/components/TableRow/TableRow.js +46 -0
- package/dist/components/Table/components/TableRow/TableRow.module.css.js +23 -0
- package/dist/components/Table/components/TableRow/index.d.ts +1 -0
- package/dist/components/Table/components/TableRowGroup/TableRowGroup.d.ts +6 -0
- package/dist/components/Table/components/TableRowGroup/TableRowGroup.js +15 -0
- package/dist/components/Table/components/TableRowGroup/index.d.ts +1 -0
- package/dist/components/Table/components/TableSelectAllCell/TableSelectAllCell.d.ts +7 -0
- package/dist/components/Table/components/TableSelectAllCell/TableSelectAllCell.js +22 -0
- package/dist/components/Table/components/TableSelectAllCell/index.d.ts +1 -0
- package/dist/components/Table/components/index.d.ts +7 -0
- package/dist/components/Table/index.d.ts +1 -0
- package/dist/components/Table/types.d.ts +71 -0
- package/dist/components/Table/utils.d.ts +2 -0
- package/dist/components/Table/utils.js +8 -0
- package/dist/components/TagGroup/Tag.d.ts +24 -0
- package/dist/components/TagGroup/Tag.js +10 -0
- package/dist/components/TagGroup/TagGroup.d.ts +2 -0
- package/dist/components/TagGroup/TagGroup.js +23 -0
- package/dist/components/TagGroup/TagGroup.module.css.js +8 -0
- package/dist/components/TagGroup/components/TagInner/TagInner.d.ts +11 -0
- package/dist/components/TagGroup/components/TagInner/TagInner.js +86 -0
- package/dist/components/TagGroup/components/TagInner/TagInner.module.css.js +30 -0
- package/dist/components/TagGroup/components/TagInner/index.d.ts +1 -0
- package/dist/components/TagGroup/components/TagInner/utils.d.ts +3 -0
- package/dist/components/TagGroup/components/TagInner/utils.js +9 -0
- package/dist/components/TagGroup/components/index.d.ts +1 -0
- package/dist/components/TagGroup/index.d.ts +3 -0
- package/dist/components/TagGroup/intl.json.js +7 -0
- package/dist/components/TagGroup/types.d.ts +37 -0
- package/dist/components/TagGroup/types.js +9 -0
- package/dist/components/Textarea/Textarea.d.ts +16 -8
- package/dist/components/Textarea/Textarea.js +48 -3
- package/dist/components/Textarea/components/TextareaContextConsumer/TextareaContextConsumer.d.ts +4 -4
- package/dist/components/Textarea/components/TextareaContextConsumer/TextareaContextConsumer.js +15 -12
- package/dist/components/Textarea/types.d.ts +61 -16
- package/dist/components/Textarea/utils/useTextareaAutosize.d.ts +1 -1
- package/dist/components/Textarea/utils/useTextareaAutosize.js +2 -2
- package/dist/components/Toggle/Toggle.d.ts +14 -7
- package/dist/components/Toggle/Toggle.js +72 -11
- package/dist/components/Toggle/Toggle.module.css.js +6 -6
- package/dist/components/Toggle/types.d.ts +65 -8
- package/dist/components/Tooltip/Tooltip.d.ts +5 -2
- package/dist/components/Tooltip/Tooltip.js +40 -20
- package/dist/components/Tooltip/types.d.ts +28 -12
- package/dist/components/Typography/types.d.ts +10 -5
- package/dist/components/index.d.ts +11 -0
- package/dist/index.js +65 -24
- package/dist/style.css +1113 -253
- package/dist/styles/utility.d.ts +2 -0
- package/dist/styles/utility.js +3 -1
- package/dist/styles/utility.module.css.js +5 -1
- package/dist/types.d.ts +1 -0
- package/dist/utils/capitalizeFirstLetter/capitalizeFirstLetter.d.ts +2 -0
- package/dist/utils/capitalizeFirstLetter/capitalizeFirstLetter.js +6 -0
- package/dist/utils/capitalizeFirstLetter/index.d.ts +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/package.json +13 -7
- package/dist/components/Dialog/DialogContext.d.ts +0 -9
- package/dist/components/Dialog/DialogContext.js +0 -12
- package/dist/components/Dialog/components/DialogContent.d.ts +0 -12
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.d.ts +0 -10
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.js +0 -18
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.module.css.js +0 -11
- package/dist/components/FieldComponents/FieldNumberControl/index.d.ts +0 -1
- package/dist/components/List/ListItem.d.ts +0 -11
- package/dist/components/List/ListItem.js +0 -11
- package/dist/components/List/ListSection.js +0 -11
- package/dist/components/List/components/ListOption/ListOption.module.css.js +0 -23
|
@@ -1,157 +1,39 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import { forwardRef
|
|
4
|
-
import {
|
|
5
|
-
import { useOverlayTriggerState
|
|
6
|
-
import {
|
|
7
|
-
import s from "./Popover.module.css.js";
|
|
8
|
-
import { normalizeInlineSize } from "./utils.js";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
|
+
import { deprecate } from "@koobiq/logger";
|
|
5
|
+
import { useOverlayTriggerState } from "@koobiq/react-primitives";
|
|
6
|
+
import { PopoverInner } from "./PopoverInner.js";
|
|
9
7
|
import { Dialog } from "../Dialog/Dialog.js";
|
|
10
|
-
const
|
|
8
|
+
const PopoverComponent = forwardRef(
|
|
11
9
|
(props, ref) => {
|
|
12
10
|
const {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
crossOffset = 0,
|
|
16
|
-
hideArrow = false,
|
|
17
|
-
containerPadding = 12,
|
|
18
|
-
arrowBoundaryOffset = 20,
|
|
19
|
-
placement: placementProp = "top",
|
|
20
|
-
control,
|
|
21
|
-
children,
|
|
22
|
-
anchorRef,
|
|
23
|
-
slotProps,
|
|
24
|
-
className,
|
|
25
|
-
isNonModal,
|
|
26
|
-
defaultOpen,
|
|
11
|
+
open,
|
|
12
|
+
isOpen: isOpenProp,
|
|
27
13
|
onOpenChange,
|
|
28
|
-
|
|
29
|
-
portalContainer,
|
|
30
|
-
hideCloseButton,
|
|
31
|
-
disableFocusManagement,
|
|
32
|
-
disableExitOnEscapeKeyDown,
|
|
33
|
-
shouldCloseOnInteractOutside,
|
|
14
|
+
defaultOpen,
|
|
34
15
|
...other
|
|
35
16
|
} = props;
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
17
|
+
const isOpen = isOpenProp ?? open;
|
|
18
|
+
if (process.env.NODE_ENV !== "production" && "open" in props) {
|
|
19
|
+
deprecate(
|
|
20
|
+
'Popover: the "open" prop is deprecated. Use "isOpen" prop to replace it.'
|
|
21
|
+
);
|
|
22
|
+
}
|
|
39
23
|
const state = useOverlayTriggerState({
|
|
40
|
-
|
|
24
|
+
isOpen,
|
|
41
25
|
onOpenChange,
|
|
42
|
-
|
|
26
|
+
defaultOpen,
|
|
43
27
|
...other
|
|
44
28
|
});
|
|
45
|
-
|
|
46
|
-
const [opened, { on, off }] = useBoolean(openState);
|
|
47
|
-
const { triggerProps, overlayProps } = useOverlayTrigger(
|
|
48
|
-
{ type: "dialog" },
|
|
49
|
-
{ ...state, isOpen: openState }
|
|
50
|
-
);
|
|
51
|
-
const {
|
|
52
|
-
popoverProps,
|
|
53
|
-
underlayProps,
|
|
54
|
-
arrowProps: arrowPropsCommon,
|
|
55
|
-
placement
|
|
56
|
-
} = usePopover(
|
|
57
|
-
{
|
|
58
|
-
...props,
|
|
59
|
-
offset,
|
|
60
|
-
isNonModal,
|
|
61
|
-
crossOffset,
|
|
62
|
-
maxHeight: 480,
|
|
63
|
-
containerPadding,
|
|
64
|
-
popoverRef: domRef,
|
|
65
|
-
arrowBoundaryOffset,
|
|
66
|
-
placement: placementProp,
|
|
67
|
-
shouldCloseOnInteractOutside,
|
|
68
|
-
triggerRef: anchorRef || controlRef,
|
|
69
|
-
isKeyboardDismissDisabled: disableExitOnEscapeKeyDown
|
|
70
|
-
},
|
|
71
|
-
{ ...state, isOpen: opened }
|
|
72
|
-
);
|
|
73
|
-
const resolvedChildren = () => {
|
|
74
|
-
if (typeof children === "function")
|
|
75
|
-
return cloneElement(children({ close: state.close }), overlayProps);
|
|
76
|
-
if (isValidElement(children)) return cloneElement(children, overlayProps);
|
|
77
|
-
return children;
|
|
78
|
-
};
|
|
79
|
-
const { isDisabled, onPress, ...otherTriggerProps } = triggerProps;
|
|
80
|
-
const arrowProps = mergeProps(
|
|
81
|
-
{ className: s.arrow },
|
|
82
|
-
arrowPropsCommon,
|
|
83
|
-
slotProps?.arrow
|
|
84
|
-
);
|
|
85
|
-
const dialogProps = mergeProps(
|
|
86
|
-
{
|
|
87
|
-
role: "dialog",
|
|
88
|
-
hideCloseButton,
|
|
89
|
-
className: s.dialog,
|
|
90
|
-
onClose: state.close
|
|
91
|
-
},
|
|
92
|
-
slotProps?.dialog
|
|
93
|
-
);
|
|
94
|
-
const backdropProps = mergeProps(
|
|
95
|
-
{
|
|
96
|
-
className: s.underlay
|
|
97
|
-
},
|
|
98
|
-
slotProps?.backdrop,
|
|
99
|
-
underlayProps
|
|
100
|
-
);
|
|
101
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
102
|
-
control?.({
|
|
103
|
-
ref: controlRef,
|
|
104
|
-
onClick: onPress,
|
|
105
|
-
disabled: isDisabled,
|
|
106
|
-
...otherTriggerProps
|
|
107
|
-
}),
|
|
108
|
-
/* @__PURE__ */ jsx(
|
|
109
|
-
Transition,
|
|
110
|
-
{
|
|
111
|
-
onEnter: on,
|
|
112
|
-
timeout: 300,
|
|
113
|
-
onExited: off,
|
|
114
|
-
in: openState,
|
|
115
|
-
nodeRef: domRef,
|
|
116
|
-
unmountOnExit: true,
|
|
117
|
-
appear: true,
|
|
118
|
-
children: (transition) => /* @__PURE__ */ jsxs(
|
|
119
|
-
Overlay,
|
|
120
|
-
{
|
|
121
|
-
portalContainer,
|
|
122
|
-
disableFocusManagement,
|
|
123
|
-
children: [
|
|
124
|
-
/* @__PURE__ */ jsx("div", { ...backdropProps }),
|
|
125
|
-
/* @__PURE__ */ jsxs(
|
|
126
|
-
"div",
|
|
127
|
-
{
|
|
128
|
-
ref: domRef,
|
|
129
|
-
"data-size": size,
|
|
130
|
-
"data-arrow": showArrow,
|
|
131
|
-
"data-placement": placement,
|
|
132
|
-
"data-transition": transition,
|
|
133
|
-
className: clsx(s.base, s[size], className),
|
|
134
|
-
...mergeProps(popoverProps, other),
|
|
135
|
-
style: {
|
|
136
|
-
...popoverProps.style,
|
|
137
|
-
"--popover-inline-size": normalizeInlineSize(size)
|
|
138
|
-
},
|
|
139
|
-
children: [
|
|
140
|
-
showArrow && /* @__PURE__ */ jsx("div", { ...arrowProps, "data-placement": placement }),
|
|
141
|
-
/* @__PURE__ */ jsx(Dialog, { ...dialogProps, children: resolvedChildren() })
|
|
142
|
-
]
|
|
143
|
-
}
|
|
144
|
-
)
|
|
145
|
-
]
|
|
146
|
-
}
|
|
147
|
-
)
|
|
148
|
-
},
|
|
149
|
-
placement
|
|
150
|
-
)
|
|
151
|
-
] });
|
|
29
|
+
return /* @__PURE__ */ jsx(PopoverInner, { popoverRef: ref, ...other, state });
|
|
152
30
|
}
|
|
153
31
|
);
|
|
154
|
-
|
|
32
|
+
PopoverComponent.displayName = "Popover";
|
|
33
|
+
const Popover = PopoverComponent;
|
|
34
|
+
Popover.Header = Dialog.Header;
|
|
35
|
+
Popover.Body = Dialog.Body;
|
|
36
|
+
Popover.Footer = Dialog.Footer;
|
|
155
37
|
export {
|
|
156
38
|
Popover
|
|
157
39
|
};
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
const base = "kbq-popover-f14dc5";
|
|
2
|
+
const container = "kbq-popover-container-332b0b";
|
|
2
3
|
const arrow = "kbq-popover-arrow-3bdadb";
|
|
3
4
|
const underlay = "kbq-popover-underlay-9c5b07";
|
|
4
5
|
const dialog = "kbq-popover-dialog-e39a6d";
|
|
5
6
|
const s = {
|
|
6
7
|
base,
|
|
8
|
+
container,
|
|
7
9
|
arrow,
|
|
8
10
|
underlay,
|
|
9
11
|
dialog
|
|
@@ -11,6 +13,7 @@ const s = {
|
|
|
11
13
|
export {
|
|
12
14
|
arrow,
|
|
13
15
|
base,
|
|
16
|
+
container,
|
|
14
17
|
s as default,
|
|
15
18
|
dialog,
|
|
16
19
|
underlay
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useRef, cloneElement, isValidElement } from "react";
|
|
3
|
+
import { useDOMRef, useBoolean, mergeProps, clsx } from "@koobiq/react-core";
|
|
4
|
+
import { useOverlayTrigger, usePopover, Overlay } from "@koobiq/react-primitives";
|
|
5
|
+
import { Transition } from "react-transition-group";
|
|
6
|
+
import s from "./Popover.module.css.js";
|
|
7
|
+
import { normalizeInlineSize } from "./utils.js";
|
|
8
|
+
import { Dialog } from "../Dialog/Dialog.js";
|
|
9
|
+
const PopoverInner = (props) => {
|
|
10
|
+
const {
|
|
11
|
+
offset = 0,
|
|
12
|
+
size = "medium",
|
|
13
|
+
crossOffset = 0,
|
|
14
|
+
hideArrow = false,
|
|
15
|
+
containerPadding = 12,
|
|
16
|
+
arrowBoundaryOffset = 20,
|
|
17
|
+
placement: placementProp = "top",
|
|
18
|
+
maxBlockSize = 480,
|
|
19
|
+
type = "dialog",
|
|
20
|
+
state,
|
|
21
|
+
control,
|
|
22
|
+
children,
|
|
23
|
+
anchorRef,
|
|
24
|
+
slotProps,
|
|
25
|
+
className,
|
|
26
|
+
isNonModal,
|
|
27
|
+
popoverRef,
|
|
28
|
+
portalContainer,
|
|
29
|
+
hideCloseButton,
|
|
30
|
+
disableFocusManagement,
|
|
31
|
+
disableExitOnEscapeKeyDown,
|
|
32
|
+
shouldCloseOnInteractOutside,
|
|
33
|
+
...other
|
|
34
|
+
} = props;
|
|
35
|
+
const showArrow = !hideArrow;
|
|
36
|
+
const domRef = useDOMRef(popoverRef);
|
|
37
|
+
const controlRef = useRef(null);
|
|
38
|
+
const openState = state.isOpen;
|
|
39
|
+
const [opened, { on, off }] = useBoolean(openState);
|
|
40
|
+
const { triggerProps, overlayProps } = useOverlayTrigger(
|
|
41
|
+
{ type },
|
|
42
|
+
{ ...state, isOpen: openState }
|
|
43
|
+
);
|
|
44
|
+
const {
|
|
45
|
+
popoverProps,
|
|
46
|
+
underlayProps,
|
|
47
|
+
arrowProps: arrowPropsCommon,
|
|
48
|
+
placement
|
|
49
|
+
} = usePopover(
|
|
50
|
+
{
|
|
51
|
+
...props,
|
|
52
|
+
offset,
|
|
53
|
+
isNonModal,
|
|
54
|
+
crossOffset,
|
|
55
|
+
containerPadding,
|
|
56
|
+
popoverRef: domRef,
|
|
57
|
+
arrowBoundaryOffset,
|
|
58
|
+
maxHeight: maxBlockSize,
|
|
59
|
+
placement: placementProp,
|
|
60
|
+
shouldCloseOnInteractOutside,
|
|
61
|
+
triggerRef: anchorRef || controlRef,
|
|
62
|
+
isKeyboardDismissDisabled: disableExitOnEscapeKeyDown
|
|
63
|
+
},
|
|
64
|
+
{ ...state, isOpen: openState || opened }
|
|
65
|
+
);
|
|
66
|
+
const resolvedChildren = () => {
|
|
67
|
+
if (typeof children === "function")
|
|
68
|
+
return cloneElement(children({ close: state.close }), overlayProps);
|
|
69
|
+
if (isValidElement(children)) return cloneElement(children, overlayProps);
|
|
70
|
+
return children;
|
|
71
|
+
};
|
|
72
|
+
const arrowProps = mergeProps(
|
|
73
|
+
{ className: s.arrow },
|
|
74
|
+
arrowPropsCommon,
|
|
75
|
+
slotProps?.arrow
|
|
76
|
+
);
|
|
77
|
+
const dialogProps = mergeProps(
|
|
78
|
+
{
|
|
79
|
+
role: "dialog",
|
|
80
|
+
hideCloseButton,
|
|
81
|
+
className: s.dialog,
|
|
82
|
+
onClose: state.close
|
|
83
|
+
},
|
|
84
|
+
slotProps?.dialog
|
|
85
|
+
);
|
|
86
|
+
const backdropProps = mergeProps(
|
|
87
|
+
{ className: s.underlay },
|
|
88
|
+
slotProps?.backdrop,
|
|
89
|
+
underlayProps
|
|
90
|
+
);
|
|
91
|
+
const transitionProps = mergeProps(
|
|
92
|
+
{
|
|
93
|
+
timeout: 120,
|
|
94
|
+
onEnter: on,
|
|
95
|
+
onExited: off,
|
|
96
|
+
appear: true,
|
|
97
|
+
in: openState,
|
|
98
|
+
nodeRef: domRef,
|
|
99
|
+
unmountOnExit: true
|
|
100
|
+
},
|
|
101
|
+
slotProps?.transition
|
|
102
|
+
);
|
|
103
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
104
|
+
control?.({
|
|
105
|
+
ref: controlRef,
|
|
106
|
+
...triggerProps
|
|
107
|
+
}),
|
|
108
|
+
/* @__PURE__ */ jsx(Transition, { ...transitionProps, children: (transition) => /* @__PURE__ */ jsxs(
|
|
109
|
+
Overlay,
|
|
110
|
+
{
|
|
111
|
+
portalContainer,
|
|
112
|
+
disableFocusManagement,
|
|
113
|
+
children: [
|
|
114
|
+
/* @__PURE__ */ jsx("div", { ...backdropProps }),
|
|
115
|
+
/* @__PURE__ */ jsxs(
|
|
116
|
+
"div",
|
|
117
|
+
{
|
|
118
|
+
ref: domRef,
|
|
119
|
+
"data-size": size,
|
|
120
|
+
"data-arrow": showArrow,
|
|
121
|
+
"data-placement": placement,
|
|
122
|
+
"data-transition": transition,
|
|
123
|
+
className: clsx(s.base, s[size], className),
|
|
124
|
+
...mergeProps(popoverProps, other),
|
|
125
|
+
style: {
|
|
126
|
+
...props.style,
|
|
127
|
+
...popoverProps.style,
|
|
128
|
+
"--popover-inline-size": normalizeInlineSize(size)
|
|
129
|
+
},
|
|
130
|
+
children: [
|
|
131
|
+
showArrow && /* @__PURE__ */ jsx("div", { ...arrowProps, "data-placement": placement }),
|
|
132
|
+
/* @__PURE__ */ jsx("div", { className: s.container, children: type === "dialog" ? /* @__PURE__ */ jsx(Dialog, { ...dialogProps, children: resolvedChildren() }) : resolvedChildren() })
|
|
133
|
+
]
|
|
134
|
+
}
|
|
135
|
+
)
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
) })
|
|
139
|
+
] });
|
|
140
|
+
};
|
|
141
|
+
export {
|
|
142
|
+
PopoverInner
|
|
143
|
+
};
|
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
export * from './Popover';
|
|
2
2
|
export * from './types';
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated
|
|
5
|
+
* This component has been deprecated, please use `Popover.Header` instead.
|
|
6
|
+
*/
|
|
7
|
+
export declare const PopoverHeader: import("react").ForwardRefExoticComponent<Omit<import("../Dialog").DialogHeaderProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
8
|
+
/**
|
|
9
|
+
* @deprecated
|
|
10
|
+
* This component has been deprecated, please use `Popover.Body` instead.
|
|
11
|
+
*/
|
|
12
|
+
export declare const PopoverContent: import("react").ForwardRefExoticComponent<Omit<import("../Dialog").DialogBodyProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated
|
|
15
|
+
* This component has been deprecated, please use `Popover.Footer` instead.
|
|
16
|
+
*/
|
|
17
|
+
export declare const PopoverFooter: import("react").ForwardRefExoticComponent<Omit<import("../Dialog").DialogFooterProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ComponentPropsWithRef, CSSProperties, ReactElement, ReactNode, Ref, RefObject } from 'react';
|
|
2
|
-
import type { ButtonOptions } from '@koobiq/react-primitives';
|
|
2
|
+
import type { OverlayTriggerState, ButtonOptions } from '@koobiq/react-primitives';
|
|
3
|
+
import type { TransitionProps } from 'react-transition-group/Transition';
|
|
3
4
|
import type { DialogProps } from '../Dialog';
|
|
4
5
|
export type PopoverPropContent = ReactNode | ((props: {
|
|
5
6
|
close(): void;
|
|
@@ -11,24 +12,34 @@ export declare const popoverPropPlacement: readonly ["bottom", "bottom start", "
|
|
|
11
12
|
export type PopoverPropPlacement = (typeof popoverPropPlacement)[number];
|
|
12
13
|
export declare const popoverPropSize: readonly ["small", "medium", "large"];
|
|
13
14
|
export type PopoverPropSize = (typeof popoverPropSize)[number] | CSSProperties['inlineSize'];
|
|
14
|
-
export
|
|
15
|
-
|
|
15
|
+
export declare const popoverPropType: readonly ["dialog", "menu", "listbox", "tree", "grid"];
|
|
16
|
+
export type PopoverPropType = (typeof popoverPropType)[number];
|
|
17
|
+
type PopoverDeprecatedProps = {
|
|
18
|
+
/**
|
|
19
|
+
* If `true`, the component is shown.
|
|
20
|
+
* @deprecated
|
|
21
|
+
* The "open" prop is deprecated. Use "isOpen" prop to replace it.
|
|
22
|
+
*/
|
|
16
23
|
open?: boolean;
|
|
24
|
+
};
|
|
25
|
+
export type PopoverBaseProps = {
|
|
26
|
+
/** If `true`, the component is shown. */
|
|
27
|
+
isOpen?: boolean;
|
|
17
28
|
/** The default open state. Use when the component is not controlled. */
|
|
18
29
|
defaultOpen?: boolean;
|
|
19
30
|
/** The content of the component. */
|
|
20
31
|
children?: PopoverPropContent;
|
|
21
|
-
/** The render function of the control for displaying the
|
|
32
|
+
/** The render function of the control for displaying the popover. */
|
|
22
33
|
control?: PopoverPropControl;
|
|
23
34
|
/**
|
|
24
35
|
* Component width size.
|
|
25
|
-
* @default medium
|
|
26
|
-
|
|
36
|
+
* @default 'medium'
|
|
37
|
+
*/
|
|
27
38
|
size?: PopoverPropSize;
|
|
28
39
|
/**
|
|
29
40
|
* If `true`, the close button isn't shown.
|
|
30
41
|
* @default false
|
|
31
|
-
|
|
42
|
+
*/
|
|
32
43
|
hideCloseButton?: boolean;
|
|
33
44
|
/** Handler that is called when the modal's open state changes. */
|
|
34
45
|
onOpenChange?: (open: boolean) => void;
|
|
@@ -44,6 +55,8 @@ export type PopoverProps = {
|
|
|
44
55
|
disableExitOnEscapeKeyDown?: boolean;
|
|
45
56
|
/** Additional CSS-classes. */
|
|
46
57
|
className?: string;
|
|
58
|
+
/** Inline styles. */
|
|
59
|
+
style?: CSSProperties;
|
|
47
60
|
/** Unique identifier for testing purposes. */
|
|
48
61
|
'data-testid'?: string | number;
|
|
49
62
|
/**
|
|
@@ -53,15 +66,15 @@ export type PopoverProps = {
|
|
|
53
66
|
disableFocusManagement?: boolean;
|
|
54
67
|
/**
|
|
55
68
|
* The placement of the element with respect to its anchor element.
|
|
56
|
-
* @default top
|
|
57
|
-
|
|
69
|
+
* @default 'top'
|
|
70
|
+
*/
|
|
58
71
|
placement?: PopoverPropPlacement;
|
|
59
72
|
/** The ref for the element which the popover positions itself with respect to. */
|
|
60
73
|
anchorRef?: RefObject<HTMLElement | null>;
|
|
61
74
|
/**
|
|
62
75
|
* If `true`, the arrow isn't shown.
|
|
63
76
|
* @default false
|
|
64
|
-
|
|
77
|
+
*/
|
|
65
78
|
hideArrow?: boolean;
|
|
66
79
|
/**
|
|
67
80
|
* Whether the popover is non-modal, i.e. elements outside the popover may be
|
|
@@ -102,10 +115,23 @@ export type PopoverProps = {
|
|
|
102
115
|
* By default, onClose will always be called on interaction outside the popover ref.
|
|
103
116
|
*/
|
|
104
117
|
shouldCloseOnInteractOutside?: (element: Element) => boolean;
|
|
118
|
+
type?: PopoverPropType;
|
|
119
|
+
/**
|
|
120
|
+
* The maxBlockSize specified for the overlay element.
|
|
121
|
+
* @default 480
|
|
122
|
+
*/
|
|
123
|
+
maxBlockSize?: number;
|
|
105
124
|
/** The props used for each slot inside. */
|
|
106
125
|
slotProps?: {
|
|
107
126
|
dialog?: DialogProps;
|
|
108
127
|
arrow?: ComponentPropsWithRef<'div'>;
|
|
109
128
|
backdrop?: ComponentPropsWithRef<'div'>;
|
|
129
|
+
transition?: Partial<TransitionProps<HTMLElement>>;
|
|
110
130
|
};
|
|
111
|
-
};
|
|
131
|
+
} & PopoverDeprecatedProps;
|
|
132
|
+
export type PopoverInnerProps = {
|
|
133
|
+
state: OverlayTriggerState;
|
|
134
|
+
popoverRef?: Ref<HTMLDivElement>;
|
|
135
|
+
} & Omit<PopoverBaseProps, 'ref'>;
|
|
136
|
+
export type PopoverProps = PopoverBaseProps;
|
|
137
|
+
export {};
|
|
@@ -13,7 +13,15 @@ const popoverPropPlacement = [
|
|
|
13
13
|
"end bottom"
|
|
14
14
|
];
|
|
15
15
|
const popoverPropSize = ["small", "medium", "large"];
|
|
16
|
+
const popoverPropType = [
|
|
17
|
+
"dialog",
|
|
18
|
+
"menu",
|
|
19
|
+
"listbox",
|
|
20
|
+
"tree",
|
|
21
|
+
"grid"
|
|
22
|
+
];
|
|
16
23
|
export {
|
|
17
24
|
popoverPropPlacement,
|
|
18
|
-
popoverPropSize
|
|
25
|
+
popoverPropSize,
|
|
26
|
+
popoverPropType
|
|
19
27
|
};
|
|
@@ -23,8 +23,8 @@ export type ProgressBarBaseProps = {
|
|
|
23
23
|
className?: string;
|
|
24
24
|
/**
|
|
25
25
|
* The variant to use. Use indeterminate or query when there is no progress value.
|
|
26
|
-
* @default determinate
|
|
27
|
-
|
|
26
|
+
* @default 'determinate'
|
|
27
|
+
*/
|
|
28
28
|
variant?: ProgressBarPropVariant;
|
|
29
29
|
/** The props used for each slot inside. */
|
|
30
30
|
slotProps?: {
|
|
@@ -13,8 +13,8 @@ export type ProgressSpinnerBaseProps = {
|
|
|
13
13
|
value?: number;
|
|
14
14
|
/**
|
|
15
15
|
* Size.
|
|
16
|
-
* @default compact
|
|
17
|
-
|
|
16
|
+
* @default 'compact'
|
|
17
|
+
*/
|
|
18
18
|
size?: ProgressSpinnerPropSize;
|
|
19
19
|
/**
|
|
20
20
|
* The smallest value allowed for the input.
|
|
@@ -30,8 +30,8 @@ export type ProgressSpinnerBaseProps = {
|
|
|
30
30
|
className?: string;
|
|
31
31
|
/**
|
|
32
32
|
* The variant to use. Use indeterminate or query when there is no progress value.
|
|
33
|
-
* @default determinate
|
|
34
|
-
|
|
33
|
+
* @default 'determinate'
|
|
34
|
+
*/
|
|
35
35
|
variant?: ProgressSpinnerPropVariant;
|
|
36
36
|
/** The props used for each slot inside. */
|
|
37
37
|
slotProps?: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Breakpoints, ProviderProps } from './types';
|
|
2
2
|
export declare const defaultBreakpoints: Breakpoints;
|
|
3
3
|
export declare const Provider: {
|
|
4
|
-
({ breakpoints, breakpointsFallback, children, locale, }: ProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
({ breakpoints, breakpointsFallback, children, router, locale, }: ProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
displayName: string;
|
|
6
6
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import { I18nProvider } from "@koobiq/react-
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { I18nProvider, RouterProvider } from "@koobiq/react-core";
|
|
4
4
|
import { BreakpointsProvider } from "./BreakpointsProvider.js";
|
|
5
5
|
import { ProviderContext } from "./ProviderContext.js";
|
|
6
6
|
const defaultBreakpoints = {
|
|
@@ -21,13 +21,17 @@ const Provider = ({
|
|
|
21
21
|
breakpoints = defaultBreakpoints,
|
|
22
22
|
breakpointsFallback,
|
|
23
23
|
children,
|
|
24
|
+
router,
|
|
24
25
|
locale
|
|
25
|
-
}) => /* @__PURE__ */ jsx(ProviderContext.Provider, { value: { breakpoints, locale }, children: /* @__PURE__ */ jsx(I18nProvider, { locale, children: /* @__PURE__ */
|
|
26
|
+
}) => /* @__PURE__ */ jsx(ProviderContext.Provider, { value: { breakpoints, locale }, children: /* @__PURE__ */ jsx(I18nProvider, { locale, children: /* @__PURE__ */ jsxs(
|
|
26
27
|
BreakpointsProvider,
|
|
27
28
|
{
|
|
28
29
|
breakpoints,
|
|
29
30
|
defaultMatches: breakpointsFallback,
|
|
30
|
-
children
|
|
31
|
+
children: [
|
|
32
|
+
router?.navigate && /* @__PURE__ */ jsx(RouterProvider, { ...router, children }),
|
|
33
|
+
!router?.navigate && children
|
|
34
|
+
]
|
|
31
35
|
}
|
|
32
36
|
) }) });
|
|
33
37
|
Provider.displayName = "Provider";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
|
-
import type { I18nProviderProps } from '@koobiq/react-
|
|
2
|
+
import type { I18nProviderProps, RouterProvider } from '@koobiq/react-core';
|
|
3
3
|
export type Breakpoints = {
|
|
4
4
|
xs?: number;
|
|
5
5
|
s?: number;
|
|
@@ -18,4 +18,6 @@ export type ProviderProps = {
|
|
|
18
18
|
breakpointsFallback?: boolean[];
|
|
19
19
|
/** The locale for your application as a [BCP 47](https://www.ietf.org/rfc/bcp/bcp47.txt) language code. Defaults to the browser/OS language setting. */
|
|
20
20
|
locale?: I18nProviderProps['locale'];
|
|
21
|
+
/** Configuration object for routing. If provided, wraps children in a RouterProvider. */
|
|
22
|
+
router?: Omit<Parameters<typeof RouterProvider>[0], 'children'>;
|
|
21
23
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
3
3
|
import { forwardRef } from "react";
|
|
4
|
+
import { deprecate } from "@koobiq/logger";
|
|
4
5
|
import { mergeProps, clsx } from "@koobiq/react-core";
|
|
5
6
|
import { RadioGroup as RadioGroup$1 } from "@koobiq/react-primitives";
|
|
6
7
|
import { RadioGroupLabel } from "./components/RadioGroupLabel/RadioGroupLabel.js";
|
|
@@ -9,9 +10,48 @@ import { RadioGroupDescription } from "./components/RadioGroupDescription/RadioG
|
|
|
9
10
|
import { flex } from "../layout/flex/flex.js";
|
|
10
11
|
const RadioGroup = forwardRef(
|
|
11
12
|
(props, ref) => {
|
|
12
|
-
const {
|
|
13
|
+
const {
|
|
14
|
+
size,
|
|
15
|
+
label,
|
|
16
|
+
children,
|
|
17
|
+
slotProps,
|
|
18
|
+
description,
|
|
19
|
+
orientation,
|
|
20
|
+
isInvalid: isInvalidProp,
|
|
21
|
+
isDisabled: isDisabledProp,
|
|
22
|
+
isRequired: isRequiredProp,
|
|
23
|
+
isReadOnly: isReadOnlyProp,
|
|
24
|
+
disabled,
|
|
25
|
+
error,
|
|
26
|
+
readonly,
|
|
27
|
+
required
|
|
28
|
+
} = props;
|
|
29
|
+
const isDisabled = isDisabledProp ?? disabled ?? false;
|
|
30
|
+
const isInvalid = isInvalidProp ?? error ?? false;
|
|
31
|
+
const isReadOnly = isReadOnlyProp ?? readonly ?? false;
|
|
32
|
+
const isRequired = isRequiredProp ?? required ?? false;
|
|
33
|
+
if (process.env.NODE_ENV !== "production" && "disabled" in props) {
|
|
34
|
+
deprecate(
|
|
35
|
+
'RadioGroup: the "disabled" prop is deprecated. Use "isDisabled" prop to replace it.'
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
if (process.env.NODE_ENV !== "production" && "error" in props) {
|
|
39
|
+
deprecate(
|
|
40
|
+
'RadioGroup: the "error" prop is deprecated. Use "isInvalid" prop to replace it.'
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
if (process.env.NODE_ENV !== "production" && "readonly" in props) {
|
|
44
|
+
deprecate(
|
|
45
|
+
'RadioGroup: the "readonly" prop is deprecated. Use "isReadOnly" prop to replace it.'
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
if (process.env.NODE_ENV !== "production" && "required" in props) {
|
|
49
|
+
deprecate(
|
|
50
|
+
'RadioGroup: the "required" prop is deprecated. Use "isRequired" prop to replace it.'
|
|
51
|
+
);
|
|
52
|
+
}
|
|
13
53
|
const commonRootProps = mergeProps(
|
|
14
|
-
props,
|
|
54
|
+
{ ...props, isDisabled, isInvalid, isReadOnly, isRequired },
|
|
15
55
|
{
|
|
16
56
|
className: clsx(
|
|
17
57
|
flex({
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
caption?: string;
|
|
1
|
+
import { type RadioProps as RadioPropsPrimitive } from '@koobiq/react-primitives';
|
|
2
|
+
export declare const Radio: import("react").ForwardRefExoticComponent<Omit<RadioPropsPrimitive, "children" | "style" | "className" | "disabled" | "size" | "slotProps" | "data-testid" | "labelPlacement"> & {
|
|
3
|
+
children?: import("react").ReactNode;
|
|
5
4
|
size?: import("./types").RadioPropSize;
|
|
6
5
|
labelPlacement?: import("./types").RadioPropLabelPlacement;
|
|
7
6
|
className?: string;
|
|
7
|
+
style?: import("react").CSSProperties;
|
|
8
|
+
'data-testid'?: string | number;
|
|
8
9
|
slotProps?: {
|
|
9
10
|
circle?: import("react").ComponentPropsWithRef<"span">;
|
|
10
11
|
label?: import("react").ComponentPropsWithRef<"span">;
|
|
11
12
|
};
|
|
13
|
+
} & {
|
|
14
|
+
disabled?: boolean;
|
|
12
15
|
} & import("react").RefAttributes<HTMLLabelElement>>;
|