@zerodep-dev/vue-tsx-pro-ui 0.0.0-stage → 0.1.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/LICENSE +21 -0
- package/README.md +32 -2
- package/dist/base/Badge.d.ts +28 -0
- package/dist/base/Badge.js +72 -0
- package/dist/base/Badge.js.map +1 -0
- package/dist/base/Blockquote.d.ts +13 -0
- package/dist/base/Blockquote.js +26 -0
- package/dist/base/Blockquote.js.map +1 -0
- package/dist/base/Button.d.ts +18 -0
- package/dist/base/Button.js +86 -0
- package/dist/base/Button.js.map +1 -0
- package/dist/base/ButtonBase.d.ts +21 -0
- package/dist/base/ButtonBase.js +51 -0
- package/dist/base/ButtonBase.js.map +1 -0
- package/dist/base/ButtonGroup.d.ts +24 -0
- package/dist/base/ButtonGroup.js +52 -0
- package/dist/base/ButtonGroup.js.map +1 -0
- package/dist/base/CloseButton.d.ts +15 -0
- package/dist/base/CloseButton.js +38 -0
- package/dist/base/CloseButton.js.map +1 -0
- package/dist/base/Code.d.ts +13 -0
- package/dist/base/Code.js +27 -0
- package/dist/base/Code.js.map +1 -0
- package/dist/base/CodeBlock.d.ts +89 -0
- package/dist/base/CodeBlock.js +265 -0
- package/dist/base/CodeBlock.js.map +1 -0
- package/dist/base/CopyButton.d.ts +40 -0
- package/dist/base/CopyButton.js +113 -0
- package/dist/base/CopyButton.js.map +1 -0
- package/dist/base/Heading.d.ts +49 -0
- package/dist/base/Heading.js +122 -0
- package/dist/base/Heading.js.map +1 -0
- package/dist/base/Icon.d.ts +48 -0
- package/dist/base/Icon.js +110 -0
- package/dist/base/Icon.js.map +1 -0
- package/dist/base/IconButton.d.ts +34 -0
- package/dist/base/IconButton.js +81 -0
- package/dist/base/IconButton.js.map +1 -0
- package/dist/base/IconLinkButton.d.ts +34 -0
- package/dist/base/IconLinkButton.js +81 -0
- package/dist/base/IconLinkButton.js.map +1 -0
- package/dist/base/Indicator.d.ts +126 -0
- package/dist/base/Indicator.js +158 -0
- package/dist/base/Indicator.js.map +1 -0
- package/dist/base/Kbd.d.ts +13 -0
- package/dist/base/Kbd.js +34 -0
- package/dist/base/Kbd.js.map +1 -0
- package/dist/base/Link.d.ts +61 -0
- package/dist/base/Link.js +114 -0
- package/dist/base/Link.js.map +1 -0
- package/dist/base/LinkButton.d.ts +18 -0
- package/dist/base/LinkButton.js +109 -0
- package/dist/base/LinkButton.js.map +1 -0
- package/dist/base/List.d.ts +61 -0
- package/dist/base/List.js +116 -0
- package/dist/base/List.js.map +1 -0
- package/dist/base/Mark.d.ts +13 -0
- package/dist/base/Mark.js +23 -0
- package/dist/base/Mark.js.map +1 -0
- package/dist/base/Spinner.d.ts +20 -0
- package/dist/base/Spinner.js +59 -0
- package/dist/base/Spinner.js.map +1 -0
- package/dist/base/StatusDot.d.ts +48 -0
- package/dist/base/StatusDot.js +62 -0
- package/dist/base/StatusDot.js.map +1 -0
- package/dist/base/Tag.d.ts +29 -0
- package/dist/base/Tag.js +92 -0
- package/dist/base/Tag.js.map +1 -0
- package/dist/base/Text.d.ts +57 -0
- package/dist/base/Text.js +74 -0
- package/dist/base/Text.js.map +1 -0
- package/dist/base/VisuallyHidden.d.ts +13 -0
- package/dist/base/VisuallyHidden.js +28 -0
- package/dist/base/VisuallyHidden.js.map +1 -0
- package/dist/base/badge-styles.d.ts +57 -0
- package/dist/base/badge-styles.js +329 -0
- package/dist/base/badge-styles.js.map +1 -0
- package/dist/base/button-core.d.ts +191 -0
- package/dist/base/button-core.js +660 -0
- package/dist/base/button-core.js.map +1 -0
- package/dist/charts/AreaChart.d.ts +18 -0
- package/dist/charts/AreaChart.js +90 -0
- package/dist/charts/AreaChart.js.map +1 -0
- package/dist/charts/BarChart.d.ts +19 -0
- package/dist/charts/BarChart.js +88 -0
- package/dist/charts/BarChart.js.map +1 -0
- package/dist/charts/ChordChart.d.ts +48 -0
- package/dist/charts/ChordChart.js +149 -0
- package/dist/charts/ChordChart.js.map +1 -0
- package/dist/charts/ComboChart.d.ts +30 -0
- package/dist/charts/ComboChart.js +157 -0
- package/dist/charts/ComboChart.js.map +1 -0
- package/dist/charts/DonutChart.d.ts +65 -0
- package/dist/charts/DonutChart.js +162 -0
- package/dist/charts/DonutChart.js.map +1 -0
- package/dist/charts/FunnelChart.d.ts +69 -0
- package/dist/charts/FunnelChart.js +181 -0
- package/dist/charts/FunnelChart.js.map +1 -0
- package/dist/charts/GraphChart.d.ts +135 -0
- package/dist/charts/GraphChart.js +274 -0
- package/dist/charts/GraphChart.js.map +1 -0
- package/dist/charts/LineChart.d.ts +50 -0
- package/dist/charts/LineChart.js +94 -0
- package/dist/charts/LineChart.js.map +1 -0
- package/dist/charts/MapChart.d.ts +167 -0
- package/dist/charts/MapChart.js +627 -0
- package/dist/charts/MapChart.js.map +1 -0
- package/dist/charts/RadarChart.d.ts +60 -0
- package/dist/charts/RadarChart.js +224 -0
- package/dist/charts/RadarChart.js.map +1 -0
- package/dist/charts/SankeyChart.d.ts +57 -0
- package/dist/charts/SankeyChart.js +150 -0
- package/dist/charts/SankeyChart.js.map +1 -0
- package/dist/charts/ScatterChart.d.ts +18 -0
- package/dist/charts/ScatterChart.js +82 -0
- package/dist/charts/ScatterChart.js.map +1 -0
- package/dist/charts/TimelineChart.d.ts +71 -0
- package/dist/charts/TimelineChart.js +267 -0
- package/dist/charts/TimelineChart.js.map +1 -0
- package/dist/charts/TreemapChart.d.ts +40 -0
- package/dist/charts/TreemapChart.js +155 -0
- package/dist/charts/TreemapChart.js.map +1 -0
- package/dist/charts/WaterfallChart.d.ts +61 -0
- package/dist/charts/WaterfallChart.js +167 -0
- package/dist/charts/WaterfallChart.js.map +1 -0
- package/dist/charts/XYChart.d.ts +206 -0
- package/dist/charts/XYChart.js +520 -0
- package/dist/charts/XYChart.js.map +1 -0
- package/dist/charts/axis-ticks.d.ts +23 -0
- package/dist/charts/axis-ticks.js +59 -0
- package/dist/charts/axis-ticks.js.map +1 -0
- package/dist/charts/export.d.ts +17 -0
- package/dist/charts/export.js +65 -0
- package/dist/charts/export.js.map +1 -0
- package/dist/charts/flow.d.ts +53 -0
- package/dist/charts/flow.js +29 -0
- package/dist/charts/flow.js.map +1 -0
- package/dist/charts/frame.d.ts +147 -0
- package/dist/charts/frame.js +358 -0
- package/dist/charts/frame.js.map +1 -0
- package/dist/charts/index.d.ts +30 -0
- package/dist/charts/index.js +24 -0
- package/dist/charts/label-layout.d.ts +59 -0
- package/dist/charts/label-layout.js +64 -0
- package/dist/charts/label-layout.js.map +1 -0
- package/dist/charts/series.d.ts +36 -0
- package/dist/charts/series.js +60 -0
- package/dist/charts/series.js.map +1 -0
- package/dist/charts/single.d.ts +41 -0
- package/dist/charts/single.js +65 -0
- package/dist/charts/single.js.map +1 -0
- package/dist/config/Provider.d.ts +52 -0
- package/dist/config/Provider.js +111 -0
- package/dist/config/Provider.js.map +1 -0
- package/dist/config/context.d.ts +90 -0
- package/dist/config/context.js +58 -0
- package/dist/config/context.js.map +1 -0
- package/dist/config/createUi.d.ts +52 -0
- package/dist/config/createUi.js +96 -0
- package/dist/config/createUi.js.map +1 -0
- package/dist/config/defaults.d.ts +71 -0
- package/dist/config/defaults.js +45 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/lang/en-US.d.ts +3 -0
- package/dist/config/lang/en-US.js +386 -0
- package/dist/config/lang/en-US.js.map +1 -0
- package/dist/config/lang/format.d.ts +50 -0
- package/dist/config/lang/format.js +113 -0
- package/dist/config/lang/format.js.map +1 -0
- package/dist/config/lang/lang.d.ts +653 -0
- package/dist/config/lang/lang.js +22 -0
- package/dist/config/lang/lang.js.map +1 -0
- package/dist/config/lang/messages.d.ts +12 -0
- package/dist/config/lang/messages.js +36 -0
- package/dist/config/lang/messages.js.map +1 -0
- package/dist/config/lang/zh-CN.d.ts +3 -0
- package/dist/config/lang/zh-CN.js +386 -0
- package/dist/config/lang/zh-CN.js.map +1 -0
- package/dist/config/pinyin.d.ts +3 -0
- package/dist/config/pinyin.js +26 -0
- package/dist/config/pinyin.js.map +1 -0
- package/dist/config/query-state.d.ts +61 -0
- package/dist/config/query-state.js +113 -0
- package/dist/config/query-state.js.map +1 -0
- package/dist/config/shiki.d.ts +13 -0
- package/dist/config/shiki.js +97 -0
- package/dist/config/shiki.js.map +1 -0
- package/dist/config/styles.d.ts +108 -0
- package/dist/config/styles.js +59 -0
- package/dist/config/styles.js.map +1 -0
- package/dist/config/theme/boot.d.ts +97 -0
- package/dist/config/theme/boot.js +90 -0
- package/dist/config/theme/boot.js.map +1 -0
- package/dist/config/theme/builtin.d.ts +21 -0
- package/dist/config/theme/builtin.js +58 -0
- package/dist/config/theme/builtin.js.map +1 -0
- package/dist/config/theme/coffee.d.ts +84 -0
- package/dist/config/theme/coffee.js +102 -0
- package/dist/config/theme/coffee.js.map +1 -0
- package/dist/config/theme/cyberpunk.d.ts +110 -0
- package/dist/config/theme/cyberpunk.js +125 -0
- package/dist/config/theme/cyberpunk.js.map +1 -0
- package/dist/config/theme/dark.d.ts +90 -0
- package/dist/config/theme/dark.js +106 -0
- package/dist/config/theme/dark.js.map +1 -0
- package/dist/config/theme/festive.d.ts +93 -0
- package/dist/config/theme/festive.js +110 -0
- package/dist/config/theme/festive.js.map +1 -0
- package/dist/config/theme/forest.d.ts +93 -0
- package/dist/config/theme/forest.js +109 -0
- package/dist/config/theme/forest.js.map +1 -0
- package/dist/config/theme/high-contrast.d.ts +103 -0
- package/dist/config/theme/high-contrast.js +119 -0
- package/dist/config/theme/high-contrast.js.map +1 -0
- package/dist/config/theme/lemon.d.ts +103 -0
- package/dist/config/theme/lemon.js +119 -0
- package/dist/config/theme/lemon.js.map +1 -0
- package/dist/config/theme/light.d.ts +107 -0
- package/dist/config/theme/light.js +122 -0
- package/dist/config/theme/light.js.map +1 -0
- package/dist/config/theme/midnight.d.ts +86 -0
- package/dist/config/theme/midnight.js +103 -0
- package/dist/config/theme/midnight.js.map +1 -0
- package/dist/config/theme/ocean.d.ts +103 -0
- package/dist/config/theme/ocean.js +119 -0
- package/dist/config/theme/ocean.js.map +1 -0
- package/dist/config/theme/paper.d.ts +101 -0
- package/dist/config/theme/paper.js +117 -0
- package/dist/config/theme/paper.js.map +1 -0
- package/dist/config/theme/preference.d.ts +34 -0
- package/dist/config/theme/preference.js +67 -0
- package/dist/config/theme/preference.js.map +1 -0
- package/dist/config/theme/sakura.d.ts +103 -0
- package/dist/config/theme/sakura.js +119 -0
- package/dist/config/theme/sakura.js.map +1 -0
- package/dist/config/theme/theme.d.ts +59 -0
- package/dist/config/theme/theme.js +68 -0
- package/dist/config/theme/theme.js.map +1 -0
- package/dist/config/theme/token-names.d.ts +1897 -0
- package/dist/config/theme/tokens.d.ts +833 -0
- package/dist/config/theme/tokens.js +480 -0
- package/dist/config/theme/tokens.js.map +1 -0
- package/dist/config/vue-router.d.ts +67 -0
- package/dist/config/vue-router.js +143 -0
- package/dist/config/vue-router.js.map +1 -0
- package/dist/date/Calendar.d.ts +36 -0
- package/dist/date/Calendar.js +83 -0
- package/dist/date/Calendar.js.map +1 -0
- package/dist/date/CalendarBoard.d.ts +79 -0
- package/dist/date/CalendarBoard.js +403 -0
- package/dist/date/CalendarBoard.js.map +1 -0
- package/dist/date/CalendarView.d.ts +86 -0
- package/dist/date/CalendarView.js +427 -0
- package/dist/date/CalendarView.js.map +1 -0
- package/dist/date/Countdown.d.ts +45 -0
- package/dist/date/Countdown.js +75 -0
- package/dist/date/Countdown.js.map +1 -0
- package/dist/date/DateField.d.ts +34 -0
- package/dist/date/DateField.js +124 -0
- package/dist/date/DateField.js.map +1 -0
- package/dist/date/DatePicker.d.ts +41 -0
- package/dist/date/DatePicker.js +272 -0
- package/dist/date/DatePicker.js.map +1 -0
- package/dist/date/DateRangePicker.d.ts +71 -0
- package/dist/date/DateRangePicker.js +411 -0
- package/dist/date/DateRangePicker.js.map +1 -0
- package/dist/date/DateSegmentGroup.d.ts +38 -0
- package/dist/date/DateSegmentGroup.js +176 -0
- package/dist/date/DateSegmentGroup.js.map +1 -0
- package/dist/date/DateTime.d.ts +21 -0
- package/dist/date/DateTime.js +39 -0
- package/dist/date/DateTime.js.map +1 -0
- package/dist/date/QuarterCalendar.d.ts +22 -0
- package/dist/date/QuarterCalendar.js +231 -0
- package/dist/date/QuarterCalendar.js.map +1 -0
- package/dist/date/RangeCalendar.d.ts +24 -0
- package/dist/date/RangeCalendar.js +89 -0
- package/dist/date/RangeCalendar.js.map +1 -0
- package/dist/date/RelativeTime.d.ts +16 -0
- package/dist/date/RelativeTime.js +61 -0
- package/dist/date/RelativeTime.js.map +1 -0
- package/dist/date/SegmentedField.d.ts +60 -0
- package/dist/date/SegmentedField.js +175 -0
- package/dist/date/SegmentedField.js.map +1 -0
- package/dist/date/TimeField.d.ts +36 -0
- package/dist/date/TimeField.js +56 -0
- package/dist/date/TimeField.js.map +1 -0
- package/dist/date/TimePicker.d.ts +25 -0
- package/dist/date/TimePicker.js +206 -0
- package/dist/date/TimePicker.js.map +1 -0
- package/dist/date/calendar-state.d.ts +119 -0
- package/dist/date/calendar-state.js +267 -0
- package/dist/date/calendar-state.js.map +1 -0
- package/dist/date/clock.d.ts +11 -0
- package/dist/date/clock.js +37 -0
- package/dist/date/clock.js.map +1 -0
- package/dist/date/date-locale.d.ts +67 -0
- package/dist/date/date-locale.js +89 -0
- package/dist/date/date-locale.js.map +1 -0
- package/dist/date/date-segments.d.ts +132 -0
- package/dist/date/date-segments.js +410 -0
- package/dist/date/date-segments.js.map +1 -0
- package/dist/date/picker-popover.d.ts +88 -0
- package/dist/date/picker-popover.js +126 -0
- package/dist/date/picker-popover.js.map +1 -0
- package/dist/diagram/Diagram.d.ts +223 -0
- package/dist/diagram/Diagram.js +1121 -0
- package/dist/diagram/Diagram.js.map +1 -0
- package/dist/diagram/DiagramControls.d.ts +35 -0
- package/dist/diagram/DiagramControls.js +114 -0
- package/dist/diagram/DiagramControls.js.map +1 -0
- package/dist/diagram/DiagramLanes.d.ts +49 -0
- package/dist/diagram/DiagramLanes.js +92 -0
- package/dist/diagram/DiagramLanes.js.map +1 -0
- package/dist/diagram/DiagramMinimap.d.ts +39 -0
- package/dist/diagram/DiagramMinimap.js +133 -0
- package/dist/diagram/DiagramMinimap.js.map +1 -0
- package/dist/diagram/DiagramNode.d.ts +65 -0
- package/dist/diagram/DiagramNode.js +142 -0
- package/dist/diagram/DiagramNode.js.map +1 -0
- package/dist/diagram/controller.d.ts +68 -0
- package/dist/diagram/controller.js +117 -0
- package/dist/diagram/controller.js.map +1 -0
- package/dist/diagram/export.d.ts +14 -0
- package/dist/diagram/export.js +115 -0
- package/dist/diagram/export.js.map +1 -0
- package/dist/diagram/geometry.d.ts +65 -0
- package/dist/diagram/geometry.js +219 -0
- package/dist/diagram/geometry.js.map +1 -0
- package/dist/diagram/index.d.ts +19 -0
- package/dist/diagram/index.js +11 -0
- package/dist/diagram/messages.d.ts +28 -0
- package/dist/diagram/messages.js +30 -0
- package/dist/diagram/messages.js.map +1 -0
- package/dist/diagram/route.d.ts +81 -0
- package/dist/diagram/route.js +327 -0
- package/dist/diagram/route.js.map +1 -0
- package/dist/display/Accordion.d.ts +71 -0
- package/dist/display/Accordion.js +219 -0
- package/dist/display/Accordion.js.map +1 -0
- package/dist/display/AnimatedNumber.d.ts +44 -0
- package/dist/display/AnimatedNumber.js +97 -0
- package/dist/display/AnimatedNumber.js.map +1 -0
- package/dist/display/Avatar.d.ts +74 -0
- package/dist/display/Avatar.js +158 -0
- package/dist/display/Avatar.js.map +1 -0
- package/dist/display/AvatarGroup.d.ts +29 -0
- package/dist/display/AvatarGroup.js +67 -0
- package/dist/display/AvatarGroup.js.map +1 -0
- package/dist/display/Card.d.ts +219 -0
- package/dist/display/Card.js +319 -0
- package/dist/display/Card.js.map +1 -0
- package/dist/display/Checklist.d.ts +93 -0
- package/dist/display/Checklist.js +260 -0
- package/dist/display/Checklist.js.map +1 -0
- package/dist/display/Collapse.d.ts +24 -0
- package/dist/display/Collapse.js +65 -0
- package/dist/display/Collapse.js.map +1 -0
- package/dist/display/Collapsible.d.ts +12 -0
- package/dist/display/Collapsible.js +41 -0
- package/dist/display/Collapsible.js.map +1 -0
- package/dist/display/Descriptions.d.ts +88 -0
- package/dist/display/Descriptions.js +185 -0
- package/dist/display/Descriptions.js.map +1 -0
- package/dist/display/Ellipsis.d.ts +29 -0
- package/dist/display/Ellipsis.js +111 -0
- package/dist/display/Ellipsis.js.map +1 -0
- package/dist/display/FieldCompare.d.ts +58 -0
- package/dist/display/FieldCompare.js +205 -0
- package/dist/display/FieldCompare.js.map +1 -0
- package/dist/display/Gauge.d.ts +60 -0
- package/dist/display/Gauge.js +215 -0
- package/dist/display/Gauge.js.map +1 -0
- package/dist/display/Image.d.ts +87 -0
- package/dist/display/Image.js +212 -0
- package/dist/display/Image.js.map +1 -0
- package/dist/display/ItemList.d.ts +69 -0
- package/dist/display/ItemList.js +147 -0
- package/dist/display/ItemList.js.map +1 -0
- package/dist/display/Marquee.d.ts +59 -0
- package/dist/display/Marquee.js +155 -0
- package/dist/display/Marquee.js.map +1 -0
- package/dist/display/ProportionBar.d.ts +55 -0
- package/dist/display/ProportionBar.js +99 -0
- package/dist/display/ProportionBar.js.map +1 -0
- package/dist/display/Sortable.d.ts +43 -0
- package/dist/display/Sortable.js +163 -0
- package/dist/display/Sortable.js.map +1 -0
- package/dist/display/Sparkline.d.ts +48 -0
- package/dist/display/Sparkline.js +130 -0
- package/dist/display/Sparkline.js.map +1 -0
- package/dist/display/Stat.d.ts +105 -0
- package/dist/display/Stat.js +268 -0
- package/dist/display/Stat.js.map +1 -0
- package/dist/display/Timeline.d.ts +106 -0
- package/dist/display/Timeline.js +257 -0
- package/dist/display/Timeline.js.map +1 -0
- package/dist/display/Tree.d.ts +132 -0
- package/dist/display/Tree.js +645 -0
- package/dist/display/Tree.js.map +1 -0
- package/dist/display/VirtualList.d.ts +80 -0
- package/dist/display/VirtualList.js +166 -0
- package/dist/display/VirtualList.js.map +1 -0
- package/dist/display/Watermark.d.ts +39 -0
- package/dist/display/Watermark.js +130 -0
- package/dist/display/Watermark.js.map +1 -0
- package/dist/docs-kit/CodeGroup.d.ts +29 -0
- package/dist/docs-kit/CodeGroup.js +81 -0
- package/dist/docs-kit/CodeGroup.js.map +1 -0
- package/dist/docs-kit/CodePreview.d.ts +60 -0
- package/dist/docs-kit/CodePreview.js +183 -0
- package/dist/docs-kit/CodePreview.js.map +1 -0
- package/dist/docs-kit/ColorSwatch.d.ts +28 -0
- package/dist/docs-kit/ColorSwatch.js +85 -0
- package/dist/docs-kit/ColorSwatch.js.map +1 -0
- package/dist/docs-kit/PropsTable.d.ts +73 -0
- package/dist/docs-kit/PropsTable.js +122 -0
- package/dist/docs-kit/PropsTable.js.map +1 -0
- package/dist/docs-kit/index.d.ts +13 -0
- package/dist/docs-kit/index.js +6 -0
- package/dist/docs-kit/messages.d.ts +25 -0
- package/dist/docs-kit/messages.js +30 -0
- package/dist/docs-kit/messages.js.map +1 -0
- package/dist/feedback/Alert.d.ts +83 -0
- package/dist/feedback/Alert.js +179 -0
- package/dist/feedback/Alert.js.map +1 -0
- package/dist/feedback/Banner.d.ts +60 -0
- package/dist/feedback/Banner.js +122 -0
- package/dist/feedback/Banner.js.map +1 -0
- package/dist/feedback/Empty.d.ts +38 -0
- package/dist/feedback/Empty.js +114 -0
- package/dist/feedback/Empty.js.map +1 -0
- package/dist/feedback/LoadingBar.d.ts +45 -0
- package/dist/feedback/LoadingBar.js +124 -0
- package/dist/feedback/LoadingBar.js.map +1 -0
- package/dist/feedback/LoadingOverlay.d.ts +29 -0
- package/dist/feedback/LoadingOverlay.js +70 -0
- package/dist/feedback/LoadingOverlay.js.map +1 -0
- package/dist/feedback/Progress.d.ts +215 -0
- package/dist/feedback/Progress.js +437 -0
- package/dist/feedback/Progress.js.map +1 -0
- package/dist/feedback/Result.d.ts +69 -0
- package/dist/feedback/Result.js +165 -0
- package/dist/feedback/Result.js.map +1 -0
- package/dist/feedback/Skeleton.d.ts +50 -0
- package/dist/feedback/Skeleton.js +100 -0
- package/dist/feedback/Skeleton.js.map +1 -0
- package/dist/feedback/SkeletonText.d.ts +25 -0
- package/dist/feedback/SkeletonText.js +40 -0
- package/dist/feedback/SkeletonText.js.map +1 -0
- package/dist/feedback/Toast.d.ts +204 -0
- package/dist/feedback/Toast.js +572 -0
- package/dist/feedback/Toast.js.map +1 -0
- package/dist/form/Field.d.ts +158 -0
- package/dist/form/Field.js +327 -0
- package/dist/form/Field.js.map +1 -0
- package/dist/form/Form.d.ts +14 -0
- package/dist/form/Form.js +66 -0
- package/dist/form/Form.js.map +1 -0
- package/dist/form/FormErrorSummary.d.ts +23 -0
- package/dist/form/FormErrorSummary.js +102 -0
- package/dist/form/FormErrorSummary.js.map +1 -0
- package/dist/form/FormSection.d.ts +66 -0
- package/dist/form/FormSection.js +227 -0
- package/dist/form/FormSection.js.map +1 -0
- package/dist/form/FormValue.d.ts +17 -0
- package/dist/form/FormValue.js +40 -0
- package/dist/form/FormValue.js.map +1 -0
- package/dist/form/field-layout.d.ts +34 -0
- package/dist/form/field-layout.js +39 -0
- package/dist/form/field-layout.js.map +1 -0
- package/dist/form/form-constraints.d.ts +38 -0
- package/dist/form/form-constraints.js +131 -0
- package/dist/form/form-constraints.js.map +1 -0
- package/dist/form/leave-confirmation.d.ts +9 -0
- package/dist/form/leave-confirmation.js +31 -0
- package/dist/form/leave-confirmation.js.map +1 -0
- package/dist/form/schemas.d.ts +52 -0
- package/dist/form/schemas.js +97 -0
- package/dist/form/schemas.js.map +1 -0
- package/dist/form/useForm.d.ts +192 -0
- package/dist/form/useForm.js +394 -0
- package/dist/form/useForm.js.map +1 -0
- package/dist/index.d.ts +282 -0
- package/dist/index.js +282 -0
- package/dist/input/Autocomplete.d.ts +14 -0
- package/dist/input/Autocomplete.js +35 -0
- package/dist/input/Autocomplete.js.map +1 -0
- package/dist/input/Cascader.d.ts +86 -0
- package/dist/input/Cascader.js +593 -0
- package/dist/input/Cascader.js.map +1 -0
- package/dist/input/CharacterCount.d.ts +21 -0
- package/dist/input/CharacterCount.js +47 -0
- package/dist/input/CharacterCount.js.map +1 -0
- package/dist/input/Checkbox.d.ts +93 -0
- package/dist/input/Checkbox.js +250 -0
- package/dist/input/Checkbox.js.map +1 -0
- package/dist/input/ColorField.d.ts +37 -0
- package/dist/input/ColorField.js +143 -0
- package/dist/input/ColorField.js.map +1 -0
- package/dist/input/Combobox.d.ts +75 -0
- package/dist/input/Combobox.js +321 -0
- package/dist/input/Combobox.js.map +1 -0
- package/dist/input/ConditionBuilder.d.ts +55 -0
- package/dist/input/ConditionBuilder.js +471 -0
- package/dist/input/ConditionBuilder.js.map +1 -0
- package/dist/input/ControlGroup.d.ts +26 -0
- package/dist/input/ControlGroup.js +50 -0
- package/dist/input/ControlGroup.js.map +1 -0
- package/dist/input/FileDrop.d.ts +49 -0
- package/dist/input/FileDrop.js +201 -0
- package/dist/input/FileDrop.js.map +1 -0
- package/dist/input/ListPopover.d.ts +39 -0
- package/dist/input/ListPopover.js +81 -0
- package/dist/input/ListPopover.js.map +1 -0
- package/dist/input/Listbox.d.ts +91 -0
- package/dist/input/Listbox.js +408 -0
- package/dist/input/Listbox.js.map +1 -0
- package/dist/input/Mentions.d.ts +74 -0
- package/dist/input/Mentions.js +287 -0
- package/dist/input/Mentions.js.map +1 -0
- package/dist/input/NumberField.d.ts +64 -0
- package/dist/input/NumberField.js +288 -0
- package/dist/input/NumberField.js.map +1 -0
- package/dist/input/NumberRangeField.d.ts +58 -0
- package/dist/input/NumberRangeField.js +157 -0
- package/dist/input/NumberRangeField.js.map +1 -0
- package/dist/input/OtpField.d.ts +58 -0
- package/dist/input/OtpField.js +200 -0
- package/dist/input/OtpField.js.map +1 -0
- package/dist/input/PeoplePicker.d.ts +42 -0
- package/dist/input/PeoplePicker.js +185 -0
- package/dist/input/PeoplePicker.js.map +1 -0
- package/dist/input/PeoplePickerPanel.d.ts +42 -0
- package/dist/input/PeoplePickerPanel.js +357 -0
- package/dist/input/PeoplePickerPanel.js.map +1 -0
- package/dist/input/Radio.d.ts +90 -0
- package/dist/input/Radio.js +211 -0
- package/dist/input/Radio.js.map +1 -0
- package/dist/input/Rating.d.ts +62 -0
- package/dist/input/Rating.js +225 -0
- package/dist/input/Rating.js.map +1 -0
- package/dist/input/Select.d.ts +97 -0
- package/dist/input/Select.js +455 -0
- package/dist/input/Select.js.map +1 -0
- package/dist/input/SelectedTags.d.ts +28 -0
- package/dist/input/SelectedTags.js +81 -0
- package/dist/input/SelectedTags.js.map +1 -0
- package/dist/input/Slider.d.ts +99 -0
- package/dist/input/Slider.js +343 -0
- package/dist/input/Slider.js.map +1 -0
- package/dist/input/Switch.d.ts +63 -0
- package/dist/input/Switch.js +198 -0
- package/dist/input/Switch.js.map +1 -0
- package/dist/input/TagsInput.d.ts +70 -0
- package/dist/input/TagsInput.js +314 -0
- package/dist/input/TagsInput.js.map +1 -0
- package/dist/input/TextField.d.ts +51 -0
- package/dist/input/TextField.js +185 -0
- package/dist/input/TextField.js.map +1 -0
- package/dist/input/Textarea.d.ts +50 -0
- package/dist/input/Textarea.js +146 -0
- package/dist/input/Textarea.js.map +1 -0
- package/dist/input/ToggleGroup.d.ts +82 -0
- package/dist/input/ToggleGroup.js +211 -0
- package/dist/input/ToggleGroup.js.map +1 -0
- package/dist/input/Transfer.d.ts +67 -0
- package/dist/input/Transfer.js +407 -0
- package/dist/input/Transfer.js.map +1 -0
- package/dist/input/TreeSelect.d.ts +94 -0
- package/dist/input/TreeSelect.js +412 -0
- package/dist/input/TreeSelect.js.map +1 -0
- package/dist/input/Upload.d.ts +143 -0
- package/dist/input/Upload.js +597 -0
- package/dist/input/Upload.js.map +1 -0
- package/dist/input/choice-styles.d.ts +117 -0
- package/dist/input/choice-styles.js +176 -0
- package/dist/input/choice-styles.js.map +1 -0
- package/dist/input/condition.d.ts +153 -0
- package/dist/input/condition.js +169 -0
- package/dist/input/condition.js.map +1 -0
- package/dist/input/control.d.ts +160 -0
- package/dist/input/control.js +236 -0
- package/dist/input/control.js.map +1 -0
- package/dist/input/list-state.d.ts +118 -0
- package/dist/input/list-state.js +186 -0
- package/dist/input/list-state.js.map +1 -0
- package/dist/input/people.d.ts +65 -0
- package/dist/input/people.js +47 -0
- package/dist/input/people.js.map +1 -0
- package/dist/input/remote-items.d.ts +20 -0
- package/dist/input/remote-items.js +36 -0
- package/dist/input/remote-items.js.map +1 -0
- package/dist/input/text-format.d.ts +46 -0
- package/dist/input/text-format.js +64 -0
- package/dist/input/text-format.js.map +1 -0
- package/dist/layout/Affix.d.ts +32 -0
- package/dist/layout/Affix.js +81 -0
- package/dist/layout/Affix.js.map +1 -0
- package/dist/layout/AsideLayout.d.ts +45 -0
- package/dist/layout/AsideLayout.js +69 -0
- package/dist/layout/AsideLayout.js.map +1 -0
- package/dist/layout/BackTop.d.ts +16 -0
- package/dist/layout/BackTop.js +83 -0
- package/dist/layout/BackTop.js.map +1 -0
- package/dist/layout/Container.d.ts +60 -0
- package/dist/layout/Container.js +62 -0
- package/dist/layout/Container.js.map +1 -0
- package/dist/layout/Flex.d.ts +116 -0
- package/dist/layout/Flex.js +109 -0
- package/dist/layout/Flex.js.map +1 -0
- package/dist/layout/Grid.d.ts +139 -0
- package/dist/layout/Grid.js +168 -0
- package/dist/layout/Grid.js.map +1 -0
- package/dist/layout/PageScrollbar.d.ts +20 -0
- package/dist/layout/PageScrollbar.js +49 -0
- package/dist/layout/PageScrollbar.js.map +1 -0
- package/dist/layout/Prose.d.ts +19 -0
- package/dist/layout/Prose.js +37 -0
- package/dist/layout/Prose.js.map +1 -0
- package/dist/layout/ResizeHandle.d.ts +28 -0
- package/dist/layout/ResizeHandle.js +94 -0
- package/dist/layout/ResizeHandle.js.map +1 -0
- package/dist/layout/ScrollArea.d.ts +99 -0
- package/dist/layout/ScrollArea.js +344 -0
- package/dist/layout/ScrollArea.js.map +1 -0
- package/dist/layout/Separator.d.ts +47 -0
- package/dist/layout/Separator.js +96 -0
- package/dist/layout/Separator.js.map +1 -0
- package/dist/layout/Splitter.d.ts +75 -0
- package/dist/layout/Splitter.js +236 -0
- package/dist/layout/Splitter.js.map +1 -0
- package/dist/layout/ViewportFill.d.ts +26 -0
- package/dist/layout/ViewportFill.js +59 -0
- package/dist/layout/ViewportFill.js.map +1 -0
- package/dist/navigation/Breadcrumbs.d.ts +59 -0
- package/dist/navigation/Breadcrumbs.js +150 -0
- package/dist/navigation/Breadcrumbs.js.map +1 -0
- package/dist/navigation/NavBar.d.ts +35 -0
- package/dist/navigation/NavBar.js +182 -0
- package/dist/navigation/NavBar.js.map +1 -0
- package/dist/navigation/NavList.d.ts +112 -0
- package/dist/navigation/NavList.js +375 -0
- package/dist/navigation/NavList.js.map +1 -0
- package/dist/navigation/PageJump.d.ts +27 -0
- package/dist/navigation/PageJump.js +77 -0
- package/dist/navigation/PageJump.js.map +1 -0
- package/dist/navigation/PageSizeSelect.d.ts +19 -0
- package/dist/navigation/PageSizeSelect.js +65 -0
- package/dist/navigation/PageSizeSelect.js.map +1 -0
- package/dist/navigation/Pager.d.ts +30 -0
- package/dist/navigation/Pager.js +111 -0
- package/dist/navigation/Pager.js.map +1 -0
- package/dist/navigation/Pagination.d.ts +51 -0
- package/dist/navigation/Pagination.js +157 -0
- package/dist/navigation/Pagination.js.map +1 -0
- package/dist/navigation/PaginationBar.d.ts +54 -0
- package/dist/navigation/PaginationBar.js +125 -0
- package/dist/navigation/PaginationBar.js.map +1 -0
- package/dist/navigation/SkipLink.d.ts +16 -0
- package/dist/navigation/SkipLink.js +58 -0
- package/dist/navigation/SkipLink.js.map +1 -0
- package/dist/navigation/Steps.d.ts +93 -0
- package/dist/navigation/Steps.js +198 -0
- package/dist/navigation/Steps.js.map +1 -0
- package/dist/navigation/TableOfContents.d.ts +32 -0
- package/dist/navigation/TableOfContents.js +119 -0
- package/dist/navigation/TableOfContents.js.map +1 -0
- package/dist/navigation/Tabs.d.ts +208 -0
- package/dist/navigation/Tabs.js +626 -0
- package/dist/navigation/Tabs.js.map +1 -0
- package/dist/navigation/Toolbar.d.ts +39 -0
- package/dist/navigation/Toolbar.js +67 -0
- package/dist/navigation/Toolbar.js.map +1 -0
- package/dist/overlay/AlertDialog.d.ts +43 -0
- package/dist/overlay/AlertDialog.js +106 -0
- package/dist/overlay/AlertDialog.js.map +1 -0
- package/dist/overlay/CommandPalette.d.ts +64 -0
- package/dist/overlay/CommandPalette.js +250 -0
- package/dist/overlay/CommandPalette.js.map +1 -0
- package/dist/overlay/ContextMenu.d.ts +21 -0
- package/dist/overlay/ContextMenu.js +76 -0
- package/dist/overlay/ContextMenu.js.map +1 -0
- package/dist/overlay/Dialog.d.ts +70 -0
- package/dist/overlay/Dialog.js +91 -0
- package/dist/overlay/Dialog.js.map +1 -0
- package/dist/overlay/Drawer.d.ts +186 -0
- package/dist/overlay/Drawer.js +214 -0
- package/dist/overlay/Drawer.js.map +1 -0
- package/dist/overlay/HoverCard.d.ts +48 -0
- package/dist/overlay/HoverCard.js +86 -0
- package/dist/overlay/HoverCard.js.map +1 -0
- package/dist/overlay/Lightbox.d.ts +57 -0
- package/dist/overlay/Lightbox.js +374 -0
- package/dist/overlay/Lightbox.js.map +1 -0
- package/dist/overlay/Menu.d.ts +218 -0
- package/dist/overlay/Menu.js +816 -0
- package/dist/overlay/Menu.js.map +1 -0
- package/dist/overlay/ModalCore.d.ts +132 -0
- package/dist/overlay/ModalCore.js +274 -0
- package/dist/overlay/ModalCore.js.map +1 -0
- package/dist/overlay/Popconfirm.d.ts +49 -0
- package/dist/overlay/Popconfirm.js +167 -0
- package/dist/overlay/Popconfirm.js.map +1 -0
- package/dist/overlay/Popover.d.ts +40 -0
- package/dist/overlay/Popover.js +96 -0
- package/dist/overlay/Popover.js.map +1 -0
- package/dist/overlay/Tooltip.d.ts +47 -0
- package/dist/overlay/Tooltip.js +86 -0
- package/dist/overlay/Tooltip.js.map +1 -0
- package/dist/overlay/Tour.d.ts +74 -0
- package/dist/overlay/Tour.js +309 -0
- package/dist/overlay/Tour.js.map +1 -0
- package/dist/overlay/detached.d.ts +40 -0
- package/dist/overlay/detached.js +109 -0
- package/dist/overlay/detached.js.map +1 -0
- package/dist/patterns/ActionBar.d.ts +29 -0
- package/dist/patterns/ActionBar.js +75 -0
- package/dist/patterns/ActionBar.js.map +1 -0
- package/dist/patterns/AppShell.d.ts +168 -0
- package/dist/patterns/AppShell.js +620 -0
- package/dist/patterns/AppShell.js.map +1 -0
- package/dist/patterns/CommentThread.d.ts +128 -0
- package/dist/patterns/CommentThread.js +386 -0
- package/dist/patterns/CommentThread.js.map +1 -0
- package/dist/patterns/DataImport.d.ts +72 -0
- package/dist/patterns/DataImport.js +486 -0
- package/dist/patterns/DataImport.js.map +1 -0
- package/dist/patterns/DeadlineBadge.d.ts +21 -0
- package/dist/patterns/DeadlineBadge.js +76 -0
- package/dist/patterns/DeadlineBadge.js.map +1 -0
- package/dist/patterns/FilterBar.d.ts +66 -0
- package/dist/patterns/FilterBar.js +254 -0
- package/dist/patterns/FilterBar.js.map +1 -0
- package/dist/patterns/KanbanBoard.d.ts +79 -0
- package/dist/patterns/KanbanBoard.js +294 -0
- package/dist/patterns/KanbanBoard.js.map +1 -0
- package/dist/patterns/NotificationCenter.d.ts +110 -0
- package/dist/patterns/NotificationCenter.js +342 -0
- package/dist/patterns/NotificationCenter.js.map +1 -0
- package/dist/patterns/PageTabs.d.ts +30 -0
- package/dist/patterns/PageTabs.js +97 -0
- package/dist/patterns/PageTabs.js.map +1 -0
- package/dist/patterns/QueryTable.d.ts +64 -0
- package/dist/patterns/QueryTable.js +276 -0
- package/dist/patterns/QueryTable.js.map +1 -0
- package/dist/patterns/StepsForm.d.ts +49 -0
- package/dist/patterns/StepsForm.js +130 -0
- package/dist/patterns/StepsForm.js.map +1 -0
- package/dist/patterns/ThemeSwitcher.d.ts +20 -0
- package/dist/patterns/ThemeSwitcher.js +102 -0
- package/dist/patterns/ThemeSwitcher.js.map +1 -0
- package/dist/patterns/form-dialog.d.ts +62 -0
- package/dist/patterns/form-dialog.js +143 -0
- package/dist/patterns/form-dialog.js.map +1 -0
- package/dist/patterns/index.d.ts +24 -0
- package/dist/patterns/index.js +15 -0
- package/dist/patterns/messages.d.ts +172 -0
- package/dist/patterns/messages.js +184 -0
- package/dist/patterns/messages.js.map +1 -0
- package/dist/table/ColumnHeaderActions.d.ts +71 -0
- package/dist/table/ColumnHeaderActions.js +247 -0
- package/dist/table/ColumnHeaderActions.js.map +1 -0
- package/dist/table/ColumnResizer.d.ts +12 -0
- package/dist/table/ColumnResizer.js +32 -0
- package/dist/table/ColumnResizer.js.map +1 -0
- package/dist/table/ColumnSettings.d.ts +34 -0
- package/dist/table/ColumnSettings.js +136 -0
- package/dist/table/ColumnSettings.js.map +1 -0
- package/dist/table/ColumnTable.d.ts +51 -0
- package/dist/table/ColumnTable.js +140 -0
- package/dist/table/ColumnTable.js.map +1 -0
- package/dist/table/DataTable.d.ts +44 -0
- package/dist/table/DataTable.js +453 -0
- package/dist/table/DataTable.js.map +1 -0
- package/dist/table/DataTableView.d.ts +328 -0
- package/dist/table/DataTableView.js +963 -0
- package/dist/table/DataTableView.js.map +1 -0
- package/dist/table/PivotTable.d.ts +66 -0
- package/dist/table/PivotTable.js +122 -0
- package/dist/table/PivotTable.js.map +1 -0
- package/dist/table/SelectionBar.d.ts +29 -0
- package/dist/table/SelectionBar.js +86 -0
- package/dist/table/SelectionBar.js.map +1 -0
- package/dist/table/Table.d.ts +169 -0
- package/dist/table/Table.js +304 -0
- package/dist/table/Table.js.map +1 -0
- package/dist/table/TreeDataTable.d.ts +36 -0
- package/dist/table/TreeDataTable.js +168 -0
- package/dist/table/TreeDataTable.js.map +1 -0
- package/dist/table/column-display.d.ts +20 -0
- package/dist/table/column-display.js +43 -0
- package/dist/table/column-display.js.map +1 -0
- package/dist/table/columns.d.ts +244 -0
- package/dist/table/columns.js +271 -0
- package/dist/table/columns.js.map +1 -0
- package/dist/table/csv.d.ts +24 -0
- package/dist/table/csv.js +35 -0
- package/dist/table/csv.js.map +1 -0
- package/dist/table/pivot.d.ts +66 -0
- package/dist/table/pivot.js +85 -0
- package/dist/table/pivot.js.map +1 -0
- package/dist/table/sheet.d.ts +44 -0
- package/dist/table/sheet.js +78 -0
- package/dist/table/sheet.js.map +1 -0
- package/dist/table/table-styles.d.ts +136 -0
- package/dist/table/table-styles.js +403 -0
- package/dist/table/table-styles.js.map +1 -0
- package/dist/table/use-table-query.d.ts +89 -0
- package/dist/table/use-table-query.js +194 -0
- package/dist/table/use-table-query.js.map +1 -0
- package/dist/theme-customize/ThemeCustomizer.d.ts +63 -0
- package/dist/theme-customize/ThemeCustomizer.js +361 -0
- package/dist/theme-customize/ThemeCustomizer.js.map +1 -0
- package/dist/theme-customize/ThemeThumbnail.d.ts +20 -0
- package/dist/theme-customize/ThemeThumbnail.js +82 -0
- package/dist/theme-customize/ThemeThumbnail.js.map +1 -0
- package/dist/theme-customize/contrast.d.ts +27 -0
- package/dist/theme-customize/contrast.js +251 -0
- package/dist/theme-customize/contrast.js.map +1 -0
- package/dist/theme-customize/customize.d.ts +65 -0
- package/dist/theme-customize/customize.js +105 -0
- package/dist/theme-customize/customize.js.map +1 -0
- package/dist/theme-customize/design-tokens.d.ts +31 -0
- package/dist/theme-customize/design-tokens.js +183 -0
- package/dist/theme-customize/design-tokens.js.map +1 -0
- package/dist/theme-customize/index.d.ts +20 -0
- package/dist/theme-customize/index.js +9 -0
- package/dist/theme-customize/messages.d.ts +74 -0
- package/dist/theme-customize/messages.js +142 -0
- package/dist/theme-customize/messages.js.map +1 -0
- package/dist/theme-customize/palette.d.ts +898 -0
- package/dist/theme-customize/palette.js +111 -0
- package/dist/theme-customize/palette.js.map +1 -0
- package/dist/theme-customize/token-catalog.d.ts +20 -0
- package/dist/theme-customize/token-catalog.js +836 -0
- package/dist/theme-customize/token-catalog.js.map +1 -0
- package/dist/three/background/AuroraBackground.d.ts +30 -0
- package/dist/three/background/AuroraBackground.js +80 -0
- package/dist/three/background/AuroraBackground.js.map +1 -0
- package/dist/three/background/MeshGradient.d.ts +28 -0
- package/dist/three/background/MeshGradient.js +76 -0
- package/dist/three/background/MeshGradient.js.map +1 -0
- package/dist/three/background/ShaderBackground.d.ts +25 -0
- package/dist/three/background/ShaderBackground.js +107 -0
- package/dist/three/background/ShaderBackground.js.map +1 -0
- package/dist/three/core/EffectSurface.d.ts +41 -0
- package/dist/three/core/EffectSurface.js +62 -0
- package/dist/three/core/EffectSurface.js.map +1 -0
- package/dist/three/core/ThreeCanvas.d.ts +39 -0
- package/dist/three/core/ThreeCanvas.js +77 -0
- package/dist/three/core/ThreeCanvas.js.map +1 -0
- package/dist/three/core/dispose.d.ts +9 -0
- package/dist/three/core/dispose.js +26 -0
- package/dist/three/core/dispose.js.map +1 -0
- package/dist/three/core/orbit.d.ts +31 -0
- package/dist/three/core/orbit.js +83 -0
- package/dist/three/core/orbit.js.map +1 -0
- package/dist/three/core/quality.d.ts +59 -0
- package/dist/three/core/quality.js +80 -0
- package/dist/three/core/quality.js.map +1 -0
- package/dist/three/core/renderer.d.ts +110 -0
- package/dist/three/core/renderer.js +303 -0
- package/dist/three/core/renderer.js.map +1 -0
- package/dist/three/core/shaders.d.ts +19 -0
- package/dist/three/core/shaders.js +100 -0
- package/dist/three/core/shaders.js.map +1 -0
- package/dist/three/core/theme-colors.d.ts +30 -0
- package/dist/three/core/theme-colors.js +113 -0
- package/dist/three/core/theme-colors.js.map +1 -0
- package/dist/three/effects/Confetti.d.ts +62 -0
- package/dist/three/effects/Confetti.js +242 -0
- package/dist/three/effects/Confetti.js.map +1 -0
- package/dist/three/effects/ParticleField.d.ts +39 -0
- package/dist/three/effects/ParticleField.js +266 -0
- package/dist/three/effects/ParticleField.js.map +1 -0
- package/dist/three/effects/WaveGrid.d.ts +37 -0
- package/dist/three/effects/WaveGrid.js +130 -0
- package/dist/three/effects/WaveGrid.js.map +1 -0
- package/dist/three/globe/Globe.d.ts +70 -0
- package/dist/three/globe/Globe.js +337 -0
- package/dist/three/globe/Globe.js.map +1 -0
- package/dist/three/globe/land.d.ts +9 -0
- package/dist/three/globe/land.js +14 -0
- package/dist/three/globe/land.js.map +1 -0
- package/dist/three/index.d.ts +24 -0
- package/dist/three/index.js +18 -0
- package/dist/three/model/ModelViewer.d.ts +63 -0
- package/dist/three/model/ModelViewer.js +193 -0
- package/dist/three/model/ModelViewer.js.map +1 -0
- package/dist/utils/data/collation.d.ts +36 -0
- package/dist/utils/data/collation.js +69 -0
- package/dist/utils/data/collation.js.map +1 -0
- package/dist/utils/data/color.d.ts +32 -0
- package/dist/utils/data/color.js +90 -0
- package/dist/utils/data/color.js.map +1 -0
- package/dist/utils/data/date.d.ts +186 -0
- package/dist/utils/data/date.js +409 -0
- package/dist/utils/data/date.js.map +1 -0
- package/dist/utils/data/diff.d.ts +21 -0
- package/dist/utils/data/diff.js +43 -0
- package/dist/utils/data/diff.js.map +1 -0
- package/dist/utils/data/equality.d.ts +5 -0
- package/dist/utils/data/equality.js +24 -0
- package/dist/utils/data/equality.js.map +1 -0
- package/dist/utils/data/history.d.ts +59 -0
- package/dist/utils/data/history.js +132 -0
- package/dist/utils/data/history.js.map +1 -0
- package/dist/utils/data/intl-cache.d.ts +8 -0
- package/dist/utils/data/intl-cache.js +19 -0
- package/dist/utils/data/intl-cache.js.map +1 -0
- package/dist/utils/data/number-parse.d.ts +7 -0
- package/dist/utils/data/number-parse.js +45 -0
- package/dist/utils/data/number-parse.js.map +1 -0
- package/dist/utils/data/number.d.ts +10 -0
- package/dist/utils/data/number.js +28 -0
- package/dist/utils/data/number.js.map +1 -0
- package/dist/utils/data/numeric.d.ts +55 -0
- package/dist/utils/data/numeric.js +133 -0
- package/dist/utils/data/numeric.js.map +1 -0
- package/dist/utils/data/pagination.d.ts +21 -0
- package/dist/utils/data/pagination.js +22 -0
- package/dist/utils/data/pagination.js.map +1 -0
- package/dist/utils/data/selection.d.ts +41 -0
- package/dist/utils/data/selection.js +21 -0
- package/dist/utils/data/selection.js.map +1 -0
- package/dist/utils/data/status.d.ts +43 -0
- package/dist/utils/data/status.js +27 -0
- package/dist/utils/data/status.js.map +1 -0
- package/dist/utils/data/text.d.ts +12 -0
- package/dist/utils/data/text.js +30 -0
- package/dist/utils/data/text.js.map +1 -0
- package/dist/utils/data/tree.d.ts +140 -0
- package/dist/utils/data/tree.js +273 -0
- package/dist/utils/data/tree.js.map +1 -0
- package/dist/utils/data/workdays.d.ts +67 -0
- package/dist/utils/data/workdays.js +67 -0
- package/dist/utils/data/workdays.js.map +1 -0
- package/dist/utils/dom/announcer.d.ts +11 -0
- package/dist/utils/dom/announcer.js +53 -0
- package/dist/utils/dom/announcer.js.map +1 -0
- package/dist/utils/dom/caret.d.ts +14 -0
- package/dist/utils/dom/caret.js +72 -0
- package/dist/utils/dom/caret.js.map +1 -0
- package/dist/utils/dom/clipboard.d.ts +16 -0
- package/dist/utils/dom/clipboard.js +66 -0
- package/dist/utils/dom/clipboard.js.map +1 -0
- package/dist/utils/dom/direction.d.ts +12 -0
- package/dist/utils/dom/direction.js +20 -0
- package/dist/utils/dom/direction.js.map +1 -0
- package/dist/utils/dom/download.d.ts +7 -0
- package/dist/utils/dom/download.js +19 -0
- package/dist/utils/dom/download.js.map +1 -0
- package/dist/utils/dom/element.d.ts +3 -0
- package/dist/utils/dom/element.js +12 -0
- package/dist/utils/dom/element.js.map +1 -0
- package/dist/utils/dom/event-listener.d.ts +8 -0
- package/dist/utils/dom/event-listener.js +35 -0
- package/dist/utils/dom/event-listener.js.map +1 -0
- package/dist/utils/dom/floating.d.ts +149 -0
- package/dist/utils/dom/floating.js +262 -0
- package/dist/utils/dom/floating.js.map +1 -0
- package/dist/utils/dom/focus.d.ts +28 -0
- package/dist/utils/dom/focus.js +105 -0
- package/dist/utils/dom/focus.js.map +1 -0
- package/dist/utils/dom/fullscreen.d.ts +11 -0
- package/dist/utils/dom/fullscreen.js +43 -0
- package/dist/utils/dom/fullscreen.js.map +1 -0
- package/dist/utils/dom/hotkeys.d.ts +43 -0
- package/dist/utils/dom/hotkeys.js +174 -0
- package/dist/utils/dom/hotkeys.js.map +1 -0
- package/dist/utils/dom/hover-intent.d.ts +47 -0
- package/dist/utils/dom/hover-intent.js +72 -0
- package/dist/utils/dom/hover-intent.js.map +1 -0
- package/dist/utils/dom/hover-layer.d.ts +36 -0
- package/dist/utils/dom/hover-layer.js +74 -0
- package/dist/utils/dom/hover-layer.js.map +1 -0
- package/dist/utils/dom/intersection.d.ts +13 -0
- package/dist/utils/dom/intersection.js +36 -0
- package/dist/utils/dom/intersection.js.map +1 -0
- package/dist/utils/dom/layout-batch.d.ts +14 -0
- package/dist/utils/dom/layout-batch.js +26 -0
- package/dist/utils/dom/layout-batch.js.map +1 -0
- package/dist/utils/dom/link.d.ts +18 -0
- package/dist/utils/dom/link.js +44 -0
- package/dist/utils/dom/link.js.map +1 -0
- package/dist/utils/dom/media-query.d.ts +18 -0
- package/dist/utils/dom/media-query.js +36 -0
- package/dist/utils/dom/media-query.js.map +1 -0
- package/dist/utils/dom/move.d.ts +47 -0
- package/dist/utils/dom/move.js +69 -0
- package/dist/utils/dom/move.js.map +1 -0
- package/dist/utils/dom/open-change.d.ts +51 -0
- package/dist/utils/dom/open-change.js +21 -0
- package/dist/utils/dom/open-change.js.map +1 -0
- package/dist/utils/dom/overflow.d.ts +29 -0
- package/dist/utils/dom/overflow.js +108 -0
- package/dist/utils/dom/overflow.js.map +1 -0
- package/dist/utils/dom/overlay.d.ts +35 -0
- package/dist/utils/dom/overlay.js +104 -0
- package/dist/utils/dom/overlay.js.map +1 -0
- package/dist/utils/dom/page-visibility.d.ts +10 -0
- package/dist/utils/dom/page-visibility.js +22 -0
- package/dist/utils/dom/page-visibility.js.map +1 -0
- package/dist/utils/dom/pan-zoom.d.ts +109 -0
- package/dist/utils/dom/pan-zoom.js +257 -0
- package/dist/utils/dom/pan-zoom.js.map +1 -0
- package/dist/utils/dom/rasterize.d.ts +18 -0
- package/dist/utils/dom/rasterize.js +41 -0
- package/dist/utils/dom/rasterize.js.map +1 -0
- package/dist/utils/dom/resize.d.ts +4 -0
- package/dist/utils/dom/resize.js +65 -0
- package/dist/utils/dom/resize.js.map +1 -0
- package/dist/utils/dom/ripple.d.ts +40 -0
- package/dist/utils/dom/ripple.js +96 -0
- package/dist/utils/dom/ripple.js.map +1 -0
- package/dist/utils/dom/roving-focus.d.ts +44 -0
- package/dist/utils/dom/roving-focus.js +184 -0
- package/dist/utils/dom/roving-focus.js.map +1 -0
- package/dist/utils/dom/scroll-spy.d.ts +30 -0
- package/dist/utils/dom/scroll-spy.js +55 -0
- package/dist/utils/dom/scroll-spy.js.map +1 -0
- package/dist/utils/dom/sortable.d.ts +82 -0
- package/dist/utils/dom/sortable.js +437 -0
- package/dist/utils/dom/sortable.js.map +1 -0
- package/dist/utils/dom/storage.d.ts +21 -0
- package/dist/utils/dom/storage.js +66 -0
- package/dist/utils/dom/storage.js.map +1 -0
- package/dist/utils/dom/typeahead.d.ts +15 -0
- package/dist/utils/dom/typeahead.js +26 -0
- package/dist/utils/dom/typeahead.js.map +1 -0
- package/dist/utils/motion/active-indicator.d.ts +24 -0
- package/dist/utils/motion/active-indicator.js +58 -0
- package/dist/utils/motion/active-indicator.js.map +1 -0
- package/dist/utils/motion/animation.d.ts +58 -0
- package/dist/utils/motion/animation.js +83 -0
- package/dist/utils/motion/animation.js.map +1 -0
- package/dist/utils/motion/delayed-loading.d.ts +18 -0
- package/dist/utils/motion/delayed-loading.js +38 -0
- package/dist/utils/motion/delayed-loading.js.map +1 -0
- package/dist/utils/motion/layout.d.ts +17 -0
- package/dist/utils/motion/layout.js +43 -0
- package/dist/utils/motion/layout.js.map +1 -0
- package/dist/utils/motion/pointer.d.ts +14 -0
- package/dist/utils/motion/pointer.js +72 -0
- package/dist/utils/motion/pointer.js.map +1 -0
- package/dist/utils/motion/presence.d.ts +57 -0
- package/dist/utils/motion/presence.js +100 -0
- package/dist/utils/motion/presence.js.map +1 -0
- package/dist/utils/motion/reveal.d.ts +9 -0
- package/dist/utils/motion/reveal.js +68 -0
- package/dist/utils/motion/reveal.js.map +1 -0
- package/dist/utils/motion/tween.d.ts +34 -0
- package/dist/utils/motion/tween.js +50 -0
- package/dist/utils/motion/tween.js.map +1 -0
- package/dist/utils/props.d.ts +84 -0
- package/dist/utils/props.js +189 -0
- package/dist/utils/props.js.map +1 -0
- package/dist/utils/request/http.d.ts +101 -0
- package/dist/utils/request/http.js +154 -0
- package/dist/utils/request/http.js.map +1 -0
- package/dist/utils/request/use-request.d.ts +37 -0
- package/dist/utils/request/use-request.js +90 -0
- package/dist/utils/request/use-request.js.map +1 -0
- package/dist/utils/request/wire.d.ts +48 -0
- package/dist/utils/request/wire.js +208 -0
- package/dist/utils/request/wire.js.map +1 -0
- package/dist/utils/style/attached.d.ts +25 -0
- package/dist/utils/style/attached.js +82 -0
- package/dist/utils/style/attached.js.map +1 -0
- package/dist/utils/style/item-styles.d.ts +18 -0
- package/dist/utils/style/item-styles.js +79 -0
- package/dist/utils/style/item-styles.js.map +1 -0
- package/dist/utils/style/markers.d.ts +6 -0
- package/dist/utils/style/markers.js +11 -0
- package/dist/utils/style/markers.js.map +1 -0
- package/dist/utils/style/shimmer.d.ts +20 -0
- package/dist/utils/style/shimmer.js +58 -0
- package/dist/utils/style/shimmer.js.map +1 -0
- package/dist/utils/style/styles.d.ts +118 -0
- package/dist/utils/style/styles.js +114 -0
- package/dist/utils/style/styles.js.map +1 -0
- package/dist/utils/style/swatch-styles.d.ts +10 -0
- package/dist/utils/style/swatch-styles.js +19 -0
- package/dist/utils/style/swatch-styles.js.map +1 -0
- package/dist/utils/style/tone-styles.d.ts +58 -0
- package/dist/utils/style/tone-styles.js +180 -0
- package/dist/utils/style/tone-styles.js.map +1 -0
- package/dist/utils/style/transitions.d.ts +43 -0
- package/dist/utils/style/transitions.js +118 -0
- package/dist/utils/style/transitions.js.map +1 -0
- package/dist/utils/style/typography.d.ts +155 -0
- package/dist/utils/style/typography.js +80 -0
- package/dist/utils/style/typography.js.map +1 -0
- package/dist/utils/style/vars.d.ts +18 -0
- package/dist/utils/style/vars.js +21 -0
- package/dist/utils/style/vars.js.map +1 -0
- package/dist/utils/virtual/use-virtualizer.d.ts +43 -0
- package/dist/utils/virtual/use-virtualizer.js +94 -0
- package/dist/utils/virtual/use-virtualizer.js.map +1 -0
- package/dist/utils/virtual/virtualizer.d.ts +145 -0
- package/dist/utils/virtual/virtualizer.js +316 -0
- package/dist/utils/virtual/virtualizer.js.map +1 -0
- package/dist/xlsx/index.d.ts +7 -0
- package/dist/xlsx/index.js +1 -0
- package/dist/xlsx/workbook.d.ts +33 -0
- package/dist/xlsx/workbook.js +195 -0
- package/dist/xlsx/workbook.js.map +1 -0
- package/package.json +205 -3
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
//#region src/utils/dom/layout-batch.ts
|
|
2
|
+
var reads = [];
|
|
3
|
+
/** 一个读取或写入出错:报出来(下一个微任务里抛出),这一轮别的读写照常执行 */
|
|
4
|
+
function safely(task) {
|
|
5
|
+
try {
|
|
6
|
+
return task();
|
|
7
|
+
} catch (error) {
|
|
8
|
+
queueMicrotask(() => {
|
|
9
|
+
throw error;
|
|
10
|
+
});
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function flush() {
|
|
15
|
+
const writes = reads.splice(0).map((read) => safely(read));
|
|
16
|
+
for (const write of writes) if (write) safely(write);
|
|
17
|
+
}
|
|
18
|
+
/** 登记一次读取(返回写入):这一轮的读取都执行完,再执行写入 */
|
|
19
|
+
function batchLayout(read) {
|
|
20
|
+
reads.push(read);
|
|
21
|
+
if (reads.length === 1) queueMicrotask(flush);
|
|
22
|
+
}
|
|
23
|
+
//#endregion
|
|
24
|
+
export { batchLayout };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=layout-batch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-batch.js","names":[],"sources":["../../../src/utils/dom/layout-batch.ts"],"sourcesContent":["/**\n * 先读后写:当前任务里登记的读取在一个微任务里依次执行,全部读完再依次执行它们返回的写入。\n * 各组件挂载后、尺寸变化时各自“读布局 → 写样式”,一个写完下一个读就要重新布局;\n * 合并后一整轮只布局一次(同 fastdom 的 measure / mutate)。\n *\n * batchLayout(() => {\n * const width = item.offsetWidth; // 读\n * return () => (bar.style.width = `${width}px`); // 写\n * });\n */\n\ntype Read = () => (() => void) | void;\n\nconst reads: Read[] = [];\n\n/** 一个读取或写入出错:报出来(下一个微任务里抛出),这一轮别的读写照常执行 */\nfunction safely<T>(task: () => T): T | undefined {\n try {\n return task();\n } catch (error) {\n queueMicrotask(() => {\n throw error;\n });\n return undefined;\n }\n}\n\nfunction flush() {\n const writes = reads.splice(0).map((read) => safely(read));\n for (const write of writes) if (write) safely(write);\n}\n\n/** 登记一次读取(返回写入):这一轮的读取都执行完,再执行写入 */\nexport function batchLayout(read: Read): void {\n reads.push(read);\n if (reads.length === 1) queueMicrotask(flush);\n}\n"],"mappings":";AAaA,IAAM,QAAgB,CAAC;;AAGvB,SAAS,OAAU,MAA8B;CAC/C,IAAI;EACF,OAAO,KAAK;CACd,SAAS,OAAO;EACd,qBAAqB;GACnB,MAAM;EACR,CAAC;EACD;CACF;AACF;AAEA,SAAS,QAAQ;CACf,MAAM,SAAS,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,OAAO,IAAI,CAAC;CACzD,KAAK,MAAM,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AACrD;;AAGA,SAAgB,YAAY,MAAkB;CAC5C,MAAM,KAAK,IAAI;CACf,IAAI,MAAM,WAAW,GAAG,eAAe,KAAK;AAC9C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** 这次点击该不该交给路由:只拦普通左键点击同源、在当前窗口打开、不是下载的链接 */
|
|
2
|
+
export declare function shouldRouteClick(event: MouseEvent, anchor: HTMLAnchorElement): boolean;
|
|
3
|
+
/** 外部链接(external)的属性:新窗口打开,不把本页交给对方(window.opener)、不带来源地址 */
|
|
4
|
+
export declare const externalLinkAttrs: {
|
|
5
|
+
readonly target: '_blank';
|
|
6
|
+
readonly rel: 'noopener noreferrer';
|
|
7
|
+
};
|
|
8
|
+
/** 链接的路由能力:渲染的地址、点击处理(展开到 <a> 的 onClick)与“是不是当前页” */
|
|
9
|
+
export interface RouterLink {
|
|
10
|
+
/** 渲染到 <a href> 上的地址:站内链接经路由的 resolve 补上 base 与 hash 模式的 #;没有 resolve 时原样 */
|
|
11
|
+
href: (href: string) => string;
|
|
12
|
+
/** 站内链接的普通点击改由路由跳转,交给路由的是写在组件上的原文 href;没有配置路由时什么也不做 */
|
|
13
|
+
onClick: (event: MouseEvent, href: string) => void;
|
|
14
|
+
/** href 是不是当前页;没有配置 isActive 时为 false。在渲染里调用以跟随路由变化 */
|
|
15
|
+
isActive: (href: string | undefined) => boolean;
|
|
16
|
+
}
|
|
17
|
+
/** 在组件 setup 里调用 */
|
|
18
|
+
export declare function useRouterLink(): RouterLink;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { useConfig } from "../../config/context.js";
|
|
2
|
+
//#region src/utils/dom/link.ts
|
|
3
|
+
/**
|
|
4
|
+
* 链接与路由适配(config 的 router,参考 React Aria 的 RouterProvider):
|
|
5
|
+
* 组件渲染真正的 <a href>(右键菜单、新标签页打开、读屏都正常),普通左键点击站内链接时交给路由跳转。
|
|
6
|
+
* Link、LinkButton、导航组件共用。
|
|
7
|
+
*/
|
|
8
|
+
/** 这次点击该不该交给路由:只拦普通左键点击同源、在当前窗口打开、不是下载的链接 */
|
|
9
|
+
function shouldRouteClick(event, anchor) {
|
|
10
|
+
if (event.defaultPrevented || event.button !== 0) return false;
|
|
11
|
+
if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return false;
|
|
12
|
+
if (anchor.target && anchor.target !== "_self") return false;
|
|
13
|
+
if (anchor.hasAttribute("download")) return false;
|
|
14
|
+
return anchor.origin === window.location.origin;
|
|
15
|
+
}
|
|
16
|
+
/** 外部链接(external)的属性:新窗口打开,不把本页交给对方(window.opener)、不带来源地址 */
|
|
17
|
+
var externalLinkAttrs = {
|
|
18
|
+
target: "_blank",
|
|
19
|
+
rel: "noopener noreferrer"
|
|
20
|
+
};
|
|
21
|
+
/** 外部链接(带协议、// 开头)与页内锚点(#…)不经过路由 */
|
|
22
|
+
var isRoutable = (href) => !/^([a-z][\w+.-]*:|\/\/|#)/i.test(href);
|
|
23
|
+
/** 在组件 setup 里调用 */
|
|
24
|
+
function useRouterLink() {
|
|
25
|
+
const config = useConfig();
|
|
26
|
+
return {
|
|
27
|
+
href: (href) => {
|
|
28
|
+
const resolve = config.router?.resolve;
|
|
29
|
+
return resolve && isRoutable(href) ? resolve(href) : href;
|
|
30
|
+
},
|
|
31
|
+
onClick(event, href) {
|
|
32
|
+
const router = config.router;
|
|
33
|
+
const anchor = event.currentTarget;
|
|
34
|
+
if (!router || !(anchor instanceof HTMLAnchorElement) || !shouldRouteClick(event, anchor)) return;
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
router.navigate(href);
|
|
37
|
+
},
|
|
38
|
+
isActive: (href) => href != null && config.router?.isActive?.(href) || false
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//#endregion
|
|
42
|
+
export { externalLinkAttrs, shouldRouteClick, useRouterLink };
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.js","names":[],"sources":["../../../src/utils/dom/link.ts"],"sourcesContent":["/**\n * 链接与路由适配(config 的 router,参考 React Aria 的 RouterProvider):\n * 组件渲染真正的 <a href>(右键菜单、新标签页打开、读屏都正常),普通左键点击站内链接时交给路由跳转。\n * Link、LinkButton、导航组件共用。\n */\nimport { useConfig } from '../../config/context';\n\n/** 这次点击该不该交给路由:只拦普通左键点击同源、在当前窗口打开、不是下载的链接 */\nexport function shouldRouteClick(event: MouseEvent, anchor: HTMLAnchorElement): boolean {\n if (event.defaultPrevented || event.button !== 0) return false;\n if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return false;\n if (anchor.target && anchor.target !== '_self') return false;\n if (anchor.hasAttribute('download')) return false;\n return anchor.origin === window.location.origin;\n}\n\n/** 外部链接(external)的属性:新窗口打开,不把本页交给对方(window.opener)、不带来源地址 */\nexport const externalLinkAttrs = { target: '_blank', rel: 'noopener noreferrer' } as const;\n\n/** 外部链接(带协议、// 开头)与页内锚点(#…)不经过路由 */\nconst isRoutable = (href: string) => !/^([a-z][\\w+.-]*:|\\/\\/|#)/i.test(href);\n\n/** 链接的路由能力:渲染的地址、点击处理(展开到 <a> 的 onClick)与“是不是当前页” */\nexport interface RouterLink {\n /** 渲染到 <a href> 上的地址:站内链接经路由的 resolve 补上 base 与 hash 模式的 #;没有 resolve 时原样 */\n href: (href: string) => string;\n /** 站内链接的普通点击改由路由跳转,交给路由的是写在组件上的原文 href;没有配置路由时什么也不做 */\n onClick: (event: MouseEvent, href: string) => void;\n /** href 是不是当前页;没有配置 isActive 时为 false。在渲染里调用以跟随路由变化 */\n isActive: (href: string | undefined) => boolean;\n}\n\n/** 在组件 setup 里调用 */\nexport function useRouterLink(): RouterLink {\n const config = useConfig();\n return {\n href: (href) => {\n const resolve = config.router?.resolve;\n return resolve && isRoutable(href) ? resolve(href) : href;\n },\n onClick(event, href) {\n const router = config.router;\n const anchor = event.currentTarget;\n if (!router || !(anchor instanceof HTMLAnchorElement) || !shouldRouteClick(event, anchor)) {\n return;\n }\n event.preventDefault();\n // 交给路由的是原文(不是渲染出的带 base 的地址):base、相对路径由路由自己处理\n router.navigate(href);\n },\n isActive: (href) => (href != null && config.router?.isActive?.(href)) || false,\n };\n}\n"],"mappings":";;;;;;;;AAQA,SAAgB,iBAAiB,OAAmB,QAAoC;CACtF,IAAI,MAAM,oBAAoB,MAAM,WAAW,GAAG,OAAO;CACzD,IAAI,MAAM,WAAW,MAAM,WAAW,MAAM,YAAY,MAAM,QAAQ,OAAO;CAC7E,IAAI,OAAO,UAAU,OAAO,WAAW,SAAS,OAAO;CACvD,IAAI,OAAO,aAAa,UAAU,GAAG,OAAO;CAC5C,OAAO,OAAO,WAAW,OAAO,SAAS;AAC3C;;AAGA,IAAa,oBAAoB;CAAE,QAAQ;CAAU,KAAK;AAAsB;;AAGhF,IAAM,cAAc,SAAiB,CAAC,4BAA4B,KAAK,IAAI;;AAa3E,SAAgB,gBAA4B;CAC1C,MAAM,SAAS,UAAU;CACzB,OAAO;EACL,OAAO,SAAS;GACd,MAAM,UAAU,OAAO,QAAQ;GAC/B,OAAO,WAAW,WAAW,IAAI,IAAI,QAAQ,IAAI,IAAI;EACvD;EACA,QAAQ,OAAO,MAAM;GACnB,MAAM,SAAS,OAAO;GACtB,MAAM,SAAS,MAAM;GACrB,IAAI,CAAC,UAAU,EAAE,kBAAkB,sBAAsB,CAAC,iBAAiB,OAAO,MAAM,GACtF;GAEF,MAAM,eAAe;GAErB,OAAO,SAAS,IAAI;EACtB;EACA,WAAW,SAAU,QAAQ,QAAQ,OAAO,QAAQ,WAAW,IAAI,KAAM;CAC3E;AACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 媒体查询的响应式结果:随视口、系统设置变化。
|
|
3
|
+
*
|
|
4
|
+
* const wide = useMediaQuery('(min-width: 64rem)');
|
|
5
|
+
* if (wide.value) …
|
|
6
|
+
*
|
|
7
|
+
* 能用 CSS 媒体查询解决的(显示与隐藏、排版)写在样式里;只有行为要随之变化时(宽屏时关掉抽屉)才用它。
|
|
8
|
+
*/
|
|
9
|
+
import { type Ref } from 'vue';
|
|
10
|
+
/** 媒体查询是否命中(在 setup 或 effectScope 里调用);没有 matchMedia 的环境(服务端)恒为 false */
|
|
11
|
+
export declare function useMediaQuery(query: string): Readonly<Ref<boolean>>;
|
|
12
|
+
/** 系统是否偏好暗色(prefers-color-scheme: dark) */
|
|
13
|
+
export declare function usePrefersDark(): Readonly<Ref<boolean>>;
|
|
14
|
+
/**
|
|
15
|
+
* 系统是否要求减少动态效果(prefers-reduced-motion: reduce)。
|
|
16
|
+
* 取主题时长的动画不需要它(时长 token 已经是 0);给装饰性、循环播放的动画判断要不要播。
|
|
17
|
+
*/
|
|
18
|
+
export declare function useReducedMotion(): Readonly<Ref<boolean>>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { onScopeDispose, shallowRef } from "vue";
|
|
2
|
+
//#region src/utils/dom/media-query.ts
|
|
3
|
+
/**
|
|
4
|
+
* 媒体查询的响应式结果:随视口、系统设置变化。
|
|
5
|
+
*
|
|
6
|
+
* const wide = useMediaQuery('(min-width: 64rem)');
|
|
7
|
+
* if (wide.value) …
|
|
8
|
+
*
|
|
9
|
+
* 能用 CSS 媒体查询解决的(显示与隐藏、排版)写在样式里;只有行为要随之变化时(宽屏时关掉抽屉)才用它。
|
|
10
|
+
*/
|
|
11
|
+
/** 媒体查询是否命中(在 setup 或 effectScope 里调用);没有 matchMedia 的环境(服务端)恒为 false */
|
|
12
|
+
function useMediaQuery(query) {
|
|
13
|
+
const list = globalThis.matchMedia?.(query);
|
|
14
|
+
const matches = shallowRef(list?.matches ?? false);
|
|
15
|
+
if (list) {
|
|
16
|
+
const update = (event) => matches.value = event.matches;
|
|
17
|
+
list.addEventListener("change", update);
|
|
18
|
+
onScopeDispose(() => list.removeEventListener("change", update));
|
|
19
|
+
}
|
|
20
|
+
return matches;
|
|
21
|
+
}
|
|
22
|
+
/** 系统是否偏好暗色(prefers-color-scheme: dark) */
|
|
23
|
+
function usePrefersDark() {
|
|
24
|
+
return useMediaQuery("(prefers-color-scheme: dark)");
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* 系统是否要求减少动态效果(prefers-reduced-motion: reduce)。
|
|
28
|
+
* 取主题时长的动画不需要它(时长 token 已经是 0);给装饰性、循环播放的动画判断要不要播。
|
|
29
|
+
*/
|
|
30
|
+
function useReducedMotion() {
|
|
31
|
+
return useMediaQuery("(prefers-reduced-motion: reduce)");
|
|
32
|
+
}
|
|
33
|
+
//#endregion
|
|
34
|
+
export { useMediaQuery, usePrefersDark, useReducedMotion };
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=media-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-query.js","names":[],"sources":["../../../src/utils/dom/media-query.ts"],"sourcesContent":["/**\n * 媒体查询的响应式结果:随视口、系统设置变化。\n *\n * const wide = useMediaQuery('(min-width: 64rem)');\n * if (wide.value) …\n *\n * 能用 CSS 媒体查询解决的(显示与隐藏、排版)写在样式里;只有行为要随之变化时(宽屏时关掉抽屉)才用它。\n */\nimport { onScopeDispose, shallowRef, type Ref } from 'vue';\n\n/** 媒体查询是否命中(在 setup 或 effectScope 里调用);没有 matchMedia 的环境(服务端)恒为 false */\nexport function useMediaQuery(query: string): Readonly<Ref<boolean>> {\n const list = globalThis.matchMedia?.(query);\n const matches = shallowRef(list?.matches ?? false);\n if (list) {\n const update = (event: MediaQueryListEvent) => (matches.value = event.matches);\n list.addEventListener('change', update);\n onScopeDispose(() => list.removeEventListener('change', update));\n }\n return matches;\n}\n\n/** 系统是否偏好暗色(prefers-color-scheme: dark) */\nexport function usePrefersDark(): Readonly<Ref<boolean>> {\n return useMediaQuery('(prefers-color-scheme: dark)');\n}\n\n/**\n * 系统是否要求减少动态效果(prefers-reduced-motion: reduce)。\n * 取主题时长的动画不需要它(时长 token 已经是 0);给装饰性、循环播放的动画判断要不要播。\n */\nexport function useReducedMotion(): Readonly<Ref<boolean>> {\n return useMediaQuery('(prefers-reduced-motion: reduce)');\n}\n"],"mappings":";;;;;;;;;;;AAWA,SAAgB,cAAc,OAAuC;CACnE,MAAM,OAAO,WAAW,aAAa,KAAK;CAC1C,MAAM,UAAU,WAAW,MAAM,WAAW,KAAK;CACjD,IAAI,MAAM;EACR,MAAM,UAAU,UAAgC,QAAQ,QAAQ,MAAM;EACtE,KAAK,iBAAiB,UAAU,MAAM;EACtC,qBAAqB,KAAK,oBAAoB,UAAU,MAAM,CAAC;CACjE;CACA,OAAO;AACT;;AAGA,SAAgB,iBAAyC;CACvD,OAAO,cAAc,8BAA8B;AACrD;;;;;AAMA,SAAgB,mBAA2C;CACzD,OAAO,cAAc,kCAAkC;AACzD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 拖动工具:在 pointerdown 里调用 startMove,之后的移动、松开、取消都由它跟踪(COMPONENTS.md §7 拖动工具)。
|
|
3
|
+
* 参考 React Aria 的 useMove,直接基于 Pointer Events,不用手势库:
|
|
4
|
+
* - setPointerCapture:指针移出元素、移出窗口也能继续拖
|
|
5
|
+
* - pointercancel、失去捕获(系统手势、弹窗打断)按结束处理,不会卡在拖动状态
|
|
6
|
+
* - 拖动期间禁止选中文字;拖动超过阈值后吞掉随后的 click,拖完不会误触发点击
|
|
7
|
+
* - 只响应主按钮(鼠标左键、触摸、笔尖)
|
|
8
|
+
* 元素自己要设 touch-action(如 none),否则触摸拖动会被浏览器当成页面滚动。
|
|
9
|
+
* 键盘替代由组件自己提供(WCAG 2.5.7)。
|
|
10
|
+
*
|
|
11
|
+
* onPointerdown={(event) => startMove(event, { onMove: ({ deltaX }) => … })}
|
|
12
|
+
*/
|
|
13
|
+
/** 一次移动的位置:clientX/Y 是当前位置,deltaX/Y 是相对按下时的位移(px) */
|
|
14
|
+
export interface MovePoint {
|
|
15
|
+
/** 当前位置(视口坐标) */
|
|
16
|
+
readonly clientX: number;
|
|
17
|
+
/** 当前位置(视口坐标) */
|
|
18
|
+
readonly clientY: number;
|
|
19
|
+
/** 相对按下位置的横向位移 */
|
|
20
|
+
readonly deltaX: number;
|
|
21
|
+
/** 相对按下位置的纵向位移 */
|
|
22
|
+
readonly deltaY: number;
|
|
23
|
+
}
|
|
24
|
+
/** startMove 的回调与选项 */
|
|
25
|
+
export interface MoveOptions {
|
|
26
|
+
/** 指针移动(位移超过 threshold 之后才开始报告) */
|
|
27
|
+
onMove: (point: MovePoint, event: PointerEvent) => void;
|
|
28
|
+
/** 结束:松开、取消或失去捕获;moved 表示是否真的拖动过(超过阈值) */
|
|
29
|
+
onEnd?: (point: MovePoint & {
|
|
30
|
+
readonly moved: boolean;
|
|
31
|
+
readonly cancelled: boolean;
|
|
32
|
+
}) => void;
|
|
33
|
+
/** 位移超过多少 px 才算拖动,默认 0(按下即开始);需要区分点击与拖动时设 3 左右 */
|
|
34
|
+
threshold?: number;
|
|
35
|
+
/**
|
|
36
|
+
* 捕获指针、接收后续事件的元素,默认是按下的元素(event.currentTarget)。
|
|
37
|
+
* 拖动中会被移动的元素(排序时 Vue 重排 DOM)要换成不动的祖先:元素一离开文档就失去捕获,拖动会被当成取消
|
|
38
|
+
*/
|
|
39
|
+
captureTarget?: Element;
|
|
40
|
+
/**
|
|
41
|
+
* 拖过之后吞掉随后的 click,默认 threshold 大于 0 时吞(阈值为 0 时按下即拖动,吞了就没有单击了)。
|
|
42
|
+
* 捕获在祖先上时 click 落在祖先上(如画布的空白处),按下即拖、又不该算点击的要设 true
|
|
43
|
+
*/
|
|
44
|
+
swallowClick?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/** 按下时调用:开始跟踪这个指针,返回提前结束的函数(组件卸载时调用)。不是主按钮时什么也不做 */
|
|
47
|
+
export declare function startMove(event: PointerEvent, options: MoveOptions): () => void;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
//#region src/utils/dom/move.ts
|
|
2
|
+
/** 按下时调用:开始跟踪这个指针,返回提前结束的函数(组件卸载时调用)。不是主按钮时什么也不做 */
|
|
3
|
+
function startMove(event, options) {
|
|
4
|
+
if (event.button !== 0 || !(event.currentTarget instanceof Element)) return () => {};
|
|
5
|
+
const target = options.captureTarget ?? event.currentTarget;
|
|
6
|
+
const { pointerId, clientX: startX, clientY: startY } = event;
|
|
7
|
+
const threshold = options.threshold ?? 0;
|
|
8
|
+
const swallowClick = options.swallowClick ?? threshold > 0;
|
|
9
|
+
let moved = threshold === 0;
|
|
10
|
+
let finished = false;
|
|
11
|
+
let last = {
|
|
12
|
+
clientX: startX,
|
|
13
|
+
clientY: startY,
|
|
14
|
+
deltaX: 0,
|
|
15
|
+
deltaY: 0
|
|
16
|
+
};
|
|
17
|
+
try {
|
|
18
|
+
target.setPointerCapture(pointerId);
|
|
19
|
+
} catch {}
|
|
20
|
+
const root = document.documentElement;
|
|
21
|
+
const userSelect = root.style.userSelect;
|
|
22
|
+
root.style.userSelect = "none";
|
|
23
|
+
const onMove = (move) => {
|
|
24
|
+
if (move.pointerId !== pointerId) return;
|
|
25
|
+
last = {
|
|
26
|
+
clientX: move.clientX,
|
|
27
|
+
clientY: move.clientY,
|
|
28
|
+
deltaX: move.clientX - startX,
|
|
29
|
+
deltaY: move.clientY - startY
|
|
30
|
+
};
|
|
31
|
+
if (!moved && Math.hypot(last.deltaX, last.deltaY) < threshold) return;
|
|
32
|
+
moved = true;
|
|
33
|
+
options.onMove(last, move);
|
|
34
|
+
};
|
|
35
|
+
const finish = (cancelled) => {
|
|
36
|
+
if (finished) return;
|
|
37
|
+
finished = true;
|
|
38
|
+
target.removeEventListener("pointermove", onMove);
|
|
39
|
+
target.removeEventListener("pointerup", onUp);
|
|
40
|
+
target.removeEventListener("pointercancel", onCancel);
|
|
41
|
+
target.removeEventListener("lostpointercapture", onCancel);
|
|
42
|
+
root.style.userSelect = userSelect;
|
|
43
|
+
if (target.hasPointerCapture?.(pointerId)) target.releasePointerCapture(pointerId);
|
|
44
|
+
if (moved && swallowClick) {
|
|
45
|
+
const swallow = (click) => click.stopPropagation();
|
|
46
|
+
window.addEventListener("click", swallow, {
|
|
47
|
+
capture: true,
|
|
48
|
+
once: true
|
|
49
|
+
});
|
|
50
|
+
setTimeout(() => window.removeEventListener("click", swallow, { capture: true }));
|
|
51
|
+
}
|
|
52
|
+
options.onEnd?.({
|
|
53
|
+
...last,
|
|
54
|
+
moved,
|
|
55
|
+
cancelled
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
const onUp = (up) => up.pointerId === pointerId && finish(false);
|
|
59
|
+
const onCancel = (cancel) => cancel.pointerId === pointerId && finish(true);
|
|
60
|
+
target.addEventListener("pointermove", onMove);
|
|
61
|
+
target.addEventListener("pointerup", onUp);
|
|
62
|
+
target.addEventListener("pointercancel", onCancel);
|
|
63
|
+
target.addEventListener("lostpointercapture", onCancel);
|
|
64
|
+
return () => finish(true);
|
|
65
|
+
}
|
|
66
|
+
//#endregion
|
|
67
|
+
export { startMove };
|
|
68
|
+
|
|
69
|
+
//# sourceMappingURL=move.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move.js","names":[],"sources":["../../../src/utils/dom/move.ts"],"sourcesContent":["/**\n * 拖动工具:在 pointerdown 里调用 startMove,之后的移动、松开、取消都由它跟踪(COMPONENTS.md §7 拖动工具)。\n * 参考 React Aria 的 useMove,直接基于 Pointer Events,不用手势库:\n * - setPointerCapture:指针移出元素、移出窗口也能继续拖\n * - pointercancel、失去捕获(系统手势、弹窗打断)按结束处理,不会卡在拖动状态\n * - 拖动期间禁止选中文字;拖动超过阈值后吞掉随后的 click,拖完不会误触发点击\n * - 只响应主按钮(鼠标左键、触摸、笔尖)\n * 元素自己要设 touch-action(如 none),否则触摸拖动会被浏览器当成页面滚动。\n * 键盘替代由组件自己提供(WCAG 2.5.7)。\n *\n * onPointerdown={(event) => startMove(event, { onMove: ({ deltaX }) => … })}\n */\n\n/** 一次移动的位置:clientX/Y 是当前位置,deltaX/Y 是相对按下时的位移(px) */\nexport interface MovePoint {\n /** 当前位置(视口坐标) */\n readonly clientX: number;\n /** 当前位置(视口坐标) */\n readonly clientY: number;\n /** 相对按下位置的横向位移 */\n readonly deltaX: number;\n /** 相对按下位置的纵向位移 */\n readonly deltaY: number;\n}\n\n/** startMove 的回调与选项 */\nexport interface MoveOptions {\n /** 指针移动(位移超过 threshold 之后才开始报告) */\n onMove: (point: MovePoint, event: PointerEvent) => void;\n /** 结束:松开、取消或失去捕获;moved 表示是否真的拖动过(超过阈值) */\n onEnd?: (point: MovePoint & { readonly moved: boolean; readonly cancelled: boolean }) => void;\n /** 位移超过多少 px 才算拖动,默认 0(按下即开始);需要区分点击与拖动时设 3 左右 */\n threshold?: number;\n /**\n * 捕获指针、接收后续事件的元素,默认是按下的元素(event.currentTarget)。\n * 拖动中会被移动的元素(排序时 Vue 重排 DOM)要换成不动的祖先:元素一离开文档就失去捕获,拖动会被当成取消\n */\n captureTarget?: Element;\n /**\n * 拖过之后吞掉随后的 click,默认 threshold 大于 0 时吞(阈值为 0 时按下即拖动,吞了就没有单击了)。\n * 捕获在祖先上时 click 落在祖先上(如画布的空白处),按下即拖、又不该算点击的要设 true\n */\n swallowClick?: boolean;\n}\n\n/** 按下时调用:开始跟踪这个指针,返回提前结束的函数(组件卸载时调用)。不是主按钮时什么也不做 */\nexport function startMove(event: PointerEvent, options: MoveOptions): () => void {\n if (event.button !== 0 || !(event.currentTarget instanceof Element)) return () => {};\n const target = options.captureTarget ?? event.currentTarget;\n const { pointerId, clientX: startX, clientY: startY } = event;\n const threshold = options.threshold ?? 0;\n const swallowClick = options.swallowClick ?? threshold > 0;\n let moved = threshold === 0;\n let finished = false;\n let last: MovePoint = { clientX: startX, clientY: startY, deltaX: 0, deltaY: 0 };\n\n // 捕获失败(指针已经松开、元素不在文档里)时照常用元素上的事件,只是移出元素后收不到\n try {\n target.setPointerCapture(pointerId);\n } catch {}\n const root = document.documentElement;\n const userSelect = root.style.userSelect;\n root.style.userSelect = 'none';\n\n const onMove = (move: PointerEvent) => {\n if (move.pointerId !== pointerId) return;\n last = {\n clientX: move.clientX,\n clientY: move.clientY,\n deltaX: move.clientX - startX,\n deltaY: move.clientY - startY,\n };\n if (!moved && Math.hypot(last.deltaX, last.deltaY) < threshold) return;\n moved = true;\n options.onMove(last, move);\n };\n const finish = (cancelled: boolean) => {\n if (finished) return;\n finished = true;\n target.removeEventListener('pointermove', onMove as EventListener);\n target.removeEventListener('pointerup', onUp as EventListener);\n target.removeEventListener('pointercancel', onCancel as EventListener);\n target.removeEventListener('lostpointercapture', onCancel as EventListener);\n root.style.userSelect = userSelect;\n if (target.hasPointerCapture?.(pointerId)) target.releasePointerCapture(pointerId);\n if (moved && swallowClick) {\n const swallow = (click: Event) => click.stopPropagation();\n window.addEventListener('click', swallow, { capture: true, once: true });\n setTimeout(() => window.removeEventListener('click', swallow, { capture: true }));\n }\n options.onEnd?.({ ...last, moved, cancelled });\n };\n const onUp = (up: PointerEvent) => up.pointerId === pointerId && finish(false);\n const onCancel = (cancel: PointerEvent) => cancel.pointerId === pointerId && finish(true);\n\n target.addEventListener('pointermove', onMove as EventListener);\n target.addEventListener('pointerup', onUp as EventListener);\n target.addEventListener('pointercancel', onCancel as EventListener);\n target.addEventListener('lostpointercapture', onCancel as EventListener);\n return () => finish(true);\n}\n"],"mappings":";;AA8CA,SAAgB,UAAU,OAAqB,SAAkC;CAC/E,IAAI,MAAM,WAAW,KAAK,EAAE,MAAM,yBAAyB,UAAU,aAAa,CAAC;CACnF,MAAM,SAAS,QAAQ,iBAAiB,MAAM;CAC9C,MAAM,EAAE,WAAW,SAAS,QAAQ,SAAS,WAAW;CACxD,MAAM,YAAY,QAAQ,aAAa;CACvC,MAAM,eAAe,QAAQ,gBAAgB,YAAY;CACzD,IAAI,QAAQ,cAAc;CAC1B,IAAI,WAAW;CACf,IAAI,OAAkB;EAAE,SAAS;EAAQ,SAAS;EAAQ,QAAQ;EAAG,QAAQ;CAAE;CAG/E,IAAI;EACF,OAAO,kBAAkB,SAAS;CACpC,QAAQ,CAAC;CACT,MAAM,OAAO,SAAS;CACtB,MAAM,aAAa,KAAK,MAAM;CAC9B,KAAK,MAAM,aAAa;CAExB,MAAM,UAAU,SAAuB;EACrC,IAAI,KAAK,cAAc,WAAW;EAClC,OAAO;GACL,SAAS,KAAK;GACd,SAAS,KAAK;GACd,QAAQ,KAAK,UAAU;GACvB,QAAQ,KAAK,UAAU;EACzB;EACA,IAAI,CAAC,SAAS,KAAK,MAAM,KAAK,QAAQ,KAAK,MAAM,IAAI,WAAW;EAChE,QAAQ;EACR,QAAQ,OAAO,MAAM,IAAI;CAC3B;CACA,MAAM,UAAU,cAAuB;EACrC,IAAI,UAAU;EACd,WAAW;EACX,OAAO,oBAAoB,eAAe,MAAuB;EACjE,OAAO,oBAAoB,aAAa,IAAqB;EAC7D,OAAO,oBAAoB,iBAAiB,QAAyB;EACrE,OAAO,oBAAoB,sBAAsB,QAAyB;EAC1E,KAAK,MAAM,aAAa;EACxB,IAAI,OAAO,oBAAoB,SAAS,GAAG,OAAO,sBAAsB,SAAS;EACjF,IAAI,SAAS,cAAc;GACzB,MAAM,WAAW,UAAiB,MAAM,gBAAgB;GACxD,OAAO,iBAAiB,SAAS,SAAS;IAAE,SAAS;IAAM,MAAM;GAAK,CAAC;GACvE,iBAAiB,OAAO,oBAAoB,SAAS,SAAS,EAAE,SAAS,KAAK,CAAC,CAAC;EAClF;EACA,QAAQ,QAAQ;GAAE,GAAG;GAAM;GAAO;EAAU,CAAC;CAC/C;CACA,MAAM,QAAQ,OAAqB,GAAG,cAAc,aAAa,OAAO,KAAK;CAC7E,MAAM,YAAY,WAAyB,OAAO,cAAc,aAAa,OAAO,IAAI;CAExF,OAAO,iBAAiB,eAAe,MAAuB;CAC9D,OAAO,iBAAiB,aAAa,IAAqB;CAC1D,OAAO,iBAAiB,iBAAiB,QAAyB;CAClE,OAAO,iBAAiB,sBAAsB,QAAyB;CACvE,aAAa,OAAO,IAAI;AAC1B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 浮层开关的原因:Dialog、Drawer、Popover、Menu、Tooltip、Select、DatePicker 等的 onOpenChange(open, { reason, event })
|
|
3
|
+
* 都用这一套(参考 Base UI 的 eventDetails.reason)。只报告用户的操作与命令式调用;父级直接改 open 时不调用。
|
|
4
|
+
*
|
|
5
|
+
* <Dialog _open={open} onOpenChange={(open, { reason }) => reason === 'escape' && track('esc')} …>
|
|
6
|
+
*/
|
|
7
|
+
/** onOpenChange 的原因 */
|
|
8
|
+
export interface OpenChangeReasons {
|
|
9
|
+
/** 点了触发器(或在触发器上按 Enter、空格、方向键) */
|
|
10
|
+
trigger: unknown;
|
|
11
|
+
/** 点了浮层外面(模态的遮罩),或别的浮层打开把它顶掉 */
|
|
12
|
+
outside: unknown;
|
|
13
|
+
/** 按了 Esc */
|
|
14
|
+
escape: unknown;
|
|
15
|
+
/** 关闭按钮、取消按钮 */
|
|
16
|
+
close: unknown;
|
|
17
|
+
/** 确认按钮(对话框、Popconfirm) */
|
|
18
|
+
confirm: unknown;
|
|
19
|
+
/** 选了一项(菜单项、下拉选项、日期),浮层随之关闭 */
|
|
20
|
+
select: unknown;
|
|
21
|
+
/** 指针移入移出(Tooltip、HoverCard、子菜单) */
|
|
22
|
+
hover: unknown;
|
|
23
|
+
/** 焦点移入移出(Tooltip、离开下拉框) */
|
|
24
|
+
focus: unknown;
|
|
25
|
+
/** 代码调用:useDialog 的 open / close、快捷键(CommandPalette) */
|
|
26
|
+
imperative: unknown;
|
|
27
|
+
}
|
|
28
|
+
/** onOpenChange 的第二个参数 */
|
|
29
|
+
export interface OpenChangeDetails {
|
|
30
|
+
/** 为什么打开或关闭 */
|
|
31
|
+
reason: keyof OpenChangeReasons;
|
|
32
|
+
/** 引起变化的原生事件(有的话) */
|
|
33
|
+
event?: Event;
|
|
34
|
+
}
|
|
35
|
+
/** 浮层共有的 onOpenChange 属性 */
|
|
36
|
+
export interface OpenChangeProps {
|
|
37
|
+
/**
|
|
38
|
+
* 用户打开、关闭之后调用,带原因(Esc、点外面、关闭按钮、选了一项……);父级改 open 时不调用。
|
|
39
|
+
* 只是通知:模态要在关闭前确认用 beforeClose
|
|
40
|
+
*/
|
|
41
|
+
onOpenChange?: (open: boolean, details: OpenChangeDetails) => void;
|
|
42
|
+
}
|
|
43
|
+
/** openSetter 返回的开关函数:改 open 并通知 onOpenChange */
|
|
44
|
+
export type SetOpen = (open: boolean, reason: keyof OpenChangeReasons, event?: Event) => void;
|
|
45
|
+
/**
|
|
46
|
+
* 浮层的开关:改 open(写回父级的 _bind)并调用 onOpenChange;值没变时什么也不做。在组件 setup 里调用:
|
|
47
|
+
*
|
|
48
|
+
* const setOpen = openSetter(() => open, (next) => (open = next), () => onOpenChange);
|
|
49
|
+
* setOpen(false, 'select', event);
|
|
50
|
+
*/
|
|
51
|
+
export declare function openSetter(read: () => boolean, write: (open: boolean) => void, handler: () => OpenChangeProps['onOpenChange']): SetOpen;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/utils/dom/open-change.ts
|
|
2
|
+
/**
|
|
3
|
+
* 浮层的开关:改 open(写回父级的 _bind)并调用 onOpenChange;值没变时什么也不做。在组件 setup 里调用:
|
|
4
|
+
*
|
|
5
|
+
* const setOpen = openSetter(() => open, (next) => (open = next), () => onOpenChange);
|
|
6
|
+
* setOpen(false, 'select', event);
|
|
7
|
+
*/
|
|
8
|
+
function openSetter(read, write, handler) {
|
|
9
|
+
return (open, reason, event) => {
|
|
10
|
+
if (read() === open) return;
|
|
11
|
+
write(open);
|
|
12
|
+
handler()?.(open, {
|
|
13
|
+
reason,
|
|
14
|
+
event
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { openSetter };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=open-change.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-change.js","names":[],"sources":["../../../src/utils/dom/open-change.ts"],"sourcesContent":["/**\n * 浮层开关的原因:Dialog、Drawer、Popover、Menu、Tooltip、Select、DatePicker 等的 onOpenChange(open, { reason, event })\n * 都用这一套(参考 Base UI 的 eventDetails.reason)。只报告用户的操作与命令式调用;父级直接改 open 时不调用。\n *\n * <Dialog _open={open} onOpenChange={(open, { reason }) => reason === 'escape' && track('esc')} …>\n */\n\n/** onOpenChange 的原因 */\nexport interface OpenChangeReasons {\n /** 点了触发器(或在触发器上按 Enter、空格、方向键) */\n trigger: unknown;\n /** 点了浮层外面(模态的遮罩),或别的浮层打开把它顶掉 */\n outside: unknown;\n /** 按了 Esc */\n escape: unknown;\n /** 关闭按钮、取消按钮 */\n close: unknown;\n /** 确认按钮(对话框、Popconfirm) */\n confirm: unknown;\n /** 选了一项(菜单项、下拉选项、日期),浮层随之关闭 */\n select: unknown;\n /** 指针移入移出(Tooltip、HoverCard、子菜单) */\n hover: unknown;\n /** 焦点移入移出(Tooltip、离开下拉框) */\n focus: unknown;\n /** 代码调用:useDialog 的 open / close、快捷键(CommandPalette) */\n imperative: unknown;\n}\n\n/** onOpenChange 的第二个参数 */\nexport interface OpenChangeDetails {\n /** 为什么打开或关闭 */\n reason: keyof OpenChangeReasons;\n /** 引起变化的原生事件(有的话) */\n event?: Event;\n}\n\n/** 浮层共有的 onOpenChange 属性 */\nexport interface OpenChangeProps {\n /**\n * 用户打开、关闭之后调用,带原因(Esc、点外面、关闭按钮、选了一项……);父级改 open 时不调用。\n * 只是通知:模态要在关闭前确认用 beforeClose\n */\n onOpenChange?: (open: boolean, details: OpenChangeDetails) => void;\n}\n\n/** openSetter 返回的开关函数:改 open 并通知 onOpenChange */\nexport type SetOpen = (open: boolean, reason: keyof OpenChangeReasons, event?: Event) => void;\n\n/**\n * 浮层的开关:改 open(写回父级的 _bind)并调用 onOpenChange;值没变时什么也不做。在组件 setup 里调用:\n *\n * const setOpen = openSetter(() => open, (next) => (open = next), () => onOpenChange);\n * setOpen(false, 'select', event);\n */\nexport function openSetter(\n read: () => boolean,\n write: (open: boolean) => void,\n handler: () => OpenChangeProps['onOpenChange'],\n): SetOpen {\n return (open, reason, event) => {\n if (read() === open) return;\n write(open);\n handler()?.(open, { reason, event });\n };\n}\n"],"mappings":";;;;;;;AAuDA,SAAgB,WACd,MACA,OACA,SACS;CACT,QAAQ,MAAM,QAAQ,UAAU;EAC9B,IAAI,KAAK,MAAM,MAAM;EACrB,MAAM,IAAI;EACV,QAAQ,CAAC,GAAG,MAAM;GAAE;GAAQ;EAAM,CAAC;CACrC;AACF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** useOverflowItems 的选项 */
|
|
2
|
+
export interface OverflowItemsOptions {
|
|
3
|
+
/** 一行的容器(元素或组件实例) */
|
|
4
|
+
container: () => unknown;
|
|
5
|
+
/** 项数 */
|
|
6
|
+
count: () => number;
|
|
7
|
+
/** 至少显示几项(再窄也不折起),默认 0 */
|
|
8
|
+
min?: () => number;
|
|
9
|
+
/** 同一行里还要给别的东西留出的宽度(px),如 TagsInput 的输入框,默认 0 */
|
|
10
|
+
reserve?: () => number;
|
|
11
|
+
}
|
|
12
|
+
/** useOverflowItems 的返回值 */
|
|
13
|
+
export interface OverflowItems {
|
|
14
|
+
/** 显示前几项 */
|
|
15
|
+
readonly visible: number;
|
|
16
|
+
/** 折起了几项(count − visible) */
|
|
17
|
+
readonly hidden: number;
|
|
18
|
+
/** 第 index 项的属性:展开到项的根元素上 */
|
|
19
|
+
itemProps(index: number): Record<string, unknown>;
|
|
20
|
+
/** “+N”的属性:展开到它的根元素上 */
|
|
21
|
+
restProps(): Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
/** 量出一行放得下几项(在 setup 里调用) */
|
|
24
|
+
export declare function useOverflowItems(options: OverflowItemsOptions): OverflowItems;
|
|
25
|
+
/**
|
|
26
|
+
* 前几项放得下:都放得下时不需要“+N”;否则在留出“+N”的宽度后尽量多放
|
|
27
|
+
* (widths 是各项的宽度,gap 是项之间的间距)
|
|
28
|
+
*/
|
|
29
|
+
export declare function fitCount(widths: readonly number[], restWidth: number, gap: number, available: number): number;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { batchLayout } from "./layout-batch.js";
|
|
2
|
+
import { useResizeObserver } from "./resize.js";
|
|
3
|
+
import { shallowRef, watch } from "vue";
|
|
4
|
+
//#region src/utils/dom/overflow.ts
|
|
5
|
+
/**
|
|
6
|
+
* 一行放不下时折起后面的项:量出容器放得下前几项,其余收进“+N”(或“更多”菜单)。
|
|
7
|
+
* Select / TreeSelect 的 maxTagCount、Tabs 溢出、横向导航、工具栏都用它。参考 rc-overflow(Ant Design)的做法:
|
|
8
|
+
* 所有项都渲染,放不下的移出排版、藏起来但仍可测量,宽度变了、项数变了就重新算。
|
|
9
|
+
*
|
|
10
|
+
* const overflow = useOverflowItems({ container: () => row, count: () => tags.length });
|
|
11
|
+
* <div ref={row} style="display: flex; gap: 4px">
|
|
12
|
+
* {tags.map((tag, index) => <Tag {...overflow.itemProps(index)}>{tag}</Tag>)}
|
|
13
|
+
* <Tag {...overflow.restProps()}>+{overflow.hidden}</Tag>
|
|
14
|
+
* </div>
|
|
15
|
+
*
|
|
16
|
+
* - 容器是一行(flex、不换行、position: relative);项与“+N”都是它的直接子元素,间距取容器的 column-gap。
|
|
17
|
+
* itemProps、restProps 里有 style(藏起来时),与项自己的 style 一起用 mergeAttrs 合并。
|
|
18
|
+
* - 藏起来的项:绝对定位、visibility: hidden、aria-hidden 与 inert,不占位、读屏与 Tab 都跳过。
|
|
19
|
+
* “+N”在没有折起的项时同样藏起来(仍要量它的宽度,决定最后一项放不放得下)。
|
|
20
|
+
* - 宽度在下一次布局时读(batchLayout,与别的组件的读取合在一次布局里);量不到布局(服务端、测试环境)时全部显示。
|
|
21
|
+
*/
|
|
22
|
+
/** 藏起来但仍可测量:移出排版、不可见,读屏与 Tab 跳过 */
|
|
23
|
+
var MEASURE_ONLY = {
|
|
24
|
+
position: "absolute",
|
|
25
|
+
visibility: "hidden",
|
|
26
|
+
pointerEvents: "none",
|
|
27
|
+
insetInlineStart: 0,
|
|
28
|
+
insetBlockStart: 0
|
|
29
|
+
};
|
|
30
|
+
/** 量出一行放得下几项(在 setup 里调用) */
|
|
31
|
+
function useOverflowItems(options) {
|
|
32
|
+
const visible = shallowRef(Number.POSITIVE_INFINITY);
|
|
33
|
+
const container = () => {
|
|
34
|
+
const value = options.container();
|
|
35
|
+
return value instanceof HTMLElement ? value : null;
|
|
36
|
+
};
|
|
37
|
+
function measure() {
|
|
38
|
+
batchLayout(() => {
|
|
39
|
+
const root = container();
|
|
40
|
+
if (!root) return;
|
|
41
|
+
const items = [...root.querySelectorAll(":scope > [data-overflow-item]")];
|
|
42
|
+
const rest = root.querySelector(":scope > [data-overflow-rest]");
|
|
43
|
+
const style = getComputedStyle(root);
|
|
44
|
+
const available = root.clientWidth - (parseFloat(style.paddingInlineStart) || 0) - (parseFloat(style.paddingInlineEnd) || 0) - (options.reserve?.() ?? 0);
|
|
45
|
+
const gap = parseFloat(style.columnGap) || 0;
|
|
46
|
+
const widths = items.map((item) => item.getBoundingClientRect().width);
|
|
47
|
+
const restWidth = rest?.getBoundingClientRect().width ?? 0;
|
|
48
|
+
if (available <= 0 && widths.every((width) => width === 0)) return () => visible.value = Number.POSITIVE_INFINITY;
|
|
49
|
+
const fit = fitCount(widths, restWidth, gap, available);
|
|
50
|
+
const next = Math.max(fit, Math.min(options.min?.() ?? 0, widths.length));
|
|
51
|
+
return () => visible.value = next;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
useResizeObserver(() => {
|
|
55
|
+
const root = container();
|
|
56
|
+
if (!root) return [];
|
|
57
|
+
return [root, ...root.querySelectorAll(":scope > [data-overflow-item]")];
|
|
58
|
+
}, measure);
|
|
59
|
+
watch(() => [
|
|
60
|
+
options.count(),
|
|
61
|
+
options.reserve?.(),
|
|
62
|
+
options.min?.()
|
|
63
|
+
], measure, {
|
|
64
|
+
immediate: true,
|
|
65
|
+
flush: "post"
|
|
66
|
+
});
|
|
67
|
+
const shown = () => Math.min(visible.value, options.count());
|
|
68
|
+
return {
|
|
69
|
+
get visible() {
|
|
70
|
+
return shown();
|
|
71
|
+
},
|
|
72
|
+
get hidden() {
|
|
73
|
+
return options.count() - shown();
|
|
74
|
+
},
|
|
75
|
+
itemProps: (index) => index < shown() ? { "data-overflow-item": index } : {
|
|
76
|
+
"data-overflow-item": index,
|
|
77
|
+
"aria-hidden": "true",
|
|
78
|
+
inert: true,
|
|
79
|
+
style: MEASURE_ONLY
|
|
80
|
+
},
|
|
81
|
+
restProps: () => shown() < options.count() ? { "data-overflow-rest": "" } : {
|
|
82
|
+
"data-overflow-rest": "",
|
|
83
|
+
"aria-hidden": "true",
|
|
84
|
+
inert: true,
|
|
85
|
+
style: MEASURE_ONLY
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 前几项放得下:都放得下时不需要“+N”;否则在留出“+N”的宽度后尽量多放
|
|
91
|
+
* (widths 是各项的宽度,gap 是项之间的间距)
|
|
92
|
+
*/
|
|
93
|
+
function fitCount(widths, restWidth, gap, available) {
|
|
94
|
+
if (widths.reduce((sum, width, index) => sum + width + (index ? gap : 0), 0) <= available) return widths.length;
|
|
95
|
+
let used = restWidth;
|
|
96
|
+
let count = 0;
|
|
97
|
+
for (const width of widths) {
|
|
98
|
+
const next = used + gap + width;
|
|
99
|
+
if (next > available) break;
|
|
100
|
+
used = next;
|
|
101
|
+
count++;
|
|
102
|
+
}
|
|
103
|
+
return count;
|
|
104
|
+
}
|
|
105
|
+
//#endregion
|
|
106
|
+
export { fitCount, useOverflowItems };
|
|
107
|
+
|
|
108
|
+
//# sourceMappingURL=overflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overflow.js","names":[],"sources":["../../../src/utils/dom/overflow.ts"],"sourcesContent":["/**\n * 一行放不下时折起后面的项:量出容器放得下前几项,其余收进“+N”(或“更多”菜单)。\n * Select / TreeSelect 的 maxTagCount、Tabs 溢出、横向导航、工具栏都用它。参考 rc-overflow(Ant Design)的做法:\n * 所有项都渲染,放不下的移出排版、藏起来但仍可测量,宽度变了、项数变了就重新算。\n *\n * const overflow = useOverflowItems({ container: () => row, count: () => tags.length });\n * <div ref={row} style=\"display: flex; gap: 4px\">\n * {tags.map((tag, index) => <Tag {...overflow.itemProps(index)}>{tag}</Tag>)}\n * <Tag {...overflow.restProps()}>+{overflow.hidden}</Tag>\n * </div>\n *\n * - 容器是一行(flex、不换行、position: relative);项与“+N”都是它的直接子元素,间距取容器的 column-gap。\n * itemProps、restProps 里有 style(藏起来时),与项自己的 style 一起用 mergeAttrs 合并。\n * - 藏起来的项:绝对定位、visibility: hidden、aria-hidden 与 inert,不占位、读屏与 Tab 都跳过。\n * “+N”在没有折起的项时同样藏起来(仍要量它的宽度,决定最后一项放不放得下)。\n * - 宽度在下一次布局时读(batchLayout,与别的组件的读取合在一次布局里);量不到布局(服务端、测试环境)时全部显示。\n */\nimport { shallowRef, watch } from 'vue';\nimport { batchLayout } from './layout-batch';\nimport { useResizeObserver } from './resize';\n\n/** useOverflowItems 的选项 */\nexport interface OverflowItemsOptions {\n /** 一行的容器(元素或组件实例) */\n container: () => unknown;\n /** 项数 */\n count: () => number;\n /** 至少显示几项(再窄也不折起),默认 0 */\n min?: () => number;\n /** 同一行里还要给别的东西留出的宽度(px),如 TagsInput 的输入框,默认 0 */\n reserve?: () => number;\n}\n\n/** useOverflowItems 的返回值 */\nexport interface OverflowItems {\n /** 显示前几项 */\n readonly visible: number;\n /** 折起了几项(count − visible) */\n readonly hidden: number;\n /** 第 index 项的属性:展开到项的根元素上 */\n itemProps(index: number): Record<string, unknown>;\n /** “+N”的属性:展开到它的根元素上 */\n restProps(): Record<string, unknown>;\n}\n\n/** 藏起来但仍可测量:移出排版、不可见,读屏与 Tab 跳过 */\nconst MEASURE_ONLY = {\n position: 'absolute',\n visibility: 'hidden',\n pointerEvents: 'none',\n insetInlineStart: 0,\n insetBlockStart: 0,\n} as const;\n\n/** 量出一行放得下几项(在 setup 里调用) */\nexport function useOverflowItems(options: OverflowItemsOptions): OverflowItems {\n const visible = shallowRef(Number.POSITIVE_INFINITY);\n const container = () => {\n const value = options.container();\n return value instanceof HTMLElement ? value : null;\n };\n\n function measure() {\n batchLayout(() => {\n const root = container();\n if (!root) return;\n const items = [...root.querySelectorAll<HTMLElement>(':scope > [data-overflow-item]')];\n const rest = root.querySelector<HTMLElement>(':scope > [data-overflow-rest]');\n const style = getComputedStyle(root);\n const available =\n root.clientWidth -\n (parseFloat(style.paddingInlineStart) || 0) -\n (parseFloat(style.paddingInlineEnd) || 0) -\n (options.reserve?.() ?? 0);\n const gap = parseFloat(style.columnGap) || 0;\n const widths = items.map((item) => item.getBoundingClientRect().width);\n const restWidth = rest?.getBoundingClientRect().width ?? 0;\n // 量不到布局:全部显示\n if (available <= 0 && widths.every((width) => width === 0)) {\n return () => (visible.value = Number.POSITIVE_INFINITY);\n }\n const fit = fitCount(widths, restWidth, gap, available);\n const next = Math.max(fit, Math.min(options.min?.() ?? 0, widths.length));\n return () => (visible.value = next);\n });\n }\n\n useResizeObserver(() => {\n const root = container();\n if (!root) return [];\n return [root, ...root.querySelectorAll<HTMLElement>(':scope > [data-overflow-item]')];\n }, measure);\n // 挂载后量一次;项数变了、留出的宽度变了:新的项渲染后重新量\n watch(() => [options.count(), options.reserve?.(), options.min?.()], measure, {\n immediate: true,\n flush: 'post',\n });\n\n const shown = () => Math.min(visible.value, options.count());\n return {\n get visible() {\n return shown();\n },\n get hidden() {\n return options.count() - shown();\n },\n itemProps: (index) =>\n index < shown()\n ? { 'data-overflow-item': index }\n : { 'data-overflow-item': index, 'aria-hidden': 'true', inert: true, style: MEASURE_ONLY },\n restProps: () =>\n shown() < options.count()\n ? { 'data-overflow-rest': '' }\n : { 'data-overflow-rest': '', 'aria-hidden': 'true', inert: true, style: MEASURE_ONLY },\n };\n}\n\n/**\n * 前几项放得下:都放得下时不需要“+N”;否则在留出“+N”的宽度后尽量多放\n * (widths 是各项的宽度,gap 是项之间的间距)\n */\nexport function fitCount(\n widths: readonly number[],\n restWidth: number,\n gap: number,\n available: number,\n): number {\n const total = widths.reduce((sum, width, index) => sum + width + (index ? gap : 0), 0);\n if (total <= available) return widths.length;\n let used = restWidth;\n let count = 0;\n for (const width of widths) {\n const next = used + gap + width;\n if (next > available) break;\n used = next;\n count++;\n }\n return count;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA8CA,IAAM,eAAe;CACnB,UAAU;CACV,YAAY;CACZ,eAAe;CACf,kBAAkB;CAClB,iBAAiB;AACnB;;AAGA,SAAgB,iBAAiB,SAA8C;CAC7E,MAAM,UAAU,WAAW,OAAO,iBAAiB;CACnD,MAAM,kBAAkB;EACtB,MAAM,QAAQ,QAAQ,UAAU;EAChC,OAAO,iBAAiB,cAAc,QAAQ;CAChD;CAEA,SAAS,UAAU;EACjB,kBAAkB;GAChB,MAAM,OAAO,UAAU;GACvB,IAAI,CAAC,MAAM;GACX,MAAM,QAAQ,CAAC,GAAG,KAAK,iBAA8B,+BAA+B,CAAC;GACrF,MAAM,OAAO,KAAK,cAA2B,+BAA+B;GAC5E,MAAM,QAAQ,iBAAiB,IAAI;GACnC,MAAM,YACJ,KAAK,eACJ,WAAW,MAAM,kBAAkB,KAAK,MACxC,WAAW,MAAM,gBAAgB,KAAK,MACtC,QAAQ,UAAU,KAAK;GAC1B,MAAM,MAAM,WAAW,MAAM,SAAS,KAAK;GAC3C,MAAM,SAAS,MAAM,KAAK,SAAS,KAAK,sBAAsB,CAAC,CAAC,KAAK;GACrE,MAAM,YAAY,MAAM,sBAAsB,CAAC,CAAC,SAAS;GAEzD,IAAI,aAAa,KAAK,OAAO,OAAO,UAAU,UAAU,CAAC,GACvD,aAAc,QAAQ,QAAQ,OAAO;GAEvC,MAAM,MAAM,SAAS,QAAQ,WAAW,KAAK,SAAS;GACtD,MAAM,OAAO,KAAK,IAAI,KAAK,KAAK,IAAI,QAAQ,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC;GACxE,aAAc,QAAQ,QAAQ;EAChC,CAAC;CACH;CAEA,wBAAwB;EACtB,MAAM,OAAO,UAAU;EACvB,IAAI,CAAC,MAAM,OAAO,CAAC;EACnB,OAAO,CAAC,MAAM,GAAG,KAAK,iBAA8B,+BAA+B,CAAC;CACtF,GAAG,OAAO;CAEV,YAAY;EAAC,QAAQ,MAAM;EAAG,QAAQ,UAAU;EAAG,QAAQ,MAAM;CAAC,GAAG,SAAS;EAC5E,WAAW;EACX,OAAO;CACT,CAAC;CAED,MAAM,cAAc,KAAK,IAAI,QAAQ,OAAO,QAAQ,MAAM,CAAC;CAC3D,OAAO;EACL,IAAI,UAAU;GACZ,OAAO,MAAM;EACf;EACA,IAAI,SAAS;GACX,OAAO,QAAQ,MAAM,IAAI,MAAM;EACjC;EACA,YAAY,UACV,QAAQ,MAAM,IACV,EAAE,sBAAsB,MAAM,IAC9B;GAAE,sBAAsB;GAAO,eAAe;GAAQ,OAAO;GAAM,OAAO;EAAa;EAC7F,iBACE,MAAM,IAAI,QAAQ,MAAM,IACpB,EAAE,sBAAsB,GAAG,IAC3B;GAAE,sBAAsB;GAAI,eAAe;GAAQ,OAAO;GAAM,OAAO;EAAa;CAC5F;AACF;;;;;AAMA,SAAgB,SACd,QACA,WACA,KACA,WACQ;CAER,IADc,OAAO,QAAQ,KAAK,OAAO,UAAU,MAAM,SAAS,QAAQ,MAAM,IAAI,CAChF,KAAS,WAAW,OAAO,OAAO;CACtC,IAAI,OAAO;CACX,IAAI,QAAQ;CACZ,KAAK,MAAM,SAAS,QAAQ;EAC1B,MAAM,OAAO,OAAO,MAAM;EAC1B,IAAI,OAAO,WAAW;EACtB,OAAO;EACP;CACF;CACA,OAAO;AACT"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 点击模态 dialog 的遮罩时调用 onDismiss。不能只看 event.target === dialog:
|
|
3
|
+
* dialog 自己的内边距、以及在内容里按下再拖到遮罩上松开(选中文字)时,click 的目标也是 dialog。
|
|
4
|
+
* 所以按坐标判断,而且按下与松开都要在 dialog 的边框之外。返回撤销函数。
|
|
5
|
+
*/
|
|
6
|
+
export declare function dismissOnBackdrop(dialog: HTMLDialogElement, onDismiss: (event: MouseEvent) => void): () => void;
|
|
7
|
+
/**
|
|
8
|
+
* 记下一个打开的模态(Dialog 等组件在 showModal 后调用),返回移除函数,重复调用无副作用。
|
|
9
|
+
* 模态打开时外面的元素都是 inert 的,顶层的 manual popover 也不例外(见 native-overlay 的浏览器测试),
|
|
10
|
+
* 所以要在模态打开期间可交互的浮层(Toaster)用 topModal() 把自己移进最上层的模态里。
|
|
11
|
+
*/
|
|
12
|
+
export declare function trackModal(dialog: HTMLDialogElement): () => void;
|
|
13
|
+
/** 最上层的模态 dialog;没有时为 undefined。在渲染或 computed 里读取会跟着变化 */
|
|
14
|
+
export declare function topModal(): HTMLDialogElement | undefined;
|
|
15
|
+
/** openModalDialog 的选项 */
|
|
16
|
+
export interface ModalDialogOptions {
|
|
17
|
+
/** 锁定页面滚动,默认 true */
|
|
18
|
+
lockScroll?: boolean;
|
|
19
|
+
/** 点遮罩(对话框外面)关闭,默认 false */
|
|
20
|
+
dismissOnBackdrop?: boolean;
|
|
21
|
+
/** 点遮罩时怎样关闭,默认直接 dialog.close()(要先确认时换成自己的) */
|
|
22
|
+
onDismiss?: (event: MouseEvent) => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 以模态方式打开原生 dialog,接上全部的模态行为:记下焦点来源、showModal、登记为最上层的模态(topModal)、
|
|
26
|
+
* 锁定页面滚动、焦点陷阱,可选点遮罩关闭。返回释放函数:dialog 关闭时调用,撤销以上并把焦点还给来源。
|
|
27
|
+
* ModalCore(Dialog、Drawer、AlertDialog、CommandPalette)与 Tour 共用
|
|
28
|
+
*/
|
|
29
|
+
export declare function openModalDialog(dialog: HTMLDialogElement, { lockScroll: lock, dismissOnBackdrop: dismiss, onDismiss, }?: ModalDialogOptions): () => void;
|
|
30
|
+
/**
|
|
31
|
+
* 锁定页面滚动(打开模态时)。可以叠加:最后一个解锁时才恢复。
|
|
32
|
+
* 去掉滚动条后在结束边(滚动条那一侧,从右到左时在左边)补上等宽的内边距,加在原有的内边距上,
|
|
33
|
+
* 页面内容不会左右跳动。返回解锁函数,重复调用无副作用。
|
|
34
|
+
*/
|
|
35
|
+
export declare function lockScroll(): () => void;
|