@ryuzaki13/react-foundation-ui 3.5.0 → 3.6.0
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/badge/index.js +1 -1
- package/dist/barcode-scanner/index.js +2 -2
- package/dist/base-table/index.js +1 -1
- package/dist/button/Button.d.ts +4 -2
- package/dist/button/Button.d.ts.map +1 -1
- package/dist/button/index.js +1 -1
- package/dist/chunks/{CalendarView-CwbPJG2Y.js → CalendarView-BCXVjLFz.js} +23 -13
- package/dist/chunks/CalendarView-BCXVjLFz.js.map +1 -0
- package/dist/chunks/OptionContentContainer-CWHlfm5Z.js +14 -0
- package/dist/chunks/OptionContentContainer-CWHlfm5Z.js.map +1 -0
- package/dist/chunks/{TextEditorLexicalClient-BRp8jHId.js → TextEditorLexicalClient-DrSVnvOe.js} +4 -4
- package/dist/chunks/{TextEditorLexicalClient-BRp8jHId.js.map → TextEditorLexicalClient-DrSVnvOe.js.map} +1 -1
- package/dist/chunks/{base-table-BHmboNzl.js → base-table-BBp5WMDM.js} +5 -5
- package/dist/chunks/{base-table-BHmboNzl.js.map → base-table-BBp5WMDM.js.map} +1 -1
- package/dist/chunks/button-DudCl375.js +75 -0
- package/dist/chunks/button-DudCl375.js.map +1 -0
- package/dist/chunks/context-menu-CrSXJxQL.js +621 -0
- package/dist/chunks/context-menu-CrSXJxQL.js.map +1 -0
- package/dist/chunks/{date-input-Crijdmmq.js → date-input-CzCDou4s.js} +10 -7
- package/dist/chunks/{date-input-Crijdmmq.js.map → date-input-CzCDou4s.js.map} +1 -1
- package/dist/chunks/flex-D86M_h-0.js +222 -0
- package/dist/chunks/flex-D86M_h-0.js.map +1 -0
- package/dist/chunks/{floating-arrow-DKUKx2ZQ.js → floating-arrow-B_iSbzUZ.js} +19 -18
- package/dist/chunks/{floating-arrow-DKUKx2ZQ.js.map → floating-arrow-B_iSbzUZ.js.map} +1 -1
- package/dist/chunks/{grid-dI94AAbi.js → grid-CFuzBigM.js} +77 -68
- package/dist/chunks/grid-CFuzBigM.js.map +1 -0
- package/dist/chunks/{misc-CGQOXXCy.js → misc-Cm_LDrUD.js} +120 -97
- package/dist/chunks/misc-Cm_LDrUD.js.map +1 -0
- package/dist/chunks/{modal-febBsMyR.js → modal-Dz5TzkTB.js} +36 -27
- package/dist/chunks/modal-Dz5TzkTB.js.map +1 -0
- package/dist/chunks/{picker-BA6okKnz.js → picker-SJXnHwsj.js} +144 -121
- package/dist/chunks/picker-SJXnHwsj.js.map +1 -0
- package/dist/chunks/popover-BJH-yHvb.js +263 -0
- package/dist/chunks/popover-BJH-yHvb.js.map +1 -0
- package/dist/chunks/{select-DblNSc5H.js → select--oIrv7SC.js} +98 -104
- package/dist/chunks/select--oIrv7SC.js.map +1 -0
- package/dist/chunks/separator-CHpBud1e.js +18 -0
- package/dist/chunks/separator-CHpBud1e.js.map +1 -0
- package/dist/chunks/{sortable-CQmMHAF8.js → sortable-BujAJgFa.js} +5 -3
- package/dist/chunks/{sortable-CQmMHAF8.js.map → sortable-BujAJgFa.js.map} +1 -1
- package/dist/chunks/{table-BnvjPaE1.js → table-BDY9Zw--.js} +2 -2
- package/dist/chunks/{table-BnvjPaE1.js.map → table-BDY9Zw--.js.map} +1 -1
- package/dist/chunks/ui.module-oRwY3Zli.js.map +1 -1
- package/dist/context-menu/components/ContextMenu.d.ts +16 -9
- package/dist/context-menu/components/ContextMenu.d.ts.map +1 -1
- package/dist/context-menu/components/ContextMenuTrigger.d.ts +6 -4
- package/dist/context-menu/components/ContextMenuTrigger.d.ts.map +1 -1
- package/dist/context-menu/components/DropdownMenu.d.ts +12 -7
- package/dist/context-menu/components/DropdownMenu.d.ts.map +1 -1
- package/dist/context-menu/components/DropdownMenuTrigger.d.ts +6 -4
- package/dist/context-menu/components/DropdownMenuTrigger.d.ts.map +1 -1
- package/dist/context-menu/components/MenuContent.d.ts +6 -4
- package/dist/context-menu/components/MenuContent.d.ts.map +1 -1
- package/dist/context-menu/components/MenuContext.d.ts +12 -7
- package/dist/context-menu/components/MenuContext.d.ts.map +1 -1
- package/dist/context-menu/components/MenuGroupLabel.d.ts +1 -1
- package/dist/context-menu/components/MenuGroupLabel.d.ts.map +1 -1
- package/dist/context-menu/components/MenuItem.d.ts.map +1 -1
- package/dist/context-menu/components/MenuRoot.d.ts +5 -5
- package/dist/context-menu/components/MenuRoot.d.ts.map +1 -1
- package/dist/context-menu/components/MenuSeparator.d.ts +1 -2
- package/dist/context-menu/components/MenuSeparator.d.ts.map +1 -1
- package/dist/context-menu/components/RadialMenuContent.d.ts +6 -4
- package/dist/context-menu/components/RadialMenuContent.d.ts.map +1 -1
- package/dist/context-menu/components/RadialMenuItem.d.ts +1 -1
- package/dist/context-menu/components/RadialMenuItem.d.ts.map +1 -1
- package/dist/context-menu/index.js +1 -1
- package/dist/date-input/index.js +2 -2
- package/dist/date-input/ui/CalendarDayView.d.ts +1 -1
- package/dist/date-input/ui/CalendarDayView.d.ts.map +1 -1
- package/dist/date-input/ui/CalendarMonthView.d.ts +1 -1
- package/dist/date-input/ui/CalendarMonthView.d.ts.map +1 -1
- package/dist/date-input/ui/CalendarView.d.ts.map +1 -1
- package/dist/date-input/ui/CalendarYearView.d.ts +1 -1
- package/dist/date-input/ui/CalendarYearView.d.ts.map +1 -1
- package/dist/date-input/ui/DateInput.d.ts.map +1 -1
- package/dist/date-time-input/index.js +10 -7
- package/dist/date-time-input/index.js.map +1 -1
- package/dist/date-time-input/ui/SingleDateTimeInput.d.ts.map +1 -1
- package/dist/detail/Detail.d.ts +6 -1
- package/dist/detail/Detail.d.ts.map +1 -1
- package/dist/detail/index.js +2 -2
- package/dist/detail/index.js.map +1 -1
- package/dist/disclosure/index.js +1 -1
- package/dist/errors/BadRequestPage.d.ts +1 -1
- package/dist/errors/BadRequestPage.d.ts.map +1 -1
- package/dist/errors/ErrorDisplay.d.ts +2 -2
- package/dist/errors/ErrorDisplay.d.ts.map +1 -1
- package/dist/errors/ErrorExplosion.d.ts +1 -2
- package/dist/errors/ErrorExplosion.d.ts.map +1 -1
- package/dist/errors/ForbiddenPage.d.ts +1 -1
- package/dist/errors/ForbiddenPage.d.ts.map +1 -1
- package/dist/errors/NotFoundPage.d.ts +1 -1
- package/dist/errors/NotFoundPage.d.ts.map +1 -1
- package/dist/errors/PageError.d.ts +1 -2
- package/dist/errors/PageError.d.ts.map +1 -1
- package/dist/errors/UnauthorizedPage.d.ts +1 -1
- package/dist/errors/UnauthorizedPage.d.ts.map +1 -1
- package/dist/errors/ViewNotChanged.d.ts +1 -2
- package/dist/errors/ViewNotChanged.d.ts.map +1 -1
- package/dist/errors/index.js +74 -44
- package/dist/errors/index.js.map +1 -1
- package/dist/expandable-action-panel/index.js +2 -2
- package/dist/flex/Flex.d.ts +6 -3
- package/dist/flex/Flex.d.ts.map +1 -1
- package/dist/flex/FlexCenter.d.ts +1 -1
- package/dist/flex/FlexCenter.d.ts.map +1 -1
- package/dist/flex/FlexContainer.d.ts +7 -1
- package/dist/flex/FlexContainer.d.ts.map +1 -1
- package/dist/flex/FlexItem.d.ts +7 -1
- package/dist/flex/FlexItem.d.ts.map +1 -1
- package/dist/flex/FlexSpacer.d.ts +7 -1
- package/dist/flex/FlexSpacer.d.ts.map +1 -1
- package/dist/flex/PredefinedFlex.d.ts +7 -1
- package/dist/flex/PredefinedFlex.d.ts.map +1 -1
- package/dist/flex/index.js +1 -1
- package/dist/floating-arrow/FloatingArrow.d.ts +4 -1
- package/dist/floating-arrow/FloatingArrow.d.ts.map +1 -1
- package/dist/floating-arrow/index.js +1 -1
- package/dist/grid/Grid.d.ts +4 -2
- package/dist/grid/Grid.d.ts.map +1 -1
- package/dist/grid/GridContainer.d.ts +7 -1
- package/dist/grid/GridContainer.d.ts.map +1 -1
- package/dist/grid/GridItem.d.ts +7 -1
- package/dist/grid/GridItem.d.ts.map +1 -1
- package/dist/grid/index.js +1 -1
- package/dist/image/index.js +3 -3
- package/dist/layout-picker/index.js +11 -13
- package/dist/layout-picker/index.js.map +1 -1
- package/dist/layout-picker/ui/LayoutPicker.d.ts.map +1 -1
- package/dist/list/List.d.ts +9 -9
- package/dist/list/List.d.ts.map +1 -1
- package/dist/list/index.js +23 -16
- package/dist/list/index.js.map +1 -1
- package/dist/listbox/Listbox.d.ts.map +1 -1
- package/dist/listbox/index.js +10 -16
- package/dist/listbox/index.js.map +1 -1
- package/dist/misc/CopyTextWrapper.d.ts +1 -1
- package/dist/misc/CopyTextWrapper.d.ts.map +1 -1
- package/dist/misc/OneStepScroller.d.ts +1 -1
- package/dist/misc/OneStepScroller.d.ts.map +1 -1
- package/dist/misc/Scrollable.d.ts +9 -7
- package/dist/misc/Scrollable.d.ts.map +1 -1
- package/dist/misc/SkeletonLine.d.ts +1 -1
- package/dist/misc/SkeletonLine.d.ts.map +1 -1
- package/dist/misc/StateIcon.d.ts +6 -7
- package/dist/misc/StateIcon.d.ts.map +1 -1
- package/dist/misc/index.d.ts +1 -0
- package/dist/misc/index.d.ts.map +1 -1
- package/dist/misc/index.js +1 -1
- package/dist/modal/Modal.d.ts +14 -5
- package/dist/modal/Modal.d.ts.map +1 -1
- package/dist/modal/index.js +1 -1
- package/dist/multi-select/index.js +247 -232
- package/dist/multi-select/index.js.map +1 -1
- package/dist/multi-select/ui/MultiSelect.d.ts +7 -2
- package/dist/multi-select/ui/MultiSelect.d.ts.map +1 -1
- package/dist/multi-select/ui/ODataMultiSelect.d.ts +1 -2
- package/dist/multi-select/ui/ODataMultiSelect.d.ts.map +1 -1
- package/dist/notifications/index.js +5 -7
- package/dist/notifications/index.js.map +1 -1
- package/dist/option/Option.d.ts +3 -3
- package/dist/option/OptionContentContainer.d.ts +7 -0
- package/dist/option/OptionContentContainer.d.ts.map +1 -0
- package/dist/option/index.js.map +1 -1
- package/dist/picker/PickerOptions.d.ts +3 -1
- package/dist/picker/PickerOptions.d.ts.map +1 -1
- package/dist/picker/PickerPopup.d.ts +1 -1
- package/dist/picker/PickerPopup.d.ts.map +1 -1
- package/dist/picker/PickerTriggerActions.d.ts +7 -2
- package/dist/picker/PickerTriggerActions.d.ts.map +1 -1
- package/dist/picker/PickerTriggerInput.d.ts +7 -2
- package/dist/picker/PickerTriggerInput.d.ts.map +1 -1
- package/dist/picker/index.js +1 -1
- package/dist/polymorphic/PolymorphicComponent.d.ts +1 -1
- package/dist/polymorphic/PolymorphicComponent.d.ts.map +1 -1
- package/dist/polymorphic/index.js +3 -1
- package/dist/polymorphic/index.js.map +1 -1
- package/dist/popover/FloatingPopover.d.ts +1 -1
- package/dist/popover/FloatingPopover.d.ts.map +1 -1
- package/dist/popover/FloatingTooltip.d.ts +2 -2
- package/dist/popover/FloatingTooltip.d.ts.map +1 -1
- package/dist/popover/components/Popover.d.ts +11 -10
- package/dist/popover/components/Popover.d.ts.map +1 -1
- package/dist/popover/components/PopoverContent.d.ts +6 -4
- package/dist/popover/components/PopoverContent.d.ts.map +1 -1
- package/dist/popover/components/PopoverContext.d.ts +2 -1
- package/dist/popover/components/PopoverContext.d.ts.map +1 -1
- package/dist/popover/components/PopoverTrigger.d.ts +1 -1
- package/dist/popover/components/PopoverTrigger.d.ts.map +1 -1
- package/dist/popover/index.js +1 -1
- package/dist/preset-range-date-input/index.js +2 -2
- package/dist/preset-select/index.js +1 -1
- package/dist/radio-button/RadioButton.d.ts +1 -1
- package/dist/radio-button/RadioButton.d.ts.map +1 -1
- package/dist/radio-button/index.js +5 -2
- package/dist/radio-button/index.js.map +1 -1
- package/dist/select/ODataSelect.d.ts +1 -2
- package/dist/select/ODataSelect.d.ts.map +1 -1
- package/dist/select/Select.d.ts.map +1 -1
- package/dist/select/index.js +1 -1
- package/dist/separator/Separator.d.ts +1 -1
- package/dist/separator/Separator.d.ts.map +1 -1
- package/dist/separator/index.js +1 -1
- package/dist/simple-table/index.js +1 -1
- package/dist/slider/Slider.d.ts.map +1 -1
- package/dist/slider/SliderInput.d.ts.map +1 -1
- package/dist/slider/SliderPopoverToggle.d.ts +11 -0
- package/dist/slider/SliderPopoverToggle.d.ts.map +1 -0
- package/dist/slider/index.js +299 -278
- package/dist/slider/index.js.map +1 -1
- package/dist/sortable/Sortable.d.ts.map +1 -1
- package/dist/sortable/SortableDragHandle.d.ts +1 -1
- package/dist/sortable/SortableDragHandle.d.ts.map +1 -1
- package/dist/sortable/index.js +1 -1
- package/dist/state-select/index.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/table/index.js +1 -1
- package/dist/table-editor/index.js +1 -1
- package/dist/table-sorting/index.js +1 -1
- package/dist/tabs/index.js +27 -28
- package/dist/tabs/index.js.map +1 -1
- package/dist/tabs/ui/TabsBox.d.ts +1 -1
- package/dist/tabs/ui/TabsBox.d.ts.map +1 -1
- package/dist/tabs/ui/TabsLayout.d.ts +11 -7
- package/dist/tabs/ui/TabsLayout.d.ts.map +1 -1
- package/dist/tabs/ui/TabsPanel.d.ts +3 -3
- package/dist/tabs/ui/TabsPanel.d.ts.map +1 -1
- package/dist/tabs/ui/TabsTabList.d.ts +2 -2
- package/dist/tabs/ui/TabsTabList.d.ts.map +1 -1
- package/dist/text/HighlightText.d.ts +2 -2
- package/dist/text/HighlightText.d.ts.map +1 -1
- package/dist/text/index.js +7 -2
- package/dist/text/index.js.map +1 -1
- package/dist/text-editor/index.js +2 -2
- package/dist/toolbar/Toolbar.d.ts +8 -2
- package/dist/toolbar/Toolbar.d.ts.map +1 -1
- package/dist/toolbar/index.js +8 -4
- package/dist/toolbar/index.js.map +1 -1
- package/dist/tree-select/TreeNodeContent.d.ts +3 -1
- package/dist/tree-select/TreeNodeContent.d.ts.map +1 -1
- package/dist/tree-select/TreePickerBase.d.ts.map +1 -1
- package/dist/tree-select/index.js +409 -332
- package/dist/tree-select/index.js.map +1 -1
- package/dist/tree-table/index.js +1 -1
- package/package.json +1 -1
- package/storybook-static/assets/{Badge-BKRvorSi.js → Badge-r7lsdHne.js} +1 -1
- package/storybook-static/assets/{Badge.stories-19yFfupy.js → Badge.stories-P4qdQ7cm.js} +1 -1
- package/storybook-static/assets/{BadgeList-DMkfxply.js → BadgeList-8NyPAV2Q.js} +1 -1
- package/storybook-static/assets/{BarcodeScannerDialog.stories-DdnHxu5x.js → BarcodeScannerDialog.stories--TadwGdZ.js} +1 -1
- package/storybook-static/assets/{Button-Di-0Ionw.js → Button-BP0DDcNq.js} +1 -1
- package/storybook-static/assets/{Button-CoOZeR_z.js → Button-X3OT5zE7.js} +2 -2
- package/storybook-static/assets/{Button.stories-Bd1To5BN.js → Button.stories-CFiUr_xE.js} +1 -1
- package/storybook-static/assets/CalendarView-nWuZBE9T.js +1 -0
- package/storybook-static/assets/{CheckBox-DSmGYEML.js → CheckBox-BId2Zf_m.js} +1 -1
- package/storybook-static/assets/{CheckBox-DfRTTXg1.js → CheckBox-Bde9tud-.js} +1 -1
- package/storybook-static/assets/{CheckBox.stories-DaldWgEI.js → CheckBox.stories-BVU9Rkai.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-DIhia6KS.js → Color-6AOWCN3U-BeUy9gum.js} +1 -1
- package/storybook-static/assets/{ContextMenu-BGMQHT9V.js → ContextMenu-BS2UVgbu.js} +6 -2
- package/storybook-static/assets/ContextMenu-Byksyz_8.js +33 -0
- package/storybook-static/assets/ContextMenu.stories-DmJPp2YR.js +37 -0
- package/storybook-static/assets/{DateInput-DUl5Bb0j.js → DateInput-CQe_1Dk-.js} +8 -1
- package/storybook-static/assets/{DateInput-MgdMtvtr.js → DateInput-CgETMk9B.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-B6Ol0Ak3.js → DateInput.stories-BOst6EKv.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-CPj0pSGc.js → DateRangePresetSelect-CxrNYBTe.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-C4MVqjXa.js → DateRangePresetSelect-DHJ31vIB.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-tPaMURtH.js → DateRangePresetSelect.stories-CiyN1joN.js} +1 -1
- package/storybook-static/assets/{Detail-DnHTVRb5.js → Detail-V_NYrUJR.js} +1 -1
- package/storybook-static/assets/Detail.stories-B4tf6inN.js +56 -0
- package/storybook-static/assets/{Dialog-COpvqcXi.js → Dialog-B6miFej7.js} +1 -1
- package/storybook-static/assets/{Dialog-LMnrvBpx.js → Dialog-DNTx5Unm.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-BE2I5ny2.js → Dialog.stories-BS1dDTLW.js} +1 -1
- package/storybook-static/assets/{Disclosure-BZ3jd5nu.js → Disclosure-4sf5BIn1.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-cMcF8a8I.js → Disclosure.stories-DhUQNdEC.js} +1 -1
- package/storybook-static/assets/DisclosureGroup-Codiur77.js +2 -0
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-CurHdzu8.js → DocsRenderer-JROSPFPF-yT2aWNaF.js} +1 -1
- package/storybook-static/assets/{DropZone-VEmgdfs6.js → DropZone-D4rl2WEV.js} +1 -1
- package/storybook-static/assets/{DropZone-DGMAbY1z.js → DropZone-Du0BQAyO.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-B8N17-bV.js → DropZone.stories-B8iPjYH_.js} +1 -1
- package/storybook-static/assets/DropdownMenu-BcdS3oNz.js +21 -0
- package/storybook-static/assets/{ExpandableActionPanel-C7CFQZLD.js → ExpandableActionPanel-6u6YJanI.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-CnBr0s9R.js → ExpandableActionPanel.stories-D-CZHUv0.js} +1 -1
- package/storybook-static/assets/{Flex-RpqsC-gQ.js → Flex-DWi0hQ-f.js} +1 -1
- package/storybook-static/assets/Flex.stories-CKKi33JK.js +300 -0
- package/storybook-static/assets/FlexContainer-BMK_YH72.js +1 -0
- package/storybook-static/assets/{FlexItem-pu3E11Sf.js → FlexItem-DpSHNBxJ.js} +2 -2
- package/storybook-static/assets/FloatingPopover-D9nTd47B.js +1 -0
- package/storybook-static/assets/FormattedTableCell-DyBhk9rG.js +15 -0
- package/storybook-static/assets/{Grid-CzO0Ae1r.js → Grid-BZgzDCLK.js} +2 -2
- package/storybook-static/assets/{Grid-BRnqEtg1.js → Grid-DbvUGBEN.js} +1 -1
- package/storybook-static/assets/{Grid.stories-DXY7Cvfu.js → Grid.stories-BeEAzTxD.js} +4 -4
- package/storybook-static/assets/{GridContainer-fKYgDsLl.js → GridContainer-B82Onj6x.js} +2 -2
- package/storybook-static/assets/{ImageCropper.stories-ZnvbFN71.js → ImageCropper.stories-SDIt19aO.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-DUOhCfac.js → ImageRenderer-Bzg27pq7.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-Dj6NQm2k.js → ImageRenderer.stories-C-IE84zV.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-QTzOsByD.js → ImageView.stories-DIcx2Krs.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-CpnUEgZW.js → ImageViewer.stories-CQTy0uPX.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-B1PicLUw.js → ImageViewerRuntime-CA5BYQsX.js} +1 -1
- package/storybook-static/assets/{Input-B8eGQXlp.js → Input-D8uMye_9.js} +1 -1
- package/storybook-static/assets/{Input-DnFc_Pwx.js → Input-DmsN6uC_.js} +1 -1
- package/storybook-static/assets/{Input.stories-C6CbYvZP.js → Input.stories-D8QWPnMD.js} +1 -1
- package/storybook-static/assets/{InputDateTime-DoMduRde.js → InputDateTime-Cczll-bH.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories--LHpvJjY.js → InputDateTime.stories-DeZ6XHwa.js} +1 -1
- package/storybook-static/assets/{InputFile-CunQ8F4s.js → InputFile-BbPjLN4E.js} +1 -1
- package/storybook-static/assets/{InputFile-DFv3WAWa.js → InputFile-C0_L0zTd.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-B0WZhic1.js → InputFile.stories-Di_6BkX1.js} +1 -1
- package/storybook-static/assets/{InputFiles-DyiPQ_tH.js → InputFiles-B3uOwqKF.js} +1 -1
- package/storybook-static/assets/{InputFiles-CKDPmjWY.js → InputFiles-CF60S_qG.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-BbP_bEnL.js → InputFiles.stories-BkTiEPX6.js} +1 -1
- package/storybook-static/assets/{InputFilesList-BAIGwV7V.js → InputFilesList-C9cudcHe.js} +1 -1
- package/storybook-static/assets/{InputImage-2G1pRNbw.js → InputImage-Aq_ZXmtw.js} +1 -1
- package/storybook-static/assets/{InputImage-ZvEB_TIT.js → InputImage-Dx0DIf4l.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-BiShLRcw.js → InputImage.stories-D7LfEcn4.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-CT99QfHX.js → InteractiveComponents-DP5FyU4S.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-BPTICQZz.js → InteractiveComponents.stories-CE5L5PAB.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-BDpc8LBa.js → LayoutPicker-BehxFQsU.js} +2 -2
- package/storybook-static/assets/{LayoutPicker-Cg_AM-pj.js → LayoutPicker-CW1W-CAf.js} +2 -1
- package/storybook-static/assets/{LayoutPicker.stories-Ca9WZdPW.js → LayoutPicker.stories-DtvfpOUS.js} +1 -1
- package/storybook-static/assets/Listbox-Bn_6WyQc.js +1 -0
- package/storybook-static/assets/{Listbox-LbbFtte9.js → Listbox-VcD28kxl.js} +2 -1
- package/storybook-static/assets/{Listbox.stories-xDpbFNZk.js → Listbox.stories-CL6fJlUm.js} +1 -1
- package/storybook-static/assets/{Modal-CXd2j0up.js → Modal-D0D5WZ_O.js} +1 -1
- package/storybook-static/assets/Modal-DrSX0i3a.js +1 -0
- package/storybook-static/assets/{Modal.stories-cNLvFjmT.js → Modal.stories-Ch3P8_kY.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-ClXvSB9a.js → ModalManagerProvider-B0Lf7xX0.js} +1 -1
- package/storybook-static/assets/MultiSelect-Bw3qf8eW.js +2 -0
- package/storybook-static/assets/{MultiSelect-Na2VdNy3.js → MultiSelect-Cmxa5Vho.js} +4 -1
- package/storybook-static/assets/MultiSelect-SJBp1Ymv.css +1 -0
- package/storybook-static/assets/{MultiSelect.stories-4nFshdtz.js → MultiSelect.stories-DKHPBUWD.js} +1 -1
- package/storybook-static/assets/NoData-seFnJNiE.js +1 -0
- package/storybook-static/assets/{NotificationsHost-CrLL4WK9.js → NotificationsHost-d770FjSM.js} +11 -8
- package/storybook-static/assets/{NotificationsHost.stories-Ci2q0W9-.js → NotificationsHost.stories-BYmVl44l.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect-Cc09uTB8.js → ODataMultiSelect-BN0pcCmQ.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-CzGzREa9.js → ODataMultiSelect.stories-D5zrkaFW.js} +2 -2
- package/storybook-static/assets/{ODataSelect-DqoRg5pz.js → ODataSelect-C5DXRRVH.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-BCcxERn3.js → ODataSelect.stories-ClYp08JR.js} +2 -2
- package/storybook-static/assets/{ODataTreeMultiSelect-qZEcSE5O.js → ODataTreeMultiSelect-CsvSq1G1.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-Bfees7Qr.js → ODataTreeMultiSelect.stories-DFXLQjms.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-IOVS6uQc.js → ODataTreeSelect-CdN-NwV7.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-CO7DClzd.js → ODataTreeSelect.stories-CDffbvxi.js} +1 -1
- package/storybook-static/assets/OneStepScroller-qXHo2r0J.js +5 -0
- package/storybook-static/assets/Option-tEWfKgN_.js +10 -0
- package/storybook-static/assets/OptionButton-DOj_dfd1.js +1 -0
- package/storybook-static/assets/OptionContent-6iwuLpQP.js +1 -0
- package/storybook-static/assets/OptionContentContainer-DbdHO42m.js +2 -0
- package/storybook-static/assets/{PeriodSelect-D-jXJf5C.js → PeriodSelect-Bo_B6jdw.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BAVDztkI.js → PeriodSelect-DffBuv6v.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-CscsENT9.js → PeriodSelect.stories-Boq-fBL8.js} +1 -1
- package/storybook-static/assets/{PickerField-CRtltoce.js → PickerField-fMVQUcBX.js} +1 -1
- package/storybook-static/assets/PickerTriggerActions-zS0JUD-3.js +2 -0
- package/storybook-static/assets/PolymorphicComponent-NBvIz9JD.js +1 -0
- package/storybook-static/assets/Popover-5c_n39x0.js +55 -0
- package/storybook-static/assets/Popover-u02JbpuP.js +46 -0
- package/storybook-static/assets/Popover.stories-BUVgJJQI.js +63 -0
- package/storybook-static/assets/{PresetRangeDateInput-VZnM8RNV.js → PresetRangeDateInput-EiaEd6Qp.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-CVPMYlEV.js → PresetRangeDateInput-TyV-u0Db.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-DdBWlSV-.js → PresetRangeDateInput.stories-jJq5Gkdb.js} +1 -1
- package/storybook-static/assets/{PresetSelect-C7YYBjlL.js → PresetSelect-Cnl_fXjS.js} +1 -1
- package/storybook-static/assets/{README-6XPUoxFl.js → README-10_nKrEg.js} +1 -1
- package/storybook-static/assets/{README-DIWsYBR7.js → README-6n5fAnyG.js} +1 -1
- package/storybook-static/assets/{README-oKLTQYfV.js → README-7mbN7jNm.js} +1 -1
- package/storybook-static/assets/{README-D2AT2-yD.js → README-8qj7XGDa.js} +1 -1
- package/storybook-static/assets/{README-DADnaXLy.js → README-8vaqVs2t.js} +1 -1
- package/storybook-static/assets/{README-ZxRwqfIH.js → README-AbbeH5rC.js} +1 -1
- package/storybook-static/assets/{README-Bk1oSDWQ.js → README-B-K2UPpo.js} +1 -1
- package/storybook-static/assets/{README-DoxVtmRh.js → README-B-z6znlC.js} +1 -1
- package/storybook-static/assets/{README-BL8ZNGNi.js → README-B6uVB1ib.js} +1 -1
- package/storybook-static/assets/{README-B0FbTpix.js → README-B7f6XRLa.js} +1 -1
- package/storybook-static/assets/{README-BGBxEe4u.js → README-BGEviJbA.js} +1 -1
- package/storybook-static/assets/{README-C-IUw1gX.js → README-BPWr_0XE.js} +1 -1
- package/storybook-static/assets/{README-_KzyG4dS.js → README-BWiCGCpy.js} +1 -1
- package/storybook-static/assets/{README-DrTR5pSr.js → README-BfF9g6q6.js} +1 -1
- package/storybook-static/assets/{README-2NTkucdH.js → README-BgbmWbpJ.js} +1 -1
- package/storybook-static/assets/{README-DC0vNdOD.js → README-Bn7SBLqL.js} +1 -1
- package/storybook-static/assets/{README-w9FMhq0X.js → README-BoXMNqUS.js} +1 -1
- package/storybook-static/assets/{README-DyWhmOFY.js → README-BoZbB8t8.js} +1 -1
- package/storybook-static/assets/{README-b3wA6wFr.js → README-BsHrwATK.js} +1 -1
- package/storybook-static/assets/{README-CB5BpIBF.js → README-By7MmJad.js} +1 -1
- package/storybook-static/assets/{README-DWzfTSuq.js → README-BylyIJ4z.js} +1 -1
- package/storybook-static/assets/{README-CeNQeTK-.js → README-ByxHEXaq.js} +1 -1
- package/storybook-static/assets/{README-UcyyK9jn.js → README-CO0Anr1W.js} +1 -1
- package/storybook-static/assets/{README-BdsFByUw.js → README-CXhBUq08.js} +1 -1
- package/storybook-static/assets/{README-Bvo0Qxde.js → README-CXlUZ-Tw.js} +1 -1
- package/storybook-static/assets/{README-CTF9mVZL.js → README-CZBT22Qx.js} +1 -1
- package/storybook-static/assets/{README-B0Nb0jf2.js → README-CZaKBu1r.js} +1 -1
- package/storybook-static/assets/{README-C_lKreF9.js → README-Cc5RUdsX.js} +1 -1
- package/storybook-static/assets/{README-BZlnzGAh.js → README-CmCyESsg.js} +1 -1
- package/storybook-static/assets/{README-jvtwVY_n.js → README-CoofcGyA.js} +1 -1
- package/storybook-static/assets/{README-Wli4AXG5.js → README-CqCDXjY-.js} +1 -1
- package/storybook-static/assets/{README-DOi6rx7n.js → README-CqMgUXym.js} +1 -1
- package/storybook-static/assets/{README-na5mQX4V.js → README-DB3HzmYa.js} +1 -1
- package/storybook-static/assets/{README-DMwF_O1R.js → README-DBqb3xHL.js} +1 -1
- package/storybook-static/assets/{README-CvaizZr1.js → README-DKMzvCHg.js} +1 -1
- package/storybook-static/assets/{README-CqiNQGIJ.js → README-DLGk_zi3.js} +1 -1
- package/storybook-static/assets/{README-Dm7CwuVP.js → README-DT4BWDzj.js} +1 -1
- package/storybook-static/assets/{README-Brn9Tjjc.js → README-DXzLMFnF.js} +1 -1
- package/storybook-static/assets/{README-8L1vpZcz.js → README-DZKQ2NbJ.js} +1 -1
- package/storybook-static/assets/{README-C7N5_6-c.js → README-DnIK-CvZ.js} +1 -1
- package/storybook-static/assets/{README-GChrAHFQ.js → README-DsEaeYrz.js} +1 -1
- package/storybook-static/assets/{README-DkBG5Azm.js → README-DsqwQGJx.js} +1 -1
- package/storybook-static/assets/{README-Dr8TxFTe.js → README-DyhDd6j2.js} +1 -1
- package/storybook-static/assets/{README-HWuoKwKL.js → README-E09CwLzJ.js} +1 -1
- package/storybook-static/assets/{README-DlfWWC7n.js → README-W30_dPSQ.js} +1 -1
- package/storybook-static/assets/{README-DOBIWrus.js → README-WtLMdn_H.js} +1 -1
- package/storybook-static/assets/{README-g1VWHzAJ.js → README-_UuZJvdY.js} +1 -1
- package/storybook-static/assets/{README-BD-WSEvQ.js → README-bJALHbSR.js} +1 -1
- package/storybook-static/assets/{README-Dmu5lsNT.js → README-e3Zi9n04.js} +1 -1
- package/storybook-static/assets/{README-DgXAMdBY.js → README-g4l3WFXZ.js} +1 -1
- package/storybook-static/assets/{README-jQcGKqqm.js → README-jb10Ekr5.js} +1 -1
- package/storybook-static/assets/{README-CTwfFqJG.js → README-q6R_bF6h.js} +1 -1
- package/storybook-static/assets/{README-BGmO6U9j.js → README-tDgobAYS.js} +1 -1
- package/storybook-static/assets/{RadioButton-Dgkz1EWU.js → RadioButton-DGjO61a9.js} +1 -1
- package/storybook-static/assets/RadioButton-j3O4woG8.js +1 -0
- package/storybook-static/assets/{RadioButton.stories-DO14jTfm.js → RadioButton.stories-COGMYQcq.js} +1 -1
- package/storybook-static/assets/{RadioGroup-Db0AhiKo.js → RadioGroup-Cuj2D_RZ.js} +1 -1
- package/storybook-static/assets/{RadioGroup-BSiqjVai.js → RadioGroup-D9samx7D.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-C0D6n83q.js → RadioGroup.stories-KSDvpgqY.js} +1 -1
- package/storybook-static/assets/Scrollable-DsOw--4y.js +1 -0
- package/storybook-static/assets/Scrollable-tPrIOchd.js +18 -0
- package/storybook-static/assets/Scrollable.stories-B7d_6eGB.js +1 -0
- package/storybook-static/assets/Select-D0CHiGkz.js +12 -0
- package/storybook-static/assets/{Select-D8X-SkP2.js → Select-h0tWQbii.js} +3 -1
- package/storybook-static/assets/{Select.stories-8_zvonmc.js → Select.stories-GmGbpUoi.js} +1 -1
- package/storybook-static/assets/Separator-C8aQcNns.js +1 -0
- package/storybook-static/assets/Separator-Dh8kzf-5.js +14 -0
- package/storybook-static/assets/Separator.stories-nQ9bDdo1.js +14 -0
- package/storybook-static/assets/{SerializableSelect-ii6T140l.js → SerializableSelect-BJAxQ8an.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-Ba3ABMGt.js → SerializableSelect.stories-CzVCg1_7.js} +1 -1
- package/storybook-static/assets/{ShimmerText-C6vkZwUV.js → ShimmerText-DnEOvvJA.js} +1 -1
- package/storybook-static/assets/{ShimmerText.stories-CVpSxXHJ.js → ShimmerText.stories-D2XRPcMC.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-96-mrjq8.js → SingleDateTimeInput-Bwn8kqI3.js} +8 -1
- package/storybook-static/assets/{SingleDateTimeInput-DpETPR89.js → SingleDateTimeInput-DwY38Bzb.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-JhviurJO.js → SingleDateTimeInput.stories-DKq1_AqA.js} +1 -1
- package/storybook-static/assets/{Slider-B27TdvRV.js → Slider-CT0jMXMY.js} +8 -1
- package/storybook-static/assets/Slider-KiXLZUpw.js +1 -0
- package/storybook-static/assets/{Slider.stories-d1YeKe5r.js → Slider.stories-Cmcm8HlR.js} +1 -1
- package/storybook-static/assets/SliderInput-Dd_yvyMG.js +3 -0
- package/storybook-static/assets/{SliderInput-D2d23mEI.js → SliderInput-Unp3YEcU.js} +8 -1
- package/storybook-static/assets/{SliderInput.stories-CwqT79oE.js → SliderInput.stories-C0MwvTOV.js} +1 -1
- package/storybook-static/assets/{Sortable-DiJuiI6V.js → Sortable-CnCowZw-.js} +4 -2
- package/storybook-static/assets/Sortable.stories-DCrIurAg.js +44 -0
- package/storybook-static/assets/{Splitter-QwdfWNbm.js → Splitter-BErks2lB.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-C2iDPz8c.js → Splitter.stories-DyRlCVUo.js} +1 -1
- package/storybook-static/assets/{StateSelect-D1ZDM6bC.js → StateSelect-DXfsbduM.js} +1 -1
- package/storybook-static/assets/{StateSelect-Bw9H1Cus.js → StateSelect-DuVzqi0t.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-DEFvQ15O.js → StateSelect.stories-CnIXqGFB.js} +1 -1
- package/storybook-static/assets/{StatusIndicator-D6Pbdz37.js → StatusIndicator-Bz3JF899.js} +1 -1
- package/storybook-static/assets/{StatusIndicator.stories-COgpy5cK.js → StatusIndicator.stories-B5RMchH3.js} +1 -1
- package/storybook-static/assets/{StringToggle.stories-BFwMh0Yd.js → StringToggle.stories-CcR8KHGF.js} +1 -1
- package/storybook-static/assets/{Switch-Bmj2AItH.js → Switch-Bo-dd4nL.js} +1 -1
- package/storybook-static/assets/{Switch-DyDk152g.js → Switch-a7GMbDn9.js} +1 -1
- package/storybook-static/assets/{Switch.stories-C10NxPL4.js → Switch.stories-B9c9CAmZ.js} +1 -1
- package/storybook-static/assets/{Table-YcEwF4aO.js → Table-BgmEmcbL.js} +1 -1
- package/storybook-static/assets/{Table.stories-DgxFS9Sa.js → Table.stories-BByDPmdZ.js} +1 -1
- package/storybook-static/assets/{TableEditor.stories-CSMoxO4O.js → TableEditor.stories-DJi7VPcY.js} +1 -1
- package/storybook-static/assets/{Tabs-DOsPN2X1.js → Tabs-CV1ykDlt.js} +2 -3
- package/storybook-static/assets/Tabs.stories-DOyJdrcR.js +57 -0
- package/storybook-static/assets/{TabsBox-B3REnb6D.css → TabsBox-DuBKU62M.css} +1 -1
- package/storybook-static/assets/{TabsBox-Ovukgo9G.js → TabsBox-n38x7_yO.js} +1 -1
- package/storybook-static/assets/{TagInput-BQBOGr9G.js → TagInput-j4mVWIf0.js} +1 -1
- package/storybook-static/assets/{TagInput.stories-DAAyJlgm.js → TagInput.stories-DSU97IRU.js} +1 -1
- package/storybook-static/assets/{Text-fdwuak_J.js → Text-COGTV38X.js} +1 -1
- package/storybook-static/assets/{Textarea-A22Efyk-.js → Textarea-BcgmS9aD.js} +1 -1
- package/storybook-static/assets/{Textarea-D80ZPpEy.js → Textarea-Byqjr2Ve.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-DfaOYMoN.js → Textarea.stories-D1gXsWxK.js} +1 -1
- package/storybook-static/assets/{TimePanel-Bd5T_SfL.js → TimePanel-DzFFLXJP.js} +1 -1
- package/storybook-static/assets/{TimePanel.stories-D6TIpKp4.js → TimePanel.stories-287q5ipF.js} +1 -1
- package/storybook-static/assets/{Toggle-BvHMq6f_.js → Toggle-CCkzi_xC.js} +1 -1
- package/storybook-static/assets/{Toggle-DUyCRH0o.js → Toggle-KtpVC-vX.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-ZPgC-EWw.js → Toggle.stories-BLKa6Zst.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-DTMybWfP.js → TreeMultiSelect-CbnCiXFa.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-DTmB9s8s.js → TreeMultiSelect-sYAglJIC.js} +2 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-1_HB74Gf.js → TreeMultiSelect.stories-DGw_tJQ5.js} +1 -1
- package/storybook-static/assets/TreePickerBase-ClWTQVKW.css +1 -0
- package/storybook-static/assets/TreePickerBase-wz0-Y-eg.js +76 -0
- package/storybook-static/assets/{TreeSelect-CTN6cRRr.js → TreeSelect-BCOJNrl1.js} +1 -1
- package/storybook-static/assets/{TreeSelect-UsZGYhUO.js → TreeSelect-BJ6C_2pM.js} +2 -1
- package/storybook-static/assets/{TreeSelect.stories-B01pZcR9.js → TreeSelect.stories-DKdmUNAI.js} +1 -1
- package/storybook-static/assets/{TreeTable-dr3jK3Ih.js → TreeTable-DIRsmeC8.js} +1 -1
- package/storybook-static/assets/{TreeTable.stories-B1DPasDc.js → TreeTable.stories-BfqeLJU6.js} +1 -1
- package/storybook-static/assets/{blocks-Cw5Dm88b.js → blocks-r6nP1Mk3.js} +3 -3
- package/storybook-static/assets/{check-028VTQ8f.js → check-CX66-EtS.js} +1 -1
- package/storybook-static/assets/{chevron-down-CjXVIhzi.js → chevron-down-BpTVPmXw.js} +1 -1
- package/storybook-static/assets/{chevron-left-CktI1oFP.js → chevron-left-BDyvowID.js} +1 -1
- package/storybook-static/assets/{chevron-right-CF10QSRI.js → chevron-right-PitONC71.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-C0ehDnCq.js → chunk-W22LQPXL-Bd54JRSO.js} +1 -1
- package/storybook-static/assets/{circle-alert-s0HpHvQO.js → circle-alert-BxfK632o.js} +1 -1
- package/storybook-static/assets/{circle-check-C7Lv1fv9.js → circle-check-CQ0mrCVh.js} +1 -1
- package/storybook-static/assets/{components-ClxgOUq5.js → components-CJIwocXl.js} +3 -3
- package/storybook-static/assets/contextMenu-BodN1HdA.js +2 -0
- package/storybook-static/assets/{download-B1U5w3LU.js → download-C_lZf2f4.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-CyNWkXBV.js → floating-ui.react-BzwQR5CG.js} +1 -1
- package/storybook-static/assets/{foundationApi-CY0sxk8w.js → foundationApi-BgE0geET.js} +1 -1
- package/storybook-static/assets/{foundationLib-BCpSUA25.js → foundationLib-6nKeXUFS.js} +1 -1
- package/storybook-static/assets/{hooks-DjR-EyBl.js → hooks-DDySZJGR.js} +1 -1
- package/storybook-static/assets/{iframe-woVbsQH3.js → iframe-B9PXVErw.js} +4 -4
- package/storybook-static/assets/iframe-f5g4GUQw.js +1 -0
- package/storybook-static/assets/{info-DKbXBIbQ.js → info-rdW9neC9.js} +1 -1
- package/storybook-static/assets/{odata-CMCuN2Rx.js → odata-D6cOAxLt.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-a4Q2PLas.js → odataStoryFixtures-CGQ31IO_.js} +1 -1
- package/storybook-static/assets/{react-D3CyilRt.js → react-BMktiE65.js} +1 -1
- package/storybook-static/assets/{refresh-cw-DXEJelAO.js → refresh-cw-CfKvrc1N.js} +1 -1
- package/storybook-static/assets/{settings-2-CKbiQBX8.js → settings-2-Drz-L5J9.js} +1 -1
- package/storybook-static/assets/sortable-BMuu2DRC.js +1 -0
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-CLptde2b.js → syntaxhighlighter-QEQV7K2Y-eBmofw1l.js} +1 -1
- package/storybook-static/assets/{trash-2-CPWRIQlJ.js → trash-2-DEbF1hh6.js} +1 -1
- package/storybook-static/assets/{triangle-alert-XjzWCHp5.js → triangle-alert--nwD_1ZX.js} +1 -1
- package/storybook-static/assets/{ui-FA-1R8mO.css → ui-Bpz_yxm8.css} +1 -1
- package/storybook-static/assets/{uiClasses-DNnVkKPr.js → uiClasses-Bar5W7-L.js} +1 -1
- package/storybook-static/assets/{useODataSelectBase-ZGFa3pdT.js → useODataSelectBase-DSOGiMIw.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-DAdLowou.js → useODataTreeData-Cn_XaKz_.js} +1 -1
- package/storybook-static/assets/usePickerQuery-B5ZZQg8g.js +1 -0
- package/storybook-static/assets/usePickerTriggerController-Cqy5IfOJ.js +6 -0
- package/storybook-static/assets/{x-D2Q9PGsq.js → x-DSHJbBBz.js} +1 -1
- package/storybook-static/iframe.html +2 -2
- package/storybook-static/index.json +1 -1
- package/storybook-static/project.json +1 -1
- package/dist/chunks/CalendarView-CwbPJG2Y.js.map +0 -1
- package/dist/chunks/button-D7GAU2Wa.js +0 -72
- package/dist/chunks/button-D7GAU2Wa.js.map +0 -1
- package/dist/chunks/context-menu-BQePxRpu.js +0 -532
- package/dist/chunks/context-menu-BQePxRpu.js.map +0 -1
- package/dist/chunks/flex-DtXK7OM4.js +0 -207
- package/dist/chunks/flex-DtXK7OM4.js.map +0 -1
- package/dist/chunks/grid-dI94AAbi.js.map +0 -1
- package/dist/chunks/misc-CGQOXXCy.js.map +0 -1
- package/dist/chunks/modal-febBsMyR.js.map +0 -1
- package/dist/chunks/picker-BA6okKnz.js.map +0 -1
- package/dist/chunks/popover-yl5DVe06.js +0 -245
- package/dist/chunks/popover-yl5DVe06.js.map +0 -1
- package/dist/chunks/select-DblNSc5H.js.map +0 -1
- package/dist/chunks/separator-CIqnk2z9.js +0 -15
- package/dist/chunks/separator-CIqnk2z9.js.map +0 -1
- package/storybook-static/assets/CalendarView-Dz8cY1fo.js +0 -1
- package/storybook-static/assets/ContextMenu-XS7B8QUC.js +0 -1
- package/storybook-static/assets/ContextMenu.stories-Dp2t2BZa.js +0 -37
- package/storybook-static/assets/CustomOptionButton-DNd0GDWp.js +0 -1
- package/storybook-static/assets/Detail.stories-CXg_w4qM.js +0 -56
- package/storybook-static/assets/DisclosureGroup-JNnTj18G.js +0 -2
- package/storybook-static/assets/DropdownMenu-xjOtBneA.js +0 -1
- package/storybook-static/assets/Flex.stories-CCVNsX23.js +0 -300
- package/storybook-static/assets/FlexContainer-BWyPlTMB.js +0 -1
- package/storybook-static/assets/FloatingPopover-D6tO24aO.js +0 -1
- package/storybook-static/assets/FormattedTableCell-CDaDfaXy.js +0 -15
- package/storybook-static/assets/Listbox-3Npc4PI_.js +0 -1
- package/storybook-static/assets/Modal-Ddmc8-2-.js +0 -1
- package/storybook-static/assets/MultiSelect-BkLCM22R.js +0 -2
- package/storybook-static/assets/MultiSelect-DI_UD1B-.css +0 -1
- package/storybook-static/assets/NoData-bUonNuRR.js +0 -1
- package/storybook-static/assets/OneStepScroller-B_IRz2Rw.js +0 -5
- package/storybook-static/assets/Option-fRoOLqLF.js +0 -10
- package/storybook-static/assets/OptionButton--hnpJ-88.js +0 -1
- package/storybook-static/assets/PickerTriggerActions-BDGEQPvP.js +0 -1
- package/storybook-static/assets/Popover-BYO0DlBg.js +0 -45
- package/storybook-static/assets/Popover-Byy9_Twt.js +0 -2
- package/storybook-static/assets/Popover.stories-8RhemIQg.js +0 -47
- package/storybook-static/assets/RadioButton-DMn-soQD.js +0 -1
- package/storybook-static/assets/Scrollable-BI3OE8gc.js +0 -1
- package/storybook-static/assets/Select-1MNiFkxm.js +0 -12
- package/storybook-static/assets/Slider-DbiDvmoV.js +0 -1
- package/storybook-static/assets/SliderInput-CzYn9gor.js +0 -2
- package/storybook-static/assets/Sortable.stories-DFCzTok0.js +0 -44
- package/storybook-static/assets/Tabs.stories-BdZilcp2.js +0 -57
- package/storybook-static/assets/TreePickerBase-CmFF9pWE.css +0 -1
- package/storybook-static/assets/TreePickerBase-Cu2mneBS.js +0 -76
- package/storybook-static/assets/contextMenu-CWGju9qn.js +0 -2
- package/storybook-static/assets/iframe-Dyd6jnSv.js +0 -1
- package/storybook-static/assets/sortable-CXLU2ip-.js +0 -1
- package/storybook-static/assets/usePickerQuery-CaO8hXyH.js +0 -1
- package/storybook-static/assets/usePickerTriggerController-DWjrt_q_.js +0 -6
- /package/storybook-static/assets/{ui.module-CyEEibCu.js → ui.module-0uniSGT-.js} +0 -0
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
import { t as e } from "./floating-arrow-DKUKx2ZQ.js";
|
|
2
|
-
import { cn as t } from "@ryuzaki13/react-foundation-lib/utils";
|
|
3
|
-
import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
4
|
-
import { cloneElement as a, createContext as o, useCallback as s, useContext as c, useEffect as l, useLayoutEffect as u, useRef as d, useState as f } from "react";
|
|
5
|
-
import { FloatingPortal as p, arrow as m, autoUpdate as h, flip as g, offset as _, shift as v, size as y, useDismiss as b, useFloating as x, useFocus as S, useHover as C, useInteractions as w, useRole as T } from "@floating-ui/react";
|
|
6
|
-
import { useClickOutside as E, useEscapeDismiss as D, useOverlayFocus as O } from "@ryuzaki13/react-foundation-lib/dom";
|
|
7
|
-
import { createMissingContextError as k } from "@ryuzaki13/react-foundation-lib/error";
|
|
8
|
-
import { createPortal as A } from "react-dom";
|
|
9
|
-
//#region src/popover/lib/applyPopoverAvailableSize.ts
|
|
10
|
-
function j({ availableWidth: e, availableHeight: t, floating: n }) {
|
|
11
|
-
n.style.setProperty("--popover-available-width", `${Math.max(0, e)}px`), n.style.setProperty("--popover-available-height", `${Math.max(0, t)}px`);
|
|
12
|
-
}
|
|
13
|
-
var M = {
|
|
14
|
-
popover: "JK2Y7t",
|
|
15
|
-
primary: "_5QtpCJ",
|
|
16
|
-
secondary: "hZuysP"
|
|
17
|
-
}, N = o(null);
|
|
18
|
-
function P() {
|
|
19
|
-
let e = c(N);
|
|
20
|
-
if (!e) throw k({
|
|
21
|
-
hookName: "usePopoverContext",
|
|
22
|
-
providerName: "Popover"
|
|
23
|
-
});
|
|
24
|
-
return e;
|
|
25
|
-
}
|
|
26
|
-
//#endregion
|
|
27
|
-
//#region src/popover/components/PopoverContent.tsx
|
|
28
|
-
var F = ({ children: n, onClose: a, closeOnOutside: o = !0, closeOnEscape: c = !0, disableOutsideClick: l = !1, background: u = "secondary" }) => {
|
|
29
|
-
let { open: f, setOpen: m, refs: h, floatingStyles: g, middlewareData: _, placement: v, arrowRef: y } = P(), b = d(null), x = s((e) => {
|
|
30
|
-
b.current = e, h.setFloating(e);
|
|
31
|
-
}, [h]), S = O({
|
|
32
|
-
active: f,
|
|
33
|
-
initialFocus: "container",
|
|
34
|
-
restoreFocus: !0,
|
|
35
|
-
containerRef: b
|
|
36
|
-
}), C = s(() => {
|
|
37
|
-
f && (m(!1), a?.());
|
|
38
|
-
}, [
|
|
39
|
-
m,
|
|
40
|
-
a,
|
|
41
|
-
f
|
|
42
|
-
]);
|
|
43
|
-
D({
|
|
44
|
-
active: f,
|
|
45
|
-
enabled: c,
|
|
46
|
-
onDismiss: C,
|
|
47
|
-
containerRef: S
|
|
48
|
-
});
|
|
49
|
-
let w = s(() => {
|
|
50
|
-
!f || l || o && C();
|
|
51
|
-
}, [
|
|
52
|
-
f,
|
|
53
|
-
l,
|
|
54
|
-
o,
|
|
55
|
-
C
|
|
56
|
-
]);
|
|
57
|
-
return E([h.floating, h.reference], w), f ? /* @__PURE__ */ r(p, { children: /* @__PURE__ */ i("div", {
|
|
58
|
-
ref: x,
|
|
59
|
-
style: g,
|
|
60
|
-
className: t(M.popover, M[u]),
|
|
61
|
-
role: "dialog",
|
|
62
|
-
"aria-modal": "true",
|
|
63
|
-
tabIndex: -1,
|
|
64
|
-
children: [typeof n == "function" ? n({ setClose: C }) : n, /* @__PURE__ */ r(e, {
|
|
65
|
-
ref: y,
|
|
66
|
-
placement: v,
|
|
67
|
-
middlewareData: _
|
|
68
|
-
})]
|
|
69
|
-
}) }) : null;
|
|
70
|
-
}, I = ({ passive: e, children: t }) => {
|
|
71
|
-
let { open: n, setOpen: r, refs: i } = P(), o = s((n) => {
|
|
72
|
-
t.props.onClick && t.props.onClick(n), !n.defaultPrevented && (n.preventDefault(), n.stopPropagation(), !e && r((e) => !e));
|
|
73
|
-
}, [
|
|
74
|
-
t,
|
|
75
|
-
r,
|
|
76
|
-
e
|
|
77
|
-
]);
|
|
78
|
-
return a(t, {
|
|
79
|
-
ref: i.setReference,
|
|
80
|
-
"aria-expanded": n,
|
|
81
|
-
onClick: o
|
|
82
|
-
});
|
|
83
|
-
}, L = 16, R = Object.assign(({ children: e, open: t, defaultOpen: n, onOpenChange: i, placement: a = "bottom" }) => {
|
|
84
|
-
let [o, c] = f(n ?? !1), l = t !== void 0, u = l ? t : o, p = s((e) => {
|
|
85
|
-
let t = typeof e == "function" ? e(u) : e;
|
|
86
|
-
l || c(t), i?.(t);
|
|
87
|
-
}, [
|
|
88
|
-
l,
|
|
89
|
-
i,
|
|
90
|
-
u
|
|
91
|
-
]), b = d(null), { refs: S, floatingStyles: C, middlewareData: w, placement: T } = x({
|
|
92
|
-
open: u,
|
|
93
|
-
onOpenChange: p,
|
|
94
|
-
placement: a,
|
|
95
|
-
middleware: [
|
|
96
|
-
_(8),
|
|
97
|
-
g({ padding: L }),
|
|
98
|
-
v({ padding: L }),
|
|
99
|
-
y({
|
|
100
|
-
padding: L,
|
|
101
|
-
apply({ availableWidth: e, availableHeight: t, elements: n }) {
|
|
102
|
-
j({
|
|
103
|
-
availableWidth: e,
|
|
104
|
-
availableHeight: t,
|
|
105
|
-
floating: n.floating
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
}),
|
|
109
|
-
m({ element: b.current })
|
|
110
|
-
],
|
|
111
|
-
whileElementsMounted: h
|
|
112
|
-
});
|
|
113
|
-
return /* @__PURE__ */ r(N.Provider, {
|
|
114
|
-
value: {
|
|
115
|
-
open: u,
|
|
116
|
-
setOpen: p,
|
|
117
|
-
refs: S,
|
|
118
|
-
floatingStyles: C,
|
|
119
|
-
placement: T,
|
|
120
|
-
middlewareData: w,
|
|
121
|
-
arrowRef: b
|
|
122
|
-
},
|
|
123
|
-
children: e
|
|
124
|
-
});
|
|
125
|
-
}, {
|
|
126
|
-
Trigger: I,
|
|
127
|
-
Content: F
|
|
128
|
-
}), z = {
|
|
129
|
-
tooltipPanel: "sZ0x6w",
|
|
130
|
-
tooltip: "_538Ejd",
|
|
131
|
-
negative: "fqciCO",
|
|
132
|
-
information: "sHkUiQ",
|
|
133
|
-
error: "bpGNoX",
|
|
134
|
-
warning: "tYnRg-",
|
|
135
|
-
success: "_8lflEh"
|
|
136
|
-
}, B = ({ content: a, children: o, openOnHover: s = !0, placement: c = "bottom", openDelay: l = 200, closeDelay: p = 100, maxWidth: y, state: E, tooltip: D, positionUpdateKey: O }) => {
|
|
137
|
-
let [k, j] = f(!1), M = d(null), { refs: N, floatingStyles: P, middlewareData: F, context: I, placement: L, update: R } = x({
|
|
138
|
-
open: k,
|
|
139
|
-
onOpenChange: j,
|
|
140
|
-
placement: c,
|
|
141
|
-
middleware: [
|
|
142
|
-
_(8),
|
|
143
|
-
g({
|
|
144
|
-
fallbackAxisSideDirection: "end",
|
|
145
|
-
fallbackPlacements: [
|
|
146
|
-
"top",
|
|
147
|
-
"right",
|
|
148
|
-
"bottom"
|
|
149
|
-
]
|
|
150
|
-
}),
|
|
151
|
-
v({ padding: 8 }),
|
|
152
|
-
m({
|
|
153
|
-
element: M,
|
|
154
|
-
padding: 8
|
|
155
|
-
})
|
|
156
|
-
],
|
|
157
|
-
whileElementsMounted: h
|
|
158
|
-
});
|
|
159
|
-
u(() => {
|
|
160
|
-
k && R();
|
|
161
|
-
}, [
|
|
162
|
-
k,
|
|
163
|
-
O,
|
|
164
|
-
R
|
|
165
|
-
]);
|
|
166
|
-
let B = C(I, {
|
|
167
|
-
enabled: s,
|
|
168
|
-
move: !1,
|
|
169
|
-
delay: {
|
|
170
|
-
open: l,
|
|
171
|
-
close: p
|
|
172
|
-
}
|
|
173
|
-
}), V = S(I, { enabled: s }), H = b(I), U = T(I), { getReferenceProps: W, getFloatingProps: G } = w([
|
|
174
|
-
B,
|
|
175
|
-
V,
|
|
176
|
-
H,
|
|
177
|
-
U
|
|
178
|
-
]);
|
|
179
|
-
return /* @__PURE__ */ i(n, { children: [/* @__PURE__ */ r("span", {
|
|
180
|
-
ref: N.setReference,
|
|
181
|
-
...W(),
|
|
182
|
-
style: { lineHeight: 1 },
|
|
183
|
-
children: o
|
|
184
|
-
}), k && A(/* @__PURE__ */ i("div", {
|
|
185
|
-
ref: N.setFloating,
|
|
186
|
-
style: {
|
|
187
|
-
...P,
|
|
188
|
-
zIndex: "var(--z-tooltip)",
|
|
189
|
-
maxWidth: y ? `${y}em` : void 0
|
|
190
|
-
},
|
|
191
|
-
...G(),
|
|
192
|
-
role: "tooltip",
|
|
193
|
-
className: t(z.tooltipPanel, D && z.tooltip, E && z[E]),
|
|
194
|
-
children: [a, /* @__PURE__ */ r(e, {
|
|
195
|
-
ref: M,
|
|
196
|
-
placement: L,
|
|
197
|
-
middlewareData: F
|
|
198
|
-
})]
|
|
199
|
-
}), document.body)] });
|
|
200
|
-
}, V = ({ x: t, y: n, children: a }) => {
|
|
201
|
-
let o = d(null), { refs: s, floatingStyles: c, middlewareData: u, placement: f } = x({
|
|
202
|
-
strategy: "absolute",
|
|
203
|
-
placement: "top",
|
|
204
|
-
middleware: [
|
|
205
|
-
_(6),
|
|
206
|
-
g(),
|
|
207
|
-
v({ padding: 16 }),
|
|
208
|
-
m({ element: o })
|
|
209
|
-
]
|
|
210
|
-
});
|
|
211
|
-
return l(() => {
|
|
212
|
-
s.setReference && s.setReference({ getBoundingClientRect: () => ({
|
|
213
|
-
x: t,
|
|
214
|
-
y: n,
|
|
215
|
-
width: 0,
|
|
216
|
-
height: 0,
|
|
217
|
-
top: n,
|
|
218
|
-
left: t,
|
|
219
|
-
bottom: n,
|
|
220
|
-
right: t,
|
|
221
|
-
toJSON: () => {}
|
|
222
|
-
}) });
|
|
223
|
-
}, [
|
|
224
|
-
t,
|
|
225
|
-
n,
|
|
226
|
-
s
|
|
227
|
-
]), /* @__PURE__ */ i("div", {
|
|
228
|
-
ref: s.setFloating,
|
|
229
|
-
style: {
|
|
230
|
-
...c,
|
|
231
|
-
position: "absolute",
|
|
232
|
-
pointerEvents: "none"
|
|
233
|
-
},
|
|
234
|
-
className: z.tooltip,
|
|
235
|
-
children: [a, /* @__PURE__ */ r(e, {
|
|
236
|
-
ref: o,
|
|
237
|
-
placement: f,
|
|
238
|
-
middlewareData: u
|
|
239
|
-
})]
|
|
240
|
-
});
|
|
241
|
-
};
|
|
242
|
-
//#endregion
|
|
243
|
-
export { F as a, I as i, B as n, P as o, R as r, V as t };
|
|
244
|
-
|
|
245
|
-
//# sourceMappingURL=popover-yl5DVe06.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"popover-yl5DVe06.js","names":[],"sources":["../../src/popover/lib/applyPopoverAvailableSize.ts","../../src/popover/components/Popover.module.scss","../../src/popover/components/PopoverContext.tsx","../../src/popover/components/PopoverContent.tsx","../../src/popover/components/PopoverTrigger.tsx","../../src/popover/components/Popover.tsx","../../src/popover/Popover.module.scss","../../src/popover/FloatingPopover.tsx","../../src/popover/FloatingTooltip.tsx"],"sourcesContent":["type ApplyPopoverAvailableSizeOptions = {\n\treadonly availableWidth: number;\n\treadonly availableHeight: number;\n\treadonly floating: HTMLElement;\n};\n\n/**\n * Передаёт вычисленную Floating UI доступную область самому popover через CSS-переменные.\n * Потребитель может совместить эти границы со своим размером и режимом прокрутки,\n * не дублируя `size()` middleware и правила clipping context.\n */\nexport function applyPopoverAvailableSize({ availableWidth, availableHeight, floating }: ApplyPopoverAvailableSizeOptions) {\n\tfloating.style.setProperty(\"--popover-available-width\", `${Math.max(0, availableWidth)}px`);\n\tfloating.style.setProperty(\"--popover-available-height\", `${Math.max(0, availableHeight)}px`);\n}\n",".popover {\n\tpadding: var(--space-sm);\n\t// background-image: radial-gradient(var(--surface-0) 50%, var(--surface-1) 100%);\n\n\tborder: var(--border-width) solid var(--border-1);\n\tborder-radius: var(--radius-sm);\n\tcolor: var(--content-0);\n\n\tfilter: drop-shadow(var(--shadow-md));\n\n\tz-index: var(--z-popover);\n\n\t&.primary {\n\t\tbackground-color: var(--surface-0);\n\t}\n\n\t&.secondary {\n\t\tbackground-color: var(--surface-1);\n\t}\n}\n","import React, { createContext, useContext } from \"react\";\n\nimport { Placement, useFloating } from \"@floating-ui/react\";\nimport { createMissingContextError } from \"@ryuzaki13/react-foundation-lib/error\";\n\ninterface PopoverContextValue {\n\topen: boolean;\n\tsetOpen: React.Dispatch<React.SetStateAction<boolean>>;\n\trefs: ReturnType<typeof useFloating>[\"refs\"];\n\tfloatingStyles: React.CSSProperties;\n\tplacement: Placement;\n\tmiddlewareData: ReturnType<typeof useFloating>[\"middlewareData\"];\n\tarrowRef: React.RefObject<HTMLDivElement | null>;\n}\n\nexport const PopoverContext = createContext<PopoverContextValue | null>(null);\n\nexport function usePopoverContext() {\n\tconst context = useContext(PopoverContext);\n\tif (!context) {\n\t\tthrow createMissingContextError({\n\t\t\thookName: \"usePopoverContext\",\n\t\t\tproviderName: \"Popover\"\n\t\t});\n\t}\n\treturn context;\n}\n","import React, { useCallback, useRef } from \"react\";\n\nimport { FloatingPortal } from \"@floating-ui/react\";\nimport { useClickOutside, useEscapeDismiss, useOverlayFocus } from \"@ryuzaki13/react-foundation-lib/dom\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport { TooltipArrow } from \"../../floating-arrow\";\n\nimport styles from \"./Popover.module.scss\";\nimport { usePopoverContext } from \"./PopoverContext\";\n\nexport interface PopoverContentProps {\n\tchildren: React.ReactNode | ((ctx: { setClose: () => void }) => React.ReactNode);\n\tonClose?: () => void;\n\tcloseOnOutside?: boolean;\n\tcloseOnEscape?: boolean;\n\tdisableOutsideClick?: boolean;\n\tbackground?: \"primary\" | \"secondary\";\n}\n\n/**\n * Содержимое Popover, отображаемое в портале.\n */\nexport const PopoverContent: React.FC<PopoverContentProps> = ({\n\tchildren,\n\tonClose,\n\tcloseOnOutside = true,\n\tcloseOnEscape = true,\n\tdisableOutsideClick = false,\n\tbackground = \"secondary\"\n}) => {\n\tconst { open, setOpen, refs, floatingStyles, middlewareData, placement, arrowRef } = usePopoverContext();\n\tconst floatingElementRef = useRef<HTMLDivElement | null>(null);\n\tconst setFloating = useCallback(\n\t\t(node: HTMLDivElement | null) => {\n\t\t\tfloatingElementRef.current = node;\n\t\t\trefs.setFloating(node);\n\t\t},\n\t\t[refs]\n\t);\n\n\tconst floatingRef = useOverlayFocus<HTMLDivElement>({\n\t\tactive: open,\n\t\tinitialFocus: \"container\",\n\t\trestoreFocus: true,\n\t\tcontainerRef: floatingElementRef\n\t});\n\n\tconst setClose = useCallback(() => {\n\t\tif (!open) return;\n\t\tsetOpen(false);\n\t\tonClose?.();\n\t}, [setOpen, onClose, open]);\n\n\tuseEscapeDismiss({\n\t\tactive: open,\n\t\tenabled: closeOnEscape,\n\t\tonDismiss: setClose,\n\t\tcontainerRef: floatingRef as React.RefObject<HTMLElement | null>\n\t});\n\n\tconst outsideClose = useCallback(() => {\n\t\tif (!open || disableOutsideClick) return;\n\t\tif (closeOnOutside) setClose();\n\t}, [open, disableOutsideClick, closeOnOutside, setClose]);\n\n\tuseClickOutside([refs.floating as React.RefObject<HTMLElement>, refs.reference as React.RefObject<HTMLElement>], outsideClose);\n\n\tif (!open) return null;\n\n\treturn (\n\t\t<FloatingPortal>\n\t\t\t<div\n\t\t\t\tref={setFloating}\n\t\t\t\tstyle={floatingStyles}\n\t\t\t\tclassName={cn(styles.popover, styles[background])}\n\t\t\t\trole=\"dialog\"\n\t\t\t\taria-modal=\"true\"\n\t\t\t\ttabIndex={-1}>\n\t\t\t\t{typeof children === \"function\" ? children({ setClose }) : children}\n\t\t\t\t<TooltipArrow ref={arrowRef} placement={placement} middlewareData={middlewareData} />\n\t\t\t</div>\n\t\t</FloatingPortal>\n\t);\n};\n","import React, { cloneElement, useCallback } from \"react\";\n\nimport { usePopoverContext } from \"./PopoverContext\";\n\nexport interface PopoverTriggerProps {\n\tpassive?: true;\n\tchildren: React.ReactElement<React.HTMLAttributes<Element> & { ref?: React.Ref<Element> }>;\n}\n\nexport const PopoverTrigger: React.FC<PopoverTriggerProps> = ({ passive, children }) => {\n\tconst { open, setOpen, refs } = usePopoverContext();\n\n\tconst handleClick = useCallback(\n\t\t(e: React.MouseEvent) => {\n\t\t\tif (children.props.onClick) {\n\t\t\t\tchildren.props.onClick(e);\n\t\t\t}\n\t\t\tif (e.defaultPrevented) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\n\t\t\tif (passive) return;\n\n\t\t\tsetOpen((v) => !v);\n\t\t},\n\t\t[children, setOpen, passive]\n\t);\n\n\treturn cloneElement(children as React.JSX.Element, {\n\t\tref: refs.setReference,\n\t\t\"aria-expanded\": open,\n\t\tonClick: handleClick\n\t});\n};\n","/* eslint-disable react-refresh/only-export-components */\nimport React, { useCallback, useRef, useState } from \"react\";\n\nimport { arrow, autoUpdate, flip, offset, Placement, shift, size as floatingSize, useFloating } from \"@floating-ui/react\";\n\nimport { applyPopoverAvailableSize } from \"../lib/applyPopoverAvailableSize\";\n\nimport { PopoverContent } from \"./PopoverContent\";\nimport { PopoverContext } from \"./PopoverContext\";\nimport { PopoverTrigger } from \"./PopoverTrigger\";\n\nconst POPOVER_VIEWPORT_PADDING = 16;\n\nexport interface PopoverProps {\n\tchildren: React.ReactNode;\n\tplacement?: Placement;\n\topen?: boolean;\n\tdefaultOpen?: boolean;\n\tonOpenChange?: (open: boolean) => void;\n}\n\n/**\n * Контролируемый Popover.\n * Используется в связке с Popover.Trigger и Popover.Content.\n */\nconst PopoverRoot: React.FC<PopoverProps> = ({ children, open: controlledOpen, defaultOpen, onOpenChange, placement = \"bottom\" }) => {\n\tconst [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen ?? false);\n\n\tconst isControlled = controlledOpen !== undefined;\n\tconst open = isControlled ? controlledOpen : uncontrolledOpen;\n\tconst setOpen = useCallback<React.Dispatch<React.SetStateAction<boolean>>>(\n\t\t(value) => {\n\t\t\tconst next = typeof value === \"function\" ? value(open) : value;\n\t\t\tif (!isControlled) setUncontrolledOpen(next);\n\t\t\tonOpenChange?.(next);\n\t\t},\n\t\t[isControlled, onOpenChange, open]\n\t);\n\n\tconst arrowRef = useRef<HTMLDivElement | null>(null);\n\n\tconst {\n\t\trefs,\n\t\tfloatingStyles,\n\t\tmiddlewareData,\n\t\tplacement: actualPlacement\n\t} = useFloating({\n\t\topen,\n\t\tonOpenChange: setOpen,\n\t\tplacement,\n\t\tmiddleware: [\n\t\t\toffset(8),\n\t\t\tflip({ padding: POPOVER_VIEWPORT_PADDING }),\n\t\t\tshift({ padding: POPOVER_VIEWPORT_PADDING }),\n\t\t\tfloatingSize({\n\t\t\t\tpadding: POPOVER_VIEWPORT_PADDING,\n\t\t\t\tapply({ availableWidth, availableHeight, elements }) {\n\t\t\t\t\tapplyPopoverAvailableSize({ availableWidth, availableHeight, floating: elements.floating });\n\t\t\t\t}\n\t\t\t}),\n\t\t\t// eslint-disable-next-line react-hooks/refs\n\t\t\tarrow({ element: arrowRef.current })\n\t\t],\n\t\twhileElementsMounted: autoUpdate\n\t});\n\n\treturn (\n\t\t<PopoverContext.Provider value={{ open, setOpen, refs, floatingStyles, placement: actualPlacement, middlewareData, arrowRef }}>\n\t\t\t{children}\n\t\t</PopoverContext.Provider>\n\t);\n};\n\n/**\n * Композиционное API:\n * <Popover>\n * <Popover.Trigger />\n * <Popover.Content />\n * </Popover>\n */\nexport const Popover = Object.assign(PopoverRoot, {\n\tTrigger: PopoverTrigger,\n\tContent: PopoverContent\n});\n",".tooltipPanel {\n\tpadding: var(--space-sm);\n\t// background-image: radial-gradient(var(--surface-0) 50%, var(--surface-1) 100%);\n\tbackground-color: var(--surface-1);\n\tborder: var(--border-width) solid var(--border-2);\n\tborder-radius: var(--radius-sm);\n\tcolor: var(--content-0);\n\n\tfilter: drop-shadow(var(--shadow-sm));\n\n\t&.negative {\n\t\t--border-1: var(--content-0);\n\n\t\tbackground-color: var(--content-0);\n\t\tborder-color: var(--border-1);\n\t\tcolor: var(--surface-1);\n\t}\n\n\t&.information {\n\t\t--border-1: var(--info-text);\n\n\t\tbackground-color: var(--info-text);\n\t\tborder-color: var(--info-text);\n\t\tcolor: var(--info-on-fill);\n\t}\n\n\t&.error {\n\t\t--border-1: var(--error-text);\n\n\t\tbackground-color: var(--error-text);\n\t\tborder-color: var(--error-text);\n\t\tcolor: var(--error-on-fill);\n\t}\n\n\t&.warning {\n\t\t--border-1: var(--warning-text);\n\n\t\tbackground-color: var(--warning-text);\n\t\tborder-color: var(--warning-text);\n\t\tcolor: var(--warning-on-fill);\n\t}\n\n\t&.success {\n\t\t--border-1: var(--success-text);\n\n\t\tbackground-color: var(--success-text);\n\t\tborder-color: var(--success-text);\n\t\tcolor: var(--success-on-fill);\n\t}\n}\n\n.tooltip {\n\tz-index: var(--z-tooltip);\n\tpointer-events: none;\n\n\ttext-align: initial;\n\tfont-size: var(--font-size-sm);\n\tfont-style: normal;\n\tfont-weight: 500;\n\tfont-variation-settings: \"wght\" 500;\n\tline-height: var(--line-height);\n\n\t@extend .tooltipPanel;\n}\n","/* eslint-disable react-hooks/refs */\nimport React, { useLayoutEffect, useRef, useState } from \"react\";\n\nimport {\n\tarrow,\n\tautoUpdate,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tuseDismiss,\n\tuseFocus,\n\tuseFloating,\n\tuseHover,\n\tuseInteractions,\n\tuseRole\n} from \"@floating-ui/react\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { createPortal } from \"react-dom\";\n\nimport { FloatingArrow } from \"../floating-arrow/FloatingArrow\";\n\nimport styles from \"./Popover.module.scss\";\n\ninterface FloatingPopoverProps {\n\tcontent: React.ReactNode;\n\tchildren: React.ReactNode;\n\topenOnHover?: boolean;\n\tplacement?: Placement;\n\topenDelay?: number;\n\tcloseDelay?: number;\n\tmaxWidth?: number;\n\tstate?: \"information\" | \"error\" | \"warning\" | \"success\" | \"negative\";\n\ttooltip?: true;\n\t/**\n\t * Изменяется вместе с CSS-координатой trigger, когда её изменение не отслеживается `autoUpdate`.\n\t * После commit React выполняется повторный расчёт позиции открытой floating-панели.\n\t */\n\tpositionUpdateKey?: unknown;\n}\n\nexport const FloatingPopover: React.FC<FloatingPopoverProps> = ({\n\tcontent,\n\tchildren,\n\topenOnHover = true,\n\tplacement = \"bottom\",\n\topenDelay = 200,\n\tcloseDelay = 100,\n\tmaxWidth,\n\tstate,\n\ttooltip,\n\tpositionUpdateKey\n}) => {\n\tconst [open, setOpen] = useState(false);\n\tconst arrowRef = useRef<HTMLDivElement>(null);\n\n\tconst {\n\t\trefs,\n\t\tfloatingStyles,\n\t\tmiddlewareData,\n\t\tcontext,\n\t\tplacement: computedPlacement,\n\t\tupdate\n\t} = useFloating({\n\t\topen,\n\t\tonOpenChange: setOpen,\n\t\tplacement,\n\t\tmiddleware: [\n\t\t\toffset(8),\n\t\t\tflip({ fallbackAxisSideDirection: \"end\", fallbackPlacements: [\"top\", \"right\", \"bottom\"] }),\n\t\t\tshift({ padding: 8 }),\n\t\t\tarrow({ element: arrowRef, padding: 8 })\n\t\t],\n\t\twhileElementsMounted: autoUpdate\n\t});\n\n\tuseLayoutEffect(() => {\n\t\tif (open) {\n\t\t\tvoid update();\n\t\t}\n\t}, [open, positionUpdateKey, update]);\n\n\tconst hover = useHover(context, {\n\t\tenabled: openOnHover,\n\t\tmove: false,\n\t\tdelay: {\n\t\t\topen: openDelay,\n\t\t\tclose: closeDelay\n\t\t}\n\t});\n\t// Hover-подсказка обязана иметь ту же пассивную точку входа с клавиатуры.\n\t// Связываем focus с тем же флагом, чтобы `openOnHover={false}` не менял\n\t// управляемые сценарии, которые не запрашивали автоматическое открытие.\n\tconst focus = useFocus(context, { enabled: openOnHover });\n\tconst dismiss = useDismiss(context);\n\tconst role = useRole(context);\n\n\tconst { getReferenceProps, getFloatingProps } = useInteractions([hover, focus, dismiss, role]);\n\n\treturn (\n\t\t<>\n\t\t\t<span ref={refs.setReference} {...getReferenceProps()} style={{ lineHeight: 1 }}>\n\t\t\t\t{children}\n\t\t\t</span>\n\n\t\t\t{open &&\n\t\t\t\tcreatePortal(\n\t\t\t\t\t<div\n\t\t\t\t\t\tref={refs.setFloating}\n\t\t\t\t\t\tstyle={{ ...floatingStyles, zIndex: \"var(--z-tooltip)\", maxWidth: maxWidth ? `${maxWidth}em` : undefined }}\n\t\t\t\t\t\t{...getFloatingProps()}\n\t\t\t\t\t\trole=\"tooltip\"\n\t\t\t\t\t\tclassName={cn(styles.tooltipPanel, tooltip && styles.tooltip, state && styles[state])}>\n\t\t\t\t\t\t{content}\n\n\t\t\t\t\t\t<FloatingArrow ref={arrowRef} placement={computedPlacement} middlewareData={middlewareData} />\n\t\t\t\t\t</div>,\n\t\t\t\t\tdocument.body\n\t\t\t\t)}\n\t\t</>\n\t);\n};\n","import React, { useEffect, useRef } from \"react\";\n\nimport { arrow, flip, offset, shift, useFloating } from \"@floating-ui/react\";\n\nimport { FloatingArrow } from \"../floating-arrow/FloatingArrow\";\n\nimport styles from \"./Popover.module.scss\";\n\nexport const FloatingTooltip: React.FC<{\n\tx: number;\n\ty: number;\n\tchildren: React.ReactNode;\n}> = ({ x, y, children }) => {\n\tconst arrowRef = useRef<HTMLDivElement | null>(null);\n\n\tconst {\n\t\trefs,\n\t\tfloatingStyles,\n\t\tmiddlewareData,\n\t\tplacement: computedPlacement\n\t} = useFloating({\n\t\tstrategy: \"absolute\",\n\t\tplacement: \"top\",\n\t\t// eslint-disable-next-line react-hooks/refs\n\t\tmiddleware: [offset(6), flip(), shift({ padding: 16 }), arrow({ element: arrowRef })]\n\t});\n\n\tuseEffect(() => {\n\t\tif (refs.setReference) {\n\t\t\trefs.setReference({\n\t\t\t\tgetBoundingClientRect: () =>\n\t\t\t\t\t({\n\t\t\t\t\t\tx,\n\t\t\t\t\t\ty,\n\t\t\t\t\t\twidth: 0,\n\t\t\t\t\t\theight: 0,\n\t\t\t\t\t\ttop: y,\n\t\t\t\t\t\tleft: x,\n\t\t\t\t\t\tbottom: y,\n\t\t\t\t\t\tright: x,\n\t\t\t\t\t\ttoJSON: () => {}\n\t\t\t\t\t}) as DOMRect\n\t\t\t});\n\t\t}\n\t}, [x, y, refs]);\n\n\treturn (\n\t\t<div ref={refs.setFloating} style={{ ...floatingStyles, position: \"absolute\", pointerEvents: \"none\" }} className={styles.tooltip}>\n\t\t\t{children}\n\n\t\t\t<FloatingArrow ref={arrowRef} placement={computedPlacement} middlewareData={middlewareData} />\n\t\t</div>\n\t);\n};\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"select-DblNSc5H.js","names":[],"sources":["../../src/select/lib/getOptionSearchText.ts","../../src/select/model/useODataSelect.ts","../../src/select/lib/createSelectOptionSections.ts","../../src/select/Select.tsx","../../src/select/SelectOptionContent.tsx","../../src/select/ODataSelect.tsx","../../src/select/ODataDependentSegmentSelect.tsx","../../src/select/SerializableSelect.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\n\nimport { InputType } from \"@ryuzaki13/react-foundation-lib/types\";\n\nimport { extractPickerTextContent } from \"../../picker\";\nimport { type SelectOptionGroup } from \"../SelectOptionGroup\";\n\nexport function getOptionSearchText<T extends InputType>({\n\toption,\n\tgetOptionLabel,\n\tgetOptionCode,\n\tgetOptionGroup\n}: {\n\toption: T;\n\tgetOptionLabel: (option: T) => ReactNode;\n\tgetOptionCode?: (option: T) => ReactNode;\n\tgetOptionGroup?: (option: T) => SelectOptionGroup | undefined;\n}) {\n\treturn [\n\t\textractPickerTextContent(getOptionLabel(option)),\n\t\textractPickerTextContent(getOptionCode?.(option)),\n\t\textractPickerTextContent(getOptionGroup?.(option)?.label)\n\t]\n\t\t.filter((part): part is string => Boolean(part))\n\t\t.join(\" \")\n\t\t.toLowerCase();\n}\n\n/** Находит selected option по value и возвращает fallback, если значение еще не нормализовано. */\nexport function resolveSelectedOption<TOption extends { value: string }>(\n\toptions: readonly TOption[],\n\tvalue: string,\n\tfallback: TOption\n): TOption {\n\treturn options.find((option) => option.value === value) ?? fallback;\n}\n","import { useMemo } from \"react\";\n\nimport { ODataCollectionModel, ODataSingleSelectProps } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { CollectionItem } from \"@ryuzaki13/react-foundation-lib/odata-service\";\n\nimport { useODataSelectBase } from \"./useODataSelectBase\";\n\ninterface UseODataSelectOptions extends Omit<ODataSingleSelectProps, \"model\"> {\n\tmodel: Required<ODataCollectionModel>;\n\tonChange: (value: string | undefined) => void;\n}\n\nexport function useODataSelect({ odata, segment, model, value, dependencies, onChange }: UseODataSelectOptions) {\n\tconst odataModel = useODataSelectBase({\n\t\todata,\n\t\tsegment,\n\t\tmodel,\n\t\tvalue: value ? [value] : [],\n\t\tdependencies\n\t});\n\n\tconst selectedItem = odataModel.selectedItems[0];\n\tconst options = useMemo(() => {\n\t\tif (!selectedItem) {\n\t\t\treturn odataModel.filteredItems;\n\t\t}\n\n\t\treturn [selectedItem, ...odataModel.filteredItems];\n\t}, [odataModel.filteredItems, selectedItem]);\n\n\tconst handleChange = (item: CollectionItem | undefined) => {\n\t\tonChange(item?.[odataModel.selectionKey]);\n\t};\n\n\treturn {\n\t\t...odataModel,\n\t\tselectedItem,\n\t\toptions,\n\t\thandleChange\n\t};\n}\n","import { type SelectOptionGroup } from \"../SelectOptionGroup\";\n\nexport type SelectOptionSectionItem<TOption> = {\n\treadonly option: TOption;\n\treadonly index: number;\n};\n\nexport type SelectOptionSection<TOption> = {\n\treadonly group: SelectOptionGroup | undefined;\n\treadonly items: readonly SelectOptionSectionItem<TOption>[];\n};\n\n/**\n * Собирает соседние опции с одинаковым group key в секции, сохраняя исходные индексы для клавиатурной навигации listbox.\n */\nexport function createSelectOptionSections<TOption>(\n\toptions: readonly TOption[],\n\tgetOptionGroup: (option: TOption) => SelectOptionGroup | undefined\n): readonly SelectOptionSection<TOption>[] {\n\tconst sections: Array<{ group: SelectOptionGroup | undefined; items: SelectOptionSectionItem<TOption>[] }> = [];\n\n\toptions.forEach((option, index) => {\n\t\tconst group = getOptionGroup(option);\n\t\tconst currentSection = sections.at(-1);\n\t\tconst belongsToCurrentSection = currentSection?.group?.key === group?.key;\n\n\t\tif (currentSection && belongsToCurrentSection) {\n\t\t\tcurrentSection.items.push({ option, index });\n\t\t\treturn;\n\t\t}\n\n\t\tsections.push({\n\t\t\tgroup,\n\t\t\titems: [{ option, index }]\n\t\t});\n\t});\n\n\treturn sections;\n}\n","import { type CSSProperties, Fragment, ReactNode, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport { Placement } from \"@floating-ui/react\";\nimport { InputType } from \"@ryuzaki13/react-foundation-lib/types\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon } from \"lucide-react\";\n\nimport { CustomOptionButton, Option, OptionButton } from \"../option\";\nimport {\n\textractPickerTextContent,\n\tPickerField,\n\tPickerPopup,\n\tPickerStatus,\n\tPickerTrigger,\n\tusePickerDefaultFilter,\n\tusePickerFloatingListbox,\n\tusePickerQuery,\n\tusePickerTriggerController\n} from \"../picker\";\nimport { ChangeHandler, UiBaseProps } from \"../types\";\nimport uiStyles from \"../ui.module.scss\";\n\nimport { getOptionSearchText } from \"./lib\";\nimport { createSelectOptionSections } from \"./lib/createSelectOptionSections\";\nimport { type SelectOptionGroup, type SelectOptionKey } from \"./SelectOptionGroup\";\n\nexport { type SelectOptionGroup, type SelectOptionKey } from \"./SelectOptionGroup\";\n\nexport type SelectOptionState = {\n\tactive: boolean;\n\tselected: boolean;\n\tdisabled: boolean;\n};\n\ntype SelectSharedProps<TOption extends InputType> = Omit<UiBaseProps<TOption, TOption | undefined>, \"onChange\"> & {\n\toptions: readonly TOption[];\n\tgetOptionKey: (option: TOption) => SelectOptionKey;\n\tgetOptionLabel: (option: TOption) => string;\n\tgetOptionCode?: (option: TOption) => string;\n\t/** Явный поисковый текст для опции с произвольным ReactNode-render. */\n\tgetOptionSearchText?: (option: TOption) => string | readonly string[];\n\tgetOptionDisabled?: (option: TOption) => boolean;\n\tgetOptionAriaLabel?: (option: TOption) => string;\n\tgetOptionGroup?: (option: TOption) => SelectOptionGroup | undefined;\n\tgetOptionClassName?: (option: TOption, state: SelectOptionState) => string | undefined;\n\trenderOption?: (option: TOption, state: SelectOptionState) => ReactNode;\n\trenderValue?: (option: TOption) => ReactNode;\n\tclassName?: string;\n\tbuttonClassName?: string;\n\toptionsClassName?: string;\n\toptionsMaxWidth?: CSSProperties[\"maxWidth\"];\n\toptionsContentClassName?: string;\n\tsearchable?: boolean;\n\tquery?: string;\n\tdefaultQuery?: string;\n\tonQuery?: (value: string) => void;\n\tdefaultFilter?: boolean;\n\tisLoading?: boolean;\n\trenderPopupHeader?: ReactNode;\n\temptyState?: ReactNode;\n\terrorState?: ReactNode;\n\tplacement?: Placement;\n};\n\ntype SelectChangeValue<TOption extends InputType, TClearable extends boolean | undefined> = true extends TClearable\n\t? TOption | undefined\n\t: TOption;\n\nexport type SelectProps<TOption extends InputType, TClearable extends boolean | undefined = false> = SelectSharedProps<TOption> & {\n\tclearable?: TClearable;\n\tonChange: ChangeHandler<SelectChangeValue<TOption, TClearable>>;\n};\n\n/**\n * Выпадающий список выбора значения из набора опций. Подходит для форм, фильтров и простых справочников.\n */\nexport function Select<TOption extends InputType, TClearable extends boolean | undefined = false>(props: SelectProps<TOption, TClearable>) {\n\tconst {\n\t\tlabel,\n\t\tdescription,\n\t\tdisabled,\n\t\tplaceholder,\n\t\tsize,\n\t\toptions,\n\t\tvalue,\n\t\tonChange,\n\t\tgetOptionKey,\n\t\tgetOptionLabel,\n\t\tgetOptionCode,\n\t\tgetOptionSearchText: getExplicitOptionSearchText,\n\t\tgetOptionDisabled,\n\t\tgetOptionAriaLabel,\n\t\tgetOptionGroup,\n\t\tgetOptionClassName,\n\t\trenderOption,\n\t\trenderValue,\n\t\tclassName,\n\t\tbuttonClassName,\n\t\toptionsClassName,\n\t\toptionsMaxWidth,\n\t\toptionsContentClassName,\n\t\tsearchable = false,\n\t\tdefaultFilter = true,\n\t\tquery,\n\t\tdefaultQuery,\n\t\tonQuery,\n\t\trenderPopupHeader,\n\t\temptyState,\n\t\tisLoading,\n\t\terrorState,\n\t\tplacement = \"bottom-start\",\n\t\tclearable = false\n\t} = props;\n\tconst emitChange = onChange as ChangeHandler<TOption | undefined>;\n\n\tconst inputRef = useRef<HTMLInputElement | null>(null);\n\tconst [open, setOpen] = useState(false);\n\tconst triggerMode = searchable ? \"search-single\" : \"display\";\n\tconst selectedKey = value === undefined ? undefined : getOptionKey(value);\n\tconst selectedOption =\n\t\tselectedKey === undefined ? undefined : (options.find((option) => getOptionKey(option) === selectedKey) ?? value);\n\tconst {\n\t\tquery: currentQuery,\n\t\tsetQuery,\n\t\tresetQueryOnClose\n\t} = usePickerQuery({\n\t\tquery,\n\t\tdefaultQuery,\n\t\tonQuery,\n\t\ttriggerMode\n\t});\n\tconst handleOpenChange = (nextOpen: boolean) => {\n\t\tif (open && !nextOpen && resetQueryOnClose) {\n\t\t\tsetQuery(\"\");\n\t\t}\n\n\t\tsetOpen(nextOpen);\n\t};\n\tconst getSearchText = useCallback(\n\t\t(option: TOption) =>\n\t\t\tgetExplicitOptionSearchText?.(option) ??\n\t\t\tgetOptionSearchText({\n\t\t\t\toption,\n\t\t\t\tgetOptionLabel,\n\t\t\t\tgetOptionCode,\n\t\t\t\tgetOptionGroup\n\t\t\t}),\n\t\t[getExplicitOptionSearchText, getOptionCode, getOptionGroup, getOptionLabel]\n\t);\n\tconst visibleOptions = usePickerDefaultFilter({\n\t\toptions,\n\t\tquery: currentQuery,\n\t\tenabled: searchable && defaultFilter,\n\t\tgetSearchText\n\t});\n\tconst optionSections = useMemo(\n\t\t() => (getOptionGroup ? createSelectOptionSections(visibleOptions, getOptionGroup) : undefined),\n\t\t[getOptionGroup, visibleOptions]\n\t);\n\tconst selectedIndex = selectedKey === undefined ? -1 : visibleOptions.findIndex((option) => getOptionKey(option) === selectedKey);\n\tconst {\n\t\tactiveIndex,\n\t\tcontext,\n\t\tfloatingStyles,\n\t\tgetFloatingProps,\n\t\tsetReference,\n\t\tsetFloating,\n\t\tsetOptionRef,\n\t\tclose,\n\t\topenList,\n\t\ttoggleOpen,\n\t\tselectOption,\n\t\tselectActiveOption,\n\t\thandleReferenceKeyDown,\n\t\thandleFloatingKeyDown,\n\t\tgetOptionId,\n\t\tgetActiveOptionId\n\t} = usePickerFloatingListbox({\n\t\toptions: visibleOptions,\n\t\tselectedIndex,\n\t\topen,\n\t\tonOpenChange: handleOpenChange,\n\t\tgetOptionDisabled,\n\t\tonSelect: emitChange,\n\t\tdisabled,\n\t\tplacement,\n\t\ttriggerMode\n\t});\n\n\tconst hasOptions = visibleOptions.length > 0;\n\tconst labelContent = selectedOption !== undefined ? getOptionLabel(selectedOption) : undefined;\n\tconst displayContent = selectedOption !== undefined ? (renderValue ? renderValue(selectedOption) : labelContent) : undefined;\n\tconst labelText = extractPickerTextContent(labelContent);\n\tconst codeText = selectedOption !== undefined ? extractPickerTextContent(getOptionCode?.(selectedOption)) : undefined;\n\tconst displayText =\n\t\textractPickerTextContent(displayContent) ?? labelText ?? codeText ?? (selectedKey !== undefined ? String(selectedKey) : \"\");\n\tconst showSearchValue = searchable && (open || currentQuery.length > 0);\n\tconst inputValue = showSearchValue ? currentQuery : selectedOption !== undefined ? displayText : \"\";\n\tconst triggerController = usePickerTriggerController({\n\t\tmode: triggerMode,\n\t\topen,\n\t\tcurrentQuery,\n\t\thasDisplayValue: selectedOption !== undefined,\n\t\tinputRef,\n\t\tsetQuery,\n\t\topenList,\n\t\tclose,\n\t\ttoggleOpen\n\t});\n\tconst setInputNode = (node: HTMLInputElement | null) => {\n\t\tinputRef.current = node;\n\t};\n\tconst handleClear = () => {\n\t\tif (clearable) {\n\t\t\temitChange(undefined);\n\t\t}\n\n\t\tsetQuery(\"\");\n\t\tclose();\n\t};\n\tconst renderOptionNode = (listId: string, option: TOption, index: number) => {\n\t\tconst optionKey = getOptionKey(option);\n\t\tconst selected = selectedKey !== undefined && optionKey === selectedKey;\n\t\tconst active = index === activeIndex;\n\t\tconst optionDisabled = getOptionDisabled?.(option) ?? false;\n\t\tconst optionState = { active, selected, disabled: optionDisabled };\n\n\t\treturn (\n\t\t\t<Option\n\t\t\t\tkey={optionKey}\n\t\t\t\tid={getOptionId(listId, index)}\n\t\t\t\tref={(node) => setOptionRef(index, node)}\n\t\t\t\trole=\"option\"\n\t\t\t\taria-selected={selected}\n\t\t\t\taria-disabled={optionDisabled || undefined}\n\t\t\t\taria-label={getOptionAriaLabel?.(option)}\n\t\t\t\tactive={active}\n\t\t\t\tselected={selected}\n\t\t\t\tdisabled={optionDisabled}\n\t\t\t\tclassName={getOptionClassName?.(option, optionState)}>\n\t\t\t\t{renderOption ? (\n\t\t\t\t\t<CustomOptionButton\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tdisabled={optionDisabled}\n\t\t\t\t\t\tonMouseDown={(event) => event.preventDefault()}\n\t\t\t\t\t\tonClick={() => selectOption(option)}>\n\t\t\t\t\t\t{renderOption(option, optionState)}\n\t\t\t\t\t</CustomOptionButton>\n\t\t\t\t) : (\n\t\t\t\t\t<OptionButton\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tdisabled={optionDisabled}\n\t\t\t\t\t\ticon={selected ? <CheckIcon /> : <span />}\n\t\t\t\t\t\ttext={getOptionLabel(option)}\n\t\t\t\t\t\tcode={getOptionCode?.(option)}\n\t\t\t\t\t\tonMouseDown={(event) => event.preventDefault()}\n\t\t\t\t\t\tonClick={() => selectOption(option)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</Option>\n\t\t);\n\t};\n\n\treturn (\n\t\t<PickerField label={label} description={description} disabled={disabled} size={size} className={className}>\n\t\t\t{({ controlId, labelId, describedBy }) => {\n\t\t\t\tconst listId = `${controlId}-listbox`;\n\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PickerTrigger\n\t\t\t\t\t\t\tref={setInputNode}\n\t\t\t\t\t\t\trootRef={setReference}\n\t\t\t\t\t\t\tid={controlId}\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\treadOnly={!searchable}\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\trole=\"combobox\"\n\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\topen={open}\n\t\t\t\t\t\t\toptionCount={options.length}\n\t\t\t\t\t\t\tlabel={label}\n\t\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\t\tvalue={inputValue}\n\t\t\t\t\t\t\tselectedValue={displayContent ?? displayText}\n\t\t\t\t\t\t\thasSelection={selectedOption !== undefined}\n\t\t\t\t\t\t\tshowSelectedValue={false /*selectedOption !== undefined && !showSearchValue*/}\n\t\t\t\t\t\t\tclearable={Boolean(clearable)}\n\t\t\t\t\t\t\tonClear={handleClear}\n\t\t\t\t\t\t\tonToggleMouseDown={triggerController.handleToggleMouseDown}\n\t\t\t\t\t\t\tonToggleClick={triggerController.handleToggleClick}\n\t\t\t\t\t\t\taria-labelledby={labelId}\n\t\t\t\t\t\t\taria-describedby={describedBy}\n\t\t\t\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t\t\t\taria-expanded={open}\n\t\t\t\t\t\t\taria-controls={open ? listId : undefined}\n\t\t\t\t\t\t\taria-autocomplete={searchable ? \"list\" : \"none\"}\n\t\t\t\t\t\t\taria-activedescendant={open ? getActiveOptionId(listId) : undefined}\n\t\t\t\t\t\t\tinputClassName={cn(buttonClassName, \"textOverflow\")}\n\t\t\t\t\t\t\tonChange={(event) => {\n\t\t\t\t\t\t\t\tif (!searchable) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerInputChange(event.target.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonClick={triggerController.handleTriggerClick}\n\t\t\t\t\t\t\tonFocus={(event) => {\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerFocus(event.currentTarget);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonKeyDown={(event) => {\n\t\t\t\t\t\t\t\thandleReferenceKeyDown(event);\n\n\t\t\t\t\t\t\t\tif (event.defaultPrevented) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerKeyDown({\n\t\t\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\t\t\tonActivateWhenOpen: selectActiveOption,\n\t\t\t\t\t\t\t\t\tenableSpaceActivation: !searchable\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<PickerPopup\n\t\t\t\t\t\t\topen={open}\n\t\t\t\t\t\t\tcontext={context}\n\t\t\t\t\t\t\tfloatingStyles={floatingStyles}\n\t\t\t\t\t\t\tlistId={listId}\n\t\t\t\t\t\t\tlabelId={labelId}\n\t\t\t\t\t\t\tdescriptionId={describedBy}\n\t\t\t\t\t\t\tactiveOptionId={hasOptions ? getActiveOptionId(listId) : undefined}\n\t\t\t\t\t\t\tsetFloating={setFloating}\n\t\t\t\t\t\t\tgetFloatingProps={getFloatingProps}\n\t\t\t\t\t\t\tonKeyDown={handleFloatingKeyDown}\n\t\t\t\t\t\t\tclassName={optionsClassName}\n\t\t\t\t\t\t\tmaxWidth={optionsMaxWidth}\n\t\t\t\t\t\t\ttoolbar={renderPopupHeader}>\n\t\t\t\t\t\t\t<div className={cn(optionsContentClassName, \"h100 scrollable overscroll\")}>\n\t\t\t\t\t\t\t\t{hasOptions ? (\n\t\t\t\t\t\t\t\t\toptionSections ? (\n\t\t\t\t\t\t\t\t\t\toptionSections.map((section, sectionIndex) => {\n\t\t\t\t\t\t\t\t\t\t\tconst groupLabelId = section.group ? `${listId}-group-${sectionIndex}` : undefined;\n\t\t\t\t\t\t\t\t\t\t\tconst optionNodes = section.items.map(({ option, index }) =>\n\t\t\t\t\t\t\t\t\t\t\t\trenderOptionNode(listId, option, index)\n\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\treturn section.group ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={`group-${String(section.group.key)}-${sectionIndex}`}\n\t\t\t\t\t\t\t\t\t\t\t\t\trole=\"group\"\n\t\t\t\t\t\t\t\t\t\t\t\t\taria-labelledby={groupLabelId}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div id={groupLabelId} className={uiStyles.uiPopupGroupLabel}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{section.group.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{optionNodes}\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<Fragment key={`options-${sectionIndex}`}>{optionNodes}</Fragment>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tvisibleOptions.map((option, index) => renderOptionNode(listId, option, index))\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<PickerStatus emptyState={emptyState} errorState={errorState} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</PickerPopup>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t}}\n\t\t</PickerField>\n\t);\n}\n","import { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport { OptionCode, OptionText } from \"../option\";\nimport { HighlightText } from \"../text\";\n\ninterface OptionContentProps {\n\tlabel: string;\n\tcode?: string;\n\thighlight?: string;\n\t/** Приватный визуальный modifier label для специализированного владельца option. */\n\tlabelClassName?: string;\n\t/** Отдельный modifier code, потому что code задаёт собственный variable-font weight. */\n\tcodeClassName?: string;\n}\n\n/**\n * Универсальный рендерер опции. Используется и в single-select, и в multi-select.\n */\nexport function SelectOptionContent({ label, code, highlight, labelClassName, codeClassName }: OptionContentProps) {\n\treturn (\n\t\t<>\n\t\t\t<OptionText className={cn(\"flexEllipsis\", labelClassName)}>\n\t\t\t\t<HighlightText text={label} highlight={highlight} />\n\t\t\t</OptionText>\n\t\t\t{code && (\n\t\t\t\t<OptionCode className={codeClassName}>\n\t\t\t\t\t<HighlightText text={code} highlight={highlight} />\n\t\t\t\t</OptionCode>\n\t\t\t)}\n\t\t</>\n\t);\n}\n","import React from \"react\";\n\nimport { ODataSingleSelectProps, useODataCollectionModel } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { CollectionItem } from \"@ryuzaki13/react-foundation-lib/odata-service\";\n\nimport { InputUILoading } from \"../input\";\nimport { UiBaseProps } from \"../types\";\n\nimport { useODataSelect } from \"./model/useODataSelect\";\nimport { Select } from \"./Select\";\nimport { SelectOptionContent } from \"./SelectOptionContent\";\n\ntype ODataSelectProps = Omit<ODataSingleSelectProps, \"value\"> & UiBaseProps<string | undefined> & { clearable?: boolean };\n\nfunction getODataOptionTextKey(item: CollectionItem | undefined, textKey: string, codeKey: string) {\n\tif (!item) {\n\t\treturn textKey || codeKey;\n\t}\n\n\treturn textKey || Object.keys(item).find((key) => key !== codeKey) || codeKey;\n}\n\nexport const ODataSelect: React.FC<ODataSelectProps> = ({\n\todata,\n\tsegment,\n\tmodel: initialModel,\n\tsize,\n\tlabel,\n\tdescription,\n\tdisabled,\n\tvalue,\n\tdependencies,\n\tonChange,\n\tclearable\n}) => {\n\tconst model = useODataCollectionModel(initialModel);\n\tconst odataModel = useODataSelect({\n\t\todata,\n\t\tsegment,\n\t\tmodel,\n\t\tvalue,\n\t\tdependencies,\n\t\tonChange\n\t});\n\n\tif (odataModel.isLoading) {\n\t\treturn <InputUILoading size={size} label={label} description={description} />;\n\t}\n\n\tconst hideCode = segment.hideCode ?? odata.hideCode;\n\tconst resolvedTextKey = getODataOptionTextKey(odataModel.selectedItem ?? odataModel.options[0], odataModel.textKey, odataModel.codeKey);\n\n\treturn (\n\t\t<Select\n\t\t\tsize={size}\n\t\t\tlabel={label}\n\t\t\tdescription={description}\n\t\t\toptions={odataModel.options}\n\t\t\tvalue={odataModel.selectedItem}\n\t\t\tonChange={odataModel.handleChange}\n\t\t\tgetOptionKey={(item) => item[odataModel.codeKey]}\n\t\t\tgetOptionLabel={(item) => item[resolvedTextKey]}\n\t\t\tgetOptionCode={hideCode ? undefined : (item) => item[odataModel.codeKey]}\n\t\t\tgetOptionAriaLabel={(item) =>\n\t\t\t\thideCode || item[resolvedTextKey] === item[odataModel.codeKey]\n\t\t\t\t\t? String(item[resolvedTextKey])\n\t\t\t\t\t: `${item[resolvedTextKey]} ${item[odataModel.codeKey]}`\n\t\t\t}\n\t\t\trenderValue={(item) => (\n\t\t\t\t<SelectOptionContent label={item[resolvedTextKey]} code={hideCode ? undefined : item[odataModel.codeKey]} />\n\t\t\t)}\n\t\t\trenderOption={(item) => (\n\t\t\t\t<SelectOptionContent\n\t\t\t\t\tlabel={item[resolvedTextKey]}\n\t\t\t\t\tcode={hideCode ? undefined : item[odataModel.codeKey]}\n\t\t\t\t\thighlight={odataModel.debouncedQuery}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\tsearchable\n\t\t\tquery={odataModel.query}\n\t\t\tonQuery={odataModel.setQuery}\n\t\t\tdefaultFilter={false}\n\t\t\tdisabled={disabled || odataModel.isLoading}\n\t\t\tplaceholder={odataModel.placeholder}\n\t\t\tisLoading={odataModel.isLoading}\n\t\t\terrorState={odataModel.isError ? \"Ошибка загрузки\" : undefined}\n\t\t\temptyState={!odataModel.isLoading && !odataModel.isError ? \"Нет данных\" : undefined}\n\t\t\tclearable={clearable}\n\t\t/>\n\t);\n};\n","import { useCallback } from \"react\";\n\nimport { useODataDependentSelection } from \"../odata-dependent\";\n\nimport { ODataSelect } from \"./ODataSelect\";\n\nimport type { ODataDependentSegmentControlProps } from \"../odata-dependent\";\n\nexport type ODataDependentSegmentSelectProps = ODataDependentSegmentControlProps & {\n\t/** Показывает действие очистки выбранного значения. */\n\tclearable?: boolean;\n};\n\n/**\n * Адаптирует один развёрнутый зависимый OData-сегмент к single-select UI.\n * Общий снимок остаётся массивным, поэтому совместим с `dependencies` и\n * может совместно использоваться с segment-level MultiSelect-контролами.\n */\nexport function ODataDependentSegmentSelect(props: ODataDependentSegmentSelectProps) {\n\tconst { item, disabled, label, description, size, width = 15, clearable } = props;\n\tconst selection = useODataDependentSelection(props);\n\tconst { updateSegment } = selection;\n\tconst widthStyle = `calc(${width}em + var(--width-add))`;\n\n\tconst handleSelectionChange = useCallback(\n\t\t(value: string | undefined) => {\n\t\t\tupdateSegment(item.id, value === undefined ? [] : [value]);\n\t\t},\n\t\t[item.id, updateSegment]\n\t);\n\n\treturn (\n\t\t<div style={{ maxWidth: widthStyle, minWidth: widthStyle }}>\n\t\t\t<ODataSelect\n\t\t\t\todata={item.odata}\n\t\t\t\tsegment={item.segment}\n\t\t\t\tmodel={item.model}\n\t\t\t\tdependencies={selection.values}\n\t\t\t\tvalue={selection.values[item.id]?.[0]}\n\t\t\t\tonChange={handleSelectionChange}\n\t\t\t\tdisabled={disabled || selection.isSegmentDisabled(item.id)}\n\t\t\t\tlabel={label}\n\t\t\t\tdescription={description}\n\t\t\t\tsize={size}\n\t\t\t\tclearable={clearable}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n","import { Select } from \"./Select\";\n\nimport type { UiBaseProps } from \"../types\";\nimport type { SelectOptionKey } from \"./Select\";\n\ntype SerializableOptionRecord = Record<string, unknown>;\n\ntype SerializableOptionKeyField<TOption extends SerializableOptionRecord> = {\n\t[K in keyof TOption]: Extract<TOption[K], SelectOptionKey> extends never ? never : K;\n}[keyof TOption];\n\ntype SerializableOptionValue<TOption extends SerializableOptionRecord, TOptionKey extends SerializableOptionKeyField<TOption>> = Extract<\n\tTOption[TOptionKey],\n\tSelectOptionKey\n>;\n\nexport interface SerializableSelectProps<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n> extends Omit<UiBaseProps<SerializableOptionValue<TOption, TOptionKey> | undefined>, \"onChange\"> {\n\toptions: readonly TOption[];\n\tonChange: (value: SerializableOptionValue<TOption, TOptionKey> | undefined) => void;\n\toptionKey: TOptionKey;\n\toptionLabel: TOptionLabel;\n\trenderCode?: true;\n\tclassName?: string;\n\tclearable?: boolean;\n}\n\nfunction getSerializableOptionKey<TOption extends SerializableOptionRecord, TOptionKey extends SerializableOptionKeyField<TOption>>(\n\toption: TOption,\n\toptionKey: TOptionKey\n): Extract<TOption[TOptionKey], SelectOptionKey> {\n\treturn String(option[optionKey]) as Extract<TOption[TOptionKey], SelectOptionKey>;\n}\n\nfunction getSerializableOptionLabel<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n>(option: TOption, optionLabel: TOptionLabel, optionKey: TOptionKey): string {\n\tconst label = option[optionLabel];\n\n\tif (typeof label === \"string\" || typeof label === \"number\") {\n\t\treturn String(label);\n\t}\n\n\tconst key = getSerializableOptionKey(option, optionKey);\n\treturn String(key);\n}\n\nexport function SerializableSelect<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n>({\n\tlabel,\n\tdescription,\n\tdisabled,\n\tplaceholder,\n\tsize,\n\toptions,\n\tvalue,\n\tonChange,\n\toptionKey,\n\toptionLabel,\n\trenderCode,\n\tclassName,\n\tclearable\n}: SerializableSelectProps<TOption, TOptionKey, TOptionLabel>) {\n\tconst selectedOption =\n\t\tvalue === undefined ? undefined : options.find((option) => getSerializableOptionKey(option, optionKey) === value);\n\n\treturn (\n\t\t<Select\n\t\t\tlabel={label}\n\t\t\tdescription={description}\n\t\t\tdisabled={disabled}\n\t\t\tplaceholder={placeholder}\n\t\t\tsize={size}\n\t\t\toptions={options}\n\t\t\tvalue={selectedOption}\n\t\t\tonChange={(option: TOption | undefined) => onChange(option ? getSerializableOptionKey(option, optionKey) : undefined)}\n\t\t\tgetOptionKey={(option: TOption) => getSerializableOptionKey(option, optionKey)}\n\t\t\tgetOptionLabel={(option: TOption) => getSerializableOptionLabel(option, optionLabel, optionKey)}\n\t\t\tgetOptionCode={renderCode ? (option: TOption) => getSerializableOptionKey(option, optionKey) : undefined}\n\t\t\tclassName={className}\n\t\t\tclearable={clearable}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { PolymorphicComponent as e } from "../polymorphic/index.js";
|
|
2
|
-
import { cn as t } from "@ryuzaki13/react-foundation-lib/utils";
|
|
3
|
-
import { jsx as n } from "react/jsx-runtime";
|
|
4
|
-
import "react";
|
|
5
|
-
//#region src/separator/Separator.tsx
|
|
6
|
-
var r = ({ as: r, orientation: i = "horizontal", className: a, ...o }) => /* @__PURE__ */ n(e, {
|
|
7
|
-
as: r,
|
|
8
|
-
"aria-orientation": i,
|
|
9
|
-
className: t(a, i === "horizontal" ? "separator" : "separatorVertical"),
|
|
10
|
-
...o
|
|
11
|
-
});
|
|
12
|
-
//#endregion
|
|
13
|
-
export { r as t };
|
|
14
|
-
|
|
15
|
-
//# sourceMappingURL=separator-CIqnk2z9.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"separator-CIqnk2z9.js","names":[],"sources":["../../src/separator/Separator.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport { PolymorphicComponent, PolymorphicComponentBaseProps } from \"../polymorphic\";\n\ntype SeparatorOwnProps<E extends React.ElementType = React.ElementType> = PolymorphicComponentBaseProps<E> & {\n\torientation?: \"horizontal\" | \"vertical\";\n\tclassName?: string;\n};\n\ntype SeparatorProps<E extends React.ElementType> = SeparatorOwnProps<E> & Omit<React.ComponentPropsWithRef<E>, keyof SeparatorOwnProps>;\n\nexport const Separator = <E extends React.ElementType>({ as, orientation = \"horizontal\", className, ...props }: SeparatorProps<E>) => {\n\tconst Component = as;\n\n\treturn (\n\t\t<PolymorphicComponent\n\t\t\tas={Component as React.ElementType}\n\t\t\taria-orientation={orientation}\n\t\t\tclassName={cn(className, orientation === \"horizontal\" ? \"separator\" : \"separatorVertical\")}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\n"],"mappings":";;;;;AAaA,IAAa,KAA0C,EAAE,OAAI,iBAAc,cAAc,cAAW,GAAG,QAIrG,kBAAC,GAAD;CACK;CACJ,oBAAkB;CAClB,WAAW,EAAG,GAAW,MAAgB,eAAe,cAAc,mBAAmB;CACzF,GAAI;AACJ,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./chevron-left-CktI1oFP.js";import{n as i,t as a}from"./chevron-right-CF10QSRI.js";import{i as o,n as s,r as c}from"./iframe-woVbsQH3.js";import{a as l,i as u}from"./utils-tg3ibbzi.js";import{C as d,_ as f,c as p,d as m,g as h,h as g,m as _,n as v,r as y,s as b}from"./formatters-DVE1YVNQ-YIdRxgw-.js";import{n as x,t as S}from"./Button-CoOZeR_z.js";var C,w;function T(){return(T=e((()=>{o(),C=[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M8 13h.01`,key:`1sbv64`}],[`path`,{d:`M12 13h.01`,key:`y0uutt`}],[`path`,{d:`M16 13h.01`,key:`wip0gl`}],[`path`,{d:`M8 17h.01`,key:`p3bg7i`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M16 17h.01`,key:`ql8jdd`}]],w=c(`calendar-days`,C)})))()}function ee(e){return e===`month`?`month`:e===`year`?`year`:`day`}function E(e,t){return k.indexOf(e)>=k.indexOf(t)}function te(e,t){let n=ee(e);return E(n,t)?n:t}function D(e,t){return!e||!t?!1:e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()}function ne(e,t,n){if(!e||!t||!n)return!1;let r=Math.min(t.start.getTime(),n.start.getTime()),i=Math.max(t.end.getTime(),n.end.getTime());return e.start.getTime()>=r&&e.end.getTime()<=i}function O({date:e,value:t,hoveredDate:n,selectsRange:r,selectionOptions:i}){let a=f(e,i),o=!r&&t instanceof Date?t:null,s=f(o,i);if(!r||!Array.isArray(t))return{selected:v(e,s),range:!1,rangeStart:!1,rangeEnd:!1};let[c,l]=t,u=f(c,i),d=f(l??(c?n:null),i),p=D(a,u),m=D(a,d);return{selected:!1,range:ne(a,u,d)&&!p&&!m,rangeStart:p,rangeEnd:m}}var k,re;function A(){return(A=e((()=>{g(),k=[`day`,`month`,`year`],re=[`friday`,`saturday`,`sunday`]})))()}var ie,ae,oe,se,ce,le,ue,de,fe,j,M,N,P,F,I,L,R;function z(){return(z=e((()=>{ie=`Dshr-j`,ae=`esetVt`,oe=`i-LJYe`,se=`XZsnCH`,ce=`_2KDjTS`,le=`o-freG`,ue=`GcV08-`,de=`UCrE-I`,fe=`L2V3uq`,j=`Te9oCq`,M=`cUF2pQ`,N=`d1L5uw`,P=`LU0M9Y`,F=`MR3y5p`,I=`VDqDpm`,L=`CLR-7m`,R={dayView:ie,weekdays:ae,weekday:oe,daysGrid:se,week:ce,day:le,disabled:ue,outsideMonth:de,periodSelection:fe,periodPreview:j,selected:M,range:N,rangeStart:P,rangeEnd:F,weekend:I,now:L}})))()}var B,V,H,pe,U;function me(){return(me=e((()=>{B=t(),g(),u(),z(),V=s(),H=[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Вс`],pe=new Intl.DateTimeFormat(`ru-RU`,{weekday:`long`,year:`numeric`,month:`long`,day:`numeric`}),U=({now:e,currentDate:t,value:n,onChange:r,minDate:i,maxDate:a,selectsRange:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,p]=(0,B.useState)(null),g={selectionMode:s,weekEndDay:c},y=(()=>{let e=t.getFullYear(),n=t.getMonth(),r=_(e,n,1),i=_(e,n+1,0),a=r.getDay()===0?6:r.getDay()-1,o=42-(a+i.getDate()),s=[],c=_(e,n,0).getDate();for(let t=a;t>0;--t)s.push(_(e,n-1,c-t+1));for(let t=1;t<=i.getDate();t+=1)s.push(_(e,n,t));for(let t=1;t<=o;t+=1)s.push(_(e,n+1,t));let l=[];for(let e=0;e<s.length;e+=7)l.push(s.slice(e,e+7));return l})(),b=o&&Array.isArray(n)?n[0]:null,x=o&&Array.isArray(n)?n[1]:null,S=f(o?null:n,g),C=f(u,g),w=x??(b?C?.end??null:null),T=s===`week`,ee=T&&(!o||!b),E=e=>{if(!o||!b||!w)return!1;let t=m(e).getTime(),n=b.getTime(),r=w.getTime();return t>=Math.min(n,r)&&t<=Math.max(n,r)},te=e=>!h(f(e,g),{minDate:i,maxDate:a}),D=(e,t)=>{t||(T&&p(e),!(!o||!b||x)&&(T||p(e)))};return(0,V.jsxs)(`div`,{className:R.dayView,children:[(0,V.jsx)(`div`,{className:R.weekdays,children:H.map(e=>(0,V.jsx)(`div`,{className:R.weekday,children:e},e))}),(0,V.jsx)(`div`,{className:R.daysGrid,onMouseLeave:()=>{(T||!x)&&p(null)},children:y.map((n,i)=>(0,V.jsx)(`div`,{className:R.week,children:n.map((n,a)=>{let o=n.getMonth()===t.getMonth(),c=v(n,S),u=ee&&v(n,C),f=E(n),p=d(n,b),m=d(n,w),h=d(n,e),g=te(n);return(0,V.jsx)(`button`,{type:`button`,onClick:()=>!g&&r(n),onMouseEnter:()=>D(n,g),disabled:g,"data-ui":`calendar-day-button`,"data-action":`select-calendar-day`,className:l(R.day,{[R.outsideMonth]:!o,[R.periodSelection]:s===`week`,[R.periodPreview]:u&&!c,[R.selected]:c,[R.range]:f&&!p&&!m,[R.rangeStart]:p,[R.rangeEnd]:m,[R.disabled]:g,[R.weekend]:a>4,[R.now]:h}),"aria-label":pe.format(n),"aria-pressed":c||f||p||m,children:n.getDate()},`${i}-${a}`)})},i))})]})},U.__docgenInfo={description:`Отображает сетку дней месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarDayView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var he,ge,_e,ve,ye,be,xe,Se,W;function Ce(){return(Ce=e((()=>{he=`p5pRGW`,ge=`pUHpxD`,_e=`lwWv-z`,ve=`_8gn-3z`,ye=`b57d-c`,be=`nGc5FO`,xe=`JLqjri`,Se=`UQMYwg`,W={monthView:he,monthsGrid:ge,month:_e,disabled:ve,range:ye,selected:be,rangeStart:xe,rangeEnd:Se}})))()}var we,G,Te,Ee,K;function De(){return(De=e((()=>{we=t(),g(),u(),A(),Ce(),G=s(),Te=new Intl.DateTimeFormat(`ru-RU`,{month:`short`}),Ee=new Intl.DateTimeFormat(`ru-RU`,{month:`long`,year:`numeric`}),K=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,we.useState)(null),p=Array.from({length:12},(e,t)=>t),m=e.getFullYear(),g={selectionMode:s,weekEndDay:c},v=a&&Array.isArray(t)?t[0]:null,y=a&&Array.isArray(t)?t[1]:null,b=e=>Te.format(_(m,e,1)),x=e=>{if(!r&&!i)return!1;let t=_(m,e,1),n=_(m,e+1,0,23,59,59);return o?!h(f(t,g),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},S=(e,t)=>{!a||!v||y||t||d(e)};return(0,G.jsx)(`div`,{className:W.monthView,children:(0,G.jsx)(`div`,{className:W.monthsGrid,onMouseLeave:()=>{y||d(null)},children:p.map(e=>{let r=x(e),i=_(m,e,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:g});return(0,G.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>S(i,r),disabled:r,"data-ui":`calendar-month-button`,"data-action":`select-calendar-month`,className:l(W.month,{[W.selected]:o.selected,[W.range]:o.range,[W.rangeStart]:o.rangeStart,[W.rangeEnd]:o.rangeEnd,[W.disabled]:r}),"aria-label":Ee.format(i),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:b(e)},e)})})})},K.__docgenInfo={description:`Отображает выбор месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarMonthView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var Oe,ke,q;function Ae(){return(Ae=e((()=>{Oe=`E35KE6`,ke=`L14Qef`,q={calendarView:Oe,calendarHeader:ke}})))()}var je,Me,Ne,Pe,Fe,Ie,Le,Re,J;function Y(){return(Y=e((()=>{je=`_--xW7O`,Me=`-N-5Jk`,Ne=`hhY92S`,Pe=`IhX7jj`,Fe=`NWNpWj`,Ie=`d1SfcV`,Le=`Gkui4r`,Re=`_0dVZLW`,J={yearView:je,yearsGrid:Me,year:Ne,disabled:Pe,range:Fe,selected:Ie,rangeStart:Le,rangeEnd:Re}})))()}var ze,X,Z;function Be(){return(Be=e((()=>{ze=t(),g(),u(),A(),Y(),X=s(),Z=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,ze.useState)(null),p=Math.floor(e.getFullYear()/12)*12,m=Array.from({length:12},(e,t)=>p+t),g={selectionMode:s,weekEndDay:c},v=a&&Array.isArray(t)?t[0]:null,y=a&&Array.isArray(t)?t[1]:null,b=e=>{if(!r&&!i)return!1;let t=_(e,0,1),n=_(e,11,31,23,59,59);return o?!h(f(t,g),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},x=(e,t)=>{!a||!v||y||t||d(e)};return(0,X.jsx)(`div`,{className:J.yearView,children:(0,X.jsx)(`div`,{className:J.yearsGrid,onMouseLeave:()=>{y||d(null)},children:m.map(e=>{let r=b(e),i=_(e,0,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:g});return(0,X.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>x(i,r),disabled:r,"data-ui":`calendar-year-button`,"data-action":`select-calendar-year`,className:l(J.year,{[J.selected]:o.selected,[J.range]:o.range,[J.rangeStart]:o.rangeStart,[J.rangeEnd]:o.rangeEnd,[J.disabled]:r}),"aria-label":e.toString(),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:e},e)})})})},Z.__docgenInfo={description:`Отображает выбор года в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarYearView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}function Ve(e,t){if(t&&b(e)&&e[0]instanceof Date)return e[0];if(!t&&e instanceof Date)return e}function He({view:e,datePickerLevel:t,selectionMode:n=`day`,weekEndDay:i=`sunday`,onViewChange:o,...s}){let[c]=(0,Q.useState)(()=>m(new Date)),l=Ve(s.value,s.selectsRange),u=l?.getTime()??null,[d,g]=(0,Q.useState)(()=>({sourceValueTime:u,currentDate:l??m(new Date)})),_=l&&d.sourceValueTime!==u?l:d.currentDate,v=s.currentDate??_,b={selectionMode:n,weekEndDay:i},x=e=>{let t=typeof e==`function`?e(v):e;s.currentDate===void 0&&g({sourceValueTime:u,currentDate:t}),s.onCurrentDateChange?.(t)},C=()=>{if(e===`day`){x(e=>p(e,-1));return}if(e===`month`){x(e=>y(e,-1));return}x(e=>y(e,-12))},w=()=>{if(e===`day`){x(e=>p(e,1));return}if(e===`month`){x(e=>y(e,1));return}x(e=>y(e,12))};return(0,$.jsxs)(`div`,{className:q.calendarView,children:[(()=>{let t=``;if(e===`day`)t=v.toLocaleDateString(`ru-RU`,{month:`long`,year:`numeric`});else if(e===`month`)t=v.getFullYear().toString();else{let e=Math.floor(v.getFullYear()/12)*12;t=`${e} - ${e+11}`}return(0,$.jsxs)(`div`,{className:q.calendarHeader,children:[(0,$.jsx)(S,{icon:(0,$.jsx)(r,{}),onClick:C,variant:`ghost`,"aria-label":`Предыдущий`,"data-action":`calendar-previous`}),(0,$.jsx)(S,{onClick:()=>{e===`day`?o(`month`):e===`month`&&o(`year`)},variant:`ghost`,className:`flex1`,"data-ui":`calendar-view-switch-button`,"data-action":`calendar-switch-view`,children:t}),(0,$.jsx)(S,{icon:(0,$.jsx)(a,{}),onClick:w,variant:`ghost`,"aria-label":`Следующий`,"data-ui":`calendar-next-button`,"data-action":`calendar-next`})]})})(),(()=>{let r=e=>{let t=f(e,b);if(!(!t||!h(t,{minDate:s.minDate,maxDate:s.maxDate}))){if(s.selectsRange){let e=null,n=null;if(Array.isArray(s.value)&&([e,n]=s.value),!e||n){s.onChange([t.start,null]);return}let r=f(e,b);if(!r)return;if(t.start<r.start){s.onChange([t.start,r.end]);return}s.onChange([r.start,t.end]);return}s.onChange(t.start)}},a=e=>{if(x(e),n===`month`||!E(`day`,t)){r(e);return}o(`day`)},l=e=>{if(x(e),n===`year`||!E(`month`,t)){r(e);return}o(`month`)};switch(e){case`day`:return(0,$.jsx)(U,{now:c,currentDate:v,value:s.value,onChange:r,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectionMode:n,weekEndDay:i});case`month`:return(0,$.jsx)(K,{currentDate:v,value:s.value,onChange:a,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`month`||!E(`day`,t),selectionMode:n,weekEndDay:i});case`year`:return(0,$.jsx)(Z,{currentDate:v,value:s.value,onChange:l,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`year`||!E(`month`,t),selectionMode:n,weekEndDay:i});default:return null}})()]})}var Q,$;function Ue(){return(Ue=e((()=>{Q=t(),g(),n(),i(),x(),A(),me(),De(),Ae(),Be(),$=s(),He.__docgenInfo={description:`Отображает календарь выбора даты в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarView`,props:{view:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},datePickerLevel:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},selectionMode:{required:!1,tsType:{name:`CalendarPeriodSelectionMode`},description:``,defaultValue:{value:`"day"`,computed:!1}},weekEndDay:{required:!1,tsType:{name:`CalendarWeekEndDay`},description:``,defaultValue:{value:`"sunday"`,computed:!1}},onViewChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(view: CalendarType) => void`,signature:{arguments:[{type:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},name:`view`}],return:{name:`void`}}},description:``},selectsRange:{required:!1,tsType:{name:`boolean`},description:``},value:{required:!0,tsType:{name:`union`,raw:`Date | NullableDateRange | null`,elements:[{name:`Date`},{name:`NullableDateRange`},{name:`null`}]},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(date: Date | NullableDateRange) => void`,signature:{arguments:[{type:{name:`union`,raw:`Date | NullableDateRange`,elements:[{name:`Date`},{name:`NullableDateRange`}]},name:`date`}],return:{name:`void`}}},description:``},minDate:{required:!1,tsType:{name:`Date`},description:``},maxDate:{required:!1,tsType:{name:`Date`},description:``},currentDate:{required:!1,tsType:{name:`Date`},description:``},onCurrentDateChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(date: Date) => void`,signature:{arguments:[{type:{name:`Date`},name:`date`}],return:{name:`void`}}},description:``}}}})))()}export{E as a,T as c,A as i,Ue as n,te as o,re as r,w as s,He as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,n as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-woVbsQH3.js";import{t as i}from"./react-dom-BzEl8usk.js";import{a,i as o}from"./utils-tg3ibbzi.js";import{i as s,n as c,r as l,t as u}from"./OptionButton--hnpJ-88.js";import{_ as d,a as f,f as p,h as m,m as h,r as g}from"./floating-ui.react-CyNWkXBV.js";import{a as _,i as v,n as y,r as b}from"./dom-DBd_DWF8.js";import{n as x}from"./error-De9R4E_F.js";import{n as S,t as C}from"./ui.module-CyEEibCu.js";import{n as w,r as T,t as E}from"./react-D3CyilRt.js";import{i as D,n as O,r as k,t as A}from"./Option-fRoOLqLF.js";function j(e,t){if(e){if(typeof e==`function`){e(t);return}e.current=t}}function ee(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function te(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function ne(){return(ne=t((()=>{})))()}function M(){let e=(0,N.useContext)(P);if(!e)throw x({hookName:`useMenuContext`,providerName:`MenuRoot`});return e}var N,P;function F(){return(F=t((()=>{N=n(),P=(0,N.createContext)(null)})))()}var re,ie;function ae(){return(ae=t((()=>{re=n(),F(),ie=({children:e,resolveTrigger:t})=>{let{mode:n,open:r,registerTriggerElement:i,onTriggerContextMenu:a,onTriggerKeyDown:o}=M();if(n!==`contextmenu`)throw Error(`ContextMenu.Trigger must be used within <ContextMenu>`);return(0,re.cloneElement)(e,{ref:t=>{let n=e.props.ref;j(n,t),i(t)},"aria-haspopup":`menu`,"aria-expanded":r,onContextMenu:n=>{if(e.props.onContextMenu?.(n),n.defaultPrevented)return;let r=t?t(n.target):n.currentTarget;r&&a(n,r)},onKeyDown:n=>{if(e.props.onKeyDown?.(n),n.defaultPrevented)return;let r=t?t(n.target):n.currentTarget;r&&o(n,r)}})},ie.__docgenInfo={description:``,methods:[],displayName:`ContextMenuTrigger`,props:{children:{required:!0,tsType:{name:`ReactReactElement`,raw:`React.ReactElement<React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }>`,elements:[{name:`intersection`,raw:`React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }`,elements:[{name:`ReactHTMLAttributes`,raw:`React.HTMLAttributes<HTMLElement>`,elements:[{name:`HTMLElement`}]},{name:`signature`,type:`object`,raw:`{ ref?: React.Ref<HTMLElement> }`,signature:{properties:[{key:`ref`,value:{name:`ReactRef`,raw:`React.Ref<HTMLElement>`,elements:[{name:`HTMLElement`}],required:!1}}]}}]}]},description:``},resolveTrigger:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(eventTarget: EventTarget | null) => HTMLElement | null`,signature:{arguments:[{type:{name:`union`,raw:`EventTarget | null`,elements:[{name:`EventTarget`},{name:`null`}]},name:`eventTarget`}],return:{name:`union`,raw:`HTMLElement | null`,elements:[{name:`HTMLElement`},{name:`null`}]}}},description:`Позволяет одному ContextMenu обслуживать множество вложенных целей без отдельного floating-ui runtime на каждую строку или ячейку.`}}}})))()}var oe,se,ce,le,ue,de,fe,pe,me,he,ge,I;function L(){return(L=t((()=>{oe=`MsGee8`,se=`_5yVJwD`,ce=`f9wo9l`,le=`_9IPwGF`,ue=`CAmmlz`,de=`_5KEBWR`,fe=`L28onY`,pe=`Pg-1Y3`,me=`ObIrS2`,he=`_0jf5vt`,ge=`zKwsQF`,I={menuPositioner:oe,menuOptions:se,radialPanel:ce,radialRing:le,radialCenterButton:ue,radialCenterButtonText:de,radialItems:fe,radialItemSlot:pe,radialItem:me,radialItemIcon:he,radialItemText:ge}})))()}var R,_e,z,B;function ve(){return(ve=t((()=>{R=e(n(),1),b(),o(),E(),_e=i(),D(),L(),F(),z=r(),B=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0})=>{let{open:s,floatingStyles:c,floatingRef:l,triggerRef:u,setFloating:d,closeMenu:f}=M(),p=(0,R.useCallback)(()=>{let e=l.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[l]);_({active:s,initialFocus:e=>p()[0]??e,restoreFocus:o,restoreFocusTarget:()=>u.current,containerRef:l}),y({active:s,enabled:r,onDismiss:f,containerRef:l});let m=(0,R.useCallback)(()=>{!s||i||n&&f()},[s,i,n,f]);v([l,u],m);let h=(0,R.useCallback)(e=>{let t=p();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[p]);return typeof document>`u`?null:(0,_e.createPortal)((0,z.jsx)(T,{children:s&&(0,z.jsx)(w.div,{ref:d,style:c,role:`menu`,tabIndex:-1,className:I.menuPositioner,onKeyDown:h,initial:{opacity:0,scale:.96,y:-2},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.96,y:-2},transition:{duration:.14,ease:`easeOut`},children:(0,z.jsx)(k,{className:a(I.menuOptions,t),children:typeof e==`function`?e({closeMenu:f}):e})})}),document.body)}})))()}var ye,V;function be(){return(be=t((()=>{n(),o(),C(),ye=r(),V=({children:e,className:t})=>(0,ye.jsx)(`div`,{className:a(S.uiPopupGroupLabel,t),children:e}),V.__docgenInfo={description:``,methods:[],displayName:`MenuGroupLabel`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``}}}})))()}function xe({ref:e,icon:t,text:n,searchText:r,code:i,hotkey:o,...s}){return(0,H.jsx)(`a`,{...s,ref:e,className:a(S.uiOptionLink,s.className),children:(0,H.jsx)(l,{icon:t,text:n,searchText:r,...i===void 0?{hotkey:o}:{code:i}})})}var H;function Se(){return(Se=t((()=>{o(),C(),s(),H=r(),xe.__docgenInfo={description:`Основное link-действие внутри внешней оболочки Option.`,methods:[],displayName:`OptionLink`,props:{icon:{required:!1,tsType:{name:`ReactNode`},description:``},text:{required:!0,tsType:{name:`string`},description:``},searchText:{required:!1,tsType:{name:`string`},description:``},emphasizeContent:{required:!1,tsType:{name:`boolean`},description:``},ref:{required:!1,tsType:{name:`Ref`,elements:[{name:`HTMLAnchorElement`}],raw:`Ref<HTMLAnchorElement>`},description:``}}}})))()}function U({children:e,icon:t,hotKey:n,className:r,disabled:i,href:a,target:o,rel:s,closeOnSelect:c=!0,onSelect:l}){let{closeMenu:d}=M(),f=(0,Ce.useCallback)(e=>{if(i){e.preventDefault(),e.stopPropagation();return}l?.(e),!e.defaultPrevented&&c&&d()},[i,l,c,d]);return a?(0,W.jsx)(A,{disabled:i,className:r,children:(0,W.jsx)(xe,{icon:t,hotkey:n,text:e,href:a,target:o,rel:s,role:`menuitem`,tabIndex:-1,"aria-disabled":i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,onClick:f})}):(0,W.jsx)(A,{disabled:i,className:r,children:(0,W.jsx)(u,{icon:t,hotkey:n,text:e,role:`menuitem`,tabIndex:-1,disabled:i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,onClick:f})})}var Ce,W;function G(){return(G=t((()=>{Ce=n(),O(),c(),Se(),F(),W=r(),U.__docgenInfo={description:``,methods:[],displayName:`MenuItem`,props:{children:{required:!0,tsType:{name:`string`},description:``},icon:{required:!1,tsType:{name:`ReactNode`},description:``},hotKey:{required:!1,tsType:{name:`string`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},href:{required:!1,tsType:{name:`string`},description:``},target:{required:!1,tsType:{name:`HTMLAttributeAnchorTarget`},description:``},rel:{required:!1,tsType:{name:`string`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: MouseEvent<HTMLElement>) => void`,signature:{arguments:[{type:{name:`MouseEvent`,elements:[{name:`HTMLElement`}],raw:`MouseEvent<HTMLElement>`},name:`event`}],return:{name:`void`}}},description:``}}}})))()}function we(e){return{x:e.clientX,y:e.clientY}}function Te(e){return{x:e.left+e.width/2,y:e.top+e.height/2}}function Ee(e,t){return{contextElement:t??void 0,getBoundingClientRect:()=>({x:e.x,y:e.y,top:e.y,left:e.x,bottom:e.y,right:e.x,width:0,height:0,toJSON:()=>{}})}}function De(e){return{open:!0,source:e.source,anchor:e.anchor}}function Oe(e){return!e.open&&e.anchor===null?e:{open:!1,source:null,anchor:null}}var ke;function Ae(){return(Ae=t((()=>{ke={open:!1,source:null,anchor:null}})))()}function K({children:e,mode:t,placement:n=t===`click`?`bottom-start`:`right-start`,open:r,defaultOpen:i,onOpenChange:a}){let[o,s]=(0,q.useState)(ke),[c,l]=(0,q.useState)(i??!1),u=r!==void 0,g=u?r:c,_=(0,q.useRef)(null),v=(0,q.useRef)(null),{refs:y,floatingStyles:b,update:x}=f({placement:n,strategy:t===`contextmenu`?`fixed`:`absolute`,transform:!1,middleware:[h(6),p({padding:8}),m({padding:8})],whileElementsMounted:d}),S=(0,q.useCallback)(e=>{u||l(e),a?.(e),e||s(e=>Oe(e))},[u,a]),C=(0,q.useCallback)(()=>{S(!1)},[S]),w=(0,q.useCallback)((e,t)=>{y.setReference(e),s(De({source:t,anchor:{type:`element`,element:e}})),S(!0)},[y,S]),T=(0,q.useCallback)((e,t,n)=>{y.setReference(Ee(e,n)),s(De({source:t,anchor:{type:`point`,point:e,contextElement:n}})),S(!0),x()},[y,S,x]),E=(0,q.useCallback)(e=>{let n=v.current;v.current=e,(_.current===null||_.current===n)&&(_.current=e),t===`click`&&y.setReference(e)},[t,y]),D=(0,q.useCallback)(e=>{if(t!==`click`)return;let n=e.currentTarget;if(g&&o.anchor?.type===`element`&&o.anchor.element===n){C();return}w(n,`click`)},[t,g,o.anchor,C,w]),O=(0,q.useCallback)((e,n=e.currentTarget)=>{if(t!==`contextmenu`)return;e.preventDefault();let r=we(e);_.current=n,T(r,`contextmenu`,n)},[t,T]),k=(0,q.useCallback)((e,n=e.currentTarget)=>{if(!(e.key===`ContextMenu`||e.shiftKey&&e.key===`F10`))return;if(e.preventDefault(),_.current=n,t===`click`){w(n,`keyboard`);return}let r=Te(n.getBoundingClientRect());T(r,`keyboard`,n)},[t,w,T]),A=g&&o.anchor!==null,j=(0,q.useMemo)(()=>o.anchor?o.anchor.type===`point`?o.anchor.point:Te(o.anchor.element.getBoundingClientRect()):null,[o.anchor]),ee=(0,q.useMemo)(()=>({mode:t,open:A,openSource:o.source,anchorPoint:j,floatingStyles:b,floatingRef:y.floating,triggerRef:_,setFloating:y.setFloating,registerTriggerElement:E,onTriggerClick:D,onTriggerContextMenu:O,onTriggerKeyDown:k,closeMenu:C}),[t,A,o.source,j,b,y.floating,y.setFloating,E,D,O,k,C]);return(0,je.jsx)(P.Provider,{value:ee,children:e})}var q,je;function J(){return(J=t((()=>{q=e(n(),1),g(),Ae(),F(),je=r(),K.__docgenInfo={description:``,methods:[],displayName:`MenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},mode:{required:!0,tsType:{name:`union`,raw:`"click" | "contextmenu"`,elements:[{name:`literal`,value:`"click"`},{name:`literal`,value:`"contextmenu"`}]},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`mode === "click" ? "bottom-start" : "right-start"`,computed:!1}},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}var Me,Y;function X(){return(X=t((()=>{n(),o(),C(),Me=r(),Y=({className:e})=>(0,Me.jsx)(`div`,{role:`separator`,className:a(S.uiPopupOptionSeparator,e)}),Y.__docgenInfo={description:``,methods:[],displayName:`MenuSeparator`,props:{className:{required:!1,tsType:{name:`string`},description:``}}}})))()}function Ne(e,t,n){return n<t?t:Math.min(Math.max(e,t),n)}var Z,Pe,Q,Fe;function Ie(){return(Ie=t((()=>{Z=e(n(),1),b(),o(),E(),Pe=i(),L(),F(),Q=r(),Fe=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0,radius:s=76,itemSize:c=64,closeLabel:l=`Закрыть`})=>{let{open:u,anchorPoint:d,floatingRef:f,triggerRef:p,setFloating:m,closeMenu:h}=M(),g=typeof e==`function`?e({closeMenu:h}):e,b=(0,Z.useMemo)(()=>Z.Children.toArray(g),[g]),x=b.length,S=s*2+c,C=(0,Z.useMemo)(()=>{if(typeof window>`u`||!d)return null;let e=S/2+8;return{x:Ne(d.x,e,window.innerWidth-e),y:Ne(d.y,e,window.innerHeight-e)}},[d,S]),E=(0,Z.useCallback)(()=>{let e=f.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[f]);_({active:u,initialFocus:e=>E()[0]??e,restoreFocus:o,restoreFocusTarget:()=>p.current,containerRef:f}),(0,Z.useEffect)(()=>{if(!u||!d)return;let e=0;return e=window.requestAnimationFrame(()=>{(E()[0]??f.current)?.focus()}),()=>window.cancelAnimationFrame(e)},[u,d,E,f]),y({active:u,enabled:r,onDismiss:h,containerRef:f});let D=(0,Z.useCallback)(()=>{!u||i||n&&h()},[u,i,n,h]);v([f,p],D);let O=(0,Z.useCallback)(e=>{let t=E();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowRight`||e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowLeft`||e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[E]);return typeof document>`u`?null:(0,Pe.createPortal)((0,Q.jsx)(T,{children:u&&C&&(0,Q.jsxs)(w.div,{ref:m,style:{"--radial-panel-size":`${S}px`,"--radial-radius":`${s}px`,"--radial-item-size":`${c}px`,left:C.x-S/2,top:C.y-S/2,transformOrigin:`center`},role:`menu`,tabIndex:-1,className:a(I.radialPanel,t),onKeyDown:O,initial:{opacity:0,scale:.78},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.78},transition:{duration:.16,ease:`easeOut`},children:[(0,Q.jsx)(`div`,{className:I.radialRing,"aria-hidden":`true`}),(0,Q.jsx)(`button`,{type:`button`,role:`menuitem`,className:I.radialCenterButton,"aria-label":l,"data-menu-item":`true`,"data-radial-close":`true`,onClick:h,children:(0,Q.jsx)(`span`,{className:I.radialCenterButtonText,children:l})}),(0,Q.jsx)(`div`,{className:I.radialItems,children:b.map((e,t)=>{let n=x>0?-90+360/x*t:-90;return(0,Q.jsx)(`div`,{className:I.radialItemSlot,style:{"--radial-item-angle":`${n}deg`},children:e},t)})})]})}),document.body)}})))()}var Le,$,Re;function ze(){return(ze=t((()=>{Le=e(n(),1),o(),L(),F(),$=r(),Re=({children:e,icon:t,className:n,disabled:r,closeOnSelect:i=!0,onSelect:o})=>{let{closeMenu:s}=M(),c=(0,Le.useCallback)(e=>{if(r){e.preventDefault(),e.stopPropagation();return}o?.(e),!e.defaultPrevented&&i&&s()},[r,o,i,s]);return(0,$.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,disabled:r,"aria-disabled":r,"data-menu-item":`true`,"data-disabled":r?`true`:void 0,"data-ui":`radial-menu-item`,"data-action":`select-radial-menu-item`,className:a(I.radialItem,n),onClick:c,children:[t&&(0,$.jsx)(`span`,{className:I.radialItemIcon,children:t}),(0,$.jsx)(`span`,{className:I.radialItemText,children:e})]})},Re.__docgenInfo={description:``,methods:[],displayName:`RadialMenuItem`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},icon:{required:!1,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: React.MouseEvent<HTMLButtonElement>) => void`,signature:{arguments:[{type:{name:`ReactMouseEvent`,raw:`React.MouseEvent<HTMLButtonElement>`,elements:[{name:`HTMLButtonElement`}]},name:`event`}],return:{name:`void`}}},description:``}}}})))()}var Be,Ve,He;function Ue(){return(Ue=t((()=>{n(),ae(),ve(),be(),G(),J(),X(),Ie(),ze(),Be=r(),Ve=({children:e,placement:t,open:n,defaultOpen:r,onOpenChange:i})=>(0,Be.jsx)(K,{mode:`contextmenu`,placement:t,open:n,defaultOpen:r,onOpenChange:i,children:e}),He=Object.assign(Ve,{Trigger:ie,Content:B,RadialContent:Fe,Item:U,RadialItem:Re,Separator:Y,GroupLabel:V}),Ve.__docgenInfo={description:``,methods:[],displayName:`ContextMenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}export{ee as _,K as a,G as c,B as d,ve as f,te as g,j as h,X as i,V as l,M as m,Ue as n,J as o,F as p,Y as r,U as s,He as t,be as u,ne as v};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n,t as r}from"./settings-2-CKbiQBX8.js";import{n as i,t as a}from"./trash-2-CPWRIQlJ.js";import{i as o,n as s,r as c}from"./iframe-woVbsQH3.js";import{n as l,t as u}from"./createControlledStoryRender-BouhvX-R.js";import{n as d,t as f}from"./ContextMenu-XS7B8QUC.js";import{n as p,t as m}from"./DropdownMenu-xjOtBneA.js";var h,g;function _(){return(_=e((()=>{o(),h=[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]],g=c(`copy`,h)})))()}var v,y;function b(){return(b=e((()=>{o(),v=[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]],y=c(`eye`,v)})))()}var x,S;function C(){return(C=e((()=>{o(),x=[[`path`,{d:`M13 21h8`,key:`1jsn5i`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}],[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}]],S=c(`pencil-line`,x)})))()}var w,T;function E(){return(E=e((()=>{o(),w=[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]],T=c(`pin`,w)})))()}var D=t({ContextMenuBasic:()=>L,ContextMenuRadial:()=>R,ControlledDropdown:()=>z,DropdownMenuBasic:()=>I,__namedExportsOrder:()=>B,default:()=>F});function O(e,t){return{args:e,onOpenChange:n=>{e.onOpenChange?.(n),t({open:n})}}}function k({args:e,updateArgs:t}){let{onOpenChange:n}=O(e,t);return(0,M.jsxs)(m,{placement:e.placement,open:e.open,defaultOpen:e.defaultOpen,onOpenChange:n,children:[(0,M.jsx)(m.Trigger,{children:(0,M.jsx)(`button`,{type:`button`,children:`Действия`})}),(0,M.jsxs)(m.Content,{closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,restoreFocus:e.restoreFocus,children:[(0,M.jsx)(m.GroupLabel,{children:`Файл`}),(0,M.jsx)(m.Item,{icon:(0,M.jsx)(S,{}),hotKey:`Ctrl+E`,children:`Редактировать`}),(0,M.jsx)(m.Item,{icon:(0,M.jsx)(g,{}),hotKey:`Ctrl+C`,children:`Копировать`}),(0,M.jsx)(m.Separator,{}),(0,M.jsx)(m.Item,{icon:(0,M.jsx)(a,{}),hotKey:`Del`,children:`Удалить`})]})]})}function A({args:e,updateArgs:t}){let{onOpenChange:n}=O(e,t);return(0,M.jsxs)(f,{placement:e.placement,open:e.open,defaultOpen:e.defaultOpen,onOpenChange:n,children:[(0,M.jsx)(f.Trigger,{children:(0,M.jsxs)(`div`,{style:{width:300,height:180,display:`grid`,placeItems:`center`,border:`1px dashed var(--border-1)`,borderRadius:`var(--radius-sm)`,background:`var(--surface-1)`,padding:16,textAlign:`center`},children:[`Нажмите правой кнопкой мыши`,(0,M.jsx)(`br`,{}),`или Shift+F10`]})}),(0,M.jsxs)(f.Content,{closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,restoreFocus:e.restoreFocus,children:[(0,M.jsx)(f.Item,{icon:(0,M.jsx)(S,{size:14}),children:`Переименовать`}),(0,M.jsx)(f.Item,{icon:(0,M.jsx)(g,{size:14}),children:`Дублировать`}),(0,M.jsx)(f.Separator,{}),(0,M.jsx)(f.Item,{icon:(0,M.jsx)(a,{size:14}),children:`Переместить в корзину`})]})]})}function j({args:e,updateArgs:t}){let{onOpenChange:n}=O(e,t);return(0,M.jsxs)(f,{placement:e.placement,open:e.open,defaultOpen:e.defaultOpen,onOpenChange:n,children:[(0,M.jsx)(f.Trigger,{children:(0,M.jsxs)(`div`,{style:{width:360,height:220,display:`grid`,placeItems:`center`,border:`1px dashed var(--border-1)`,borderRadius:`var(--radius-sm)`,background:`var(--surface-1)`,padding:16,textAlign:`center`},children:[`Нажмите правой кнопкой мыши`,(0,M.jsx)(`br`,{}),`или Shift+F10`]})}),(0,M.jsxs)(f.RadialContent,{closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,restoreFocus:e.restoreFocus,radius:e.radius,itemSize:e.itemSize,closeLabel:e.closeLabel,children:[(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(S,{}),children:`Править`}),(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(g,{}),children:`Копия`}),(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(T,{}),children:`Закрепить`}),(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(y,{}),children:`Просмотр`}),(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(r,{}),children:`Опции`}),(0,M.jsx)(f.RadialItem,{icon:(0,M.jsx)(a,{}),children:`Удалить`})]})]})}var M,N,P,F,I,L,R,z,B;function V(){return(V=e((()=>{_(),b(),C(),E(),n(),i(),l(),d(),p(),M=s(),{useArgs:N}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:P}=__STORYBOOK_MODULE_TEST__,F={title:`UI/ContextMenu`,component:f,args:{children:null,placement:`right-start`,open:!1,defaultOpen:!1,onOpenChange:P(),closeOnOutside:!0,closeOnEscape:!0,disableOutsideClick:!1,restoreFocus:!0},parameters:{atomicCanvas:!0,layout:`centered`},argTypes:{children:{description:`Композиция из Trigger, Content и пунктов меню.`,control:!1},placement:{description:`Предпочтительное положение меню относительно trigger или точки вызова.`,control:`select`,options:[`top`,`top-start`,`top-end`,`right`,`right-start`,`right-end`,`bottom`,`bottom-start`,`bottom-end`,`left`,`left-start`,`left-end`]},open:{description:`Контролируемая видимость меню.`,control:`boolean`},defaultOpen:{description:`Начальная видимость в uncontrolled-режиме.`,control:`boolean`},onOpenChange:{description:`Вызывается при открытии и закрытии меню.`,control:!1},closeOnOutside:{description:`Закрывает обычную панель по клику снаружи.`,control:`boolean`},closeOnEscape:{description:`Закрывает обычную панель по клавише Escape.`,control:`boolean`},disableOutsideClick:{description:`Игнорирует клики снаружи панели.`,control:`boolean`},restoreFocus:{description:`Возвращает фокус на trigger после закрытия.`,control:`boolean`},radius:{description:`Радиус кольца для радиального меню.`,control:{type:`number`,min:0,step:1}},itemSize:{description:`Размер пункта радиального меню в пикселях.`,control:{type:`number`,min:1,step:1}},closeLabel:{description:`Доступное имя и подпись центральной кнопки закрытия радиального меню.`,control:`text`}}},I={name:`DropdownMenu / Базовый`,args:{placement:`bottom-start`},render:u((e,t)=>(0,M.jsx)(k,{args:e,updateArgs:t}))},L={name:`ContextMenu / По правому клику`,render:u((e,t)=>(0,M.jsx)(A,{args:e,updateArgs:t}))},R={name:`ContextMenu / Радиальное меню`,args:{radius:76,itemSize:64,closeLabel:`Закрыть`},render:u((e,t)=>(0,M.jsx)(j,{args:e,updateArgs:t}))},z={name:`DropdownMenu / Контролируемый`,args:{placement:`bottom-start`},render:function(){let[e,t]=N(),{onOpenChange:n}=O(e,t);return(0,M.jsxs)(m,{placement:e.placement,open:e.open,defaultOpen:e.defaultOpen,onOpenChange:n,children:[(0,M.jsx)(m.Trigger,{children:(0,M.jsx)(`button`,{type:`button`,children:e.open?`Скрыть меню`:`Показать меню`})}),(0,M.jsx)(m.Content,{closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,restoreFocus:e.restoreFocus,children:(0,M.jsx)(m.Item,{onSelect:()=>n(!1),children:`Закрыть`})})]})}},I.parameters={...I.parameters,docs:{...I.parameters?.docs,source:{originalSource:`{
|
|
2
|
-
name: "DropdownMenu / Базовый",
|
|
3
|
-
args: {
|
|
4
|
-
placement: "bottom-start"
|
|
5
|
-
},
|
|
6
|
-
render: createControlledStoryRender<DropdownMenuStoryArgs>((args, updateArgs) => <DropdownMenuBasicCanvas args={args} updateArgs={updateArgs} />)
|
|
7
|
-
}`,...I.parameters?.docs?.source}}},L.parameters={...L.parameters,docs:{...L.parameters?.docs,source:{originalSource:`{
|
|
8
|
-
name: "ContextMenu / По правому клику",
|
|
9
|
-
render: createControlledStoryRender<ContextMenuStoryArgs>((args, updateArgs) => <ContextMenuBasicCanvas args={args} updateArgs={updateArgs} />)
|
|
10
|
-
}`,...L.parameters?.docs?.source}}},R.parameters={...R.parameters,docs:{...R.parameters?.docs,source:{originalSource:`{
|
|
11
|
-
name: "ContextMenu / Радиальное меню",
|
|
12
|
-
args: {
|
|
13
|
-
radius: 76,
|
|
14
|
-
itemSize: 64,
|
|
15
|
-
closeLabel: "Закрыть"
|
|
16
|
-
},
|
|
17
|
-
render: createControlledStoryRender<RadialContextMenuStoryArgs>((args, updateArgs) => <ContextMenuRadialCanvas args={args} updateArgs={updateArgs} />)
|
|
18
|
-
}`,...R.parameters?.docs?.source}}},z.parameters={...z.parameters,docs:{...z.parameters?.docs,source:{originalSource:`{
|
|
19
|
-
name: "DropdownMenu / Контролируемый",
|
|
20
|
-
args: {
|
|
21
|
-
placement: "bottom-start"
|
|
22
|
-
},
|
|
23
|
-
render: function Render() {
|
|
24
|
-
const [args, updateArgs] = useArgs<DropdownMenuStoryArgs>();
|
|
25
|
-
const {
|
|
26
|
-
onOpenChange
|
|
27
|
-
} = createMenuOpenChange(args, updateArgs);
|
|
28
|
-
return <DropdownMenu placement={args.placement} open={args.open} defaultOpen={args.defaultOpen} onOpenChange={onOpenChange}>
|
|
29
|
-
<DropdownMenu.Trigger>
|
|
30
|
-
<button type="button">{args.open ? "Скрыть меню" : "Показать меню"}</button>
|
|
31
|
-
</DropdownMenu.Trigger>
|
|
32
|
-
<DropdownMenu.Content closeOnOutside={args.closeOnOutside} closeOnEscape={args.closeOnEscape} disableOutsideClick={args.disableOutsideClick} restoreFocus={args.restoreFocus}>
|
|
33
|
-
<DropdownMenu.Item onSelect={() => onOpenChange(false)}>Закрыть</DropdownMenu.Item>
|
|
34
|
-
</DropdownMenu.Content>
|
|
35
|
-
</DropdownMenu>;
|
|
36
|
-
}
|
|
37
|
-
}`,...z.parameters?.docs?.source}}},B=[`DropdownMenuBasic`,`ContextMenuBasic`,`ContextMenuRadial`,`ControlledDropdown`]})))()}export{V as a,I as i,D as n,z as r,L as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-woVbsQH3.js";import{a as n,i as r}from"./utils-tg3ibbzi.js";import{n as i,t as a}from"./ui.module-CyEEibCu.js";function o({ref:e,...t}){return(0,s.jsx)(`button`,{...t,ref:e,type:`button`,className:n(i.uiOptionButton,t.className)})}var s;function c(){return(c=e((()=>{r(),a(),s=t(),o.__docgenInfo={description:``,methods:[],displayName:`CustomOptionButton`,props:{ref:{required:!1,tsType:{name:`Ref`,elements:[{name:`HTMLButtonElement`}],raw:`Ref<HTMLButtonElement>`},description:``}}}})))()}export{c as n,o as t};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-woVbsQH3.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";var o,s,c,l,u,d,f,p,m,h,g,_,v,y,b;function x(){return(x=e((()=>{o=`DyKaN-`,s=`_2Cf0DN`,c=`igyZiV`,l=`lFsl-5`,u=`zQlD1x`,d=`a6oRih`,f=`MYdzIV`,p=`Pxw-eb`,m=`Kz2K6S`,h=`Pbwja7`,g=`_1DseTb`,_=`h3oORx`,v=`gB9Kr4`,y=`V-PlLc`,b={detailList:o,none:s,small:c,normal:l,large:u,detail:d,dt:f,dd:p,textCenter:m,inline:h,start:g,center:_,end:v,noWrap:y}})))()}function S({label:e,value:t,withColon:n,required:r}){let{semantic:a,inline:o,noWrap:s,center:c,vertical:l=`center`,withColon:u=!0}=(0,C.useContext)(T),d=i(b.detail,c&&b.textCenter,o&&b.inline,s&&b.noWrap,b[l]),f=(0,w.jsxs)(w.Fragment,{children:[e,r&&(0,w.jsx)(`span`,{className:`statusError`,children:`*`}),(typeof n==`boolean`?n:u)&&`:`]});switch(a){case`detail`:return(0,w.jsxs)(`div`,{className:d,children:[(0,w.jsx)(`dt`,{className:b.dt,children:f}),(0,w.jsx)(`dd`,{className:b.dd,children:t})]});case`list`:return(0,w.jsxs)(`li`,{className:d,children:[(0,w.jsx)(`div`,{className:b.dt,children:f}),(0,w.jsx)(`div`,{className:b.dd,children:t})]});default:return(0,w.jsxs)(`div`,{className:d,children:[(0,w.jsx)(`div`,{className:b.dt,children:f}),(0,w.jsx)(`div`,{className:b.dd,children:t})]})}}var C,w,T,E;function D(){return(D=e((()=>{C=n(),a(),x(),w=r(),T=(0,C.createContext)({}),E=({children:e,columnCount:t=1,rowGap:n=`none`,semantic:r=`list`,className:a,...o})=>{let s=i(b.detailList,b[n],a),c={columnCount:Math.min(5,Math.max(1,t))},l=r===`detail`?(0,w.jsx)(`dl`,{className:s,style:c,children:e}):(0,w.jsx)(`ul`,{className:s,style:c,children:e});return(0,w.jsx)(T.Provider,{value:{...o,semantic:r},children:l})},E.Item=S,E.__docgenInfo={description:`Компонент для вывода пар «заголовок-значение» в одну или несколько колонок. Подходит для карточек сущностей, сводок и страниц просмотра.`,methods:[{name:`Item`,docblock:null,modifiers:[`static`],params:[{name:`{ label, value, withColon, required }: DetailItemProps`,optional:!1,type:{name:`DetailItemProps`,alias:`DetailItemProps`}}],returns:null}],displayName:`Detail`,props:{columnCount:{defaultValue:{value:`1`,computed:!1},required:!1},rowGap:{defaultValue:{value:`"none"`,computed:!1},required:!1},semantic:{defaultValue:{value:`"list"`,computed:!1},required:!1}}}})))()}var O=t({BasicList:()=>M,CustomLabel:()=>F,MultipleColumns:()=>N,SemanticDl:()=>P,__namedExportsOrder:()=>I,default:()=>j}),k,A,j,M,N,P,F,I;function L(){return(L=e((()=>{D(),k=r(),{useArgs:A}=__STORYBOOK_MODULE_PREVIEW_API__,j={title:`UI/Detail`,component:E,args:{columnCount:1,rowGap:`normal`,semantic:`list`,inline:!1,center:!1,vertical:`center`,noWrap:!1},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{columnCount:{description:`Количество колонок (1-5).`,control:`number`},rowGap:{description:`Вертикальные интервалы между строками.`,control:`inline-radio`,options:[`none`,`small`,`normal`,`large`]},semantic:{description:`Семантический режим контейнера списка деталей.`,control:`inline-radio`,options:[`detail`,`list`]},inline:{description:`Размещает метку и значение в одну строку.`,control:`boolean`},center:{description:`Центрирует текст метки и значения.`,control:`boolean`},vertical:{description:`Вертикальное выравнивание внутри строки.`,control:`inline-radio`,options:[`start`,`center`,`end`]},noWrap:{description:`Отключает перенос длинного значения.`,control:`boolean`},withColon:{description:`Добавляет двоеточие после метки.`,control:`boolean`},children:{description:`Набор Detail.Item внутри списка.`,control:!1}}},M={render:function(){let[e]=A();return(0,k.jsxs)(E,{...e,children:[(0,k.jsx)(E.Item,{required:!0,label:`Статус`,value:`Активен`}),(0,k.jsx)(E.Item,{label:`Приоритет`,value:`Высокий`}),(0,k.jsx)(E.Item,{label:`Автор`,value:`Иван Петров`})]})},args:{children:void 0}},N={render:function(){let[e]=A();return(0,k.jsxs)(E,{...e,children:[(0,k.jsx)(E.Item,{label:`ID`,value:`DOC-12345`}),(0,k.jsx)(E.Item,{label:`Дата`,value:`05.03.2026`}),(0,k.jsx)(E.Item,{label:`Версия`,value:`2.7`}),(0,k.jsx)(E.Item,{label:`Подразделение`,value:`Снабжение`}),(0,k.jsx)(E.Item,{label:`Регион`,value:`Урал`}),(0,k.jsx)(E.Item,{label:`Комментарий`,value:`Требуется согласование с бухгалтерией`})]})},args:{columnCount:2,rowGap:`small`,children:void 0}},P={render:function(){let[e]=A();return(0,k.jsxs)(E,{...e,children:[(0,k.jsx)(E.Item,{label:`Клиент`,value:`ООО Вектор`}),(0,k.jsx)(E.Item,{label:`Менеджер`,value:`Анна Смирнова`}),(0,k.jsx)(E.Item,{label:`Сумма`,value:`1 250 000 ₽`})]})},args:{semantic:`detail`,inline:!0,columnCount:1,children:void 0}},F={render:function(){let[e]=A();return(0,k.jsxs)(E,{...e,children:[(0,k.jsx)(E.Item,{label:(0,k.jsx)(`span`,{children:`Номер договора`}),value:`KTK-2026-045`}),(0,k.jsx)(E.Item,{label:(0,k.jsx)(`span`,{title:`Без двоеточия для составной метки`,children:`Статус`}),value:`На согласовании`,withColon:!1})]})},args:{children:void 0}},M.parameters={...M.parameters,docs:{...M.parameters?.docs,source:{originalSource:`{
|
|
2
|
-
render: function Render() {
|
|
3
|
-
const [args] = useArgs<DetailProps>();
|
|
4
|
-
return <Detail {...args}>
|
|
5
|
-
<Detail.Item required label="Статус" value="Активен" />
|
|
6
|
-
<Detail.Item label="Приоритет" value="Высокий" />
|
|
7
|
-
<Detail.Item label="Автор" value="Иван Петров" />
|
|
8
|
-
</Detail>;
|
|
9
|
-
},
|
|
10
|
-
args: {
|
|
11
|
-
children: undefined
|
|
12
|
-
}
|
|
13
|
-
}`,...M.parameters?.docs?.source}}},N.parameters={...N.parameters,docs:{...N.parameters?.docs,source:{originalSource:`{
|
|
14
|
-
render: function Render() {
|
|
15
|
-
const [args] = useArgs<DetailProps>();
|
|
16
|
-
return <Detail {...args}>
|
|
17
|
-
<Detail.Item label="ID" value="DOC-12345" />
|
|
18
|
-
<Detail.Item label="Дата" value="05.03.2026" />
|
|
19
|
-
<Detail.Item label="Версия" value="2.7" />
|
|
20
|
-
<Detail.Item label="Подразделение" value="Снабжение" />
|
|
21
|
-
<Detail.Item label="Регион" value="Урал" />
|
|
22
|
-
<Detail.Item label="Комментарий" value="Требуется согласование с бухгалтерией" />
|
|
23
|
-
</Detail>;
|
|
24
|
-
},
|
|
25
|
-
args: {
|
|
26
|
-
columnCount: 2,
|
|
27
|
-
rowGap: "small",
|
|
28
|
-
children: undefined
|
|
29
|
-
}
|
|
30
|
-
}`,...N.parameters?.docs?.source}}},P.parameters={...P.parameters,docs:{...P.parameters?.docs,source:{originalSource:`{
|
|
31
|
-
render: function Render() {
|
|
32
|
-
const [args] = useArgs<DetailProps>();
|
|
33
|
-
return <Detail {...args}>
|
|
34
|
-
<Detail.Item label="Клиент" value="ООО Вектор" />
|
|
35
|
-
<Detail.Item label="Менеджер" value="Анна Смирнова" />
|
|
36
|
-
<Detail.Item label="Сумма" value="1 250 000 ₽" />
|
|
37
|
-
</Detail>;
|
|
38
|
-
},
|
|
39
|
-
args: {
|
|
40
|
-
semantic: "detail",
|
|
41
|
-
inline: true,
|
|
42
|
-
columnCount: 1,
|
|
43
|
-
children: undefined
|
|
44
|
-
}
|
|
45
|
-
}`,...P.parameters?.docs?.source}}},F.parameters={...F.parameters,docs:{...F.parameters?.docs,source:{originalSource:`{
|
|
46
|
-
render: function Render() {
|
|
47
|
-
const [args] = useArgs<DetailProps>();
|
|
48
|
-
return <Detail {...args}>
|
|
49
|
-
<Detail.Item label={<span>Номер договора</span>} value="KTK-2026-045" />
|
|
50
|
-
<Detail.Item label={<span title="Без двоеточия для составной метки">Статус</span>} value="На согласовании" withColon={false} />
|
|
51
|
-
</Detail>;
|
|
52
|
-
},
|
|
53
|
-
args: {
|
|
54
|
-
children: undefined
|
|
55
|
-
}
|
|
56
|
-
}`,...F.parameters?.docs?.source}}},I=[`BasicList`,`MultipleColumns`,`SemanticDl`,`CustomLabel`]})))()}export{P as a,N as i,F as n,L as o,O as r,M as t};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./chevron-down-CjXVIhzi.js";import{i,n as a,r as o}from"./iframe-woVbsQH3.js";import{a as s,i as c}from"./utils-tg3ibbzi.js";import{n as l,t as u}from"./ui.module-CyEEibCu.js";import{i as d,n as f}from"./uiClasses-DNnVkKPr.js";import{n as p,t as m}from"./FlexItem-pu3E11Sf.js";var h,g;function _(){return(_=e((()=>{i(),h=[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]],g=o(`chevron-up`,h)})))()}var v,y,b;function x(){return(x=e((()=>{v=t(),p(),y=a(),b=(0,v.forwardRef)((e,t)=>(0,y.jsx)(m,{...e,ref:t,flex1:!0})),b.displayName=`FlexSpacer`,b.__docgenInfo={description:``,methods:[],displayName:`FlexSpacer`}})))()}var S,C,w,T,E,D;function O(){return(O=e((()=>{S=`P-rCx1`,C=`_9yjaDf`,w=`izVkky`,T=`KAIPfW`,E=`O-da-N`,D={disclosureHeader:S,disclosureButton:C,disclosureActions:w,disclosureGroup:T,disclosure:E}})))()}function k({label:e,defaultOpen:t,headerActions:n,tone:i=`primary`,children:a}){let[o,c]=(0,A.useState)(t===!0),u=(0,A.useId)(),d=(0,A.useId)(),p=f(i);return(0,j.jsxs)(`div`,{className:s(l.uiElement,l.uiPanel,p,D.disclosure),children:[(0,j.jsxs)(`div`,{className:D.disclosureHeader,children:[(0,j.jsxs)(`button`,{id:d,type:`button`,"aria-expanded":o,"aria-controls":u,className:s(D.disclosureButton,`fontBold radiusSm paddingSm gapSm`),"data-ui":`disclosure-toggle`,"data-action":o?`collapse-disclosure`:`expand-disclosure`,onClick:()=>c(e=>!e),children:[o?(0,j.jsx)(g,{}):(0,j.jsx)(r,{}),e]}),n?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(b,{}),n]}):null]}),o&&(0,j.jsx)(`div`,{id:u,role:`region`,"aria-labelledby":d,children:(0,j.jsx)(`div`,{className:`paddingMd`,children:a})})]})}var A,j;function M(){return(M=e((()=>{A=t(),c(),n(),_(),x(),u(),d(),O(),j=a(),k.__docgenInfo={description:`Раскрывающийся блок с заголовком и скрываемым содержимым. Используется для FAQ, настроек и компактного размещения второстепенной информации.`,methods:[],displayName:`Disclosure`,props:{label:{required:!0,tsType:{name:`ReactNode`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},tone:{required:!1,tsType:{name:`union`,raw:`"primary" | "secondary" | "tertiary"`,elements:[{name:`literal`,value:`"primary"`},{name:`literal`,value:`"secondary"`},{name:`literal`,value:`"tertiary"`}]},description:``,defaultValue:{value:`"primary"`,computed:!1}},headerActions:{required:!1,tsType:{name:`ReactNode`},description:`Независимые действия в правой части заголовка, расположенные вне кнопки раскрытия.`}},composes:[`PropsWithChildren`]}})))()}function N({className:e,children:t}){return(0,P.jsx)(`div`,{className:s(D.disclosureGroup,e),children:t})}var P;function F(){return(F=e((()=>{t(),c(),O(),P=a(),N.__docgenInfo={description:"Групповой контейнер для нескольких `Disclosure`. Помогает выстраивать последовательный список раскрывающихся секций.",methods:[],displayName:`DisclosureGroup`,props:{children:{required:!1,tsType:{name:`union`,raw:`| (React.ReactElement<DisclosureProps, typeof Disclosure> | null | undefined | false)
|
|
2
|
-
| (React.ReactElement<DisclosureProps, typeof Disclosure> | null | undefined | false)[]`,elements:[{name:`unknown`},{name:`Array`,elements:[{name:`unknown`}],raw:`(React.ReactElement<DisclosureProps, typeof Disclosure> | null | undefined | false)[]`}]},description:``},className:{required:!1,tsType:{name:`string`},description:``}}}})))()}export{M as i,F as n,k as r,N as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-woVbsQH3.js";import{_ as r,a as i,c as a,d as o,f as s,g as c,h as l,i as u,l as d,m as f,o as p,p as m,r as h,s as g,u as _}from"./ContextMenu-XS7B8QUC.js";var v,y;function b(){return(b=e((()=>{v=t(),m(),y=({children:e})=>{let{mode:t,open:n,registerTriggerElement:i,onTriggerClick:a,onTriggerKeyDown:o}=f();if(t!==`click`)throw Error(`DropdownMenu.Trigger must be used within <DropdownMenu>`);return(0,v.cloneElement)(e,{ref:t=>{let n=e.props.ref;l(n,t),i(t)},"aria-haspopup":`menu`,"aria-expanded":n,onClick:r(e.props.onClick,a),onKeyDown:c(e.props.onKeyDown,o)})},y.__docgenInfo={description:``,methods:[],displayName:`DropdownMenuTrigger`,props:{children:{required:!0,tsType:{name:`ReactReactElement`,raw:`React.ReactElement<React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }>`,elements:[{name:`intersection`,raw:`React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }`,elements:[{name:`ReactHTMLAttributes`,raw:`React.HTMLAttributes<HTMLElement>`,elements:[{name:`HTMLElement`}]},{name:`signature`,type:`object`,raw:`{ ref?: React.Ref<HTMLElement> }`,signature:{properties:[{key:`ref`,value:{name:`ReactRef`,raw:`React.Ref<HTMLElement>`,elements:[{name:`HTMLElement`}],required:!1}}]}}]}]},description:``}}}})))()}var x,S,C;function w(){return(w=e((()=>{t(),b(),s(),_(),a(),p(),u(),x=n(),S=({children:e,placement:t,open:n,defaultOpen:r,onOpenChange:a})=>(0,x.jsx)(i,{mode:`click`,placement:t,open:n,defaultOpen:r,onOpenChange:a,children:e}),C=Object.assign(S,{Trigger:y,Content:o,Item:g,Separator:h,GroupLabel:d}),S.__docgenInfo={description:``,methods:[],displayName:`DropdownMenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}export{w as n,C as t};
|