@yamada-ui/react 2.2.1-dev-20260428095646 → 2.2.1-dev-20260428102928
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/cjs/components/pagination/use-pagination.cjs +10 -6
- package/dist/cjs/components/pagination/use-pagination.cjs.map +1 -1
- package/dist/cjs/components/qr-code/use-qr-code.cjs +3 -4
- package/dist/cjs/components/qr-code/use-qr-code.cjs.map +1 -1
- package/dist/esm/components/pagination/use-pagination.js +10 -6
- package/dist/esm/components/pagination/use-pagination.js.map +1 -1
- package/dist/esm/components/qr-code/use-qr-code.js +3 -4
- package/dist/esm/components/qr-code/use-qr-code.js.map +1 -1
- package/dist/types/components/accordion/accordion.d.ts +4 -2
- package/dist/types/components/accordion/accordion.style.d.ts +1 -1
- package/dist/types/components/accordion/use-accordion.d.ts +11 -11
- package/dist/types/components/action-bar/action-bar.d.ts +3 -2
- package/dist/types/components/airy/airy.d.ts +3 -2
- package/dist/types/components/alert/alert.d.ts +5 -2
- package/dist/types/components/alert/alert.style.d.ts +1 -1
- package/dist/types/components/alpha-slider/alpha-slider.d.ts +3 -2
- package/dist/types/components/aspect-ratio/aspect-ratio.d.ts +2 -2
- package/dist/types/components/autocomplete/autocomplete.d.ts +4 -2
- package/dist/types/components/autocomplete/autocomplete.style.d.ts +1 -1
- package/dist/types/components/autocomplete/use-autocomplete.d.ts +7 -5
- package/dist/types/components/avatar/avatar.d.ts +5 -5
- package/dist/types/components/avatar/use-avatar-group.d.ts +2 -2
- package/dist/types/components/badge/badge.d.ts +2 -2
- package/dist/types/components/bleed/bleed.d.ts +2 -2
- package/dist/types/components/blockquote/blockquote.d.ts +2 -2
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +2 -2
- package/dist/types/components/breadcrumb/breadcrumb.style.d.ts +1 -1
- package/dist/types/components/breadcrumb/use-breadcrumb.d.ts +2 -2
- package/dist/types/components/button/button-group.d.ts +1 -0
- package/dist/types/components/button/button.d.ts +3 -2
- package/dist/types/components/button/icon-button.d.ts +2 -2
- package/dist/types/components/calendar/calendar.d.ts +3 -2
- package/dist/types/components/calendar/calendar.style.d.ts +2 -2
- package/dist/types/components/calendar/use-calendar.d.ts +9 -8
- package/dist/types/components/card/card.d.ts +2 -2
- package/dist/types/components/carousel/carousel.d.ts +3 -2
- package/dist/types/components/carousel/carousel.style.d.ts +2 -2
- package/dist/types/components/carousel/use-carousel.d.ts +3 -3
- package/dist/types/components/center/center.d.ts +2 -2
- package/dist/types/components/chart/cartesian-chart.style.d.ts +1 -1
- package/dist/types/components/chart/chart.d.ts +5 -5
- package/dist/types/components/chart/composed-chart.d.ts +2 -2
- package/dist/types/components/chart/donut-chart.d.ts +2 -2
- package/dist/types/components/chart/line-chart.d.ts +2 -2
- package/dist/types/components/chart/pie-chart.d.ts +2 -2
- package/dist/types/components/chart/polar-chart.style.d.ts +1 -1
- package/dist/types/components/chart/use-chart.d.ts +2 -2
- package/dist/types/components/checkbox/checkbox-group.d.ts +2 -0
- package/dist/types/components/checkbox/checkbox.d.ts +5 -4
- package/dist/types/components/checkbox/use-checkbox-group.d.ts +3 -2
- package/dist/types/components/checkbox/use-checkbox.d.ts +1 -0
- package/dist/types/components/checkbox-card/checkbox-card-group.d.ts +3 -0
- package/dist/types/components/checkbox-card/checkbox-card.d.ts +7 -5
- package/dist/types/components/checkbox-card/checkbox-card.style.d.ts +1 -1
- package/dist/types/components/circle-progress/circle-progress.d.ts +3 -2
- package/dist/types/components/close-button/close-button.d.ts +3 -2
- package/dist/types/components/code/code.d.ts +2 -2
- package/dist/types/components/collapse/collapse.d.ts +3 -2
- package/dist/types/components/color-picker/color-picker.d.ts +6 -2
- package/dist/types/components/color-picker/color-picker.style.d.ts +1 -1
- package/dist/types/components/color-picker/use-color-picker.d.ts +5 -2
- package/dist/types/components/color-selector/color-selector.d.ts +6 -2
- package/dist/types/components/color-selector/use-color-selector.d.ts +5 -3
- package/dist/types/components/color-swatch/color-swatch.d.ts +2 -2
- package/dist/types/components/container/container.d.ts +2 -2
- package/dist/types/components/data-list/data-list.d.ts +2 -2
- package/dist/types/components/data-list/data-list.style.d.ts +1 -1
- package/dist/types/components/date-picker/date-picker.d.ts +5 -2
- package/dist/types/components/date-picker/date-picker.style.d.ts +1 -1
- package/dist/types/components/date-picker/use-date-picker.d.ts +7 -4
- package/dist/types/components/drawer/drawer.d.ts +5 -2
- package/dist/types/components/drawer/use-drawer.d.ts +2 -0
- package/dist/types/components/dropzone/dropzone.d.ts +8 -5
- package/dist/types/components/dropzone/dropzone.style.d.ts +1 -1
- package/dist/types/components/dropzone/use-dropzone.d.ts +1 -0
- package/dist/types/components/editable/editable.d.ts +5 -4
- package/dist/types/components/editable/use-editable.d.ts +3 -2
- package/dist/types/components/em/em.d.ts +2 -2
- package/dist/types/components/empty-state/empty-state.d.ts +2 -2
- package/dist/types/components/empty-state/empty-state.style.d.ts +2 -2
- package/dist/types/components/fade/fade.d.ts +3 -2
- package/dist/types/components/fade-scale/fade-scale.d.ts +1 -0
- package/dist/types/components/field/field.d.ts +3 -3
- package/dist/types/components/field/use-field-props.d.ts +8 -8
- package/dist/types/components/fieldset/fieldset.d.ts +4 -3
- package/dist/types/components/file-button/file-button.d.ts +4 -2
- package/dist/types/components/file-button/use-file-button.d.ts +20 -18
- package/dist/types/components/file-input/file-input.d.ts +4 -2
- package/dist/types/components/file-input/use-file-input.d.ts +18 -17
- package/dist/types/components/flex/flex.d.ts +2 -2
- package/dist/types/components/flip/flip.d.ts +5 -4
- package/dist/types/components/float/float.d.ts +2 -2
- package/dist/types/components/form/form.d.ts +4 -3
- package/dist/types/components/form/form.style.d.ts +1 -1
- package/dist/types/components/format/format-byte.d.ts +4 -4
- package/dist/types/components/format/format-date-time.d.ts +4 -4
- package/dist/types/components/format/format-number.d.ts +2 -2
- package/dist/types/components/format/use-format-byte.d.ts +1 -0
- package/dist/types/components/format/use-format-date-time.d.ts +1 -0
- package/dist/types/components/format/use-format-number.d.ts +1 -0
- package/dist/types/components/grid/grid-item.d.ts +2 -2
- package/dist/types/components/grid/grid.d.ts +2 -2
- package/dist/types/components/group/group.d.ts +3 -2
- package/dist/types/components/group/use-group.d.ts +2 -2
- package/dist/types/components/heading/heading.d.ts +2 -2
- package/dist/types/components/highlight/highlight.d.ts +2 -0
- package/dist/types/components/hue-slider/hue-slider.d.ts +4 -3
- package/dist/types/components/icon/icon.d.ts +5 -5
- package/dist/types/components/image/image.d.ts +2 -2
- package/dist/types/components/indicator/indicator.d.ts +5 -4
- package/dist/types/components/infinite-scroll-area/infinite-scroll-area.d.ts +2 -2
- package/dist/types/components/input/input-addon.d.ts +2 -2
- package/dist/types/components/input/input-element.d.ts +2 -2
- package/dist/types/components/input/input-group.d.ts +2 -0
- package/dist/types/components/input/input.d.ts +3 -2
- package/dist/types/components/kbd/kbd.d.ts +2 -2
- package/dist/types/components/link/link.d.ts +2 -2
- package/dist/types/components/link-box/link-box.d.ts +2 -2
- package/dist/types/components/list/list.d.ts +2 -2
- package/dist/types/components/loading/loading-provider.d.ts +2 -2
- package/dist/types/components/loading/loading.d.ts +4 -3
- package/dist/types/components/loading/use-loading-component.d.ts +1 -0
- package/dist/types/components/mark/mark.d.ts +2 -2
- package/dist/types/components/menu/menu.d.ts +1 -0
- package/dist/types/components/menu/menu.style.d.ts +2 -2
- package/dist/types/components/menu/use-menu.d.ts +11 -11
- package/dist/types/components/modal/modal.d.ts +6 -2
- package/dist/types/components/native-accordion/native-accordion.d.ts +2 -2
- package/dist/types/components/native-accordion/native-accordion.style.d.ts +2 -2
- package/dist/types/components/native-accordion/use-native-accordion.d.ts +2 -2
- package/dist/types/components/native-popover/native-popover.d.ts +2 -2
- package/dist/types/components/native-select/native-select.d.ts +4 -2
- package/dist/types/components/native-select/use-native-select.d.ts +1 -0
- package/dist/types/components/native-table/native-table.d.ts +4 -4
- package/dist/types/components/notice/use-notice.d.ts +3 -0
- package/dist/types/components/number-input/number-input.d.ts +3 -2
- package/dist/types/components/number-input/number-input.style.d.ts +1 -1
- package/dist/types/components/number-input/use-number-input.d.ts +1 -0
- package/dist/types/components/pagination/pagination.d.ts +3 -2
- package/dist/types/components/pagination/use-pagination.d.ts +2 -2
- package/dist/types/components/password-input/password-input.d.ts +3 -2
- package/dist/types/components/password-input/strength-meter.d.ts +2 -2
- package/dist/types/components/password-input/use-password-input.d.ts +3 -2
- package/dist/types/components/picture/picture.d.ts +1 -0
- package/dist/types/components/pin-input/pin-input.d.ts +4 -2
- package/dist/types/components/pin-input/use-pin-input.d.ts +8 -7
- package/dist/types/components/popover/popover.d.ts +3 -2
- package/dist/types/components/progress/progress.d.ts +4 -4
- package/dist/types/components/progress/use-progress.d.ts +706 -706
- package/dist/types/components/qr-code/qr-code.d.ts +2 -2
- package/dist/types/components/radio/radio-group.d.ts +2 -0
- package/dist/types/components/radio/radio.d.ts +5 -4
- package/dist/types/components/radio/use-radio-group.d.ts +3 -2
- package/dist/types/components/radio/use-radio.d.ts +1 -0
- package/dist/types/components/radio-card/radio-card-group.d.ts +3 -0
- package/dist/types/components/radio-card/radio-card.d.ts +7 -5
- package/dist/types/components/radio-card/radio-card.style.d.ts +1 -1
- package/dist/types/components/rating/rating.style.d.ts +2 -2
- package/dist/types/components/rating/use-rating.d.ts +12 -11
- package/dist/types/components/reorder/reorder.d.ts +3 -2
- package/dist/types/components/reorder/use-reorder.d.ts +4 -4
- package/dist/types/components/resizable/resizable.d.ts +2 -2
- package/dist/types/components/resizable/use-resizable.d.ts +2 -2
- package/dist/types/components/ripple/ripple.d.ts +3 -2
- package/dist/types/components/ripple/use-ripple.d.ts +2 -2
- package/dist/types/components/rotate/rotate.d.ts +3 -2
- package/dist/types/components/saturation-slider/saturation-slider.d.ts +2 -2
- package/dist/types/components/saturation-slider/use-saturation-slider.d.ts +3 -2
- package/dist/types/components/scroll-area/scroll-area.d.ts +2 -2
- package/dist/types/components/segmented-control/segmented-control.d.ts +3 -2
- package/dist/types/components/segmented-control/use-segmented-control.d.ts +10 -9
- package/dist/types/components/select/select.d.ts +4 -2
- package/dist/types/components/select/select.style.d.ts +1 -1
- package/dist/types/components/select/use-select.d.ts +6 -4
- package/dist/types/components/separator/separator.d.ts +2 -2
- package/dist/types/components/sidebar/sidebar.d.ts +7 -2
- package/dist/types/components/sidebar/use-sidebar.d.ts +9 -9
- package/dist/types/components/simple-grid/simple-grid.d.ts +3 -2
- package/dist/types/components/skeleton/skeleton.d.ts +2 -2
- package/dist/types/components/slide/slide.d.ts +3 -2
- package/dist/types/components/slide-fade/slide-fade.d.ts +3 -2
- package/dist/types/components/slider/slider.d.ts +2 -2
- package/dist/types/components/slider/use-slider.d.ts +3 -2
- package/dist/types/components/snacks/snacks.d.ts +2 -0
- package/dist/types/components/snacks/use-snacks.d.ts +1 -0
- package/dist/types/components/stack/h-stack.d.ts +2 -2
- package/dist/types/components/stack/stack.d.ts +2 -2
- package/dist/types/components/stack/v-stack.d.ts +2 -2
- package/dist/types/components/stack/z-stack.d.ts +2 -2
- package/dist/types/components/stat/stat.d.ts +2 -2
- package/dist/types/components/stat/stat.style.d.ts +2 -2
- package/dist/types/components/status/status.d.ts +2 -2
- package/dist/types/components/steps/steps.d.ts +2 -2
- package/dist/types/components/steps/steps.style.d.ts +1 -1
- package/dist/types/components/steps/use-steps.d.ts +10 -10
- package/dist/types/components/switch/switch.d.ts +2 -2
- package/dist/types/components/switch/use-switch.d.ts +1 -0
- package/dist/types/components/table/table.d.ts +4 -2
- package/dist/types/components/tabs/tabs.d.ts +2 -2
- package/dist/types/components/tabs/tabs.style.d.ts +1 -1
- package/dist/types/components/tabs/use-tabs.d.ts +16 -16
- package/dist/types/components/tag/tag.d.ts +2 -2
- package/dist/types/components/tag/tag.style.d.ts +1 -1
- package/dist/types/components/text/text.d.ts +2 -2
- package/dist/types/components/textarea/textarea.d.ts +4 -2
- package/dist/types/components/textarea/use-autosize.d.ts +2 -2
- package/dist/types/components/timeline/timeline.d.ts +5 -5
- package/dist/types/components/timeline/timeline.style.d.ts +1 -1
- package/dist/types/components/tip/tip.d.ts +3 -0
- package/dist/types/components/toggle/toggle-group.d.ts +1 -1
- package/dist/types/components/toggle/toggle.d.ts +7 -5
- package/dist/types/components/toggle/use-toggle-group.d.ts +2 -2
- package/dist/types/components/toggle/use-toggle.d.ts +3 -2
- package/dist/types/components/tooltip/tooltip.d.ts +4 -2
- package/dist/types/components/tree/tree.d.ts +6 -2
- package/dist/types/components/tree/tree.style.d.ts +1 -1
- package/dist/types/components/tree/use-tree.d.ts +238 -237
- package/dist/types/components/visually-hidden/visually-hidden.d.ts +2 -2
- package/dist/types/components/wrap/wrap.d.ts +3 -2
- package/dist/types/core/components/create-component.d.ts +7 -9
- package/dist/types/core/components/index.types.d.ts +0 -1
- package/dist/types/core/components/use-component-style.d.ts +0 -2
- package/dist/types/core/components/utils.d.ts +0 -1
- package/dist/types/core/constant.d.ts +0 -1
- package/dist/types/core/css/calc.d.ts +0 -1
- package/dist/types/core/css/config.d.ts +0 -1
- package/dist/types/core/css/css.d.ts +0 -1
- package/dist/types/core/css/index.types.d.ts +0 -1
- package/dist/types/core/css/styles.d.ts +0 -1
- package/dist/types/core/css/token.d.ts +0 -1
- package/dist/types/core/css/use-css.d.ts +0 -1
- package/dist/types/core/css/utils.d.ts +0 -2
- package/dist/types/core/generated-theme-tokens.types.d.ts +0 -1
- package/dist/types/core/index.d.ts +0 -2
- package/dist/types/core/system/color-mode-provider.d.ts +2 -2
- package/dist/types/core/system/config.d.ts +0 -1
- package/dist/types/core/system/create-system.d.ts +0 -1
- package/dist/types/core/system/factory.d.ts +0 -1
- package/dist/types/core/system/index.types.d.ts +0 -1
- package/dist/types/core/system/storage-script.d.ts +3 -3
- package/dist/types/core/system/styled.d.ts +2 -3
- package/dist/types/core/system/system-provider.d.ts +2 -2
- package/dist/types/core/system/var.d.ts +0 -2
- package/dist/types/hooks/use-async-callback/index.d.ts +1 -0
- package/dist/types/hooks/use-breakpoint/use-breakpoint-state.d.ts +2 -2
- package/dist/types/hooks/use-clickable/index.d.ts +9 -9
- package/dist/types/hooks/use-clipboard/index.d.ts +2 -2
- package/dist/types/hooks/use-combobox/index.d.ts +13 -12
- package/dist/types/hooks/use-counter/index.d.ts +2 -2
- package/dist/types/hooks/use-descendants/index.d.ts +2 -2
- package/dist/types/hooks/use-field-sizing/index.d.ts +2 -2
- package/dist/types/hooks/use-hover/index.d.ts +2 -2
- package/dist/types/hooks/use-popper/index.d.ts +2 -2
- package/dist/types/hooks/use-resize-observer/index.d.ts +3 -3
- package/dist/types/index.d.ts +106 -0
- package/dist/types/providers/i18n-provider/i18n-provider.d.ts +3 -3
- package/dist/types/providers/ui-provider/ui-provider.d.ts +3 -2
- package/dist/types/utils/children.d.ts +2 -2
- package/package.json +2 -2
|
@@ -4,6 +4,8 @@ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
|
4
4
|
const require_context = require('../../utils/context.cjs');
|
|
5
5
|
const require_ref = require('../../utils/ref.cjs');
|
|
6
6
|
const require_utils_index = require('../../utils/index.cjs');
|
|
7
|
+
const require_props = require('../../core/components/props.cjs');
|
|
8
|
+
require('../../core/index.cjs');
|
|
7
9
|
const require_hooks_use_controllable_state_index = require('../../hooks/use-controllable-state/index.cjs');
|
|
8
10
|
const require_i18n_provider = require('../../providers/i18n-provider/i18n-provider.cjs');
|
|
9
11
|
require('../../providers/i18n-provider/index.cjs');
|
|
@@ -12,6 +14,7 @@ let react = require("react");
|
|
|
12
14
|
//#region src/components/pagination/use-pagination.ts
|
|
13
15
|
const [PaginationContext, usePaginationContext] = require_context.createContext({ name: "PaginationContext" });
|
|
14
16
|
const usePagination = ({ boundaries = 1, defaultPage = 1, disabled = false, page, siblings = 1, total, onChange: onChangeProp, ...rest }) => {
|
|
17
|
+
const { ref: restRef, ...restProps } = rest;
|
|
15
18
|
const [currentPage, setCurrentPage] = require_hooks_use_controllable_state_index.useControllableState({
|
|
16
19
|
defaultValue: defaultPage,
|
|
17
20
|
value: page,
|
|
@@ -55,13 +58,14 @@ const usePagination = ({ boundaries = 1, defaultPage = 1, disabled = false, page
|
|
|
55
58
|
const onChangeEnd = (0, react.useCallback)(() => setCurrentPage(total), [setCurrentPage, total]);
|
|
56
59
|
const onChangePrev = (0, react.useCallback)(() => setCurrentPage((prev) => Math.max(1, prev - 1)), [setCurrentPage]);
|
|
57
60
|
const onChangeNext = (0, react.useCallback)(() => setCurrentPage((prev) => Math.min(total, prev + 1)), [setCurrentPage, total]);
|
|
58
|
-
const getRootProps = (0, react.useCallback)(({ ref, ...props } = {}) => ({
|
|
61
|
+
const getRootProps = (0, react.useCallback)(({ ref, ...props } = {}) => require_props.mergeProps({
|
|
59
62
|
"aria-label": t("Pagination"),
|
|
60
|
-
role: "navigation"
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
role: "navigation"
|
|
64
|
+
}, restProps, props, { ref: require_ref.mergeRefs(ref, restRef) })(), [
|
|
65
|
+
restProps,
|
|
66
|
+
restRef,
|
|
67
|
+
t
|
|
68
|
+
]);
|
|
65
69
|
const getItemProps = (0, react.useCallback)(({ page: page$1, ...props } = {}) => {
|
|
66
70
|
if ((0, require_utils_index.utils_exports.isNumber)(page$1)) return {
|
|
67
71
|
type: "button",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-pagination.cjs","names":["createContext","useControllableState","useI18n","page","getRootProps: PropGetter","mergeRefs","getItemProps: PropGetter<\"button\", { page?: Page }>","getStartTriggerProps: PropGetter<\"button\">","getEndTriggerProps: PropGetter<\"button\">","getPrevTriggerProps: PropGetter<\"button\">"],"sources":["../../../../src/components/pagination/use-pagination.ts"],"sourcesContent":["\"use client\"\n\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport { useI18n } from \"../../providers/i18n-provider\"\nimport { createContext, handlerAll, isNumber, mergeRefs } from \"../../utils\"\n\nexport type Page = \"ellipsis\" | number\n\ninterface PaginationContext extends Omit<UsePaginationReturn, \"getRootProps\"> {}\n\nconst [PaginationContext, usePaginationContext] =\n createContext<PaginationContext>({\n name: \"PaginationContext\",\n })\n\nexport { PaginationContext, usePaginationContext }\n\nexport interface UsePaginationProps extends Omit<\n HTMLProps,\n \"onChange\" | \"page\"\n> {\n /**\n * The total number of pages in pagination.\n */\n total: number\n /**\n * Number of elements visible on the left/right edges.\n *\n * @default 1\n */\n boundaries?: number\n /**\n * The initial page of the pagination.\n * Should be less than `total` and greater than `1`.\n *\n * @default 1\n */\n defaultPage?: number\n /**\n * If `true`, the pagination all item will be disabled.\n *\n * @default false\n */\n disabled?: boolean\n /**\n * The page of the pagination.\n * Should be less than `total` and greater than `1`.\n */\n page?: number\n /** Number of siblings displayed on the left/right side of selected page.\n *\n * @default 1\n */\n siblings?: number\n /**\n * The callback invoked when the page changes.\n */\n onChange?: (page: number) => void\n}\n\nexport const usePagination = ({\n boundaries = 1,\n defaultPage = 1,\n disabled = false,\n page,\n siblings = 1,\n total,\n onChange: onChangeProp,\n ...rest\n}: UsePaginationProps) => {\n const [currentPage, setCurrentPage] = useControllableState({\n defaultValue: defaultPage,\n value: page,\n onChange: onChangeProp,\n })\n const { t } = useI18n(\"pagination\")\n const range = useMemo((): Page[] => {\n const minimumTotal = siblings * 2 + 3 + boundaries * 2\n\n if (minimumTotal >= total) return computedRange(1, total)\n\n const prevSiblings = Math.max(currentPage - siblings, boundaries)\n const nextSiblings = Math.min(currentPage + siblings, total - boundaries)\n const prevDots = prevSiblings > boundaries + 2\n const nextDots = nextSiblings < total - (boundaries + 1)\n\n if (!prevDots && nextDots) {\n const prevPages = siblings * 2 + boundaries + 2\n\n return [\n ...computedRange(1, prevPages),\n \"ellipsis\",\n ...computedRange(total - (boundaries - 1), total),\n ]\n }\n\n if (prevDots && !nextDots) {\n const nextPages = boundaries + 1 + 2 * siblings\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(total - nextPages, total),\n ]\n }\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(prevSiblings, nextSiblings),\n \"ellipsis\",\n ...computedRange(total - boundaries + 1, total),\n ]\n }, [boundaries, siblings, currentPage, total])\n\n const onChange = useCallback(\n (page: number) => setCurrentPage(Math.max(1, Math.min(total, page))),\n [setCurrentPage, total],\n )\n\n const onChangeStart = useCallback(() => setCurrentPage(1), [setCurrentPage])\n\n const onChangeEnd = useCallback(\n () => setCurrentPage(total),\n [setCurrentPage, total],\n )\n\n const onChangePrev = useCallback(\n () => setCurrentPage((prev) => Math.max(1, prev - 1)),\n [setCurrentPage],\n )\n\n const onChangeNext = useCallback(\n () => setCurrentPage((prev) => Math.min(total, prev + 1)),\n [setCurrentPage, total],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({ ref, ...props } = {})
|
|
1
|
+
{"version":3,"file":"use-pagination.cjs","names":["createContext","useControllableState","useI18n","page","getRootProps: PropGetter","mergeProps","mergeRefs","getItemProps: PropGetter<\"button\", { page?: Page }>","getStartTriggerProps: PropGetter<\"button\">","getEndTriggerProps: PropGetter<\"button\">","getPrevTriggerProps: PropGetter<\"button\">"],"sources":["../../../../src/components/pagination/use-pagination.ts"],"sourcesContent":["\"use client\"\n\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport { useI18n } from \"../../providers/i18n-provider\"\nimport { createContext, handlerAll, isNumber, mergeRefs } from \"../../utils\"\n\nexport type Page = \"ellipsis\" | number\n\ninterface PaginationContext extends Omit<UsePaginationReturn, \"getRootProps\"> {}\n\nconst [PaginationContext, usePaginationContext] =\n createContext<PaginationContext>({\n name: \"PaginationContext\",\n })\n\nexport { PaginationContext, usePaginationContext }\n\nexport interface UsePaginationProps extends Omit<\n HTMLProps,\n \"onChange\" | \"page\"\n> {\n /**\n * The total number of pages in pagination.\n */\n total: number\n /**\n * Number of elements visible on the left/right edges.\n *\n * @default 1\n */\n boundaries?: number\n /**\n * The initial page of the pagination.\n * Should be less than `total` and greater than `1`.\n *\n * @default 1\n */\n defaultPage?: number\n /**\n * If `true`, the pagination all item will be disabled.\n *\n * @default false\n */\n disabled?: boolean\n /**\n * The page of the pagination.\n * Should be less than `total` and greater than `1`.\n */\n page?: number\n /** Number of siblings displayed on the left/right side of selected page.\n *\n * @default 1\n */\n siblings?: number\n /**\n * The callback invoked when the page changes.\n */\n onChange?: (page: number) => void\n}\n\nexport const usePagination = ({\n boundaries = 1,\n defaultPage = 1,\n disabled = false,\n page,\n siblings = 1,\n total,\n onChange: onChangeProp,\n ...rest\n}: UsePaginationProps) => {\n const { ref: restRef, ...restProps } = rest\n const [currentPage, setCurrentPage] = useControllableState({\n defaultValue: defaultPage,\n value: page,\n onChange: onChangeProp,\n })\n const { t } = useI18n(\"pagination\")\n const range = useMemo((): Page[] => {\n const minimumTotal = siblings * 2 + 3 + boundaries * 2\n\n if (minimumTotal >= total) return computedRange(1, total)\n\n const prevSiblings = Math.max(currentPage - siblings, boundaries)\n const nextSiblings = Math.min(currentPage + siblings, total - boundaries)\n const prevDots = prevSiblings > boundaries + 2\n const nextDots = nextSiblings < total - (boundaries + 1)\n\n if (!prevDots && nextDots) {\n const prevPages = siblings * 2 + boundaries + 2\n\n return [\n ...computedRange(1, prevPages),\n \"ellipsis\",\n ...computedRange(total - (boundaries - 1), total),\n ]\n }\n\n if (prevDots && !nextDots) {\n const nextPages = boundaries + 1 + 2 * siblings\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(total - nextPages, total),\n ]\n }\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(prevSiblings, nextSiblings),\n \"ellipsis\",\n ...computedRange(total - boundaries + 1, total),\n ]\n }, [boundaries, siblings, currentPage, total])\n\n const onChange = useCallback(\n (page: number) => setCurrentPage(Math.max(1, Math.min(total, page))),\n [setCurrentPage, total],\n )\n\n const onChangeStart = useCallback(() => setCurrentPage(1), [setCurrentPage])\n\n const onChangeEnd = useCallback(\n () => setCurrentPage(total),\n [setCurrentPage, total],\n )\n\n const onChangePrev = useCallback(\n () => setCurrentPage((prev) => Math.max(1, prev - 1)),\n [setCurrentPage],\n )\n\n const onChangeNext = useCallback(\n () => setCurrentPage((prev) => Math.min(total, prev + 1)),\n [setCurrentPage, total],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({ ref, ...props } = {}) =>\n mergeProps(\n {\n \"aria-label\": t(\"Pagination\"),\n role: \"navigation\",\n },\n restProps,\n props,\n {\n ref: mergeRefs(ref, restRef),\n },\n )(),\n [restProps, restRef, t],\n )\n\n const getItemProps: PropGetter<\"button\", { page?: Page }> = useCallback(\n ({ page, ...props } = {}) => {\n if (isNumber(page)) {\n return {\n type: \"button\",\n \"aria-current\": currentPage === page ? \"page\" : undefined,\n \"aria-label\": t(\"Go to page {value}\", { value: page }),\n disabled,\n ...props,\n onClick: handlerAll(props.onClick, () => onChange(page)),\n }\n } else {\n return { ...props, \"data-ellipsis\": \"\" }\n }\n },\n [currentPage, t, onChange, disabled],\n )\n\n const getStartTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to first page\"),\n disabled: disabled || currentPage === 1,\n ...props,\n onClick: handlerAll(props.onClick, onChangeStart),\n }),\n [onChangeStart, t, disabled, currentPage],\n )\n\n const getEndTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to last page\"),\n disabled: disabled || currentPage === total,\n ...props,\n onClick: handlerAll(props.onClick, onChangeEnd),\n }),\n [onChangeEnd, t, disabled, currentPage, total],\n )\n\n const getPrevTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to previous page\"),\n disabled: disabled || currentPage === 1,\n ...props,\n onClick: handlerAll(props.onClick, onChangePrev),\n }),\n [onChangePrev, t, disabled, currentPage],\n )\n\n const getNextTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to next page\"),\n disabled: disabled || currentPage === total,\n ...props,\n onClick: handlerAll(props.onClick, onChangeNext),\n }),\n [onChangeNext, t, disabled, currentPage, total],\n )\n\n return {\n currentPage,\n disabled,\n range,\n total,\n getEndTriggerProps,\n getItemProps,\n getNextTriggerProps,\n getPrevTriggerProps,\n getRootProps,\n getStartTriggerProps,\n onChange,\n onChangeEnd,\n onChangeNext,\n onChangePrev,\n onChangeStart,\n }\n}\n\nexport type UsePaginationReturn = ReturnType<typeof usePagination>\n\nconst computedRange = (start: number, end: number) =>\n Array.from({ length: end - start + 1 }, (_, index) => index + start)\n"],"mappings":";;;;;;;;;;;;;;AAaA,MAAM,CAAC,mBAAmB,wBACxBA,8BAAiC,EAC/B,MAAM,qBACP,CAAC;AA+CJ,MAAa,iBAAiB,EAC5B,aAAa,GACb,cAAc,GACd,WAAW,OACX,MACA,WAAW,GACX,OACA,UAAU,cACV,GAAG,WACqB;CACxB,MAAM,EAAE,KAAK,SAAS,GAAG,cAAc;CACvC,MAAM,CAAC,aAAa,kBAAkBC,gEAAqB;EACzD,cAAc;EACd,OAAO;EACP,UAAU;EACX,CAAC;CACF,MAAM,EAAE,MAAMC,8BAAQ,aAAa;CACnC,MAAM,iCAA8B;AAGlC,MAFqB,WAAW,IAAI,IAAI,aAAa,KAEjC,MAAO,QAAO,cAAc,GAAG,MAAM;EAEzD,MAAM,eAAe,KAAK,IAAI,cAAc,UAAU,WAAW;EACjE,MAAM,eAAe,KAAK,IAAI,cAAc,UAAU,QAAQ,WAAW;EACzE,MAAM,WAAW,eAAe,aAAa;EAC7C,MAAM,WAAW,eAAe,SAAS,aAAa;AAEtD,MAAI,CAAC,YAAY,SAGf,QAAO;GACL,GAAG,cAAc,GAHD,WAAW,IAAI,aAAa,EAGd;GAC9B;GACA,GAAG,cAAc,SAAS,aAAa,IAAI,MAAM;GAClD;AAGH,MAAI,YAAY,CAAC,UAAU;GACzB,MAAM,YAAY,aAAa,IAAI,IAAI;AAEvC,UAAO;IACL,GAAG,cAAc,GAAG,WAAW;IAC/B;IACA,GAAG,cAAc,QAAQ,WAAW,MAAM;IAC3C;;AAGH,SAAO;GACL,GAAG,cAAc,GAAG,WAAW;GAC/B;GACA,GAAG,cAAc,cAAc,aAAa;GAC5C;GACA,GAAG,cAAc,QAAQ,aAAa,GAAG,MAAM;GAChD;IACA;EAAC;EAAY;EAAU;EAAa;EAAM,CAAC;CAE9C,MAAM,mCACH,WAAiB,eAAe,KAAK,IAAI,GAAG,KAAK,IAAI,OAAOC,OAAK,CAAC,CAAC,EACpE,CAAC,gBAAgB,MAAM,CACxB;CAED,MAAM,6CAAkC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC;CAE5E,MAAM,2CACE,eAAe,MAAM,EAC3B,CAAC,gBAAgB,MAAM,CACxB;CAED,MAAM,4CACE,gBAAgB,SAAS,KAAK,IAAI,GAAG,OAAO,EAAE,CAAC,EACrD,CAAC,eAAe,CACjB;CAED,MAAM,4CACE,gBAAgB,SAAS,KAAK,IAAI,OAAO,OAAO,EAAE,CAAC,EACzD,CAAC,gBAAgB,MAAM,CACxB;CAED,MAAMC,uCACH,EAAE,KAAK,GAAG,UAAU,EAAE,KACrBC,yBACE;EACE,cAAc,EAAE,aAAa;EAC7B,MAAM;EACP,EACD,WACA,OACA,EACE,KAAKC,sBAAU,KAAK,QAAQ,EAC7B,CACF,EAAE,EACL;EAAC;EAAW;EAAS;EAAE,CACxB;CAED,MAAMC,uCACH,EAAE,cAAM,GAAG,UAAU,EAAE,KAAK;AAC3B,sDAAaJ,OAAK,CAChB,QAAO;GACL,MAAM;GACN,gBAAgB,gBAAgBA,SAAO,SAAS;GAChD,cAAc,EAAE,sBAAsB,EAAE,OAAOA,QAAM,CAAC;GACtD;GACA,GAAG;GACH,2DAAoB,MAAM,eAAe,SAASA,OAAK,CAAC;GACzD;MAED,QAAO;GAAE,GAAG;GAAO,iBAAiB;GAAI;IAG5C;EAAC;EAAa;EAAG;EAAU;EAAS,CACrC;CAED,MAAMK,+CACH,QAAQ,EAAE,MAAM;EACf,MAAM;EACN,cAAc,EAAE,mBAAmB;EACnC,UAAU,YAAY,gBAAgB;EACtC,GAAG;EACH,2DAAoB,MAAM,SAAS,cAAc;EAClD,GACD;EAAC;EAAe;EAAG;EAAU;EAAY,CAC1C;CAED,MAAMC,6CACH,QAAQ,EAAE,MAAM;EACf,MAAM;EACN,cAAc,EAAE,kBAAkB;EAClC,UAAU,YAAY,gBAAgB;EACtC,GAAG;EACH,2DAAoB,MAAM,SAAS,YAAY;EAChD,GACD;EAAC;EAAa;EAAG;EAAU;EAAa;EAAM,CAC/C;CAED,MAAMC,8CACH,QAAQ,EAAE,MAAM;EACf,MAAM;EACN,cAAc,EAAE,sBAAsB;EACtC,UAAU,YAAY,gBAAgB;EACtC,GAAG;EACH,2DAAoB,MAAM,SAAS,aAAa;EACjD,GACD;EAAC;EAAc;EAAG;EAAU;EAAY,CACzC;AAaD,QAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA,6CAjBC,QAAQ,EAAE,MAAM;GACf,MAAM;GACN,cAAc,EAAE,kBAAkB;GAClC,UAAU,YAAY,gBAAgB;GACtC,GAAG;GACH,2DAAoB,MAAM,SAAS,aAAa;GACjD,GACD;GAAC;GAAc;GAAG;GAAU;GAAa;GAAM,CAChD;EAUC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;;AAKH,MAAM,iBAAiB,OAAe,QACpC,MAAM,KAAK,EAAE,QAAQ,MAAM,QAAQ,GAAG,GAAG,GAAG,UAAU,QAAQ,MAAM"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_props = require('../../core/components/props.cjs');
|
|
3
|
+
require('../../core/index.cjs');
|
|
2
4
|
let react = require("react");
|
|
3
5
|
let uqr = require("uqr");
|
|
4
6
|
|
|
@@ -40,10 +42,7 @@ const useQrCode = ({ boostEcc, border, ecc, invert, maskPattern, maxVersion, min
|
|
|
40
42
|
encoded.size,
|
|
41
43
|
pixelSize
|
|
42
44
|
]);
|
|
43
|
-
const getRootProps = (0, react.useCallback)((props
|
|
44
|
-
...rest,
|
|
45
|
-
...props
|
|
46
|
-
}), [rest]);
|
|
45
|
+
const getRootProps = (0, react.useCallback)((props) => require_props.mergeProps(rest, props)(), [rest]);
|
|
47
46
|
return {
|
|
48
47
|
height,
|
|
49
48
|
paths,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-qr-code.cjs","names":["paths: string[]","result: string[]","getRootProps: PropGetter"],"sources":["../../../../src/components/qr-code/use-qr-code.tsx"],"sourcesContent":["import type { QrCodeGenerateResult } from \"uqr\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { encode } from \"uqr\"\n\nexport interface UseQrCodeProps extends HTMLProps {\n /**\n * The value to encode as a QR code.\n */\n value: string\n /**\n * The error correction level to boost the error correction level to the maximum allowed by the version and size.\n *\n * @default false\n */\n boostEcc?: boolean\n /**\n * The border width around the QR code.\n *\n * @default 1\n */\n border?: number\n /**\n * The error correction level.\n *\n * - `L` allows for up to 7% error correction,\n * - `M` allows for up to 15% error correction,\n * - `Q` allows for up to 25% error correction,\n * - `H` allows for up to 30% error correction.\n *\n * @default 'L'\n */\n ecc?: \"H\" | \"L\" | \"M\" | \"Q\"\n /**\n * Inverts the black and white of the QR code.\n *\n * @default false\n */\n invert?: boolean\n /**\n * The mask pattern to use.\n *\n * @default -1\n */\n maskPattern?: number\n /**\n * The maximum version of the QR code (1-40).\n *\n * @default 40\n */\n maxVersion?: number\n /**\n * The minimum version of the QR code (1-40).\n *\n * @default 1\n */\n minVersion?: number\n /**\n * The pixel size of the QR code.\n *\n * @default 10\n */\n pixelSize?: number\n /**\n * Callback function to receive the generated QR Code.\n */\n onEncoded?: (qr: QrCodeGenerateResult) => void\n}\n\nexport const useQrCode = ({\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n pixelSize = 10,\n value,\n onEncoded,\n ...rest\n}: UseQrCodeProps) => {\n const encoded = useMemo(\n () =>\n encode(value, {\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n onEncoded,\n }),\n [\n value,\n border,\n ecc,\n boostEcc,\n maskPattern,\n maxVersion,\n minVersion,\n invert,\n onEncoded,\n ],\n )\n const height = encoded.size * pixelSize\n const width = encoded.size * pixelSize\n const viewBox = `0 0 ${width} ${height}`\n const paths: string[] = useMemo(() => {\n const result: string[] = []\n\n for (let row = 0; row < encoded.size; row++) {\n for (let col = 0; col < encoded.size; col++) {\n const x = col * pixelSize\n const y = row * pixelSize\n if (encoded.data[row]?.[col]) {\n result.push(`M${x},${y}h${pixelSize}v${pixelSize}h-${pixelSize}z`)\n }\n }\n }\n return result\n }, [encoded.data, encoded.size, pixelSize])\n\n const getRootProps: PropGetter = useCallback(\n (props
|
|
1
|
+
{"version":3,"file":"use-qr-code.cjs","names":["paths: string[]","result: string[]","getRootProps: PropGetter","mergeProps"],"sources":["../../../../src/components/qr-code/use-qr-code.tsx"],"sourcesContent":["import type { QrCodeGenerateResult } from \"uqr\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { encode } from \"uqr\"\nimport { mergeProps } from \"../../core\"\n\nexport interface UseQrCodeProps extends HTMLProps {\n /**\n * The value to encode as a QR code.\n */\n value: string\n /**\n * The error correction level to boost the error correction level to the maximum allowed by the version and size.\n *\n * @default false\n */\n boostEcc?: boolean\n /**\n * The border width around the QR code.\n *\n * @default 1\n */\n border?: number\n /**\n * The error correction level.\n *\n * - `L` allows for up to 7% error correction,\n * - `M` allows for up to 15% error correction,\n * - `Q` allows for up to 25% error correction,\n * - `H` allows for up to 30% error correction.\n *\n * @default 'L'\n */\n ecc?: \"H\" | \"L\" | \"M\" | \"Q\"\n /**\n * Inverts the black and white of the QR code.\n *\n * @default false\n */\n invert?: boolean\n /**\n * The mask pattern to use.\n *\n * @default -1\n */\n maskPattern?: number\n /**\n * The maximum version of the QR code (1-40).\n *\n * @default 40\n */\n maxVersion?: number\n /**\n * The minimum version of the QR code (1-40).\n *\n * @default 1\n */\n minVersion?: number\n /**\n * The pixel size of the QR code.\n *\n * @default 10\n */\n pixelSize?: number\n /**\n * Callback function to receive the generated QR Code.\n */\n onEncoded?: (qr: QrCodeGenerateResult) => void\n}\n\nexport const useQrCode = ({\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n pixelSize = 10,\n value,\n onEncoded,\n ...rest\n}: UseQrCodeProps) => {\n const encoded = useMemo(\n () =>\n encode(value, {\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n onEncoded,\n }),\n [\n value,\n border,\n ecc,\n boostEcc,\n maskPattern,\n maxVersion,\n minVersion,\n invert,\n onEncoded,\n ],\n )\n const height = encoded.size * pixelSize\n const width = encoded.size * pixelSize\n const viewBox = `0 0 ${width} ${height}`\n const paths: string[] = useMemo(() => {\n const result: string[] = []\n\n for (let row = 0; row < encoded.size; row++) {\n for (let col = 0; col < encoded.size; col++) {\n const x = col * pixelSize\n const y = row * pixelSize\n if (encoded.data[row]?.[col]) {\n result.push(`M${x},${y}h${pixelSize}v${pixelSize}h-${pixelSize}z`)\n }\n }\n }\n return result\n }, [encoded.data, encoded.size, pixelSize])\n\n const getRootProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getFrameProps: PropGetter<\"svg\"> = useCallback(\n (props = {}) => ({ viewBox: `0 0 ${width} ${height}`, ...props }),\n [height, width],\n )\n\n const getOverlayProps: PropGetter = useCallback(\n (props = {}) => ({ ...props }),\n [],\n )\n\n const getPatternProps: PropGetter<\"path\"> = useCallback(\n (props) => ({ ...props, d: paths.join(\" \") }),\n [paths],\n )\n\n return {\n height,\n paths,\n viewBox,\n width,\n getFrameProps,\n getOverlayProps,\n getPatternProps,\n getRootProps,\n }\n}\n\nexport type UseQrCodeReturn = ReturnType<typeof useQrCode>\n"],"mappings":";;;;;;;AAsEA,MAAa,aAAa,EACxB,UACA,QACA,KACA,QACA,aACA,YACA,YACA,YAAY,IACZ,OACA,WACA,GAAG,WACiB;CACpB,MAAM,mDAEK,OAAO;EACZ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC,EACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;CACD,MAAM,SAAS,QAAQ,OAAO;CAC9B,MAAM,QAAQ,QAAQ,OAAO;CAC7B,MAAM,UAAU,OAAO,MAAM,GAAG;CAChC,MAAMA,iCAAgC;EACpC,MAAMC,SAAmB,EAAE;AAE3B,OAAK,IAAI,MAAM,GAAG,MAAM,QAAQ,MAAM,MACpC,MAAK,IAAI,MAAM,GAAG,MAAM,QAAQ,MAAM,OAAO;GAC3C,MAAM,IAAI,MAAM;GAChB,MAAM,IAAI,MAAM;AAChB,OAAI,QAAQ,KAAK,OAAO,KACtB,QAAO,KAAK,IAAI,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,UAAU,IAAI,UAAU,GAAG;;AAIxE,SAAO;IACN;EAAC,QAAQ;EAAM,QAAQ;EAAM;EAAU,CAAC;CAE3C,MAAMC,uCACH,UAAUC,yBAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AAiBD,QAAO;EACL;EACA;EACA;EACA;EACA,uCAnBC,QAAQ,EAAE,MAAM;GAAE,SAAS,OAAO,MAAM,GAAG;GAAU,GAAG;GAAO,GAChE,CAAC,QAAQ,MAAM,CAChB;EAkBC,yCAfC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,GAC7B,EAAE,CACH;EAcC,yCAXC,WAAW;GAAE,GAAG;GAAO,GAAG,MAAM,KAAK,IAAI;GAAE,GAC5C,CAAC,MAAM,CACR;EAUC;EACD"}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
import { createContext as createContext$1 } from "../../utils/context.js";
|
|
4
4
|
import { mergeRefs } from "../../utils/ref.js";
|
|
5
5
|
import { utils_exports } from "../../utils/index.js";
|
|
6
|
+
import { mergeProps } from "../../core/components/props.js";
|
|
7
|
+
import "../../core/index.js";
|
|
6
8
|
import { useControllableState } from "../../hooks/use-controllable-state/index.js";
|
|
7
9
|
import { useI18n } from "../../providers/i18n-provider/i18n-provider.js";
|
|
8
10
|
import "../../providers/i18n-provider/index.js";
|
|
@@ -11,6 +13,7 @@ import { useCallback, useMemo } from "react";
|
|
|
11
13
|
//#region src/components/pagination/use-pagination.ts
|
|
12
14
|
const [PaginationContext, usePaginationContext] = createContext$1({ name: "PaginationContext" });
|
|
13
15
|
const usePagination = ({ boundaries = 1, defaultPage = 1, disabled = false, page, siblings = 1, total, onChange: onChangeProp, ...rest }) => {
|
|
16
|
+
const { ref: restRef, ...restProps } = rest;
|
|
14
17
|
const [currentPage, setCurrentPage] = useControllableState({
|
|
15
18
|
defaultValue: defaultPage,
|
|
16
19
|
value: page,
|
|
@@ -54,13 +57,14 @@ const usePagination = ({ boundaries = 1, defaultPage = 1, disabled = false, page
|
|
|
54
57
|
const onChangeEnd = useCallback(() => setCurrentPage(total), [setCurrentPage, total]);
|
|
55
58
|
const onChangePrev = useCallback(() => setCurrentPage((prev) => Math.max(1, prev - 1)), [setCurrentPage]);
|
|
56
59
|
const onChangeNext = useCallback(() => setCurrentPage((prev) => Math.min(total, prev + 1)), [setCurrentPage, total]);
|
|
57
|
-
const getRootProps = useCallback(({ ref, ...props } = {}) => ({
|
|
60
|
+
const getRootProps = useCallback(({ ref, ...props } = {}) => mergeProps({
|
|
58
61
|
"aria-label": t("Pagination"),
|
|
59
|
-
role: "navigation"
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
role: "navigation"
|
|
63
|
+
}, restProps, props, { ref: mergeRefs(ref, restRef) })(), [
|
|
64
|
+
restProps,
|
|
65
|
+
restRef,
|
|
66
|
+
t
|
|
67
|
+
]);
|
|
64
68
|
const getItemProps = useCallback(({ page: page$1, ...props } = {}) => {
|
|
65
69
|
if ((0, utils_exports.isNumber)(page$1)) return {
|
|
66
70
|
type: "button",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-pagination.js","names":["createContext","page","getRootProps: PropGetter","getItemProps: PropGetter<\"button\", { page?: Page }>","getStartTriggerProps: PropGetter<\"button\">","getEndTriggerProps: PropGetter<\"button\">","getPrevTriggerProps: PropGetter<\"button\">"],"sources":["../../../../src/components/pagination/use-pagination.ts"],"sourcesContent":["\"use client\"\n\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport { useI18n } from \"../../providers/i18n-provider\"\nimport { createContext, handlerAll, isNumber, mergeRefs } from \"../../utils\"\n\nexport type Page = \"ellipsis\" | number\n\ninterface PaginationContext extends Omit<UsePaginationReturn, \"getRootProps\"> {}\n\nconst [PaginationContext, usePaginationContext] =\n createContext<PaginationContext>({\n name: \"PaginationContext\",\n })\n\nexport { PaginationContext, usePaginationContext }\n\nexport interface UsePaginationProps extends Omit<\n HTMLProps,\n \"onChange\" | \"page\"\n> {\n /**\n * The total number of pages in pagination.\n */\n total: number\n /**\n * Number of elements visible on the left/right edges.\n *\n * @default 1\n */\n boundaries?: number\n /**\n * The initial page of the pagination.\n * Should be less than `total` and greater than `1`.\n *\n * @default 1\n */\n defaultPage?: number\n /**\n * If `true`, the pagination all item will be disabled.\n *\n * @default false\n */\n disabled?: boolean\n /**\n * The page of the pagination.\n * Should be less than `total` and greater than `1`.\n */\n page?: number\n /** Number of siblings displayed on the left/right side of selected page.\n *\n * @default 1\n */\n siblings?: number\n /**\n * The callback invoked when the page changes.\n */\n onChange?: (page: number) => void\n}\n\nexport const usePagination = ({\n boundaries = 1,\n defaultPage = 1,\n disabled = false,\n page,\n siblings = 1,\n total,\n onChange: onChangeProp,\n ...rest\n}: UsePaginationProps) => {\n const [currentPage, setCurrentPage] = useControllableState({\n defaultValue: defaultPage,\n value: page,\n onChange: onChangeProp,\n })\n const { t } = useI18n(\"pagination\")\n const range = useMemo((): Page[] => {\n const minimumTotal = siblings * 2 + 3 + boundaries * 2\n\n if (minimumTotal >= total) return computedRange(1, total)\n\n const prevSiblings = Math.max(currentPage - siblings, boundaries)\n const nextSiblings = Math.min(currentPage + siblings, total - boundaries)\n const prevDots = prevSiblings > boundaries + 2\n const nextDots = nextSiblings < total - (boundaries + 1)\n\n if (!prevDots && nextDots) {\n const prevPages = siblings * 2 + boundaries + 2\n\n return [\n ...computedRange(1, prevPages),\n \"ellipsis\",\n ...computedRange(total - (boundaries - 1), total),\n ]\n }\n\n if (prevDots && !nextDots) {\n const nextPages = boundaries + 1 + 2 * siblings\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(total - nextPages, total),\n ]\n }\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(prevSiblings, nextSiblings),\n \"ellipsis\",\n ...computedRange(total - boundaries + 1, total),\n ]\n }, [boundaries, siblings, currentPage, total])\n\n const onChange = useCallback(\n (page: number) => setCurrentPage(Math.max(1, Math.min(total, page))),\n [setCurrentPage, total],\n )\n\n const onChangeStart = useCallback(() => setCurrentPage(1), [setCurrentPage])\n\n const onChangeEnd = useCallback(\n () => setCurrentPage(total),\n [setCurrentPage, total],\n )\n\n const onChangePrev = useCallback(\n () => setCurrentPage((prev) => Math.max(1, prev - 1)),\n [setCurrentPage],\n )\n\n const onChangeNext = useCallback(\n () => setCurrentPage((prev) => Math.min(total, prev + 1)),\n [setCurrentPage, total],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({ ref, ...props } = {})
|
|
1
|
+
{"version":3,"file":"use-pagination.js","names":["createContext","page","getRootProps: PropGetter","getItemProps: PropGetter<\"button\", { page?: Page }>","getStartTriggerProps: PropGetter<\"button\">","getEndTriggerProps: PropGetter<\"button\">","getPrevTriggerProps: PropGetter<\"button\">"],"sources":["../../../../src/components/pagination/use-pagination.ts"],"sourcesContent":["\"use client\"\n\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport { useI18n } from \"../../providers/i18n-provider\"\nimport { createContext, handlerAll, isNumber, mergeRefs } from \"../../utils\"\n\nexport type Page = \"ellipsis\" | number\n\ninterface PaginationContext extends Omit<UsePaginationReturn, \"getRootProps\"> {}\n\nconst [PaginationContext, usePaginationContext] =\n createContext<PaginationContext>({\n name: \"PaginationContext\",\n })\n\nexport { PaginationContext, usePaginationContext }\n\nexport interface UsePaginationProps extends Omit<\n HTMLProps,\n \"onChange\" | \"page\"\n> {\n /**\n * The total number of pages in pagination.\n */\n total: number\n /**\n * Number of elements visible on the left/right edges.\n *\n * @default 1\n */\n boundaries?: number\n /**\n * The initial page of the pagination.\n * Should be less than `total` and greater than `1`.\n *\n * @default 1\n */\n defaultPage?: number\n /**\n * If `true`, the pagination all item will be disabled.\n *\n * @default false\n */\n disabled?: boolean\n /**\n * The page of the pagination.\n * Should be less than `total` and greater than `1`.\n */\n page?: number\n /** Number of siblings displayed on the left/right side of selected page.\n *\n * @default 1\n */\n siblings?: number\n /**\n * The callback invoked when the page changes.\n */\n onChange?: (page: number) => void\n}\n\nexport const usePagination = ({\n boundaries = 1,\n defaultPage = 1,\n disabled = false,\n page,\n siblings = 1,\n total,\n onChange: onChangeProp,\n ...rest\n}: UsePaginationProps) => {\n const { ref: restRef, ...restProps } = rest\n const [currentPage, setCurrentPage] = useControllableState({\n defaultValue: defaultPage,\n value: page,\n onChange: onChangeProp,\n })\n const { t } = useI18n(\"pagination\")\n const range = useMemo((): Page[] => {\n const minimumTotal = siblings * 2 + 3 + boundaries * 2\n\n if (minimumTotal >= total) return computedRange(1, total)\n\n const prevSiblings = Math.max(currentPage - siblings, boundaries)\n const nextSiblings = Math.min(currentPage + siblings, total - boundaries)\n const prevDots = prevSiblings > boundaries + 2\n const nextDots = nextSiblings < total - (boundaries + 1)\n\n if (!prevDots && nextDots) {\n const prevPages = siblings * 2 + boundaries + 2\n\n return [\n ...computedRange(1, prevPages),\n \"ellipsis\",\n ...computedRange(total - (boundaries - 1), total),\n ]\n }\n\n if (prevDots && !nextDots) {\n const nextPages = boundaries + 1 + 2 * siblings\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(total - nextPages, total),\n ]\n }\n\n return [\n ...computedRange(1, boundaries),\n \"ellipsis\",\n ...computedRange(prevSiblings, nextSiblings),\n \"ellipsis\",\n ...computedRange(total - boundaries + 1, total),\n ]\n }, [boundaries, siblings, currentPage, total])\n\n const onChange = useCallback(\n (page: number) => setCurrentPage(Math.max(1, Math.min(total, page))),\n [setCurrentPage, total],\n )\n\n const onChangeStart = useCallback(() => setCurrentPage(1), [setCurrentPage])\n\n const onChangeEnd = useCallback(\n () => setCurrentPage(total),\n [setCurrentPage, total],\n )\n\n const onChangePrev = useCallback(\n () => setCurrentPage((prev) => Math.max(1, prev - 1)),\n [setCurrentPage],\n )\n\n const onChangeNext = useCallback(\n () => setCurrentPage((prev) => Math.min(total, prev + 1)),\n [setCurrentPage, total],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({ ref, ...props } = {}) =>\n mergeProps(\n {\n \"aria-label\": t(\"Pagination\"),\n role: \"navigation\",\n },\n restProps,\n props,\n {\n ref: mergeRefs(ref, restRef),\n },\n )(),\n [restProps, restRef, t],\n )\n\n const getItemProps: PropGetter<\"button\", { page?: Page }> = useCallback(\n ({ page, ...props } = {}) => {\n if (isNumber(page)) {\n return {\n type: \"button\",\n \"aria-current\": currentPage === page ? \"page\" : undefined,\n \"aria-label\": t(\"Go to page {value}\", { value: page }),\n disabled,\n ...props,\n onClick: handlerAll(props.onClick, () => onChange(page)),\n }\n } else {\n return { ...props, \"data-ellipsis\": \"\" }\n }\n },\n [currentPage, t, onChange, disabled],\n )\n\n const getStartTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to first page\"),\n disabled: disabled || currentPage === 1,\n ...props,\n onClick: handlerAll(props.onClick, onChangeStart),\n }),\n [onChangeStart, t, disabled, currentPage],\n )\n\n const getEndTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to last page\"),\n disabled: disabled || currentPage === total,\n ...props,\n onClick: handlerAll(props.onClick, onChangeEnd),\n }),\n [onChangeEnd, t, disabled, currentPage, total],\n )\n\n const getPrevTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to previous page\"),\n disabled: disabled || currentPage === 1,\n ...props,\n onClick: handlerAll(props.onClick, onChangePrev),\n }),\n [onChangePrev, t, disabled, currentPage],\n )\n\n const getNextTriggerProps: PropGetter<\"button\"> = useCallback(\n (props = {}) => ({\n type: \"button\",\n \"aria-label\": t(\"Go to next page\"),\n disabled: disabled || currentPage === total,\n ...props,\n onClick: handlerAll(props.onClick, onChangeNext),\n }),\n [onChangeNext, t, disabled, currentPage, total],\n )\n\n return {\n currentPage,\n disabled,\n range,\n total,\n getEndTriggerProps,\n getItemProps,\n getNextTriggerProps,\n getPrevTriggerProps,\n getRootProps,\n getStartTriggerProps,\n onChange,\n onChangeEnd,\n onChangeNext,\n onChangePrev,\n onChangeStart,\n }\n}\n\nexport type UsePaginationReturn = ReturnType<typeof usePagination>\n\nconst computedRange = (start: number, end: number) =>\n Array.from({ length: end - start + 1 }, (_, index) => index + start)\n"],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { mergeProps } from "../../core/components/props.js";
|
|
2
|
+
import "../../core/index.js";
|
|
1
3
|
import { useCallback, useMemo } from "react";
|
|
2
4
|
import { encode } from "uqr";
|
|
3
5
|
|
|
@@ -39,10 +41,7 @@ const useQrCode = ({ boostEcc, border, ecc, invert, maskPattern, maxVersion, min
|
|
|
39
41
|
encoded.size,
|
|
40
42
|
pixelSize
|
|
41
43
|
]);
|
|
42
|
-
const getRootProps = useCallback((props
|
|
43
|
-
...rest,
|
|
44
|
-
...props
|
|
45
|
-
}), [rest]);
|
|
44
|
+
const getRootProps = useCallback((props) => mergeProps(rest, props)(), [rest]);
|
|
46
45
|
return {
|
|
47
46
|
height,
|
|
48
47
|
paths,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-qr-code.js","names":["paths: string[]","result: string[]","getRootProps: PropGetter"],"sources":["../../../../src/components/qr-code/use-qr-code.tsx"],"sourcesContent":["import type { QrCodeGenerateResult } from \"uqr\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { encode } from \"uqr\"\n\nexport interface UseQrCodeProps extends HTMLProps {\n /**\n * The value to encode as a QR code.\n */\n value: string\n /**\n * The error correction level to boost the error correction level to the maximum allowed by the version and size.\n *\n * @default false\n */\n boostEcc?: boolean\n /**\n * The border width around the QR code.\n *\n * @default 1\n */\n border?: number\n /**\n * The error correction level.\n *\n * - `L` allows for up to 7% error correction,\n * - `M` allows for up to 15% error correction,\n * - `Q` allows for up to 25% error correction,\n * - `H` allows for up to 30% error correction.\n *\n * @default 'L'\n */\n ecc?: \"H\" | \"L\" | \"M\" | \"Q\"\n /**\n * Inverts the black and white of the QR code.\n *\n * @default false\n */\n invert?: boolean\n /**\n * The mask pattern to use.\n *\n * @default -1\n */\n maskPattern?: number\n /**\n * The maximum version of the QR code (1-40).\n *\n * @default 40\n */\n maxVersion?: number\n /**\n * The minimum version of the QR code (1-40).\n *\n * @default 1\n */\n minVersion?: number\n /**\n * The pixel size of the QR code.\n *\n * @default 10\n */\n pixelSize?: number\n /**\n * Callback function to receive the generated QR Code.\n */\n onEncoded?: (qr: QrCodeGenerateResult) => void\n}\n\nexport const useQrCode = ({\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n pixelSize = 10,\n value,\n onEncoded,\n ...rest\n}: UseQrCodeProps) => {\n const encoded = useMemo(\n () =>\n encode(value, {\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n onEncoded,\n }),\n [\n value,\n border,\n ecc,\n boostEcc,\n maskPattern,\n maxVersion,\n minVersion,\n invert,\n onEncoded,\n ],\n )\n const height = encoded.size * pixelSize\n const width = encoded.size * pixelSize\n const viewBox = `0 0 ${width} ${height}`\n const paths: string[] = useMemo(() => {\n const result: string[] = []\n\n for (let row = 0; row < encoded.size; row++) {\n for (let col = 0; col < encoded.size; col++) {\n const x = col * pixelSize\n const y = row * pixelSize\n if (encoded.data[row]?.[col]) {\n result.push(`M${x},${y}h${pixelSize}v${pixelSize}h-${pixelSize}z`)\n }\n }\n }\n return result\n }, [encoded.data, encoded.size, pixelSize])\n\n const getRootProps: PropGetter = useCallback(\n (props
|
|
1
|
+
{"version":3,"file":"use-qr-code.js","names":["paths: string[]","result: string[]","getRootProps: PropGetter"],"sources":["../../../../src/components/qr-code/use-qr-code.tsx"],"sourcesContent":["import type { QrCodeGenerateResult } from \"uqr\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport { useCallback, useMemo } from \"react\"\nimport { encode } from \"uqr\"\nimport { mergeProps } from \"../../core\"\n\nexport interface UseQrCodeProps extends HTMLProps {\n /**\n * The value to encode as a QR code.\n */\n value: string\n /**\n * The error correction level to boost the error correction level to the maximum allowed by the version and size.\n *\n * @default false\n */\n boostEcc?: boolean\n /**\n * The border width around the QR code.\n *\n * @default 1\n */\n border?: number\n /**\n * The error correction level.\n *\n * - `L` allows for up to 7% error correction,\n * - `M` allows for up to 15% error correction,\n * - `Q` allows for up to 25% error correction,\n * - `H` allows for up to 30% error correction.\n *\n * @default 'L'\n */\n ecc?: \"H\" | \"L\" | \"M\" | \"Q\"\n /**\n * Inverts the black and white of the QR code.\n *\n * @default false\n */\n invert?: boolean\n /**\n * The mask pattern to use.\n *\n * @default -1\n */\n maskPattern?: number\n /**\n * The maximum version of the QR code (1-40).\n *\n * @default 40\n */\n maxVersion?: number\n /**\n * The minimum version of the QR code (1-40).\n *\n * @default 1\n */\n minVersion?: number\n /**\n * The pixel size of the QR code.\n *\n * @default 10\n */\n pixelSize?: number\n /**\n * Callback function to receive the generated QR Code.\n */\n onEncoded?: (qr: QrCodeGenerateResult) => void\n}\n\nexport const useQrCode = ({\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n pixelSize = 10,\n value,\n onEncoded,\n ...rest\n}: UseQrCodeProps) => {\n const encoded = useMemo(\n () =>\n encode(value, {\n boostEcc,\n border,\n ecc,\n invert,\n maskPattern,\n maxVersion,\n minVersion,\n onEncoded,\n }),\n [\n value,\n border,\n ecc,\n boostEcc,\n maskPattern,\n maxVersion,\n minVersion,\n invert,\n onEncoded,\n ],\n )\n const height = encoded.size * pixelSize\n const width = encoded.size * pixelSize\n const viewBox = `0 0 ${width} ${height}`\n const paths: string[] = useMemo(() => {\n const result: string[] = []\n\n for (let row = 0; row < encoded.size; row++) {\n for (let col = 0; col < encoded.size; col++) {\n const x = col * pixelSize\n const y = row * pixelSize\n if (encoded.data[row]?.[col]) {\n result.push(`M${x},${y}h${pixelSize}v${pixelSize}h-${pixelSize}z`)\n }\n }\n }\n return result\n }, [encoded.data, encoded.size, pixelSize])\n\n const getRootProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getFrameProps: PropGetter<\"svg\"> = useCallback(\n (props = {}) => ({ viewBox: `0 0 ${width} ${height}`, ...props }),\n [height, width],\n )\n\n const getOverlayProps: PropGetter = useCallback(\n (props = {}) => ({ ...props }),\n [],\n )\n\n const getPatternProps: PropGetter<\"path\"> = useCallback(\n (props) => ({ ...props, d: paths.join(\" \") }),\n [paths],\n )\n\n return {\n height,\n paths,\n viewBox,\n width,\n getFrameProps,\n getOverlayProps,\n getPatternProps,\n getRootProps,\n }\n}\n\nexport type UseQrCodeReturn = ReturnType<typeof useQrCode>\n"],"mappings":";;;;;;AAsEA,MAAa,aAAa,EACxB,UACA,QACA,KACA,QACA,aACA,YACA,YACA,YAAY,IACZ,OACA,WACA,GAAG,WACiB;CACpB,MAAM,UAAU,cAEZ,OAAO,OAAO;EACZ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC,EACJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;CACD,MAAM,SAAS,QAAQ,OAAO;CAC9B,MAAM,QAAQ,QAAQ,OAAO;CAC7B,MAAM,UAAU,OAAO,MAAM,GAAG;CAChC,MAAMA,QAAkB,cAAc;EACpC,MAAMC,SAAmB,EAAE;AAE3B,OAAK,IAAI,MAAM,GAAG,MAAM,QAAQ,MAAM,MACpC,MAAK,IAAI,MAAM,GAAG,MAAM,QAAQ,MAAM,OAAO;GAC3C,MAAM,IAAI,MAAM;GAChB,MAAM,IAAI,MAAM;AAChB,OAAI,QAAQ,KAAK,OAAO,KACtB,QAAO,KAAK,IAAI,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,UAAU,IAAI,UAAU,GAAG;;AAIxE,SAAO;IACN;EAAC,QAAQ;EAAM,QAAQ;EAAM;EAAU,CAAC;CAE3C,MAAMC,eAA2B,aAC9B,UAAU,WAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AAiBD,QAAO;EACL;EACA;EACA;EACA;EACA,eApBuC,aACtC,QAAQ,EAAE,MAAM;GAAE,SAAS,OAAO,MAAM,GAAG;GAAU,GAAG;GAAO,GAChE,CAAC,QAAQ,MAAM,CAChB;EAkBC,iBAhBkC,aACjC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,GAC7B,EAAE,CACH;EAcC,iBAZ0C,aACzC,WAAW;GAAE,GAAG;GAAO,GAAG,MAAM,KAAK,IAAI;GAAE,GAC5C,CAAC,MAAM,CACR;EAUC;EACD"}
|
|
@@ -3,11 +3,13 @@ import { ThemeProps } from "../../core/system/index.types.js";
|
|
|
3
3
|
import { Component, HTMLStyledProps } from "../../core/components/index.types.js";
|
|
4
4
|
import "../../core/index.js";
|
|
5
5
|
import { WithTransitionProps } from "../motion/index.types.js";
|
|
6
|
+
import "../motion/index.js";
|
|
6
7
|
import { CollapseProps } from "../collapse/collapse.js";
|
|
8
|
+
import "../collapse/index.js";
|
|
7
9
|
import "../../index.js";
|
|
8
10
|
import { AccordionStyle } from "./accordion.style.js";
|
|
9
11
|
import { UseAccordionItemProps, UseAccordionProps } from "./use-accordion.js";
|
|
10
|
-
import * as
|
|
12
|
+
import * as react1207 from "react";
|
|
11
13
|
|
|
12
14
|
//#region src/components/accordion/accordion.d.ts
|
|
13
15
|
interface AccordionCallBackProps {
|
|
@@ -31,7 +33,7 @@ interface AccordionRootProps extends Omit<HTMLStyledProps, "onChange">, ThemePro
|
|
|
31
33
|
*/
|
|
32
34
|
items?: AccordionItem[];
|
|
33
35
|
}
|
|
34
|
-
declare const AccordionPropsContext:
|
|
36
|
+
declare const AccordionPropsContext: react1207.Context<Partial<AccordionRootProps> | undefined>, useAccordionPropsContext: () => Partial<AccordionRootProps> | undefined;
|
|
35
37
|
/**
|
|
36
38
|
* `Accordion` is a component for a list that displays information in an expandable or collapsible manner.
|
|
37
39
|
*
|
|
@@ -3,7 +3,7 @@ import { CSSModifierObject, CSSPropObject, CSSSlotObject } from "../../core/css/
|
|
|
3
3
|
import "../../index.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/accordion/accordion.style.d.ts
|
|
6
|
-
declare const accordionStyle: ComponentSlotStyle<"button" | "
|
|
6
|
+
declare const accordionStyle: ComponentSlotStyle<"button" | "panel" | "icon" | "root" | "item", CSSPropObject<CSSSlotObject<"button" | "panel" | "icon" | "root" | "item">>, CSSModifierObject<CSSSlotObject<"button" | "panel" | "icon" | "root" | "item">>, {
|
|
7
7
|
panel: {
|
|
8
8
|
button: {
|
|
9
9
|
rounded: "l2";
|
|
@@ -2,10 +2,10 @@ import { HTMLProps, PropGetter } from "../../core/components/index.types.js";
|
|
|
2
2
|
import "../../core/index.js";
|
|
3
3
|
import { Descendant } from "../../hooks/use-descendants/index.js";
|
|
4
4
|
import "../../index.js";
|
|
5
|
-
import * as
|
|
5
|
+
import * as react1195 from "react";
|
|
6
6
|
|
|
7
7
|
//#region src/components/accordion/use-accordion.d.ts
|
|
8
|
-
declare const AccordionDescendantsContext:
|
|
8
|
+
declare const AccordionDescendantsContext: react1195.Context<{
|
|
9
9
|
active: (target?: HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null | undefined, options?: FocusOptions) => void;
|
|
10
10
|
count: (props?: Partial<{}> | undefined) => number;
|
|
11
11
|
destroy: () => void;
|
|
@@ -24,7 +24,7 @@ declare const AccordionDescendantsContext: react1172.Context<{
|
|
|
24
24
|
prevValue: (indexOrNode: number | HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null, loop?: boolean, props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
25
25
|
register: (props?: {
|
|
26
26
|
disabled?: boolean | ((node: HTMLButtonElement) => boolean) | undefined;
|
|
27
|
-
} | undefined) =>
|
|
27
|
+
} | undefined) => react1195.RefCallback<HTMLButtonElement>;
|
|
28
28
|
unregister: (node?: HTMLButtonElement | null | undefined) => void;
|
|
29
29
|
value: (indexOrNode: number | HTMLButtonElement | null) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
30
30
|
values: (props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}>[];
|
|
@@ -50,12 +50,12 @@ declare const AccordionDescendantsContext: react1172.Context<{
|
|
|
50
50
|
prevValue: (indexOrNode: number | HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null, loop?: boolean, props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
51
51
|
register: (props?: {
|
|
52
52
|
disabled?: boolean | ((node: HTMLButtonElement) => boolean) | undefined;
|
|
53
|
-
} | undefined) =>
|
|
53
|
+
} | undefined) => react1195.RefCallback<HTMLButtonElement>;
|
|
54
54
|
unregister: (node?: HTMLButtonElement | null | undefined) => void;
|
|
55
55
|
value: (indexOrNode: number | HTMLButtonElement | null) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
56
56
|
values: (props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}>[];
|
|
57
57
|
};
|
|
58
|
-
register:
|
|
58
|
+
register: react1195.RefCallback<HTMLButtonElement>;
|
|
59
59
|
}, useAccordionDescendants: () => {
|
|
60
60
|
active: (target?: HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null | undefined, options?: FocusOptions) => void;
|
|
61
61
|
count: (props?: Partial<{}> | undefined) => number;
|
|
@@ -75,15 +75,15 @@ declare const AccordionDescendantsContext: react1172.Context<{
|
|
|
75
75
|
prevValue: (indexOrNode: number | HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null, loop?: boolean, props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
76
76
|
register: (props?: {
|
|
77
77
|
disabled?: boolean | ((node: HTMLButtonElement) => boolean) | undefined;
|
|
78
|
-
} | undefined) =>
|
|
78
|
+
} | undefined) => react1195.RefCallback<HTMLButtonElement>;
|
|
79
79
|
unregister: (node?: HTMLButtonElement | null | undefined) => void;
|
|
80
80
|
value: (indexOrNode: number | HTMLButtonElement | null) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
81
81
|
values: (props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}>[];
|
|
82
82
|
};
|
|
83
83
|
interface AccordionContext extends Omit<UseAccordionReturn, "descendants" | "getRootProps"> {}
|
|
84
|
-
declare const AccordionContext:
|
|
84
|
+
declare const AccordionContext: react1195.Context<AccordionContext>, useAccordionContext: () => AccordionContext;
|
|
85
85
|
interface AccordionItemContext extends Omit<UseAccordionItemReturn, "getItemProps"> {}
|
|
86
|
-
declare const AccordionItemContext:
|
|
86
|
+
declare const AccordionItemContext: react1195.Context<AccordionItemContext>, useAccordionItemContext: () => AccordionItemContext;
|
|
87
87
|
interface UseAccordionProps extends Omit<HTMLProps, "onChange"> {
|
|
88
88
|
/**
|
|
89
89
|
* The initial index(es) of the accordion item to expand.
|
|
@@ -137,7 +137,7 @@ declare const useAccordion: ({
|
|
|
137
137
|
prevValue: (indexOrNode: number | HTMLButtonElement | Descendant<HTMLButtonElement, {}> | null, loop?: boolean, props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
138
138
|
register: (props?: {
|
|
139
139
|
disabled?: boolean | ((node: HTMLButtonElement) => boolean) | undefined;
|
|
140
|
-
} | undefined) =>
|
|
140
|
+
} | undefined) => react1195.RefCallback<HTMLButtonElement>;
|
|
141
141
|
unregister: (node?: HTMLButtonElement | null | undefined) => void;
|
|
142
142
|
value: (indexOrNode: number | HTMLButtonElement | null) => Descendant<HTMLButtonElement, {}> | undefined;
|
|
143
143
|
values: (props?: Partial<{}> | undefined) => Descendant<HTMLButtonElement, {}>[];
|
|
@@ -145,8 +145,8 @@ declare const useAccordion: ({
|
|
|
145
145
|
focusedIndex: number;
|
|
146
146
|
index: number | number[];
|
|
147
147
|
multiple: boolean | undefined;
|
|
148
|
-
setFocusedIndex:
|
|
149
|
-
setIndex:
|
|
148
|
+
setFocusedIndex: react1195.Dispatch<react1195.SetStateAction<number>>;
|
|
149
|
+
setIndex: react1195.Dispatch<react1195.SetStateAction<number | number[]>>;
|
|
150
150
|
toggle: boolean | undefined;
|
|
151
151
|
getRootProps: PropGetter<"div", undefined, undefined>;
|
|
152
152
|
};
|
|
@@ -4,9 +4,10 @@ import "../../core/index.js";
|
|
|
4
4
|
import { ActionBarStyle } from "./action-bar.style.js";
|
|
5
5
|
import { PortalProps } from "../portal/portal.js";
|
|
6
6
|
import { UsePopupAnimationProps } from "../popover/popover.js";
|
|
7
|
+
import "../popover/index.js";
|
|
7
8
|
import { UseActionBarProps } from "./use-action-bar.js";
|
|
8
9
|
import "../../index.js";
|
|
9
|
-
import * as
|
|
10
|
+
import * as react1143 from "react";
|
|
10
11
|
import { PropsWithChildren, ReactNode } from "react";
|
|
11
12
|
|
|
12
13
|
//#region src/components/action-bar/action-bar.d.ts
|
|
@@ -28,7 +29,7 @@ interface ActionBarRootProps extends Omit<HTMLStyledProps, "content">, ThemeProp
|
|
|
28
29
|
*/
|
|
29
30
|
onCloseComplete?: () => void;
|
|
30
31
|
}
|
|
31
|
-
declare const ActionBarPropsContext:
|
|
32
|
+
declare const ActionBarPropsContext: react1143.Context<Partial<ActionBarRootProps> | undefined>, useActionBarPropsContext: () => Partial<ActionBarRootProps> | undefined;
|
|
32
33
|
/**
|
|
33
34
|
* `ActionBar` is a component that is used to display a bottom action bar with a set of actions.
|
|
34
35
|
*
|
|
@@ -2,9 +2,10 @@ import { KeyframeIdent, ThemeProps } from "../../core/system/index.types.js";
|
|
|
2
2
|
import { Component } from "../../core/components/index.types.js";
|
|
3
3
|
import "../../core/index.js";
|
|
4
4
|
import { HTMLMotionProps } from "../motion/index.types.js";
|
|
5
|
+
import "../motion/index.js";
|
|
5
6
|
import { AiryStyle } from "./airy.style.js";
|
|
6
7
|
import "../../index.js";
|
|
7
|
-
import * as
|
|
8
|
+
import * as react1188 from "react";
|
|
8
9
|
import { ReactNode } from "react";
|
|
9
10
|
|
|
10
11
|
//#region src/components/airy/airy.d.ts
|
|
@@ -56,7 +57,7 @@ interface AiryProps extends Omit<HTMLMotionProps<"button">, "onChange">, ThemePr
|
|
|
56
57
|
*/
|
|
57
58
|
onChange?: (value: KeyframeIdent) => void;
|
|
58
59
|
}
|
|
59
|
-
declare const AiryPropsContext:
|
|
60
|
+
declare const AiryPropsContext: react1188.Context<Partial<AiryProps> | undefined>, useAiryPropsContext: () => Partial<AiryProps> | undefined;
|
|
60
61
|
/**
|
|
61
62
|
* `Airy` is a component that creates an airy animation, switching between two elements when one is clicked.
|
|
62
63
|
*
|
|
@@ -3,10 +3,13 @@ import { Component, HTMLStyledProps } from "../../core/components/index.types.js
|
|
|
3
3
|
import "../../core/index.js";
|
|
4
4
|
import { AlertStyle } from "./alert.style.js";
|
|
5
5
|
import { IconProps } from "../icon/icon.js";
|
|
6
|
+
import "../icon/index.js";
|
|
6
7
|
import { LoadingProps } from "../loading/loading.js";
|
|
8
|
+
import "../loading/index.js";
|
|
7
9
|
import { StatusScheme } from "../status/status.js";
|
|
10
|
+
import "../status/index.js";
|
|
8
11
|
import "../../index.js";
|
|
9
|
-
import * as
|
|
12
|
+
import * as react1194 from "react";
|
|
10
13
|
|
|
11
14
|
//#region src/components/alert/alert.d.ts
|
|
12
15
|
interface AlertRootProps extends HTMLStyledProps, ThemeProps<AlertStyle> {
|
|
@@ -17,7 +20,7 @@ interface AlertRootProps extends HTMLStyledProps, ThemeProps<AlertStyle> {
|
|
|
17
20
|
*/
|
|
18
21
|
status?: StatusScheme;
|
|
19
22
|
}
|
|
20
|
-
declare const AlertPropsContext:
|
|
23
|
+
declare const AlertPropsContext: react1194.Context<Partial<AlertRootProps> | undefined>, useAlertPropsContext: () => Partial<AlertRootProps> | undefined;
|
|
21
24
|
/**
|
|
22
25
|
* `Alert` is a component that conveys information to the user.
|
|
23
26
|
*
|
|
@@ -3,7 +3,7 @@ import { CSSModifierObject, CSSPropObject, CSSSlotObject } from "../../core/css/
|
|
|
3
3
|
import "../../index.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/alert/alert.style.d.ts
|
|
6
|
-
declare const alertStyle: ComponentSlotStyle<"title" | "
|
|
6
|
+
declare const alertStyle: ComponentSlotStyle<"title" | "loading" | "icon" | "root" | "description", CSSPropObject<CSSSlotObject<"title" | "loading" | "icon" | "root" | "description">>, CSSModifierObject<CSSSlotObject<"title" | "loading" | "icon" | "root" | "description">>, {
|
|
7
7
|
island: {
|
|
8
8
|
description: {
|
|
9
9
|
color: "fg.muted";
|
|
@@ -3,8 +3,9 @@ import { Component } from "../../core/components/index.types.js";
|
|
|
3
3
|
import "../../core/index.js";
|
|
4
4
|
import { AlphaSliderStyle } from "./alpha-slider.style.js";
|
|
5
5
|
import { HueSliderOverlayProps, HueSliderRootProps, HueSliderThumbProps, HueSliderTrackProps } from "../hue-slider/hue-slider.js";
|
|
6
|
+
import "../hue-slider/index.js";
|
|
6
7
|
import "../../index.js";
|
|
7
|
-
import * as
|
|
8
|
+
import * as react30 from "react";
|
|
8
9
|
|
|
9
10
|
//#region src/components/alpha-slider/alpha-slider.d.ts
|
|
10
11
|
interface AlphaSliderRootProps extends WithoutThemeProps<Omit<HueSliderRootProps, "color" | "max" | "step" | "thumbProps" | "trackProps">, AlphaSliderStyle> {
|
|
@@ -37,7 +38,7 @@ interface AlphaSliderRootProps extends WithoutThemeProps<Omit<HueSliderRootProps
|
|
|
37
38
|
*/
|
|
38
39
|
trackProps?: AlphaSliderTrackProps;
|
|
39
40
|
}
|
|
40
|
-
declare const AlphaSliderPropsContext:
|
|
41
|
+
declare const AlphaSliderPropsContext: react30.Context<Partial<AlphaSliderRootProps> | undefined>, useAlphaSliderPropsContext: () => Partial<AlphaSliderRootProps> | undefined;
|
|
41
42
|
/**
|
|
42
43
|
* `AlphaSlider` is a component used to allow the user to select color transparency.
|
|
43
44
|
*
|
|
@@ -2,7 +2,7 @@ import { StyleValue } from "../../core/css/index.types.js";
|
|
|
2
2
|
import { Component, HTMLStyledProps } from "../../core/components/index.types.js";
|
|
3
3
|
import "../../core/index.js";
|
|
4
4
|
import "../../index.js";
|
|
5
|
-
import * as
|
|
5
|
+
import * as react28 from "react";
|
|
6
6
|
|
|
7
7
|
//#region src/components/aspect-ratio/aspect-ratio.d.ts
|
|
8
8
|
interface AspectRatioProps extends HTMLStyledProps {
|
|
@@ -13,7 +13,7 @@ interface AspectRatioProps extends HTMLStyledProps {
|
|
|
13
13
|
*/
|
|
14
14
|
ratio?: StyleValue<number>;
|
|
15
15
|
}
|
|
16
|
-
declare const AspectRatioPropsContext:
|
|
16
|
+
declare const AspectRatioPropsContext: react28.Context<Partial<AspectRatioProps> | undefined>, useAspectRatioPropsContext: () => Partial<AspectRatioProps> | undefined;
|
|
17
17
|
/**
|
|
18
18
|
* `AspectRatio` is a component for embedding things like videos and maps while maintaining the aspect ratio.
|
|
19
19
|
*
|
|
@@ -3,14 +3,16 @@ import { ThemeProps } from "../../core/system/index.types.js";
|
|
|
3
3
|
import { Component, GenericsComponent, HTMLStyledProps } from "../../core/components/index.types.js";
|
|
4
4
|
import "../../core/index.js";
|
|
5
5
|
import { PopoverContentProps, UsePopoverStyleProps, UsePopupAnimationProps } from "../popover/popover.js";
|
|
6
|
+
import "../popover/index.js";
|
|
6
7
|
import { AutocompleteStyle } from "./autocomplete.style.js";
|
|
7
8
|
import { UseComboboxGroupProps } from "../../hooks/use-combobox/index.js";
|
|
8
9
|
import { UseInputBorderProps } from "../input/use-input-border.js";
|
|
9
10
|
import { InputElementProps } from "../input/input-element.js";
|
|
10
11
|
import { InputGroupRootProps } from "../input/input-group.js";
|
|
12
|
+
import "../input/index.js";
|
|
11
13
|
import { UseAutocompleteOptionProps, UseAutocompleteProps } from "./use-autocomplete.js";
|
|
12
14
|
import "../../index.js";
|
|
13
|
-
import * as
|
|
15
|
+
import * as react1187 from "react";
|
|
14
16
|
import { ReactElement, ReactNode } from "react";
|
|
15
17
|
|
|
16
18
|
//#region src/components/autocomplete/autocomplete.d.ts
|
|
@@ -66,7 +68,7 @@ interface AutocompleteRootProps<Multiple extends boolean = false> extends Omit<H
|
|
|
66
68
|
*/
|
|
67
69
|
rootProps?: InputGroupRootProps;
|
|
68
70
|
}
|
|
69
|
-
declare const AutocompletePropsContext:
|
|
71
|
+
declare const AutocompletePropsContext: react1187.Context<Partial<AutocompleteRootProps<false>> | undefined>, useAutocompletePropsContext: () => Partial<AutocompleteRootProps<false>> | undefined;
|
|
70
72
|
/**
|
|
71
73
|
* `Autocomplete` is a component used to display suggestions in response to user text input.
|
|
72
74
|
*
|
|
@@ -3,7 +3,7 @@ import { CSSPropObject, CSSSlotObject } from "../../core/css/index.types.js";
|
|
|
3
3
|
import "../../index.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/autocomplete/autocomplete.style.d.ts
|
|
6
|
-
declare const autocompleteStyle: ComponentSlotStyle<"input" | "label" | "option" | "content" | "
|
|
6
|
+
declare const autocompleteStyle: ComponentSlotStyle<"input" | "label" | "option" | "content" | "group" | "separator" | "icon" | "root" | "indicator" | "field" | "empty" | "valueText", CSSPropObject<CSSSlotObject<"input" | "label" | "option" | "content" | "group" | "separator" | "icon" | "root" | "indicator" | "field" | "empty" | "valueText">>, {
|
|
7
7
|
xs: {
|
|
8
8
|
empty: {
|
|
9
9
|
gap: "1.5";
|
|
@@ -2,11 +2,13 @@ import { index_d_exports } from "../../utils/index.js";
|
|
|
2
2
|
import { HTMLProps, HTMLRefAttributes, PropGetter } from "../../core/components/index.types.js";
|
|
3
3
|
import "../../core/index.js";
|
|
4
4
|
import { UsePopoverProps } from "../popover/use-popover.js";
|
|
5
|
+
import "../popover/index.js";
|
|
5
6
|
import { FieldProps } from "../field/field.js";
|
|
7
|
+
import "../field/index.js";
|
|
6
8
|
import { Descendant, DescendantProps } from "../../hooks/use-descendants/index.js";
|
|
7
9
|
import { ComboboxDescendant, ComboboxDescendantProps, ComboboxItem, ComboboxItemWithValue, UseComboboxItemProps, UseComboboxProps } from "../../hooks/use-combobox/index.js";
|
|
8
10
|
import "../../index.js";
|
|
9
|
-
import * as
|
|
11
|
+
import * as react1181 from "react";
|
|
10
12
|
import { ChangeEvent, ReactNode } from "react";
|
|
11
13
|
|
|
12
14
|
//#region src/components/autocomplete/use-autocomplete.d.ts
|
|
@@ -26,7 +28,7 @@ interface AutocompleteFilter {
|
|
|
26
28
|
}
|
|
27
29
|
type AutocompleteMatcher = typeof index_d_exports.match;
|
|
28
30
|
interface AutocompleteContext extends Pick<UseAutocompleteReturn, "max" | "value"> {}
|
|
29
|
-
declare const AutocompleteContext:
|
|
31
|
+
declare const AutocompleteContext: react1181.Context<AutocompleteContext>, useAutocompleteContext: () => AutocompleteContext;
|
|
30
32
|
interface UseAutocompleteProps<Multiple extends boolean = false> extends Omit<HTMLProps, "defaultValue" | "onChange" | "ref" | "value">, Omit<UseComboboxProps, "defaultValue" | "initialFocusValue" | "onChange" | "ref" | "value">, HTMLRefAttributes<"input">, FieldProps {
|
|
31
33
|
/**
|
|
32
34
|
* If `true`, the autocomplete will allow custom value.
|
|
@@ -154,7 +156,7 @@ declare const useAutocomplete: <Multiple extends boolean = false>(props?: UseAut
|
|
|
154
156
|
lastValue: (props?: Partial<ComboboxDescendantProps> | undefined) => Descendant<HTMLDivElement, ComboboxDescendantProps> | undefined;
|
|
155
157
|
nextValue: (indexOrNode: number | HTMLDivElement | Descendant<HTMLDivElement, ComboboxDescendantProps> | null, loop?: boolean, props?: Partial<ComboboxDescendantProps> | undefined) => Descendant<HTMLDivElement, ComboboxDescendantProps> | undefined;
|
|
156
158
|
prevValue: (indexOrNode: number | HTMLDivElement | Descendant<HTMLDivElement, ComboboxDescendantProps> | null, loop?: boolean, props?: Partial<ComboboxDescendantProps> | undefined) => Descendant<HTMLDivElement, ComboboxDescendantProps> | undefined;
|
|
157
|
-
register: (props?: DescendantProps<HTMLDivElement, ComboboxDescendantProps> | undefined) =>
|
|
159
|
+
register: (props?: DescendantProps<HTMLDivElement, ComboboxDescendantProps> | undefined) => react1181.RefCallback<HTMLDivElement>;
|
|
158
160
|
unregister: (node?: HTMLDivElement | null | undefined) => void;
|
|
159
161
|
value: (indexOrNode: number | HTMLDivElement | null) => Descendant<HTMLDivElement, ComboboxDescendantProps> | undefined;
|
|
160
162
|
values: (props?: Partial<ComboboxDescendantProps> | undefined) => Descendant<HTMLDivElement, ComboboxDescendantProps>[];
|
|
@@ -164,8 +166,8 @@ declare const useAutocomplete: <Multiple extends boolean = false>(props?: UseAut
|
|
|
164
166
|
items: ComboboxItem[];
|
|
165
167
|
max: number | undefined;
|
|
166
168
|
open: boolean;
|
|
167
|
-
setInputValue:
|
|
168
|
-
setValue:
|
|
169
|
+
setInputValue: react1181.Dispatch<react1181.SetStateAction<string>>;
|
|
170
|
+
setValue: react1181.Dispatch<react1181.SetStateAction<Multiple extends true ? string[] : string>>;
|
|
169
171
|
value: Multiple extends true ? string[] : string;
|
|
170
172
|
valueMap: {
|
|
171
173
|
[key: string]: ComboboxItemWithValue;
|