@chenzy-design/svelte 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_floating/use-floating.d.ts +6 -0
- package/dist/_floating/use-floating.d.ts.map +1 -1
- package/dist/_floating/use-floating.js +38 -0
- package/dist/ai-chat-dialogue/AIChatDialogue.svelte +243 -0
- package/dist/ai-chat-dialogue/AIChatDialogue.svelte.d.ts +60 -0
- package/dist/ai-chat-dialogue/AIChatDialogue.svelte.d.ts.map +1 -0
- package/dist/ai-chat-dialogue/ContentItemRenderer.svelte +318 -0
- package/dist/ai-chat-dialogue/ContentItemRenderer.svelte.d.ts +18 -0
- package/dist/ai-chat-dialogue/ContentItemRenderer.svelte.d.ts.map +1 -0
- package/dist/ai-chat-dialogue/DialogueBox.svelte +403 -0
- package/dist/ai-chat-dialogue/DialogueBox.svelte.d.ts +50 -0
- package/dist/ai-chat-dialogue/DialogueBox.svelte.d.ts.map +1 -0
- package/dist/ai-chat-dialogue/index.d.ts +8 -0
- package/dist/ai-chat-dialogue/index.d.ts.map +1 -0
- package/dist/ai-chat-dialogue/index.js +6 -0
- package/dist/ai-chat-dialogue/meta.d.ts +174 -0
- package/dist/ai-chat-dialogue/meta.d.ts.map +1 -0
- package/dist/ai-chat-dialogue/meta.js +66 -0
- package/dist/ai-chat-dialogue/render-config.d.ts +57 -0
- package/dist/ai-chat-dialogue/render-config.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInput.svelte +1196 -0
- package/dist/ai-chat-input/AIChatInput.svelte.d.ts +146 -0
- package/dist/ai-chat-input/AIChatInput.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInputConfigureButton.svelte +94 -0
- package/dist/ai-chat-input/AIChatInputConfigureButton.svelte.d.ts +17 -0
- package/dist/ai-chat-input/AIChatInputConfigureButton.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInputConfigureItem.svelte +40 -0
- package/dist/ai-chat-input/AIChatInputConfigureItem.svelte.d.ts +16 -0
- package/dist/ai-chat-input/AIChatInputConfigureItem.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInputConfigureMcp.svelte +94 -0
- package/dist/ai-chat-input/AIChatInputConfigureMcp.svelte.d.ts +18 -0
- package/dist/ai-chat-input/AIChatInputConfigureMcp.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInputConfigureRadioButton.svelte +52 -0
- package/dist/ai-chat-input/AIChatInputConfigureRadioButton.svelte.d.ts +17 -0
- package/dist/ai-chat-input/AIChatInputConfigureRadioButton.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/AIChatInputConfigureSelect.svelte +50 -0
- package/dist/ai-chat-input/AIChatInputConfigureSelect.svelte.d.ts +16 -0
- package/dist/ai-chat-input/AIChatInputConfigureSelect.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/InputSlotNode.svelte +50 -0
- package/dist/ai-chat-input/InputSlotNode.svelte.d.ts +5 -0
- package/dist/ai-chat-input/InputSlotNode.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/SelectSlotNode.svelte +54 -0
- package/dist/ai-chat-input/SelectSlotNode.svelte.d.ts +5 -0
- package/dist/ai-chat-input/SelectSlotNode.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/SkillSlotNode.svelte +82 -0
- package/dist/ai-chat-input/SkillSlotNode.svelte.d.ts +5 -0
- package/dist/ai-chat-input/SkillSlotNode.svelte.d.ts.map +1 -0
- package/dist/ai-chat-input/configure-context.d.ts +12 -0
- package/dist/ai-chat-input/configure-context.d.ts.map +1 -0
- package/dist/ai-chat-input/configure-context.js +14 -0
- package/dist/ai-chat-input/index.d.ts +9 -0
- package/dist/ai-chat-input/index.d.ts.map +1 -0
- package/dist/ai-chat-input/index.js +9 -0
- package/dist/ai-chat-input/input-slot-extension.d.ts +18 -0
- package/dist/ai-chat-input/input-slot-extension.d.ts.map +1 -0
- package/dist/ai-chat-input/input-slot-extension.js +55 -0
- package/dist/ai-chat-input/input-slot-plugins.d.ts +34 -0
- package/dist/ai-chat-input/input-slot-plugins.d.ts.map +1 -0
- package/dist/ai-chat-input/input-slot-plugins.js +478 -0
- package/dist/ai-chat-input/meta.d.ts +284 -0
- package/dist/ai-chat-input/meta.d.ts.map +1 -0
- package/dist/ai-chat-input/meta.js +106 -0
- package/dist/ai-chat-input/select-slot-extension.d.ts +16 -0
- package/dist/ai-chat-input/select-slot-extension.d.ts.map +1 -0
- package/dist/ai-chat-input/select-slot-extension.js +35 -0
- package/dist/ai-chat-input/skill-slot-extension.d.ts +22 -0
- package/dist/ai-chat-input/skill-slot-extension.d.ts.map +1 -0
- package/dist/ai-chat-input/skill-slot-extension.js +46 -0
- package/dist/anchor/Anchor.svelte +393 -242
- package/dist/anchor/Anchor.svelte.d.ts +40 -17
- package/dist/anchor/Anchor.svelte.d.ts.map +1 -1
- package/dist/anchor/AnchorLink.svelte +226 -0
- package/dist/anchor/AnchorLink.svelte.d.ts +19 -0
- package/dist/anchor/AnchorLink.svelte.d.ts.map +1 -0
- package/dist/anchor/context.d.ts +43 -0
- package/dist/anchor/context.d.ts.map +1 -0
- package/dist/anchor/context.js +26 -0
- package/dist/anchor/index.d.ts +11 -2
- package/dist/anchor/index.d.ts.map +1 -1
- package/dist/anchor/index.js +10 -1
- package/dist/anchor/meta.d.ts +92 -43
- package/dist/anchor/meta.d.ts.map +1 -1
- package/dist/anchor/meta.js +124 -38
- package/dist/anchor/types.d.ts +32 -5
- package/dist/anchor/types.d.ts.map +1 -1
- package/dist/audio-player/AudioPlayer.svelte +614 -0
- package/dist/audio-player/AudioPlayer.svelte.d.ts +21 -0
- package/dist/audio-player/AudioPlayer.svelte.d.ts.map +1 -0
- package/dist/audio-player/AudioSlider.svelte +162 -0
- package/dist/audio-player/AudioSlider.svelte.d.ts +20 -0
- package/dist/audio-player/AudioSlider.svelte.d.ts.map +1 -0
- package/dist/audio-player/index.d.ts +3 -0
- package/dist/audio-player/index.d.ts.map +1 -0
- package/dist/audio-player/index.js +2 -0
- package/dist/audio-player/meta.d.ts +74 -0
- package/dist/audio-player/meta.d.ts.map +1 -0
- package/dist/audio-player/meta.js +96 -0
- package/dist/autocomplete/AutoComplete.svelte +307 -411
- package/dist/autocomplete/AutoComplete.svelte.d.ts +52 -47
- package/dist/autocomplete/AutoComplete.svelte.d.ts.map +1 -1
- package/dist/autocomplete/meta.d.ts +150 -34
- package/dist/autocomplete/meta.d.ts.map +1 -1
- package/dist/autocomplete/meta.js +43 -21
- package/dist/avatar/Avatar.svelte +784 -211
- package/dist/avatar/Avatar.svelte.d.ts +28 -23
- package/dist/avatar/Avatar.svelte.d.ts.map +1 -1
- package/dist/avatar/AvatarGroup.svelte +151 -70
- package/dist/avatar/AvatarGroup.svelte.d.ts +16 -17
- package/dist/avatar/AvatarGroup.svelte.d.ts.map +1 -1
- package/dist/avatar/TopSlotSvg.svelte +62 -0
- package/dist/avatar/TopSlotSvg.svelte.d.ts +8 -0
- package/dist/avatar/TopSlotSvg.svelte.d.ts.map +1 -0
- package/dist/avatar/context.d.ts +28 -1
- package/dist/avatar/context.d.ts.map +1 -1
- package/dist/avatar/index.d.ts +2 -1
- package/dist/avatar/index.d.ts.map +1 -1
- package/dist/avatar/meta.d.ts +124 -36
- package/dist/avatar/meta.d.ts.map +1 -1
- package/dist/avatar/meta.js +117 -24
- package/dist/back-top/BackTop.svelte +81 -231
- package/dist/back-top/BackTop.svelte.d.ts +10 -33
- package/dist/back-top/BackTop.svelte.d.ts.map +1 -1
- package/dist/back-top/meta.d.ts +23 -72
- package/dist/back-top/meta.d.ts.map +1 -1
- package/dist/back-top/meta.js +19 -79
- package/dist/badge/Badge.svelte +187 -249
- package/dist/badge/Badge.svelte.d.ts +23 -14
- package/dist/badge/Badge.svelte.d.ts.map +1 -1
- package/dist/badge/meta.d.ts +52 -44
- package/dist/badge/meta.d.ts.map +1 -1
- package/dist/badge/meta.js +35 -33
- package/dist/banner/Banner.svelte +189 -274
- package/dist/banner/Banner.svelte.d.ts +20 -23
- package/dist/banner/Banner.svelte.d.ts.map +1 -1
- package/dist/banner/index.d.ts +2 -1
- package/dist/banner/index.d.ts.map +1 -1
- package/dist/banner/meta.d.ts +41 -87
- package/dist/banner/meta.d.ts.map +1 -1
- package/dist/banner/meta.js +59 -79
- package/dist/breadcrumb/Breadcrumb.svelte +240 -118
- package/dist/breadcrumb/Breadcrumb.svelte.d.ts +35 -19
- package/dist/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
- package/dist/breadcrumb/Item.svelte +5 -5
- package/dist/breadcrumb/meta.d.ts +26 -19
- package/dist/breadcrumb/meta.d.ts.map +1 -1
- package/dist/breadcrumb/meta.js +51 -16
- package/dist/breadcrumb/types.d.ts +11 -1
- package/dist/breadcrumb/types.d.ts.map +1 -1
- package/dist/button/BaseButton.svelte +479 -0
- package/dist/button/BaseButton.svelte.d.ts +29 -0
- package/dist/button/BaseButton.svelte.d.ts.map +1 -0
- package/dist/button/Button.svelte +166 -296
- package/dist/button/Button.svelte.d.ts +12 -7
- package/dist/button/Button.svelte.d.ts.map +1 -1
- package/dist/button/ButtonGroup.svelte +66 -20
- package/dist/button/ButtonGroup.svelte.d.ts.map +1 -1
- package/dist/button/SplitButtonGroup.svelte +64 -101
- package/dist/button/SplitButtonGroup.svelte.d.ts +1 -21
- package/dist/button/SplitButtonGroup.svelte.d.ts.map +1 -1
- package/dist/button/meta.d.ts +28 -68
- package/dist/button/meta.d.ts.map +1 -1
- package/dist/button/meta.js +33 -24
- package/dist/calendar/Calendar.svelte +928 -1172
- package/dist/calendar/Calendar.svelte.d.ts +34 -104
- package/dist/calendar/Calendar.svelte.d.ts.map +1 -1
- package/dist/calendar/meta.d.ts +78 -168
- package/dist/calendar/meta.d.ts.map +1 -1
- package/dist/calendar/meta.js +123 -78
- package/dist/card/Card.svelte +171 -233
- package/dist/card/Card.svelte.d.ts +30 -24
- package/dist/card/Card.svelte.d.ts.map +1 -1
- package/dist/card/CardGroup.svelte +74 -0
- package/dist/card/CardGroup.svelte.d.ts +20 -0
- package/dist/card/CardGroup.svelte.d.ts.map +1 -0
- package/dist/card/CardMeta.svelte +38 -28
- package/dist/card/CardMeta.svelte.d.ts +5 -0
- package/dist/card/CardMeta.svelte.d.ts.map +1 -1
- package/dist/card/index.d.ts +3 -1
- package/dist/card/index.d.ts.map +1 -1
- package/dist/card/index.js +7 -2
- package/dist/card/meta.d.ts +177 -75
- package/dist/card/meta.d.ts.map +1 -1
- package/dist/card/meta.js +102 -45
- package/dist/carousel/Carousel.svelte +569 -569
- package/dist/carousel/Carousel.svelte.d.ts +37 -29
- package/dist/carousel/Carousel.svelte.d.ts.map +1 -1
- package/dist/carousel/meta.d.ts +73 -65
- package/dist/carousel/meta.d.ts.map +1 -1
- package/dist/carousel/meta.js +85 -43
- package/dist/cascader/Cascader.svelte +725 -391
- package/dist/cascader/Cascader.svelte.d.ts +48 -24
- package/dist/cascader/Cascader.svelte.d.ts.map +1 -1
- package/dist/cascader/meta.d.ts +281 -32
- package/dist/cascader/meta.d.ts.map +1 -1
- package/dist/cascader/meta.js +85 -12
- package/dist/chat/Chat.svelte +483 -0
- package/dist/chat/Chat.svelte.d.ts +76 -0
- package/dist/chat/Chat.svelte.d.ts.map +1 -0
- package/dist/chat/ChatBox.svelte +207 -0
- package/dist/chat/ChatBox.svelte.d.ts +26 -0
- package/dist/chat/ChatBox.svelte.d.ts.map +1 -0
- package/dist/chat/ChatBoxAction.svelte +190 -0
- package/dist/chat/ChatBoxAction.svelte.d.ts +18 -0
- package/dist/chat/ChatBoxAction.svelte.d.ts.map +1 -0
- package/dist/chat/ChatBoxAvatar.svelte +40 -0
- package/dist/chat/ChatBoxAvatar.svelte.d.ts +13 -0
- package/dist/chat/ChatBoxAvatar.svelte.d.ts.map +1 -0
- package/dist/chat/ChatBoxContent.svelte +238 -0
- package/dist/chat/ChatBoxContent.svelte.d.ts +17 -0
- package/dist/chat/ChatBoxContent.svelte.d.ts.map +1 -0
- package/dist/chat/ChatBoxTitle.svelte +40 -0
- package/dist/chat/ChatBoxTitle.svelte.d.ts +13 -0
- package/dist/chat/ChatBoxTitle.svelte.d.ts.map +1 -0
- package/dist/chat/ChatCode.svelte +139 -0
- package/dist/chat/ChatCode.svelte.d.ts +9 -0
- package/dist/chat/ChatCode.svelte.d.ts.map +1 -0
- package/dist/chat/Hint.svelte +82 -0
- package/dist/chat/Hint.svelte.d.ts +13 -0
- package/dist/chat/Hint.svelte.d.ts.map +1 -0
- package/dist/chat/InputBox.svelte +365 -0
- package/dist/chat/InputBox.svelte.d.ts +30 -0
- package/dist/chat/InputBox.svelte.d.ts.map +1 -0
- package/dist/chat/index.d.ts +7 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +5 -0
- package/dist/chat/meta.d.ts +297 -0
- package/dist/chat/meta.d.ts.map +1 -0
- package/dist/chat/meta.js +230 -0
- package/dist/chat/types.d.ts +94 -0
- package/dist/chat/types.d.ts.map +1 -0
- package/dist/chat/types.js +1 -0
- package/dist/checkbox/Checkbox.svelte +339 -148
- package/dist/checkbox/Checkbox.svelte.d.ts +27 -8
- package/dist/checkbox/Checkbox.svelte.d.ts.map +1 -1
- package/dist/checkbox/CheckboxGroup.svelte +52 -20
- package/dist/checkbox/CheckboxGroup.svelte.d.ts +7 -4
- package/dist/checkbox/CheckboxGroup.svelte.d.ts.map +1 -1
- package/dist/checkbox/context.d.ts +17 -7
- package/dist/checkbox/context.d.ts.map +1 -1
- package/dist/checkbox/index.d.ts +1 -1
- package/dist/checkbox/index.d.ts.map +1 -1
- package/dist/checkbox/meta.d.ts +49 -22
- package/dist/checkbox/meta.d.ts.map +1 -1
- package/dist/checkbox/meta.js +15 -13
- package/dist/code-highlight/CodeHighlight.svelte +298 -0
- package/dist/code-highlight/CodeHighlight.svelte.d.ts +18 -0
- package/dist/code-highlight/CodeHighlight.svelte.d.ts.map +1 -0
- package/dist/code-highlight/index.d.ts +4 -0
- package/dist/code-highlight/index.d.ts.map +1 -0
- package/dist/code-highlight/index.js +3 -0
- package/dist/code-highlight/meta.d.ts +61 -0
- package/dist/code-highlight/meta.d.ts.map +1 -0
- package/dist/code-highlight/meta.js +51 -0
- package/dist/code-highlight/prism-modules.d.ts +15 -0
- package/dist/collapse/Collapse.svelte +134 -324
- package/dist/collapse/Collapse.svelte.d.ts +24 -38
- package/dist/collapse/Collapse.svelte.d.ts.map +1 -1
- package/dist/collapse/CollapsePanel.svelte +143 -73
- package/dist/collapse/CollapsePanel.svelte.d.ts +16 -7
- package/dist/collapse/CollapsePanel.svelte.d.ts.map +1 -1
- package/dist/collapse/context.d.ts +18 -32
- package/dist/collapse/context.d.ts.map +1 -1
- package/dist/collapse/index.d.ts +1 -2
- package/dist/collapse/index.d.ts.map +1 -1
- package/dist/collapse/meta.d.ts +71 -54
- package/dist/collapse/meta.d.ts.map +1 -1
- package/dist/collapse/meta.js +55 -52
- package/dist/collapsible/Collapsible.svelte +224 -0
- package/dist/collapsible/Collapsible.svelte.d.ts +35 -0
- package/dist/collapsible/Collapsible.svelte.d.ts.map +1 -0
- package/dist/collapsible/index.d.ts +3 -0
- package/dist/collapsible/index.d.ts.map +1 -0
- package/dist/collapsible/index.js +2 -0
- package/dist/collapsible/meta.d.ts +115 -0
- package/dist/collapsible/meta.d.ts.map +1 -0
- package/dist/collapsible/meta.js +89 -0
- package/dist/color-picker/ColorPicker.svelte +395 -839
- package/dist/color-picker/ColorPicker.svelte.d.ts +29 -39
- package/dist/color-picker/ColorPicker.svelte.d.ts.map +1 -1
- package/dist/color-picker/index.d.ts +1 -0
- package/dist/color-picker/index.d.ts.map +1 -1
- package/dist/color-picker/index.js +1 -0
- package/dist/color-picker/meta.d.ts +43 -90
- package/dist/color-picker/meta.d.ts.map +1 -1
- package/dist/color-picker/meta.js +49 -37
- package/dist/components.d.ts +1773 -422
- package/dist/components.json +17159 -9219
- package/dist/config-provider/ConfigProvider.svelte +186 -151
- package/dist/config-provider/ConfigProvider.svelte.d.ts +12 -44
- package/dist/config-provider/ConfigProvider.svelte.d.ts.map +1 -1
- package/dist/config-provider/context.d.ts +21 -13
- package/dist/config-provider/context.d.ts.map +1 -1
- package/dist/config-provider/index.d.ts +9 -7
- package/dist/config-provider/index.d.ts.map +1 -1
- package/dist/config-provider/index.js +21 -7
- package/dist/config-provider/meta.d.ts +30 -75
- package/dist/config-provider/meta.d.ts.map +1 -1
- package/dist/config-provider/meta.js +30 -73
- package/dist/cropper/Cropper.svelte +536 -0
- package/dist/cropper/Cropper.svelte.d.ts +47 -0
- package/dist/cropper/Cropper.svelte.d.ts.map +1 -0
- package/dist/cropper/index.d.ts +4 -0
- package/dist/cropper/index.d.ts.map +1 -0
- package/dist/cropper/index.js +2 -0
- package/dist/cropper/meta.d.ts +136 -0
- package/dist/cropper/meta.d.ts.map +1 -0
- package/dist/cropper/meta.js +97 -0
- package/dist/date-picker/DatePicker.svelte +1646 -360
- package/dist/date-picker/DatePicker.svelte.d.ts +90 -37
- package/dist/date-picker/DatePicker.svelte.d.ts.map +1 -1
- package/dist/date-picker/index.d.ts +0 -2
- package/dist/date-picker/index.d.ts.map +1 -1
- package/dist/date-picker/index.js +0 -2
- package/dist/date-picker/meta.d.ts +309 -26
- package/dist/date-picker/meta.d.ts.map +1 -1
- package/dist/date-picker/meta.js +89 -14
- package/dist/descriptions/Descriptions.svelte +213 -223
- package/dist/descriptions/Descriptions.svelte.d.ts +16 -25
- package/dist/descriptions/Descriptions.svelte.d.ts.map +1 -1
- package/dist/descriptions/DescriptionsItem.svelte +58 -28
- package/dist/descriptions/DescriptionsItem.svelte.d.ts +12 -4
- package/dist/descriptions/DescriptionsItem.svelte.d.ts.map +1 -1
- package/dist/descriptions/context.d.ts +9 -5
- package/dist/descriptions/context.d.ts.map +1 -1
- package/dist/descriptions/index.d.ts +2 -2
- package/dist/descriptions/index.d.ts.map +1 -1
- package/dist/descriptions/meta.d.ts +51 -49
- package/dist/descriptions/meta.d.ts.map +1 -1
- package/dist/descriptions/meta.js +41 -20
- package/dist/descriptions/types.d.ts +13 -3
- package/dist/descriptions/types.d.ts.map +1 -1
- package/dist/divider/Divider.svelte +86 -94
- package/dist/divider/Divider.svelte.d.ts +2 -2
- package/dist/divider/Divider.svelte.d.ts.map +1 -1
- package/dist/divider/meta.d.ts +19 -25
- package/dist/divider/meta.d.ts.map +1 -1
- package/dist/divider/meta.js +29 -11
- package/dist/drag-move/DragMove.svelte +106 -0
- package/dist/drag-move/DragMove.svelte.d.ts +30 -0
- package/dist/drag-move/DragMove.svelte.d.ts.map +1 -0
- package/dist/drag-move/index.d.ts +4 -0
- package/dist/drag-move/index.d.ts.map +1 -0
- package/dist/drag-move/index.js +3 -0
- package/dist/drag-move/meta.d.ts +102 -0
- package/dist/drag-move/meta.d.ts.map +1 -0
- package/dist/drag-move/meta.js +77 -0
- package/dist/dropdown/Dropdown.svelte +426 -344
- package/dist/dropdown/Dropdown.svelte.d.ts +55 -58
- package/dist/dropdown/Dropdown.svelte.d.ts.map +1 -1
- package/dist/dropdown/DropdownDivider.svelte +20 -8
- package/dist/dropdown/DropdownDivider.svelte.d.ts +7 -16
- package/dist/dropdown/DropdownDivider.svelte.d.ts.map +1 -1
- package/dist/dropdown/DropdownItem.svelte +163 -91
- package/dist/dropdown/DropdownItem.svelte.d.ts +25 -11
- package/dist/dropdown/DropdownItem.svelte.d.ts.map +1 -1
- package/dist/dropdown/DropdownMenu.svelte +21 -9
- package/dist/dropdown/DropdownMenu.svelte.d.ts +6 -1
- package/dist/dropdown/DropdownMenu.svelte.d.ts.map +1 -1
- package/dist/dropdown/DropdownTitle.svelte +38 -20
- package/dist/dropdown/DropdownTitle.svelte.d.ts +6 -1
- package/dist/dropdown/DropdownTitle.svelte.d.ts.map +1 -1
- package/dist/dropdown/context.d.ts +18 -6
- package/dist/dropdown/context.d.ts.map +1 -1
- package/dist/dropdown/index.d.ts +3 -6
- package/dist/dropdown/index.d.ts.map +1 -1
- package/dist/dropdown/index.js +3 -6
- package/dist/dropdown/meta.d.ts +183 -63
- package/dist/dropdown/meta.d.ts.map +1 -1
- package/dist/dropdown/meta.js +122 -73
- package/dist/dropdown/types.d.ts +39 -42
- package/dist/dropdown/types.d.ts.map +1 -1
- package/dist/dropdown/types.js +1 -12
- package/dist/empty/Empty.svelte +136 -249
- package/dist/empty/Empty.svelte.d.ts +23 -9
- package/dist/empty/Empty.svelte.d.ts.map +1 -1
- package/dist/empty/meta.d.ts +29 -18
- package/dist/empty/meta.d.ts.map +1 -1
- package/dist/empty/meta.js +21 -26
- package/dist/feedback/Feedback.svelte +330 -0
- package/dist/feedback/Feedback.svelte.d.ts +46 -0
- package/dist/feedback/Feedback.svelte.d.ts.map +1 -0
- package/dist/feedback/index.d.ts +4 -0
- package/dist/feedback/index.d.ts.map +1 -0
- package/dist/feedback/index.js +2 -0
- package/dist/feedback/meta.d.ts +105 -0
- package/dist/feedback/meta.d.ts.map +1 -0
- package/dist/feedback/meta.js +65 -0
- package/dist/float-button/FloatButton.svelte +161 -0
- package/dist/float-button/FloatButton.svelte.d.ts +5 -0
- package/dist/float-button/FloatButton.svelte.d.ts.map +1 -0
- package/dist/float-button/FloatButtonGroup.svelte +90 -0
- package/dist/float-button/FloatButtonGroup.svelte.d.ts +5 -0
- package/dist/float-button/FloatButtonGroup.svelte.d.ts.map +1 -0
- package/dist/float-button/index.d.ts +5 -0
- package/dist/float-button/index.d.ts.map +1 -0
- package/dist/float-button/index.js +3 -0
- package/dist/float-button/meta.d.ts +136 -0
- package/dist/float-button/meta.d.ts.map +1 -0
- package/dist/float-button/meta.js +104 -0
- package/dist/float-button/types.d.ts +59 -0
- package/dist/float-button/types.d.ts.map +1 -0
- package/dist/float-button/types.js +1 -0
- package/dist/form/Field.svelte +315 -192
- package/dist/form/Field.svelte.d.ts +70 -2
- package/dist/form/Field.svelte.d.ts.map +1 -1
- package/dist/form/FieldArray.svelte +115 -21
- package/dist/form/FieldArray.svelte.d.ts +21 -3
- package/dist/form/FieldArray.svelte.d.ts.map +1 -1
- package/dist/form/Form.svelte +260 -52
- package/dist/form/Form.svelte.d.ts +84 -12
- package/dist/form/Form.svelte.d.ts.map +1 -1
- package/dist/form/FormAutoComplete.svelte +52 -0
- package/dist/form/FormAutoComplete.svelte.d.ts +17 -0
- package/dist/form/FormAutoComplete.svelte.d.ts.map +1 -0
- package/dist/form/FormCascader.svelte +25 -55
- package/dist/form/FormCascader.svelte.d.ts +2 -13
- package/dist/form/FormCascader.svelte.d.ts.map +1 -1
- package/dist/form/FormCheckbox.svelte +24 -56
- package/dist/form/FormCheckbox.svelte.d.ts +2 -14
- package/dist/form/FormCheckbox.svelte.d.ts.map +1 -1
- package/dist/form/FormCheckboxGroup.svelte +48 -0
- package/dist/form/FormCheckboxGroup.svelte.d.ts +15 -0
- package/dist/form/FormCheckboxGroup.svelte.d.ts.map +1 -0
- package/dist/form/FormDatePicker.svelte +24 -53
- package/dist/form/FormDatePicker.svelte.d.ts +2 -13
- package/dist/form/FormDatePicker.svelte.d.ts.map +1 -1
- package/dist/form/FormErrorMessage.svelte +75 -29
- package/dist/form/FormErrorMessage.svelte.d.ts +17 -4
- package/dist/form/FormErrorMessage.svelte.d.ts.map +1 -1
- package/dist/form/FormInput.svelte +31 -70
- package/dist/form/FormInput.svelte.d.ts +7 -19
- package/dist/form/FormInput.svelte.d.ts.map +1 -1
- package/dist/form/FormInputGroup.svelte +146 -0
- package/dist/form/FormInputGroup.svelte.d.ts +32 -0
- package/dist/form/FormInputGroup.svelte.d.ts.map +1 -0
- package/dist/form/FormInputNumber.svelte +74 -0
- package/dist/form/FormInputNumber.svelte.d.ts +20 -0
- package/dist/form/FormInputNumber.svelte.d.ts.map +1 -0
- package/dist/form/FormLabel.svelte +133 -24
- package/dist/form/FormLabel.svelte.d.ts +17 -4
- package/dist/form/FormLabel.svelte.d.ts.map +1 -1
- package/dist/form/FormPinCode.svelte +52 -0
- package/dist/form/FormPinCode.svelte.d.ts +16 -0
- package/dist/form/FormPinCode.svelte.d.ts.map +1 -0
- package/dist/form/FormRadio.svelte +23 -55
- package/dist/form/FormRadio.svelte.d.ts +2 -14
- package/dist/form/FormRadio.svelte.d.ts.map +1 -1
- package/dist/form/FormRadioGroup.svelte +54 -0
- package/dist/form/FormRadioGroup.svelte.d.ts +16 -0
- package/dist/form/FormRadioGroup.svelte.d.ts.map +1 -0
- package/dist/form/FormRating.svelte +24 -58
- package/dist/form/FormRating.svelte.d.ts +2 -14
- package/dist/form/FormRating.svelte.d.ts.map +1 -1
- package/dist/form/FormSection.svelte +35 -25
- package/dist/form/FormSection.svelte.d.ts +3 -1
- package/dist/form/FormSection.svelte.d.ts.map +1 -1
- package/dist/form/FormSelect.svelte +44 -68
- package/dist/form/FormSelect.svelte.d.ts +5 -16
- package/dist/form/FormSelect.svelte.d.ts.map +1 -1
- package/dist/form/FormSlider.svelte +33 -65
- package/dist/form/FormSlider.svelte.d.ts +2 -14
- package/dist/form/FormSlider.svelte.d.ts.map +1 -1
- package/dist/form/FormSlot.svelte +61 -20
- package/dist/form/FormSlot.svelte.d.ts +16 -2
- package/dist/form/FormSlot.svelte.d.ts.map +1 -1
- package/dist/form/FormSwitch.svelte +27 -59
- package/dist/form/FormSwitch.svelte.d.ts +4 -15
- package/dist/form/FormSwitch.svelte.d.ts.map +1 -1
- package/dist/form/FormTagInput.svelte +24 -53
- package/dist/form/FormTagInput.svelte.d.ts +2 -13
- package/dist/form/FormTagInput.svelte.d.ts.map +1 -1
- package/dist/form/FormTextArea.svelte +66 -0
- package/dist/form/FormTextArea.svelte.d.ts +18 -0
- package/dist/form/FormTextArea.svelte.d.ts.map +1 -0
- package/dist/form/FormTimePicker.svelte +51 -0
- package/dist/form/FormTimePicker.svelte.d.ts +15 -0
- package/dist/form/FormTimePicker.svelte.d.ts.map +1 -0
- package/dist/form/FormTreeSelect.svelte +26 -57
- package/dist/form/FormTreeSelect.svelte.d.ts +3 -14
- package/dist/form/FormTreeSelect.svelte.d.ts.map +1 -1
- package/dist/form/FormUpload.svelte +22 -63
- package/dist/form/FormUpload.svelte.d.ts +3 -15
- package/dist/form/FormUpload.svelte.d.ts.map +1 -1
- package/dist/form/GroupHookPanel.svelte +21 -0
- package/dist/form/GroupHookPanel.svelte.d.ts +19 -0
- package/dist/form/GroupHookPanel.svelte.d.ts.map +1 -0
- package/dist/form/context.d.ts +0 -3
- package/dist/form/context.d.ts.map +1 -1
- package/dist/form/field-props.d.ts +84 -0
- package/dist/form/field-props.d.ts.map +1 -0
- package/dist/form/field-props.js +58 -0
- package/dist/form/hooks.d.ts +53 -0
- package/dist/form/hooks.d.ts.map +1 -0
- package/dist/form/hooks.js +36 -0
- package/dist/form/index.d.ts +57 -4
- package/dist/form/index.d.ts.map +1 -1
- package/dist/form/index.js +60 -3
- package/dist/form/input-group-context.d.ts +7 -0
- package/dist/form/input-group-context.d.ts.map +1 -0
- package/dist/form/input-group-context.js +17 -0
- package/dist/form/meta.d.ts +213 -16
- package/dist/form/meta.d.ts.map +1 -1
- package/dist/form/meta.js +103 -15
- package/dist/grid/Col.svelte +1482 -78
- package/dist/grid/Col.svelte.d.ts +3 -5
- package/dist/grid/Col.svelte.d.ts.map +1 -1
- package/dist/grid/Row.svelte +151 -69
- package/dist/grid/Row.svelte.d.ts +9 -7
- package/dist/grid/Row.svelte.d.ts.map +1 -1
- package/dist/grid/meta.d.ts +37 -28
- package/dist/grid/meta.d.ts.map +1 -1
- package/dist/grid/meta.js +31 -25
- package/dist/highlight/Highlight.svelte +46 -66
- package/dist/highlight/Highlight.svelte.d.ts +9 -22
- package/dist/highlight/Highlight.svelte.d.ts.map +1 -1
- package/dist/highlight/meta.d.ts +12 -51
- package/dist/highlight/meta.d.ts.map +1 -1
- package/dist/highlight/meta.js +16 -46
- package/dist/hotkeys/HotKeys.svelte +152 -0
- package/dist/hotkeys/HotKeys.svelte.d.ts +28 -0
- package/dist/hotkeys/HotKeys.svelte.d.ts.map +1 -0
- package/dist/hotkeys/index.d.ts +12 -0
- package/dist/hotkeys/index.d.ts.map +1 -0
- package/dist/hotkeys/index.js +8 -0
- package/dist/hotkeys/meta.d.ts +103 -0
- package/dist/hotkeys/meta.d.ts.map +1 -0
- package/dist/hotkeys/meta.js +65 -0
- package/dist/icon/index.d.ts +1 -1
- package/dist/icon/index.d.ts.map +1 -1
- package/dist/icon/index.js +1 -1
- package/dist/icon/meta.d.ts +20 -28
- package/dist/icon/meta.d.ts.map +1 -1
- package/dist/icon/meta.js +20 -20
- package/dist/iconbutton/IconButton.svelte +89 -0
- package/dist/iconbutton/IconButton.svelte.d.ts +53 -0
- package/dist/iconbutton/IconButton.svelte.d.ts.map +1 -0
- package/dist/iconbutton/index.d.ts +3 -0
- package/dist/iconbutton/index.d.ts.map +1 -0
- package/dist/iconbutton/index.js +2 -0
- package/dist/iconbutton/meta.d.ts +150 -0
- package/dist/iconbutton/meta.d.ts.map +1 -0
- package/dist/iconbutton/meta.js +53 -0
- package/dist/illustrations/IllustrationConstruction.svelte +25 -0
- package/dist/illustrations/IllustrationConstruction.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationConstruction.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationConstructionDark.svelte +25 -0
- package/dist/illustrations/IllustrationConstructionDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationConstructionDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationFailure.svelte +25 -0
- package/dist/illustrations/IllustrationFailure.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationFailure.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationFailureDark.svelte +25 -0
- package/dist/illustrations/IllustrationFailureDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationFailureDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationIdle.svelte +25 -0
- package/dist/illustrations/IllustrationIdle.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationIdle.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationIdleDark.svelte +25 -0
- package/dist/illustrations/IllustrationIdleDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationIdleDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoAccess.svelte +25 -0
- package/dist/illustrations/IllustrationNoAccess.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoAccess.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoAccessDark.svelte +25 -0
- package/dist/illustrations/IllustrationNoAccessDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoAccessDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoContent.svelte +25 -0
- package/dist/illustrations/IllustrationNoContent.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoContent.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoContentDark.svelte +25 -0
- package/dist/illustrations/IllustrationNoContentDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoContentDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoResult.svelte +25 -0
- package/dist/illustrations/IllustrationNoResult.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoResult.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNoResultDark.svelte +25 -0
- package/dist/illustrations/IllustrationNoResultDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNoResultDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNotFound.svelte +25 -0
- package/dist/illustrations/IllustrationNotFound.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNotFound.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationNotFoundDark.svelte +25 -0
- package/dist/illustrations/IllustrationNotFoundDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationNotFoundDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationSuccess.svelte +25 -0
- package/dist/illustrations/IllustrationSuccess.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationSuccess.svelte.d.ts.map +1 -0
- package/dist/illustrations/IllustrationSuccessDark.svelte +25 -0
- package/dist/illustrations/IllustrationSuccessDark.svelte.d.ts +8 -0
- package/dist/illustrations/IllustrationSuccessDark.svelte.d.ts.map +1 -0
- package/dist/illustrations/index.d.ts +22 -0
- package/dist/illustrations/index.d.ts.map +1 -0
- package/dist/illustrations/index.js +21 -0
- package/dist/image/Image.svelte +260 -283
- package/dist/image/Image.svelte.d.ts +20 -21
- package/dist/image/Image.svelte.d.ts.map +1 -1
- package/dist/image/ImagePreview.svelte +201 -297
- package/dist/image/ImagePreview.svelte.d.ts +7 -10
- package/dist/image/ImagePreview.svelte.d.ts.map +1 -1
- package/dist/image/PreviewFooter.svelte +400 -0
- package/dist/image/PreviewFooter.svelte.d.ts +62 -0
- package/dist/image/PreviewFooter.svelte.d.ts.map +1 -0
- package/dist/image/PreviewHeader.svelte +93 -0
- package/dist/image/PreviewHeader.svelte.d.ts +16 -0
- package/dist/image/PreviewHeader.svelte.d.ts.map +1 -0
- package/dist/image/PreviewImage.svelte +296 -0
- package/dist/image/PreviewImage.svelte.d.ts +26 -0
- package/dist/image/PreviewImage.svelte.d.ts.map +1 -0
- package/dist/image/PreviewInner.svelte +554 -0
- package/dist/image/PreviewInner.svelte.d.ts +58 -0
- package/dist/image/PreviewInner.svelte.d.ts.map +1 -0
- package/dist/image/download.d.ts +8 -0
- package/dist/image/download.d.ts.map +1 -0
- package/dist/image/download.js +29 -0
- package/dist/image/index.d.ts +6 -7
- package/dist/image/index.d.ts.map +1 -1
- package/dist/image/index.js +5 -5
- package/dist/image/meta.d.ts +231 -88
- package/dist/image/meta.d.ts.map +1 -1
- package/dist/image/meta.js +93 -83
- package/dist/image/previewContext.d.ts +29 -0
- package/dist/image/previewContext.d.ts.map +1 -0
- package/dist/image/previewContext.js +8 -0
- package/dist/image/previewGeometry.d.ts +70 -0
- package/dist/image/previewGeometry.d.ts.map +1 -0
- package/dist/image/previewGeometry.js +184 -0
- package/dist/image/types.d.ts +66 -0
- package/dist/image/types.d.ts.map +1 -0
- package/dist/image/types.js +1 -0
- package/dist/index.d.ts +48 -26
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +40 -22
- package/dist/input/Input.svelte +537 -320
- package/dist/input/Input.svelte.d.ts +69 -21
- package/dist/input/Input.svelte.d.ts.map +1 -1
- package/dist/input/InputGroup.svelte +188 -0
- package/dist/input/InputGroup.svelte.d.ts +35 -0
- package/dist/input/InputGroup.svelte.d.ts.map +1 -0
- package/dist/input/TextArea.svelte +788 -0
- package/dist/input/TextArea.svelte.d.ts +104 -0
- package/dist/input/TextArea.svelte.d.ts.map +1 -0
- package/dist/input/context.d.ts +13 -0
- package/dist/input/context.d.ts.map +1 -0
- package/dist/input/context.js +5 -0
- package/dist/input/index.d.ts +4 -1
- package/dist/input/index.d.ts.map +1 -1
- package/dist/input/index.js +5 -1
- package/dist/input/meta.d.ts +802 -22
- package/dist/input/meta.d.ts.map +1 -1
- package/dist/input/meta.js +196 -17
- package/dist/input-number/InputNumber.svelte +446 -427
- package/dist/input-number/InputNumber.svelte.d.ts +73 -45
- package/dist/input-number/InputNumber.svelte.d.ts.map +1 -1
- package/dist/input-number/meta.d.ts +140 -48
- package/dist/input-number/meta.d.ts.map +1 -1
- package/dist/input-number/meta.js +39 -22
- package/dist/json-viewer/JsonViewer.svelte +528 -0
- package/dist/json-viewer/JsonViewer.svelte.d.ts +43 -0
- package/dist/json-viewer/JsonViewer.svelte.d.ts.map +1 -0
- package/dist/json-viewer/index.d.ts +4 -0
- package/dist/json-viewer/index.d.ts.map +1 -0
- package/dist/json-viewer/index.js +2 -0
- package/dist/json-viewer/meta.d.ts +129 -0
- package/dist/{lottie-icon → json-viewer}/meta.d.ts.map +1 -1
- package/dist/json-viewer/meta.js +130 -0
- package/dist/json-viewer/semi-json-viewer-core.d.ts +94 -0
- package/dist/layout/Content.svelte +8 -25
- package/dist/layout/Content.svelte.d.ts +1 -3
- package/dist/layout/Content.svelte.d.ts.map +1 -1
- package/dist/layout/Footer.svelte +7 -40
- package/dist/layout/Footer.svelte.d.ts +1 -4
- package/dist/layout/Footer.svelte.d.ts.map +1 -1
- package/dist/layout/Header.svelte +7 -37
- package/dist/layout/Header.svelte.d.ts +1 -4
- package/dist/layout/Header.svelte.d.ts.map +1 -1
- package/dist/layout/Layout.svelte +30 -17
- package/dist/layout/Layout.svelte.d.ts +3 -1
- package/dist/layout/Layout.svelte.d.ts.map +1 -1
- package/dist/layout/Sider.svelte +71 -186
- package/dist/layout/Sider.svelte.d.ts +15 -19
- package/dist/layout/Sider.svelte.d.ts.map +1 -1
- package/dist/layout/meta.d.ts +28 -91
- package/dist/layout/meta.d.ts.map +1 -1
- package/dist/layout/meta.js +38 -56
- package/dist/list/List.svelte +158 -825
- package/dist/list/List.svelte.d.ts +32 -70
- package/dist/list/List.svelte.d.ts.map +1 -1
- package/dist/list/ListItem.svelte +129 -131
- package/dist/list/ListItem.svelte.d.ts +21 -12
- package/dist/list/ListItem.svelte.d.ts.map +1 -1
- package/dist/list/context.d.ts +32 -23
- package/dist/list/context.d.ts.map +1 -1
- package/dist/list/index.d.ts +3 -8
- package/dist/list/index.d.ts.map +1 -1
- package/dist/list/index.js +4 -8
- package/dist/list/meta.d.ts +110 -98
- package/dist/list/meta.d.ts.map +1 -1
- package/dist/list/meta.js +76 -58
- package/dist/lottie/Lottie.svelte +138 -0
- package/dist/lottie/Lottie.svelte.d.ts +32 -0
- package/dist/lottie/Lottie.svelte.d.ts.map +1 -0
- package/dist/lottie/index.d.ts +3 -0
- package/dist/lottie/index.d.ts.map +1 -0
- package/dist/lottie/index.js +2 -0
- package/dist/lottie/meta.d.ts +76 -0
- package/dist/lottie/meta.d.ts.map +1 -0
- package/dist/lottie/meta.js +81 -0
- package/dist/markdown-render/HastNode.svelte +66 -0
- package/dist/markdown-render/HastNode.svelte.d.ts +11 -0
- package/dist/markdown-render/HastNode.svelte.d.ts.map +1 -0
- package/dist/markdown-render/MarkdownRender.svelte +152 -0
- package/dist/markdown-render/MarkdownRender.svelte.d.ts +26 -0
- package/dist/markdown-render/MarkdownRender.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdCode.svelte +20 -0
- package/dist/markdown-render/components/MdCode.svelte.d.ts +9 -0
- package/dist/markdown-render/components/MdCode.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdHeading.svelte +29 -0
- package/dist/markdown-render/components/MdHeading.svelte.d.ts +11 -0
- package/dist/markdown-render/components/MdHeading.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdImage.svelte +28 -0
- package/dist/markdown-render/components/MdImage.svelte.d.ts +9 -0
- package/dist/markdown-render/components/MdImage.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdLink.svelte +33 -0
- package/dist/markdown-render/components/MdLink.svelte.d.ts +10 -0
- package/dist/markdown-render/components/MdLink.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdParagraph.svelte +19 -0
- package/dist/markdown-render/components/MdParagraph.svelte.d.ts +9 -0
- package/dist/markdown-render/components/MdParagraph.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdPre.svelte +48 -0
- package/dist/markdown-render/components/MdPre.svelte.d.ts +9 -0
- package/dist/markdown-render/components/MdPre.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/MdTable.svelte +53 -0
- package/dist/markdown-render/components/MdTable.svelte.d.ts +9 -0
- package/dist/markdown-render/components/MdTable.svelte.d.ts.map +1 -0
- package/dist/markdown-render/components/index.d.ts +26 -0
- package/dist/markdown-render/components/index.d.ts.map +1 -0
- package/dist/markdown-render/components/index.js +27 -0
- package/dist/markdown-render/index.d.ts +4 -0
- package/dist/markdown-render/index.d.ts.map +1 -0
- package/dist/markdown-render/index.js +2 -0
- package/dist/markdown-render/meta.d.ts +81 -0
- package/dist/markdown-render/meta.d.ts.map +1 -0
- package/dist/markdown-render/meta.js +105 -0
- package/dist/markdown-render/props.d.ts +15 -0
- package/dist/markdown-render/props.d.ts.map +1 -0
- package/dist/markdown-render/props.js +51 -0
- package/dist/modal/ConfirmModal.svelte +105 -86
- package/dist/modal/ConfirmModal.svelte.d.ts +7 -4
- package/dist/modal/ConfirmModal.svelte.d.ts.map +1 -1
- package/dist/modal/Modal.svelte +459 -343
- package/dist/modal/Modal.svelte.d.ts +71 -41
- package/dist/modal/Modal.svelte.d.ts.map +1 -1
- package/dist/modal/ModalContextHolder.svelte +22 -0
- package/dist/modal/ModalContextHolder.svelte.d.ts +8 -0
- package/dist/modal/ModalContextHolder.svelte.d.ts.map +1 -0
- package/dist/modal/command.svelte.d.ts +7 -1
- package/dist/modal/command.svelte.d.ts.map +1 -1
- package/dist/modal/command.svelte.js +1 -1
- package/dist/modal/index.d.ts +7 -1
- package/dist/modal/index.d.ts.map +1 -1
- package/dist/modal/index.js +8 -2
- package/dist/modal/meta.d.ts +149 -103
- package/dist/modal/meta.d.ts.map +1 -1
- package/dist/modal/meta.js +95 -109
- package/dist/modal/use-modal.svelte.d.ts +33 -0
- package/dist/modal/use-modal.svelte.d.ts.map +1 -0
- package/dist/modal/use-modal.svelte.js +44 -0
- package/dist/nav/Nav.svelte +329 -146
- package/dist/nav/Nav.svelte.d.ts +43 -30
- package/dist/nav/Nav.svelte.d.ts.map +1 -1
- package/dist/nav/NavCollapseButton.svelte +74 -0
- package/dist/nav/NavCollapseButton.svelte.d.ts +12 -0
- package/dist/nav/NavCollapseButton.svelte.d.ts.map +1 -0
- package/dist/nav/NavFooter.svelte +42 -47
- package/dist/nav/NavFooter.svelte.d.ts +6 -2
- package/dist/nav/NavFooter.svelte.d.ts.map +1 -1
- package/dist/nav/NavHeader.svelte +61 -12
- package/dist/nav/NavHeader.svelte.d.ts +8 -2
- package/dist/nav/NavHeader.svelte.d.ts.map +1 -1
- package/dist/nav/NavItem.svelte +21 -17
- package/dist/nav/NavItem.svelte.d.ts +12 -10
- package/dist/nav/NavItem.svelte.d.ts.map +1 -1
- package/dist/nav/NavItemRender.svelte +420 -0
- package/dist/nav/NavItemRender.svelte.d.ts +12 -0
- package/dist/nav/NavItemRender.svelte.d.ts.map +1 -0
- package/dist/nav/NavPopupNode.svelte +119 -0
- package/dist/nav/NavPopupNode.svelte.d.ts +8 -0
- package/dist/nav/NavPopupNode.svelte.d.ts.map +1 -0
- package/dist/nav/NavSub.svelte +44 -6
- package/dist/nav/NavSub.svelte.d.ts +20 -4
- package/dist/nav/NavSub.svelte.d.ts.map +1 -1
- package/dist/nav/NavSubPopup.svelte +90 -0
- package/dist/nav/NavSubPopup.svelte.d.ts +14 -0
- package/dist/nav/NavSubPopup.svelte.d.ts.map +1 -0
- package/dist/nav/context.d.ts +57 -8
- package/dist/nav/context.d.ts.map +1 -1
- package/dist/nav/context.js +6 -2
- package/dist/nav/index.d.ts +1 -1
- package/dist/nav/index.d.ts.map +1 -1
- package/dist/nav/meta.d.ts +131 -52
- package/dist/nav/meta.d.ts.map +1 -1
- package/dist/nav/meta.js +70 -29
- package/dist/nav/types.d.ts +89 -22
- package/dist/nav/types.d.ts.map +1 -1
- package/dist/nav/types.js +47 -26
- package/dist/notification/NotificationContainer.svelte +131 -119
- package/dist/notification/NotificationContainer.svelte.d.ts.map +1 -1
- package/dist/notification/NotificationHolder.svelte +18 -0
- package/dist/notification/NotificationHolder.svelte.d.ts +8 -0
- package/dist/notification/NotificationHolder.svelte.d.ts.map +1 -0
- package/dist/notification/NotificationItem.svelte +235 -289
- package/dist/notification/NotificationItem.svelte.d.ts +1 -5
- package/dist/notification/NotificationItem.svelte.d.ts.map +1 -1
- package/dist/notification/index.d.ts +3 -2
- package/dist/notification/index.d.ts.map +1 -1
- package/dist/notification/index.js +2 -1
- package/dist/notification/meta.d.ts +73 -50
- package/dist/notification/meta.d.ts.map +1 -1
- package/dist/notification/meta.js +85 -74
- package/dist/notification/store.d.ts +59 -44
- package/dist/notification/store.d.ts.map +1 -1
- package/dist/notification/store.js +68 -74
- package/dist/overflow-list/OverflowList.svelte +366 -470
- package/dist/overflow-list/OverflowList.svelte.d.ts +37 -40
- package/dist/overflow-list/OverflowList.svelte.d.ts.map +1 -1
- package/dist/overflow-list/meta.d.ts +71 -71
- package/dist/overflow-list/meta.d.ts.map +1 -1
- package/dist/overflow-list/meta.js +63 -78
- package/dist/pagination/Pagination.svelte +454 -251
- package/dist/pagination/Pagination.svelte.d.ts +38 -39
- package/dist/pagination/Pagination.svelte.d.ts.map +1 -1
- package/dist/pagination/meta.d.ts +75 -83
- package/dist/pagination/meta.d.ts.map +1 -1
- package/dist/pagination/meta.js +78 -57
- package/dist/pincode/PinCode.svelte +348 -0
- package/dist/pincode/PinCode.svelte.d.ts +47 -0
- package/dist/pincode/PinCode.svelte.d.ts.map +1 -0
- package/dist/pincode/index.d.ts +3 -0
- package/dist/pincode/index.d.ts.map +1 -0
- package/dist/pincode/index.js +2 -0
- package/dist/pincode/meta.d.ts +147 -0
- package/dist/pincode/meta.d.ts.map +1 -0
- package/dist/pincode/meta.js +91 -0
- package/dist/popconfirm/Popconfirm.svelte +313 -599
- package/dist/popconfirm/Popconfirm.svelte.d.ts +65 -68
- package/dist/popconfirm/Popconfirm.svelte.d.ts.map +1 -1
- package/dist/popconfirm/meta.d.ts +85 -161
- package/dist/popconfirm/meta.d.ts.map +1 -1
- package/dist/popconfirm/meta.js +68 -185
- package/dist/popover/Popover.svelte +342 -564
- package/dist/popover/Popover.svelte.d.ts +82 -52
- package/dist/popover/Popover.svelte.d.ts.map +1 -1
- package/dist/popover/meta.d.ts +102 -74
- package/dist/popover/meta.d.ts.map +1 -1
- package/dist/popover/meta.js +103 -62
- package/dist/progress/Progress.svelte +248 -309
- package/dist/progress/Progress.svelte.d.ts +19 -27
- package/dist/progress/Progress.svelte.d.ts.map +1 -1
- package/dist/progress/index.d.ts +1 -1
- package/dist/progress/index.d.ts.map +1 -1
- package/dist/progress/meta.d.ts +70 -62
- package/dist/progress/meta.d.ts.map +1 -1
- package/dist/progress/meta.js +68 -77
- package/dist/radio/Radio.svelte +451 -239
- package/dist/radio/Radio.svelte.d.ts +13 -7
- package/dist/radio/Radio.svelte.d.ts.map +1 -1
- package/dist/radio/RadioGroup.svelte +152 -121
- package/dist/radio/RadioGroup.svelte.d.ts +27 -6
- package/dist/radio/RadioGroup.svelte.d.ts.map +1 -1
- package/dist/radio/context.d.ts +23 -18
- package/dist/radio/context.d.ts.map +1 -1
- package/dist/radio/index.d.ts +1 -1
- package/dist/radio/index.d.ts.map +1 -1
- package/dist/radio/meta.d.ts +62 -23
- package/dist/radio/meta.d.ts.map +1 -1
- package/dist/radio/meta.js +60 -17
- package/dist/rating/Rating.svelte +358 -275
- package/dist/rating/Rating.svelte.d.ts +25 -18
- package/dist/rating/Rating.svelte.d.ts.map +1 -1
- package/dist/rating/meta.d.ts +73 -40
- package/dist/rating/meta.d.ts.map +1 -1
- package/dist/rating/meta.js +55 -28
- package/dist/resizable/Resizable.svelte +354 -0
- package/dist/resizable/Resizable.svelte.d.ts +61 -0
- package/dist/resizable/Resizable.svelte.d.ts.map +1 -0
- package/dist/resizable/ResizeGroup.svelte +308 -0
- package/dist/resizable/ResizeGroup.svelte.d.ts +13 -0
- package/dist/resizable/ResizeGroup.svelte.d.ts.map +1 -0
- package/dist/resizable/ResizeHandler.svelte +87 -0
- package/dist/resizable/ResizeHandler.svelte.d.ts +13 -0
- package/dist/resizable/ResizeHandler.svelte.d.ts.map +1 -0
- package/dist/resizable/ResizeItem.svelte +103 -0
- package/dist/resizable/ResizeItem.svelte.d.ts +20 -0
- package/dist/resizable/ResizeItem.svelte.d.ts.map +1 -0
- package/dist/resizable/context.d.ts +39 -0
- package/dist/resizable/context.d.ts.map +1 -0
- package/dist/resizable/context.js +1 -0
- package/dist/resizable/index.d.ts +8 -0
- package/dist/resizable/index.d.ts.map +1 -0
- package/dist/resizable/index.js +7 -0
- package/dist/resizable/meta.d.ts +243 -0
- package/dist/resizable/meta.d.ts.map +1 -0
- package/dist/resizable/meta.js +90 -0
- package/dist/resize-observer/ResizeObserver.svelte +12 -0
- package/dist/resize-observer/ResizeObserver.svelte.d.ts +7 -0
- package/dist/resize-observer/ResizeObserver.svelte.d.ts.map +1 -1
- package/dist/resize-observer/meta.d.ts +5 -0
- package/dist/resize-observer/meta.d.ts.map +1 -1
- package/dist/resize-observer/meta.js +6 -0
- package/dist/scroll-list/ScrollItem.svelte +612 -0
- package/dist/scroll-list/ScrollItem.svelte.d.ts +29 -0
- package/dist/scroll-list/ScrollItem.svelte.d.ts.map +1 -0
- package/dist/scroll-list/ScrollList.svelte +78 -227
- package/dist/scroll-list/ScrollList.svelte.d.ts +12 -41
- package/dist/scroll-list/ScrollList.svelte.d.ts.map +1 -1
- package/dist/scroll-list/index.d.ts +2 -2
- package/dist/scroll-list/index.d.ts.map +1 -1
- package/dist/scroll-list/index.js +1 -0
- package/dist/scroll-list/meta.d.ts +96 -101
- package/dist/scroll-list/meta.d.ts.map +1 -1
- package/dist/scroll-list/meta.js +84 -65
- package/dist/scroll-list/types.d.ts +2 -16
- package/dist/scroll-list/types.d.ts.map +1 -1
- package/dist/select/Select.svelte +683 -232
- package/dist/select/Select.svelte.d.ts +170 -37
- package/dist/select/Select.svelte.d.ts.map +1 -1
- package/dist/select/meta.d.ts +186 -40
- package/dist/select/meta.d.ts.map +1 -1
- package/dist/select/meta.js +54 -20
- package/dist/side-sheet/SideSheet.svelte +541 -500
- package/dist/side-sheet/SideSheet.svelte.d.ts +36 -49
- package/dist/side-sheet/SideSheet.svelte.d.ts.map +1 -1
- package/dist/side-sheet/meta.d.ts +77 -112
- package/dist/side-sheet/meta.d.ts.map +1 -1
- package/dist/side-sheet/meta.js +71 -71
- package/dist/sidebar/SideBar.svelte +168 -0
- package/dist/sidebar/SideBar.svelte.d.ts +28 -0
- package/dist/sidebar/SideBar.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarAnnotation.svelte +453 -0
- package/dist/sidebar/SideBarAnnotation.svelte.d.ts +47 -0
- package/dist/sidebar/SideBarAnnotation.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarCodeContent.svelte +201 -0
- package/dist/sidebar/SideBarCodeContent.svelte.d.ts +42 -0
- package/dist/sidebar/SideBarCodeContent.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarContainer.svelte +478 -0
- package/dist/sidebar/SideBarContainer.svelte.d.ts +38 -0
- package/dist/sidebar/SideBarContainer.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarFileContent.svelte +192 -0
- package/dist/sidebar/SideBarFileContent.svelte.d.ts +40 -0
- package/dist/sidebar/SideBarFileContent.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarFileItem.svelte +311 -0
- package/dist/sidebar/SideBarFileItem.svelte.d.ts +21 -0
- package/dist/sidebar/SideBarFileItem.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarImageUploadNode.svelte +103 -0
- package/dist/sidebar/SideBarImageUploadNode.svelte.d.ts +5 -0
- package/dist/sidebar/SideBarImageUploadNode.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarMcpConfigure.svelte +544 -0
- package/dist/sidebar/SideBarMcpConfigure.svelte.d.ts +60 -0
- package/dist/sidebar/SideBarMcpConfigure.svelte.d.ts.map +1 -0
- package/dist/sidebar/SideBarOptions.svelte +137 -0
- package/dist/sidebar/SideBarOptions.svelte.d.ts +10 -0
- package/dist/sidebar/SideBarOptions.svelte.d.ts.map +1 -0
- package/dist/sidebar/file-extensions.d.ts +37 -0
- package/dist/sidebar/file-extensions.d.ts.map +1 -0
- package/dist/sidebar/file-extensions.js +45 -0
- package/dist/sidebar/index.d.ts +14 -0
- package/dist/sidebar/index.d.ts.map +1 -0
- package/dist/sidebar/index.js +9 -0
- package/dist/sidebar/meta.d.ts +373 -0
- package/dist/sidebar/meta.d.ts.map +1 -0
- package/dist/sidebar/meta.js +219 -0
- package/dist/sidebar/types.d.ts +70 -0
- package/dist/sidebar/types.d.ts.map +1 -0
- package/dist/sidebar/types.js +1 -0
- package/dist/skeleton/Skeleton.svelte +129 -97
- package/dist/skeleton/Skeleton.svelte.d.ts +7 -2
- package/dist/skeleton/Skeleton.svelte.d.ts.map +1 -1
- package/dist/skeleton/SkeletonAvatar.svelte +25 -68
- package/dist/skeleton/SkeletonAvatar.svelte.d.ts +6 -2
- package/dist/skeleton/SkeletonAvatar.svelte.d.ts.map +1 -1
- package/dist/skeleton/SkeletonButton.svelte +6 -77
- package/dist/skeleton/SkeletonButton.svelte.d.ts +0 -4
- package/dist/skeleton/SkeletonButton.svelte.d.ts.map +1 -1
- package/dist/skeleton/SkeletonImage.svelte +6 -87
- package/dist/skeleton/SkeletonImage.svelte.d.ts +0 -3
- package/dist/skeleton/SkeletonImage.svelte.d.ts.map +1 -1
- package/dist/skeleton/SkeletonParagraph.svelte +10 -87
- package/dist/skeleton/SkeletonParagraph.svelte.d.ts +1 -1
- package/dist/skeleton/SkeletonParagraph.svelte.d.ts.map +1 -1
- package/dist/skeleton/SkeletonTitle.svelte +6 -61
- package/dist/skeleton/SkeletonTitle.svelte.d.ts +0 -2
- package/dist/skeleton/SkeletonTitle.svelte.d.ts.map +1 -1
- package/dist/skeleton/index.d.ts +1 -1
- package/dist/skeleton/index.d.ts.map +1 -1
- package/dist/skeleton/meta.d.ts +99 -23
- package/dist/skeleton/meta.d.ts.map +1 -1
- package/dist/skeleton/meta.js +70 -28
- package/dist/slider/Slider.svelte +418 -419
- package/dist/slider/Slider.svelte.d.ts +45 -54
- package/dist/slider/Slider.svelte.d.ts.map +1 -1
- package/dist/slider/meta.d.ts +49 -87
- package/dist/slider/meta.d.ts.map +1 -1
- package/dist/slider/meta.js +50 -26
- package/dist/space/Space.svelte +97 -49
- package/dist/space/Space.svelte.d.ts +17 -4
- package/dist/space/Space.svelte.d.ts.map +1 -1
- package/dist/space/meta.d.ts +30 -17
- package/dist/space/meta.d.ts.map +1 -1
- package/dist/space/meta.js +29 -12
- package/dist/spin/Spin.svelte +160 -195
- package/dist/spin/Spin.svelte.d.ts +8 -12
- package/dist/spin/Spin.svelte.d.ts.map +1 -1
- package/dist/spin/meta.d.ts +36 -53
- package/dist/spin/meta.d.ts.map +1 -1
- package/dist/spin/meta.js +27 -47
- package/dist/steps/Step.svelte +236 -0
- package/dist/steps/Step.svelte.d.ts +5 -0
- package/dist/steps/Step.svelte.d.ts.map +1 -0
- package/dist/steps/Steps.svelte +521 -274
- package/dist/steps/Steps.svelte.d.ts +14 -22
- package/dist/steps/Steps.svelte.d.ts.map +1 -1
- package/dist/steps/context.d.ts +41 -0
- package/dist/steps/context.d.ts.map +1 -0
- package/dist/steps/context.js +8 -0
- package/dist/steps/index.d.ts +8 -2
- package/dist/steps/index.d.ts.map +1 -1
- package/dist/steps/index.js +5 -1
- package/dist/steps/meta.d.ts +67 -42
- package/dist/steps/meta.d.ts.map +1 -1
- package/dist/steps/meta.js +169 -25
- package/dist/steps/types.d.ts +30 -7
- package/dist/steps/types.d.ts.map +1 -1
- package/dist/switch/Switch.svelte +224 -205
- package/dist/switch/Switch.svelte.d.ts +22 -43
- package/dist/switch/Switch.svelte.d.ts.map +1 -1
- package/dist/switch/meta.d.ts +44 -51
- package/dist/switch/meta.d.ts.map +1 -1
- package/dist/switch/meta.js +68 -27
- package/dist/table/Table.svelte +1065 -600
- package/dist/table/Table.svelte.d.ts +95 -1
- package/dist/table/Table.svelte.d.ts.map +1 -1
- package/dist/table/meta.d.ts +221 -2
- package/dist/table/meta.d.ts.map +1 -1
- package/dist/table/meta.js +119 -18
- package/dist/table/types.d.ts +36 -6
- package/dist/table/types.d.ts.map +1 -1
- package/dist/tabs/TabPane.svelte +4 -1
- package/dist/tabs/TabPane.svelte.d.ts +2 -0
- package/dist/tabs/TabPane.svelte.d.ts.map +1 -1
- package/dist/tabs/Tabs.svelte +453 -280
- package/dist/tabs/Tabs.svelte.d.ts +41 -32
- package/dist/tabs/Tabs.svelte.d.ts.map +1 -1
- package/dist/tabs/context.d.ts +3 -0
- package/dist/tabs/context.d.ts.map +1 -1
- package/dist/tabs/meta.d.ts +43 -47
- package/dist/tabs/meta.d.ts.map +1 -1
- package/dist/tabs/meta.js +76 -47
- package/dist/tabs/types.d.ts +3 -0
- package/dist/tabs/types.d.ts.map +1 -1
- package/dist/tag/SplitTagGroup.svelte +62 -0
- package/dist/tag/SplitTagGroup.svelte.d.ts +15 -0
- package/dist/tag/SplitTagGroup.svelte.d.ts.map +1 -0
- package/dist/tag/Tag.svelte +394 -261
- package/dist/tag/Tag.svelte.d.ts +40 -23
- package/dist/tag/Tag.svelte.d.ts.map +1 -1
- package/dist/tag/TagGroup.svelte +208 -0
- package/dist/tag/TagGroup.svelte.d.ts +56 -0
- package/dist/tag/TagGroup.svelte.d.ts.map +1 -0
- package/dist/tag/index.d.ts +2 -0
- package/dist/tag/index.d.ts.map +1 -1
- package/dist/tag/index.js +4 -0
- package/dist/tag/meta.d.ts +157 -51
- package/dist/tag/meta.d.ts.map +1 -1
- package/dist/tag/meta.js +82 -45
- package/dist/tag-input/TagInput.svelte +575 -261
- package/dist/tag-input/TagInput.svelte.d.ts +52 -17
- package/dist/tag-input/TagInput.svelte.d.ts.map +1 -1
- package/dist/tag-input/meta.d.ts +132 -20
- package/dist/tag-input/meta.d.ts.map +1 -1
- package/dist/tag-input/meta.js +49 -21
- package/dist/tag-input/split.d.ts +8 -0
- package/dist/tag-input/split.d.ts.map +1 -0
- package/dist/tag-input/split.js +22 -0
- package/dist/time-picker/TimePicker.svelte +504 -722
- package/dist/time-picker/TimePicker.svelte.d.ts +67 -47
- package/dist/time-picker/TimePicker.svelte.d.ts.map +1 -1
- package/dist/time-picker/meta.d.ts +201 -19
- package/dist/time-picker/meta.d.ts.map +1 -1
- package/dist/time-picker/meta.js +73 -16
- package/dist/timeline/Timeline.svelte +212 -548
- package/dist/timeline/Timeline.svelte.d.ts +9 -22
- package/dist/timeline/Timeline.svelte.d.ts.map +1 -1
- package/dist/timeline/TimelineItem.svelte +101 -143
- package/dist/timeline/TimelineItem.svelte.d.ts +20 -20
- package/dist/timeline/TimelineItem.svelte.d.ts.map +1 -1
- package/dist/timeline/context.d.ts +8 -12
- package/dist/timeline/context.d.ts.map +1 -1
- package/dist/timeline/index.d.ts +2 -2
- package/dist/timeline/index.d.ts.map +1 -1
- package/dist/timeline/meta.d.ts +59 -95
- package/dist/timeline/meta.d.ts.map +1 -1
- package/dist/timeline/meta.js +81 -86
- package/dist/timeline/types.d.ts +16 -5
- package/dist/timeline/types.d.ts.map +1 -1
- package/dist/toast/ToastContainer.svelte +111 -125
- package/dist/toast/ToastContainer.svelte.d.ts +3 -0
- package/dist/toast/ToastContainer.svelte.d.ts.map +1 -1
- package/dist/toast/ToastHolder.svelte +18 -0
- package/dist/toast/ToastHolder.svelte.d.ts +8 -0
- package/dist/toast/ToastHolder.svelte.d.ts.map +1 -0
- package/dist/toast/ToastItem.svelte +209 -191
- package/dist/toast/ToastItem.svelte.d.ts +7 -0
- package/dist/toast/ToastItem.svelte.d.ts.map +1 -1
- package/dist/toast/index.d.ts +3 -2
- package/dist/toast/index.d.ts.map +1 -1
- package/dist/toast/index.js +2 -1
- package/dist/toast/meta.d.ts +84 -53
- package/dist/toast/meta.d.ts.map +1 -1
- package/dist/toast/meta.js +69 -62
- package/dist/toast/store.d.ts +79 -51
- package/dist/toast/store.d.ts.map +1 -1
- package/dist/toast/store.js +179 -116
- package/dist/tooltip/Tooltip.svelte +533 -203
- package/dist/tooltip/Tooltip.svelte.d.ts +90 -20
- package/dist/tooltip/Tooltip.svelte.d.ts.map +1 -1
- package/dist/tooltip/index.d.ts +1 -0
- package/dist/tooltip/index.d.ts.map +1 -1
- package/dist/tooltip/index.js +1 -0
- package/dist/tooltip/meta.d.ts +131 -34
- package/dist/tooltip/meta.d.ts.map +1 -1
- package/dist/tooltip/meta.js +92 -28
- package/dist/tooltip/placement.d.ts +21 -1
- package/dist/tooltip/placement.d.ts.map +1 -1
- package/dist/tooltip/placement.js +57 -1
- package/dist/transfer/Transfer.svelte +686 -1100
- package/dist/transfer/Transfer.svelte.d.ts +68 -73
- package/dist/transfer/Transfer.svelte.d.ts.map +1 -1
- package/dist/transfer/meta.d.ts +44 -65
- package/dist/transfer/meta.d.ts.map +1 -1
- package/dist/transfer/meta.js +76 -31
- package/dist/transfer/types.d.ts +5 -0
- package/dist/transfer/types.d.ts.map +1 -1
- package/dist/tree/Tree.svelte +973 -422
- package/dist/tree/Tree.svelte.d.ts +291 -72
- package/dist/tree/Tree.svelte.d.ts.map +1 -1
- package/dist/tree/meta.d.ts +246 -79
- package/dist/tree/meta.d.ts.map +1 -1
- package/dist/tree/meta.js +238 -58
- package/dist/tree-select/TreeSelect.svelte +591 -240
- package/dist/tree-select/TreeSelect.svelte.d.ts +88 -54
- package/dist/tree-select/TreeSelect.svelte.d.ts.map +1 -1
- package/dist/tree-select/meta.d.ts +344 -57
- package/dist/tree-select/meta.d.ts.map +1 -1
- package/dist/tree-select/meta.js +80 -26
- package/dist/tree-select/types.d.ts +2 -0
- package/dist/tree-select/types.d.ts.map +1 -1
- package/dist/typography/Numeral.svelte +117 -0
- package/dist/typography/Numeral.svelte.d.ts +35 -0
- package/dist/typography/Numeral.svelte.d.ts.map +1 -0
- package/dist/typography/Paragraph.svelte +20 -34
- package/dist/typography/Paragraph.svelte.d.ts +8 -13
- package/dist/typography/Paragraph.svelte.d.ts.map +1 -1
- package/dist/typography/Text.svelte +22 -33
- package/dist/typography/Text.svelte.d.ts +11 -13
- package/dist/typography/Text.svelte.d.ts.map +1 -1
- package/dist/typography/Title.svelte +23 -28
- package/dist/typography/Title.svelte.d.ts +10 -11
- package/dist/typography/Title.svelte.d.ts.map +1 -1
- package/dist/typography/TypographyBase.svelte +534 -479
- package/dist/typography/TypographyBase.svelte.d.ts +44 -29
- package/dist/typography/TypographyBase.svelte.d.ts.map +1 -1
- package/dist/typography/index.d.ts +3 -3
- package/dist/typography/index.d.ts.map +1 -1
- package/dist/typography/index.js +3 -3
- package/dist/typography/meta.d.ts +190 -185
- package/dist/typography/meta.d.ts.map +1 -1
- package/dist/typography/meta.js +112 -85
- package/dist/upload/FileCard.svelte +634 -0
- package/dist/upload/FileCard.svelte.d.ts +40 -0
- package/dist/upload/FileCard.svelte.d.ts.map +1 -0
- package/dist/upload/Upload.svelte +1112 -650
- package/dist/upload/Upload.svelte.d.ts +118 -66
- package/dist/upload/Upload.svelte.d.ts.map +1 -1
- package/dist/upload/index.d.ts +2 -1
- package/dist/upload/index.d.ts.map +1 -1
- package/dist/upload/index.js +1 -0
- package/dist/upload/meta.d.ts +231 -72
- package/dist/upload/meta.d.ts.map +1 -1
- package/dist/upload/meta.js +84 -42
- package/dist/upload/types.d.ts +137 -3
- package/dist/upload/types.d.ts.map +1 -1
- package/dist/user-guide/UserGuide.svelte +655 -0
- package/dist/user-guide/UserGuide.svelte.d.ts +75 -0
- package/dist/user-guide/UserGuide.svelte.d.ts.map +1 -0
- package/dist/user-guide/index.d.ts +4 -0
- package/dist/user-guide/index.d.ts.map +1 -0
- package/dist/user-guide/index.js +2 -0
- package/dist/user-guide/meta.d.ts +162 -0
- package/dist/user-guide/meta.d.ts.map +1 -0
- package/dist/user-guide/meta.js +60 -0
- package/dist/video-player/ErrorSvg.svelte +15 -0
- package/dist/video-player/ErrorSvg.svelte.d.ts +19 -0
- package/dist/video-player/ErrorSvg.svelte.d.ts.map +1 -0
- package/dist/video-player/VideoPlayer.svelte +769 -0
- package/dist/video-player/VideoPlayer.svelte.d.ts +43 -0
- package/dist/video-player/VideoPlayer.svelte.d.ts.map +1 -0
- package/dist/video-player/VideoProgress.svelte +267 -0
- package/dist/video-player/VideoProgress.svelte.d.ts +18 -0
- package/dist/video-player/VideoProgress.svelte.d.ts.map +1 -0
- package/dist/video-player/index.d.ts +4 -0
- package/dist/video-player/index.d.ts.map +1 -0
- package/dist/video-player/index.js +2 -0
- package/dist/video-player/meta.d.ts +200 -0
- package/dist/video-player/meta.d.ts.map +1 -0
- package/dist/video-player/meta.js +159 -0
- package/package.json +29 -4
- package/dist/collapse/types.d.ts +0 -6
- package/dist/collapse/types.d.ts.map +0 -1
- package/dist/date-picker/RangePicker.svelte +0 -775
- package/dist/date-picker/RangePicker.svelte.d.ts +0 -38
- package/dist/date-picker/RangePicker.svelte.d.ts.map +0 -1
- package/dist/date-picker/range-meta.d.ts +0 -100
- package/dist/date-picker/range-meta.d.ts.map +0 -1
- package/dist/date-picker/range-meta.js +0 -43
- package/dist/drawer/Drawer.svelte +0 -554
- package/dist/drawer/Drawer.svelte.d.ts +0 -54
- package/dist/drawer/Drawer.svelte.d.ts.map +0 -1
- package/dist/drawer/index.d.ts +0 -3
- package/dist/drawer/index.d.ts.map +0 -1
- package/dist/drawer/index.js +0 -2
- package/dist/drawer/meta.d.ts +0 -147
- package/dist/drawer/meta.d.ts.map +0 -1
- package/dist/drawer/meta.js +0 -126
- package/dist/dropdown/DropdownItemNode.svelte +0 -355
- package/dist/dropdown/DropdownItemNode.svelte.d.ts +0 -14
- package/dist/dropdown/DropdownItemNode.svelte.d.ts.map +0 -1
- package/dist/dropdown/DropdownSubMenu.svelte +0 -212
- package/dist/dropdown/DropdownSubMenu.svelte.d.ts +0 -15
- package/dist/dropdown/DropdownSubMenu.svelte.d.ts.map +0 -1
- package/dist/grid/use-breakpoint.svelte.d.ts +0 -13
- package/dist/grid/use-breakpoint.svelte.d.ts.map +0 -1
- package/dist/grid/use-breakpoint.svelte.js +0 -41
- package/dist/icon/Icon.svelte +0 -156
- package/dist/icon/Icon.svelte.d.ts +0 -23
- package/dist/icon/Icon.svelte.d.ts.map +0 -1
- package/dist/image/ImagePreviewGroup.svelte +0 -93
- package/dist/image/ImagePreviewGroup.svelte.d.ts +0 -14
- package/dist/image/ImagePreviewGroup.svelte.d.ts.map +0 -1
- package/dist/image/context.d.ts +0 -16
- package/dist/image/context.d.ts.map +0 -1
- package/dist/image/context.js +0 -8
- package/dist/list/ListMeta.svelte +0 -73
- package/dist/list/ListMeta.svelte.d.ts +0 -14
- package/dist/list/ListMeta.svelte.d.ts.map +0 -1
- package/dist/lottie-icon/LottieIcon.svelte +0 -330
- package/dist/lottie-icon/LottieIcon.svelte.d.ts +0 -44
- package/dist/lottie-icon/LottieIcon.svelte.d.ts.map +0 -1
- package/dist/lottie-icon/index.d.ts +0 -4
- package/dist/lottie-icon/index.d.ts.map +0 -1
- package/dist/lottie-icon/index.js +0 -2
- package/dist/lottie-icon/meta.d.ts +0 -147
- package/dist/lottie-icon/meta.js +0 -161
- package/dist/menu/Menu.svelte +0 -843
- package/dist/menu/Menu.svelte.d.ts +0 -95
- package/dist/menu/Menu.svelte.d.ts.map +0 -1
- package/dist/menu/MenuPopupNode.svelte +0 -525
- package/dist/menu/MenuPopupNode.svelte.d.ts +0 -52
- package/dist/menu/MenuPopupNode.svelte.d.ts.map +0 -1
- package/dist/menu/index.d.ts +0 -5
- package/dist/menu/index.d.ts.map +0 -1
- package/dist/menu/index.js +0 -3
- package/dist/menu/meta.d.ts +0 -147
- package/dist/menu/meta.d.ts.map +0 -1
- package/dist/menu/meta.js +0 -141
- package/dist/menu/types.d.ts +0 -88
- package/dist/menu/types.d.ts.map +0 -1
- package/dist/menu/types.js +0 -34
- package/dist/scroll-list/ScrollColumn.svelte +0 -592
- package/dist/scroll-list/ScrollColumn.svelte.d.ts +0 -34
- package/dist/scroll-list/ScrollColumn.svelte.d.ts.map +0 -1
- package/dist/skeleton/context.d.ts +0 -10
- package/dist/skeleton/context.d.ts.map +0 -1
- package/dist/skeleton/context.js +0 -1
- package/dist/textarea/TextArea.svelte +0 -420
- package/dist/textarea/TextArea.svelte.d.ts +0 -69
- package/dist/textarea/TextArea.svelte.d.ts.map +0 -1
- package/dist/textarea/index.d.ts +0 -3
- package/dist/textarea/index.d.ts.map +0 -1
- package/dist/textarea/index.js +0 -2
- package/dist/textarea/meta.d.ts +0 -170
- package/dist/textarea/meta.d.ts.map +0 -1
- package/dist/textarea/meta.js +0 -104
- package/dist/toast/live-region.d.ts +0 -21
- package/dist/toast/live-region.d.ts.map +0 -1
- package/dist/toast/live-region.js +0 -57
- package/dist/typography/Link.svelte +0 -120
- package/dist/typography/Link.svelte.d.ts +0 -35
- package/dist/typography/Link.svelte.d.ts.map +0 -1
- /package/dist/{collapse/types.js → ai-chat-dialogue/render-config.js} +0 -0
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
<!--
|
|
2
|
-
TreeSelect —
|
|
2
|
+
TreeSelect — 严格对齐 Semi Design treeSelect。
|
|
3
3
|
基础子集: 单选、可展开/收起的单面板树、叶子或任意节点选中 (leafOnly 控制)。
|
|
4
4
|
multiple: checkbox 多选 + 父子联动 (复用 core conduct/toggleCheck),trigger 多 tag 回显可单独移除。
|
|
5
5
|
filterable: 面板顶部搜索框过滤节点(复用 core computeFilteredKeys),命中 + 祖先链可见、命中文本高亮。
|
|
6
6
|
Token-driven, a11y-correct, 受控/非受控。
|
|
7
|
-
|
|
8
|
-
icon:自定义节点图标 snippet(showIcon 为真时渲染在 label 前),API 与 Tree 的 icon 对齐
|
|
9
|
-
(参数 { node, expanded, level })。渲染层特性,不改 treeData(红线 #1)。
|
|
7
|
+
keyMaps:自定义节点字段名(key/label/value)映射任意后端数据;派生只读标准化,默认字段名时零开销。
|
|
10
8
|
loadData:展开未加载的非叶子节点时异步取子节点,结果缓存进本地 SvelteMap 并派生合并树喂给
|
|
11
9
|
所有 core 函数(不写回受控 treeData,红线 #1);加载中显示 spinner,竞态由 loadedKeys/loadingKeys 去重。
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
role=tree 容器 + 行 role=treeitem 不变;只渲染视口内切片(flattenVisible 派生扁平节点 +
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
virtualize(对象形式,对齐 Semi):大数据树虚拟滚动。复用 Tree 范式——直接用 core fixedRange 纯函数
|
|
11
|
+
自建轻量 fixed 定高虚拟化(非复用 VirtualList 组件,其 role=list/listitem 会破坏 role=tree→treeitem
|
|
12
|
+
语义),保持 role=tree 容器 + 行 role=treeitem 不变;只渲染视口内切片(flattenVisible 派生扁平节点 +
|
|
13
|
+
区间纯派生,红线 #2)。滚动监听命令式 + rAF 节流 + cleanup(红线 #3)。虚拟化时与搜索 filterable 互斥
|
|
14
|
+
(搜索强制展开命中链与定高虚拟化叠加复杂,故虚拟化优先静态/异步大树场景)。
|
|
17
15
|
-->
|
|
18
16
|
<script lang="ts">
|
|
19
17
|
import type { Snippet } from 'svelte';
|
|
@@ -33,92 +31,112 @@
|
|
|
33
31
|
type CheckedStrategy,
|
|
34
32
|
} from '@chenzy-design/core';
|
|
35
33
|
import { SvelteMap, SvelteSet } from 'svelte/reactivity';
|
|
34
|
+
import {
|
|
35
|
+
IconTreeTriangleDown,
|
|
36
|
+
IconCheckboxTick,
|
|
37
|
+
IconCheckboxIndeterminate,
|
|
38
|
+
IconSearch,
|
|
39
|
+
IconClear,
|
|
40
|
+
IconChevronDown,
|
|
41
|
+
} from '@chenzy-design/icons';
|
|
36
42
|
import { useLocale } from '../locale-provider/index.js';
|
|
37
43
|
import { getGlobalPopupContainer } from '../config-provider/index.js';
|
|
38
44
|
import { floating } from '../_floating/use-floating.js';
|
|
45
|
+
import type { Placement } from '@chenzy-design/core';
|
|
39
46
|
import Tag from '../tag/Tag.svelte';
|
|
47
|
+
import Popover from '../popover/Popover.svelte';
|
|
40
48
|
import type { TreeNode, TreeKey } from './types.js';
|
|
49
|
+
import { getInputGroupContext } from '../input/context.js';
|
|
41
50
|
|
|
42
51
|
type Size = 'small' | 'default' | 'large';
|
|
43
52
|
type Status = 'default' | 'warning' | 'error';
|
|
44
53
|
|
|
45
|
-
/** 自定义节点字段名映射(适配任意后端数据结构)。默认 key/label/children。 */
|
|
46
|
-
type FieldNames = { key?: string; label?: string; children?: string };
|
|
47
|
-
|
|
48
54
|
interface Props {
|
|
49
55
|
value?: TreeKey | TreeKey[] | null;
|
|
50
56
|
defaultValue?: TreeKey | TreeKey[] | null;
|
|
51
57
|
/**
|
|
52
58
|
* 树数据源。默认节点字段为 key/label/children;
|
|
53
|
-
* 用
|
|
59
|
+
* 用 keyMaps 自定义字段名时可传任意后端结构(如 { id, name })。
|
|
54
60
|
*/
|
|
55
61
|
treeData?: TreeNode[];
|
|
56
|
-
/** 自定义节点字段名映射,如 { key:'id', label:'name', children:'sub' }。默认全部为标准名。 */
|
|
57
|
-
fieldNames?: FieldNames;
|
|
58
|
-
open?: boolean;
|
|
59
62
|
defaultOpen?: boolean;
|
|
60
63
|
/** 多选:面板节点显示 checkbox + 父子联动,trigger 多 tag 回显 */
|
|
61
64
|
multiple?: boolean;
|
|
62
|
-
/** 多选时父子勾选互不影响(无半选) */
|
|
63
|
-
checkStrictly?: boolean;
|
|
64
65
|
/**
|
|
65
|
-
* 多选父子是否级联联动(对齐 Tree)。'related'(默认)父子联动;
|
|
66
|
-
* 'unRelated'
|
|
66
|
+
* 多选父子是否级联联动(对齐 Semi/Tree)。'related'(默认)父子联动;
|
|
67
|
+
* 'unRelated' 互不影响(勾选无半选)。
|
|
67
68
|
*/
|
|
68
69
|
checkRelation?: 'related' | 'unRelated';
|
|
69
|
-
/**
|
|
70
|
-
* 多选回填值 / Tag 的收敛策略:'all'(默认,全部勾选节点)、
|
|
71
|
-
* 'parent'(完全勾选父级折叠为父)、'child'(仅叶子)。仅 related 级联时生效。
|
|
72
|
-
*/
|
|
73
|
-
showCheckedStrategy?: CheckedStrategy;
|
|
74
70
|
/** 多选回填 Tag 最大展示数,超出折叠为 +N(仅影响显示,不改 value)。 */
|
|
75
71
|
maxTagCount?: number;
|
|
76
72
|
placeholder?: string;
|
|
77
73
|
size?: Size;
|
|
78
74
|
status?: Status;
|
|
79
75
|
disabled?: boolean;
|
|
80
|
-
|
|
76
|
+
/** 值不为空时 trigger 展示清除按钮(对齐 Semi showClear)。 */
|
|
77
|
+
showClear?: boolean;
|
|
81
78
|
leafOnly?: boolean;
|
|
82
79
|
defaultExpandAll?: boolean;
|
|
83
|
-
/** 默认展开的节点 key(非受控初始展开集,与 defaultExpandAll
|
|
84
|
-
|
|
80
|
+
/** 默认展开的节点 key(非受控初始展开集,与 defaultExpandAll 取并集;对齐 Semi defaultExpandedKeys)。 */
|
|
81
|
+
defaultExpandedKeys?: TreeKey[];
|
|
85
82
|
/** 面板顶部搜索框过滤节点(命中 + 祖先链可见、高亮命中文本) */
|
|
86
83
|
filterable?: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* 是否按输入筛选节点(对齐 Semi filterTreeNode):
|
|
86
|
+
* true 开启搜索框,默认对 treeNodeFilterProp(默认 'label')做大小写不敏感包含匹配;
|
|
87
|
+
* 传函数则用作自定义匹配谓词 (inputValue, treeNodeString, data?) => boolean,
|
|
88
|
+
* treeNodeString 为按 treeNodeFilterProp 取到的节点文本,data 为节点原始数据。
|
|
89
|
+
* 与 filterable 二者其一为真即显示搜索框。
|
|
90
|
+
*/
|
|
91
|
+
filterTreeNode?: boolean | ((inputValue: string, treeNodeString: string, data?: TreeNode) => boolean);
|
|
87
92
|
/**
|
|
88
93
|
* 远程搜索:输入仅触发 onSearch(防抖后),不本地过滤(由外部更新 treeData)。
|
|
89
94
|
* 隐含 filterable 行为(显示搜索框)。默认 false。
|
|
90
95
|
*/
|
|
91
96
|
remote?: boolean;
|
|
92
|
-
/**
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
showIcon?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* 搜索输入回调(对齐 Semi onSearch):入参为当前输入、过滤后应展开的节点 keys、命中节点数组。
|
|
99
|
+
* remote 时用于外部更新 treeData;本地过滤时可配合 expandedKeys 受控搜索展开。
|
|
100
|
+
*/
|
|
101
|
+
onSearch?: (input: string, filteredExpandedKeys: TreeKey[], filteredNodes: TreeNode[]) => void;
|
|
98
102
|
/** 异步加载子节点:展开未加载的非叶子节点时调用,返回该节点的子节点数组。与 Tree 的 loadData 对齐。 */
|
|
99
103
|
loadData?: (node: TreeNode) => Promise<TreeNode[]>;
|
|
100
|
-
/** 虚拟滚动:仅渲染视口内的可见节点行,适合大数据树(1000+ 节点)。默认 false(行为不变)。 */
|
|
101
|
-
virtualized?: boolean;
|
|
102
104
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
+
* 列表虚拟化(对齐 Semi):仅渲染视口内可见节点行,适合大数据树(1000+ 节点)。
|
|
106
|
+
* 传入对象即显式开启;height 视口高度(默认 224)、itemSize 行高(默认 32)、width 宽度。
|
|
105
107
|
*/
|
|
106
|
-
|
|
108
|
+
virtualize?: { height?: number; width?: number | string; itemSize?: number };
|
|
109
|
+
/** 浮层弹出位置(对齐 Semi,参考 Tooltip position)。默认 bottomLeft。 */
|
|
110
|
+
position?: string;
|
|
107
111
|
/** 浮层宽度对齐触发器(min-inline-size = 触发器宽)。默认 true。 */
|
|
108
112
|
dropdownMatchSelectWidth?: boolean;
|
|
109
113
|
/** 浮层挂载容器,缺省 ConfigProvider 全局值再回退 document.body。 */
|
|
110
114
|
getPopupContainer?: () => HTMLElement | null | undefined;
|
|
111
|
-
/** 关闭即从 DOM 卸载浮层(重开重建)。默认 false:首开后保留 DOM 仅隐藏。 */
|
|
112
|
-
destroyOnClose?: boolean;
|
|
113
|
-
/** 虚拟滚动视口高度(px)。virtualized 时生效,默认 224(与默认面板 max-height 一致)。 */
|
|
114
|
-
height?: number;
|
|
115
|
-
/** 虚拟滚动行高(px)。virtualized 时生效,默认取 token 行高 32。 */
|
|
116
|
-
itemHeight?: number;
|
|
117
115
|
onChange?: (value: TreeKey | TreeKey[] | null) => void;
|
|
118
|
-
onOpenChange?: (open: boolean) => void;
|
|
119
116
|
ariaLabel?: string;
|
|
120
|
-
/**
|
|
121
|
-
|
|
117
|
+
/** aria-labelledby:关联外部 label 元素(Form.Field 透传 labelId,对齐 Semi)。 */
|
|
118
|
+
ariaLabelledby?: string;
|
|
119
|
+
/** aria-describedby:关联 helpText / extraText(Form.Field 透传)。 */
|
|
120
|
+
ariaDescribedby?: string;
|
|
121
|
+
/** aria-errormessage:error 态关联错误信息容器(Form.Field 透传)。 */
|
|
122
|
+
ariaErrormessage?: string;
|
|
123
|
+
/** aria-required:必填语义(Form.Field required 透传)。 */
|
|
124
|
+
ariaRequired?: boolean;
|
|
125
|
+
/** 触发器点击是否阻止事件冒泡(对齐 Semi stopPropagation)。默认 true。 */
|
|
126
|
+
stopPropagation?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* 完全自定义触发器渲染(替换默认选择框)。与 Cascader.triggerRender 对齐:
|
|
129
|
+
* 参数含当前 value / placeholder / isOpen / disabled,由使用方决定如何呈现。
|
|
130
|
+
*/
|
|
131
|
+
triggerRender?: Snippet<[{ value: TreeKey | TreeKey[] | null | undefined; placeholder: string; isOpen: boolean; disabled: boolean }]>;
|
|
132
|
+
/** 触发器内嵌标签:渲染在回填值/占位符之前(Snippet 或字符串)。对齐 Semi insetLabel。 */
|
|
133
|
+
insetLabel?: Snippet | string;
|
|
134
|
+
/** 内嵌标签的 id(a11y 关联用),对齐 Semi insetLabelId。 */
|
|
135
|
+
insetLabelId?: string;
|
|
136
|
+
/** 下拉浮层开合动画(淡入)。默认 true。与 Cascader/Dropdown 的 motion 对齐。 */
|
|
137
|
+
motion?: boolean;
|
|
138
|
+
// 注:Semi 的 mouseEnterDelay/mouseLeaveDelay 属 hover 触发浮层的进入/离开延迟;
|
|
139
|
+
// TreeSelect 为 click 触发(点击 trigger 开合),无 hover 触发路径,故此两项不适用,不提供。
|
|
122
140
|
|
|
123
141
|
// --- Appearance ---
|
|
124
142
|
/** 无边框模式:trigger 边框透明。默认 false。 */
|
|
@@ -172,6 +190,18 @@
|
|
|
172
190
|
showSearchClear?: boolean;
|
|
173
191
|
/** 搜索激活时仅显示命中节点,不显示祖先链。默认 false。 */
|
|
174
192
|
showFilteredOnly?: boolean;
|
|
193
|
+
/**
|
|
194
|
+
* 无匹配/无数据时的占位内容(对齐 Semi emptyContent):字符串或 Snippet。
|
|
195
|
+
* 未传时回退 i18n TreeSelect.emptyText。空 Snippet 场景可传 () => {} 自绘。
|
|
196
|
+
*/
|
|
197
|
+
emptyContent?: string | Snippet;
|
|
198
|
+
/**
|
|
199
|
+
* 自定义搜索框渲染(渲染层扩展,非 Semi 原生 TreeSelect prop):
|
|
200
|
+
* false 隐藏搜索框(即使 filterable/filterTreeNode 开启,也不显示内置搜索输入);
|
|
201
|
+
* 传 Snippet 则完全接管搜索框渲染,参数含当前值与命令式回调,
|
|
202
|
+
* 使用方需自行把输入回填给 onInput(其余过滤/高亮/roving 逻辑不变)。
|
|
203
|
+
*/
|
|
204
|
+
searchRender?: boolean | Snippet<[{ value: string; onInput: (v: string) => void; onKeydown: (e: KeyboardEvent) => void; placeholder: string }]>;
|
|
175
205
|
|
|
176
206
|
// --- Expand control ---
|
|
177
207
|
/** 受控展开的节点 keys */
|
|
@@ -189,15 +219,15 @@
|
|
|
189
219
|
|
|
190
220
|
// --- Multi-select enhancements ---
|
|
191
221
|
/**
|
|
192
|
-
* 自动合并值:父节点全选时 value
|
|
193
|
-
* 默认 true。
|
|
222
|
+
* 自动合并值:父节点全选时 value 不再包含其后代(收敛为父,对齐 Semi autoMergeValue)。
|
|
223
|
+
* 默认 true。false 时 value 含全部勾选叶子与父('all' 策略)。leafOnly 时改为仅叶子('child')。
|
|
194
224
|
*/
|
|
195
225
|
autoMergeValue?: boolean;
|
|
196
226
|
/** onChange 回调携带完整节点对象而非仅 key。默认 false。 */
|
|
197
227
|
onChangeWithObject?: boolean;
|
|
198
|
-
/**
|
|
228
|
+
/** 多选 maxTagCount 折叠出 +N 时,hover +N 用本库 Popover 浮层展示折叠掉的剩余全部 Tag。默认 false(静态 +N)。 */
|
|
199
229
|
showRestTagsPopover?: boolean;
|
|
200
|
-
/**
|
|
230
|
+
/** 透传给剩余 Tag Popover 浮层的额外 props(在默认 trigger=hover/position=top 之后展开,可覆盖)。 */
|
|
201
231
|
restTagsPopoverProps?: Record<string, unknown>;
|
|
202
232
|
/** trigger 多选 tags 换行显示(默认单行截断折叠)。默认 false。 */
|
|
203
233
|
triggerTagWrap?: boolean;
|
|
@@ -211,8 +241,8 @@
|
|
|
211
241
|
renderSelectedItem?: Snippet<[{ node: TreeNode; onRemove: () => void }]>;
|
|
212
242
|
/** 节点数据中用作显示 label 的字段名(默认 'label')。 */
|
|
213
243
|
treeNodeLabelProp?: string;
|
|
214
|
-
/**
|
|
215
|
-
keyMaps?: { key?: string; label?: string; value?: string };
|
|
244
|
+
/** 自定义节点字段名映射(对齐 Semi keyMaps):适配任意后端数据结构,如 { key:'id', label:'name', children:'sub' }。 */
|
|
245
|
+
keyMaps?: { key?: string; label?: string; value?: string; children?: string };
|
|
216
246
|
/** 选项列表容器的内联 style(字符串或对象形式)。 */
|
|
217
247
|
optionListStyle?: string | Record<string, string>;
|
|
218
248
|
/** 受控已加载的节点 keys */
|
|
@@ -228,8 +258,14 @@
|
|
|
228
258
|
* 默认 false(父禁用 conduct 不检查子)。
|
|
229
259
|
*/
|
|
230
260
|
disableStrictly?: boolean;
|
|
231
|
-
/** 浮层与 trigger 的额外间距(px
|
|
261
|
+
/** 浮层与 trigger 的额外间距(px),数字或四方向对象。数字映射到浮层 offset;对象形态仅取 marginTop(其余方向暂未接入定位)。 */
|
|
232
262
|
dropdownMargin?: number | { marginTop?: number; marginBottom?: number; marginLeft?: number; marginRight?: number };
|
|
263
|
+
/** 追加到浮层根节点的自定义类名(与内置类名并存)。 */
|
|
264
|
+
dropdownClassName?: string;
|
|
265
|
+
/** 合并进浮层根节点的内联样式(与内置定位样式拼接,不覆盖 use:floating 写入的 transform/position)。 */
|
|
266
|
+
dropdownStyle?: string | Record<string, string>;
|
|
267
|
+
/** 浮层层级(z-index)。未传时由 CSS 层级控制。 */
|
|
268
|
+
zIndex?: number;
|
|
233
269
|
|
|
234
270
|
// --- Events ---
|
|
235
271
|
/** 点击清除按钮回调。 */
|
|
@@ -238,7 +274,7 @@
|
|
|
238
274
|
onSelect?: (selectedKey: TreeKey, selected: boolean, node: unknown) => void;
|
|
239
275
|
/** 异步加载完成回调(含已加载 key 集合与当前节点)。 */
|
|
240
276
|
onLoad?: (loadedKeys: TreeKey[], treeNode: TreeNode) => void;
|
|
241
|
-
/**
|
|
277
|
+
/** 面板可见性变化回调(对齐 Semi onVisibleChange)。 */
|
|
242
278
|
onVisibleChange?: (isVisible: boolean) => void;
|
|
243
279
|
}
|
|
244
280
|
|
|
@@ -246,39 +282,38 @@
|
|
|
246
282
|
value,
|
|
247
283
|
defaultValue = null,
|
|
248
284
|
treeData = [],
|
|
249
|
-
fieldNames,
|
|
250
|
-
open,
|
|
251
285
|
defaultOpen = false,
|
|
252
286
|
multiple = false,
|
|
253
|
-
checkStrictly = false,
|
|
254
287
|
checkRelation = 'related',
|
|
255
|
-
showCheckedStrategy = 'all',
|
|
256
288
|
maxTagCount,
|
|
257
289
|
placeholder = '请选择',
|
|
258
|
-
size
|
|
290
|
+
size: sizeProp,
|
|
259
291
|
status = 'default',
|
|
260
|
-
disabled
|
|
261
|
-
|
|
292
|
+
disabled: disabledProp,
|
|
293
|
+
showClear = false,
|
|
262
294
|
leafOnly = false,
|
|
263
295
|
defaultExpandAll = false,
|
|
264
|
-
|
|
296
|
+
defaultExpandedKeys,
|
|
265
297
|
filterable = false,
|
|
298
|
+
filterTreeNode,
|
|
266
299
|
remote = false,
|
|
267
|
-
searchDebounce = 300,
|
|
268
300
|
onSearch,
|
|
269
|
-
showIcon = true,
|
|
270
301
|
loadData,
|
|
271
|
-
|
|
272
|
-
|
|
302
|
+
virtualize,
|
|
303
|
+
position = 'bottomLeft',
|
|
273
304
|
dropdownMatchSelectWidth = true,
|
|
274
305
|
getPopupContainer,
|
|
275
|
-
destroyOnClose = false,
|
|
276
|
-
height = 224,
|
|
277
|
-
itemHeight = 32,
|
|
278
306
|
onChange,
|
|
279
|
-
onOpenChange,
|
|
280
307
|
ariaLabel,
|
|
281
|
-
|
|
308
|
+
ariaLabelledby,
|
|
309
|
+
ariaDescribedby,
|
|
310
|
+
ariaErrormessage,
|
|
311
|
+
ariaRequired,
|
|
312
|
+
stopPropagation = true,
|
|
313
|
+
triggerRender,
|
|
314
|
+
insetLabel,
|
|
315
|
+
insetLabelId,
|
|
316
|
+
motion = true,
|
|
282
317
|
borderless = false,
|
|
283
318
|
prefix,
|
|
284
319
|
suffix,
|
|
@@ -301,6 +336,8 @@
|
|
|
301
336
|
treeNodeFilterProp = 'label',
|
|
302
337
|
showSearchClear = true,
|
|
303
338
|
showFilteredOnly = false,
|
|
339
|
+
emptyContent,
|
|
340
|
+
searchRender,
|
|
304
341
|
expandedKeys: expandedKeysProp,
|
|
305
342
|
expandAll = false,
|
|
306
343
|
expandAction = false,
|
|
@@ -323,39 +360,66 @@
|
|
|
323
360
|
clickTriggerToHide = true,
|
|
324
361
|
disableStrictly = false,
|
|
325
362
|
dropdownMargin,
|
|
363
|
+
dropdownClassName,
|
|
364
|
+
dropdownStyle,
|
|
365
|
+
zIndex,
|
|
326
366
|
onClear,
|
|
327
367
|
onSelect,
|
|
328
368
|
onLoad,
|
|
329
369
|
onVisibleChange,
|
|
330
370
|
}: Props = $props();
|
|
331
371
|
|
|
372
|
+
// InputGroup 组级默认(size/disabled):显式 prop 始终优先,否则回退组级,再回退组件默认。
|
|
373
|
+
const group = getInputGroupContext();
|
|
374
|
+
const size = $derived<Size>(sizeProp ?? group?.size ?? 'default');
|
|
375
|
+
const disabled = $derived<boolean>(disabledProp ?? group?.disabled ?? false);
|
|
376
|
+
|
|
332
377
|
const loc = useLocale();
|
|
333
378
|
// ConfigProvider 全局浮层容器默认;自身 getPopupContainer prop 优先,未传时回退此值(再回退 body)。
|
|
334
379
|
const globalPopupContainer = getGlobalPopupContainer();
|
|
335
380
|
const resolvePopupContainer = $derived(getPopupContainer ?? globalPopupContainer);
|
|
336
381
|
|
|
337
|
-
// remote 隐含可搜索(显示搜索框);
|
|
338
|
-
const isFilterable = $derived(filterable || remote);
|
|
339
|
-
const isUnRelated = $derived(
|
|
382
|
+
// remote 隐含可搜索(显示搜索框);filterTreeNode(bool 或函数)亦开启搜索。
|
|
383
|
+
const isFilterable = $derived(filterable || remote || filterTreeNode === true || typeof filterTreeNode === 'function');
|
|
384
|
+
const isUnRelated = $derived(checkRelation === 'unRelated');
|
|
340
385
|
|
|
341
386
|
// validateStatus 是 status 别名;效值以 validateStatus 优先(未传时回退 status)。
|
|
342
387
|
const effStatus = $derived(validateStatus ?? status ?? 'default');
|
|
343
388
|
|
|
344
389
|
const treeId = useId('cd-tree-select-panel');
|
|
390
|
+
|
|
391
|
+
// 浮层与触发器间距:dropdownMargin 数字直接作 offset;对象形态取 marginTop(其余方向暂未接入);未传回退默认 4。
|
|
392
|
+
const dropdownOffset = $derived.by(() => {
|
|
393
|
+
if (dropdownMargin == null) return 4;
|
|
394
|
+
if (typeof dropdownMargin === 'number') return dropdownMargin;
|
|
395
|
+
return dropdownMargin.marginTop ?? 4;
|
|
396
|
+
});
|
|
397
|
+
|
|
398
|
+
// 浮层自定义样式:合并 dropdownStyle(字符串或对象)与 zIndex,供拼接到浮层 inline style。
|
|
399
|
+
const dropdownStyleStr = $derived.by(() => {
|
|
400
|
+
const parts: string[] = [];
|
|
401
|
+
if (dropdownStyle) {
|
|
402
|
+
if (typeof dropdownStyle === 'string') parts.push(dropdownStyle);
|
|
403
|
+
else parts.push(Object.entries(dropdownStyle).map(([k, v]) => `${k}: ${v}`).join('; '));
|
|
404
|
+
}
|
|
405
|
+
if (zIndex != null) parts.push(`z-index: ${zIndex}`);
|
|
406
|
+
return parts.filter(Boolean).join('; ');
|
|
407
|
+
});
|
|
408
|
+
|
|
345
409
|
// treeitem 行 id 基(aria-activedescendant 指向当前高亮行)。
|
|
346
410
|
const itemBaseId = useId('cd-tree-select-item');
|
|
347
411
|
function itemId(key: TreeKey): string {
|
|
348
412
|
return `${itemBaseId}-${String(key)}`;
|
|
349
413
|
}
|
|
350
414
|
|
|
351
|
-
// ---
|
|
415
|
+
// --- keyMaps 字段映射:把用户自定义字段名的数据派生为标准 {key,label,children} 结构(对齐 Semi keyMaps)---
|
|
352
416
|
// 默认(全标准名)时直接返回原 treeData 引用,零额外开销;映射为纯 $derived(红线 #2),不写回(红线 #1)。
|
|
353
417
|
// 节点 key 取自原始 key 字段,故 onChange 回传的 value(key)即用户原始 id,无需额外映射回原节点。
|
|
354
|
-
// keyMaps
|
|
355
|
-
const keyField = $derived(keyMaps?.key ?? keyMaps?.value ??
|
|
356
|
-
const labelField = $derived(keyMaps?.label ??
|
|
357
|
-
const childrenField = $derived(
|
|
358
|
-
const
|
|
418
|
+
// keyMaps.value 作为 key 字段别名(对齐 Semi)。
|
|
419
|
+
const keyField = $derived(keyMaps?.key ?? keyMaps?.value ?? 'key');
|
|
420
|
+
const labelField = $derived(keyMaps?.label ?? 'label');
|
|
421
|
+
const childrenField = $derived(keyMaps?.children ?? 'children');
|
|
422
|
+
const keyMapsDefault = $derived(
|
|
359
423
|
keyField === 'key' && labelField === 'label' && childrenField === 'children',
|
|
360
424
|
);
|
|
361
425
|
|
|
@@ -384,7 +448,7 @@
|
|
|
384
448
|
|
|
385
449
|
// 标准化后的树:默认时即 treeData 原引用(零开销),否则递归映射字段名。
|
|
386
450
|
const normalizedTree = $derived<TreeNode[]>(
|
|
387
|
-
|
|
451
|
+
keyMapsDefault ? treeData : normalizeNodes(treeData),
|
|
388
452
|
);
|
|
389
453
|
|
|
390
454
|
// --- 异步加载(对齐 Tree):本地缓存子节点 + loading/loaded 标记(不写回受控 treeData,红线 #1)---
|
|
@@ -413,7 +477,7 @@
|
|
|
413
477
|
loadingKeys.add(node.key);
|
|
414
478
|
try {
|
|
415
479
|
const kids = await loadData(node);
|
|
416
|
-
loadedChildren.set(node.key,
|
|
480
|
+
loadedChildren.set(node.key, keyMapsDefault ? kids : normalizeNodes(kids));
|
|
417
481
|
} finally {
|
|
418
482
|
loadingKeys.delete(node.key);
|
|
419
483
|
loadedKeys.add(node.key);
|
|
@@ -460,11 +524,11 @@
|
|
|
460
524
|
return defaultOpen;
|
|
461
525
|
}
|
|
462
526
|
function getInitialExpanded(): Set<TreeKey> {
|
|
463
|
-
//
|
|
464
|
-
const set = new Set<TreeKey>(
|
|
527
|
+
// defaultExpandedKeys 与 defaultExpandAll 取并集(非受控初始展开集)。
|
|
528
|
+
const set = new Set<TreeKey>(defaultExpandedKeys ?? []);
|
|
465
529
|
if (defaultExpandAll) {
|
|
466
|
-
// defaultExpandAll 需用标准化后的 key(
|
|
467
|
-
const base =
|
|
530
|
+
// defaultExpandAll 需用标准化后的 key(keyMaps 自定义时才能识别 children)。
|
|
531
|
+
const base = keyMapsDefault ? treeData : normalizeNodes(treeData);
|
|
468
532
|
for (const k of collectExpandable(base, [])) set.add(k);
|
|
469
533
|
}
|
|
470
534
|
return set;
|
|
@@ -491,13 +555,10 @@
|
|
|
491
555
|
if (isUnRelated) return { checked: new Set(currentCheckedBase), half: new Set<TreeKey>() };
|
|
492
556
|
return conduct(mergedTree as unknown as TreeNodeData[], currentCheckedBase);
|
|
493
557
|
});
|
|
494
|
-
// autoMergeValue
|
|
558
|
+
// 回填值/Tag 收敛策略(对齐 Semi,由 leafOnly + autoMergeValue 组合表达,无独立 showCheckedStrategy):
|
|
559
|
+
// leafOnly → 'child'(仅叶子);否则 autoMergeValue=true → 'parent'(父全选折叠为父,value 不含后代);否则 'all'。
|
|
495
560
|
const effectiveStrategy = $derived<CheckedStrategy>(
|
|
496
|
-
|
|
497
|
-
? showCheckedStrategy
|
|
498
|
-
: showCheckedStrategy === 'all'
|
|
499
|
-
? 'parent'
|
|
500
|
-
: showCheckedStrategy,
|
|
561
|
+
leafOnly ? 'child' : autoMergeValue ? 'parent' : 'all',
|
|
501
562
|
);
|
|
502
563
|
|
|
503
564
|
// 回填值/Tag 收敛集(effectiveStrategy):unRelated 无父子关系故策略不生效(取全 checked)。
|
|
@@ -535,19 +596,24 @@
|
|
|
535
596
|
? Math.max(0, checkedNodes.length - maxTagCount)
|
|
536
597
|
: 0,
|
|
537
598
|
);
|
|
599
|
+
// showRestTagsPopover:+N hover 时浮层展示的隐藏剩余节点(折叠掉的那部分)。
|
|
600
|
+
const hiddenTagNodes = $derived(
|
|
601
|
+
maxTagCount !== undefined && maxTagCount >= 0
|
|
602
|
+
? checkedNodes.slice(maxTagCount)
|
|
603
|
+
: [],
|
|
604
|
+
);
|
|
538
605
|
|
|
539
|
-
// ---
|
|
540
|
-
const isOpenControlled = $derived(open !== undefined);
|
|
606
|
+
// --- 非受控 open(对齐 Semi:仅 defaultOpen 初始 + onVisibleChange 回调,无受控 open prop)---
|
|
541
607
|
let innerOpen = $state(getInitialOpen());
|
|
542
|
-
const isOpen = $derived(
|
|
543
|
-
|
|
544
|
-
//
|
|
545
|
-
$
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
608
|
+
const isOpen = $derived(innerOpen);
|
|
609
|
+
|
|
610
|
+
// --- 展开状态:受控(传入 expandedKeys)时只读派生 + onExpand 回调(红线 #1 不回写);
|
|
611
|
+
// 非受控时本地 $state Set(红线 #2,不依赖挂载 registry)。 ---
|
|
612
|
+
const isExpandControlled = $derived(expandedKeysProp !== undefined);
|
|
613
|
+
let innerExpanded = $state<Set<TreeKey>>(getInitialExpanded());
|
|
614
|
+
const expandedKeys = $derived<Set<TreeKey>>(
|
|
615
|
+
isExpandControlled ? new Set(expandedKeysProp) : innerExpanded,
|
|
616
|
+
);
|
|
551
617
|
|
|
552
618
|
const selectedNode = $derived(
|
|
553
619
|
currentValue === null ? undefined : findNode(mergedTree, currentValue),
|
|
@@ -556,7 +622,22 @@
|
|
|
556
622
|
const hasSelection = $derived(
|
|
557
623
|
multiple ? checkedNodes.length > 0 : selectedNode !== undefined,
|
|
558
624
|
);
|
|
559
|
-
const
|
|
625
|
+
const showClearBtn = $derived(showClear && !disabled && hasSelection);
|
|
626
|
+
|
|
627
|
+
// position → use:floating 的 Placement(对齐 Semi,映射表照 DatePicker),缺省 bottomStart。
|
|
628
|
+
const POSITION_TO_PLACEMENT: Record<string, Placement> = {
|
|
629
|
+
bottomLeft: 'bottomStart',
|
|
630
|
+
bottomRight: 'bottomEnd',
|
|
631
|
+
bottom: 'bottom',
|
|
632
|
+
topLeft: 'topStart',
|
|
633
|
+
topRight: 'topEnd',
|
|
634
|
+
top: 'top',
|
|
635
|
+
leftTop: 'leftStart',
|
|
636
|
+
leftBottom: 'leftEnd',
|
|
637
|
+
rightTop: 'rightStart',
|
|
638
|
+
rightBottom: 'rightEnd',
|
|
639
|
+
};
|
|
640
|
+
const dropdownPlacement = $derived<Placement>(POSITION_TO_PLACEMENT[position] ?? 'bottomStart');
|
|
560
641
|
|
|
561
642
|
function setValue(next: TreeKey | null) {
|
|
562
643
|
if (!isValueControlled) innerValue = next;
|
|
@@ -588,7 +669,7 @@
|
|
|
588
669
|
if (nextBase.has(node.key)) nextBase.delete(node.key);
|
|
589
670
|
else nextBase.add(node.key);
|
|
590
671
|
} else {
|
|
591
|
-
nextBase = toggleCheck(mergedTree as unknown as TreeNodeData[], currentCheckedBase, node.key);
|
|
672
|
+
nextBase = toggleCheck(mergedTree as unknown as TreeNodeData[], currentCheckedBase, node.key, disableStrictly);
|
|
592
673
|
}
|
|
593
674
|
setChecked(nextBase);
|
|
594
675
|
}
|
|
@@ -603,7 +684,7 @@
|
|
|
603
684
|
setChecked(next);
|
|
604
685
|
} else if (isChecked) {
|
|
605
686
|
// 复用 toggleCheck:已选 → 取消(含子树联动)
|
|
606
|
-
setChecked(toggleCheck(mergedTree as unknown as TreeNodeData[], currentCheckedBase, node.key));
|
|
687
|
+
setChecked(toggleCheck(mergedTree as unknown as TreeNodeData[], currentCheckedBase, node.key, disableStrictly));
|
|
607
688
|
}
|
|
608
689
|
}
|
|
609
690
|
|
|
@@ -617,12 +698,13 @@
|
|
|
617
698
|
function setOpen(next: boolean) {
|
|
618
699
|
if (next === isOpen) return;
|
|
619
700
|
if (!next) searchValue = '';
|
|
620
|
-
|
|
621
|
-
onOpenChange?.(next);
|
|
701
|
+
innerOpen = next;
|
|
622
702
|
onVisibleChange?.(next);
|
|
623
703
|
}
|
|
624
704
|
|
|
625
|
-
function toggleOpen() {
|
|
705
|
+
function toggleOpen(e: MouseEvent) {
|
|
706
|
+
// stopPropagation(对齐 Semi,默认 true):阻止 trigger 点击冒泡到外层。
|
|
707
|
+
if (stopPropagation) e.stopPropagation();
|
|
626
708
|
if (disabled) return;
|
|
627
709
|
if (isOpen && !clickTriggerToHide) return;
|
|
628
710
|
setOpen(!isOpen);
|
|
@@ -646,13 +728,27 @@
|
|
|
646
728
|
const trimmedSearch = $derived(searchValue.trim());
|
|
647
729
|
// remote 模式不本地过滤(外部更新 treeData),仅本地 filterable 时高亮/收敛命中链。
|
|
648
730
|
const searchActive = $derived(!remote && isFilterable && trimmedSearch.length > 0);
|
|
731
|
+
// 按 treeNodeFilterProp 取节点用于匹配的文本(默认 label;自定义字段回退 label)。
|
|
732
|
+
function nodeFilterText(node: TreeNodeData): string {
|
|
733
|
+
const raw = (node as unknown as Record<string, unknown>)[treeNodeFilterProp];
|
|
734
|
+
const v = raw ?? node.label;
|
|
735
|
+
return v == null ? '' : String(v);
|
|
736
|
+
}
|
|
649
737
|
const filterResult = $derived.by(() => {
|
|
650
738
|
if (!searchActive) return { matched: new Set<TreeKey>(), expand: new Set<TreeKey>() };
|
|
651
739
|
const lower = trimmedSearch.toLowerCase();
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
740
|
+
// filterTreeNode 为函数时用作自定义匹配谓词(inputValue, treeNodeString, data?);
|
|
741
|
+
// 否则默认对 treeNodeFilterProp 文本做大小写不敏感包含匹配。
|
|
742
|
+
const predicate =
|
|
743
|
+
typeof filterTreeNode === 'function'
|
|
744
|
+
? (node: TreeNodeData) =>
|
|
745
|
+
(filterTreeNode as (i: string, s: string, d?: TreeNode) => boolean)(
|
|
746
|
+
trimmedSearch,
|
|
747
|
+
nodeFilterText(node),
|
|
748
|
+
node as unknown as TreeNode,
|
|
749
|
+
)
|
|
750
|
+
: (node: TreeNodeData) => nodeFilterText(node).toLowerCase().includes(lower);
|
|
751
|
+
return computeFilteredKeys(mergedTree as unknown as TreeNodeData[], predicate);
|
|
656
752
|
});
|
|
657
753
|
// 节点在搜索结果可见:命中本身、或在祖先链/含命中后代(expand 集)。
|
|
658
754
|
// showFilteredOnly=true 时只显示精确命中节点,不显示祖先链。
|
|
@@ -663,8 +759,8 @@
|
|
|
663
759
|
}
|
|
664
760
|
|
|
665
761
|
function isExpanded(key: TreeKey): boolean {
|
|
666
|
-
//
|
|
667
|
-
if (searchActive && filterResult.expand.has(key)) return true;
|
|
762
|
+
// 搜索激活时强制展开命中链(对齐 Semi:展开受控时不再自动展开,完全由 expandedKeys 控制)。
|
|
763
|
+
if (!isExpandControlled && searchActive && filterResult.expand.has(key)) return true;
|
|
668
764
|
return expandedKeys.has(key);
|
|
669
765
|
}
|
|
670
766
|
|
|
@@ -683,28 +779,20 @@
|
|
|
683
779
|
}
|
|
684
780
|
};
|
|
685
781
|
walk(mergedTree);
|
|
686
|
-
//
|
|
687
|
-
if (searchActive) for (const k of filterResult.expand) set.add(k);
|
|
782
|
+
// 同时并入搜索展开链(受控展开时不自动展开)。
|
|
783
|
+
if (!isExpandControlled && searchActive) for (const k of filterResult.expand) set.add(k);
|
|
688
784
|
return set;
|
|
689
785
|
}
|
|
690
|
-
|
|
786
|
+
// 受控展开时不并入搜索展开链(对齐 Semi),完全由 expandedKeys 控制。
|
|
787
|
+
if (!searchActive || isExpandControlled) return expandedKeys;
|
|
691
788
|
const merged = new Set(expandedKeys);
|
|
692
789
|
for (const k of filterResult.expand) merged.add(k);
|
|
693
790
|
return merged;
|
|
694
791
|
});
|
|
695
|
-
//
|
|
696
|
-
const
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
for (const node of nodes) {
|
|
700
|
-
n++;
|
|
701
|
-
if (node.children) walk(node.children);
|
|
702
|
-
}
|
|
703
|
-
};
|
|
704
|
-
walk(mergedTree);
|
|
705
|
-
return n;
|
|
706
|
-
});
|
|
707
|
-
const useVirtual = $derived(virtualized || totalNodeCount >= virtualizeThreshold);
|
|
792
|
+
// virtualize 对象归一(对齐 Semi):传入对象即显式开启(无自动阈值);height 视口高度、itemSize 行高。
|
|
793
|
+
const height = $derived(virtualize?.height ?? 224);
|
|
794
|
+
const itemHeight = $derived(virtualize?.itemSize ?? 32);
|
|
795
|
+
const useVirtual = $derived(virtualize !== undefined);
|
|
708
796
|
// 可见扁平节点:虚拟化用于视口切片,非虚拟化也用于键盘 roving 导航(红线 #2 纯派生)。
|
|
709
797
|
const flat = $derived(
|
|
710
798
|
flattenVisible(mergedTree as unknown as TreeNodeData[], effectiveExpanded),
|
|
@@ -794,7 +882,8 @@
|
|
|
794
882
|
function toggleExpand(node: TreeNode) {
|
|
795
883
|
const key = node.key;
|
|
796
884
|
const next = new Set(expandedKeys);
|
|
797
|
-
|
|
885
|
+
const willExpand = !next.has(key);
|
|
886
|
+
if (!willExpand) {
|
|
798
887
|
next.delete(key);
|
|
799
888
|
} else {
|
|
800
889
|
next.add(key);
|
|
@@ -816,7 +905,9 @@
|
|
|
816
905
|
// 展开未加载的异步节点:先取数据(数据到位后合并树派生即显示子节点)。
|
|
817
906
|
if (!hasChildren(node) && loadData && !loadedKeys.has(key)) void loadChildren(node);
|
|
818
907
|
}
|
|
819
|
-
|
|
908
|
+
// 受控展开(红线 #1):只回调 onExpand,不回写本地态;非受控写本地态。
|
|
909
|
+
if (!isExpandControlled) innerExpanded = next;
|
|
910
|
+
onExpand?.([...next], { expanded: willExpand, node });
|
|
820
911
|
}
|
|
821
912
|
|
|
822
913
|
function selectNode(node: TreeNode) {
|
|
@@ -980,34 +1071,80 @@
|
|
|
980
1071
|
scrollActiveIntoView();
|
|
981
1072
|
}
|
|
982
1073
|
|
|
983
|
-
// ---
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
1074
|
+
// --- onSearch(对齐 Semi 三入参签名 (input, filteredExpandedKeys, filteredNodes))---
|
|
1075
|
+
// 无内置防抖:Semi 也不做防抖,remote 场景由使用方在 onSearch 内自行节流。
|
|
1076
|
+
// 对任意输入即时计算过滤结果(不受 remote/searchActive gate 限制),供回调的后两参。
|
|
1077
|
+
function emitSearch(input: string) {
|
|
1078
|
+
if (!onSearch) return;
|
|
1079
|
+
const q = input.trim();
|
|
1080
|
+
if (q.length === 0) {
|
|
1081
|
+
onSearch(input, [], []);
|
|
1082
|
+
return;
|
|
1083
|
+
}
|
|
1084
|
+
const lower = q.toLowerCase();
|
|
1085
|
+
const predicate =
|
|
1086
|
+
typeof filterTreeNode === 'function'
|
|
1087
|
+
? (node: TreeNodeData) =>
|
|
1088
|
+
(filterTreeNode as (i: string, s: string, d?: TreeNode) => boolean)(
|
|
1089
|
+
q,
|
|
1090
|
+
nodeFilterText(node),
|
|
1091
|
+
node as unknown as TreeNode,
|
|
1092
|
+
)
|
|
1093
|
+
: (node: TreeNodeData) => nodeFilterText(node).toLowerCase().includes(lower);
|
|
1094
|
+
const res = computeFilteredKeys(mergedTree as unknown as TreeNodeData[], predicate);
|
|
1095
|
+
// filteredExpandedKeys:命中链上应展开的祖先节点 keys(对齐 Semi filteredExpandedKeys)。
|
|
1096
|
+
const filteredExpandedKeys = [...res.expand];
|
|
1097
|
+
// filteredNodes:命中节点原始数据数组(树序)。
|
|
1098
|
+
const filteredNodes: TreeNode[] = [];
|
|
1099
|
+
const walk = (nodes: TreeNode[]) => {
|
|
1100
|
+
for (const n of nodes) {
|
|
1101
|
+
if (res.matched.has(n.key)) filteredNodes.push(n);
|
|
1102
|
+
if (n.children) walk(n.children);
|
|
1103
|
+
}
|
|
1104
|
+
};
|
|
1105
|
+
walk(mergedTree);
|
|
1106
|
+
onSearch(input, filteredExpandedKeys, filteredNodes);
|
|
991
1107
|
}
|
|
992
|
-
// 卸载兜底清理。
|
|
993
|
-
$effect(() => () => {
|
|
994
|
-
if (searchTimer !== undefined) clearTimeout(searchTimer);
|
|
995
|
-
});
|
|
996
1108
|
function onSearchInput(e: Event & { currentTarget: HTMLInputElement }) {
|
|
997
1109
|
searchValue = e.currentTarget.value;
|
|
998
|
-
|
|
1110
|
+
emitSearch(searchValue);
|
|
1111
|
+
}
|
|
1112
|
+
// searchRender 自定义搜索框用的命令式回调(把外部输入回填给内部搜索态)。
|
|
1113
|
+
function setSearchValue(v: string) {
|
|
1114
|
+
searchValue = v;
|
|
1115
|
+
emitSearch(v);
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
/** 命令式搜索:把值置给内部搜索态并触发过滤(对齐 Semi search(sugInput),用于外部自定义搜索框)。 */
|
|
1119
|
+
export function search(sugInput: string): void {
|
|
1120
|
+
setSearchValue(sugInput);
|
|
1121
|
+
}
|
|
1122
|
+
// 内置搜索框键盘处理(Escape 关闭,其余交给树 roving)。
|
|
1123
|
+
function onSearchKeydown(e: KeyboardEvent) {
|
|
1124
|
+
if (e.key === 'Escape') {
|
|
1125
|
+
setOpen(false);
|
|
1126
|
+
return;
|
|
1127
|
+
}
|
|
1128
|
+
onTreeKeydown(e);
|
|
999
1129
|
}
|
|
1130
|
+
// searchRender=false 时隐藏内置搜索框(即使 filterable/filterTreeNode 开启)。
|
|
1131
|
+
const showBuiltinSearch = $derived(isFilterable && searchRender !== false);
|
|
1132
|
+
// searchPosition:'dropdown'(默认)搜索框在浮层顶部;'trigger' 搜索框内嵌触发器(对齐 Semi)。
|
|
1133
|
+
const searchInDropdown = $derived(showBuiltinSearch && searchPosition !== 'trigger');
|
|
1134
|
+
const searchInTrigger = $derived(showBuiltinSearch && searchPosition === 'trigger');
|
|
1135
|
+
// 搜索框占位文案:searchPlaceholder prop 优先,回退 i18n。
|
|
1136
|
+
const resolvedSearchPlaceholder = $derived(searchPlaceholder ?? loc().t('TreeSelect.searchPlaceholder'));
|
|
1000
1137
|
|
|
1001
1138
|
// --- DOM 引用:触发根 + portal 面板(定位由 use:floating action 接管)---
|
|
1002
1139
|
let rootEl = $state<HTMLDivElement | null>(null);
|
|
1003
1140
|
let panelEl = $state<HTMLDivElement | null>(null);
|
|
1004
1141
|
|
|
1005
|
-
// ---
|
|
1142
|
+
// --- 浮层 DOM:首开后保留(仅隐藏),对齐 Semi(不销毁重建)。 ---
|
|
1006
1143
|
let hasBeenOpened = $state(false);
|
|
1007
1144
|
$effect(() => {
|
|
1008
1145
|
if (isOpen) hasBeenOpened = true;
|
|
1009
1146
|
});
|
|
1010
|
-
const shouldRender = $derived(
|
|
1147
|
+
const shouldRender = $derived(isOpen || hasBeenOpened);
|
|
1011
1148
|
|
|
1012
1149
|
// --- useDismiss (红线 #3): panel portal 出 root 子树后列入 extraTargets ---
|
|
1013
1150
|
$effect(() => {
|
|
@@ -1036,6 +1173,11 @@
|
|
|
1036
1173
|
.join(' '),
|
|
1037
1174
|
);
|
|
1038
1175
|
|
|
1176
|
+
// triggerRender 的 value 参数:多选给收敛后的 key 数组,单选给单 key(对齐 onChange 语义)。
|
|
1177
|
+
const triggerValue = $derived<TreeKey | TreeKey[] | null>(
|
|
1178
|
+
multiple ? strategyKeys : currentValue,
|
|
1179
|
+
);
|
|
1180
|
+
|
|
1039
1181
|
// optionListStyle 规范化为 style 字符串。
|
|
1040
1182
|
const optionListStyleStr = $derived(
|
|
1041
1183
|
typeof optionListStyle === 'string'
|
|
@@ -1048,6 +1190,16 @@
|
|
|
1048
1190
|
);
|
|
1049
1191
|
</script>
|
|
1050
1192
|
|
|
1193
|
+
{#snippet emptyBlock()}
|
|
1194
|
+
<div class="cd-tree-select__empty">
|
|
1195
|
+
{#if emptyContent !== undefined}
|
|
1196
|
+
{#if typeof emptyContent === 'string'}{emptyContent}{:else}{@render emptyContent()}{/if}
|
|
1197
|
+
{:else}
|
|
1198
|
+
{loc().t('TreeSelect.emptyText')}
|
|
1199
|
+
{/if}
|
|
1200
|
+
</div>
|
|
1201
|
+
{/snippet}
|
|
1202
|
+
|
|
1051
1203
|
{#snippet nodeRow(
|
|
1052
1204
|
node: TreeNode,
|
|
1053
1205
|
level: number,
|
|
@@ -1076,7 +1228,7 @@
|
|
|
1076
1228
|
aria-checked={multiple ? (cs.checked ? true : cs.half ? 'mixed' : false) : undefined}
|
|
1077
1229
|
aria-expanded={expandable ? nodeOpen : undefined}
|
|
1078
1230
|
aria-disabled={node.disabled || undefined}
|
|
1079
|
-
style={[posStyle, `padding-inline-start: calc(${level} * var(--cd-tree-
|
|
1231
|
+
style={[posStyle, `padding-inline-start: calc(${level} * var(--cd-spacing-tree-option-level-padding-left))`]
|
|
1080
1232
|
.filter(Boolean)
|
|
1081
1233
|
.join('; ')}
|
|
1082
1234
|
onclick={() => selectNode(node)}
|
|
@@ -1105,9 +1257,7 @@
|
|
|
1105
1257
|
}
|
|
1106
1258
|
}}
|
|
1107
1259
|
>
|
|
1108
|
-
<
|
|
1109
|
-
<path fill="currentColor" d="M6 4l4 4-4 4V4Z" />
|
|
1110
|
-
</svg>
|
|
1260
|
+
<IconTreeTriangleDown size="small" aria-hidden="true" />
|
|
1111
1261
|
</span>
|
|
1112
1262
|
{:else}
|
|
1113
1263
|
<span class="cd-tree-select__expand cd-tree-select__expand--placeholder" aria-hidden="true"></span>
|
|
@@ -1120,20 +1270,14 @@
|
|
|
1120
1270
|
aria-hidden="true"
|
|
1121
1271
|
>
|
|
1122
1272
|
{#if cs.checked}
|
|
1123
|
-
<
|
|
1124
|
-
<path fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M3.5 8.5l3 3 6-6.5" />
|
|
1125
|
-
</svg>
|
|
1273
|
+
<IconCheckboxTick aria-hidden="true" />
|
|
1126
1274
|
{:else if cs.half}
|
|
1127
|
-
<
|
|
1128
|
-
<path fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" d="M4 8h8" />
|
|
1129
|
-
</svg>
|
|
1275
|
+
<IconCheckboxIndeterminate aria-hidden="true" />
|
|
1130
1276
|
{/if}
|
|
1131
1277
|
</span>
|
|
1132
1278
|
{/if}
|
|
1133
|
-
{#if
|
|
1134
|
-
<span class="cd-tree-select__icon" aria-hidden="true">
|
|
1135
|
-
{#if icon}{@render icon({ node, expanded: nodeOpen, level })}{/if}
|
|
1136
|
-
</span>
|
|
1279
|
+
{#if node.icon != null}
|
|
1280
|
+
<span class="cd-tree-select__icon" aria-hidden="true">{node.icon}</span>
|
|
1137
1281
|
{/if}
|
|
1138
1282
|
<span class="cd-tree-select__node-label">
|
|
1139
1283
|
{#if searchActive}
|
|
@@ -1147,6 +1291,63 @@
|
|
|
1147
1291
|
</div>
|
|
1148
1292
|
{/snippet}
|
|
1149
1293
|
|
|
1294
|
+
{#snippet restTagsTrigger()}
|
|
1295
|
+
<!-- +N 折叠触发器:aria-label 走 i18n restTagsCount(「还有 {count} 项」/「{count} more」)供屏幕阅读器朗读折叠数 -->
|
|
1296
|
+
<span
|
|
1297
|
+
class="cd-tree-select__rest-trigger"
|
|
1298
|
+
aria-label={loc().t('TreeSelect.restTagsCount', { count: hiddenTagCount })}
|
|
1299
|
+
>
|
|
1300
|
+
<Tag size={size === 'large' ? 'default' : 'small'}>+{hiddenTagCount}</Tag>
|
|
1301
|
+
</span>
|
|
1302
|
+
{/snippet}
|
|
1303
|
+
|
|
1304
|
+
<!--
|
|
1305
|
+
内置搜索框:dropdown / trigger 两处位置复用。
|
|
1306
|
+
- dropdown(默认):带灰底 + 放大镜的 field,与列表分隔清晰(对齐 Semi)。
|
|
1307
|
+
- trigger(bare=true):朴素透明 input,与触发器融为一体,无额外灰底框(避免臃肿)。
|
|
1308
|
+
-->
|
|
1309
|
+
{#snippet builtinSearchInput(bare = false)}
|
|
1310
|
+
{#if typeof searchRender === 'function'}
|
|
1311
|
+
{@render searchRender({
|
|
1312
|
+
value: searchValue,
|
|
1313
|
+
onInput: setSearchValue,
|
|
1314
|
+
onKeydown: onSearchKeydown,
|
|
1315
|
+
placeholder: resolvedSearchPlaceholder,
|
|
1316
|
+
})}
|
|
1317
|
+
{:else if bare}
|
|
1318
|
+
<input
|
|
1319
|
+
class="cd-tree-select__search-input cd-tree-select__search-input--bare"
|
|
1320
|
+
type="text"
|
|
1321
|
+
role="combobox"
|
|
1322
|
+
aria-expanded={isOpen}
|
|
1323
|
+
aria-controls={treeId}
|
|
1324
|
+
aria-activedescendant={activeDescId}
|
|
1325
|
+
placeholder={resolvedSearchPlaceholder}
|
|
1326
|
+
aria-label={resolvedSearchPlaceholder}
|
|
1327
|
+
value={searchValue}
|
|
1328
|
+
oninput={onSearchInput}
|
|
1329
|
+
onkeydown={onSearchKeydown}
|
|
1330
|
+
/>
|
|
1331
|
+
{:else}
|
|
1332
|
+
<span class="cd-tree-select__search-field">
|
|
1333
|
+
<IconSearch class="cd-tree-select__search-icon" aria-hidden="true" />
|
|
1334
|
+
<input
|
|
1335
|
+
class="cd-tree-select__search-input"
|
|
1336
|
+
type="text"
|
|
1337
|
+
role="combobox"
|
|
1338
|
+
aria-expanded={isOpen}
|
|
1339
|
+
aria-controls={treeId}
|
|
1340
|
+
aria-activedescendant={activeDescId}
|
|
1341
|
+
placeholder={resolvedSearchPlaceholder}
|
|
1342
|
+
aria-label={resolvedSearchPlaceholder}
|
|
1343
|
+
value={searchValue}
|
|
1344
|
+
oninput={onSearchInput}
|
|
1345
|
+
onkeydown={onSearchKeydown}
|
|
1346
|
+
/>
|
|
1347
|
+
</span>
|
|
1348
|
+
{/if}
|
|
1349
|
+
{/snippet}
|
|
1350
|
+
|
|
1150
1351
|
{#snippet treeNodes(nodes: TreeNode[], level: number)}
|
|
1151
1352
|
{@const setSize = nodes.length}
|
|
1152
1353
|
{#each nodes as node, i (node.key)}
|
|
@@ -1162,6 +1363,9 @@
|
|
|
1162
1363
|
|
|
1163
1364
|
<div class={cls} bind:this={rootEl} {style}>
|
|
1164
1365
|
<!-- combobox 容器用 div 以合法承载多选 tags / clear 等内部交互元素 -->
|
|
1366
|
+
{#if triggerRender}
|
|
1367
|
+
{@render triggerRender({ value: triggerValue, placeholder, isOpen, disabled })}
|
|
1368
|
+
{:else}
|
|
1165
1369
|
<div
|
|
1166
1370
|
class="cd-tree-select__trigger"
|
|
1167
1371
|
role="combobox"
|
|
@@ -1170,6 +1374,10 @@
|
|
|
1170
1374
|
aria-controls={treeId}
|
|
1171
1375
|
aria-activedescendant={isOpen && !searchActive ? activeDescId : undefined}
|
|
1172
1376
|
aria-label={ariaLabel}
|
|
1377
|
+
aria-labelledby={ariaLabelledby}
|
|
1378
|
+
aria-describedby={ariaDescribedby}
|
|
1379
|
+
aria-errormessage={ariaErrormessage}
|
|
1380
|
+
aria-required={ariaRequired || undefined}
|
|
1173
1381
|
aria-invalid={effStatus === 'error' || undefined}
|
|
1174
1382
|
aria-disabled={disabled || undefined}
|
|
1175
1383
|
tabindex={disabled ? -1 : 0}
|
|
@@ -1199,34 +1407,71 @@
|
|
|
1199
1407
|
{#if typeof prefix === 'string'}{prefix}{:else}{@render prefix()}{/if}
|
|
1200
1408
|
</span>
|
|
1201
1409
|
{/if}
|
|
1202
|
-
|
|
1410
|
+
{#if insetLabel}
|
|
1411
|
+
<span class="cd-tree-select__inset-label" id={insetLabelId}>
|
|
1412
|
+
{#if typeof insetLabel === 'string'}{insetLabel}{:else}{@render insetLabel()}{/if}
|
|
1413
|
+
</span>
|
|
1414
|
+
{/if}
|
|
1415
|
+
<span class="cd-tree-select__content" class:cd-tree-select__content--search-trigger={searchInTrigger}>
|
|
1416
|
+
{#if searchInTrigger}
|
|
1417
|
+
<!-- searchPosition='trigger':朴素 input 内嵌触发器,与触发器融为一体(bare 模式,无灰底框)。 -->
|
|
1418
|
+
<span class="cd-tree-select__trigger-search">{@render builtinSearchInput(true)}</span>
|
|
1419
|
+
{/if}
|
|
1203
1420
|
{#if multiple}
|
|
1204
1421
|
{#if checkedNodes.length > 0}
|
|
1205
1422
|
<span class="cd-tree-select__tags">
|
|
1206
1423
|
{#each visibleTagNodes as node (node.key)}
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1424
|
+
{#if renderSelectedItem}
|
|
1425
|
+
{@render renderSelectedItem({ node, onRemove: () => removeChecked(node) })}
|
|
1426
|
+
{:else}
|
|
1427
|
+
<Tag
|
|
1428
|
+
size={size === 'large' ? 'default' : 'small'}
|
|
1429
|
+
closable={!disabled}
|
|
1430
|
+
onClose={() => removeChecked(node)}
|
|
1431
|
+
>
|
|
1432
|
+
{node.label}
|
|
1433
|
+
</Tag>
|
|
1434
|
+
{/if}
|
|
1214
1435
|
{/each}
|
|
1215
1436
|
{#if hiddenTagCount > 0}
|
|
1216
|
-
|
|
1437
|
+
{#if showRestTagsPopover}
|
|
1438
|
+
<!-- showRestTagsPopover:hover +N 用本库 Popover 展示折叠掉的剩余 Tag(restTagsPopoverProps 可覆盖默认 props) -->
|
|
1439
|
+
<Popover trigger="hover" position="top" {...(restTagsPopoverProps ?? {})}>
|
|
1440
|
+
{@render restTagsTrigger()}
|
|
1441
|
+
{#snippet content()}
|
|
1442
|
+
<span class="cd-tree-select__rest-tags">
|
|
1443
|
+
{#each hiddenTagNodes as node (node.key)}
|
|
1444
|
+
<Tag
|
|
1445
|
+
size={size === 'large' ? 'default' : 'small'}
|
|
1446
|
+
closable={!disabled}
|
|
1447
|
+
onClose={() => removeChecked(node)}
|
|
1448
|
+
>
|
|
1449
|
+
{node.label}
|
|
1450
|
+
</Tag>
|
|
1451
|
+
{/each}
|
|
1452
|
+
</span>
|
|
1453
|
+
{/snippet}
|
|
1454
|
+
</Popover>
|
|
1455
|
+
{:else}
|
|
1456
|
+
{@render restTagsTrigger()}
|
|
1457
|
+
{/if}
|
|
1217
1458
|
{/if}
|
|
1218
1459
|
</span>
|
|
1219
1460
|
{:else}
|
|
1220
1461
|
<span class="cd-tree-select__placeholder">{placeholder}</span>
|
|
1221
1462
|
{/if}
|
|
1222
1463
|
{:else if hasSelection}
|
|
1223
|
-
|
|
1464
|
+
{#if renderSelectedItem && selectedNode}
|
|
1465
|
+
{@render renderSelectedItem({ node: selectedNode, onRemove: () => setValue(null) })}
|
|
1466
|
+
{:else}
|
|
1467
|
+
<span class="cd-tree-select__value">{displayLabel}</span>
|
|
1468
|
+
{/if}
|
|
1224
1469
|
{:else}
|
|
1225
1470
|
<span class="cd-tree-select__placeholder">{placeholder}</span>
|
|
1226
1471
|
{/if}
|
|
1227
1472
|
</span>
|
|
1228
1473
|
|
|
1229
|
-
{#if
|
|
1474
|
+
{#if showClearBtn}
|
|
1230
1475
|
<span
|
|
1231
1476
|
class="cd-tree-select__clear"
|
|
1232
1477
|
role="button"
|
|
@@ -1241,12 +1486,7 @@
|
|
|
1241
1486
|
}
|
|
1242
1487
|
}}
|
|
1243
1488
|
>
|
|
1244
|
-
<
|
|
1245
|
-
<path
|
|
1246
|
-
fill="currentColor"
|
|
1247
|
-
d="M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1Zm2.5 9.1-1.4 1.4L8 9.4 6.5 11l-1.4-1.4L6.6 8 5.1 6.5 6.5 5.1 8 6.6 9.5 5.1l1.4 1.4L9.4 8l1.1 1.1Z"
|
|
1248
|
-
/>
|
|
1249
|
-
</svg>
|
|
1489
|
+
<IconClear aria-hidden="true" />
|
|
1250
1490
|
</span>
|
|
1251
1491
|
{/if}
|
|
1252
1492
|
|
|
@@ -1259,56 +1499,38 @@
|
|
|
1259
1499
|
{#if arrowIcon}
|
|
1260
1500
|
{@render arrowIcon()}
|
|
1261
1501
|
{:else}
|
|
1262
|
-
<
|
|
1263
|
-
<path fill="currentColor" d="M3.5 6 8 10.5 12.5 6l-1-1L8 8.5 4.5 5l-1 1Z" />
|
|
1264
|
-
</svg>
|
|
1502
|
+
<IconChevronDown aria-hidden="true" />
|
|
1265
1503
|
{/if}
|
|
1266
1504
|
</span>
|
|
1267
1505
|
</div>
|
|
1506
|
+
{/if}
|
|
1268
1507
|
|
|
1269
1508
|
{#if shouldRender}
|
|
1270
1509
|
<div
|
|
1271
|
-
class=
|
|
1510
|
+
class={['cd-tree-select__panel', dropdownClassName].filter(Boolean).join(' ')}
|
|
1272
1511
|
class:cd-tree-select__panel--hidden={!isOpen}
|
|
1512
|
+
class:cd-tree-select__panel--motion={motion && isOpen}
|
|
1273
1513
|
bind:this={panelEl}
|
|
1274
1514
|
use:floating={{
|
|
1275
1515
|
trigger: rootEl,
|
|
1276
|
-
placement:
|
|
1516
|
+
placement: dropdownPlacement,
|
|
1277
1517
|
autoAdjust: true,
|
|
1278
|
-
offset:
|
|
1518
|
+
offset: dropdownOffset,
|
|
1279
1519
|
matchWidth: dropdownMatchSelectWidth,
|
|
1280
1520
|
getContainer: resolvePopupContainer,
|
|
1281
1521
|
open: isOpen,
|
|
1282
1522
|
}}
|
|
1283
1523
|
id={treeId}
|
|
1524
|
+
style={dropdownStyleStr}
|
|
1284
1525
|
>
|
|
1285
|
-
{#if
|
|
1526
|
+
{#if searchInDropdown}
|
|
1286
1527
|
<div class="cd-tree-select__search">
|
|
1287
|
-
|
|
1288
|
-
class="cd-tree-select__search-input"
|
|
1289
|
-
type="text"
|
|
1290
|
-
role="combobox"
|
|
1291
|
-
aria-expanded={isOpen}
|
|
1292
|
-
aria-controls={treeId}
|
|
1293
|
-
aria-activedescendant={activeDescId}
|
|
1294
|
-
placeholder={loc().t('TreeSelect.searchPlaceholder')}
|
|
1295
|
-
aria-label={loc().t('TreeSelect.searchPlaceholder')}
|
|
1296
|
-
value={searchValue}
|
|
1297
|
-
oninput={onSearchInput}
|
|
1298
|
-
onkeydown={(e) => {
|
|
1299
|
-
if (e.key === 'Escape') {
|
|
1300
|
-
setOpen(false);
|
|
1301
|
-
return;
|
|
1302
|
-
}
|
|
1303
|
-
// 搜索框聚焦时方向键/Home/End/Enter 在过滤后的可见树上 roving。
|
|
1304
|
-
onTreeKeydown(e);
|
|
1305
|
-
}}
|
|
1306
|
-
/>
|
|
1528
|
+
{@render builtinSearchInput()}
|
|
1307
1529
|
</div>
|
|
1308
1530
|
{/if}
|
|
1309
1531
|
{#if mergedTree.length === 0}
|
|
1310
1532
|
<div class="cd-tree-select__tree" role="tree">
|
|
1311
|
-
|
|
1533
|
+
{@render emptyBlock()}
|
|
1312
1534
|
</div>
|
|
1313
1535
|
{:else if useVirtual}
|
|
1314
1536
|
<!-- 虚拟滚动(复用 Tree 范式):role=tree 容器自身滚动,spacer 撑总高,行绝对定位按索引偏移。
|
|
@@ -1325,7 +1547,7 @@
|
|
|
1325
1547
|
onkeydown={onTreeKeydown}
|
|
1326
1548
|
>
|
|
1327
1549
|
{#if visibleFlat.length === 0}
|
|
1328
|
-
|
|
1550
|
+
{@render emptyBlock()}
|
|
1329
1551
|
{:else}
|
|
1330
1552
|
<div class="cd-tree-select__spacer" style={`block-size:${totalHeight}px`}>
|
|
1331
1553
|
{#each renderFlat as f, i (f.node.key)}
|
|
@@ -1352,7 +1574,7 @@
|
|
|
1352
1574
|
>
|
|
1353
1575
|
{@render treeNodes(mergedTree, 0)}
|
|
1354
1576
|
{#if searchActive && filterResult.matched.size === 0}
|
|
1355
|
-
|
|
1577
|
+
{@render emptyBlock()}
|
|
1356
1578
|
{/if}
|
|
1357
1579
|
</div>
|
|
1358
1580
|
{/if}
|
|
@@ -1405,12 +1627,47 @@
|
|
|
1405
1627
|
background: var(--cd-select-bg);
|
|
1406
1628
|
border-color: var(--cd-select-border-active);
|
|
1407
1629
|
}
|
|
1630
|
+
/* warning 校验态:light-bg + 分态 border(对齐 Semi treeSelect warning,same as Input)。 */
|
|
1631
|
+
.cd-tree-select--warning .cd-tree-select__trigger {
|
|
1632
|
+
background: var(--cd-color-tree-select-warning-bg-default);
|
|
1633
|
+
border-color: var(--cd-color-tree-select-warning-border-default);
|
|
1634
|
+
}
|
|
1635
|
+
.cd-tree-select--warning:not(.cd-tree-select--open):not(.cd-tree-select--disabled)
|
|
1636
|
+
.cd-tree-select__trigger:hover {
|
|
1637
|
+
background: var(--cd-color-tree-select-warning-bg-hover);
|
|
1638
|
+
border-color: var(--cd-color-tree-select-warning-border-hover);
|
|
1639
|
+
}
|
|
1640
|
+
.cd-tree-select--warning .cd-tree-select__trigger:focus-visible,
|
|
1641
|
+
.cd-tree-select--warning.cd-tree-select--open .cd-tree-select__trigger {
|
|
1642
|
+
background: var(--cd-color-tree-select-warning-bg-focus);
|
|
1643
|
+
border-color: var(--cd-color-tree-select-warning-border-focus);
|
|
1644
|
+
}
|
|
1645
|
+
.cd-tree-select--warning .cd-tree-select__trigger:active {
|
|
1646
|
+
background: var(--cd-color-tree-select-warning-bg-active);
|
|
1647
|
+
border-color: var(--cd-color-tree-select-warning-border-active);
|
|
1648
|
+
}
|
|
1649
|
+
/* error 校验态:light-bg + 分态 border(对齐 Semi treeSelect danger,same as Input)。 */
|
|
1408
1650
|
.cd-tree-select--error .cd-tree-select__trigger {
|
|
1409
|
-
|
|
1651
|
+
background: var(--cd-color-tree-select-danger-bg-default);
|
|
1652
|
+
border-color: var(--cd-color-tree-select-danger-border-default);
|
|
1653
|
+
}
|
|
1654
|
+
.cd-tree-select--error:not(.cd-tree-select--open):not(.cd-tree-select--disabled)
|
|
1655
|
+
.cd-tree-select__trigger:hover {
|
|
1656
|
+
background: var(--cd-color-tree-select-danger-bg-hover);
|
|
1657
|
+
border-color: var(--cd-color-tree-select-danger-border-hover);
|
|
1658
|
+
}
|
|
1659
|
+
.cd-tree-select--error .cd-tree-select__trigger:focus-visible,
|
|
1660
|
+
.cd-tree-select--error.cd-tree-select--open .cd-tree-select__trigger {
|
|
1661
|
+
background: var(--cd-color-tree-select-danger-bg-focus);
|
|
1662
|
+
border-color: var(--cd-color-tree-select-danger-border-focus);
|
|
1663
|
+
}
|
|
1664
|
+
.cd-tree-select--error .cd-tree-select__trigger:active {
|
|
1665
|
+
background: var(--cd-color-tree-select-danger-bg-active);
|
|
1666
|
+
border-color: var(--cd-color-tree-select-danger-border-active);
|
|
1410
1667
|
}
|
|
1411
1668
|
.cd-tree-select__trigger[aria-disabled='true'] {
|
|
1412
|
-
background: var(--cd-color-disabled-
|
|
1413
|
-
color: var(--cd-color-text-
|
|
1669
|
+
background: var(--cd-color-tree-select-input-disabled-bg-default, var(--cd-color-fill-0));
|
|
1670
|
+
color: var(--cd-color-tree-select-input-disabled-text-default);
|
|
1414
1671
|
cursor: not-allowed;
|
|
1415
1672
|
}
|
|
1416
1673
|
.cd-tree-select__content {
|
|
@@ -1419,14 +1676,35 @@
|
|
|
1419
1676
|
align-items: center;
|
|
1420
1677
|
min-inline-size: 0;
|
|
1421
1678
|
}
|
|
1679
|
+
/* searchPosition='trigger':搜索输入占据触发器主区,与已选值/占位并存。 */
|
|
1680
|
+
.cd-tree-select__trigger-search {
|
|
1681
|
+
display: flex;
|
|
1682
|
+
flex: 1 1 auto;
|
|
1683
|
+
min-inline-size: 0;
|
|
1684
|
+
}
|
|
1685
|
+
/* bare 搜索 input:透明、无边框,与触发器融为一体(避免臃肿的灰底框)。 */
|
|
1686
|
+
.cd-tree-select__search-input--bare {
|
|
1687
|
+
inline-size: 100%;
|
|
1688
|
+
min-inline-size: 0;
|
|
1689
|
+
block-size: auto;
|
|
1690
|
+
padding: 0;
|
|
1691
|
+
background: transparent;
|
|
1692
|
+
border: none;
|
|
1693
|
+
color: inherit;
|
|
1694
|
+
font: inherit;
|
|
1695
|
+
outline: none;
|
|
1696
|
+
}
|
|
1697
|
+
.cd-tree-select__search-input--bare::placeholder {
|
|
1698
|
+
color: var(--cd-color-text-2);
|
|
1699
|
+
}
|
|
1422
1700
|
.cd-tree-select__value {
|
|
1423
1701
|
overflow: hidden;
|
|
1424
1702
|
white-space: nowrap;
|
|
1425
1703
|
text-overflow: ellipsis;
|
|
1426
1704
|
}
|
|
1427
1705
|
.cd-tree-select__placeholder {
|
|
1428
|
-
/* 对齐 Semi treeSelect 占位符
|
|
1429
|
-
color: var(--cd-color-text-
|
|
1706
|
+
/* 对齐 Semi treeSelect 占位符 input-placeholder-text-default = text-2 */
|
|
1707
|
+
color: var(--cd-color-tree-select-input-placeholder-text-default);
|
|
1430
1708
|
}
|
|
1431
1709
|
.cd-tree-select__clear,
|
|
1432
1710
|
.cd-tree-select__arrow {
|
|
@@ -1434,13 +1712,14 @@
|
|
|
1434
1712
|
align-items: center;
|
|
1435
1713
|
justify-content: center;
|
|
1436
1714
|
flex: 0 0 auto;
|
|
1437
|
-
|
|
1715
|
+
/* 对齐 Semi treeSelect default-icon-default = text-2 */
|
|
1716
|
+
color: var(--cd-color-tree-select-default-icon-default);
|
|
1438
1717
|
}
|
|
1439
1718
|
.cd-tree-select__clear {
|
|
1440
1719
|
cursor: pointer;
|
|
1441
1720
|
}
|
|
1442
1721
|
.cd-tree-select__clear:hover {
|
|
1443
|
-
color: var(--cd-color-
|
|
1722
|
+
color: var(--cd-color-tree-select-default-icon-hover);
|
|
1444
1723
|
}
|
|
1445
1724
|
.cd-tree-select__arrow {
|
|
1446
1725
|
transition: transform var(--cd-motion-duration-fast) var(--cd-motion-ease-standard);
|
|
@@ -1456,29 +1735,83 @@
|
|
|
1456
1735
|
border-radius: var(--cd-select-dropdown-radius);
|
|
1457
1736
|
box-shadow: var(--cd-select-dropdown-shadow);
|
|
1458
1737
|
}
|
|
1459
|
-
/*
|
|
1738
|
+
/* 关闭后保留 DOM 但不可见、不可交互、不占位(对齐 Semi,不销毁重建) */
|
|
1460
1739
|
.cd-tree-select__panel--hidden {
|
|
1461
1740
|
display: none;
|
|
1462
1741
|
}
|
|
1742
|
+
/* motion:下拉浮层开合进场淡入;reduced-motion 退化。
|
|
1743
|
+
注意:定位 transform 由 use:floating 写入 inline style,动画 keyframe
|
|
1744
|
+
绝不能设 transform(CSS animation 优先级高于 inline style,会把 floating 的
|
|
1745
|
+
translate(x,y) 覆盖成 0,浮层飘到容器左上角)。故仅动 opacity(与 Dropdown 一致)。 */
|
|
1746
|
+
.cd-tree-select__panel--motion {
|
|
1747
|
+
animation: cd-tree-select-in var(--cd-dropdown-motion-duration, 120ms)
|
|
1748
|
+
var(--cd-dropdown-motion-easing, ease) both;
|
|
1749
|
+
}
|
|
1750
|
+
@keyframes cd-tree-select-in {
|
|
1751
|
+
from {
|
|
1752
|
+
opacity: 0;
|
|
1753
|
+
}
|
|
1754
|
+
to {
|
|
1755
|
+
opacity: 1;
|
|
1756
|
+
}
|
|
1757
|
+
}
|
|
1758
|
+
/* insetLabel 内嵌标签:回填值前的标签文本,消费 tree-select label token */
|
|
1759
|
+
.cd-tree-select__inset-label {
|
|
1760
|
+
display: inline-flex;
|
|
1761
|
+
align-items: center;
|
|
1762
|
+
flex: 0 0 auto;
|
|
1763
|
+
margin-inline-end: var(--cd-spacing-tight);
|
|
1764
|
+
color: var(--cd-color-tree-select-label);
|
|
1765
|
+
font-weight: var(--cd-font-tree-select-label);
|
|
1766
|
+
white-space: nowrap;
|
|
1767
|
+
user-select: none;
|
|
1768
|
+
}
|
|
1463
1769
|
.cd-tree-select__search {
|
|
1770
|
+
padding: var(--cd-spacing-tight);
|
|
1464
1771
|
padding-block-end: var(--cd-spacing-extra-tight);
|
|
1465
|
-
|
|
1772
|
+
}
|
|
1773
|
+
/* 搜索字段:灰底圆角 + 左侧放大镜图标(对齐 Semi 的和谐观感,与列表分隔清晰)。 */
|
|
1774
|
+
.cd-tree-select__search-field {
|
|
1775
|
+
display: flex;
|
|
1776
|
+
align-items: center;
|
|
1777
|
+
gap: var(--cd-spacing-extra-tight);
|
|
1778
|
+
inline-size: 100%;
|
|
1779
|
+
block-size: var(--cd-height-input-default);
|
|
1780
|
+
padding-inline: var(--cd-spacing-input-paddingleft);
|
|
1781
|
+
background: var(--cd-color-fill-0);
|
|
1782
|
+
border: 1px solid transparent;
|
|
1783
|
+
border-radius: var(--cd-radius-input-wrapper);
|
|
1784
|
+
transition:
|
|
1785
|
+
background-color var(--cd-motion-duration-fast) var(--cd-motion-ease-standard),
|
|
1786
|
+
border-color var(--cd-motion-duration-fast) var(--cd-motion-ease-standard);
|
|
1787
|
+
}
|
|
1788
|
+
.cd-tree-select__search-field:hover {
|
|
1789
|
+
background: var(--cd-color-fill-1);
|
|
1790
|
+
}
|
|
1791
|
+
.cd-tree-select__search-field:focus-within {
|
|
1792
|
+
background: var(--cd-color-bg-0);
|
|
1793
|
+
border-color: var(--cd-color-input-default-border-focus);
|
|
1794
|
+
box-shadow: var(--cd-focus-ring);
|
|
1795
|
+
}
|
|
1796
|
+
.cd-tree-select__search-icon {
|
|
1797
|
+
flex: 0 0 auto;
|
|
1798
|
+
color: var(--cd-color-text-2);
|
|
1466
1799
|
}
|
|
1467
1800
|
.cd-tree-select__search-input {
|
|
1801
|
+
flex: 1 1 auto;
|
|
1468
1802
|
inline-size: 100%;
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1803
|
+
min-inline-size: 0;
|
|
1804
|
+
block-size: 100%;
|
|
1805
|
+
padding: 0;
|
|
1806
|
+
background: transparent;
|
|
1472
1807
|
color: inherit;
|
|
1473
|
-
border:
|
|
1474
|
-
border-radius: var(--cd-input-radius);
|
|
1808
|
+
border: none;
|
|
1475
1809
|
font: inherit;
|
|
1476
1810
|
font-size: var(--cd-font-size-small);
|
|
1477
|
-
}
|
|
1478
|
-
.cd-tree-select__search-input:focus-visible {
|
|
1479
1811
|
outline: none;
|
|
1480
|
-
|
|
1481
|
-
|
|
1812
|
+
}
|
|
1813
|
+
.cd-tree-select__search-input::placeholder {
|
|
1814
|
+
color: var(--cd-color-text-2);
|
|
1482
1815
|
}
|
|
1483
1816
|
.cd-tree-select__tree {
|
|
1484
1817
|
max-block-size: 14rem;
|
|
@@ -1496,8 +1829,8 @@
|
|
|
1496
1829
|
}
|
|
1497
1830
|
.cd-tree-select__highlight {
|
|
1498
1831
|
padding: 0;
|
|
1499
|
-
color: var(--cd-tree-
|
|
1500
|
-
background:
|
|
1832
|
+
color: var(--cd-color-tree-option-highlight-text);
|
|
1833
|
+
background: inherit;
|
|
1501
1834
|
}
|
|
1502
1835
|
.cd-tree-select__node {
|
|
1503
1836
|
display: flex;
|
|
@@ -1508,11 +1841,11 @@
|
|
|
1508
1841
|
cursor: pointer;
|
|
1509
1842
|
}
|
|
1510
1843
|
.cd-tree-select__node:hover {
|
|
1511
|
-
background: var(--cd-tree-
|
|
1844
|
+
background: var(--cd-color-tree-option-bg-hover);
|
|
1512
1845
|
}
|
|
1513
1846
|
.cd-tree-select__node--selected {
|
|
1514
|
-
color: var(--cd-tree-
|
|
1515
|
-
background: var(--cd-tree-
|
|
1847
|
+
color: var(--cd-color-tree-option-text-default);
|
|
1848
|
+
background: var(--cd-color-tree-option-bg-active);
|
|
1516
1849
|
}
|
|
1517
1850
|
/* 键盘 roving 高亮(aria-activedescendant 当前项),焦点环不依赖真实 DOM 焦点 */
|
|
1518
1851
|
.cd-tree-select__node--active {
|
|
@@ -1533,19 +1866,23 @@
|
|
|
1533
1866
|
flex: 0 0 auto;
|
|
1534
1867
|
inline-size: 1rem;
|
|
1535
1868
|
block-size: 1rem;
|
|
1536
|
-
color: var(--cd-tree-
|
|
1869
|
+
color: var(--cd-color-tree-option-icon-default);
|
|
1537
1870
|
cursor: pointer;
|
|
1538
1871
|
transition: transform var(--cd-motion-duration-fast) var(--cd-motion-ease-standard);
|
|
1872
|
+
/* IconTreeTriangleDown 默认朝下(展开态);折叠态旋转 -90deg 朝右,对齐 Semi。 */
|
|
1873
|
+
transform: rotate(-90deg);
|
|
1539
1874
|
}
|
|
1540
1875
|
.cd-tree-select__expand--open {
|
|
1541
|
-
transform: rotate(
|
|
1876
|
+
transform: rotate(0deg);
|
|
1542
1877
|
}
|
|
1543
1878
|
.cd-tree-select__expand--placeholder {
|
|
1544
1879
|
cursor: default;
|
|
1880
|
+
transform: none;
|
|
1545
1881
|
}
|
|
1546
1882
|
.cd-tree-select__expand--loading {
|
|
1547
1883
|
cursor: default;
|
|
1548
1884
|
transition: none;
|
|
1885
|
+
transform: none;
|
|
1549
1886
|
}
|
|
1550
1887
|
.cd-tree-select__spinner {
|
|
1551
1888
|
inline-size: 0.75rem;
|
|
@@ -1567,7 +1904,7 @@
|
|
|
1567
1904
|
flex: 0 0 auto;
|
|
1568
1905
|
inline-size: 0;
|
|
1569
1906
|
block-size: 1rem;
|
|
1570
|
-
color: var(--cd-tree-
|
|
1907
|
+
color: var(--cd-color-tree-option-text-default);
|
|
1571
1908
|
}
|
|
1572
1909
|
/* 有自定义图标内容时撑开尺寸(对齐 Tree 的 .cd-tree__icon) */
|
|
1573
1910
|
.cd-tree-select__icon:not(:empty) {
|
|
@@ -1585,10 +1922,10 @@
|
|
|
1585
1922
|
flex: 0 0 auto;
|
|
1586
1923
|
inline-size: 1rem;
|
|
1587
1924
|
block-size: 1rem;
|
|
1588
|
-
color:
|
|
1925
|
+
color: var(--cd-color-white);
|
|
1589
1926
|
background: var(--cd-color-bg-1, #fff);
|
|
1590
1927
|
border: 1px solid var(--cd-color-border);
|
|
1591
|
-
border-radius: var(--cd-radius-small
|
|
1928
|
+
border-radius: var(--cd-border-radius-small);
|
|
1592
1929
|
}
|
|
1593
1930
|
.cd-tree-select__checkbox--checked,
|
|
1594
1931
|
.cd-tree-select__checkbox--half {
|
|
@@ -1607,13 +1944,27 @@
|
|
|
1607
1944
|
color: var(--cd-color-text-3);
|
|
1608
1945
|
text-align: center;
|
|
1609
1946
|
}
|
|
1947
|
+
/* +N 折叠触发器:内联包裹 Tag,承载 aria-label(Popover trigger 宿主) */
|
|
1948
|
+
.cd-tree-select__rest-trigger {
|
|
1949
|
+
display: inline-flex;
|
|
1950
|
+
align-items: center;
|
|
1951
|
+
}
|
|
1952
|
+
/* showRestTagsPopover 浮层内剩余 Tag 列表:换行铺排,限制最大宽避免过宽 */
|
|
1953
|
+
.cd-tree-select__rest-tags {
|
|
1954
|
+
display: flex;
|
|
1955
|
+
flex-wrap: wrap;
|
|
1956
|
+
gap: var(--cd-spacing-extra-tight);
|
|
1957
|
+
align-items: center;
|
|
1958
|
+
max-inline-size: 240px;
|
|
1959
|
+
}
|
|
1610
1960
|
@media (prefers-reduced-motion: reduce) {
|
|
1611
1961
|
.cd-tree-select__trigger,
|
|
1612
1962
|
.cd-tree-select__arrow,
|
|
1613
1963
|
.cd-tree-select__expand {
|
|
1614
1964
|
transition: none;
|
|
1615
1965
|
}
|
|
1616
|
-
.cd-tree-select__spinner
|
|
1966
|
+
.cd-tree-select__spinner,
|
|
1967
|
+
.cd-tree-select__panel--motion {
|
|
1617
1968
|
animation: none;
|
|
1618
1969
|
}
|
|
1619
1970
|
}
|