@ryuzaki13/react-foundation-ui 3.5.0 → 3.7.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.d.ts +1 -1
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +45 -31
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/model/NotificationsProvider.d.ts +2 -18
- package/dist/notifications/model/NotificationsProvider.d.ts.map +1 -1
- package/dist/notifications/model/index.d.ts +4 -0
- package/dist/notifications/model/index.d.ts.map +1 -1
- package/dist/notifications/model/notificationsContext.d.ts +4 -0
- package/dist/notifications/model/notificationsContext.d.ts.map +1 -0
- package/dist/notifications/model/useNotificationById.d.ts +4 -0
- package/dist/notifications/model/useNotificationById.d.ts.map +1 -0
- package/dist/notifications/model/useNotificationHistory.d.ts +6 -0
- package/dist/notifications/model/useNotificationHistory.d.ts.map +1 -0
- package/dist/notifications/model/useNotifications.d.ts +3 -0
- package/dist/notifications/model/useNotifications.d.ts.map +1 -0
- package/dist/notifications/model/useNotificationsStore.d.ts +3 -0
- package/dist/notifications/model/useNotificationsStore.d.ts.map +1 -0
- package/dist/notifications/model/useNotify.d.ts +17 -0
- package/dist/notifications/model/useNotify.d.ts.map +1 -0
- package/dist/notifications/ui/NotificationsHost.d.ts +2 -1
- package/dist/notifications/ui/NotificationsHost.d.ts.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 +3 -3
- package/storybook-static/assets/{Badge-BKRvorSi.js → Badge-CV3f-YLa.js} +1 -1
- package/storybook-static/assets/{Badge.stories-19yFfupy.js → Badge.stories-BUPuimKi.js} +1 -1
- package/storybook-static/assets/{BadgeList-DMkfxply.js → BadgeList-CDDAItI6.js} +1 -1
- package/storybook-static/assets/{BarcodeScannerDialog.stories-DdnHxu5x.js → BarcodeScannerDialog.stories-teB8ep3A.js} +1 -1
- package/storybook-static/assets/{Button-Di-0Ionw.js → Button-BW8cBp03.js} +1 -1
- package/storybook-static/assets/{Button-CoOZeR_z.js → Button-CV4tslOZ.js} +2 -2
- package/storybook-static/assets/{Button.stories-Bd1To5BN.js → Button.stories-DKlzPZqU.js} +1 -1
- package/storybook-static/assets/CalendarView-CX2J7c6F.js +1 -0
- package/storybook-static/assets/{CheckBox-DfRTTXg1.js → CheckBox-BTr4z78V.js} +1 -1
- package/storybook-static/assets/{CheckBox-DSmGYEML.js → CheckBox-BWZ_P_3Q.js} +1 -1
- package/storybook-static/assets/{CheckBox.stories-DaldWgEI.js → CheckBox.stories-BUaJvDIu.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-DIhia6KS.js → Color-6AOWCN3U-DmrUSa8T.js} +1 -1
- package/storybook-static/assets/{ContextMenu-BGMQHT9V.js → ContextMenu-DsJnOtZ9.js} +6 -2
- package/storybook-static/assets/ContextMenu-wBO-KcfV.js +33 -0
- package/storybook-static/assets/ContextMenu.stories-CNOrf21k.js +37 -0
- package/storybook-static/assets/{DateInput-DUl5Bb0j.js → DateInput-DbZNB8s8.js} +8 -1
- package/storybook-static/assets/{DateInput-MgdMtvtr.js → DateInput-xQJfyfF-.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-B6Ol0Ak3.js → DateInput.stories-DAku4mZt.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-CPj0pSGc.js → DateRangePresetSelect-BPlpCA6c.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-C4MVqjXa.js → DateRangePresetSelect-DHoyZyQT.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-tPaMURtH.js → DateRangePresetSelect.stories-DRvogj0c.js} +1 -1
- package/storybook-static/assets/{Detail-DnHTVRb5.js → Detail-mXagpId3.js} +1 -1
- package/storybook-static/assets/Detail.stories-D7Iwy0-s.js +56 -0
- package/storybook-static/assets/{Dialog-COpvqcXi.js → Dialog-CMqH_KAI.js} +1 -1
- package/storybook-static/assets/{Dialog-LMnrvBpx.js → Dialog-qRvPPGeh.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-BE2I5ny2.js → Dialog.stories-J_OyVz3O.js} +1 -1
- package/storybook-static/assets/{Disclosure-BZ3jd5nu.js → Disclosure-TdbPZNSu.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-cMcF8a8I.js → Disclosure.stories-DRoDp_Fu.js} +1 -1
- package/storybook-static/assets/DisclosureGroup-CeBLtSCA.js +2 -0
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-CurHdzu8.js → DocsRenderer-JROSPFPF-BdyHYSwz.js} +1 -1
- package/storybook-static/assets/{DropZone-DGMAbY1z.js → DropZone-BzRKfOtd.js} +1 -1
- package/storybook-static/assets/{DropZone-VEmgdfs6.js → DropZone-CODtJSpF.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-B8N17-bV.js → DropZone.stories-BzNj9PbZ.js} +1 -1
- package/storybook-static/assets/DropdownMenu-Db-sh5Gd.js +21 -0
- package/storybook-static/assets/{ExpandableActionPanel-C7CFQZLD.js → ExpandableActionPanel-fOfO1fQV.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-CnBr0s9R.js → ExpandableActionPanel.stories-C6Si_Nqk.js} +1 -1
- package/storybook-static/assets/{Flex-RpqsC-gQ.js → Flex-B9KnOucm.js} +1 -1
- package/storybook-static/assets/Flex.stories-ApvEyW4R.js +300 -0
- package/storybook-static/assets/FlexContainer-B1y3dds2.js +1 -0
- package/storybook-static/assets/{FlexItem-pu3E11Sf.js → FlexItem-pEuFUX72.js} +2 -2
- package/storybook-static/assets/FloatingPopover-CjNAEFQy.js +1 -0
- package/storybook-static/assets/FormattedTableCell-DZM2eYz5.js +15 -0
- package/storybook-static/assets/{Grid-CzO0Ae1r.js → Grid-CI6OKKu8.js} +2 -2
- package/storybook-static/assets/{Grid-BRnqEtg1.js → Grid-NnstE-Tl.js} +1 -1
- package/storybook-static/assets/{Grid.stories-DXY7Cvfu.js → Grid.stories-tklnzZVg.js} +4 -4
- package/storybook-static/assets/{GridContainer-fKYgDsLl.js → GridContainer-wl6R6ToY.js} +2 -2
- package/storybook-static/assets/{ImageCropper.stories-ZnvbFN71.js → ImageCropper.stories-DFN1M8eV.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-DUOhCfac.js → ImageRenderer-CsIh2Gps.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-Dj6NQm2k.js → ImageRenderer.stories-CFg_ibLF.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-QTzOsByD.js → ImageView.stories-HHd7jrjM.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-CpnUEgZW.js → ImageViewer.stories-DgWkr466.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-B1PicLUw.js → ImageViewerRuntime-6z6zV9jF.js} +1 -1
- package/storybook-static/assets/{Input-DnFc_Pwx.js → Input-B7_Qlowr.js} +1 -1
- package/storybook-static/assets/{Input-B8eGQXlp.js → Input-Bvw9Sw0g.js} +1 -1
- package/storybook-static/assets/{Input.stories-C6CbYvZP.js → Input.stories-Dc2sDy4p.js} +1 -1
- package/storybook-static/assets/{InputDateTime-DoMduRde.js → InputDateTime-DUkFFY2j.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories--LHpvJjY.js → InputDateTime.stories-WZXWHrjO.js} +1 -1
- package/storybook-static/assets/{InputFile-CunQ8F4s.js → InputFile-CR2m2VQy.js} +1 -1
- package/storybook-static/assets/{InputFile-DFv3WAWa.js → InputFile-DJE39TQT.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-B0WZhic1.js → InputFile.stories-BxE2jR8X.js} +1 -1
- package/storybook-static/assets/{InputFiles-DyiPQ_tH.js → InputFiles-CMkLLJOH.js} +1 -1
- package/storybook-static/assets/{InputFiles-CKDPmjWY.js → InputFiles-CTD2obOb.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-BbP_bEnL.js → InputFiles.stories-CeLIDMcH.js} +1 -1
- package/storybook-static/assets/{InputFilesList-BAIGwV7V.js → InputFilesList-tUr9ob4W.js} +1 -1
- package/storybook-static/assets/{InputImage-2G1pRNbw.js → InputImage-C0cIhVXy.js} +1 -1
- package/storybook-static/assets/{InputImage-ZvEB_TIT.js → InputImage-CoAYtfEV.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-BiShLRcw.js → InputImage.stories-DpXv7PID.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-CT99QfHX.js → InteractiveComponents-Dmyiy24S.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-BPTICQZz.js → InteractiveComponents.stories-B77oJ-sY.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-BDpc8LBa.js → LayoutPicker-CJcSQqwn.js} +2 -2
- package/storybook-static/assets/{LayoutPicker-Cg_AM-pj.js → LayoutPicker-MTeK4NeO.js} +2 -1
- package/storybook-static/assets/{LayoutPicker.stories-Ca9WZdPW.js → LayoutPicker.stories-CcY356LI.js} +1 -1
- package/storybook-static/assets/Listbox-BGYVb_Ct.js +1 -0
- package/storybook-static/assets/{Listbox-LbbFtte9.js → Listbox-Cv9AQzQU.js} +2 -1
- package/storybook-static/assets/{Listbox.stories-xDpbFNZk.js → Listbox.stories-C9_cOdMY.js} +1 -1
- package/storybook-static/assets/Modal-CHcZjpHv.js +1 -0
- package/storybook-static/assets/{Modal-CXd2j0up.js → Modal-CnMZc0y1.js} +1 -1
- package/storybook-static/assets/{Modal.stories-cNLvFjmT.js → Modal.stories-DxITHZDl.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-ClXvSB9a.js → ModalManagerProvider-vGXTuniv.js} +1 -1
- package/storybook-static/assets/MultiSelect-DDC0Nrrq.js +2 -0
- package/storybook-static/assets/{MultiSelect-Na2VdNy3.js → MultiSelect-DqdwstLi.js} +4 -1
- package/storybook-static/assets/MultiSelect-SJBp1Ymv.css +1 -0
- package/storybook-static/assets/{MultiSelect.stories-4nFshdtz.js → MultiSelect.stories-BPsGXWR2.js} +1 -1
- package/storybook-static/assets/NoData-BlGdaWe6.js +1 -0
- package/storybook-static/assets/NotificationsHost-gXnNQDp7.js +75 -0
- package/storybook-static/assets/NotificationsHost.stories-BdkJz6WZ.js +30 -0
- package/storybook-static/assets/{ODataMultiSelect-Cc09uTB8.js → ODataMultiSelect-C_Qs3Nl4.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-CzGzREa9.js → ODataMultiSelect.stories-DfmeONnP.js} +2 -2
- package/storybook-static/assets/{ODataSelect-DqoRg5pz.js → ODataSelect-C5fwwi_V.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-BCcxERn3.js → ODataSelect.stories-BCDjW9Of.js} +2 -2
- package/storybook-static/assets/{ODataTreeMultiSelect-qZEcSE5O.js → ODataTreeMultiSelect-bU2QW5pt.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-Bfees7Qr.js → ODataTreeMultiSelect.stories-FRT1vULJ.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-IOVS6uQc.js → ODataTreeSelect-DmNcnlbz.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-CO7DClzd.js → ODataTreeSelect.stories-B9Mq-Iq-.js} +1 -1
- package/storybook-static/assets/OneStepScroller-X_sOKCiI.js +5 -0
- package/storybook-static/assets/Option-CSut1BkS.js +10 -0
- package/storybook-static/assets/OptionButton-B7wOhE1V.js +1 -0
- package/storybook-static/assets/OptionContent-DyxUQFu3.js +1 -0
- package/storybook-static/assets/OptionContentContainer-DnzI9J61.js +2 -0
- package/storybook-static/assets/{PeriodSelect-D-jXJf5C.js → PeriodSelect-C1Rh75We.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BAVDztkI.js → PeriodSelect-SjGK6Esp.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-CscsENT9.js → PeriodSelect.stories-Bch3cN5l.js} +1 -1
- package/storybook-static/assets/{PickerField-CRtltoce.js → PickerField-B8_SoyYo.js} +1 -1
- package/storybook-static/assets/PickerTriggerActions-DP0ZKD9L.js +2 -0
- package/storybook-static/assets/PolymorphicComponent-NBvIz9JD.js +1 -0
- package/storybook-static/assets/Popover-DF-J3Kwx.js +55 -0
- package/storybook-static/assets/Popover-NBKcB7nc.js +46 -0
- package/storybook-static/assets/Popover.stories-BGcAWbjW.js +63 -0
- package/storybook-static/assets/{PresetRangeDateInput-VZnM8RNV.js → PresetRangeDateInput-BAbrOHdm.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-CVPMYlEV.js → PresetRangeDateInput-DajjeSUc.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-DdBWlSV-.js → PresetRangeDateInput.stories-Bf7YKKIQ.js} +1 -1
- package/storybook-static/assets/{PresetSelect-C7YYBjlL.js → PresetSelect-CfmPZsZF.js} +1 -1
- package/storybook-static/assets/{README-CeNQeTK-.js → README--xvSptx6.js} +1 -1
- package/storybook-static/assets/{README-DWzfTSuq.js → README-02MdhoYj.js} +1 -1
- package/storybook-static/assets/{README-w9FMhq0X.js → README-23NGVX-l.js} +1 -1
- package/storybook-static/assets/{README-CTF9mVZL.js → README-3bVCOGDc.js} +1 -1
- package/storybook-static/assets/{README-DkBG5Azm.js → README-5JPwN5I3.js} +1 -1
- package/storybook-static/assets/{README-DC0vNdOD.js → README-B35CL6W4.js} +1 -1
- package/storybook-static/assets/{README-Wli4AXG5.js → README-B4-JBF7Z.js} +1 -1
- package/storybook-static/assets/{README-BZlnzGAh.js → README-B5cX2glk.js} +1 -1
- package/storybook-static/assets/{README-DoxVtmRh.js → README-BGZN87_w.js} +1 -1
- package/storybook-static/assets/{README-Bvo0Qxde.js → README-BNTTx0rf.js} +1 -1
- package/storybook-static/assets/{README-Dmu5lsNT.js → README-BRvVmpDS.js} +1 -1
- package/storybook-static/assets/{README-UcyyK9jn.js → README-BUhZmzyX.js} +1 -1
- package/storybook-static/assets/{README-C-IUw1gX.js → README-Bb5AJH8-.js} +1 -1
- package/storybook-static/assets/{README-jvtwVY_n.js → README-Bew3UK8F.js} +1 -1
- package/storybook-static/assets/{README-DOBIWrus.js → README-Bk_A3mYt.js} +1 -1
- package/storybook-static/assets/{README-C_lKreF9.js → README-BlTlxb7s.js} +1 -1
- package/storybook-static/assets/{README-DyWhmOFY.js → README-BqHDKN3N.js} +1 -1
- package/storybook-static/assets/{README-B0FbTpix.js → README-BwhJA_em.js} +1 -1
- package/storybook-static/assets/{README-DMwF_O1R.js → README-BzhO6nn7.js} +1 -1
- package/storybook-static/assets/{README-8L1vpZcz.js → README-C-fD13Eo.js} +1 -1
- package/storybook-static/assets/{README-BL8ZNGNi.js → README-C2dMbb8z.js} +1 -1
- package/storybook-static/assets/{README-jQcGKqqm.js → README-C79arOAr.js} +1 -1
- package/storybook-static/assets/{README-C7N5_6-c.js → README-C7gQVhLI.js} +1 -1
- package/storybook-static/assets/{README-DADnaXLy.js → README-CBYHjEjb.js} +1 -1
- package/storybook-static/assets/{README-oKLTQYfV.js → README-CCqwPYoe.js} +1 -1
- package/storybook-static/assets/{README-DIWsYBR7.js → README-CJKEEjnI.js} +1 -1
- package/storybook-static/assets/{README-DrTR5pSr.js → README-CKDAq2L0.js} +1 -1
- package/storybook-static/assets/{README-BdsFByUw.js → README-CXNyh6Hq.js} +1 -1
- package/storybook-static/assets/{README-DlfWWC7n.js → README-Ce9KyfEM.js} +1 -1
- package/storybook-static/assets/{README-BGBxEe4u.js → README-CijcMn5M.js} +1 -1
- package/storybook-static/assets/{README-B0Nb0jf2.js → README-Cj8rKrp5.js} +1 -1
- package/storybook-static/assets/{README-DgXAMdBY.js → README-CkYzrLaV.js} +1 -1
- package/storybook-static/assets/{README-Bk1oSDWQ.js → README-CvqMprlS.js} +1 -1
- package/storybook-static/assets/{README-BGmO6U9j.js → README-CxURTiLk.js} +1 -1
- package/storybook-static/assets/{README-6XPUoxFl.js → README-DBsUCpqI.js} +1 -1
- package/storybook-static/assets/{README-CvaizZr1.js → README-DD2eTjZe.js} +1 -1
- package/storybook-static/assets/{README-D2AT2-yD.js → README-DJ53d7sm.js} +6 -3
- package/storybook-static/assets/{README-HWuoKwKL.js → README-DLlWedYv.js} +1 -1
- package/storybook-static/assets/{README-2NTkucdH.js → README-DRxLVin-.js} +1 -1
- package/storybook-static/assets/{README-b3wA6wFr.js → README-DTE8nUeJ.js} +1 -1
- package/storybook-static/assets/{README-Dm7CwuVP.js → README-DUh3QGlI.js} +14 -8
- package/storybook-static/assets/{README-ZxRwqfIH.js → README-DfrkaWMN.js} +1 -1
- package/storybook-static/assets/{README-DOi6rx7n.js → README-DlJZHUr9.js} +1 -1
- package/storybook-static/assets/{README-g1VWHzAJ.js → README-Dm0fH6Ac.js} +1 -1
- package/storybook-static/assets/{README-GChrAHFQ.js → README-DvgeFwUN.js} +1 -1
- package/storybook-static/assets/{README-CqiNQGIJ.js → README-DzfnNMhi.js} +1 -1
- package/storybook-static/assets/{README-Dr8TxFTe.js → README-EjFzMh6K.js} +1 -1
- package/storybook-static/assets/{README-BD-WSEvQ.js → README-Yp7ckVfi.js} +1 -1
- package/storybook-static/assets/{README-Brn9Tjjc.js → README-ZzFd6eCk.js} +1 -1
- package/storybook-static/assets/{README-na5mQX4V.js → README-cBsDQvLg.js} +1 -1
- package/storybook-static/assets/{README-CB5BpIBF.js → README-hq5hkADm.js} +1 -1
- package/storybook-static/assets/{README-_KzyG4dS.js → README-kYUqgwYs.js} +1 -1
- package/storybook-static/assets/{README-CTwfFqJG.js → README-l9uKtPiZ.js} +1 -1
- package/storybook-static/assets/{RadioButton-Dgkz1EWU.js → RadioButton-BDpUjCQB.js} +1 -1
- package/storybook-static/assets/RadioButton-BWpGjwT9.js +1 -0
- package/storybook-static/assets/{RadioButton.stories-DO14jTfm.js → RadioButton.stories-DrOP5Alc.js} +1 -1
- package/storybook-static/assets/{RadioGroup-Db0AhiKo.js → RadioGroup-BljW3G4c.js} +1 -1
- package/storybook-static/assets/{RadioGroup-BSiqjVai.js → RadioGroup-wzlE1seI.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-C0D6n83q.js → RadioGroup.stories-6h1qt8DI.js} +1 -1
- package/storybook-static/assets/Scrollable-C7dBSd5R.js +1 -0
- package/storybook-static/assets/Scrollable-Dhpelsb3.js +18 -0
- package/storybook-static/assets/Scrollable.stories-Cj1mRfdX.js +1 -0
- package/storybook-static/assets/Select-BI1R-0nK.js +12 -0
- package/storybook-static/assets/{Select-D8X-SkP2.js → Select-n3InYkr7.js} +3 -1
- package/storybook-static/assets/{Select.stories-8_zvonmc.js → Select.stories-pppfr6nn.js} +1 -1
- package/storybook-static/assets/Separator-Bx2BKztN.js +1 -0
- package/storybook-static/assets/Separator-GtZBq7gL.js +14 -0
- package/storybook-static/assets/Separator.stories-DxY_qbJt.js +14 -0
- package/storybook-static/assets/{SerializableSelect-ii6T140l.js → SerializableSelect-DogkO2Bz.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-Ba3ABMGt.js → SerializableSelect.stories-C3OU-Qlh.js} +1 -1
- package/storybook-static/assets/{ShimmerText-C6vkZwUV.js → ShimmerText-XI1rbKrT.js} +1 -1
- package/storybook-static/assets/{ShimmerText.stories-CVpSxXHJ.js → ShimmerText.stories-lvn1uLl_.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-DpETPR89.js → SingleDateTimeInput-DK8vuf-o.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-96-mrjq8.js → SingleDateTimeInput-HNBKELgZ.js} +8 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-JhviurJO.js → SingleDateTimeInput.stories-DrV6WMT9.js} +1 -1
- package/storybook-static/assets/{Slider-B27TdvRV.js → Slider-D4ec91gY.js} +8 -1
- package/storybook-static/assets/Slider-bg4iXFEy.js +1 -0
- package/storybook-static/assets/{Slider.stories-d1YeKe5r.js → Slider.stories-DhJUqLP3.js} +1 -1
- package/storybook-static/assets/{SliderInput-D2d23mEI.js → SliderInput-CScKm1eT.js} +8 -1
- package/storybook-static/assets/SliderInput-o9cFbZ18.js +3 -0
- package/storybook-static/assets/{SliderInput.stories-CwqT79oE.js → SliderInput.stories-CDNoleib.js} +1 -1
- package/storybook-static/assets/{Sortable-DiJuiI6V.js → Sortable-DHqDBQQd.js} +4 -2
- package/storybook-static/assets/Sortable.stories-CEhPetnR.js +44 -0
- package/storybook-static/assets/{Splitter-QwdfWNbm.js → Splitter-BU9vPggP.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-C2iDPz8c.js → Splitter.stories-BxKoQqiy.js} +1 -1
- package/storybook-static/assets/{StateSelect-D1ZDM6bC.js → StateSelect-Cp-vkDd6.js} +1 -1
- package/storybook-static/assets/{StateSelect-Bw9H1Cus.js → StateSelect-ez77Inqm.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-DEFvQ15O.js → StateSelect.stories-CpZV5ol8.js} +1 -1
- package/storybook-static/assets/{StatusIndicator-D6Pbdz37.js → StatusIndicator-BM7o68m0.js} +1 -1
- package/storybook-static/assets/{StatusIndicator.stories-COgpy5cK.js → StatusIndicator.stories-DmP9Drw5.js} +1 -1
- package/storybook-static/assets/{StringToggle.stories-BFwMh0Yd.js → StringToggle.stories-TO-VXZOK.js} +1 -1
- package/storybook-static/assets/{Switch-DyDk152g.js → Switch-BnYvYOX5.js} +1 -1
- package/storybook-static/assets/{Switch-Bmj2AItH.js → Switch-CfDHmCm8.js} +1 -1
- package/storybook-static/assets/{Switch.stories-C10NxPL4.js → Switch.stories-CX92UhBc.js} +1 -1
- package/storybook-static/assets/{Table-YcEwF4aO.js → Table-DkrNiq_n.js} +1 -1
- package/storybook-static/assets/{Table.stories-DgxFS9Sa.js → Table.stories-DsGm0-i7.js} +1 -1
- package/storybook-static/assets/{TableEditor.stories-CSMoxO4O.js → TableEditor.stories-sxgtoDe3.js} +1 -1
- package/storybook-static/assets/{Tabs-DOsPN2X1.js → Tabs-wMDcBXIR.js} +2 -3
- package/storybook-static/assets/Tabs.stories-BVXrXbOp.js +57 -0
- package/storybook-static/assets/{TabsBox-Ovukgo9G.js → TabsBox-5NiiCrDc.js} +1 -1
- package/storybook-static/assets/{TabsBox-B3REnb6D.css → TabsBox-DuBKU62M.css} +1 -1
- package/storybook-static/assets/{TagInput-BQBOGr9G.js → TagInput-BATz4lHU.js} +1 -1
- package/storybook-static/assets/{TagInput.stories-DAAyJlgm.js → TagInput.stories-D9IJIG_P.js} +1 -1
- package/storybook-static/assets/{Text-fdwuak_J.js → Text-Bswu5PVP.js} +1 -1
- package/storybook-static/assets/{Textarea-A22Efyk-.js → Textarea-AqkGgrCZ.js} +1 -1
- package/storybook-static/assets/{Textarea-D80ZPpEy.js → Textarea-CrkCHaE2.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-DfaOYMoN.js → Textarea.stories-dtpJFQAX.js} +1 -1
- package/storybook-static/assets/{TimePanel-Bd5T_SfL.js → TimePanel-DGcJeL-M.js} +1 -1
- package/storybook-static/assets/{TimePanel.stories-D6TIpKp4.js → TimePanel.stories-DxPuKGPZ.js} +1 -1
- package/storybook-static/assets/{Toggle-DUyCRH0o.js → Toggle-DLZn_nZe.js} +1 -1
- package/storybook-static/assets/{Toggle-BvHMq6f_.js → Toggle-Dd08B6s5.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-ZPgC-EWw.js → Toggle.stories-4h-5zxJC.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-DTmB9s8s.js → TreeMultiSelect-4XUsw-my.js} +2 -1
- package/storybook-static/assets/{TreeMultiSelect-DTMybWfP.js → TreeMultiSelect-CF9O5XGt.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-1_HB74Gf.js → TreeMultiSelect.stories-m5UlkTdr.js} +1 -1
- package/storybook-static/assets/TreePickerBase-8R1GFz9r.js +76 -0
- package/storybook-static/assets/TreePickerBase-ClWTQVKW.css +1 -0
- package/storybook-static/assets/{TreeSelect-CTN6cRRr.js → TreeSelect-BPc7kRdh.js} +1 -1
- package/storybook-static/assets/{TreeSelect-UsZGYhUO.js → TreeSelect-CZme7Tu-.js} +2 -1
- package/storybook-static/assets/{TreeSelect.stories-B01pZcR9.js → TreeSelect.stories-DRVi0xZP.js} +1 -1
- package/storybook-static/assets/{TreeTable-dr3jK3Ih.js → TreeTable-CTBSrT9l.js} +1 -1
- package/storybook-static/assets/{TreeTable.stories-B1DPasDc.js → TreeTable.stories-oILl7PkB.js} +1 -1
- package/storybook-static/assets/{blocks-Cw5Dm88b.js → blocks-TIr5_lNX.js} +3 -3
- package/storybook-static/assets/{check-028VTQ8f.js → check-Du8FuQ6e.js} +1 -1
- package/storybook-static/assets/{chevron-down-CjXVIhzi.js → chevron-down-rt2_lu7i.js} +1 -1
- package/storybook-static/assets/{chevron-left-CktI1oFP.js → chevron-left-SdIvDBzr.js} +1 -1
- package/storybook-static/assets/{chevron-right-CF10QSRI.js → chevron-right-BU-pTQL2.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-C0ehDnCq.js → chunk-W22LQPXL-C5x9oI8u.js} +1 -1
- package/storybook-static/assets/{circle-alert-s0HpHvQO.js → circle-alert-C-51hrK9.js} +1 -1
- package/storybook-static/assets/{circle-check-C7Lv1fv9.js → circle-check-DZ3A5xhF.js} +1 -1
- package/storybook-static/assets/{components-ClxgOUq5.js → components-DLKEXX2n.js} +3 -3
- package/storybook-static/assets/contextMenu-Cwftox4w.js +2 -0
- package/storybook-static/assets/{dom-DBd_DWF8.js → dom-D9_dPJ4G.js} +1 -1
- package/storybook-static/assets/{download-B1U5w3LU.js → download-BIHyCgGp.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-CyNWkXBV.js → floating-ui.react-bcuT6Qw6.js} +1 -1
- package/storybook-static/assets/{foundationApi-CY0sxk8w.js → foundationApi-C5uBuKS6.js} +1 -1
- package/storybook-static/assets/{foundationLib-BCpSUA25.js → foundationLib-DRvN1n2m.js} +1 -1
- package/storybook-static/assets/{hooks-DjR-EyBl.js → hooks-DovKTAOG.js} +1 -1
- package/storybook-static/assets/iframe-CxmZ1iUO.js +1 -0
- package/storybook-static/assets/{iframe-woVbsQH3.js → iframe-DfqtMMgG.js} +4 -4
- package/storybook-static/assets/{info-DKbXBIbQ.js → info-CgVG4e4u.js} +1 -1
- package/storybook-static/assets/{odata-CMCuN2Rx.js → odata-BGOCt2tD.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-a4Q2PLas.js → odataStoryFixtures--hE0dv-U.js} +1 -1
- package/storybook-static/assets/{react-D3CyilRt.js → react-CZ1I4PcW.js} +1 -1
- package/storybook-static/assets/{refresh-cw-DXEJelAO.js → refresh-cw-CGuUzrYs.js} +1 -1
- package/storybook-static/assets/{settings-2-CKbiQBX8.js → settings-2-BnIPgWLg.js} +1 -1
- package/storybook-static/assets/sortable-CSXMP4VV.js +1 -0
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-CLptde2b.js → syntaxhighlighter-QEQV7K2Y-BXIJBARj.js} +1 -1
- package/storybook-static/assets/{trash-2-CPWRIQlJ.js → trash-2-25yeOC8e.js} +1 -1
- package/storybook-static/assets/{triangle-alert-XjzWCHp5.js → triangle-alert-0L7_o0IU.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-D9KnZAJ2.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-DAdLowou.js → useODataTreeData-BRlsCagQ.js} +1 -1
- package/storybook-static/assets/usePickerQuery-B05uUMJ9.js +1 -0
- package/storybook-static/assets/usePickerTriggerController-YWagu6f6.js +6 -0
- package/storybook-static/assets/{x-D2Q9PGsq.js → x-i4zUW10Y.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/NotificationsHost-CrLL4WK9.js +0 -44
- package/storybook-static/assets/NotificationsHost.stories-Ci2q0W9-.js +0 -29
- 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
|
@@ -14,6 +14,6 @@ interface MonthViewProps {
|
|
|
14
14
|
/**
|
|
15
15
|
* Отображает выбор месяца в календарной семантике без timezone-сдвига.
|
|
16
16
|
*/
|
|
17
|
-
export declare
|
|
17
|
+
export declare function CalendarMonthView({ currentDate, value, onChange, minDate, maxDate, selectsRange, selectsPeriod, selectionMode, weekEndDay }: MonthViewProps): import("react").JSX.Element;
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=CalendarMonthView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarMonthView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarMonthView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAKN,KAAK,cAAc,EACnB,MAAM,4CAA4C,CAAC;AAOpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAK1E,UAAU,cAAc;IACvB,WAAW,EAAE,IAAI,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"CalendarMonthView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarMonthView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAKN,KAAK,cAAc,EACnB,MAAM,4CAA4C,CAAC;AAOpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAK1E,UAAU,cAAc;IACvB,WAAW,EAAE,IAAI,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,aAAqB,EACrB,UAAqB,EACrB,EAAE,cAAc,+BA2FhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAQN,KAAK,iBAAiB,EACtB,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EAA8B,KAAK,YAAY,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAO9H,UAAU,qBAAqB;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,eAAe,EAAE,YAAY,CAAC;IAC9B,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,YAAY,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C;AAED,UAAU,iBAAkB,SAAQ,qBAAqB;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,IAAI,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,iBAAiB,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CAC3C;AAeD;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAC5B,IAAI,EACJ,eAAe,EACf,aAAqB,EACrB,UAAqB,EACrB,YAAY,EACZ,GAAG,KAAK,EACR,EAAE,iBAAiB,+
|
|
1
|
+
{"version":3,"file":"CalendarView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAQN,KAAK,iBAAiB,EACtB,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EAA8B,KAAK,YAAY,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAO9H,UAAU,qBAAqB;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,eAAe,EAAE,YAAY,CAAC;IAC9B,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,YAAY,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C;AAED,UAAU,iBAAkB,SAAQ,qBAAqB;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,IAAI,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,iBAAiB,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CAC3C;AAeD;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAC5B,IAAI,EACJ,eAAe,EACf,aAAqB,EACrB,UAAqB,EACrB,YAAY,EACZ,GAAG,KAAK,EACR,EAAE,iBAAiB,+BAiPnB"}
|
|
@@ -14,6 +14,6 @@ interface YearViewProps {
|
|
|
14
14
|
/**
|
|
15
15
|
* Отображает выбор года в календарной семантике без timezone-сдвига.
|
|
16
16
|
*/
|
|
17
|
-
export declare
|
|
17
|
+
export declare function CalendarYearView({ currentDate, value, onChange, minDate, maxDate, selectsRange, selectsPeriod, selectionMode, weekEndDay }: YearViewProps): import("react").JSX.Element;
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=CalendarYearView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarYearView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarYearView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAKN,KAAK,cAAc,EACnB,MAAM,4CAA4C,CAAC;AAOpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE1E,UAAU,aAAa;IACtB,WAAW,EAAE,IAAI,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"CalendarYearView.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/CalendarYearView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAKN,KAAK,cAAc,EACnB,MAAM,4CAA4C,CAAC;AAOpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE1E,UAAU,aAAa;IACtB,WAAW,EAAE,IAAI,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAChC,WAAW,EACX,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,aAAqB,EACrB,UAAqB,EACrB,EAAE,aAAa,+BAsFf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/DateInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAA4C,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAMtG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAQN,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EAEtC,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,MAAM,QAAQ,CAAC;AAMhB,UAAU,kBAAkB;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC;;OAEG;IACH,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;OAEG;IACH,oBAAoB,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACzD;;;OAGG;IACH,wBAAwB,CAAC,EAAE,iCAAiC,CAAC;IAC7D;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,aAAa,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IACzF,YAAY,CAAC,EAAE,KAAK,CAAC;CACrB;AACD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB,EAAE,WAAW,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACrG,YAAY,EAAE,IAAI,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/date-input/ui/DateInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAA4C,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAMtG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAQN,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EAEtC,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,MAAM,QAAQ,CAAC;AAMhB,UAAU,kBAAkB;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC;;OAEG;IACH,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;OAEG;IACH,oBAAoB,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACzD;;;OAGG;IACH,wBAAwB,CAAC,EAAE,iCAAiC,CAAC;IAC7D;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,aAAa,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IACzF,YAAY,CAAC,EAAE,KAAK,CAAC;CACrB;AACD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB,EAAE,WAAW,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACrG,YAAY,EAAE,IAAI,CAAC;CACnB;AA0PD,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,eAEhF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,eAE9E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as e } from "../chunks/popover-
|
|
1
|
+
import { r as e } from "../chunks/popover-BJH-yHvb.js";
|
|
2
2
|
import { t } from "../chunks/ui.module-oRwY3Zli.js";
|
|
3
3
|
import { c as n, d as r, i } from "../chunks/input-CuRK9Vbz.js";
|
|
4
|
-
import { t as a } from "../chunks/CalendarView-
|
|
4
|
+
import { t as a } from "../chunks/CalendarView-BCXVjLFz.js";
|
|
5
5
|
import { t as o } from "../chunks/wheel-picker-DUHGy7wE.js";
|
|
6
6
|
import { cn as s } from "@ryuzaki13/react-foundation-lib/utils";
|
|
7
7
|
import { CalendarDaysIcon as c, Clock3Icon as l } from "lucide-react";
|
|
@@ -357,16 +357,17 @@ function U({ value: o, onChange: f, label: m, description: g, placeholder: y, di
|
|
|
357
357
|
errorId: ne,
|
|
358
358
|
children: /* @__PURE__ */ u(i, {
|
|
359
359
|
endAdornmentWidth: "var(--control-height)",
|
|
360
|
-
endAdornment: /* @__PURE__ */ u(
|
|
360
|
+
endAdornment: /* @__PURE__ */ u("div", {
|
|
361
361
|
className: t.uiToggleButtonContainer,
|
|
362
|
-
children: /* @__PURE__ */ u("button", {
|
|
362
|
+
children: /* @__PURE__ */ u(e.Trigger, { children: /* @__PURE__ */ u("button", {
|
|
363
363
|
type: "button",
|
|
364
364
|
disabled: b,
|
|
365
365
|
"aria-label": pe,
|
|
366
|
+
"aria-haspopup": "dialog",
|
|
366
367
|
className: t.uiToggleButton,
|
|
367
368
|
children: u(D === "time" ? l : c, {})
|
|
368
|
-
})
|
|
369
|
-
})
|
|
369
|
+
}) })
|
|
370
|
+
}),
|
|
370
371
|
children: ({ controlClassName: e }) => /* @__PURE__ */ u("div", {
|
|
371
372
|
id: K,
|
|
372
373
|
className: s(t.uiInputControlFake, e),
|
|
@@ -374,7 +375,7 @@ function U({ value: o, onChange: f, label: m, description: g, placeholder: y, di
|
|
|
374
375
|
"data-invalid": S ? "" : void 0,
|
|
375
376
|
role: "group",
|
|
376
377
|
"aria-invalid": !!S || void 0,
|
|
377
|
-
"aria-
|
|
378
|
+
"aria-description": me,
|
|
378
379
|
"aria-labelledby": q,
|
|
379
380
|
"aria-describedby": J,
|
|
380
381
|
onFocus: se,
|
|
@@ -406,6 +407,8 @@ function U({ value: o, onChange: f, label: m, description: g, placeholder: y, di
|
|
|
406
407
|
})
|
|
407
408
|
}), /* @__PURE__ */ u(e.Content, {
|
|
408
409
|
background: "primary",
|
|
410
|
+
role: "dialog",
|
|
411
|
+
"aria-label": D === "time" ? "Выбор времени" : "Выбор даты и времени",
|
|
409
412
|
onClose: de,
|
|
410
413
|
children: D === "time" ? /* @__PURE__ */ u("div", {
|
|
411
414
|
className: B.timeOnlyPopoverContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/date-time-input/lib/dateTimeValue.ts","../../src/date-time-input/lib/timePanelState.ts","../../src/date-time-input/model/useDateTimeSegments.ts","../../src/date-time-input/ui/SingleDateTimeInput.module.scss","../../src/date-time-input/ui/TimePanel.module.scss","../../src/date-time-input/ui/TimePanel.tsx","../../src/date-time-input/ui/SingleDateTimeInput.tsx"],"sourcesContent":["import { dateToIndexedSegmentValues, indexedSegmentsToDate, parseDateSegmentMask } from \"@ryuzaki13/react-foundation-lib/date-segments\";\nimport {\n\tcreateCalendarDate,\n\ttype DateFormatPreset,\n\tformatDate,\n\tparseDate,\n\tparseDateByPattern\n} from \"@ryuzaki13/react-foundation-lib/formatters\";\n\nexport type DateTimeInputMode = \"date-time\" | \"time\";\n\n/**\n * Фиксированный формат нового поля даты-времени.\n */\nexport const DATE_TIME_INPUT_FORMAT = \"dd.MM.yyyy HH:mm\";\nexport const TIME_INPUT_FORMAT = \"HH:mm\";\n\nconst DATE_TIME_INPUT_PRESET_NAME = \"__date_time_input__\";\nconst TIME_INPUT_PRESET_NAME = \"__time_input__\";\nconst TIME_ONLY_BASE_YEAR = 1970;\nconst TIME_ONLY_BASE_MONTH = 0;\nconst TIME_ONLY_BASE_DAY = 1;\nconst TIME_SEGMENTS = parseDateSegmentMask(TIME_INPUT_FORMAT);\n\n/**\n * Создаёт техническую базовую дату для режима выбора только времени.\n */\nexport function createTimeOnlyBaseDate(hours = 0, minutes = 0): Date {\n\treturn createCalendarDate(TIME_ONLY_BASE_YEAR, TIME_ONLY_BASE_MONTH, TIME_ONLY_BASE_DAY, hours, minutes, 0, 0);\n}\n\n/**\n * Возвращает формат пользовательского ввода для выбранного режима.\n */\nexport function getDateTimeInputFormat(mode: DateTimeInputMode = \"date-time\"): string {\n\treturn mode === \"time\" ? TIME_INPUT_FORMAT : DATE_TIME_INPUT_FORMAT;\n}\n\n/**\n * Создаёт временную предустановку форматирования для нового поля даты-времени.\n */\nexport function createDateTimeInputPreset(mode: DateTimeInputMode = \"date-time\"): DateFormatPreset {\n\treturn {\n\t\tname: mode === \"time\" ? TIME_INPUT_PRESET_NAME : DATE_TIME_INPUT_PRESET_NAME,\n\t\tpattern: getDateTimeInputFormat(mode),\n\t\tlocale: \"ru-RU\",\n\t\tinvalidFallback: \"\"\n\t};\n}\n\n/**\n * Нормализует внешнее значение к валидному Date без timezone-сдвига.\n */\nexport function normalizeDateTimeValue(value: Date | null | undefined, mode: DateTimeInputMode = \"date-time\"): Date | null {\n\tif (value == null) return null;\n\n\tconst parsedValue = parseDate(value);\n\tif (!parsedValue) return null;\n\n\tif (mode === \"time\") {\n\t\treturn createTimeOnlyBaseDate(parsedValue.getHours(), parsedValue.getMinutes());\n\t}\n\n\treturn parsedValue;\n}\n\n/**\n * Форматирует значение поля даты-времени в фиксированный пользовательский формат.\n */\nexport function formatDateTimeInputValue(value: Date | null | undefined, mode: DateTimeInputMode = \"date-time\"): string {\n\tif (!value) return \"\";\n\treturn formatDate(normalizeDateTimeValue(value, mode), createDateTimeInputPreset(mode));\n}\n\n/**\n * Строго парсит строку пользовательского ввода в Date.\n */\nexport function parseDateTimeInputValue(value: string, mode: DateTimeInputMode = \"date-time\"): Date | null {\n\tif (mode === \"time\") {\n\t\tconst match = /^\\d{2}:\\d{2}$/.exec(value.trim());\n\t\tif (!match) return null;\n\n\t\tconst values = dateToIndexedSegmentValues(createTimeOnlyBaseDate(), TIME_SEGMENTS);\n\t\tvalues.set(0, value.slice(0, 2));\n\t\tvalues.set(2, value.slice(3, 5));\n\n\t\treturn indexedSegmentsToDate(TIME_SEGMENTS, values, {\n\t\t\tdefaultDate: createTimeOnlyBaseDate()\n\t\t});\n\t}\n\n\tconst parsed = parseDateByPattern(value, DATE_TIME_INPUT_FORMAT);\n\tif (!parsed || parsed.kind !== \"date-time\") return null;\n\n\treturn parsed.date;\n}\n\n/**\n * Проверяет, попадает ли дата-время в допустимый диапазон.\n */\nexport function isDateTimeWithinRange(value: Date, minDate?: Date, maxDate?: Date, mode: DateTimeInputMode = \"date-time\"): boolean {\n\tconst normalizedValue = normalizeDateTimeValue(value, mode);\n\tif (!normalizedValue) return false;\n\n\tif (mode === \"time\") {\n\t\tconst valueMinutes = normalizedValue.getHours() * 60 + normalizedValue.getMinutes();\n\t\tconst normalizedMinDate = minDate ? normalizeDateTimeValue(minDate, \"time\") : null;\n\t\tconst normalizedMaxDate = maxDate ? normalizeDateTimeValue(maxDate, \"time\") : null;\n\n\t\tif (normalizedMinDate) {\n\t\t\tconst minMinutes = normalizedMinDate.getHours() * 60 + normalizedMinDate.getMinutes();\n\t\t\tif (valueMinutes < minMinutes) return false;\n\t\t}\n\n\t\tif (normalizedMaxDate) {\n\t\t\tconst maxMinutes = normalizedMaxDate.getHours() * 60 + normalizedMaxDate.getMinutes();\n\t\t\tif (valueMinutes > maxMinutes) return false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tif (minDate && normalizedValue < minDate) return false;\n\tif (maxDate && normalizedValue > maxDate) return false;\n\n\treturn true;\n}\n\n/**\n * Переносит дату выбранного дня, сохраняя часы и минуты базового значения.\n */\nexport function mergeDateWithTime(datePart: Date, timeSource?: Date | null): Date {\n\tconst source = normalizeDateTimeValue(timeSource);\n\tconst hours = source?.getHours() ?? 0;\n\tconst minutes = source?.getMinutes() ?? 0;\n\n\treturn createCalendarDate(datePart.getFullYear(), datePart.getMonth(), datePart.getDate(), hours, minutes, 0, 0);\n}\n\n/**\n * Переносит часы и минуты в базовую календарную дату.\n */\nexport function mergeTimeIntoDate(baseDate: Date, hours: number, minutes: number, mode: DateTimeInputMode = \"date-time\"): Date {\n\tif (mode === \"time\") {\n\t\treturn createTimeOnlyBaseDate(hours, minutes);\n\t}\n\n\treturn createCalendarDate(baseDate.getFullYear(), baseDate.getMonth(), baseDate.getDate(), hours, minutes, 0, 0);\n}\n\n/**\n * Создаёт рабочую дату для picker-сценариев без выбранного значения.\n */\nexport function resolvePickerBaseDate(value: Date | null | undefined, fallbackDate: Date, mode: DateTimeInputMode = \"date-time\"): Date {\n\tif (mode === \"time\") {\n\t\treturn normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate();\n\t}\n\n\treturn normalizeDateTimeValue(value, mode) ?? fallbackDate;\n}\n\n/**\n * Возвращает границы часов и минут для выбранного календарного дня.\n */\nexport function getTimeRangeForDay(\n\tday: Date,\n\tminDate?: Date,\n\tmaxDate?: Date,\n\tmode: DateTimeInputMode = \"date-time\"\n): {\n\tdisabled: boolean;\n\tminHour: number;\n\tmaxHour: number;\n\tminMinuteByHour: (hour: number) => number;\n\tmaxMinuteByHour: (hour: number) => number;\n} {\n\tconst normalizedDay = normalizeDateTimeValue(day, mode) ?? day;\n\tconst normalizedMinDate = minDate ? normalizeDateTimeValue(minDate, mode) : null;\n\tconst normalizedMaxDate = maxDate ? normalizeDateTimeValue(maxDate, mode) : null;\n\tconst isSameMinDay =\n\t\t!!normalizedMinDate &&\n\t\tnormalizedDay.getFullYear() === normalizedMinDate.getFullYear() &&\n\t\tnormalizedDay.getMonth() === normalizedMinDate.getMonth() &&\n\t\tnormalizedDay.getDate() === normalizedMinDate.getDate();\n\tconst isSameMaxDay =\n\t\t!!normalizedMaxDate &&\n\t\tnormalizedDay.getFullYear() === normalizedMaxDate.getFullYear() &&\n\t\tnormalizedDay.getMonth() === normalizedMaxDate.getMonth() &&\n\t\tnormalizedDay.getDate() === normalizedMaxDate.getDate();\n\n\tconst minHour = isSameMinDay ? normalizedMinDate!.getHours() : 0;\n\tconst maxHour = isSameMaxDay ? normalizedMaxDate!.getHours() : 23;\n\tconst minMinuteAtBoundary = isSameMinDay && minHour === maxHour ? normalizedMinDate!.getMinutes() : 0;\n\tconst maxMinuteAtBoundary = isSameMaxDay && minHour === maxHour ? normalizedMaxDate!.getMinutes() : 59;\n\tconst disabled = minHour > maxHour || (minHour === maxHour && minMinuteAtBoundary > maxMinuteAtBoundary);\n\n\treturn {\n\t\tdisabled,\n\t\tminHour,\n\t\tmaxHour,\n\t\tminMinuteByHour: (hour) => {\n\t\t\tif (disabled) return 0;\n\t\t\treturn isSameMinDay && hour === minHour ? normalizedMinDate!.getMinutes() : 0;\n\t\t},\n\t\tmaxMinuteByHour: (hour) => {\n\t\t\tif (disabled) return 59;\n\t\t\treturn isSameMaxDay && hour === maxHour ? normalizedMaxDate!.getMinutes() : 59;\n\t\t}\n\t};\n}\n\n/**\n * Ограничивает часы и минуты допустимым диапазоном текущего дня.\n */\nexport function clampTimeForDay(\n\tday: Date,\n\thours: number,\n\tminutes: number,\n\tminDate?: Date,\n\tmaxDate?: Date,\n\tmode: DateTimeInputMode = \"date-time\"\n): { hours: number; minutes: number } {\n\tconst range = getTimeRangeForDay(day, minDate, maxDate, mode);\n\tif (range.disabled) {\n\t\treturn { hours: 0, minutes: 0 };\n\t}\n\n\tconst clampedHour = Math.min(Math.max(hours, range.minHour), range.maxHour);\n\tconst minMinute = range.minMinuteByHour(clampedHour);\n\tconst maxMinute = range.maxMinuteByHour(clampedHour);\n\tconst clampedMinute = Math.min(Math.max(minutes, minMinute), maxMinute);\n\n\treturn {\n\t\thours: clampedHour,\n\t\tminutes: clampedMinute\n\t};\n}\n","import { getTimeRangeForDay } from \"./dateTimeValue\";\n\nimport type { DateTimeInputMode } from \"./dateTimeValue\";\n\n/**\n * Состояние и доступные значения для панели выбора времени.\n */\nexport interface TimePanelState {\n\tdisabled: boolean;\n\tselectedHour: number;\n\tselectedMinute: number;\n\thours: number[];\n\tminutes: number[];\n}\n\n/**\n * Собирает состояние часов и минут для панели выбора времени.\n */\nexport function buildTimePanelState(value: Date, minDate?: Date, maxDate?: Date, mode: DateTimeInputMode = \"date-time\"): TimePanelState {\n\tconst timeRange = getTimeRangeForDay(value, minDate, maxDate, mode);\n\tconst selectedHour = value.getHours();\n\tconst selectedMinute = value.getMinutes();\n\tconst minuteMin = timeRange.minMinuteByHour(selectedHour);\n\tconst minuteMax = timeRange.maxMinuteByHour(selectedHour);\n\n\tif (timeRange.disabled) {\n\t\treturn {\n\t\t\tdisabled: true,\n\t\t\tselectedHour,\n\t\t\tselectedMinute,\n\t\t\thours: [],\n\t\t\tminutes: []\n\t\t};\n\t}\n\n\treturn {\n\t\tdisabled: false,\n\t\tselectedHour,\n\t\tselectedMinute,\n\t\thours: Array.from({ length: timeRange.maxHour - timeRange.minHour + 1 }, (_, index) => timeRange.minHour + index),\n\t\tminutes: Array.from({ length: minuteMax - minuteMin + 1 }, (_, index) => minuteMin + index)\n\t};\n}\n","import type { ChangeEvent, FocusEvent, KeyboardEvent } from \"react\";\nimport { useCallback, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tareAllDateSegmentsEmpty,\n\tdateToIndexedSegmentValues,\n\ttype EditableDateSegment,\n\tindexedSegmentsToDate,\n\tparseDateSegmentMask\n} from \"@ryuzaki13/react-foundation-lib/date-segments\";\n\nimport { createTimeOnlyBaseDate, getDateTimeInputFormat, isDateTimeWithinRange, normalizeDateTimeValue } from \"../lib\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\ninterface UseDateTimeSegmentsOptions {\n\tvalue: Date | null | undefined;\n\tonChange: (value: Date | null) => void;\n\tonClearError?: () => void;\n\tdisabled?: boolean;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\tmode?: DateTimeInputMode;\n}\n\nfunction resolveEditableIndices(segments: readonly { kind: string }[]): number[] {\n\tconst indices: number[] = [];\n\n\tsegments.forEach((segment, index) => {\n\t\tif (segment.kind === \"editable\") {\n\t\t\tindices.push(index);\n\t\t}\n\t});\n\n\treturn indices;\n}\n\n/**\n * Управляет сегментным вводом фиксированного формата даты-времени или только времени.\n */\nexport function useDateTimeSegments({\n\tvalue,\n\tonChange,\n\tonClearError,\n\tdisabled,\n\tminDate,\n\tmaxDate,\n\tmode = \"date-time\"\n}: UseDateTimeSegmentsOptions) {\n\tconst inputFormat = useMemo(() => getDateTimeInputFormat(mode), [mode]);\n\tconst segments = useMemo(() => parseDateSegmentMask(inputFormat), [inputFormat]);\n\tconst editableIndices = useMemo(() => resolveEditableIndices(segments), [segments]);\n\tconst committedValues = useMemo(() => dateToIndexedSegmentValues(value ?? null, segments), [segments, value]);\n\tconst currentValueTime = value?.getTime() ?? null;\n\tconst [dirtyState, setDirtyState] = useState<{\n\t\treadonly sourceValueTime: number | null;\n\t\treadonly sourceMode: DateTimeInputMode;\n\t\treadonly values: Map<number, string>;\n\t} | null>(null);\n\tconst dirtyValues = dirtyState?.sourceValueTime === currentValueTime && dirtyState.sourceMode === mode ? dirtyState.values : null;\n\tconst segmentValues = dirtyValues ?? committedValues;\n\tconst refsMap = useRef<Map<number, HTMLInputElement>>(new Map());\n\tconst blurTimeout = useRef<number>(0);\n\n\t/**\n\t * Привязывает незавершённые сегменты к controlled-снимку, на основе которого\n\t * пользователь начал ввод. Новое внешнее value автоматически делает draft неактуальным.\n\t */\n\tconst setDirtyValues = useCallback(\n\t\t(values: Map<number, string> | null) => {\n\t\t\tsetDirtyState(\n\t\t\t\tvalues === null\n\t\t\t\t\t? null\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tsourceValueTime: currentValueTime,\n\t\t\t\t\t\t\tsourceMode: mode,\n\t\t\t\t\t\t\tvalues\n\t\t\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[currentValueTime, mode]\n\t);\n\n\t/**\n\t * Пытается собрать и отдать наружу новое значение поля.\n\t */\n\tconst tryCommit = useCallback(\n\t\t(updatedValues: Map<number, string>) => {\n\t\t\tif (areAllDateSegmentsEmpty(segments, updatedValues)) {\n\t\t\t\tonChange(null);\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst nextDate = indexedSegmentsToDate(segments, updatedValues, {\n\t\t\t\tdefaultDate: mode === \"time\" ? (normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate()) : undefined\n\t\t\t});\n\t\t\tif (!nextDate) return null;\n\t\t\tif (!isDateTimeWithinRange(nextDate, minDate, maxDate, mode)) return null;\n\n\t\t\tonChange(nextDate);\n\t\t\treturn nextDate;\n\t\t},\n\t\t[maxDate, minDate, mode, onChange, segments, value]\n\t);\n\n\t/**\n\t * Фокусирует конкретный редактируемый сегмент.\n\t */\n\tconst focusSegment = useCallback((index: number, selectAll = true) => {\n\t\tconst element = refsMap.current.get(index);\n\t\tif (!element) return;\n\n\t\telement.focus();\n\t\tif (selectAll) {\n\t\t\trequestAnimationFrame(() => element.select());\n\t\t}\n\t}, []);\n\n\t/**\n\t * Возвращает индекс следующего редактируемого сегмента.\n\t */\n\tconst getNextEditable = useCallback(\n\t\t(currentIndex: number): number | null => {\n\t\t\tconst position = editableIndices.indexOf(currentIndex);\n\t\t\treturn position < editableIndices.length - 1 ? editableIndices[position + 1] : null;\n\t\t},\n\t\t[editableIndices]\n\t);\n\n\t/**\n\t * Возвращает индекс предыдущего редактируемого сегмента.\n\t */\n\tconst getPreviousEditable = useCallback(\n\t\t(currentIndex: number): number | null => {\n\t\t\tconst position = editableIndices.indexOf(currentIndex);\n\t\t\treturn position > 0 ? editableIndices[position - 1] : null;\n\t\t},\n\t\t[editableIndices]\n\t);\n\n\t/**\n\t * Дополняет неполный сегмент ведущими нулями.\n\t */\n\tconst padValue = useCallback((valueToPad: string, segment: EditableDateSegment) => valueToPad.padStart(segment.length, \"0\"), []);\n\n\t/**\n\t * Регистрирует DOM-ссылку сегмента по индексу.\n\t */\n\tconst registerRef = useCallback(\n\t\t(index: number) => (element: HTMLInputElement | null) => {\n\t\t\tif (element) {\n\t\t\t\trefsMap.current.set(index, element);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\trefsMap.current.delete(index);\n\t\t},\n\t\t[]\n\t);\n\n\t/**\n\t * Обрабатывает печать внутри отдельного сегмента.\n\t */\n\tconst handleInput = useCallback(\n\t\t(index: number) => (event: ChangeEvent<HTMLInputElement>) => {\n\t\t\tif (disabled) return;\n\n\t\t\tconst segment = segments[index];\n\t\t\tif (segment.kind !== \"editable\") return;\n\n\t\t\tconst rawValue = event.target.value.replace(/\\D/g, \"\");\n\t\t\tconst clampedValue = rawValue.slice(0, segment.length);\n\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\tupdatedValues.set(index, clampedValue);\n\t\t\tsetDirtyValues(updatedValues);\n\t\t\tonClearError?.();\n\n\t\t\tif (clampedValue.length === segment.length) {\n\t\t\t\tconst nextIndex = getNextEditable(index);\n\t\t\t\tif (nextIndex !== null) {\n\t\t\t\t\trequestAnimationFrame(() => focusSegment(nextIndex));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ttryCommit(updatedValues);\n\t\t},\n\t\t[disabled, focusSegment, getNextEditable, onClearError, segmentValues, segments, setDirtyValues, tryCommit]\n\t);\n\n\t/**\n\t * Обрабатывает клавиатурную навигацию и шаговые изменения сегментов.\n\t */\n\tconst handleKeyDown = useCallback(\n\t\t(index: number) => (event: KeyboardEvent<HTMLInputElement>) => {\n\t\t\tif (disabled) return;\n\n\t\t\tconst segment = segments[index];\n\t\t\tif (segment.kind !== \"editable\") return;\n\n\t\t\tconst currentValue = segmentValues.get(index) ?? \"\";\n\t\t\tconst element = event.currentTarget;\n\n\t\t\tswitch (event.key) {\n\t\t\t\tcase \"ArrowRight\": {\n\t\t\t\t\tif (element.selectionStart === currentValue.length || currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst nextIndex = getNextEditable(index);\n\t\t\t\t\t\tif (nextIndex !== null) focusSegment(nextIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowLeft\": {\n\t\t\t\t\tif (element.selectionStart === 0 || currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst previousIndex = getPreviousEditable(index);\n\t\t\t\t\t\tif (previousIndex !== null) focusSegment(previousIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowUp\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlet numericValue = currentValue === \"\" ? segment.min : Number.parseInt(currentValue, 10) + 1;\n\t\t\t\t\tif (numericValue > segment.max) numericValue = segment.min;\n\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, padValue(String(numericValue), segment));\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\trequestAnimationFrame(() => element.select());\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowDown\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlet numericValue = currentValue === \"\" ? segment.max : Number.parseInt(currentValue, 10) - 1;\n\t\t\t\t\tif (numericValue < segment.min) numericValue = segment.max;\n\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, padValue(String(numericValue), segment));\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\trequestAnimationFrame(() => element.select());\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"Backspace\": {\n\t\t\t\t\tif (currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst previousIndex = getPreviousEditable(index);\n\t\t\t\t\t\tif (previousIndex !== null) focusSegment(previousIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"Delete\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, \"\");\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[disabled, focusSegment, getNextEditable, getPreviousEditable, padValue, segmentValues, segments, setDirtyValues, tryCommit]\n\t);\n\n\t/**\n\t * Выделяет содержимое сегмента при фокусе.\n\t */\n\tconst handleFocus = useCallback(\n\t\t() => (event: FocusEvent<HTMLInputElement>) => {\n\t\t\tevent.target.select();\n\t\t},\n\t\t[]\n\t);\n\n\t/**\n\t * Сбрасывает таймер blur, когда контейнер получает фокус.\n\t */\n\tconst handleContainerFocus = useCallback(() => {\n\t\tclearTimeout(blurTimeout.current);\n\t}, []);\n\n\t/**\n\t * На blur оставляет только committed-значение либо полностью пустое состояние.\n\t */\n\tconst handleContainerBlur = useCallback(() => {\n\t\tconst currentValues = new Map(segmentValues);\n\n\t\tblurTimeout.current = window.setTimeout(() => {\n\t\t\tif (areAllDateSegmentsEmpty(segments, currentValues)) {\n\t\t\t\tonChange(null);\n\t\t\t\tsetDirtyValues(currentValues);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst nextDate = indexedSegmentsToDate(segments, currentValues, {\n\t\t\t\tdefaultDate: mode === \"time\" ? (normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate()) : undefined\n\t\t\t});\n\t\t\tif (!nextDate || !isDateTimeWithinRange(nextDate, minDate, maxDate, mode)) {\n\t\t\t\tsetDirtyValues(null);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetDirtyValues(currentValues);\n\t\t}, 0);\n\t}, [maxDate, minDate, mode, onChange, segmentValues, segments, setDirtyValues, value]);\n\n\t/**\n\t * Фокусирует первый пустой сегмент либо последний редактируемый.\n\t */\n\tconst focusFirstEmpty = useCallback(() => {\n\t\tconst firstEmpty = editableIndices.find((index) => !(segmentValues.get(index) ?? \"\"));\n\t\tconst targetIndex = firstEmpty ?? editableIndices[editableIndices.length - 1];\n\t\tif (targetIndex !== undefined) {\n\t\t\tfocusSegment(targetIndex);\n\t\t}\n\t}, [editableIndices, focusSegment, segmentValues]);\n\n\treturn {\n\t\tsegments,\n\t\tsegmentValues,\n\t\tregisterRef,\n\t\thandleInput,\n\t\thandleKeyDown,\n\t\thandleFocus,\n\t\thandleContainerFocus,\n\t\thandleContainerBlur,\n\t\tfocusFirstEmpty\n\t};\n}\n","@use \"@/styles/mixins\" as *;\n\n.segmentInput {\n\tborder: none;\n\tborder-radius: var(--radius-xs);\n\tbackground: transparent;\n\toutline: none;\n\tpadding: 0;\n\tmargin: 0;\n\tfont-family: var(--font-family-mono);\n\tcolor: inherit;\n\ttext-align: center;\n\tcaret-color: var(--content-0);\n\tfont-variant-numeric: tabular-nums;\n\n\t&::placeholder {\n\t\tcolor: var(--content-2);\n\t\t// font-size: var(--font-size-sm);\n\t}\n\n\t&::selection {\n\t\tbackground-color: var(--focus-ring);\n\t\tcolor: var(--surface-0);\n\t}\n\n\t&:disabled {\n\t\topacity: 0.25;\n\t}\n}\n\n.separator {\n\tuser-select: none;\n\tcolor: var(--content-1);\n\tflex-shrink: 0;\n\n\t&[data-disabled] {\n\t\topacity: 0.25;\n\t}\n}\n\n.popoverContent {\n\tdisplay: grid;\n\tgap: var(--space-md);\n}\n\n.bottom {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n\n.right {\n\tgrid-template-columns: auto calc(9em + var(--width-add));\n\talign-items: stretch;\n}\n\n.calendarPane {\n\tmin-width: 0;\n}\n\n.timePanelPane {\n\tmin-width: 0;\n}\n\n.timeOnlyPopoverContent {\n\tmin-width: calc(9em + var(--width-add));\n}\n\n.timePanelPaneBottom {\n\tpadding-top: var(--space-md);\n\tborder-top: var(--border);\n}\n\n.timePanelPaneRight {\n\tpadding-left: var(--space-md);\n\tborder-left: var(--border);\n}\n",".timePanel {\n\theight: 100%;\n}\n\n.hint {\n\tfont-size: var(--font-size-xs);\n\tcolor: var(--content-1);\n}\n\n.fields {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(2, minmax(0, 1fr));\n\tgap: var(--space-sm);\n\tmin-height: 10em;\n\theight: 100%;\n}\n\n.field {\n\tdisplay: grid;\n\tgrid-template-rows: auto 1fr;\n\tgap: var(--space-xs);\n\tmin-height: 0;\n}\n\n.label {\n\t// font-size: var(--font-size-sm);\n\tcolor: var(--content-1);\n}\n\n.wheel {\n\tmin-height: 10em;\n}\n","import { WheelPicker } from \"../../wheel-picker\";\nimport { buildTimePanelState } from \"../lib/timePanelState\";\n\nimport styles from \"./TimePanel.module.scss\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\n/**\n * Пропсы панели выбора времени.\n */\nexport interface TimePanelProps {\n\tvalue: Date;\n\tdisabled?: boolean;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\tmode?: DateTimeInputMode;\n\tonChange: (hours: number, minutes: number) => void;\n}\n\n/**\n * Переиспользуемая панель выбора времени поверх internal wheel-picker.\n */\nexport function TimePanel({ value, disabled, minDate, maxDate, mode = \"date-time\", onChange }: TimePanelProps) {\n\tconst state = buildTimePanelState(value, minDate, maxDate, mode);\n\n\t/**\n\t * Форматирует двузначное значение времени.\n\t */\n\tconst formatValue = (timePart: number) => String(timePart).padStart(2, \"0\");\n\n\tif (state.disabled) {\n\t\treturn (\n\t\t\t<div className={styles.timePanel}>\n\t\t\t\t<p className={styles.hint}>Для выбранного дня нет доступного времени в заданном диапазоне.</p>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className={styles.timePanel}>\n\t\t\t<div className={styles.fields}>\n\t\t\t\t<label className={styles.field}>\n\t\t\t\t\t<span className={styles.label}>Часы</span>\n\t\t\t\t\t<WheelPicker\n\t\t\t\t\t\tclassName={styles.wheel}\n\t\t\t\t\t\titems={state.hours}\n\t\t\t\t\t\tvalue={state.selectedHour}\n\t\t\t\t\t\tonChange={(hours) => onChange(hours, state.selectedMinute)}\n\t\t\t\t\t\tariaLabel=\"Выбор часов\"\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tformatItem={formatValue}\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\n\t\t\t\t<label className={styles.field}>\n\t\t\t\t\t<span className={styles.label}>Минуты</span>\n\t\t\t\t\t<WheelPicker\n\t\t\t\t\t\tclassName={styles.wheel}\n\t\t\t\t\t\titems={state.minutes}\n\t\t\t\t\t\tvalue={state.selectedMinute}\n\t\t\t\t\t\tonChange={(minutes) => onChange(state.selectedHour, minutes)}\n\t\t\t\t\t\tariaLabel=\"Выбор минут\"\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tformatItem={formatValue}\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { JSX, useMemo, useState } from \"react\";\n\nimport { getStartOfDay, isDateRangeTuple, NullableDateRange } from \"@ryuzaki13/react-foundation-lib/formatters\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CalendarDaysIcon, Clock3Icon } from \"lucide-react\";\n\nimport { CalendarView } from \"../../date-input/ui\";\nimport { InputControl, InputUI, useInputFieldIds } from \"../../input\";\nimport { Popover } from \"../../popover\";\nimport { UiBaseProps } from \"../../types\";\nimport uiStyles from \"../../ui.module.scss\";\nimport {\n\tclampTimeForDay,\n\tisDateTimeWithinRange,\n\tmergeDateWithTime,\n\tmergeTimeIntoDate,\n\tnormalizeDateTimeValue,\n\tresolvePickerBaseDate\n} from \"../lib\";\nimport { useDateTimeSegments } from \"../model\";\n\nimport styles from \"./SingleDateTimeInput.module.scss\";\nimport { TimePanel } from \"./TimePanel\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\ninterface BaseSingleDateTimeInputProps {\n\terror?: string;\n\tonClearError?: () => void;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\ttimePanelPlacement?: \"bottom\" | \"right\";\n\tmode?: DateTimeInputMode;\n}\n\nexport interface SingleDateTimeInputProps extends BaseSingleDateTimeInputProps, UiBaseProps<Date | null> {}\n\n/**\n * Поле выбора даты-времени со строгой сегментной маской и popover-пикером.\n */\nexport function SingleDateTimeInput({\n\tvalue,\n\tonChange,\n\tlabel,\n\tdescription,\n\tplaceholder,\n\tdisabled,\n\tsize,\n\terror,\n\tonClearError,\n\tminDate,\n\tmaxDate,\n\ttimePanelPlacement = \"right\",\n\tmode = \"date-time\"\n}: SingleDateTimeInputProps): JSX.Element {\n\tconst normalizedValue = useMemo(() => normalizeDateTimeValue(value, mode), [mode, value]);\n\n\tconst fallbackPickerDate = useMemo(() => getStartOfDay(new Date()), []);\n\n\tconst [open, setOpen] = useState(false);\n\tconst [draftValue, setDraftValue] = useState<Date | null>(normalizedValue ?? null);\n\tconst [calendarView, setCalendarView] = useState<\"day\" | \"month\" | \"year\">(\"day\");\n\tconst [pickerDate, setPickerDate] = useState<Date>(() => resolvePickerBaseDate(normalizedValue, fallbackPickerDate, mode));\n\n\tconst { controlId, labelId, descriptionId, errorId, describedBy } = useInputFieldIds({\n\t\thasLabel: label !== undefined && label !== null,\n\t\thasDescription: !!description,\n\t\thasError: !!error\n\t});\n\n\tconst {\n\t\tsegments,\n\t\tsegmentValues,\n\t\tregisterRef,\n\t\thandleInput,\n\t\thandleKeyDown,\n\t\thandleFocus,\n\t\thandleContainerFocus,\n\t\thandleContainerBlur,\n\t\tfocusFirstEmpty\n\t} = useDateTimeSegments({\n\t\tvalue: normalizedValue,\n\t\tonChange,\n\t\tonClearError,\n\t\tdisabled,\n\t\tminDate,\n\t\tmaxDate,\n\t\tmode\n\t});\n\n\t/**\n\t * Выбирает дату в календаре и сохраняет текущее время.\n\t */\n\tconst handleCalendarSelect = (nextDate: Date | NullableDateRange) => {\n\t\tif (mode === \"time\" || isDateRangeTuple(nextDate) || disabled) return;\n\n\t\tconst baseValue = draftValue ?? normalizedValue ?? pickerDate;\n\t\tconst mergedDate = mergeDateWithTime(nextDate, baseValue);\n\t\tconst { hours, minutes } = clampTimeForDay(nextDate, mergedDate.getHours(), mergedDate.getMinutes(), minDate, maxDate, mode);\n\t\tconst nextValue = mergeTimeIntoDate(nextDate, hours, minutes);\n\n\t\tif (!isDateTimeWithinRange(nextValue, minDate, maxDate, mode)) return;\n\n\t\tonClearError?.();\n\t\tsetDraftValue(nextValue);\n\t\tsetPickerDate(nextValue);\n\t};\n\n\t/**\n\t * Выбирает время для текущего рабочего дня picker-а.\n\t */\n\tconst handleTimeChange = (hours: number, minutes: number) => {\n\t\tif (disabled) return;\n\n\t\tconst baseDate = draftValue ?? normalizedValue ?? pickerDate;\n\t\tconst clampedTime = clampTimeForDay(baseDate, hours, minutes, minDate, maxDate, mode);\n\t\tconst nextValue = mergeTimeIntoDate(baseDate, clampedTime.hours, clampedTime.minutes, mode);\n\n\t\tif (!isDateTimeWithinRange(nextValue, minDate, maxDate, mode)) return;\n\n\t\tonClearError?.();\n\t\tsetDraftValue(nextValue);\n\t\tsetPickerDate(nextValue);\n\t};\n\n\tconst handleOpenChange = (nextOpen: boolean) => {\n\t\tif (nextOpen) {\n\t\t\tsetDraftValue(normalizedValue ?? null);\n\t\t\tsetPickerDate(resolvePickerBaseDate(normalizedValue, fallbackPickerDate, mode));\n\t\t}\n\n\t\tsetOpen(nextOpen);\n\t};\n\n\tconst handlePopoverClose = () => {\n\t\tconst prevTime = normalizedValue?.getTime() ?? null;\n\t\tconst draftTime = draftValue?.getTime() ?? null;\n\n\t\tif (prevTime !== draftTime) {\n\t\t\tonChange(draftValue);\n\t\t}\n\t};\n\n\tconst panelPlacementClass = timePanelPlacement === \"right\" ? styles.timePanelPaneRight : styles.timePanelPaneBottom;\n\tconst buttonAriaLabel = mode === \"time\" ? \"Открыть выбор времени\" : \"Открыть календарь даты и времени\";\n\tconst inputPlaceholder = placeholder ?? (mode === \"time\" ? \"чч:мм\" : \"дд.мм.гггг чч:мм\");\n\tconst pickerValue = draftValue ?? normalizedValue ?? pickerDate;\n\n\treturn (\n\t\t<Popover open={open} onOpenChange={handleOpenChange}>\n\t\t\t<InputUI\n\t\t\t\tlabel={label}\n\t\t\t\tdescription={description}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tsize={size}\n\t\t\t\terror={error}\n\t\t\t\tcontrolId={controlId}\n\t\t\t\tlabelId={labelId}\n\t\t\t\tdescriptionId={descriptionId}\n\t\t\t\terrorId={errorId}>\n\t\t\t\t<InputControl\n\t\t\t\t\tendAdornmentWidth=\"var(--control-height)\"\n\t\t\t\t\tendAdornment={\n\t\t\t\t\t\t<Popover.Trigger>\n\t\t\t\t\t\t\t<div className={uiStyles.uiToggleButtonContainer}>\n\t\t\t\t\t\t\t\t<button type=\"button\" disabled={disabled} aria-label={buttonAriaLabel} className={uiStyles.uiToggleButton}>\n\t\t\t\t\t\t\t\t\t{mode === \"time\" ? <Clock3Icon /> : <CalendarDaysIcon />}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</Popover.Trigger>\n\t\t\t\t\t}>\n\t\t\t\t\t{({ controlClassName }) => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tid={controlId}\n\t\t\t\t\t\t\tclassName={cn(uiStyles.uiInputControlFake, controlClassName)}\n\t\t\t\t\t\t\tdata-disabled={disabled || undefined}\n\t\t\t\t\t\t\tdata-invalid={error ? \"\" : undefined}\n\t\t\t\t\t\t\trole=\"group\"\n\t\t\t\t\t\t\taria-invalid={!!error || undefined}\n\t\t\t\t\t\t\taria-placeholder={inputPlaceholder}\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\tonFocus={handleContainerFocus}\n\t\t\t\t\t\t\tonBlur={handleContainerBlur}\n\t\t\t\t\t\t\tonClick={(event) => {\n\t\t\t\t\t\t\t\tif (event.target === event.currentTarget) {\n\t\t\t\t\t\t\t\t\tfocusFirstEmpty();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}>\n\t\t\t\t\t\t\t{segments.map((segment, index) => {\n\t\t\t\t\t\t\t\tif (segment.kind === \"literal\") {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<span key={index} className={styles.separator} data-disabled={disabled || undefined}>\n\t\t\t\t\t\t\t\t\t\t\t{segment.text}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\t\t\t\t\tref={registerRef(index)}\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\tinputMode=\"numeric\"\n\t\t\t\t\t\t\t\t\t\tclassName={styles.segmentInput}\n\t\t\t\t\t\t\t\t\t\tstyle={{ width: `${segment.length + 0.5}ch` }}\n\t\t\t\t\t\t\t\t\t\tvalue={segmentValues.get(index) ?? \"\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={segment.placeholder}\n\t\t\t\t\t\t\t\t\t\tmaxLength={segment.length}\n\t\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\t\taria-label={segment.ariaLabel}\n\t\t\t\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\t\t\t\tonChange={handleInput(index)}\n\t\t\t\t\t\t\t\t\t\tonKeyDown={handleKeyDown(index)}\n\t\t\t\t\t\t\t\t\t\tonFocus={handleFocus()}\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})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</InputControl>\n\t\t\t</InputUI>\n\n\t\t\t<Popover.Content background=\"primary\" onClose={handlePopoverClose}>\n\t\t\t\t{mode === \"time\" ? (\n\t\t\t\t\t<div className={styles.timeOnlyPopoverContent}>\n\t\t\t\t\t\t<TimePanel\n\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\tmode={mode}\n\t\t\t\t\t\t\tonChange={handleTimeChange}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<div className={cn(styles.popoverContent, styles[timePanelPlacement])}>\n\t\t\t\t\t\t<div className={styles.calendarPane}>\n\t\t\t\t\t\t\t<CalendarView\n\t\t\t\t\t\t\t\tview={calendarView}\n\t\t\t\t\t\t\t\tdatePickerLevel=\"day\"\n\t\t\t\t\t\t\t\tselectionMode=\"day\"\n\t\t\t\t\t\t\t\tonViewChange={setCalendarView}\n\t\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\t\tonChange={handleCalendarSelect}\n\t\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\t\tcurrentDate={pickerDate}\n\t\t\t\t\t\t\t\tonCurrentDateChange={setPickerDate}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className={cn(styles.timePanelPane, panelPlacementClass)}>\n\t\t\t\t\t\t\t<TimePanel\n\t\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\t\tmode={mode}\n\t\t\t\t\t\t\t\tonChange={handleTimeChange}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Popover.Content>\n\t\t</Popover>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/date-time-input/lib/dateTimeValue.ts","../../src/date-time-input/lib/timePanelState.ts","../../src/date-time-input/model/useDateTimeSegments.ts","../../src/date-time-input/ui/SingleDateTimeInput.module.scss","../../src/date-time-input/ui/TimePanel.module.scss","../../src/date-time-input/ui/TimePanel.tsx","../../src/date-time-input/ui/SingleDateTimeInput.tsx"],"sourcesContent":["import { dateToIndexedSegmentValues, indexedSegmentsToDate, parseDateSegmentMask } from \"@ryuzaki13/react-foundation-lib/date-segments\";\nimport {\n\tcreateCalendarDate,\n\ttype DateFormatPreset,\n\tformatDate,\n\tparseDate,\n\tparseDateByPattern\n} from \"@ryuzaki13/react-foundation-lib/formatters\";\n\nexport type DateTimeInputMode = \"date-time\" | \"time\";\n\n/**\n * Фиксированный формат нового поля даты-времени.\n */\nexport const DATE_TIME_INPUT_FORMAT = \"dd.MM.yyyy HH:mm\";\nexport const TIME_INPUT_FORMAT = \"HH:mm\";\n\nconst DATE_TIME_INPUT_PRESET_NAME = \"__date_time_input__\";\nconst TIME_INPUT_PRESET_NAME = \"__time_input__\";\nconst TIME_ONLY_BASE_YEAR = 1970;\nconst TIME_ONLY_BASE_MONTH = 0;\nconst TIME_ONLY_BASE_DAY = 1;\nconst TIME_SEGMENTS = parseDateSegmentMask(TIME_INPUT_FORMAT);\n\n/**\n * Создаёт техническую базовую дату для режима выбора только времени.\n */\nexport function createTimeOnlyBaseDate(hours = 0, minutes = 0): Date {\n\treturn createCalendarDate(TIME_ONLY_BASE_YEAR, TIME_ONLY_BASE_MONTH, TIME_ONLY_BASE_DAY, hours, minutes, 0, 0);\n}\n\n/**\n * Возвращает формат пользовательского ввода для выбранного режима.\n */\nexport function getDateTimeInputFormat(mode: DateTimeInputMode = \"date-time\"): string {\n\treturn mode === \"time\" ? TIME_INPUT_FORMAT : DATE_TIME_INPUT_FORMAT;\n}\n\n/**\n * Создаёт временную предустановку форматирования для нового поля даты-времени.\n */\nexport function createDateTimeInputPreset(mode: DateTimeInputMode = \"date-time\"): DateFormatPreset {\n\treturn {\n\t\tname: mode === \"time\" ? TIME_INPUT_PRESET_NAME : DATE_TIME_INPUT_PRESET_NAME,\n\t\tpattern: getDateTimeInputFormat(mode),\n\t\tlocale: \"ru-RU\",\n\t\tinvalidFallback: \"\"\n\t};\n}\n\n/**\n * Нормализует внешнее значение к валидному Date без timezone-сдвига.\n */\nexport function normalizeDateTimeValue(value: Date | null | undefined, mode: DateTimeInputMode = \"date-time\"): Date | null {\n\tif (value == null) return null;\n\n\tconst parsedValue = parseDate(value);\n\tif (!parsedValue) return null;\n\n\tif (mode === \"time\") {\n\t\treturn createTimeOnlyBaseDate(parsedValue.getHours(), parsedValue.getMinutes());\n\t}\n\n\treturn parsedValue;\n}\n\n/**\n * Форматирует значение поля даты-времени в фиксированный пользовательский формат.\n */\nexport function formatDateTimeInputValue(value: Date | null | undefined, mode: DateTimeInputMode = \"date-time\"): string {\n\tif (!value) return \"\";\n\treturn formatDate(normalizeDateTimeValue(value, mode), createDateTimeInputPreset(mode));\n}\n\n/**\n * Строго парсит строку пользовательского ввода в Date.\n */\nexport function parseDateTimeInputValue(value: string, mode: DateTimeInputMode = \"date-time\"): Date | null {\n\tif (mode === \"time\") {\n\t\tconst match = /^\\d{2}:\\d{2}$/.exec(value.trim());\n\t\tif (!match) return null;\n\n\t\tconst values = dateToIndexedSegmentValues(createTimeOnlyBaseDate(), TIME_SEGMENTS);\n\t\tvalues.set(0, value.slice(0, 2));\n\t\tvalues.set(2, value.slice(3, 5));\n\n\t\treturn indexedSegmentsToDate(TIME_SEGMENTS, values, {\n\t\t\tdefaultDate: createTimeOnlyBaseDate()\n\t\t});\n\t}\n\n\tconst parsed = parseDateByPattern(value, DATE_TIME_INPUT_FORMAT);\n\tif (!parsed || parsed.kind !== \"date-time\") return null;\n\n\treturn parsed.date;\n}\n\n/**\n * Проверяет, попадает ли дата-время в допустимый диапазон.\n */\nexport function isDateTimeWithinRange(value: Date, minDate?: Date, maxDate?: Date, mode: DateTimeInputMode = \"date-time\"): boolean {\n\tconst normalizedValue = normalizeDateTimeValue(value, mode);\n\tif (!normalizedValue) return false;\n\n\tif (mode === \"time\") {\n\t\tconst valueMinutes = normalizedValue.getHours() * 60 + normalizedValue.getMinutes();\n\t\tconst normalizedMinDate = minDate ? normalizeDateTimeValue(minDate, \"time\") : null;\n\t\tconst normalizedMaxDate = maxDate ? normalizeDateTimeValue(maxDate, \"time\") : null;\n\n\t\tif (normalizedMinDate) {\n\t\t\tconst minMinutes = normalizedMinDate.getHours() * 60 + normalizedMinDate.getMinutes();\n\t\t\tif (valueMinutes < minMinutes) return false;\n\t\t}\n\n\t\tif (normalizedMaxDate) {\n\t\t\tconst maxMinutes = normalizedMaxDate.getHours() * 60 + normalizedMaxDate.getMinutes();\n\t\t\tif (valueMinutes > maxMinutes) return false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tif (minDate && normalizedValue < minDate) return false;\n\tif (maxDate && normalizedValue > maxDate) return false;\n\n\treturn true;\n}\n\n/**\n * Переносит дату выбранного дня, сохраняя часы и минуты базового значения.\n */\nexport function mergeDateWithTime(datePart: Date, timeSource?: Date | null): Date {\n\tconst source = normalizeDateTimeValue(timeSource);\n\tconst hours = source?.getHours() ?? 0;\n\tconst minutes = source?.getMinutes() ?? 0;\n\n\treturn createCalendarDate(datePart.getFullYear(), datePart.getMonth(), datePart.getDate(), hours, minutes, 0, 0);\n}\n\n/**\n * Переносит часы и минуты в базовую календарную дату.\n */\nexport function mergeTimeIntoDate(baseDate: Date, hours: number, minutes: number, mode: DateTimeInputMode = \"date-time\"): Date {\n\tif (mode === \"time\") {\n\t\treturn createTimeOnlyBaseDate(hours, minutes);\n\t}\n\n\treturn createCalendarDate(baseDate.getFullYear(), baseDate.getMonth(), baseDate.getDate(), hours, minutes, 0, 0);\n}\n\n/**\n * Создаёт рабочую дату для picker-сценариев без выбранного значения.\n */\nexport function resolvePickerBaseDate(value: Date | null | undefined, fallbackDate: Date, mode: DateTimeInputMode = \"date-time\"): Date {\n\tif (mode === \"time\") {\n\t\treturn normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate();\n\t}\n\n\treturn normalizeDateTimeValue(value, mode) ?? fallbackDate;\n}\n\n/**\n * Возвращает границы часов и минут для выбранного календарного дня.\n */\nexport function getTimeRangeForDay(\n\tday: Date,\n\tminDate?: Date,\n\tmaxDate?: Date,\n\tmode: DateTimeInputMode = \"date-time\"\n): {\n\tdisabled: boolean;\n\tminHour: number;\n\tmaxHour: number;\n\tminMinuteByHour: (hour: number) => number;\n\tmaxMinuteByHour: (hour: number) => number;\n} {\n\tconst normalizedDay = normalizeDateTimeValue(day, mode) ?? day;\n\tconst normalizedMinDate = minDate ? normalizeDateTimeValue(minDate, mode) : null;\n\tconst normalizedMaxDate = maxDate ? normalizeDateTimeValue(maxDate, mode) : null;\n\tconst isSameMinDay =\n\t\t!!normalizedMinDate &&\n\t\tnormalizedDay.getFullYear() === normalizedMinDate.getFullYear() &&\n\t\tnormalizedDay.getMonth() === normalizedMinDate.getMonth() &&\n\t\tnormalizedDay.getDate() === normalizedMinDate.getDate();\n\tconst isSameMaxDay =\n\t\t!!normalizedMaxDate &&\n\t\tnormalizedDay.getFullYear() === normalizedMaxDate.getFullYear() &&\n\t\tnormalizedDay.getMonth() === normalizedMaxDate.getMonth() &&\n\t\tnormalizedDay.getDate() === normalizedMaxDate.getDate();\n\n\tconst minHour = isSameMinDay ? normalizedMinDate!.getHours() : 0;\n\tconst maxHour = isSameMaxDay ? normalizedMaxDate!.getHours() : 23;\n\tconst minMinuteAtBoundary = isSameMinDay && minHour === maxHour ? normalizedMinDate!.getMinutes() : 0;\n\tconst maxMinuteAtBoundary = isSameMaxDay && minHour === maxHour ? normalizedMaxDate!.getMinutes() : 59;\n\tconst disabled = minHour > maxHour || (minHour === maxHour && minMinuteAtBoundary > maxMinuteAtBoundary);\n\n\treturn {\n\t\tdisabled,\n\t\tminHour,\n\t\tmaxHour,\n\t\tminMinuteByHour: (hour) => {\n\t\t\tif (disabled) return 0;\n\t\t\treturn isSameMinDay && hour === minHour ? normalizedMinDate!.getMinutes() : 0;\n\t\t},\n\t\tmaxMinuteByHour: (hour) => {\n\t\t\tif (disabled) return 59;\n\t\t\treturn isSameMaxDay && hour === maxHour ? normalizedMaxDate!.getMinutes() : 59;\n\t\t}\n\t};\n}\n\n/**\n * Ограничивает часы и минуты допустимым диапазоном текущего дня.\n */\nexport function clampTimeForDay(\n\tday: Date,\n\thours: number,\n\tminutes: number,\n\tminDate?: Date,\n\tmaxDate?: Date,\n\tmode: DateTimeInputMode = \"date-time\"\n): { hours: number; minutes: number } {\n\tconst range = getTimeRangeForDay(day, minDate, maxDate, mode);\n\tif (range.disabled) {\n\t\treturn { hours: 0, minutes: 0 };\n\t}\n\n\tconst clampedHour = Math.min(Math.max(hours, range.minHour), range.maxHour);\n\tconst minMinute = range.minMinuteByHour(clampedHour);\n\tconst maxMinute = range.maxMinuteByHour(clampedHour);\n\tconst clampedMinute = Math.min(Math.max(minutes, minMinute), maxMinute);\n\n\treturn {\n\t\thours: clampedHour,\n\t\tminutes: clampedMinute\n\t};\n}\n","import { getTimeRangeForDay } from \"./dateTimeValue\";\n\nimport type { DateTimeInputMode } from \"./dateTimeValue\";\n\n/**\n * Состояние и доступные значения для панели выбора времени.\n */\nexport interface TimePanelState {\n\tdisabled: boolean;\n\tselectedHour: number;\n\tselectedMinute: number;\n\thours: number[];\n\tminutes: number[];\n}\n\n/**\n * Собирает состояние часов и минут для панели выбора времени.\n */\nexport function buildTimePanelState(value: Date, minDate?: Date, maxDate?: Date, mode: DateTimeInputMode = \"date-time\"): TimePanelState {\n\tconst timeRange = getTimeRangeForDay(value, minDate, maxDate, mode);\n\tconst selectedHour = value.getHours();\n\tconst selectedMinute = value.getMinutes();\n\tconst minuteMin = timeRange.minMinuteByHour(selectedHour);\n\tconst minuteMax = timeRange.maxMinuteByHour(selectedHour);\n\n\tif (timeRange.disabled) {\n\t\treturn {\n\t\t\tdisabled: true,\n\t\t\tselectedHour,\n\t\t\tselectedMinute,\n\t\t\thours: [],\n\t\t\tminutes: []\n\t\t};\n\t}\n\n\treturn {\n\t\tdisabled: false,\n\t\tselectedHour,\n\t\tselectedMinute,\n\t\thours: Array.from({ length: timeRange.maxHour - timeRange.minHour + 1 }, (_, index) => timeRange.minHour + index),\n\t\tminutes: Array.from({ length: minuteMax - minuteMin + 1 }, (_, index) => minuteMin + index)\n\t};\n}\n","import type { ChangeEvent, FocusEvent, KeyboardEvent } from \"react\";\nimport { useCallback, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tareAllDateSegmentsEmpty,\n\tdateToIndexedSegmentValues,\n\ttype EditableDateSegment,\n\tindexedSegmentsToDate,\n\tparseDateSegmentMask\n} from \"@ryuzaki13/react-foundation-lib/date-segments\";\n\nimport { createTimeOnlyBaseDate, getDateTimeInputFormat, isDateTimeWithinRange, normalizeDateTimeValue } from \"../lib\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\ninterface UseDateTimeSegmentsOptions {\n\tvalue: Date | null | undefined;\n\tonChange: (value: Date | null) => void;\n\tonClearError?: () => void;\n\tdisabled?: boolean;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\tmode?: DateTimeInputMode;\n}\n\nfunction resolveEditableIndices(segments: readonly { kind: string }[]): number[] {\n\tconst indices: number[] = [];\n\n\tsegments.forEach((segment, index) => {\n\t\tif (segment.kind === \"editable\") {\n\t\t\tindices.push(index);\n\t\t}\n\t});\n\n\treturn indices;\n}\n\n/**\n * Управляет сегментным вводом фиксированного формата даты-времени или только времени.\n */\nexport function useDateTimeSegments({\n\tvalue,\n\tonChange,\n\tonClearError,\n\tdisabled,\n\tminDate,\n\tmaxDate,\n\tmode = \"date-time\"\n}: UseDateTimeSegmentsOptions) {\n\tconst inputFormat = useMemo(() => getDateTimeInputFormat(mode), [mode]);\n\tconst segments = useMemo(() => parseDateSegmentMask(inputFormat), [inputFormat]);\n\tconst editableIndices = useMemo(() => resolveEditableIndices(segments), [segments]);\n\tconst committedValues = useMemo(() => dateToIndexedSegmentValues(value ?? null, segments), [segments, value]);\n\tconst currentValueTime = value?.getTime() ?? null;\n\tconst [dirtyState, setDirtyState] = useState<{\n\t\treadonly sourceValueTime: number | null;\n\t\treadonly sourceMode: DateTimeInputMode;\n\t\treadonly values: Map<number, string>;\n\t} | null>(null);\n\tconst dirtyValues = dirtyState?.sourceValueTime === currentValueTime && dirtyState.sourceMode === mode ? dirtyState.values : null;\n\tconst segmentValues = dirtyValues ?? committedValues;\n\tconst refsMap = useRef<Map<number, HTMLInputElement>>(new Map());\n\tconst blurTimeout = useRef<number>(0);\n\n\t/**\n\t * Привязывает незавершённые сегменты к controlled-снимку, на основе которого\n\t * пользователь начал ввод. Новое внешнее value автоматически делает draft неактуальным.\n\t */\n\tconst setDirtyValues = useCallback(\n\t\t(values: Map<number, string> | null) => {\n\t\t\tsetDirtyState(\n\t\t\t\tvalues === null\n\t\t\t\t\t? null\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tsourceValueTime: currentValueTime,\n\t\t\t\t\t\t\tsourceMode: mode,\n\t\t\t\t\t\t\tvalues\n\t\t\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[currentValueTime, mode]\n\t);\n\n\t/**\n\t * Пытается собрать и отдать наружу новое значение поля.\n\t */\n\tconst tryCommit = useCallback(\n\t\t(updatedValues: Map<number, string>) => {\n\t\t\tif (areAllDateSegmentsEmpty(segments, updatedValues)) {\n\t\t\t\tonChange(null);\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst nextDate = indexedSegmentsToDate(segments, updatedValues, {\n\t\t\t\tdefaultDate: mode === \"time\" ? (normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate()) : undefined\n\t\t\t});\n\t\t\tif (!nextDate) return null;\n\t\t\tif (!isDateTimeWithinRange(nextDate, minDate, maxDate, mode)) return null;\n\n\t\t\tonChange(nextDate);\n\t\t\treturn nextDate;\n\t\t},\n\t\t[maxDate, minDate, mode, onChange, segments, value]\n\t);\n\n\t/**\n\t * Фокусирует конкретный редактируемый сегмент.\n\t */\n\tconst focusSegment = useCallback((index: number, selectAll = true) => {\n\t\tconst element = refsMap.current.get(index);\n\t\tif (!element) return;\n\n\t\telement.focus();\n\t\tif (selectAll) {\n\t\t\trequestAnimationFrame(() => element.select());\n\t\t}\n\t}, []);\n\n\t/**\n\t * Возвращает индекс следующего редактируемого сегмента.\n\t */\n\tconst getNextEditable = useCallback(\n\t\t(currentIndex: number): number | null => {\n\t\t\tconst position = editableIndices.indexOf(currentIndex);\n\t\t\treturn position < editableIndices.length - 1 ? editableIndices[position + 1] : null;\n\t\t},\n\t\t[editableIndices]\n\t);\n\n\t/**\n\t * Возвращает индекс предыдущего редактируемого сегмента.\n\t */\n\tconst getPreviousEditable = useCallback(\n\t\t(currentIndex: number): number | null => {\n\t\t\tconst position = editableIndices.indexOf(currentIndex);\n\t\t\treturn position > 0 ? editableIndices[position - 1] : null;\n\t\t},\n\t\t[editableIndices]\n\t);\n\n\t/**\n\t * Дополняет неполный сегмент ведущими нулями.\n\t */\n\tconst padValue = useCallback((valueToPad: string, segment: EditableDateSegment) => valueToPad.padStart(segment.length, \"0\"), []);\n\n\t/**\n\t * Регистрирует DOM-ссылку сегмента по индексу.\n\t */\n\tconst registerRef = useCallback(\n\t\t(index: number) => (element: HTMLInputElement | null) => {\n\t\t\tif (element) {\n\t\t\t\trefsMap.current.set(index, element);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\trefsMap.current.delete(index);\n\t\t},\n\t\t[]\n\t);\n\n\t/**\n\t * Обрабатывает печать внутри отдельного сегмента.\n\t */\n\tconst handleInput = useCallback(\n\t\t(index: number) => (event: ChangeEvent<HTMLInputElement>) => {\n\t\t\tif (disabled) return;\n\n\t\t\tconst segment = segments[index];\n\t\t\tif (segment.kind !== \"editable\") return;\n\n\t\t\tconst rawValue = event.target.value.replace(/\\D/g, \"\");\n\t\t\tconst clampedValue = rawValue.slice(0, segment.length);\n\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\tupdatedValues.set(index, clampedValue);\n\t\t\tsetDirtyValues(updatedValues);\n\t\t\tonClearError?.();\n\n\t\t\tif (clampedValue.length === segment.length) {\n\t\t\t\tconst nextIndex = getNextEditable(index);\n\t\t\t\tif (nextIndex !== null) {\n\t\t\t\t\trequestAnimationFrame(() => focusSegment(nextIndex));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ttryCommit(updatedValues);\n\t\t},\n\t\t[disabled, focusSegment, getNextEditable, onClearError, segmentValues, segments, setDirtyValues, tryCommit]\n\t);\n\n\t/**\n\t * Обрабатывает клавиатурную навигацию и шаговые изменения сегментов.\n\t */\n\tconst handleKeyDown = useCallback(\n\t\t(index: number) => (event: KeyboardEvent<HTMLInputElement>) => {\n\t\t\tif (disabled) return;\n\n\t\t\tconst segment = segments[index];\n\t\t\tif (segment.kind !== \"editable\") return;\n\n\t\t\tconst currentValue = segmentValues.get(index) ?? \"\";\n\t\t\tconst element = event.currentTarget;\n\n\t\t\tswitch (event.key) {\n\t\t\t\tcase \"ArrowRight\": {\n\t\t\t\t\tif (element.selectionStart === currentValue.length || currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst nextIndex = getNextEditable(index);\n\t\t\t\t\t\tif (nextIndex !== null) focusSegment(nextIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowLeft\": {\n\t\t\t\t\tif (element.selectionStart === 0 || currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst previousIndex = getPreviousEditable(index);\n\t\t\t\t\t\tif (previousIndex !== null) focusSegment(previousIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowUp\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlet numericValue = currentValue === \"\" ? segment.min : Number.parseInt(currentValue, 10) + 1;\n\t\t\t\t\tif (numericValue > segment.max) numericValue = segment.min;\n\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, padValue(String(numericValue), segment));\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\trequestAnimationFrame(() => element.select());\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"ArrowDown\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlet numericValue = currentValue === \"\" ? segment.max : Number.parseInt(currentValue, 10) - 1;\n\t\t\t\t\tif (numericValue < segment.min) numericValue = segment.max;\n\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, padValue(String(numericValue), segment));\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\trequestAnimationFrame(() => element.select());\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"Backspace\": {\n\t\t\t\t\tif (currentValue === \"\") {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst previousIndex = getPreviousEditable(index);\n\t\t\t\t\t\tif (previousIndex !== null) focusSegment(previousIndex);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"Delete\": {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tconst updatedValues = new Map(segmentValues);\n\t\t\t\t\tupdatedValues.set(index, \"\");\n\t\t\t\t\tsetDirtyValues(updatedValues);\n\t\t\t\t\ttryCommit(updatedValues);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[disabled, focusSegment, getNextEditable, getPreviousEditable, padValue, segmentValues, segments, setDirtyValues, tryCommit]\n\t);\n\n\t/**\n\t * Выделяет содержимое сегмента при фокусе.\n\t */\n\tconst handleFocus = useCallback(\n\t\t() => (event: FocusEvent<HTMLInputElement>) => {\n\t\t\tevent.target.select();\n\t\t},\n\t\t[]\n\t);\n\n\t/**\n\t * Сбрасывает таймер blur, когда контейнер получает фокус.\n\t */\n\tconst handleContainerFocus = useCallback(() => {\n\t\tclearTimeout(blurTimeout.current);\n\t}, []);\n\n\t/**\n\t * На blur оставляет только committed-значение либо полностью пустое состояние.\n\t */\n\tconst handleContainerBlur = useCallback(() => {\n\t\tconst currentValues = new Map(segmentValues);\n\n\t\tblurTimeout.current = window.setTimeout(() => {\n\t\t\tif (areAllDateSegmentsEmpty(segments, currentValues)) {\n\t\t\t\tonChange(null);\n\t\t\t\tsetDirtyValues(currentValues);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst nextDate = indexedSegmentsToDate(segments, currentValues, {\n\t\t\t\tdefaultDate: mode === \"time\" ? (normalizeDateTimeValue(value, \"time\") ?? createTimeOnlyBaseDate()) : undefined\n\t\t\t});\n\t\t\tif (!nextDate || !isDateTimeWithinRange(nextDate, minDate, maxDate, mode)) {\n\t\t\t\tsetDirtyValues(null);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetDirtyValues(currentValues);\n\t\t}, 0);\n\t}, [maxDate, minDate, mode, onChange, segmentValues, segments, setDirtyValues, value]);\n\n\t/**\n\t * Фокусирует первый пустой сегмент либо последний редактируемый.\n\t */\n\tconst focusFirstEmpty = useCallback(() => {\n\t\tconst firstEmpty = editableIndices.find((index) => !(segmentValues.get(index) ?? \"\"));\n\t\tconst targetIndex = firstEmpty ?? editableIndices[editableIndices.length - 1];\n\t\tif (targetIndex !== undefined) {\n\t\t\tfocusSegment(targetIndex);\n\t\t}\n\t}, [editableIndices, focusSegment, segmentValues]);\n\n\treturn {\n\t\tsegments,\n\t\tsegmentValues,\n\t\tregisterRef,\n\t\thandleInput,\n\t\thandleKeyDown,\n\t\thandleFocus,\n\t\thandleContainerFocus,\n\t\thandleContainerBlur,\n\t\tfocusFirstEmpty\n\t};\n}\n","@use \"@/styles/mixins\" as *;\n\n.segmentInput {\n\tborder: none;\n\tborder-radius: var(--radius-xs);\n\tbackground: transparent;\n\toutline: none;\n\tpadding: 0;\n\tmargin: 0;\n\tfont-family: var(--font-family-mono);\n\tcolor: inherit;\n\ttext-align: center;\n\tcaret-color: var(--content-0);\n\tfont-variant-numeric: tabular-nums;\n\n\t&::placeholder {\n\t\tcolor: var(--content-2);\n\t\t// font-size: var(--font-size-sm);\n\t}\n\n\t&::selection {\n\t\tbackground-color: var(--focus-ring);\n\t\tcolor: var(--surface-0);\n\t}\n\n\t&:disabled {\n\t\topacity: 0.25;\n\t}\n}\n\n.separator {\n\tuser-select: none;\n\tcolor: var(--content-1);\n\tflex-shrink: 0;\n\n\t&[data-disabled] {\n\t\topacity: 0.25;\n\t}\n}\n\n.popoverContent {\n\tdisplay: grid;\n\tgap: var(--space-md);\n}\n\n.bottom {\n\tgrid-template-columns: minmax(0, 1fr);\n}\n\n.right {\n\tgrid-template-columns: auto calc(9em + var(--width-add));\n\talign-items: stretch;\n}\n\n.calendarPane {\n\tmin-width: 0;\n}\n\n.timePanelPane {\n\tmin-width: 0;\n}\n\n.timeOnlyPopoverContent {\n\tmin-width: calc(9em + var(--width-add));\n}\n\n.timePanelPaneBottom {\n\tpadding-top: var(--space-md);\n\tborder-top: var(--border);\n}\n\n.timePanelPaneRight {\n\tpadding-left: var(--space-md);\n\tborder-left: var(--border);\n}\n",".timePanel {\n\theight: 100%;\n}\n\n.hint {\n\tfont-size: var(--font-size-xs);\n\tcolor: var(--content-1);\n}\n\n.fields {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(2, minmax(0, 1fr));\n\tgap: var(--space-sm);\n\tmin-height: 10em;\n\theight: 100%;\n}\n\n.field {\n\tdisplay: grid;\n\tgrid-template-rows: auto 1fr;\n\tgap: var(--space-xs);\n\tmin-height: 0;\n}\n\n.label {\n\t// font-size: var(--font-size-sm);\n\tcolor: var(--content-1);\n}\n\n.wheel {\n\tmin-height: 10em;\n}\n","import { WheelPicker } from \"../../wheel-picker\";\nimport { buildTimePanelState } from \"../lib/timePanelState\";\n\nimport styles from \"./TimePanel.module.scss\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\n/**\n * Пропсы панели выбора времени.\n */\nexport interface TimePanelProps {\n\tvalue: Date;\n\tdisabled?: boolean;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\tmode?: DateTimeInputMode;\n\tonChange: (hours: number, minutes: number) => void;\n}\n\n/**\n * Переиспользуемая панель выбора времени поверх internal wheel-picker.\n */\nexport function TimePanel({ value, disabled, minDate, maxDate, mode = \"date-time\", onChange }: TimePanelProps) {\n\tconst state = buildTimePanelState(value, minDate, maxDate, mode);\n\n\t/**\n\t * Форматирует двузначное значение времени.\n\t */\n\tconst formatValue = (timePart: number) => String(timePart).padStart(2, \"0\");\n\n\tif (state.disabled) {\n\t\treturn (\n\t\t\t<div className={styles.timePanel}>\n\t\t\t\t<p className={styles.hint}>Для выбранного дня нет доступного времени в заданном диапазоне.</p>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className={styles.timePanel}>\n\t\t\t<div className={styles.fields}>\n\t\t\t\t<label className={styles.field}>\n\t\t\t\t\t<span className={styles.label}>Часы</span>\n\t\t\t\t\t<WheelPicker\n\t\t\t\t\t\tclassName={styles.wheel}\n\t\t\t\t\t\titems={state.hours}\n\t\t\t\t\t\tvalue={state.selectedHour}\n\t\t\t\t\t\tonChange={(hours) => onChange(hours, state.selectedMinute)}\n\t\t\t\t\t\tariaLabel=\"Выбор часов\"\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tformatItem={formatValue}\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\n\t\t\t\t<label className={styles.field}>\n\t\t\t\t\t<span className={styles.label}>Минуты</span>\n\t\t\t\t\t<WheelPicker\n\t\t\t\t\t\tclassName={styles.wheel}\n\t\t\t\t\t\titems={state.minutes}\n\t\t\t\t\t\tvalue={state.selectedMinute}\n\t\t\t\t\t\tonChange={(minutes) => onChange(state.selectedHour, minutes)}\n\t\t\t\t\t\tariaLabel=\"Выбор минут\"\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tformatItem={formatValue}\n\t\t\t\t\t/>\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { JSX, useMemo, useState } from \"react\";\n\nimport { getStartOfDay, isDateRangeTuple, NullableDateRange } from \"@ryuzaki13/react-foundation-lib/formatters\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CalendarDaysIcon, Clock3Icon } from \"lucide-react\";\n\nimport { CalendarView } from \"../../date-input/ui\";\nimport { InputControl, InputUI, useInputFieldIds } from \"../../input\";\nimport { Popover } from \"../../popover\";\nimport { UiBaseProps } from \"../../types\";\nimport uiStyles from \"../../ui.module.scss\";\nimport {\n\tclampTimeForDay,\n\tisDateTimeWithinRange,\n\tmergeDateWithTime,\n\tmergeTimeIntoDate,\n\tnormalizeDateTimeValue,\n\tresolvePickerBaseDate\n} from \"../lib\";\nimport { useDateTimeSegments } from \"../model\";\n\nimport styles from \"./SingleDateTimeInput.module.scss\";\nimport { TimePanel } from \"./TimePanel\";\n\nimport type { DateTimeInputMode } from \"../lib\";\n\ninterface BaseSingleDateTimeInputProps {\n\terror?: string;\n\tonClearError?: () => void;\n\tminDate?: Date;\n\tmaxDate?: Date;\n\ttimePanelPlacement?: \"bottom\" | \"right\";\n\tmode?: DateTimeInputMode;\n}\n\nexport interface SingleDateTimeInputProps extends BaseSingleDateTimeInputProps, UiBaseProps<Date | null> {}\n\n/**\n * Поле выбора даты-времени со строгой сегментной маской и popover-пикером.\n */\nexport function SingleDateTimeInput({\n\tvalue,\n\tonChange,\n\tlabel,\n\tdescription,\n\tplaceholder,\n\tdisabled,\n\tsize,\n\terror,\n\tonClearError,\n\tminDate,\n\tmaxDate,\n\ttimePanelPlacement = \"right\",\n\tmode = \"date-time\"\n}: SingleDateTimeInputProps): JSX.Element {\n\tconst normalizedValue = useMemo(() => normalizeDateTimeValue(value, mode), [mode, value]);\n\n\tconst fallbackPickerDate = useMemo(() => getStartOfDay(new Date()), []);\n\n\tconst [open, setOpen] = useState(false);\n\tconst [draftValue, setDraftValue] = useState<Date | null>(normalizedValue ?? null);\n\tconst [calendarView, setCalendarView] = useState<\"day\" | \"month\" | \"year\">(\"day\");\n\tconst [pickerDate, setPickerDate] = useState<Date>(() => resolvePickerBaseDate(normalizedValue, fallbackPickerDate, mode));\n\n\tconst { controlId, labelId, descriptionId, errorId, describedBy } = useInputFieldIds({\n\t\thasLabel: label !== undefined && label !== null,\n\t\thasDescription: !!description,\n\t\thasError: !!error\n\t});\n\n\tconst {\n\t\tsegments,\n\t\tsegmentValues,\n\t\tregisterRef,\n\t\thandleInput,\n\t\thandleKeyDown,\n\t\thandleFocus,\n\t\thandleContainerFocus,\n\t\thandleContainerBlur,\n\t\tfocusFirstEmpty\n\t} = useDateTimeSegments({\n\t\tvalue: normalizedValue,\n\t\tonChange,\n\t\tonClearError,\n\t\tdisabled,\n\t\tminDate,\n\t\tmaxDate,\n\t\tmode\n\t});\n\n\t/**\n\t * Выбирает дату в календаре и сохраняет текущее время.\n\t */\n\tconst handleCalendarSelect = (nextDate: Date | NullableDateRange) => {\n\t\tif (mode === \"time\" || isDateRangeTuple(nextDate) || disabled) return;\n\n\t\tconst baseValue = draftValue ?? normalizedValue ?? pickerDate;\n\t\tconst mergedDate = mergeDateWithTime(nextDate, baseValue);\n\t\tconst { hours, minutes } = clampTimeForDay(nextDate, mergedDate.getHours(), mergedDate.getMinutes(), minDate, maxDate, mode);\n\t\tconst nextValue = mergeTimeIntoDate(nextDate, hours, minutes);\n\n\t\tif (!isDateTimeWithinRange(nextValue, minDate, maxDate, mode)) return;\n\n\t\tonClearError?.();\n\t\tsetDraftValue(nextValue);\n\t\tsetPickerDate(nextValue);\n\t};\n\n\t/**\n\t * Выбирает время для текущего рабочего дня picker-а.\n\t */\n\tconst handleTimeChange = (hours: number, minutes: number) => {\n\t\tif (disabled) return;\n\n\t\tconst baseDate = draftValue ?? normalizedValue ?? pickerDate;\n\t\tconst clampedTime = clampTimeForDay(baseDate, hours, minutes, minDate, maxDate, mode);\n\t\tconst nextValue = mergeTimeIntoDate(baseDate, clampedTime.hours, clampedTime.minutes, mode);\n\n\t\tif (!isDateTimeWithinRange(nextValue, minDate, maxDate, mode)) return;\n\n\t\tonClearError?.();\n\t\tsetDraftValue(nextValue);\n\t\tsetPickerDate(nextValue);\n\t};\n\n\tconst handleOpenChange = (nextOpen: boolean) => {\n\t\tif (nextOpen) {\n\t\t\tsetDraftValue(normalizedValue ?? null);\n\t\t\tsetPickerDate(resolvePickerBaseDate(normalizedValue, fallbackPickerDate, mode));\n\t\t}\n\n\t\tsetOpen(nextOpen);\n\t};\n\n\tconst handlePopoverClose = () => {\n\t\tconst prevTime = normalizedValue?.getTime() ?? null;\n\t\tconst draftTime = draftValue?.getTime() ?? null;\n\n\t\tif (prevTime !== draftTime) {\n\t\t\tonChange(draftValue);\n\t\t}\n\t};\n\n\tconst panelPlacementClass = timePanelPlacement === \"right\" ? styles.timePanelPaneRight : styles.timePanelPaneBottom;\n\tconst buttonAriaLabel = mode === \"time\" ? \"Открыть выбор времени\" : \"Открыть календарь даты и времени\";\n\tconst inputPlaceholder = placeholder ?? (mode === \"time\" ? \"чч:мм\" : \"дд.мм.гггг чч:мм\");\n\tconst pickerValue = draftValue ?? normalizedValue ?? pickerDate;\n\n\treturn (\n\t\t<Popover open={open} onOpenChange={handleOpenChange}>\n\t\t\t<InputUI\n\t\t\t\tlabel={label}\n\t\t\t\tdescription={description}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tsize={size}\n\t\t\t\terror={error}\n\t\t\t\tcontrolId={controlId}\n\t\t\t\tlabelId={labelId}\n\t\t\t\tdescriptionId={descriptionId}\n\t\t\t\terrorId={errorId}>\n\t\t\t\t<InputControl\n\t\t\t\t\tendAdornmentWidth=\"var(--control-height)\"\n\t\t\t\t\tendAdornment={\n\t\t\t\t\t\t<div className={uiStyles.uiToggleButtonContainer}>\n\t\t\t\t\t\t\t<Popover.Trigger>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\taria-label={buttonAriaLabel}\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t\tclassName={uiStyles.uiToggleButton}>\n\t\t\t\t\t\t\t\t\t{mode === \"time\" ? <Clock3Icon /> : <CalendarDaysIcon />}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</Popover.Trigger>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t}>\n\t\t\t\t\t{({ controlClassName }) => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tid={controlId}\n\t\t\t\t\t\t\tclassName={cn(uiStyles.uiInputControlFake, controlClassName)}\n\t\t\t\t\t\t\tdata-disabled={disabled || undefined}\n\t\t\t\t\t\t\tdata-invalid={error ? \"\" : undefined}\n\t\t\t\t\t\t\trole=\"group\"\n\t\t\t\t\t\t\taria-invalid={!!error || undefined}\n\t\t\t\t\t\t\taria-description={inputPlaceholder}\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\tonFocus={handleContainerFocus}\n\t\t\t\t\t\t\tonBlur={handleContainerBlur}\n\t\t\t\t\t\t\tonClick={(event) => {\n\t\t\t\t\t\t\t\tif (event.target === event.currentTarget) {\n\t\t\t\t\t\t\t\t\tfocusFirstEmpty();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}>\n\t\t\t\t\t\t\t{segments.map((segment, index) => {\n\t\t\t\t\t\t\t\tif (segment.kind === \"literal\") {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<span key={index} className={styles.separator} data-disabled={disabled || undefined}>\n\t\t\t\t\t\t\t\t\t\t\t{segment.text}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\t\t\t\t\tref={registerRef(index)}\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\tinputMode=\"numeric\"\n\t\t\t\t\t\t\t\t\t\tclassName={styles.segmentInput}\n\t\t\t\t\t\t\t\t\t\tstyle={{ width: `${segment.length + 0.5}ch` }}\n\t\t\t\t\t\t\t\t\t\tvalue={segmentValues.get(index) ?? \"\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={segment.placeholder}\n\t\t\t\t\t\t\t\t\t\tmaxLength={segment.length}\n\t\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\t\taria-label={segment.ariaLabel}\n\t\t\t\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\t\t\t\tonChange={handleInput(index)}\n\t\t\t\t\t\t\t\t\t\tonKeyDown={handleKeyDown(index)}\n\t\t\t\t\t\t\t\t\t\tonFocus={handleFocus()}\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})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</InputControl>\n\t\t\t</InputUI>\n\n\t\t\t<Popover.Content\n\t\t\t\tbackground=\"primary\"\n\t\t\t\trole=\"dialog\"\n\t\t\t\taria-label={mode === \"time\" ? \"Выбор времени\" : \"Выбор даты и времени\"}\n\t\t\t\tonClose={handlePopoverClose}>\n\t\t\t\t{mode === \"time\" ? (\n\t\t\t\t\t<div className={styles.timeOnlyPopoverContent}>\n\t\t\t\t\t\t<TimePanel\n\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\tmode={mode}\n\t\t\t\t\t\t\tonChange={handleTimeChange}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<div className={cn(styles.popoverContent, styles[timePanelPlacement])}>\n\t\t\t\t\t\t<div className={styles.calendarPane}>\n\t\t\t\t\t\t\t<CalendarView\n\t\t\t\t\t\t\t\tview={calendarView}\n\t\t\t\t\t\t\t\tdatePickerLevel=\"day\"\n\t\t\t\t\t\t\t\tselectionMode=\"day\"\n\t\t\t\t\t\t\t\tonViewChange={setCalendarView}\n\t\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\t\tonChange={handleCalendarSelect}\n\t\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\t\tcurrentDate={pickerDate}\n\t\t\t\t\t\t\t\tonCurrentDateChange={setPickerDate}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className={cn(styles.timePanelPane, panelPlacementClass)}>\n\t\t\t\t\t\t\t<TimePanel\n\t\t\t\t\t\t\t\tvalue={pickerValue}\n\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\tminDate={minDate}\n\t\t\t\t\t\t\t\tmaxDate={maxDate}\n\t\t\t\t\t\t\t\tmode={mode}\n\t\t\t\t\t\t\t\tonChange={handleTimeChange}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Popover.Content>\n\t\t</Popover>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SingleDateTimeInput.d.ts","sourceRoot":"","sources":["../../../src/date-time-input/ui/SingleDateTimeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAqB,MAAM,OAAO,CAAC;AAS/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAEhD,UAAU,4BAA4B;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,kBAAkB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACxC,IAAI,CAAC,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,wBAAyB,SAAQ,4BAA4B,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;CAAG;AAE3G;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EACnC,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,OAAO,EACP,OAAO,EACP,kBAA4B,EAC5B,IAAkB,EAClB,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"SingleDateTimeInput.d.ts","sourceRoot":"","sources":["../../../src/date-time-input/ui/SingleDateTimeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAqB,MAAM,OAAO,CAAC;AAS/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAEhD,UAAU,4BAA4B;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,kBAAkB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACxC,IAAI,CAAC,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,wBAAyB,SAAQ,4BAA4B,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;CAAG;AAE3G;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EACnC,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,OAAO,EACP,OAAO,EACP,kBAA4B,EAC5B,IAAkB,EAClB,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,CA8NxC"}
|
package/dist/detail/Detail.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export interface DetailItemProps {
|
|
|
14
14
|
withColon?: boolean;
|
|
15
15
|
required?: boolean;
|
|
16
16
|
}
|
|
17
|
+
declare function DetailItem({ label, value, withColon, required }: DetailItemProps): import("react").JSX.Element;
|
|
17
18
|
export interface DetailProps {
|
|
18
19
|
columnCount?: number;
|
|
19
20
|
rowGap?: "none" | "small" | "normal" | "large";
|
|
@@ -32,5 +33,9 @@ export interface DetailComponent extends FC<DetailProps> {
|
|
|
32
33
|
/**
|
|
33
34
|
* Компонент для вывода пар «заголовок-значение» в одну или несколько колонок. Подходит для карточек сущностей, сводок и страниц просмотра.
|
|
34
35
|
*/
|
|
35
|
-
export declare
|
|
36
|
+
export declare function Detail({ children, columnCount, rowGap, semantic, className, ...itemProps }: DetailProps): import("react").JSX.Element;
|
|
37
|
+
export declare namespace Detail {
|
|
38
|
+
var Item: typeof DetailItem;
|
|
39
|
+
}
|
|
40
|
+
export {};
|
|
36
41
|
//# sourceMappingURL=Detail.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Detail.d.ts","sourceRoot":"","sources":["../../src/detail/Detail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgC,EAAE,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAMhF,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAID,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"Detail.d.ts","sourceRoot":"","sources":["../../src/detail/Detail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgC,EAAE,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAMhF,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAID,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,iBAAS,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,eAAe,+BAqCzE;AAED,MAAM,WAAW,WAAW;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAgB,SAAQ,EAAE,CAAC,WAAW,CAAC;IACvD,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,WAAe,EAAE,MAAe,EAAE,QAAiB,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,EAAE,WAAW,+BAe7H;yBAfe,MAAM"}
|
package/dist/detail/index.js
CHANGED
|
@@ -59,7 +59,7 @@ function c({ label: i, value: c, withColon: l, required: u }) {
|
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
|
-
|
|
62
|
+
function l({ children: t, columnCount: r = 1, rowGap: i = "none", semantic: a = "list", className: c, ...l }) {
|
|
63
63
|
let u = e(o.detailList, o[i], c), d = n(a === "detail" ? "dl" : "ul", {
|
|
64
64
|
className: u,
|
|
65
65
|
style: { columnCount: Math.min(5, Math.max(1, r)) },
|
|
@@ -72,7 +72,7 @@ var l = ({ children: t, columnCount: r = 1, rowGap: i = "none", semantic: a = "l
|
|
|
72
72
|
},
|
|
73
73
|
children: d
|
|
74
74
|
});
|
|
75
|
-
}
|
|
75
|
+
}
|
|
76
76
|
l.Item = c;
|
|
77
77
|
//#endregion
|
|
78
78
|
export { l as Detail };
|
package/dist/detail/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/detail/Detail.module.scss","../../src/detail/Detail.tsx"],"sourcesContent":[".detailList {\n\tcolumn-gap: var(--space-sm);\n\n\t&.none {\n\t\t--row-gap: 0;\n\t}\n\n\t&.small {\n\t\t--row-gap: var(--space-xs);\n\t}\n\n\t&.normal {\n\t\t--row-gap: var(--space-sm);\n\t}\n\n\t&.large {\n\t\t--row-gap: var(--space-md);\n\t}\n}\n\n.detail {\n\t.dt {\n\t\tfont-weight: 700;\n\t\tfont-variation-settings: \"wght\" 700;\n\t}\n\n\t.dd {\n\t\tfont-weight: 500;\n\t\tfont-variation-settings: \"wght\" 500;\n\t}\n\n\t&.textCenter {\n\t\ttext-align: center;\n\n\t\t.dt,\n\t\t.dd {\n\t\t\tflex: 1;\n\t\t}\n\t}\n\n\t&.inline {\n\t\tdisplay: flex;\n\n\t\t.dt {\n\t\t\ttext-align: right;\n\t\t\tpadding-right: var(--space-sm);\n\t\t}\n\n\t\t.dd {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t&.start {\n\t\t\talign-items: flex-start;\n\t\t}\n\t\t&.center {\n\t\t\talign-items: center;\n\t\t}\n\t\t&.end {\n\t\t\talign-items: flex-end;\n\t\t}\n\t}\n\n\t&.noWrap {\n\t\t.dt,\n\t\t.dd {\n\t\t\twhite-space: nowrap;\n\t\t\tword-break: normal;\n\t\t}\n\n\t\t.dd {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\t}\n\n\t&:not(:last-child) {\n\t\tmargin-bottom: var(--row-gap);\n\t}\n}\n","import { createContext, CSSProperties, FC, ReactNode, useContext } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport styles from \"./Detail.module.scss\";\n\nexport type DetailType = \"detail\" | \"list\";\n\nexport interface DetailContextType {\n\tsemantic?: DetailType;\n\tinline?: boolean;\n\tcenter?: boolean;\n\tvertical?: \"start\" | \"center\" | \"end\";\n\tnoWrap?: boolean;\n\twithColon?: boolean;\n}\n\nconst DetailContext = createContext<DetailContextType>({});\n\nexport interface DetailItemProps {\n\tlabel: ReactNode;\n\tvalue: ReactNode;\n\twithColon?: boolean;\n\trequired?: boolean;\n}\n\nfunction
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/detail/Detail.module.scss","../../src/detail/Detail.tsx"],"sourcesContent":[".detailList {\n\tcolumn-gap: var(--space-sm);\n\n\t&.none {\n\t\t--row-gap: 0;\n\t}\n\n\t&.small {\n\t\t--row-gap: var(--space-xs);\n\t}\n\n\t&.normal {\n\t\t--row-gap: var(--space-sm);\n\t}\n\n\t&.large {\n\t\t--row-gap: var(--space-md);\n\t}\n}\n\n.detail {\n\t.dt {\n\t\tfont-weight: 700;\n\t\tfont-variation-settings: \"wght\" 700;\n\t}\n\n\t.dd {\n\t\tfont-weight: 500;\n\t\tfont-variation-settings: \"wght\" 500;\n\t}\n\n\t&.textCenter {\n\t\ttext-align: center;\n\n\t\t.dt,\n\t\t.dd {\n\t\t\tflex: 1;\n\t\t}\n\t}\n\n\t&.inline {\n\t\tdisplay: flex;\n\n\t\t.dt {\n\t\t\ttext-align: right;\n\t\t\tpadding-right: var(--space-sm);\n\t\t}\n\n\t\t.dd {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t&.start {\n\t\t\talign-items: flex-start;\n\t\t}\n\t\t&.center {\n\t\t\talign-items: center;\n\t\t}\n\t\t&.end {\n\t\t\talign-items: flex-end;\n\t\t}\n\t}\n\n\t&.noWrap {\n\t\t.dt,\n\t\t.dd {\n\t\t\twhite-space: nowrap;\n\t\t\tword-break: normal;\n\t\t}\n\n\t\t.dd {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\t}\n\n\t&:not(:last-child) {\n\t\tmargin-bottom: var(--row-gap);\n\t}\n}\n","import { createContext, CSSProperties, FC, ReactNode, useContext } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport styles from \"./Detail.module.scss\";\n\nexport type DetailType = \"detail\" | \"list\";\n\nexport interface DetailContextType {\n\tsemantic?: DetailType;\n\tinline?: boolean;\n\tcenter?: boolean;\n\tvertical?: \"start\" | \"center\" | \"end\";\n\tnoWrap?: boolean;\n\twithColon?: boolean;\n}\n\nconst DetailContext = createContext<DetailContextType>({});\n\nexport interface DetailItemProps {\n\tlabel: ReactNode;\n\tvalue: ReactNode;\n\twithColon?: boolean;\n\trequired?: boolean;\n}\n\nfunction DetailItem({ label, value, withColon, required }: DetailItemProps) {\n\tconst { semantic, inline, noWrap, center, vertical = \"center\", withColon: withColonParent = true } = useContext(DetailContext);\n\tconst detailClass = cn(styles.detail, center && styles.textCenter, inline && styles.inline, noWrap && styles.noWrap, styles[vertical]);\n\n\tconst labelContent = (\n\t\t<>\n\t\t\t{label}\n\t\t\t{required && <span className=\"statusError\">*</span>}\n\t\t\t{(typeof withColon === \"boolean\" ? withColon : withColonParent) && \":\"}\n\t\t</>\n\t);\n\n\tswitch (semantic) {\n\t\tcase \"detail\":\n\t\t\treturn (\n\t\t\t\t<div className={detailClass}>\n\t\t\t\t\t<dt className={styles.dt}>{labelContent}</dt>\n\t\t\t\t\t<dd className={styles.dd}>{value}</dd>\n\t\t\t\t</div>\n\t\t\t);\n\n\t\tcase \"list\":\n\t\t\treturn (\n\t\t\t\t<li className={detailClass}>\n\t\t\t\t\t<div className={styles.dt}>{labelContent}</div>\n\t\t\t\t\t<div className={styles.dd}>{value}</div>\n\t\t\t\t</li>\n\t\t\t);\n\n\t\tdefault:\n\t\t\treturn (\n\t\t\t\t<div className={detailClass}>\n\t\t\t\t\t<div className={styles.dt}>{labelContent}</div>\n\t\t\t\t\t<div className={styles.dd}>{value}</div>\n\t\t\t\t</div>\n\t\t\t);\n\t}\n}\n\nexport interface DetailProps {\n\tcolumnCount?: number;\n\trowGap?: \"none\" | \"small\" | \"normal\" | \"large\";\n\tchildren: ReactNode;\n\tclassName?: string;\n\n\tsemantic?: DetailType;\n\tinline?: boolean;\n\tcenter?: boolean;\n\tvertical?: \"start\" | \"center\" | \"end\";\n\tnoWrap?: boolean;\n\twithColon?: boolean;\n}\n\nexport interface DetailComponent extends FC<DetailProps> {\n\tItem: FC<DetailItemProps>;\n}\n\n/**\n * Компонент для вывода пар «заголовок-значение» в одну или несколько колонок. Подходит для карточек сущностей, сводок и страниц просмотра.\n */\nexport function Detail({ children, columnCount = 1, rowGap = \"none\", semantic = \"list\", className, ...itemProps }: DetailProps) {\n\tconst classes = cn(styles.detailList, styles[rowGap], className);\n\tconst style = { columnCount: Math.min(5, Math.max(1, columnCount)) } as CSSProperties;\n\tconst content =\n\t\tsemantic === \"detail\" ? (\n\t\t\t<dl className={classes} style={style}>\n\t\t\t\t{children}\n\t\t\t</dl>\n\t\t) : (\n\t\t\t<ul className={classes} style={style}>\n\t\t\t\t{children}\n\t\t\t</ul>\n\t\t);\n\n\treturn <DetailContext.Provider value={{ ...itemProps, semantic }}>{content}</DetailContext.Provider>;\n}\n\nDetail.Item = DetailItem;\n"],"mappings":";;;;;;;;;;;;;;;;;;GCiBM,IAAgB,EAAiC,CAAC,CAAC;AASzD,SAAS,EAAW,EAAE,UAAO,UAAO,cAAW,eAA6B;CAC3E,IAAM,EAAE,aAAU,WAAQ,WAAQ,WAAQ,cAAW,UAAU,WAAW,IAAkB,OAAS,EAAW,CAAa,GACvH,IAAc,EAAG,EAAO,QAAQ,KAAU,EAAO,YAAY,KAAU,EAAO,QAAQ,KAAU,EAAO,QAAQ,EAAO,EAAS,GAE/H,IACL,kBAAA,GAAA,EAAA,UAAA;EACE;EACA,KAAY,kBAAC,QAAD;GAAM,WAAU;GAAc,UAAA;EAAO,CAAA;GAChD,OAAO,KAAc,YAAY,IAAY,MAAoB;CAClE,EAAA,CAAA;CAGH,QAAQ,GAAR;EACC,KAAK,UACJ,OACC,kBAAC,OAAD;GAAK,WAAW;GAAhB,UAAA,CACC,kBAAC,MAAD;IAAI,WAAW,EAAO;IAAK,UAAA;GAAiB,CAAA,GAC5C,kBAAC,MAAD;IAAI,WAAW,EAAO;IAAK,UAAA;GAAU,CAAA,CACjC;;EAGP,KAAK,QACJ,OACC,kBAAC,MAAD;GAAI,WAAW;GAAf,UAAA,CACC,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAK,UAAA;GAAkB,CAAA,GAC9C,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAK,UAAA;GAAW,CAAA,CACpC;;EAGN,SACC,OACC,kBAAC,OAAD;GAAK,WAAW;GAAhB,UAAA,CACC,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAK,UAAA;GAAkB,CAAA,GAC9C,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAK,UAAA;GAAW,CAAA,CACnC;;CAER;AACD;AAuBA,SAAgB,EAAO,EAAE,aAAU,iBAAc,GAAG,YAAS,QAAQ,cAAW,QAAQ,cAAW,GAAG,KAA0B;CAC/H,IAAM,IAAU,EAAG,EAAO,YAAY,EAAO,IAAS,CAAS,GAEzD,IAEJ,EADD,MAAa,WACX,OAIA,MAJD;EAAI,WAAW;EAAgB,SAHjB,aAAa,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,CAAW,CAAC,EAGhC;EAC7B;CACE,CAIA;CAGN,OAAO,kBAAC,EAAc,UAAf;EAAwB,OAAO;GAAE,GAAG;GAAW;EAAS;EAAI,UAAA;CAAgC,CAAA;AACpG;AAEA,EAAO,OAAO"}
|
package/dist/disclosure/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "../chunks/ui.module-oRwY3Zli.js";
|
|
2
2
|
import { n as t } from "../chunks/uiClasses-CQj47jkF.js";
|
|
3
|
-
import { t as n } from "../chunks/flex-
|
|
3
|
+
import { t as n } from "../chunks/flex-D86M_h-0.js";
|
|
4
4
|
import { cn as r } from "@ryuzaki13/react-foundation-lib/utils";
|
|
5
5
|
import { ChevronDownIcon as i, ChevronUpIcon as a } from "lucide-react";
|
|
6
6
|
import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function BadRequestPage(): import("react").JSX.Element;
|
|
2
2
|
//# sourceMappingURL=BadRequestPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BadRequestPage.d.ts","sourceRoot":"","sources":["../../src/errors/BadRequestPage.tsx"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"BadRequestPage.d.ts","sourceRoot":"","sources":["../../src/errors/BadRequestPage.tsx"],"names":[],"mappings":"AAEA,wBAAgB,cAAc,gCAQ7B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function ErrorDisplay({ error, componentStack, draftId }: {
|
|
2
2
|
error: Error;
|
|
3
3
|
componentStack?: string;
|
|
4
4
|
draftId?: string | null;
|
|
5
|
-
}
|
|
5
|
+
}): import("react").JSX.Element;
|
|
6
6
|
//# sourceMappingURL=ErrorDisplay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorDisplay.d.ts","sourceRoot":"","sources":["../../src/errors/ErrorDisplay.tsx"],"names":[],"mappings":"AAiBA,
|
|
1
|
+
{"version":3,"file":"ErrorDisplay.d.ts","sourceRoot":"","sources":["../../src/errors/ErrorDisplay.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,+BAsDlI"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
interface ErrorExplosionProps {
|
|
3
2
|
header?: string;
|
|
4
3
|
description?: string;
|
|
5
4
|
}
|
|
6
|
-
export declare
|
|
5
|
+
export declare function ErrorExplosion({ header, description }: ErrorExplosionProps): import("react").JSX.Element;
|
|
7
6
|
export {};
|
|
8
7
|
//# sourceMappingURL=ErrorExplosion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorExplosion.d.ts","sourceRoot":"","sources":["../../src/errors/ErrorExplosion.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ErrorExplosion.d.ts","sourceRoot":"","sources":["../../src/errors/ErrorExplosion.tsx"],"names":[],"mappings":"AAKA,UAAU,mBAAmB;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,mBAAmB,+BAsB1E"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function ForbiddenPage(): import("react").JSX.Element;
|
|
2
2
|
//# sourceMappingURL=ForbiddenPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForbiddenPage.d.ts","sourceRoot":"","sources":["../../src/errors/ForbiddenPage.tsx"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"ForbiddenPage.d.ts","sourceRoot":"","sources":["../../src/errors/ForbiddenPage.tsx"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,gCAE5B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function NotFoundPage(): import("react").JSX.Element;
|
|
2
2
|
//# sourceMappingURL=NotFoundPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotFoundPage.d.ts","sourceRoot":"","sources":["../../src/errors/NotFoundPage.tsx"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"NotFoundPage.d.ts","sourceRoot":"","sources":["../../src/errors/NotFoundPage.tsx"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,gCAE3B"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
interface PageErrorProps {
|
|
3
2
|
code: string | number;
|
|
4
3
|
title: string;
|
|
5
4
|
description: string;
|
|
6
5
|
}
|
|
7
|
-
export declare
|
|
6
|
+
export declare function PageError({ code, title, description }: PageErrorProps): import("react").JSX.Element;
|
|
8
7
|
export {};
|
|
9
8
|
//# sourceMappingURL=PageError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageError.d.ts","sourceRoot":"","sources":["../../src/errors/PageError.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PageError.d.ts","sourceRoot":"","sources":["../../src/errors/PageError.tsx"],"names":[],"mappings":"AAEA,UAAU,cAAc;IACvB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,cAAc,+BAWrE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function UnauthorizedPage(): import("react").JSX.Element;
|
|
2
2
|
//# sourceMappingURL=UnauthorizedPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnauthorizedPage.d.ts","sourceRoot":"","sources":["../../src/errors/UnauthorizedPage.tsx"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"UnauthorizedPage.d.ts","sourceRoot":"","sources":["../../src/errors/UnauthorizedPage.tsx"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB,gCAQ/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewNotChanged.d.ts","sourceRoot":"","sources":["../../src/errors/ViewNotChanged.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ViewNotChanged.d.ts","sourceRoot":"","sources":["../../src/errors/ViewNotChanged.tsx"],"names":[],"mappings":"AAEA,wBAAgB,cAAc,gCAM7B"}
|