niuma-ui 2.0.3 → 2.0.9
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/CHANGELOG.md +96 -0
- package/dist/components/_shared/index.d.ts +2 -2
- package/dist/components/_shared/src/overlay-utils.d.ts +44 -1
- package/dist/components/_shared/src/overlay-utils.js +87 -2
- package/dist/components/_shared/src/reka.d.ts +1 -1
- package/dist/components/_shared/src/reka.js +2 -2
- package/dist/components/alert/index.d.ts +1 -0
- package/dist/components/alert/src/RsAlert.css +120 -65
- package/dist/components/alert/src/RsAlert.d.ts +24 -5
- package/dist/components/alert/src/RsAlert.impl.js +108 -36
- package/dist/components/alert/src/RsAlert.js +1 -1
- package/dist/components/alert/src/alert-utils.d.ts +37 -0
- package/dist/components/alert/src/alert-utils.js +71 -0
- package/dist/components/anchor/index.d.ts +1 -1
- package/dist/components/anchor/src/RsAnchor.css +63 -32
- package/dist/components/anchor/src/RsAnchor.d.ts +29 -2
- package/dist/components/anchor/src/RsAnchor.impl.js +199 -81
- package/dist/components/anchor/src/RsAnchor.js +1 -1
- package/dist/components/anchor/src/anchor-utils.d.ts +36 -4
- package/dist/components/anchor/src/anchor-utils.js +81 -19
- package/dist/components/auto-complete/index.d.ts +2 -0
- package/dist/components/auto-complete/src/RsAutoComplete.css +122 -0
- package/dist/components/auto-complete/src/RsAutoComplete.d.ts +47 -7
- package/dist/components/auto-complete/src/RsAutoComplete.impl.js +180 -72
- package/dist/components/auto-complete/src/RsAutoComplete.js +4 -1
- package/dist/components/auto-complete/src/auto-complete-utils.d.ts +7 -0
- package/dist/components/auto-complete/src/auto-complete-utils.js +17 -0
- package/dist/components/avatar/index.d.ts +1 -0
- package/dist/components/avatar/src/RsAvatar.css +36 -19
- package/dist/components/avatar/src/RsAvatar.d.ts +9 -3
- package/dist/components/avatar/src/RsAvatar.impl.js +57 -33
- package/dist/components/avatar/src/RsAvatar.js +2 -1
- package/dist/components/avatar/src/avatar-utils.d.ts +16 -7
- package/dist/components/avatar/src/avatar-utils.js +41 -3
- package/dist/components/breadcrumb/index.d.ts +1 -1
- package/dist/components/breadcrumb/src/RsBreadcrumb.css +50 -17
- package/dist/components/breadcrumb/src/RsBreadcrumb.d.ts +45 -6
- package/dist/components/breadcrumb/src/RsBreadcrumb.impl.js +111 -12
- package/dist/components/breadcrumb/src/RsBreadcrumb.js +2 -1
- package/dist/components/breadcrumb/src/breadcrumb-utils.d.ts +37 -5
- package/dist/components/breadcrumb/src/breadcrumb-utils.js +70 -9
- package/dist/components/button/src/RsButton.impl.js +1 -1
- package/dist/components/calendar-grid/index.d.ts +2 -0
- package/dist/components/calendar-grid/src/RsCalendarGrid.css +105 -45
- package/dist/components/calendar-grid/src/RsCalendarGrid.d.ts +62 -2
- package/dist/components/calendar-grid/src/RsCalendarGrid.impl.js +265 -94
- package/dist/components/calendar-grid/src/RsCalendarGrid.js +1 -1
- package/dist/components/calendar-grid/src/calendar-grid-utils.d.ts +72 -0
- package/dist/components/calendar-grid/src/calendar-grid-utils.js +122 -0
- package/dist/components/card/index.d.ts +1 -1
- package/dist/components/card/src/RsCard.css +108 -98
- package/dist/components/card/src/RsCard.d.ts +4 -13
- package/dist/components/card/src/RsCard.impl.js +29 -25
- package/dist/components/card/src/RsCard.js +2 -1
- package/dist/components/card/src/card-utils.d.ts +25 -0
- package/dist/components/card/src/card-utils.js +10 -0
- package/dist/components/cascader/index.d.ts +1 -0
- package/dist/components/cascader/src/RsCascader.css +175 -30
- package/dist/components/cascader/src/RsCascader.d.ts +15 -3
- package/dist/components/cascader/src/RsCascader.impl.js +277 -48
- package/dist/components/cascader/src/RsCascader.js +1 -1
- package/dist/components/cascader/src/cascader-utils.d.ts +2 -0
- package/dist/components/cascader/src/cascader-utils.js +8 -1
- package/dist/components/checkbox/index.d.ts +1 -0
- package/dist/components/checkbox/src/RsCheckbox.css +46 -23
- package/dist/components/checkbox/src/RsCheckbox.d.ts +11 -1
- package/dist/components/checkbox/src/RsCheckbox.impl.js +37 -9
- package/dist/components/checkbox/src/RsCheckbox.js +2 -1
- package/dist/components/checkbox/src/checkbox-utils.d.ts +4 -0
- package/dist/components/checkbox/src/checkbox-utils.js +12 -0
- package/dist/components/code-block/index.d.ts +1 -0
- package/dist/components/code-block/src/RsCodeBlock.css +93 -52
- package/dist/components/code-block/src/RsCodeBlock.d.ts +36 -9
- package/dist/components/code-block/src/RsCodeBlock.impl.js +203 -84
- package/dist/components/code-block/src/RsCodeBlock.js +1 -1
- package/dist/components/code-block/src/code-block-highlight.d.ts +4 -0
- package/dist/components/code-block/src/code-block-highlight.js +34 -0
- package/dist/components/code-block/src/code-block-utils.d.ts +23 -0
- package/dist/components/code-block/src/code-block-utils.js +71 -0
- package/dist/components/code-editor/index.d.ts +1 -1
- package/dist/components/code-editor/src/RsCodeEditor.css +118 -92
- package/dist/components/code-editor/src/RsCodeEditor.d.ts +14 -3
- package/dist/components/code-editor/src/RsCodeEditor.impl.js +261 -94
- package/dist/components/code-editor/src/RsCodeEditor.js +1 -1
- package/dist/components/code-editor/src/code-editor-utils.d.ts +15 -0
- package/dist/components/code-editor/src/code-editor-utils.js +36 -1
- package/dist/components/code-editor/src/code-mirror-completion.d.ts +1 -1
- package/dist/components/code-editor/src/code-mirror-completion.js +8 -5
- package/dist/components/code-editor/src/code-mirror-diagnostics.d.ts +2 -3
- package/dist/components/code-editor/src/code-mirror-diagnostics.js +3 -4
- package/dist/components/code-editor/src/code-mirror-ghost.d.ts +1 -1
- package/dist/components/code-editor/src/code-mirror-ghost.js +12 -3
- package/dist/components/code-editor/src/code-mirror-inline-edit.js +8 -3
- package/dist/components/code-editor/src/code-mirror-intel.d.ts +2 -2
- package/dist/components/code-editor/src/code-mirror-intel.js +50 -39
- package/dist/components/code-editor/src/code-mirror-lang.js +4 -0
- package/dist/components/code-editor/src/code-mirror-session.d.ts +13 -0
- package/dist/components/code-editor/src/code-mirror-session.js +30 -0
- package/dist/components/container/index.d.ts +1 -1
- package/dist/components/container/src/RsContainer.css +11 -11
- package/dist/components/container/src/RsContainer.d.ts +2 -12
- package/dist/components/container/src/RsContainer.impl.js +10 -57
- package/dist/components/container/src/RsContainer.js +1 -1
- package/dist/components/container/src/container-utils.d.ts +23 -0
- package/dist/components/container/src/container-utils.js +51 -0
- package/dist/components/context-menu/index.d.ts +1 -1
- package/dist/components/context-menu/src/RsContextMenu.css +115 -89
- package/dist/components/context-menu/src/RsContextMenu.d.ts +32 -11
- package/dist/components/context-menu/src/RsContextMenu.impl.js +795 -48
- package/dist/components/context-menu/src/RsContextMenuItems.d.ts +25 -1
- package/dist/components/context-menu/src/RsContextMenuItems.impl.js +110 -61
- package/dist/components/context-menu/src/context-menu-utils.d.ts +89 -3
- package/dist/components/context-menu/src/context-menu-utils.js +168 -3
- package/dist/components/date-picker/index.d.ts +4 -2
- package/dist/components/date-picker/src/RsDatePicker.css +42 -22
- package/dist/components/date-picker/src/RsDatePicker.d.ts +44 -20
- package/dist/components/date-picker/src/RsDatePicker.impl.js +484 -222
- package/dist/components/date-picker/src/RsDatePicker.js +1 -3
- package/dist/components/date-picker/src/RsDateTimePicker.d.ts +33 -6
- package/dist/components/date-picker/src/RsDateTimePicker.impl.js +47 -6
- package/dist/components/date-picker/src/date-picker-utils.d.ts +19 -0
- package/dist/components/date-picker/src/date-picker-utils.js +33 -10
- package/dist/components/descriptions/index.d.ts +1 -1
- package/dist/components/descriptions/src/RsDescriptions.css +38 -11
- package/dist/components/descriptions/src/RsDescriptions.d.ts +20 -4
- package/dist/components/descriptions/src/RsDescriptions.impl.js +89 -19
- package/dist/components/descriptions/src/RsDescriptionsItem.impl.js +13 -6
- package/dist/components/descriptions/src/descriptions-utils.d.ts +19 -0
- package/dist/components/descriptions/src/descriptions-utils.js +39 -1
- package/dist/components/dialog/index.d.ts +1 -1
- package/dist/components/dialog/src/RsConfirmDialog.css +47 -21
- package/dist/components/dialog/src/RsConfirmDialog.d.ts +19 -7
- package/dist/components/dialog/src/RsConfirmDialog.impl.js +349 -119
- package/dist/components/dialog/src/RsConfirmDialog.js +2 -1
- package/dist/components/dialog/src/RsDialog.css +102 -109
- package/dist/components/dialog/src/RsDialog.d.ts +34 -24
- package/dist/components/dialog/src/RsDialog.impl.js +410 -177
- package/dist/components/dialog/src/RsDialog.js +2 -1
- package/dist/components/dialog/src/dialog-utils.d.ts +40 -1
- package/dist/components/dialog/src/dialog-utils.js +152 -1
- package/dist/components/dialog/src/dialog-window.js +29 -8
- package/dist/components/drawer/index.d.ts +1 -1
- package/dist/components/drawer/src/RsDrawer.css +61 -29
- package/dist/components/drawer/src/RsDrawer.d.ts +37 -21
- package/dist/components/drawer/src/RsDrawer.impl.js +441 -223
- package/dist/components/drawer/src/drawer-utils.d.ts +35 -0
- package/dist/components/drawer/src/drawer-utils.js +131 -1
- package/dist/components/dropdown/index.d.ts +1 -1
- package/dist/components/dropdown/src/RsDropdown.css +140 -61
- package/dist/components/dropdown/src/RsDropdown.d.ts +39 -6
- package/dist/components/dropdown/src/RsDropdown.impl.js +693 -63
- package/dist/components/dropdown/src/RsDropdownItemView.impl.js +17 -7
- package/dist/components/dropdown/src/RsDropdownItems.d.ts +32 -3
- package/dist/components/dropdown/src/RsDropdownItems.impl.js +171 -59
- package/dist/components/dropdown/src/dropdown-utils.d.ts +50 -0
- package/dist/components/dropdown/src/dropdown-utils.js +103 -3
- package/dist/components/dynamic-tags/index.d.ts +1 -1
- package/dist/components/dynamic-tags/src/RsDynamicTags.css +115 -38
- package/dist/components/dynamic-tags/src/RsDynamicTags.d.ts +58 -17
- package/dist/components/dynamic-tags/src/RsDynamicTags.impl.js +269 -106
- package/dist/components/dynamic-tags/src/RsDynamicTags.js +1 -1
- package/dist/components/dynamic-tags/src/dynamic-tags-utils.d.ts +19 -0
- package/dist/components/dynamic-tags/src/dynamic-tags-utils.js +60 -0
- package/dist/components/empty/index.d.ts +1 -0
- package/dist/components/empty/src/RsEmpty.css +105 -23
- package/dist/components/empty/src/RsEmpty.d.ts +27 -4
- package/dist/components/empty/src/RsEmpty.impl.js +154 -11
- package/dist/components/empty/src/RsEmpty.js +2 -1
- package/dist/components/empty/src/empty-utils.d.ts +28 -0
- package/dist/components/empty/src/empty-utils.js +55 -0
- package/dist/components/fieldset/src/RsFieldset.css +71 -41
- package/dist/components/fieldset/src/RsFieldset.d.ts +21 -2
- package/dist/components/fieldset/src/RsFieldset.impl.js +93 -26
- package/dist/components/fieldset/src/RsFieldset.js +1 -1
- package/dist/components/fieldset/src/fieldset-utils.d.ts +4 -0
- package/dist/components/fieldset/src/fieldset-utils.js +9 -1
- package/dist/components/form/index.d.ts +1 -0
- package/dist/components/form/src/RsForm.css +15 -12
- package/dist/components/form/src/RsForm.d.ts +21 -23
- package/dist/components/form/src/RsForm.impl.js +33 -20
- package/dist/components/form/src/RsForm.js +1 -1
- package/dist/components/form/src/form-utils.d.ts +7 -0
- package/dist/components/form/src/form-utils.js +28 -1
- package/dist/components/input/index.d.ts +1 -1
- package/dist/components/input/src/RsInput.css +78 -260
- package/dist/components/input/src/RsInput.d.ts +5 -3
- package/dist/components/input/src/RsInput.impl.js +8 -16
- package/dist/components/input/src/RsInput.js +1 -1
- package/dist/components/input/src/input-utils.d.ts +11 -0
- package/dist/components/input/src/input-utils.js +22 -0
- package/dist/components/input-number/index.d.ts +1 -0
- package/dist/components/input-number/src/RsInputNumber.css +31 -31
- package/dist/components/input-number/src/RsInputNumber.d.ts +16 -14
- package/dist/components/input-number/src/RsInputNumber.impl.js +17 -4
- package/dist/components/input-number/src/RsInputNumber.js +1 -1
- package/dist/components/label/src/RsLabel.css +30 -11
- package/dist/components/label/src/RsLabel.d.ts +18 -1
- package/dist/components/label/src/RsLabel.impl.js +63 -10
- package/dist/components/label/src/RsLabel.js +1 -1
- package/dist/components/label/src/label-utils.d.ts +6 -0
- package/dist/components/label/src/label-utils.js +16 -0
- package/dist/components/link/src/RsLink.d.ts +2 -2
- package/dist/components/loading/index.d.ts +1 -0
- package/dist/components/loading/src/RsLoading.css +13 -97
- package/dist/components/loading/src/RsLoading.d.ts +53 -3
- package/dist/components/loading/src/RsLoading.impl.js +216 -33
- package/dist/components/loading/src/RsLoading.js +2 -1
- package/dist/components/loading/src/loading-status.css +210 -0
- package/dist/components/loading/src/loading-status.d.ts +34 -0
- package/dist/components/loading/src/loading-status.impl.js +84 -0
- package/dist/components/loading/src/loading-status.js +8 -0
- package/dist/components/loading/src/loading-utils.d.ts +51 -4
- package/dist/components/loading/src/loading-utils.js +122 -0
- package/dist/components/loading-bar/index.d.ts +1 -0
- package/dist/components/loading-bar/src/RsLoadingBar.css +72 -8
- package/dist/components/loading-bar/src/RsLoadingBar.d.ts +55 -11
- package/dist/components/loading-bar/src/RsLoadingBar.impl.js +298 -57
- package/dist/components/loading-bar/src/RsLoadingBar.js +1 -1
- package/dist/components/loading-bar/src/loading-bar-utils.d.ts +69 -0
- package/dist/components/loading-bar/src/loading-bar-utils.js +97 -0
- package/dist/components/log/src/RsLog.css +52 -144
- package/dist/components/log/src/RsLog.d.ts +12 -11
- package/dist/components/log/src/RsLog.impl.js +181 -148
- package/dist/components/log/src/RsLog.js +1 -1
- package/dist/components/log/src/RsLogRow.css +152 -0
- package/dist/components/log/src/RsLogRow.d.ts +35 -0
- package/dist/components/log/src/RsLogRow.impl.js +91 -0
- package/dist/components/log/src/RsLogRow.js +8 -0
- package/dist/components/log/src/log-utils.d.ts +8 -0
- package/dist/components/log/src/log-utils.js +71 -10
- package/dist/components/markdown/index.d.ts +1 -1
- package/dist/components/markdown/src/RsMarkdown.css +75 -32
- package/dist/components/markdown/src/RsMarkdown.d.ts +6 -2
- package/dist/components/markdown/src/RsMarkdown.impl.js +185 -17
- package/dist/components/markdown/src/markdown-utils.d.ts +26 -0
- package/dist/components/markdown/src/markdown-utils.js +114 -12
- package/dist/components/mentions/index.d.ts +2 -1
- package/dist/components/mentions/src/RsMentions.css +119 -3
- package/dist/components/mentions/src/RsMentions.d.ts +57 -5
- package/dist/components/mentions/src/RsMentions.impl.js +298 -79
- package/dist/components/mentions/src/RsMentions.js +1 -3
- package/dist/components/mentions/src/mentions-utils.d.ts +5 -1
- package/dist/components/mentions/src/mentions-utils.js +28 -9
- package/dist/components/menu/index.d.ts +1 -1
- package/dist/components/menu/src/RsMenu.css +70 -29
- package/dist/components/menu/src/RsMenu.d.ts +58 -4
- package/dist/components/menu/src/RsMenu.impl.js +93 -46
- package/dist/components/menu/src/RsMenuItems.d.ts +22 -5
- package/dist/components/menu/src/RsMenuItems.impl.js +506 -154
- package/dist/components/menu/src/menu-utils.d.ts +56 -0
- package/dist/components/menu/src/menu-utils.js +139 -6
- package/dist/components/monaco-editor/index.d.ts +1 -1
- package/dist/components/monaco-editor/src/RsMonacoEditor.css +28 -16
- package/dist/components/monaco-editor/src/RsMonacoEditor.d.ts +39 -41
- package/dist/components/monaco-editor/src/RsMonacoEditor.impl.js +212 -133
- package/dist/components/monaco-editor/src/RsMonacoEditor.js +1 -1
- package/dist/components/monaco-editor/src/monaco-editor-utils.d.ts +126 -0
- package/dist/components/monaco-editor/src/monaco-editor-utils.js +302 -0
- package/dist/components/pagination/index.d.ts +2 -2
- package/dist/components/pagination/src/RsPagination.css +93 -46
- package/dist/components/pagination/src/RsPagination.d.ts +68 -8
- package/dist/components/pagination/src/RsPagination.impl.js +229 -86
- package/dist/components/pagination/src/RsPagination.js +1 -1
- package/dist/components/pagination/src/pagination-utils.d.ts +59 -0
- package/dist/components/pagination/src/pagination-utils.js +105 -1
- package/dist/components/popover/index.d.ts +1 -0
- package/dist/components/popover/src/RsPopover.css +124 -14
- package/dist/components/popover/src/RsPopover.d.ts +38 -7
- package/dist/components/popover/src/RsPopover.impl.js +546 -35
- package/dist/components/popover/src/RsPopover.js +2 -1
- package/dist/components/popover/src/popover-utils.d.ts +24 -2
- package/dist/components/popover/src/popover-utils.js +55 -0
- package/dist/components/radio/index.d.ts +1 -1
- package/dist/components/radio/src/RsRadio.css +7 -6
- package/dist/components/radio/src/RsRadio.d.ts +8 -5
- package/dist/components/radio/src/RsRadio.impl.js +34 -24
- package/dist/components/radio/src/RsRadio.js +2 -1
- package/dist/components/radio/src/RsRadioItem.css +61 -44
- package/dist/components/radio/src/RsRadioItem.d.ts +2 -2
- package/dist/components/radio/src/RsRadioItem.impl.js +53 -20
- package/dist/components/radio/src/RsRadioItem.js +2 -1
- package/dist/components/radio/src/radio-utils.d.ts +12 -1
- package/dist/components/radio/src/radio-utils.js +15 -1
- package/dist/components/scrollbar/src/RsScrollbar.css +71 -24
- package/dist/components/scrollbar/src/RsScrollbar.d.ts +9 -5
- package/dist/components/scrollbar/src/RsScrollbar.impl.js +372 -47
- package/dist/components/scrollbar/src/RsScrollbar.js +2 -1
- package/dist/components/scrollbar/src/scrollbar-utils.d.ts +34 -2
- package/dist/components/scrollbar/src/scrollbar-utils.js +64 -1
- package/dist/components/select/index.d.ts +1 -0
- package/dist/components/select/src/RsSelect.css +54 -42
- package/dist/components/select/src/RsSelect.d.ts +19 -2
- package/dist/components/select/src/RsSelect.impl.js +727 -312
- package/dist/components/select/src/RsSelect.js +1 -1
- package/dist/components/select/src/select-utils.d.ts +4 -2
- package/dist/components/select/src/select-utils.js +8 -3
- package/dist/components/select/src/use-rs-select.d.ts +1 -0
- package/dist/components/select/src/use-rs-select.js +23 -17
- package/dist/components/sidebar/index.d.ts +1 -0
- package/dist/components/sidebar/src/RsSidebar.css +91 -33
- package/dist/components/sidebar/src/RsSidebar.d.ts +17 -9
- package/dist/components/sidebar/src/RsSidebar.impl.js +124 -22
- package/dist/components/sidebar/src/RsSidebar.js +1 -1
- package/dist/components/sidebar/src/RsSidebarGroup.css +23 -6
- package/dist/components/sidebar/src/RsSidebarGroup.d.ts +6 -2
- package/dist/components/sidebar/src/RsSidebarGroup.impl.js +17 -4
- package/dist/components/sidebar/src/RsSidebarGroup.js +1 -1
- package/dist/components/sidebar/src/RsSidebarItem.css +50 -20
- package/dist/components/sidebar/src/RsSidebarItem.d.ts +21 -3
- package/dist/components/sidebar/src/RsSidebarItem.impl.js +71 -20
- package/dist/components/sidebar/src/RsSidebarItem.js +1 -1
- package/dist/components/sidebar/src/sidebar-utils.d.ts +47 -0
- package/dist/components/sidebar/src/sidebar-utils.js +72 -0
- package/dist/components/split-pane/index.d.ts +2 -2
- package/dist/components/split-pane/src/RsSplitPane.css +41 -30
- package/dist/components/split-pane/src/RsSplitPane.d.ts +6 -2
- package/dist/components/split-pane/src/RsSplitPane.impl.js +153 -45
- package/dist/components/split-pane/src/split-pane-utils.d.ts +23 -0
- package/dist/components/split-pane/src/split-pane-utils.js +18 -1
- package/dist/components/stat-card/index.d.ts +1 -0
- package/dist/components/stat-card/src/RsStatCard.css +129 -25
- package/dist/components/stat-card/src/RsStatCard.d.ts +40 -4
- package/dist/components/stat-card/src/RsStatCard.impl.js +106 -12
- package/dist/components/stat-card/src/RsStatCard.js +1 -1
- package/dist/components/stat-card/src/stat-card-utils.d.ts +39 -0
- package/dist/components/stat-card/src/stat-card-utils.js +113 -0
- package/dist/components/steps/index.d.ts +1 -1
- package/dist/components/steps/src/RsSteps.css +158 -37
- package/dist/components/steps/src/RsSteps.d.ts +69 -5
- package/dist/components/steps/src/RsSteps.impl.js +168 -28
- package/dist/components/steps/src/RsSteps.js +1 -1
- package/dist/components/steps/src/steps-utils.d.ts +51 -1
- package/dist/components/steps/src/steps-utils.js +67 -1
- package/dist/components/switch/index.d.ts +2 -1
- package/dist/components/switch/src/RsSwitch.css +36 -18
- package/dist/components/switch/src/RsSwitch.d.ts +18 -5
- package/dist/components/switch/src/RsSwitch.impl.js +61 -29
- package/dist/components/switch/src/RsSwitch.js +2 -1
- package/dist/components/switch/src/switch-utils.d.ts +4 -0
- package/dist/components/switch/src/switch-utils.js +9 -0
- package/dist/components/table/src/RsTable.impl.js +4 -2
- package/dist/components/table/src/composables/useRsTableContextMenu.d.ts +16 -0
- package/dist/components/table/src/composables/useRsTableContextMenu.js +1 -1
- package/dist/components/table/src/composables/useRsTableEngine.js +6 -2
- package/dist/components/table/src/composables/useRsTableScrollLayout.js +2 -0
- package/dist/components/table/src/composables/useRsTableShell.d.ts +16 -0
- package/dist/components/table/src/rs-table-props.d.ts +1 -1
- package/dist/components/table/src/rs-table-props.js +0 -1
- package/dist/components/table/src/table-body/RsTableBody.impl.js +1 -0
- package/dist/components/table/src/table-body/RsTableCellEditor.impl.js +10 -2
- package/dist/components/table/src/table-body/RsTableColGroup.impl.js +1 -0
- package/dist/components/table/src/table-footer/RsTableSummaryRow.impl.js +1 -0
- package/dist/components/table/src/table-header/RsTableHeader.impl.js +1 -0
- package/dist/components/table/src/utils/table-utils.d.ts +10 -6
- package/dist/components/table/src/utils/table-utils.js +27 -25
- package/dist/components/table/style/rs-table.css +34 -20
- package/dist/components/tabs/index.d.ts +2 -2
- package/dist/components/tabs/src/RsTabs.css +225 -101
- package/dist/components/tabs/src/RsTabs.d.ts +37 -8
- package/dist/components/tabs/src/RsTabs.impl.js +400 -270
- package/dist/components/tabs/src/tabs-utils.d.ts +41 -2
- package/dist/components/tabs/src/tabs-utils.js +55 -1
- package/dist/components/terminal/index.d.ts +1 -1
- package/dist/components/terminal/src/RsTerminal.css +60 -37
- package/dist/components/terminal/src/RsTerminal.d.ts +36 -4
- package/dist/components/terminal/src/RsTerminal.impl.js +288 -68
- package/dist/components/terminal/src/RsTerminal.js +1 -1
- package/dist/components/terminal/src/terminal-utils.d.ts +42 -4
- package/dist/components/terminal/src/terminal-utils.js +113 -10
- package/dist/components/textarea/src/RsTextarea.css +23 -23
- package/dist/components/textarea/src/RsTextarea.d.ts +7 -13
- package/dist/components/textarea/src/RsTextarea.impl.js +37 -46
- package/dist/components/textarea/src/RsTextarea.js +1 -1
- package/dist/components/textarea/src/textarea-utils.d.ts +27 -0
- package/dist/components/textarea/src/textarea-utils.js +61 -0
- package/dist/components/time-picker/index.d.ts +3 -2
- package/dist/components/time-picker/src/RsTimePicker.css +41 -24
- package/dist/components/time-picker/src/RsTimePicker.d.ts +52 -7
- package/dist/components/time-picker/src/RsTimePicker.impl.js +520 -156
- package/dist/components/time-picker/src/RsTimePicker.js +1 -3
- package/dist/components/time-picker/src/RsTimePickerColumns.css +26 -18
- package/dist/components/time-picker/src/RsTimePickerColumns.d.ts +3 -1
- package/dist/components/time-picker/src/RsTimePickerColumns.impl.js +62 -9
- package/dist/components/time-picker/src/RsTimePickerColumns.js +1 -1
- package/dist/components/time-picker/src/time-picker-utils.d.ts +38 -0
- package/dist/components/time-picker/src/time-picker-utils.js +97 -5
- package/dist/components/toaster/src/RsToaster.css +156 -203
- package/dist/components/toaster/src/RsToaster.d.ts +33 -3
- package/dist/components/toaster/src/RsToaster.impl.js +309 -34
- package/dist/components/toaster/src/toast-store.d.ts +95 -0
- package/dist/components/toaster/src/toast-store.js +177 -0
- package/dist/components/toaster/src/toast-utils.d.ts +60 -0
- package/dist/components/toaster/src/toast-utils.js +86 -0
- package/dist/components/toolbar/index.d.ts +1 -1
- package/dist/components/toolbar/src/RsToolbar.css +206 -32
- package/dist/components/toolbar/src/RsToolbar.d.ts +41 -16
- package/dist/components/toolbar/src/RsToolbar.impl.js +146 -18
- package/dist/components/toolbar/src/RsToolbar.js +2 -1
- package/dist/components/toolbar/src/toolbar-utils.d.ts +20 -0
- package/dist/components/toolbar/src/toolbar-utils.js +105 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip/src/RsTooltip.css +104 -26
- package/dist/components/tooltip/src/RsTooltip.d.ts +39 -17
- package/dist/components/tooltip/src/RsTooltip.impl.js +420 -51
- package/dist/components/tooltip/src/RsTooltip.js +2 -1
- package/dist/components/tooltip/src/RsTooltipProvider.d.ts +4 -4
- package/dist/components/tooltip/src/RsTooltipProvider.impl.js +51 -14
- package/dist/components/tooltip/src/tooltip-utils.d.ts +30 -0
- package/dist/components/tooltip/src/tooltip-utils.js +23 -0
- package/dist/components/tree/index.d.ts +2 -2
- package/dist/components/tree/src/RsTree.css +84 -75
- package/dist/components/tree/src/RsTree.d.ts +23 -23
- package/dist/components/tree/src/RsTree.impl.js +292 -66
- package/dist/components/tree/src/RsTree.js +1 -1
- package/dist/components/tree/src/tree-utils.d.ts +22 -0
- package/dist/components/tree/src/tree-utils.js +18 -4
- package/dist/components/tree-select/index.d.ts +2 -0
- package/dist/components/tree-select/src/RsTreeSelect.css +100 -25
- package/dist/components/tree-select/src/RsTreeSelect.d.ts +91 -7
- package/dist/components/tree-select/src/RsTreeSelect.impl.js +464 -79
- package/dist/components/tree-select/src/RsTreeSelect.js +1 -1
- package/dist/components/tree-select/src/tree-select-utils.d.ts +20 -0
- package/dist/components/tree-select/src/tree-select-utils.js +60 -0
- package/dist/components/upload/index.d.ts +2 -1
- package/dist/components/upload/src/RsUpload.css +223 -75
- package/dist/components/upload/src/RsUpload.d.ts +77 -1
- package/dist/components/upload/src/RsUpload.impl.js +404 -90
- package/dist/components/upload/src/RsUpload.js +1 -1
- package/dist/components/upload/src/upload-utils.d.ts +21 -2
- package/dist/components/upload/src/upload-utils.js +139 -9
- package/dist/components/virtual-list/index.d.ts +1 -1
- package/dist/components/virtual-list/src/RsVirtualList.css +64 -9
- package/dist/components/virtual-list/src/RsVirtualList.d.ts +31 -5
- package/dist/components/virtual-list/src/RsVirtualList.impl.js +425 -76
- package/dist/components/virtual-list/src/RsVirtualList.js +1 -1
- package/dist/components/virtual-list/src/virtual-list-utils.d.ts +64 -1
- package/dist/components/virtual-list/src/virtual-list-utils.js +215 -1
- package/dist/composables/useRsLoadingBar.d.ts +2 -5
- package/dist/composables/useRsLoadingBar.js +21 -5
- package/dist/composables/useRsTabsNav.d.ts +3 -1
- package/dist/composables/useRsTabsNav.js +96 -28
- package/dist/composables/useRsToast.d.ts +11 -13
- package/dist/composables/useRsToast.js +66 -17
- package/dist/index.d.ts +51 -32
- package/dist/index.js +20 -0
- package/dist/locale/apply.js +6 -1
- package/dist/locale/messages.js +174 -4
- package/dist/styles.css +1007 -980
- package/dist/theme/brand.example.css +3 -2
- package/dist/vite-plugins/niuma-ui-host.js +1 -1
- package/package.json +2 -3
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.d.ts +0 -8
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.impl.js +0 -40
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.js +0 -5
- package/dist/components/date-picker/src/RsDatePicker-1.css +0 -157
- package/dist/components/mentions/src/RsMentions-1.css +0 -29
- package/dist/components/time-picker/src/RsTimePicker-1.css +0 -98
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { readDocumentTheme } from "../../code-editor/src/code-editor-utils.js";
|
|
2
1
|
//#region src/components/terminal/src/terminal-utils.ts
|
|
3
2
|
var TERMINAL_CSS_KEYS = [
|
|
4
3
|
["background", "--rs-terminal-bg"],
|
|
@@ -112,10 +111,24 @@ function themeSourceElement(mode) {
|
|
|
112
111
|
if (document.documentElement.dataset.rsTheme === mode) return document.documentElement;
|
|
113
112
|
return themeProbeElement(mode);
|
|
114
113
|
}
|
|
115
|
-
/**
|
|
116
|
-
|
|
114
|
+
/**
|
|
115
|
+
* auto 看最近的 `data-rs-theme`,没有时看 documentElement。
|
|
116
|
+
* 未写或不是 dark 时跟全库浅色。传入元素时深色岛不必改整页。
|
|
117
|
+
*/
|
|
118
|
+
function resolveTerminalTheme(mode = "auto", el) {
|
|
119
|
+
if (mode !== "auto") return mode;
|
|
120
|
+
if (typeof document === "undefined") return "light";
|
|
121
|
+
const node = el?.closest?.("[data-rs-theme]") ?? document.documentElement;
|
|
122
|
+
return (node instanceof HTMLElement ? node.dataset.rsTheme : null) === "dark" ? "dark" : "light";
|
|
123
|
+
}
|
|
124
|
+
function pickThemeSource(mode, el) {
|
|
125
|
+
if (el && resolveTerminalTheme("auto", el) === mode) return el;
|
|
126
|
+
return themeSourceElement(mode);
|
|
127
|
+
}
|
|
128
|
+
/** 从 `--rs-terminal-*` 构建 xterm 调色板。传入宿主时读继承到的 token。 */
|
|
129
|
+
function readTerminalThemeFromCss(mode, el) {
|
|
117
130
|
if (typeof document === "undefined" || typeof getComputedStyle === "undefined") return {};
|
|
118
|
-
const source =
|
|
131
|
+
const source = pickThemeSource(mode, el);
|
|
119
132
|
const theme = {};
|
|
120
133
|
for (const [key, cssVar] of TERMINAL_CSS_KEYS) {
|
|
121
134
|
const value = resolveCssColorForXterm(readResolvedCssColor(cssVar, source, BACKGROUND_THEME_KEYS.has(key)));
|
|
@@ -123,15 +136,12 @@ function readTerminalThemeFromCss(mode) {
|
|
|
123
136
|
}
|
|
124
137
|
return theme;
|
|
125
138
|
}
|
|
126
|
-
function resolveTerminalTheme(mode = "auto") {
|
|
127
|
-
return mode === "auto" ? readDocumentTheme() : mode;
|
|
128
|
-
}
|
|
129
139
|
function getTerminalThemePalette(mode) {
|
|
130
140
|
return readTerminalThemeFromCss(mode);
|
|
131
141
|
}
|
|
132
|
-
function mergeTerminalTheme(mode, overrides) {
|
|
142
|
+
function mergeTerminalTheme(mode, overrides, el) {
|
|
133
143
|
return {
|
|
134
|
-
...readTerminalThemeFromCss(mode),
|
|
144
|
+
...readTerminalThemeFromCss(mode, el),
|
|
135
145
|
...overrides
|
|
136
146
|
};
|
|
137
147
|
}
|
|
@@ -216,6 +226,99 @@ function isMacPlatform() {
|
|
|
216
226
|
function terminalShortcutLabel(key) {
|
|
217
227
|
return isMacPlatform() ? `⌘${key}` : `Ctrl+${key}`;
|
|
218
228
|
}
|
|
229
|
+
var themeListeners = /* @__PURE__ */ new Set();
|
|
230
|
+
var sharedThemeObserver = null;
|
|
231
|
+
function ensureTerminalThemeObserver() {
|
|
232
|
+
if (sharedThemeObserver || typeof document === "undefined" || typeof MutationObserver === "undefined") return;
|
|
233
|
+
sharedThemeObserver = new MutationObserver(() => {
|
|
234
|
+
for (const listener of themeListeners) listener();
|
|
235
|
+
});
|
|
236
|
+
sharedThemeObserver.observe(document.documentElement, {
|
|
237
|
+
attributes: true,
|
|
238
|
+
attributeFilter: ["data-rs-theme"],
|
|
239
|
+
subtree: true
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* 多个终端共用一个 `data-rs-theme` 观察器(含主题岛)。
|
|
244
|
+
* 最后一个退订时断开,避免卸载后仍监听整棵文档。
|
|
245
|
+
*/
|
|
246
|
+
function subscribeTerminalTheme(listener) {
|
|
247
|
+
if (typeof document === "undefined" || typeof MutationObserver === "undefined") return () => void 0;
|
|
248
|
+
themeListeners.add(listener);
|
|
249
|
+
ensureTerminalThemeObserver();
|
|
250
|
+
return () => {
|
|
251
|
+
themeListeners.delete(listener);
|
|
252
|
+
if (themeListeners.size === 0 && sharedThemeObserver) {
|
|
253
|
+
sharedThemeObserver.disconnect();
|
|
254
|
+
sharedThemeObserver = null;
|
|
255
|
+
}
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
var TERMINAL_LINK_TRAILING = /* @__PURE__ */ new Set([
|
|
259
|
+
".",
|
|
260
|
+
",",
|
|
261
|
+
";",
|
|
262
|
+
":",
|
|
263
|
+
"!",
|
|
264
|
+
"?",
|
|
265
|
+
")",
|
|
266
|
+
">",
|
|
267
|
+
"]"
|
|
268
|
+
]);
|
|
269
|
+
function trimTerminalLinkPunctuation(raw) {
|
|
270
|
+
let end = raw.length;
|
|
271
|
+
while (end > 0 && TERMINAL_LINK_TRAILING.has(raw.charAt(end - 1))) end -= 1;
|
|
272
|
+
return raw.slice(0, end);
|
|
273
|
+
}
|
|
274
|
+
/** 只放行 http(s) 与 mailto。javascript: / data: 一律拒绝。 */
|
|
275
|
+
function isSafeTerminalLink(value) {
|
|
276
|
+
try {
|
|
277
|
+
const url = new URL(value);
|
|
278
|
+
return url.protocol === "http:" || url.protocol === "https:" || url.protocol === "mailto:";
|
|
279
|
+
} catch {
|
|
280
|
+
return false;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
/** 从一行可见文本里找出可点的 http(s) / mailto。end 为不含尾标点的字符串下标。 */
|
|
284
|
+
function findTerminalHttpLinks(line) {
|
|
285
|
+
if (!line.includes("http") && !line.includes("mailto")) return [];
|
|
286
|
+
const re = /(?:https?:\/\/|mailto:)[^\s<>"']+/gi;
|
|
287
|
+
const out = [];
|
|
288
|
+
let match;
|
|
289
|
+
while (match = re.exec(line)) {
|
|
290
|
+
const text = trimTerminalLinkPunctuation(match[0]);
|
|
291
|
+
if (!text || !isSafeTerminalLink(text)) continue;
|
|
292
|
+
out.push({
|
|
293
|
+
start: match.index,
|
|
294
|
+
end: match.index + text.length,
|
|
295
|
+
text
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
return out;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* 把字符串下标换成 xterm 1-based 单元格列。
|
|
302
|
+
* 宽字符占两格,后续 width 0 的格子跳过,避免链接框落在汉字上。
|
|
303
|
+
*/
|
|
304
|
+
function terminalCellIndexForString(cells, stringIndex) {
|
|
305
|
+
let seen = 0;
|
|
306
|
+
for (let i = 0; i < cells.length; i += 1) {
|
|
307
|
+
if ((cells[i]?.width ?? 1) < 1) continue;
|
|
308
|
+
if (seen >= stringIndex) return i + 1;
|
|
309
|
+
const chars = cells[i]?.chars ?? "";
|
|
310
|
+
seen += chars.length || 1;
|
|
311
|
+
}
|
|
312
|
+
return Math.max(1, cells.length);
|
|
313
|
+
}
|
|
314
|
+
function terminalLinkCellRange(cells, start, end) {
|
|
315
|
+
const startX = terminalCellIndexForString(cells, start);
|
|
316
|
+
const endX = terminalCellIndexForString(cells, Math.max(start, end - 1));
|
|
317
|
+
return {
|
|
318
|
+
startX,
|
|
319
|
+
endX: Math.max(startX, endX)
|
|
320
|
+
};
|
|
321
|
+
}
|
|
219
322
|
/** ANSI 16 色演示文本 */
|
|
220
323
|
function buildAnsiColorDemo() {
|
|
221
324
|
const names = [
|
|
@@ -252,4 +355,4 @@ function buildAnsiColorDemo() {
|
|
|
252
355
|
].join("\r\n")}\r\n`;
|
|
253
356
|
}
|
|
254
357
|
//#endregion
|
|
255
|
-
export { buildAnsiColorDemo, containsAltScreenEnter, containsEscapeSequence, containsFullScreenClear, containsTuiRefreshSequence, getTerminalThemePalette, isMacPlatform, mergeTerminalTheme, needsPtyWriteViewportPrep, normalizeTerminalHexColor, prepareTerminalForPtyWrite, proposeTerminalGeometry, readTerminalThemeFromCss, readXtermCssCellSize, resetLocalTerminalModes, resolveCssColorForXterm, resolveTerminalTheme, snapTerminalViewportToBottom, terminalShortcutLabel };
|
|
358
|
+
export { buildAnsiColorDemo, containsAltScreenEnter, containsEscapeSequence, containsFullScreenClear, containsTuiRefreshSequence, findTerminalHttpLinks, getTerminalThemePalette, isMacPlatform, isSafeTerminalLink, mergeTerminalTheme, needsPtyWriteViewportPrep, normalizeTerminalHexColor, prepareTerminalForPtyWrite, proposeTerminalGeometry, readTerminalThemeFromCss, readXtermCssCellSize, resetLocalTerminalModes, resolveCssColorForXterm, resolveTerminalTheme, snapTerminalViewportToBottom, subscribeTerminalTheme, terminalCellIndexForString, terminalLinkCellRange, terminalShortcutLabel };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
.rs-textarea[data-v-
|
|
2
|
+
.rs-textarea[data-v-4aaa8fd4] {
|
|
3
3
|
width: 100%;
|
|
4
4
|
}
|
|
5
|
-
.rs-textarea__shell[data-v-
|
|
5
|
+
.rs-textarea__shell[data-v-4aaa8fd4] {
|
|
6
6
|
position: relative;
|
|
7
7
|
box-sizing: border-box;
|
|
8
8
|
width: 100%;
|
|
@@ -14,32 +14,32 @@
|
|
|
14
14
|
border-color var(--rs-transition-fast),
|
|
15
15
|
box-shadow var(--rs-transition-fast);
|
|
16
16
|
}
|
|
17
|
-
.rs-textarea__shell[data-v-
|
|
17
|
+
.rs-textarea__shell[data-v-4aaa8fd4]:hover:not(.is-disabled):not(.is-readonly):not(:focus-within) {
|
|
18
18
|
border-color: var(--rs-input-border-hover, var(--rs-border));
|
|
19
19
|
}
|
|
20
|
-
.rs-textarea__shell[data-v-
|
|
20
|
+
.rs-textarea__shell[data-v-4aaa8fd4]:focus-within {
|
|
21
21
|
border-color: var(--rs-focus-border, var(--rs-primary));
|
|
22
22
|
box-shadow:
|
|
23
23
|
var(--rs-input-shadow, none),
|
|
24
24
|
0 0 0 var(--rs-focus-ring-width, 2px) var(--rs-focus-ring);
|
|
25
25
|
}
|
|
26
|
-
.rs-textarea__shell.is-invalid[data-v-
|
|
26
|
+
.rs-textarea__shell.is-invalid[data-v-4aaa8fd4] {
|
|
27
27
|
border-color: var(--rs-danger);
|
|
28
28
|
}
|
|
29
|
-
.rs-textarea__shell.is-invalid[data-v-
|
|
29
|
+
.rs-textarea__shell.is-invalid[data-v-4aaa8fd4]:focus-within {
|
|
30
30
|
box-shadow:
|
|
31
31
|
var(--rs-input-shadow, none),
|
|
32
32
|
0 0 0 var(--rs-focus-ring-width, 2px) color-mix(in srgb, var(--rs-danger) 14%, transparent);
|
|
33
33
|
}
|
|
34
|
-
.rs-textarea__shell.is-disabled[data-v-
|
|
34
|
+
.rs-textarea__shell.is-disabled[data-v-4aaa8fd4] {
|
|
35
35
|
opacity: 0.38;
|
|
36
36
|
cursor: not-allowed;
|
|
37
37
|
background: var(--rs-surface-hover);
|
|
38
38
|
}
|
|
39
|
-
.rs-textarea__shell.is-readonly[data-v-
|
|
39
|
+
.rs-textarea__shell.is-readonly[data-v-4aaa8fd4] {
|
|
40
40
|
background: var(--rs-surface-hover);
|
|
41
41
|
}
|
|
42
|
-
.rs-textarea__control[data-v-
|
|
42
|
+
.rs-textarea__control[data-v-4aaa8fd4] {
|
|
43
43
|
display: block;
|
|
44
44
|
box-sizing: border-box;
|
|
45
45
|
width: 100%;
|
|
@@ -53,37 +53,37 @@
|
|
|
53
53
|
font-size: var(--rs-font-size-sm);
|
|
54
54
|
line-height: 1.5;
|
|
55
55
|
}
|
|
56
|
-
.rs-textarea__shell.is-autosize .rs-textarea__control[data-v-
|
|
56
|
+
.rs-textarea__shell.is-autosize .rs-textarea__control[data-v-4aaa8fd4] {
|
|
57
57
|
min-height: 0;
|
|
58
58
|
}
|
|
59
|
-
.rs-textarea__shell.has-count .rs-textarea__control[data-v-
|
|
59
|
+
.rs-textarea__shell.has-count .rs-textarea__control[data-v-4aaa8fd4] {
|
|
60
60
|
padding-bottom: 1.55rem;
|
|
61
61
|
}
|
|
62
|
-
.rs-textarea__shell.has-clear .rs-textarea__control[data-v-
|
|
62
|
+
.rs-textarea__shell.has-clear .rs-textarea__control[data-v-4aaa8fd4] {
|
|
63
63
|
padding-inline-end: 1.85rem;
|
|
64
64
|
}
|
|
65
|
-
.rs-input-field--sm .rs-textarea__control[data-v-
|
|
65
|
+
.rs-input-field--sm .rs-textarea__control[data-v-4aaa8fd4] {
|
|
66
66
|
min-height: 3.5rem;
|
|
67
67
|
padding: 0.4rem 0.6rem;
|
|
68
68
|
font-size: var(--rs-font-size-xs);
|
|
69
69
|
}
|
|
70
|
-
.rs-input-field--sm .rs-textarea__shell.has-count .rs-textarea__control[data-v-
|
|
70
|
+
.rs-input-field--sm .rs-textarea__shell.has-count .rs-textarea__control[data-v-4aaa8fd4] {
|
|
71
71
|
padding-bottom: 1.4rem;
|
|
72
72
|
}
|
|
73
|
-
.rs-input-field--lg .rs-textarea__control[data-v-
|
|
73
|
+
.rs-input-field--lg .rs-textarea__control[data-v-4aaa8fd4] {
|
|
74
74
|
min-height: 5.5rem;
|
|
75
75
|
padding: 0.7rem 0.9rem;
|
|
76
76
|
}
|
|
77
|
-
.rs-textarea__control[data-v-
|
|
77
|
+
.rs-textarea__control[data-v-4aaa8fd4]::placeholder {
|
|
78
78
|
color: var(--rs-placeholder);
|
|
79
79
|
}
|
|
80
|
-
.rs-textarea__control[data-v-
|
|
80
|
+
.rs-textarea__control[data-v-4aaa8fd4]:disabled {
|
|
81
81
|
cursor: not-allowed;
|
|
82
82
|
}
|
|
83
|
-
.rs-textarea__control[data-v-
|
|
83
|
+
.rs-textarea__control[data-v-4aaa8fd4]:read-only {
|
|
84
84
|
cursor: default;
|
|
85
85
|
}
|
|
86
|
-
.rs-textarea__clear[data-v-
|
|
86
|
+
.rs-textarea__clear[data-v-4aaa8fd4] {
|
|
87
87
|
position: absolute;
|
|
88
88
|
top: 0.45rem;
|
|
89
89
|
inset-inline-end: 0.45rem;
|
|
@@ -102,11 +102,11 @@
|
|
|
102
102
|
color var(--rs-transition-fast),
|
|
103
103
|
background var(--rs-transition-fast);
|
|
104
104
|
}
|
|
105
|
-
.rs-textarea__clear[data-v-
|
|
105
|
+
.rs-textarea__clear[data-v-4aaa8fd4]:hover {
|
|
106
106
|
color: var(--rs-text);
|
|
107
107
|
background: var(--rs-item-hover);
|
|
108
108
|
}
|
|
109
|
-
.rs-textarea__count[data-v-
|
|
109
|
+
.rs-textarea__count[data-v-4aaa8fd4] {
|
|
110
110
|
position: absolute;
|
|
111
111
|
inset-inline-end: 0.65rem;
|
|
112
112
|
bottom: 0.3rem;
|
|
@@ -117,10 +117,10 @@
|
|
|
117
117
|
line-height: 1;
|
|
118
118
|
color: var(--rs-muted);
|
|
119
119
|
}
|
|
120
|
-
.rs-textarea__count.is-limit[data-v-
|
|
120
|
+
.rs-textarea__count.is-limit[data-v-4aaa8fd4] {
|
|
121
121
|
color: var(--rs-danger);
|
|
122
122
|
}
|
|
123
|
-
.rs-field--label-left .rs-textarea[data-v-
|
|
123
|
+
.rs-field--label-left .rs-textarea[data-v-4aaa8fd4] {
|
|
124
124
|
grid-column: 2;
|
|
125
125
|
min-width: 0;
|
|
126
126
|
}
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
import type { RsComponentSize, RsRadius } from '../../../theme/types';
|
|
2
|
+
import type { RsInputRule, RsInputValidateTrigger } from '../../input/src/input-rules';
|
|
2
3
|
import { type RsFormLabelPosition } from '../../form/src/form-utils';
|
|
3
4
|
import { type RsFormRuleTrigger } from '../../form/src/form-rules';
|
|
4
|
-
import type
|
|
5
|
-
/** 原生 resize;autosize 开启时强制 none,与 Element Plus 一致。 */
|
|
6
|
-
export type RsTextareaResize = 'none' | 'horizontal' | 'vertical' | 'both';
|
|
7
|
-
/**
|
|
8
|
-
* 自适应高度。true 从 rows 起往下长;对象可锁 minRows / maxRows。
|
|
9
|
-
* 对齐 Ant Design autoSize、Element Plus autosize。
|
|
10
|
-
*/
|
|
11
|
-
export type RsTextareaAutosize = boolean | {
|
|
12
|
-
minRows?: number;
|
|
13
|
-
maxRows?: number;
|
|
14
|
-
};
|
|
5
|
+
import { type RsTextareaAutosize, type RsTextareaResize } from './textarea-utils';
|
|
15
6
|
/**
|
|
16
7
|
* RsTextarea 模板 ref 请用此类型。
|
|
17
8
|
* 不要写 InstanceType<typeof RsTextarea>:组件实例类型过深,vue-tsc 会报 Excessive stack depth。
|
|
@@ -28,6 +19,7 @@ export interface RsTextareaExpose {
|
|
|
28
19
|
export type RsTextareaInstance = RsTextareaExpose & {
|
|
29
20
|
$el: HTMLElement;
|
|
30
21
|
};
|
|
22
|
+
export type { RsTextareaAutosize, RsTextareaResize };
|
|
31
23
|
type __VLS_Props = {
|
|
32
24
|
id?: string;
|
|
33
25
|
placeholder?: string;
|
|
@@ -64,7 +56,9 @@ declare var __VLS_6: {
|
|
|
64
56
|
count: number;
|
|
65
57
|
maxlength: number | undefined;
|
|
66
58
|
}, __VLS_8: {
|
|
59
|
+
name: string | undefined;
|
|
67
60
|
message: string;
|
|
61
|
+
value: string;
|
|
68
62
|
};
|
|
69
63
|
type __VLS_Slots = {} & {
|
|
70
64
|
count?: (props: typeof __VLS_6) => any;
|
|
@@ -92,16 +86,16 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsTex
|
|
|
92
86
|
}) => any) | undefined;
|
|
93
87
|
onPressEnter?: ((event: KeyboardEvent) => any) | undefined;
|
|
94
88
|
}>, {
|
|
89
|
+
required: boolean;
|
|
95
90
|
invalid: boolean;
|
|
96
91
|
resize: RsTextareaResize;
|
|
97
|
-
required: boolean;
|
|
98
92
|
disabled: boolean;
|
|
99
93
|
readonly: boolean;
|
|
94
|
+
rows: number;
|
|
100
95
|
validateTrigger: RsInputValidateTrigger;
|
|
101
96
|
clearable: boolean;
|
|
102
97
|
showCount: boolean;
|
|
103
98
|
showValidateMessage: boolean;
|
|
104
|
-
rows: number;
|
|
105
99
|
autosize: RsTextareaAutosize;
|
|
106
100
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
107
101
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -4,7 +4,10 @@ import { buildLocalInputRules, runFormFieldRules } from "../../form/src/form-rul
|
|
|
4
4
|
import { isRsFormItemBoundControl, useRsFormContext, useRsFormField, useRsFormItemContext } from "../../form/src/form-utils.js";
|
|
5
5
|
import { useResolvedRsComponentSize } from "../../_shared/src/resolve-size.js";
|
|
6
6
|
import { rsRadiusCss, useResolvedRsRadius } from "../../_shared/src/resolve-radius.js";
|
|
7
|
-
import {
|
|
7
|
+
import { normalizeRsInputValue } from "../../input/src/input-utils.js";
|
|
8
|
+
import RsVNodeHost_default from "../../vnode-host/src/RsVNodeHost.js";
|
|
9
|
+
import { applyTextareaAutosize, isRsTextareaAutosizeEnabled, resolveRsTextareaAutosizeSpec, resolveRsTextareaDisplayRows, resolveRsTextareaResize } from "./textarea-utils.js";
|
|
10
|
+
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onMounted, openBlock, ref, renderSlot, toDisplayString, unref, useAttrs, useId, useModel, watch, withModifiers } from "vue";
|
|
8
11
|
//#region src/components/textarea/src/RsTextarea.vue?vue&type=script&setup=true&lang.ts
|
|
9
12
|
var _hoisted_1 = {
|
|
10
13
|
key: 0,
|
|
@@ -36,6 +39,7 @@ var _hoisted_8 = {
|
|
|
36
39
|
class: "rs-field__hint"
|
|
37
40
|
};
|
|
38
41
|
var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
42
|
+
name: "RsTextarea",
|
|
39
43
|
inheritAttrs: false,
|
|
40
44
|
__name: "RsTextarea",
|
|
41
45
|
props: /*@__PURE__*/ mergeModels({
|
|
@@ -102,10 +106,10 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
102
106
|
const { t } = useRsI18n();
|
|
103
107
|
const model = useModel(__props, "modelValue", {
|
|
104
108
|
get(value) {
|
|
105
|
-
return
|
|
109
|
+
return normalizeRsInputValue(value);
|
|
106
110
|
},
|
|
107
111
|
set(value) {
|
|
108
|
-
return
|
|
112
|
+
return normalizeRsInputValue(value);
|
|
109
113
|
}
|
|
110
114
|
});
|
|
111
115
|
const props = __props;
|
|
@@ -133,6 +137,15 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
133
137
|
if (props.showValidateMessage && autoInvalid.value) return autoMessage.value;
|
|
134
138
|
return "";
|
|
135
139
|
});
|
|
140
|
+
const errorSlotProps = computed(() => ({
|
|
141
|
+
name: props.name,
|
|
142
|
+
message: displayMessage.value,
|
|
143
|
+
value: model.value
|
|
144
|
+
}));
|
|
145
|
+
const formErrorContent = computed(() => {
|
|
146
|
+
if (!displayMessage.value || !formContext?.renderError) return null;
|
|
147
|
+
return formContext.renderError(errorSlotProps.value);
|
|
148
|
+
});
|
|
136
149
|
const isInvalid = computed(() => {
|
|
137
150
|
if (boundToItem.value) return Boolean(formItem?.invalid.value || props.invalid);
|
|
138
151
|
return props.invalid || autoInvalid.value;
|
|
@@ -151,54 +164,26 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
151
164
|
if (!labelWidth) return void 0;
|
|
152
165
|
return { "--rs-field-label-width": labelWidth };
|
|
153
166
|
});
|
|
154
|
-
const autosizeEnabled = computed(() =>
|
|
155
|
-
const autosizeSpec = computed(() =>
|
|
156
|
-
const displayRows = computed(() =>
|
|
157
|
-
const resolvedResize = computed(() =>
|
|
167
|
+
const autosizeEnabled = computed(() => isRsTextareaAutosizeEnabled(props.autosize));
|
|
168
|
+
const autosizeSpec = computed(() => resolveRsTextareaAutosizeSpec(props.autosize));
|
|
169
|
+
const displayRows = computed(() => resolveRsTextareaDisplayRows(props.autosize, props.rows));
|
|
170
|
+
const resolvedResize = computed(() => resolveRsTextareaResize(props.resize, props.autosize));
|
|
158
171
|
const countText = computed(() => {
|
|
159
172
|
const n = model.value.length;
|
|
160
173
|
return props.maxlength != null ? `${n} / ${props.maxlength}` : String(n);
|
|
161
174
|
});
|
|
162
175
|
const countLimitReached = computed(() => props.maxlength != null && model.value.length >= props.maxlength);
|
|
163
176
|
const showClearButton = computed(() => props.clearable && !resolvedDisabled.value && !props.readonly && model.value.length > 0);
|
|
164
|
-
function parseLineHeight(el) {
|
|
165
|
-
const style = getComputedStyle(el);
|
|
166
|
-
const lh = Number.parseFloat(style.lineHeight);
|
|
167
|
-
if (Number.isFinite(lh) && lh > 0) return lh;
|
|
168
|
-
return (Number.parseFloat(style.fontSize) || 14) * 1.5;
|
|
169
|
-
}
|
|
170
|
-
function autosizePadding(el) {
|
|
171
|
-
const style = getComputedStyle(el);
|
|
172
|
-
const pad = Number.parseFloat(style.paddingTop) + Number.parseFloat(style.paddingBottom);
|
|
173
|
-
if (style.boxSizing !== "border-box") return 0;
|
|
174
|
-
const border = Number.parseFloat(style.borderTopWidth) + Number.parseFloat(style.borderBottomWidth);
|
|
175
|
-
return (Number.isFinite(pad) ? pad : 0) + (Number.isFinite(border) ? border : 0);
|
|
176
|
-
}
|
|
177
177
|
function adjustHeight() {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
el.style.height = "auto";
|
|
186
|
-
el.style.overflowY = "hidden";
|
|
187
|
-
const lineHeight = parseLineHeight(el);
|
|
188
|
-
const extra = autosizePadding(el);
|
|
189
|
-
const minRows = autosizeSpec.value.minRows ?? props.rows;
|
|
190
|
-
const maxRows = autosizeSpec.value.maxRows;
|
|
191
|
-
const min = lineHeight * minRows + extra;
|
|
192
|
-
const max = maxRows != null ? lineHeight * maxRows + extra : void 0;
|
|
193
|
-
let height = el.scrollHeight;
|
|
194
|
-
if (height < min) height = min;
|
|
195
|
-
if (max != null && height > max) {
|
|
196
|
-
height = max;
|
|
197
|
-
el.style.overflowY = "auto";
|
|
198
|
-
}
|
|
199
|
-
el.style.height = `${height}px`;
|
|
178
|
+
applyTextareaAutosize(textareaRef.value, {
|
|
179
|
+
enabled: autosizeEnabled.value,
|
|
180
|
+
minRows: autosizeSpec.value.minRows ?? props.rows,
|
|
181
|
+
maxRows: autosizeSpec.value.maxRows
|
|
182
|
+
});
|
|
200
183
|
}
|
|
201
184
|
function scheduleAdjustHeight() {
|
|
185
|
+
const el = textareaRef.value;
|
|
186
|
+
if (!autosizeEnabled.value && !el?.style.height) return;
|
|
202
187
|
nextTick(adjustHeight);
|
|
203
188
|
}
|
|
204
189
|
async function runValidate(trigger = "submit") {
|
|
@@ -229,7 +214,7 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
229
214
|
autoMessage.value = message;
|
|
230
215
|
}
|
|
231
216
|
function setValue(value) {
|
|
232
|
-
model.value =
|
|
217
|
+
model.value = normalizeRsInputValue(value);
|
|
233
218
|
scheduleAdjustHeight();
|
|
234
219
|
}
|
|
235
220
|
function clearValidation() {
|
|
@@ -262,6 +247,9 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
262
247
|
if (props.validateTrigger === "blur" || props.validateTrigger === "both") runValidate("blur");
|
|
263
248
|
emit("blur", event);
|
|
264
249
|
}
|
|
250
|
+
function onFocus(event) {
|
|
251
|
+
emit("focus", event);
|
|
252
|
+
}
|
|
265
253
|
function onKeydown(event) {
|
|
266
254
|
if (event.key !== "Enter" || composing.value) return;
|
|
267
255
|
emit("pressEnter", event);
|
|
@@ -346,7 +334,7 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
346
334
|
onCompositionend: onCompositionEnd,
|
|
347
335
|
onKeydown,
|
|
348
336
|
onBlur,
|
|
349
|
-
onFocus
|
|
337
|
+
onFocus
|
|
350
338
|
}), null, 16, _hoisted_5),
|
|
351
339
|
showClearButton.value ? (openBlock(), createElementBlock("button", {
|
|
352
340
|
key: 0,
|
|
@@ -354,7 +342,7 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
354
342
|
class: "rs-textarea__clear",
|
|
355
343
|
tabindex: "-1",
|
|
356
344
|
"aria-label": unref(t)("input.clear"),
|
|
357
|
-
onPointerdown: _cache[
|
|
345
|
+
onPointerdown: _cache[0] || (_cache[0] = withModifiers(() => {}, ["prevent"])),
|
|
358
346
|
onClick: onClear
|
|
359
347
|
}, [createVNode(RsIcon_default, {
|
|
360
348
|
name: "x",
|
|
@@ -375,7 +363,10 @@ var RsTextarea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
375
363
|
id: errorId.value,
|
|
376
364
|
class: "rs-field__error",
|
|
377
365
|
role: "alert"
|
|
378
|
-
}, [renderSlot(_ctx.$slots, "error",
|
|
366
|
+
}, [renderSlot(_ctx.$slots, "error", normalizeProps(guardReactiveProps(errorSlotProps.value)), () => [formErrorContent.value !== null && formErrorContent.value !== void 0 ? (openBlock(), createBlock(RsVNodeHost_default, {
|
|
367
|
+
key: 0,
|
|
368
|
+
content: formErrorContent.value
|
|
369
|
+
}, null, 8, ["content"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createTextVNode(toDisplayString(displayMessage.value), 1)], 64))], true)], 8, _hoisted_7)) : createCommentVNode("", true),
|
|
379
370
|
__props.hint ? (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(__props.hint), 1)) : createCommentVNode("", true)
|
|
380
371
|
])], 6);
|
|
381
372
|
};
|
|
@@ -3,6 +3,6 @@ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_exp
|
|
|
3
3
|
import RsTextarea_vue_vue_type_script_setup_true_lang_default from "./RsTextarea.impl.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/textarea/src/RsTextarea.vue
|
|
6
|
-
var RsTextarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsTextarea_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-
|
|
6
|
+
var RsTextarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsTextarea_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-4aaa8fd4"]]);
|
|
7
7
|
//#endregion
|
|
8
8
|
export { RsTextarea_default as default };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const RS_TEXTAREA_RESIZES: readonly ["none", "horizontal", "vertical", "both"];
|
|
2
|
+
export type RsTextareaResize = (typeof RS_TEXTAREA_RESIZES)[number];
|
|
3
|
+
/**
|
|
4
|
+
* 自适应高度。true 从 rows 起往下长;对象可锁 minRows / maxRows。
|
|
5
|
+
* 对齐 Ant Design autoSize、Element Plus autosize。
|
|
6
|
+
*/
|
|
7
|
+
export type RsTextareaAutosize = boolean | {
|
|
8
|
+
minRows?: number;
|
|
9
|
+
maxRows?: number;
|
|
10
|
+
};
|
|
11
|
+
export declare function isRsTextareaResize(value: unknown): value is RsTextareaResize;
|
|
12
|
+
export declare function isRsTextareaAutosizeEnabled(autosize?: RsTextareaAutosize | null): boolean;
|
|
13
|
+
export declare function resolveRsTextareaAutosizeSpec(autosize?: RsTextareaAutosize | null): {
|
|
14
|
+
minRows?: number;
|
|
15
|
+
maxRows?: number;
|
|
16
|
+
};
|
|
17
|
+
export declare function resolveRsTextareaDisplayRows(autosize?: RsTextareaAutosize | null, rows?: number): number;
|
|
18
|
+
/** autosize 开启时强制 none,与 Element Plus 一致。 */
|
|
19
|
+
export declare function resolveRsTextareaResize(resize?: RsTextareaResize | null, autosize?: RsTextareaAutosize | null): RsTextareaResize;
|
|
20
|
+
export declare function parseTextareaLineHeight(el: HTMLTextAreaElement): number;
|
|
21
|
+
export declare function textareaAutosizePadding(el: HTMLTextAreaElement): number;
|
|
22
|
+
/** 写入或清掉 autosize 高度。el 已卸载时直接返回。 */
|
|
23
|
+
export declare function applyTextareaAutosize(el: HTMLTextAreaElement | null, options: {
|
|
24
|
+
enabled: boolean;
|
|
25
|
+
minRows: number;
|
|
26
|
+
maxRows?: number;
|
|
27
|
+
}): void;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
//#region src/components/textarea/src/textarea-utils.ts
|
|
2
|
+
var RS_TEXTAREA_RESIZES = [
|
|
3
|
+
"none",
|
|
4
|
+
"horizontal",
|
|
5
|
+
"vertical",
|
|
6
|
+
"both"
|
|
7
|
+
];
|
|
8
|
+
function isRsTextareaResize(value) {
|
|
9
|
+
return typeof value === "string" && RS_TEXTAREA_RESIZES.includes(value);
|
|
10
|
+
}
|
|
11
|
+
function isRsTextareaAutosizeEnabled(autosize) {
|
|
12
|
+
return autosize === true || typeof autosize === "object" && autosize != null;
|
|
13
|
+
}
|
|
14
|
+
function resolveRsTextareaAutosizeSpec(autosize) {
|
|
15
|
+
return typeof autosize === "object" && autosize ? autosize : {};
|
|
16
|
+
}
|
|
17
|
+
function resolveRsTextareaDisplayRows(autosize, rows = 3) {
|
|
18
|
+
return resolveRsTextareaAutosizeSpec(autosize).minRows ?? rows;
|
|
19
|
+
}
|
|
20
|
+
/** autosize 开启时强制 none,与 Element Plus 一致。 */
|
|
21
|
+
function resolveRsTextareaResize(resize, autosize) {
|
|
22
|
+
if (isRsTextareaAutosizeEnabled(autosize)) return "none";
|
|
23
|
+
return isRsTextareaResize(resize) ? resize : "vertical";
|
|
24
|
+
}
|
|
25
|
+
function parseTextareaLineHeight(el) {
|
|
26
|
+
const style = getComputedStyle(el);
|
|
27
|
+
const lh = Number.parseFloat(style.lineHeight);
|
|
28
|
+
if (Number.isFinite(lh) && lh > 0) return lh;
|
|
29
|
+
return (Number.parseFloat(style.fontSize) || 14) * 1.5;
|
|
30
|
+
}
|
|
31
|
+
function textareaAutosizePadding(el) {
|
|
32
|
+
const style = getComputedStyle(el);
|
|
33
|
+
const pad = Number.parseFloat(style.paddingTop) + Number.parseFloat(style.paddingBottom);
|
|
34
|
+
if (style.boxSizing !== "border-box") return 0;
|
|
35
|
+
const border = Number.parseFloat(style.borderTopWidth) + Number.parseFloat(style.borderBottomWidth);
|
|
36
|
+
return (Number.isFinite(pad) ? pad : 0) + (Number.isFinite(border) ? border : 0);
|
|
37
|
+
}
|
|
38
|
+
/** 写入或清掉 autosize 高度。el 已卸载时直接返回。 */
|
|
39
|
+
function applyTextareaAutosize(el, options) {
|
|
40
|
+
if (!el) return;
|
|
41
|
+
if (!options.enabled) {
|
|
42
|
+
el.style.height = "";
|
|
43
|
+
el.style.overflowY = "";
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
el.style.height = "auto";
|
|
47
|
+
el.style.overflowY = "hidden";
|
|
48
|
+
const lineHeight = parseTextareaLineHeight(el);
|
|
49
|
+
const extra = textareaAutosizePadding(el);
|
|
50
|
+
const min = lineHeight * options.minRows + extra;
|
|
51
|
+
const max = options.maxRows != null ? lineHeight * options.maxRows + extra : void 0;
|
|
52
|
+
let height = el.scrollHeight;
|
|
53
|
+
if (height < min) height = min;
|
|
54
|
+
if (max != null && height > max) {
|
|
55
|
+
height = max;
|
|
56
|
+
el.style.overflowY = "auto";
|
|
57
|
+
}
|
|
58
|
+
el.style.height = `${height}px`;
|
|
59
|
+
}
|
|
60
|
+
//#endregion
|
|
61
|
+
export { RS_TEXTAREA_RESIZES, applyTextareaAutosize, isRsTextareaAutosizeEnabled, isRsTextareaResize, parseTextareaLineHeight, resolveRsTextareaAutosizeSpec, resolveRsTextareaDisplayRows, resolveRsTextareaResize, textareaAutosizePadding };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { default as RsTimePicker } from './src/RsTimePicker.js';
|
|
2
2
|
export { default as RsTimePickerColumns } from './src/RsTimePickerColumns.js';
|
|
3
|
-
export type {
|
|
4
|
-
export {
|
|
3
|
+
export type { RsTimePickerExpose, RsTimePickerInstance, RsTimePickerLabelPosition, } from './src/RsTimePicker.js';
|
|
4
|
+
export type { RsParsedTime, RsTimePickerDisabledTime, RsTimePickerGetPopupContainer, RsTimePickerHourCycle, RsTimePickerModelValue, RsTimePickerShortcut, RsTimeRangeValue, RsTimeUnit, RsTimeUnitOption, } from './src/time-picker-utils';
|
|
5
|
+
export { EMPTY_TIME_RANGE, TIME_HOUR12_OPTIONS, TIME_HOUR_OPTIONS, TIME_SECOND_OPTIONS, formatTimeDisplay, formatTimeFromParts, formatTimeParts, formatTimeRangeDisplay, formatTimeUnitLabel, formatTimeValue, getTimeMinuteOptions, isTimeRangeEmpty, isTimeRangeOrdered, isTimeWithinBounds, parseTimeValue, scrollTimeColumnToValue, toHour12, toHour24, } from './src/time-picker-utils';
|
|
5
6
|
export type { RsTimeValidationError, RsTimeValidationResult, RsTimeValidationRules } from './src/time-validation';
|
|
6
7
|
export { validateTimeValue } from './src/time-validation';
|
|
7
8
|
export type { RsTimeRangeValidationError, RsTimeRangeValidationResult, RsTimeRangeValidationRules, } from './src/time-range-validation';
|