entasis 0.10.2 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/attachments/disclosurePanel.svelte.d.ts +84 -0
- package/dist/attachments/disclosurePanel.svelte.js +277 -0
- package/dist/attachments/portal.d.ts +17 -1
- package/dist/attachments/portal.js +39 -2
- package/dist/attachments/spinnerOverlay.svelte.js +12 -0
- package/dist/attachments/transitionSize.d.ts +6 -0
- package/dist/attachments/transitionSize.js +30 -0
- package/dist/components/AIAskUserQuestion/AIAskUserQuestion.svelte +131 -17
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionFileStep.svelte +26 -6
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionFileStep.svelte.d.ts +6 -0
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionFooter.svelte +27 -53
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionFooter.svelte.d.ts +3 -4
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionHeader.svelte +19 -16
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionStep.svelte +180 -21
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionStep.svelte.d.ts +9 -1
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionSummary.svelte +56 -0
- package/dist/components/AIAskUserQuestion/AIAskUserQuestionSummary.svelte.d.ts +4 -0
- package/dist/components/AIAskUserQuestion/aiAskUserQuestion.mcp.d.ts +1 -1
- package/dist/components/AIAskUserQuestion/aiAskUserQuestion.mcp.js +26 -8
- package/dist/components/AIAskUserQuestion/aiAskUserQuestion.props.d.ts +62 -5
- package/dist/components/AIAskUserQuestion/aiAskUserQuestion.theme.d.ts +42 -0
- package/dist/components/AIAskUserQuestion/aiAskUserQuestion.theme.js +53 -12
- package/dist/components/AIAskUserQuestion/aiAskUserQuestionAnswers.d.ts +17 -1
- package/dist/components/AIAskUserQuestion/aiAskUserQuestionAnswers.js +56 -8
- package/dist/components/AIAskUserQuestion/index.d.ts +3 -1
- package/dist/components/AIAskUserQuestion/index.js +2 -0
- package/dist/components/AIAskUserQuestion/schemas.d.ts +44 -0
- package/dist/components/AIAskUserQuestion/schemas.js +10 -3
- package/dist/components/AIChat/AIChat.svelte +10 -0
- package/dist/components/AIChat/AIChat.svelte.d.ts +2 -2
- package/dist/components/AIChat/AIChatComposerSurface.svelte +23 -5
- package/dist/components/AIChat/AIChatComposerSurface.svelte.d.ts +5 -0
- package/dist/components/AIChat/AIChatSkeleton.svelte +29 -37
- package/dist/components/AIChat/AIChatSurface.svelte +30 -2
- package/dist/components/AIChat/AIChatSurface.svelte.d.ts +1 -1
- package/dist/components/AIChat/AIChatThreadSurface.svelte +11 -1
- package/dist/components/AIChat/AIChatThreadSurface.svelte.d.ts +3 -1
- package/dist/components/AIChat/aiChat.mcp.d.ts +1 -1
- package/dist/components/AIChat/aiChat.mcp.js +31 -15
- package/dist/components/AIChat/aiChat.props.d.ts +36 -10
- package/dist/components/AIChat/aiChat.theme.d.ts +9 -0
- package/dist/components/AIChat/aiChat.theme.js +21 -4
- package/dist/components/AIChat/aiChatSkeleton.props.d.ts +5 -0
- package/dist/components/AIChat/index.d.ts +1 -1
- package/dist/components/AIComposer/AIComposer.svelte +102 -5
- package/dist/components/AIComposer/AIComposer.svelte.d.ts +1 -0
- package/dist/components/AIComposer/AIComposerFooter.svelte +54 -12
- package/dist/components/AIComposer/AIComposerFooter.svelte.d.ts +2 -0
- package/dist/components/AIComposer/AIComposerQueue.svelte +8 -3
- package/dist/components/AIComposer/aiComposer.editor.theme.js +13 -2
- package/dist/components/AIComposer/aiComposer.mcp.d.ts +1 -1
- package/dist/components/AIComposer/aiComposer.mcp.js +15 -7
- package/dist/components/AIComposer/aiComposer.props.d.ts +27 -7
- package/dist/components/AIComposer/aiComposer.theme.d.ts +42 -3
- package/dist/components/AIComposer/aiComposer.theme.js +37 -5
- package/dist/components/AIComposer/aiComposerFileController.svelte.d.ts +20 -0
- package/dist/components/AIComposer/aiComposerFileController.svelte.js +75 -9
- package/dist/components/AIComposer/aiComposerSourceAdapter.js +22 -4
- package/dist/components/AIComposer/aiComposerSubmitController.svelte.d.ts +12 -0
- package/dist/components/AIComposer/aiComposerSubmitController.svelte.js +16 -6
- package/dist/components/AIContext/AIContext.svelte +7 -3
- package/dist/components/AIContext/aiContext.mcp.d.ts +1 -1
- package/dist/components/AIContext/aiContext.mcp.js +1 -1
- package/dist/components/AIContext/aiContext.props.d.ts +4 -1
- package/dist/components/AIContext/aiContext.theme.d.ts +3 -0
- package/dist/components/AIContext/aiContext.theme.js +7 -2
- package/dist/components/AIConversation/AIConversation.svelte.d.ts +2 -2
- package/dist/components/AIFilePreview/aiFilePreview.theme.js +1 -1
- package/dist/components/AIMarker/AIMarker.svelte +2 -0
- package/dist/components/AIMarker/aiMarker.mcp.d.ts +1 -1
- package/dist/components/AIMarker/aiMarker.mcp.js +2 -0
- package/dist/components/AIMarker/aiMarker.props.d.ts +3 -0
- package/dist/components/AIMarker/aiMarker.theme.js +2 -2
- package/dist/components/AIMessage/AIMessage.svelte +38 -16
- package/dist/components/AIMessage/aiMessage.mcp.d.ts +1 -1
- package/dist/components/AIMessage/aiMessage.mcp.js +20 -6
- package/dist/components/AIMessage/aiMessage.props.d.ts +18 -2
- package/dist/components/AIMessage/aiMessage.theme.d.ts +51 -6
- package/dist/components/AIMessage/aiMessage.theme.js +91 -32
- package/dist/components/AIMessageActions/AIMessageActions.svelte +19 -9
- package/dist/components/AIMessageActions/aiMessageActions.mcp.d.ts +1 -1
- package/dist/components/AIMessageActions/aiMessageActions.mcp.js +11 -3
- package/dist/components/AIMessageActions/aiMessageActions.theme.js +36 -9
- package/dist/components/AIModelSelector/AIModelSelector.svelte +25 -10
- package/dist/components/AIModelSelector/aiModelSelector.mcp.d.ts +1 -1
- package/dist/components/AIModelSelector/aiModelSelector.mcp.js +1 -1
- package/dist/components/AIModelSelector/aiModelSelector.theme.d.ts +3 -0
- package/dist/components/AIModelSelector/aiModelSelector.theme.js +7 -3
- package/dist/components/AIReasoning/AIReasoning.svelte +135 -38
- package/dist/components/AIReasoning/aiReasoning.mcp.d.ts +1 -1
- package/dist/components/AIReasoning/aiReasoning.mcp.js +11 -5
- package/dist/components/AIReasoning/aiReasoning.props.d.ts +15 -4
- package/dist/components/AIReasoning/aiReasoning.theme.d.ts +45 -0
- package/dist/components/AIReasoning/aiReasoning.theme.js +47 -7
- package/dist/components/AISuggestion/AISuggestion.svelte +2 -1
- package/dist/components/AISuggestion/AISuggestions.svelte +2 -1
- package/dist/components/AISuggestion/aiSuggestion.mcp.d.ts +1 -1
- package/dist/components/AISuggestion/aiSuggestion.mcp.js +8 -1
- package/dist/components/AISuggestion/aiSuggestion.props.d.ts +4 -1
- package/dist/components/AISuggestion/aiSuggestion.theme.js +1 -1
- package/dist/components/AISuggestion/aiSuggestions.props.d.ts +7 -0
- package/dist/components/AIThread/AIThread.svelte +378 -95
- package/dist/components/AIThread/AIThreadAskUserQuestion.svelte +1 -0
- package/dist/components/AIThread/AIThreadItems.svelte +266 -64
- package/dist/components/AIThread/AIThreadItems.svelte.d.ts +7 -3
- package/dist/components/AIThread/AIThreadMarker.svelte +8 -1
- package/dist/components/AIThread/AIThreadMarker.svelte.d.ts +1 -0
- package/dist/components/AIThread/aiThread.mcp.d.ts +1 -1
- package/dist/components/AIThread/aiThread.mcp.js +34 -20
- package/dist/components/AIThread/aiThread.props.d.ts +73 -8
- package/dist/components/AIThread/aiThread.theme.d.ts +78 -0
- package/dist/components/AIThread/aiThread.theme.js +108 -9
- package/dist/components/AIThread/index.d.ts +1 -1
- package/dist/components/AIThread/threadAskUserQuestion.d.ts +4 -1
- package/dist/components/AIThread/threadAskUserQuestion.js +8 -4
- package/dist/components/AIThread/threadRenderItems.d.ts +74 -3
- package/dist/components/AIThread/threadRenderItems.js +265 -77
- package/dist/components/AIThread/threadScrollController.d.ts +0 -8
- package/dist/components/AIThread/threadScrollController.js +2 -39
- package/dist/components/AIThread/threadTools.d.ts +11 -0
- package/dist/components/AIThread/threadTools.js +79 -0
- package/dist/components/AIThreadToc/AIThreadToc.svelte +188 -18
- package/dist/components/AIThreadToc/AIThreadTocPreview.svelte +25 -2
- package/dist/components/AIThreadToc/AIThreadTocPreview.svelte.d.ts +3 -0
- package/dist/components/AIThreadToc/aiThreadToc.d.ts +4 -2
- package/dist/components/AIThreadToc/aiThreadToc.js +17 -5
- package/dist/components/AIThreadToc/aiThreadToc.mcp.d.ts +1 -1
- package/dist/components/AIThreadToc/aiThreadToc.mcp.js +13 -3
- package/dist/components/AIThreadToc/aiThreadToc.props.d.ts +11 -0
- package/dist/components/AIThreadToc/aiThreadToc.theme.d.ts +3 -0
- package/dist/components/AIThreadToc/aiThreadToc.theme.js +15 -6
- package/dist/components/AITool/AITool.svelte +56 -21
- package/dist/components/AITool/AIToolCallList.svelte +79 -29
- package/dist/components/AITool/AIToolCallList.svelte.d.ts +6 -2
- package/dist/components/AITool/AIToolStatusMark.svelte +52 -0
- package/dist/components/AITool/AIToolStatusMark.svelte.d.ts +14 -0
- package/dist/components/AITool/AIToolValueSection.svelte +126 -28
- package/dist/components/AITool/AIToolValueSection.svelte.d.ts +6 -2
- package/dist/components/AITool/AIToolValueTree.svelte +11 -16
- package/dist/components/AITool/AIToolValueTree.svelte.d.ts +2 -3
- package/dist/components/AITool/aiTool.mcp.d.ts +1 -1
- package/dist/components/AITool/aiTool.mcp.js +36 -8
- package/dist/components/AITool/aiTool.props.d.ts +52 -6
- package/dist/components/AITool/aiTool.theme.d.ts +117 -39
- package/dist/components/AITool/aiTool.theme.js +144 -140
- package/dist/components/AITool/aiToolClock.svelte.d.ts +18 -0
- package/dist/components/AITool/aiToolClock.svelte.js +62 -0
- package/dist/components/AITool/aiToolPrimitiveThemes.d.ts +0 -2
- package/dist/components/AITool/aiToolPrimitiveThemes.js +0 -10
- package/dist/components/AITool/index.d.ts +2 -1
- package/dist/components/AITool/index.js +1 -0
- package/dist/components/AITool/toolRendering.d.ts +33 -1
- package/dist/components/AITool/toolRendering.js +179 -15
- package/dist/components/AITool/toolValueTree.d.ts +14 -1
- package/dist/components/AITool/toolValueTree.js +126 -27
- package/dist/components/Accordion/Accordion.svelte +109 -109
- package/dist/components/Accordion/Accordion.svelte.d.ts +0 -1
- package/dist/components/Accordion/AccordionPanel.svelte +64 -0
- package/dist/components/Accordion/AccordionPanel.svelte.d.ts +20 -0
- package/dist/components/Accordion/accordion.attributes.d.ts +24 -0
- package/dist/components/Accordion/accordion.attributes.js +20 -0
- package/dist/components/Accordion/accordion.mcp.d.ts +1 -1
- package/dist/components/Accordion/accordion.mcp.js +78 -22
- package/dist/components/Accordion/accordion.props.d.ts +54 -10
- package/dist/components/Accordion/accordion.theme.d.ts +3 -0
- package/dist/components/Accordion/accordion.theme.js +4 -0
- package/dist/components/Accordion/index.d.ts +1 -0
- package/dist/components/Accordion/index.js +1 -0
- package/dist/components/AudioPlayer/audioPlayerVolumeControl.slider.theme.d.ts +31 -1
- package/dist/components/Avatar/Avatar.svelte +60 -10
- package/dist/components/Avatar/AvatarGroup.svelte +9 -0
- package/dist/components/Avatar/avatar.mcp.d.ts +1 -1
- package/dist/components/Avatar/avatar.mcp.js +13 -5
- package/dist/components/Avatar/avatar.props.d.ts +28 -1
- package/dist/components/Avatar/avatar.theme.js +3 -3
- package/dist/components/Avatar/index.d.ts +1 -1
- package/dist/components/Breadcrumbs/breadcrumbs.mcp.d.ts +1 -1
- package/dist/components/Breadcrumbs/breadcrumbs.mcp.js +1 -1
- package/dist/components/Button/Button.svelte +35 -15
- package/dist/components/Button/button.mcp.d.ts +1 -1
- package/dist/components/Button/button.mcp.js +8 -4
- package/dist/components/Button/button.props.d.ts +23 -8
- package/dist/components/Button/button.theme.d.ts +12 -0
- package/dist/components/Button/button.theme.js +17 -4
- package/dist/components/ButtonGroup/buttonGroup.mcp.d.ts +1 -1
- package/dist/components/ButtonGroup/buttonGroup.mcp.js +1 -1
- package/dist/components/ButtonGroup/buttonGroup.props.d.ts +4 -1
- package/dist/components/Collapsible/Collapsible.svelte +125 -19
- package/dist/components/Collapsible/collapsible.attributes.d.ts +21 -0
- package/dist/components/Collapsible/collapsible.attributes.js +17 -0
- package/dist/components/Collapsible/collapsible.mcp.d.ts +1 -1
- package/dist/components/Collapsible/collapsible.mcp.js +62 -12
- package/dist/components/Collapsible/collapsible.props.d.ts +39 -8
- package/dist/components/Collapsible/collapsible.theme.js +3 -1
- package/dist/components/Collapsible/index.d.ts +1 -0
- package/dist/components/Collapsible/index.js +1 -0
- package/dist/components/Command/Command.svelte +56 -14
- package/dist/components/Command/command.mcp.d.ts +1 -1
- package/dist/components/Command/command.mcp.js +12 -6
- package/dist/components/Command/command.props.d.ts +39 -6
- package/dist/components/Command/command.state.svelte.d.ts +40 -11
- package/dist/components/Command/command.state.svelte.js +75 -28
- package/dist/components/Command/command.theme.js +4 -3
- package/dist/components/Confirmation/Confirmation.svelte +72 -31
- package/dist/components/Confirmation/confirmation.mcp.d.ts +1 -1
- package/dist/components/Confirmation/confirmation.mcp.js +5 -4
- package/dist/components/ContextMenu/ContextMenu.svelte +126 -16
- package/dist/components/ContextMenu/contextMenu.mcp.d.ts +1 -1
- package/dist/components/ContextMenu/contextMenu.mcp.js +10 -7
- package/dist/components/ContextMenu/contextMenu.props.d.ts +13 -4
- package/dist/components/ContextMenu/contextMenu.theme.d.ts +3 -3
- package/dist/components/ContextMenu/contextMenu.theme.js +3 -2
- package/dist/components/DataTable/DataTable.svelte +4 -9
- package/dist/components/DataTable/DataTableEditor.svelte +5 -0
- package/dist/components/DataTable/DataTableFilter.svelte +1 -0
- package/dist/components/DataTable/DataTableToolbar.svelte +1 -0
- package/dist/components/DataTable/dataTable.mcp.d.ts +1 -1
- package/dist/components/DataTable/dataTable.mcp.js +4 -2
- package/dist/components/DataTable/dataTable.theme.d.ts +0 -3
- package/dist/components/DataTable/dataTable.theme.js +9 -6
- package/dist/components/Dialog/Dialog.svelte +120 -35
- package/dist/components/Dialog/Dialog.svelte.d.ts +1 -1
- package/dist/components/Dialog/DialogBackdrop.svelte +21 -1
- package/dist/components/Dialog/dialog.api.d.ts +65 -0
- package/dist/components/Dialog/dialog.api.js +1 -0
- package/dist/components/Dialog/dialog.attributes.d.ts +23 -0
- package/dist/components/Dialog/dialog.attributes.js +19 -0
- package/dist/components/Dialog/dialog.indent.d.ts +6 -0
- package/dist/components/Dialog/dialog.indent.js +16 -0
- package/dist/components/Dialog/dialog.mcp.d.ts +1 -1
- package/dist/components/Dialog/dialog.mcp.js +195 -22
- package/dist/components/Dialog/dialog.props.d.ts +102 -19
- package/dist/components/Dialog/dialog.snap.d.ts +40 -0
- package/dist/components/Dialog/dialog.snap.js +78 -0
- package/dist/components/Dialog/dialog.state.svelte.d.ts +122 -10
- package/dist/components/Dialog/dialog.state.svelte.js +525 -66
- package/dist/components/Dialog/dialog.theme.d.ts +48 -0
- package/dist/components/Dialog/dialog.theme.js +32 -9
- package/dist/components/Dialog/index.d.ts +4 -1
- package/dist/components/Dialog/index.js +1 -0
- package/dist/components/DocumentViewer/DocumentSearchControl.svelte +5 -3
- package/dist/components/DocumentViewer/documentOutput.js +2 -1
- package/dist/components/FloatingWindow/FloatingWindow.svelte +20 -32
- package/dist/components/FloatingWindow/FloatingWindow.svelte.d.ts +1 -1
- package/dist/components/FloatingWindow/floatingWindow.mcp.d.ts +1 -1
- package/dist/components/FloatingWindow/floatingWindow.mcp.js +3 -3
- package/dist/components/FloatingWindow/floatingWindow.props.d.ts +9 -4
- package/dist/components/FloatingWindow/floatingWindow.state.svelte.d.ts +8 -2
- package/dist/components/FloatingWindow/floatingWindow.state.svelte.js +18 -7
- package/dist/components/Form/Ask/Ask.svelte +9 -13
- package/dist/components/Form/Ask/ask.mcp.d.ts +1 -1
- package/dist/components/Form/Ask/ask.mcp.js +1 -1
- package/dist/components/Form/Ask/ask.props.d.ts +1 -1
- package/dist/components/Form/Autocomplete/Autocomplete.svelte +418 -0
- package/dist/components/Form/Autocomplete/Autocomplete.svelte.d.ts +4 -0
- package/dist/components/Form/Autocomplete/autocomplete.items.d.ts +30 -0
- package/dist/components/Form/Autocomplete/autocomplete.items.js +64 -0
- package/dist/components/Form/Autocomplete/autocomplete.mcp.d.ts +1 -0
- package/dist/components/Form/Autocomplete/autocomplete.mcp.js +134 -0
- package/dist/components/Form/Autocomplete/autocomplete.props.d.ts +146 -0
- package/dist/components/Form/Autocomplete/autocomplete.props.js +1 -0
- package/dist/components/Form/Autocomplete/autocomplete.theme.d.ts +213 -0
- package/dist/components/Form/Autocomplete/autocomplete.theme.js +119 -0
- package/dist/components/Form/Autocomplete/index.d.ts +3 -0
- package/dist/components/Form/Autocomplete/index.js +2 -0
- package/dist/components/Form/Calendar/CalendarInput.svelte +9 -0
- package/dist/components/Form/Calendar/CalendarMonthYearPicker.svelte +3 -0
- package/dist/components/Form/Calendar/CalendarPrimitive.svelte +5 -0
- package/dist/components/Form/Calendar/calendar.mcp.d.ts +1 -1
- package/dist/components/Form/Calendar/calendar.mcp.js +2 -1
- package/dist/components/Form/Calendar/calendarInput.props.d.ts +2 -0
- package/dist/components/Form/Calendar/useCalendar.svelte.d.ts +3 -0
- package/dist/components/Form/Calendar/useCalendar.svelte.js +3 -0
- package/dist/components/Form/Checkbox/Checkbox.svelte +17 -2
- package/dist/components/Form/Checkbox/checkbox.mcp.d.ts +1 -1
- package/dist/components/Form/Checkbox/checkbox.mcp.js +11 -1
- package/dist/components/Form/Checkbox/checkbox.props.d.ts +12 -1
- package/dist/components/Form/CheckboxesInput/CheckboxLine.svelte +69 -32
- package/dist/components/Form/CheckboxesInput/CheckboxLine.svelte.d.ts +10 -2
- package/dist/components/Form/CheckboxesInput/CheckboxesInput.svelte +123 -74
- package/dist/components/Form/CheckboxesInput/CheckboxesInput.svelte.d.ts +12 -12
- package/dist/components/Form/CheckboxesInput/checkboxesInput.mcp.d.ts +1 -1
- package/dist/components/Form/CheckboxesInput/checkboxesInput.mcp.js +11 -7
- package/dist/components/Form/CheckboxesInput/checkboxesInput.props.d.ts +25 -9
- package/dist/components/Form/CheckboxesInput/checkboxesInput.theme.d.ts +12 -0
- package/dist/components/Form/CheckboxesInput/checkboxesInput.theme.js +9 -4
- package/dist/components/Form/CheckboxesInput/choiceEnter.d.ts +11 -0
- package/dist/components/Form/CheckboxesInput/choiceEnter.js +27 -0
- package/dist/components/Form/ColorInput/ColorInput.svelte +12 -3
- package/dist/components/Form/ColorInput/colorInput.mcp.d.ts +1 -1
- package/dist/components/Form/ColorInput/colorInput.mcp.js +1 -0
- package/dist/components/Form/ColorPicker/ColorPicker.svelte +11 -2
- package/dist/components/Form/ColorPicker/ColorPickerInput.svelte +9 -0
- package/dist/components/Form/ColorPicker/colorPicker.mcp.d.ts +1 -1
- package/dist/components/Form/ColorPicker/colorPicker.mcp.js +1 -0
- package/dist/components/Form/ColorPicker/colorPicker.props.d.ts +2 -0
- package/dist/components/Form/ColorPicker/colorPicker.state.svelte.d.ts +4 -0
- package/dist/components/Form/ColorPicker/colorPicker.state.svelte.js +12 -8
- package/dist/components/Form/Combobox/Combobox.svelte +145 -185
- package/dist/components/Form/Combobox/Combobox.svelte.d.ts +1 -1
- package/dist/components/Form/Combobox/ComboboxPopup.svelte +128 -0
- package/dist/components/Form/Combobox/ComboboxPopup.svelte.d.ts +28 -0
- package/dist/components/Form/Combobox/combobox.attributes.d.ts +34 -0
- package/dist/components/Form/Combobox/combobox.attributes.js +25 -0
- package/dist/components/Form/Combobox/combobox.items.d.ts +28 -0
- package/dist/components/Form/Combobox/combobox.items.js +68 -0
- package/dist/components/Form/Combobox/combobox.mcp.d.ts +1 -1
- package/dist/components/Form/Combobox/combobox.mcp.js +104 -13
- package/dist/components/Form/Combobox/combobox.props.d.ts +113 -19
- package/dist/components/Form/Combobox/combobox.state.svelte.d.ts +137 -0
- package/dist/components/Form/Combobox/combobox.state.svelte.js +375 -0
- package/dist/components/Form/Combobox/combobox.theme.d.ts +63 -0
- package/dist/components/Form/Combobox/combobox.theme.js +37 -1
- package/dist/components/Form/Combobox/index.d.ts +2 -1
- package/dist/components/Form/Combobox/index.js +1 -0
- package/dist/components/Form/DateInput/DateInput.svelte +11 -3
- package/dist/components/Form/DateInput/dateInput.mcp.d.ts +1 -1
- package/dist/components/Form/DateInput/dateInput.mcp.js +5 -0
- package/dist/components/Form/DateSelector/DateSelector.svelte +5 -2
- package/dist/components/Form/DateSelector/DateSelectorInput.svelte +9 -0
- package/dist/components/Form/DateSelector/dateSelector.mcp.d.ts +1 -1
- package/dist/components/Form/DateSelector/dateSelector.mcp.js +2 -2
- package/dist/components/Form/DateSelector/dateSelector.props.d.ts +2 -0
- package/dist/components/Form/Field/Field.svelte +258 -32
- package/dist/components/Form/Field/Field.svelte.d.ts +15 -6
- package/dist/components/Form/Field/FieldGroup.svelte +29 -0
- package/dist/components/Form/Field/FieldGroup.svelte.d.ts +11 -0
- package/dist/components/Form/Field/FieldHiddenInputs.svelte +187 -0
- package/dist/components/Form/Field/FieldHiddenInputs.svelte.d.ts +26 -0
- package/dist/components/Form/Field/field.d.ts +75 -10
- package/dist/components/Form/Field/field.mcp.d.ts +1 -1
- package/dist/components/Form/Field/field.mcp.js +158 -18
- package/dist/components/Form/Field/field.messages.d.ts +47 -0
- package/dist/components/Form/Field/field.messages.js +64 -0
- package/dist/components/Form/Field/field.state.svelte.d.ts +117 -40
- package/dist/components/Form/Field/field.state.svelte.js +525 -16
- package/dist/components/Form/Field/field.theme.d.ts +46 -0
- package/dist/components/Form/Field/field.theme.js +33 -0
- package/dist/components/Form/Field/fieldHiddenInputs.props.d.ts +61 -0
- package/dist/components/Form/Field/fieldHiddenInputs.props.js +1 -0
- package/dist/components/Form/Field/fieldNativeForm.svelte.d.ts +14 -0
- package/dist/components/Form/Field/fieldNativeForm.svelte.js +113 -0
- package/dist/components/Form/Field/index.d.ts +5 -2
- package/dist/components/Form/Field/index.js +1 -0
- package/dist/components/Form/Field/schemas.js +7 -2
- package/dist/components/Form/File/FileInput.svelte +24 -3
- package/dist/components/Form/File/fileInput.mcp.d.ts +1 -1
- package/dist/components/Form/File/fileInput.mcp.js +1 -0
- package/dist/components/Form/Form/Form.svelte +49 -15
- package/dist/components/Form/Form/FormActions.svelte +3 -1
- package/dist/components/Form/Form/FormActions.svelte.d.ts +42 -2
- package/dist/components/Form/Form/FormFieldRenderer.svelte +96 -12
- package/dist/components/Form/Form/FormFieldRenderer.svelte.d.ts +3 -2
- package/dist/components/Form/Form/FormInputRenderer.svelte +7 -0
- package/dist/components/Form/Form/form.d.ts +84 -11
- package/dist/components/Form/Form/form.mcp.d.ts +1 -1
- package/dist/components/Form/Form/form.mcp.js +178 -12
- package/dist/components/Form/Form/form.props.d.ts +32 -1
- package/dist/components/Form/Form/form.registry.d.ts +28 -0
- package/dist/components/Form/Form/form.registry.js +59 -0
- package/dist/components/Form/Form/form.state.svelte.d.ts +1186 -420
- package/dist/components/Form/Form/form.state.svelte.js +322 -28
- package/dist/components/Form/Form/index.d.ts +4 -1
- package/dist/components/Form/Form/index.js +1 -0
- package/dist/components/Form/Form/visibility.d.ts +3130 -1863
- package/dist/components/Form/KeyValueInput/KeyValueInput.svelte +22 -10
- package/dist/components/Form/KeyValueInput/keyValueInput.mcp.d.ts +1 -1
- package/dist/components/Form/KeyValueInput/keyValueInput.mcp.js +1 -0
- package/dist/components/Form/MultiStepForm/MultiStepForm.svelte +12 -5
- package/dist/components/Form/MultiStepForm/multiStepForm.mcp.d.ts +1 -1
- package/dist/components/Form/MultiStepForm/multiStepForm.mcp.js +5 -3
- package/dist/components/Form/MultiStepForm/multiStepForm.props.d.ts +5 -0
- package/dist/components/Form/MultiStepForm/multiStepForm.state.svelte.d.ts +1050 -408
- package/dist/components/Form/MultiStepForm/multiStepForm.state.svelte.js +48 -24
- package/dist/components/Form/NumberInput/NumberInput.svelte +365 -46
- package/dist/components/Form/NumberInput/index.d.ts +1 -1
- package/dist/components/Form/NumberInput/numberInput.mcp.d.ts +1 -1
- package/dist/components/Form/NumberInput/numberInput.mcp.js +55 -30
- package/dist/components/Form/NumberInput/numberInput.props.d.ts +64 -4
- package/dist/components/Form/PasswordInput/Password.svelte +28 -1
- package/dist/components/Form/PasswordInput/index.d.ts +1 -1
- package/dist/components/Form/PasswordInput/passwordInput.mcp.d.ts +1 -1
- package/dist/components/Form/PasswordInput/passwordInput.mcp.js +20 -2
- package/dist/components/Form/PasswordInput/passwordInput.props.d.ts +23 -0
- package/dist/components/Form/PhoneInput/PhoneInput.svelte +11 -4
- package/dist/components/Form/PhoneInput/PhoneInputCountryPicker.svelte +47 -21
- package/dist/components/Form/PhoneInput/phoneInput-cdn.js +2 -1
- package/dist/components/Form/PhoneInput/phoneInput.mcp.d.ts +1 -1
- package/dist/components/Form/PhoneInput/phoneInput.mcp.js +6 -2
- package/dist/components/Form/PhoneInput/phoneInputCountry.d.ts +9 -3
- package/dist/components/Form/PhoneInput/phoneInputCountry.js +34 -24
- package/dist/components/Form/PinInput/PinInput.svelte +44 -9
- package/dist/components/Form/PinInput/PinInputCells.svelte +22 -1
- package/dist/components/Form/PinInput/PinInputCells.svelte.d.ts +1 -0
- package/dist/components/Form/PinInput/index.d.ts +1 -1
- package/dist/components/Form/PinInput/pinInput.mcp.d.ts +1 -1
- package/dist/components/Form/PinInput/pinInput.mcp.js +29 -6
- package/dist/components/Form/PinInput/pinInput.props.d.ts +38 -4
- package/dist/components/Form/PinInput/pinInput.state.svelte.d.ts +41 -0
- package/dist/components/Form/PinInput/pinInput.state.svelte.js +227 -24
- package/dist/components/Form/PinInput/pinInput.theme.d.ts +39 -3
- package/dist/components/Form/PinInput/pinInput.theme.js +27 -1
- package/dist/components/Form/RadioInput/RadioInput.svelte +94 -32
- package/dist/components/Form/RadioInput/RadioInput.svelte.d.ts +12 -12
- package/dist/components/Form/RadioInput/radioInput.mcp.d.ts +1 -1
- package/dist/components/Form/RadioInput/radioInput.mcp.js +12 -9
- package/dist/components/Form/RadioInput/radioInput.props.d.ts +22 -6
- package/dist/components/Form/RadioInput/radioInput.theme.d.ts +12 -0
- package/dist/components/Form/RadioInput/radioInput.theme.js +10 -5
- package/dist/components/Form/RatingInput/RatingInput.svelte +13 -4
- package/dist/components/Form/RatingInput/ratingInput.mcp.d.ts +1 -1
- package/dist/components/Form/RatingInput/ratingInput.mcp.js +3 -3
- package/dist/components/Form/RatingInput/ratingInput.props.d.ts +1 -1
- package/dist/components/Form/Select/Select.svelte +186 -48
- package/dist/components/Form/Select/Select.svelte.d.ts +23 -2
- package/dist/components/Form/Select/SelectOptionRow.svelte +69 -0
- package/dist/components/Form/Select/SelectOptionRow.svelte.d.ts +18 -0
- package/dist/components/Form/Select/index.d.ts +2 -1
- package/dist/components/Form/Select/index.js +1 -0
- package/dist/components/Form/Select/select.align.d.ts +5 -0
- package/dist/components/Form/Select/select.align.js +19 -5
- package/dist/components/Form/Select/select.attributes.d.ts +36 -0
- package/dist/components/Form/Select/select.attributes.js +27 -0
- package/dist/components/Form/Select/select.mcp.d.ts +1 -1
- package/dist/components/Form/Select/select.mcp.js +103 -18
- package/dist/components/Form/Select/select.props.d.ts +87 -10
- package/dist/components/Form/Select/select.state.svelte.d.ts +108 -17
- package/dist/components/Form/Select/select.state.svelte.js +354 -59
- package/dist/components/Form/Select/select.theme.d.ts +21 -0
- package/dist/components/Form/Select/select.theme.js +22 -0
- package/dist/components/Form/Slider/Slider.svelte +54 -14
- package/dist/components/Form/Slider/SliderMarks.svelte +1 -1
- package/dist/components/Form/Slider/SliderThumb.svelte +49 -19
- package/dist/components/Form/Slider/SliderThumb.svelte.d.ts +8 -2
- package/dist/components/Form/Slider/SliderTrack.svelte +33 -12
- package/dist/components/Form/Slider/SliderTrack.svelte.d.ts +6 -2
- package/dist/components/Form/Slider/index.d.ts +1 -1
- package/dist/components/Form/Slider/slider.mcp.d.ts +1 -1
- package/dist/components/Form/Slider/slider.mcp.js +55 -11
- package/dist/components/Form/Slider/slider.props.d.ts +35 -2
- package/dist/components/Form/Slider/slider.state.svelte.d.ts +66 -5
- package/dist/components/Form/Slider/slider.state.svelte.js +273 -49
- package/dist/components/Form/Slider/slider.theme.d.ts +36 -0
- package/dist/components/Form/Slider/slider.theme.js +35 -17
- package/dist/components/Form/Switch/Switch.svelte +61 -38
- package/dist/components/Form/Switch/switch.mcp.d.ts +1 -1
- package/dist/components/Form/Switch/switch.mcp.js +25 -5
- package/dist/components/Form/Switch/switch.props.d.ts +14 -1
- package/dist/components/Form/Switch/switch.theme.d.ts +12 -0
- package/dist/components/Form/Switch/switch.theme.js +8 -3
- package/dist/components/Form/TagGroup/TagGroup.svelte +8 -0
- package/dist/components/Form/TagGroup/tagGroup.mcp.d.ts +1 -1
- package/dist/components/Form/TagGroup/tagGroup.mcp.js +1 -0
- package/dist/components/Form/TagsInput/TagsInput.svelte +277 -275
- package/dist/components/Form/TagsInput/TagsInput.svelte.d.ts +1 -1
- package/dist/components/Form/TagsInput/tagsInput.mcp.d.ts +1 -1
- package/dist/components/Form/TagsInput/tagsInput.mcp.js +31 -11
- package/dist/components/Form/TagsInput/tagsInput.props.d.ts +6 -26
- package/dist/components/Form/TagsInput/tagsInput.theme.d.ts +63 -0
- package/dist/components/Form/TagsInput/tagsInput.theme.js +37 -1
- package/dist/components/Form/TextArea/TextArea.svelte +8 -0
- package/dist/components/Form/TextArea/textArea.mcp.d.ts +1 -1
- package/dist/components/Form/TextArea/textArea.mcp.js +1 -0
- package/dist/components/Form/TextInput/TextInput.svelte +8 -1
- package/dist/components/Form/TextInput/textInput.mcp.d.ts +1 -1
- package/dist/components/Form/TextInput/textInput.mcp.js +5 -0
- package/dist/components/Form/TimeInput/TimeInput.svelte +9 -1
- package/dist/components/Form/TimeInput/timeInput.mcp.d.ts +1 -1
- package/dist/components/Form/TimeInput/timeInput.mcp.js +31 -0
- package/dist/components/Form/VoiceInput/VoiceInput.svelte +10 -2
- package/dist/components/Form/VoiceInput/voiceInput.mcp.d.ts +1 -1
- package/dist/components/Form/VoiceInput/voiceInput.mcp.js +1 -0
- package/dist/components/GanttChart/GanttDependencyControl.svelte +4 -4
- package/dist/components/HoverCard/HoverCard.svelte +100 -10
- package/dist/components/HoverCard/hoverCard.attributes.d.ts +33 -0
- package/dist/components/HoverCard/hoverCard.attributes.js +24 -0
- package/dist/components/HoverCard/hoverCard.mcp.d.ts +1 -1
- package/dist/components/HoverCard/hoverCard.mcp.js +61 -2
- package/dist/components/HoverCard/hoverCard.props.d.ts +19 -0
- package/dist/components/HoverCard/hoverCard.theme.d.ts +12 -0
- package/dist/components/HoverCard/hoverCard.theme.js +9 -2
- package/dist/components/HoverCard/index.d.ts +1 -0
- package/dist/components/HoverCard/index.js +1 -0
- package/dist/components/ImageGallery/imageGallery.state.svelte.d.ts +1 -1
- package/dist/components/ImageZoom/imageZoom.lightbox.js +40 -6
- package/dist/components/ImageZoom/imageZoom.mcp.d.ts +1 -1
- package/dist/components/ImageZoom/imageZoom.mcp.js +3 -3
- package/dist/components/ImageZoom/imageZoom.props.d.ts +10 -4
- package/dist/components/ImageZoom/imageZoom.state.svelte.d.ts +16 -4
- package/dist/components/ImageZoom/imageZoom.state.svelte.js +38 -9
- package/dist/components/Kanban/kanban.theme.js +7 -3
- package/dist/components/Layout/layoutSpacing.d.ts +2 -2
- package/dist/components/LinkPreview/LinkPreview.svelte +7 -1
- package/dist/components/LinkPreview/linkPreview.mcp.d.ts +1 -1
- package/dist/components/LinkPreview/linkPreview.mcp.js +4 -1
- package/dist/components/LinkPreview/linkPreview.props.d.ts +15 -0
- package/dist/components/LinkPreview/linkPreview.theme.d.ts +12 -0
- package/dist/components/LinkPreview/linkPreview.theme.js +9 -2
- package/dist/components/Map/maplibre-cdn.js +3 -2
- package/dist/components/Markdown/markdown.mcp.d.ts +1 -1
- package/dist/components/Markdown/markdown.mcp.js +2 -1
- package/dist/components/Markdown/markdown.theme.js +18 -9
- package/dist/components/MediaVolume/MediaVolumeControl.svelte +4 -3
- package/dist/components/Menu/Menu.svelte +3 -3
- package/dist/components/Menu/Menu.svelte.d.ts +1 -1
- package/dist/components/Menu/MenuCheckboxItem.svelte +87 -0
- package/dist/components/Menu/MenuCheckboxItem.svelte.d.ts +16 -0
- package/dist/components/Menu/MenuFloating.svelte +421 -74
- package/dist/components/Menu/MenuFloating.svelte.d.ts +1 -1
- package/dist/components/Menu/MenuMirroredIcon.svelte +9 -0
- package/dist/components/Menu/MenuMirroredIcon.svelte.d.ts +7 -0
- package/dist/components/Menu/MenuRadioGroup.svelte +102 -0
- package/dist/components/Menu/MenuRadioGroup.svelte.d.ts +18 -0
- package/dist/components/Menu/MenuSearchField.svelte +54 -0
- package/dist/components/Menu/MenuSearchField.svelte.d.ts +20 -0
- package/dist/components/Menu/MenuStacked.svelte +404 -158
- package/dist/components/Menu/MenuStacked.svelte.d.ts +1 -1
- package/dist/components/Menu/MenuStackedBackHeader.svelte +6 -1
- package/dist/components/Menu/index.d.ts +2 -1
- package/dist/components/Menu/index.js +1 -0
- package/dist/components/Menu/menu.attributes.d.ts +37 -0
- package/dist/components/Menu/menu.attributes.js +28 -0
- package/dist/components/Menu/menu.filter.svelte.d.ts +52 -0
- package/dist/components/Menu/menu.filter.svelte.js +143 -0
- package/dist/components/Menu/menu.mcp.d.ts +1 -1
- package/dist/components/Menu/menu.mcp.js +227 -17
- package/dist/components/Menu/menu.platform.d.ts +5 -0
- package/dist/components/Menu/menu.platform.js +11 -0
- package/dist/components/Menu/menu.props.d.ts +172 -9
- package/dist/components/Menu/menu.theme.d.ts +147 -0
- package/dist/components/Menu/menu.theme.js +101 -0
- package/dist/components/Menu/menuTree.d.ts +35 -1
- package/dist/components/Menu/menuTree.js +158 -1
- package/dist/components/MenuBar/menuBar.mcp.d.ts +1 -1
- package/dist/components/MenuBar/menuBar.mcp.js +4 -2
- package/dist/components/MenuBar/menuBar.state.svelte.js +28 -10
- package/dist/components/MenuOption/MenuOption.svelte +5 -1
- package/dist/components/MenuOption/menuOption.mcp.d.ts +1 -1
- package/dist/components/MenuOption/menuOption.mcp.js +8 -0
- package/dist/components/MenuOption/menuOption.props.d.ts +12 -0
- package/dist/components/MenuOption/menuOption.theme.d.ts +18 -0
- package/dist/components/MenuOption/menuOption.theme.js +24 -4
- package/dist/components/Mermaid/mermaid.mcp.d.ts +1 -1
- package/dist/components/Mermaid/mermaid.mcp.js +8 -8
- package/dist/components/Mermaid/mermaid.props.d.ts +3 -4
- package/dist/components/Mermaid/mermaid.state.svelte.d.ts +20 -19
- package/dist/components/Mermaid/mermaid.state.svelte.js +80 -243
- package/dist/components/Mermaid/mermaid.theme.js +26 -1
- package/dist/components/MetadataList/MetadataList.svelte.d.ts +1 -1
- package/dist/components/Meter/Meter.svelte +110 -24
- package/dist/components/Meter/Meter.svelte.d.ts +12 -12
- package/dist/components/Meter/meter.mcp.d.ts +1 -1
- package/dist/components/Meter/meter.mcp.js +23 -37
- package/dist/components/Meter/meter.props.d.ts +36 -44
- package/dist/components/NavigationMenu/NavigationMenu.svelte +181 -0
- package/dist/components/NavigationMenu/NavigationMenu.svelte.d.ts +25 -0
- package/dist/components/NavigationMenu/NavigationMenuContent.svelte +141 -0
- package/dist/components/NavigationMenu/NavigationMenuContent.svelte.d.ts +13 -0
- package/dist/components/NavigationMenu/NavigationMenuTrigger.svelte +75 -0
- package/dist/components/NavigationMenu/NavigationMenuTrigger.svelte.d.ts +13 -0
- package/dist/components/NavigationMenu/index.d.ts +4 -0
- package/dist/components/NavigationMenu/index.js +3 -0
- package/dist/components/NavigationMenu/navigationMenu.attributes.d.ts +24 -0
- package/dist/components/NavigationMenu/navigationMenu.attributes.js +21 -0
- package/dist/components/NavigationMenu/navigationMenu.mcp.d.ts +1 -0
- package/dist/components/NavigationMenu/navigationMenu.mcp.js +138 -0
- package/dist/components/NavigationMenu/navigationMenu.props.d.ts +129 -0
- package/dist/components/NavigationMenu/navigationMenu.props.js +1 -0
- package/dist/components/NavigationMenu/navigationMenu.state.svelte.d.ts +163 -0
- package/dist/components/NavigationMenu/navigationMenu.state.svelte.js +721 -0
- package/dist/components/NavigationMenu/navigationMenu.theme.d.ts +326 -0
- package/dist/components/NavigationMenu/navigationMenu.theme.js +239 -0
- package/dist/components/Overlay/Overlay.svelte +19 -30
- package/dist/components/Overlay/index.d.ts +1 -0
- package/dist/components/Overlay/index.js +1 -0
- package/dist/components/Overlay/overlay.attributes.d.ts +16 -0
- package/dist/components/Overlay/overlay.attributes.js +14 -0
- package/dist/components/Overlay/overlay.mcp.d.ts +1 -1
- package/dist/components/Overlay/overlay.mcp.js +21 -3
- package/dist/components/Overlay/overlay.props.d.ts +8 -4
- package/dist/components/Popover/Popover.svelte +163 -52
- package/dist/components/Popover/Popover.svelte.d.ts +23 -2
- package/dist/components/Popover/PopoverSession.svelte +12 -0
- package/dist/components/Popover/PopoverSession.svelte.d.ts +7 -0
- package/dist/components/Popover/index.d.ts +10 -2
- package/dist/components/Popover/index.js +4 -1
- package/dist/components/Popover/popover.api.d.ts +83 -0
- package/dist/components/Popover/popover.api.js +1 -0
- package/dist/components/Popover/popover.attributes.d.ts +32 -0
- package/dist/components/Popover/popover.attributes.js +28 -0
- package/dist/components/Popover/popover.claims.d.ts +19 -0
- package/dist/components/Popover/popover.claims.js +45 -0
- package/dist/components/Popover/popover.mcp.d.ts +1 -1
- package/dist/components/Popover/popover.mcp.js +163 -31
- package/dist/components/Popover/popover.position.d.ts +226 -0
- package/dist/components/Popover/popover.position.js +402 -0
- package/dist/components/Popover/popover.props.d.ts +179 -24
- package/dist/components/Popover/popover.state.svelte.d.ts +169 -37
- package/dist/components/Popover/popover.state.svelte.js +1034 -194
- package/dist/components/Popover/popover.theme.d.ts +15 -0
- package/dist/components/Popover/popover.theme.js +27 -2
- package/dist/components/PopupMenu/PopupMenu.svelte +193 -22
- package/dist/components/PopupMenu/PopupMenu.svelte.d.ts +2 -2
- package/dist/components/PopupMenu/popupMenu.context.d.ts +42 -0
- package/dist/components/PopupMenu/popupMenu.context.js +52 -0
- package/dist/components/PopupMenu/popupMenu.mcp.d.ts +1 -1
- package/dist/components/PopupMenu/popupMenu.mcp.js +46 -6
- package/dist/components/PopupMenu/popupMenu.props.d.ts +29 -2
- package/dist/components/Progress/Progress.svelte +160 -0
- package/dist/components/Progress/Progress.svelte.d.ts +4 -0
- package/dist/components/Progress/index.d.ts +3 -0
- package/dist/components/Progress/index.js +2 -0
- package/dist/components/Progress/progress.mcp.d.ts +1 -0
- package/dist/components/Progress/progress.mcp.js +101 -0
- package/dist/components/Progress/progress.props.d.ts +79 -0
- package/dist/components/Progress/progress.props.js +1 -0
- package/dist/components/Progress/progress.theme.d.ts +129 -0
- package/dist/components/Progress/progress.theme.js +83 -0
- package/dist/components/ProgressCircle/ProgressCircle.svelte +51 -6
- package/dist/components/ProgressCircle/progressCircle.mcp.d.ts +1 -1
- package/dist/components/ProgressCircle/progressCircle.mcp.js +18 -4
- package/dist/components/ProgressCircle/progressCircle.props.d.ts +32 -2
- package/dist/components/ProgressCircle/progressCircle.theme.d.ts +15 -3
- package/dist/components/ProgressCircle/progressCircle.theme.js +7 -2
- package/dist/components/RichTextInput/RichTextInput.svelte +19 -1
- package/dist/components/RichTextInput/RichTextInputChrome.svelte +5 -1
- package/dist/components/RichTextInput/RichTextInputChrome.svelte.d.ts +2 -0
- package/dist/components/RichTextInput/RichTextInputViewport.svelte +3 -1
- package/dist/components/RichTextInput/RichTextInputViewport.svelte.d.ts +1 -0
- package/dist/components/RichTextInput/richTextInput.mcp.d.ts +1 -1
- package/dist/components/RichTextInput/richTextInput.mcp.js +1 -0
- package/dist/components/RichTextInput/suggestions.js +2 -0
- package/dist/components/ScrollArea/ScrollArea.svelte +166 -27
- package/dist/components/ScrollArea/index.d.ts +2 -1
- package/dist/components/ScrollArea/index.js +1 -0
- package/dist/components/ScrollArea/scrollArea.attributes.d.ts +25 -0
- package/dist/components/ScrollArea/scrollArea.attributes.js +21 -0
- package/dist/components/ScrollArea/scrollArea.mcp.d.ts +1 -1
- package/dist/components/ScrollArea/scrollArea.mcp.js +47 -3
- package/dist/components/ScrollArea/scrollArea.props.d.ts +33 -6
- package/dist/components/ScrollArea/scrollArea.svelte.d.ts +56 -12
- package/dist/components/ScrollArea/scrollArea.svelte.js +281 -71
- package/dist/components/ScrollArea/scrollArea.theme.js +5 -2
- package/dist/components/SegmentedControl/SegmentedControl.svelte +4 -3
- package/dist/components/SegmentedControl/segmentedControl.mcp.d.ts +1 -1
- package/dist/components/SegmentedControl/segmentedControl.mcp.js +3 -2
- package/dist/components/SelectionMenu/SelectionMenu.svelte +4 -2
- package/dist/components/Sidebar/SidebarAction.svelte +13 -3
- package/dist/components/Sidebar/SidebarAction.svelte.d.ts +2 -1
- package/dist/components/Sidebar/SidebarActivityBar.svelte +14 -7
- package/dist/components/Sidebar/SidebarFlyout.svelte +97 -0
- package/dist/components/Sidebar/SidebarFlyout.svelte.d.ts +32 -0
- package/dist/components/Sidebar/SidebarGroup.svelte +39 -15
- package/dist/components/Sidebar/SidebarMenuButton.svelte +6 -3
- package/dist/components/Sidebar/SidebarMenuItem.svelte +134 -31
- package/dist/components/Sidebar/SidebarMenuSubItem.svelte +30 -14
- package/dist/components/Sidebar/SidebarTreeNode.svelte +41 -61
- package/dist/components/Sidebar/index.d.ts +1 -0
- package/dist/components/Sidebar/index.js +1 -0
- package/dist/components/Sidebar/sidebar-position.d.ts +37 -2
- package/dist/components/Sidebar/sidebar-position.js +31 -2
- package/dist/components/Sidebar/sidebar.attributes.d.ts +33 -0
- package/dist/components/Sidebar/sidebar.attributes.js +29 -0
- package/dist/components/Sidebar/sidebar.mcp.d.ts +1 -1
- package/dist/components/Sidebar/sidebar.mcp.js +45 -10
- package/dist/components/Sidebar/sidebar.props.d.ts +28 -7
- package/dist/components/Sidebar/sidebar.theme.d.ts +51 -21
- package/dist/components/Sidebar/sidebar.theme.js +113 -62
- package/dist/components/Sidebar/sidebar.views.svelte.js +11 -18
- package/dist/components/Stepper/Stepper.svelte +2 -0
- package/dist/components/Stepper/stepper.mcp.d.ts +1 -1
- package/dist/components/Stepper/stepper.mcp.js +1 -0
- package/dist/components/Stepper/stepper.props.d.ts +5 -0
- package/dist/components/Stepper/stepper.state.svelte.d.ts +2 -0
- package/dist/components/Stepper/stepper.state.svelte.js +31 -12
- package/dist/components/Tabbar/Tabbar.svelte +55 -16
- package/dist/components/Tabbar/index.d.ts +1 -1
- package/dist/components/Tabbar/tabbar.mcp.d.ts +1 -1
- package/dist/components/Tabbar/tabbar.mcp.js +26 -9
- package/dist/components/Tabbar/tabbar.props.d.ts +34 -5
- package/dist/components/Tabbar/tabbar.selection.svelte.d.ts +79 -0
- package/dist/components/Tabbar/tabbar.selection.svelte.js +99 -0
- package/dist/components/TableOfContents/tableOfContents.state.svelte.js +9 -7
- package/dist/components/Tabs/Tabs.svelte +73 -16
- package/dist/components/Tabs/index.d.ts +2 -1
- package/dist/components/Tabs/tabs.direction.svelte.d.ts +25 -0
- package/dist/components/Tabs/tabs.direction.svelte.js +40 -0
- package/dist/components/Tabs/tabs.mcp.d.ts +1 -1
- package/dist/components/Tabs/tabs.mcp.js +22 -4
- package/dist/components/Tabs/tabs.props.d.ts +39 -12
- package/dist/components/Tabs/tabs.theme.js +3 -1
- package/dist/components/Theme/Theme.svelte +44 -27
- package/dist/components/Theme/helper.d.ts +16 -2
- package/dist/components/Theme/helper.js +46 -4
- package/dist/components/Theme/theme.mcp.d.ts +1 -1
- package/dist/components/Theme/theme.mcp.js +103 -0
- package/dist/components/Theme/theme.props.d.ts +16 -0
- package/dist/components/Theme/theme.state.svelte.d.ts +14 -1
- package/dist/components/Theme/theme.state.svelte.js +18 -1
- package/dist/components/Toast/Toast.svelte +184 -39
- package/dist/components/Toast/Toaster.svelte +14 -10
- package/dist/components/Toast/index.d.ts +1 -0
- package/dist/components/Toast/toast.mcp.d.ts +1 -1
- package/dist/components/Toast/toast.mcp.js +47 -6
- package/dist/components/Toast/toast.state.svelte.d.ts +172 -6
- package/dist/components/Toast/toast.state.svelte.js +513 -68
- package/dist/components/Toast/toast.theme.js +1 -1
- package/dist/components/ToggleButton/ToggleButton.svelte +23 -1
- package/dist/components/ToggleButton/toggleButton.mcp.d.ts +1 -1
- package/dist/components/ToggleButton/toggleButton.mcp.js +3 -1
- package/dist/components/ToggleButton/toggleButton.props.d.ts +13 -1
- package/dist/components/ToggleButton/toggleButton.theme.d.ts +12 -0
- package/dist/components/ToggleButton/toggleButton.theme.js +15 -3
- package/dist/components/ToggleButtonGroup/ToggleButtonGroup.svelte +29 -9
- package/dist/components/ToggleButtonGroup/index.d.ts +1 -1
- package/dist/components/ToggleButtonGroup/toggleButtonGroup.mcp.d.ts +1 -1
- package/dist/components/ToggleButtonGroup/toggleButtonGroup.mcp.js +5 -2
- package/dist/components/ToggleButtonGroup/toggleButtonGroup.props.d.ts +19 -1
- package/dist/components/ToggleButtonGroup/toggleButtonGroup.theme.d.ts +12 -0
- package/dist/components/ToggleButtonGroup/toggleButtonGroup.theme.js +21 -2
- package/dist/components/ToggleMenu/ToggleMenu.svelte +57 -43
- package/dist/components/ToggleMenu/ToggleMenuGroup.svelte +1 -0
- package/dist/components/ToggleMenu/ToggleMenuMenu.svelte +9 -3
- package/dist/components/ToggleMenu/ToggleMenuRadioGroup.svelte +7 -2
- package/dist/components/ToggleMenu/toggleMenu.mcp.d.ts +1 -1
- package/dist/components/ToggleMenu/toggleMenu.mcp.js +3 -2
- package/dist/components/ToggleMenu/toggleMenu.props.d.ts +4 -1
- package/dist/components/Tooltip/Tooltip.svelte +4 -12
- package/dist/components/Tooltip/TooltipHost.svelte +136 -15
- package/dist/components/Tooltip/index.d.ts +1 -0
- package/dist/components/Tooltip/index.js +1 -0
- package/dist/components/Tooltip/tooltip.attachment.svelte.d.ts +5 -0
- package/dist/components/Tooltip/tooltip.attachment.svelte.js +215 -33
- package/dist/components/Tooltip/tooltip.attributes.d.ts +32 -0
- package/dist/components/Tooltip/tooltip.attributes.js +28 -0
- package/dist/components/Tooltip/tooltip.mcp.d.ts +1 -1
- package/dist/components/Tooltip/tooltip.mcp.js +111 -10
- package/dist/components/Tooltip/tooltip.props.d.ts +33 -2
- package/dist/components/Tooltip/tooltip.surface.d.ts +24 -0
- package/dist/components/Tooltip/tooltip.surface.js +42 -0
- package/dist/components/Tree/TreeContextMenuSurface.svelte +16 -3
- package/dist/components/Utils/BeforeHydratation.svelte +14 -3
- package/dist/components/Utils/BeforeHydratation.svelte.d.ts +2 -0
- package/dist/components/VideoPlayer/VideoPlayer.svelte.d.ts +1 -1
- package/dist/components/VideoPlayer/VideoPlayerSettings.svelte +2 -0
- package/dist/generated/componentAliases.d.ts +3 -0
- package/dist/generated/componentAliases.js +3 -0
- package/dist/generated/componentContract.d.ts +79 -34
- package/dist/generated/componentContract.js +231 -6
- package/dist/generated/componentMcpRegistry.js +6 -0
- package/dist/i18n/ar.js +107 -3
- package/dist/i18n/context.svelte.d.ts +6 -0
- package/dist/i18n/context.svelte.js +12 -0
- package/dist/i18n/de.js +101 -3
- package/dist/i18n/en.d.ts +91 -2
- package/dist/i18n/en.js +101 -3
- package/dist/i18n/es.js +101 -3
- package/dist/i18n/fr.js +101 -3
- package/dist/i18n/ja.js +101 -3
- package/dist/i18n/pt.js +101 -3
- package/dist/i18n/zh.js +101 -3
- package/dist/tailwind/geometry.js +7 -0
- package/dist/tailwind/global.js +31 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/types.mcp.d.ts +1 -1
- package/dist/types/types.mcp.js +23 -0
- package/dist/utils/cspNonce.d.ts +16 -0
- package/dist/utils/cspNonce.js +39 -0
- package/dist/utils/cva/merge.d.ts +5 -1
- package/dist/utils/cva/merge.js +6 -4
- package/dist/utils/focus.d.ts +34 -0
- package/dist/utils/focus.js +93 -0
- package/dist/utils/focusHistory.d.ts +21 -0
- package/dist/utils/focusHistory.js +99 -0
- package/dist/utils/handlers.d.ts +7 -0
- package/dist/utils/handlers.js +14 -0
- package/dist/utils/hoverIntent.d.ts +42 -0
- package/dist/utils/hoverIntent.js +57 -0
- package/dist/utils/id.d.ts +7 -0
- package/dist/utils/id.js +15 -0
- package/dist/utils/layers.svelte.d.ts +32 -4
- package/dist/utils/layers.svelte.js +214 -21
- package/dist/utils/listFilter.d.ts +44 -0
- package/dist/utils/listFilter.js +130 -0
- package/dist/utils/match.d.ts +35 -0
- package/dist/utils/match.js +36 -0
- package/dist/utils/number.d.ts +126 -0
- package/dist/utils/number.js +401 -0
- package/dist/utils/openChange.d.ts +88 -0
- package/dist/utils/openChange.js +71 -0
- package/dist/utils/openLifecycle.svelte.d.ts +41 -0
- package/dist/utils/openLifecycle.svelte.js +134 -0
- package/dist/utils/pointerDrag.d.ts +10 -0
- package/dist/utils/pointerDrag.js +37 -2
- package/dist/utils/pragmaticDragAndDrop.d.ts +2 -1
- package/dist/utils/pragmaticDragAndDrop.js +8 -3
- package/dist/utils/range.d.ts +62 -0
- package/dist/utils/range.js +70 -0
- package/dist/utils/requestNativeSubmit.d.ts +17 -0
- package/dist/utils/requestNativeSubmit.js +47 -0
- package/dist/utils/safeArea.svelte.d.ts +10 -1
- package/dist/utils/safeArea.svelte.js +19 -11
- package/dist/utils/stateAttributes.d.ts +108 -0
- package/dist/utils/stateAttributes.js +78 -0
- package/dist/utils/swipeVelocity.d.ts +32 -0
- package/dist/utils/swipeVelocity.js +59 -0
- package/dist/utils/timer.svelte.d.ts +65 -2
- package/dist/utils/timer.svelte.js +159 -25
- package/dist/utils/trigger.d.ts +41 -0
- package/dist/utils/trigger.js +103 -0
- package/dist/utils/typeahead.d.ts +9 -0
- package/dist/utils/typeahead.js +21 -9
- package/dist/utils/useDndList.svelte.d.ts +1 -1
- package/dist/utils/useDndList.svelte.js +6 -23
- package/dist/utils/useFocusScope.svelte.d.ts +29 -0
- package/dist/utils/useFocusScope.svelte.js +189 -27
- package/dist/utils/useHoverAction.svelte.d.ts +44 -4
- package/dist/utils/useHoverAction.svelte.js +161 -51
- package/dist/utils/useKeyDown.svelte.d.ts +19 -2
- package/dist/utils/useKeyDown.svelte.js +19 -12
- package/dist/utils/useListNavigation.svelte.d.ts +94 -13
- package/dist/utils/useListNavigation.svelte.js +261 -35
- package/dist/utils/useLiveAnnouncer.svelte.d.ts +77 -2
- package/dist/utils/useLiveAnnouncer.svelte.js +119 -2
- package/dist/utils/useNavigation.svelte.d.ts +36 -3
- package/dist/utils/useNavigation.svelte.js +699 -332
- package/dist/utils/usePressAndHold.svelte.d.ts +38 -0
- package/dist/utils/usePressAndHold.svelte.js +191 -0
- package/dist/utils/useScrollLock.svelte.d.ts +20 -1
- package/dist/utils/useScrollLock.svelte.js +54 -13
- package/dist/utils/useSlidingIndicator.svelte.d.ts +2 -0
- package/dist/utils/useSlidingIndicator.svelte.js +27 -5
- package/dist/utils/useTabBridge.svelte.d.ts +20 -0
- package/dist/utils/useTabBridge.svelte.js +109 -0
- package/dist/utils/values.d.ts +15 -0
- package/dist/utils/values.js +49 -0
- package/package.json +31 -2
- package/dist/generated/componentMcpRegistry.d.ts +0 -142
- package/dist/utils/useDrag.svelte.d.ts +0 -11
- package/dist/utils/useDrag.svelte.js +0 -55
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
export const navigationMenuDescription = `
|
|
2
|
+
# NavigationMenu Component
|
|
3
|
+
|
|
4
|
+
NavigationMenu is site navigation: a \`<nav>\` landmark with a row of links and disclosure buttons, and one panel area that shows the panel of whichever button is open. Use it for a header with mega-menu panels. MenuBar is the application-menu pattern (\`role="menubar"\`) and the wrong choice for site navigation; Tabbar is a tablist.
|
|
5
|
+
|
|
6
|
+
## Basic Usage
|
|
7
|
+
|
|
8
|
+
\`\`\`svelte
|
|
9
|
+
<script lang="ts">
|
|
10
|
+
import { NavigationMenu, type NavigationMenuItem } from './index.ts';
|
|
11
|
+
|
|
12
|
+
const items: NavigationMenuItem[] = [
|
|
13
|
+
{
|
|
14
|
+
type: 'panel',
|
|
15
|
+
value: 'product',
|
|
16
|
+
label: 'Product',
|
|
17
|
+
content: [
|
|
18
|
+
{ label: 'Components', href: '/components', description: 'The essential interface pieces.' },
|
|
19
|
+
{ label: 'Blocks', href: '/blocks', description: 'Complete patterns in context.' }
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
{ type: 'link', label: 'Pricing', href: '/pricing', active: true },
|
|
23
|
+
{ type: 'link', label: 'Docs', href: '/docs' }
|
|
24
|
+
];
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<NavigationMenu {items} label="Main" />
|
|
28
|
+
\`\`\`
|
|
29
|
+
|
|
30
|
+
## Controlled value
|
|
31
|
+
|
|
32
|
+
\`\`\`svelte
|
|
33
|
+
<script lang="ts">
|
|
34
|
+
import { NavigationMenu, type NavigationMenuItem } from './index.ts';
|
|
35
|
+
|
|
36
|
+
type Section = 'product' | 'company';
|
|
37
|
+
let open = $state<Section | null>(null);
|
|
38
|
+
|
|
39
|
+
const items: NavigationMenuItem<Section>[] = [
|
|
40
|
+
{ type: 'panel', value: 'product', label: 'Product', content: [{ label: 'Blocks', href: '/blocks' }] },
|
|
41
|
+
{ type: 'panel', value: 'company', label: 'Company', content: [{ label: 'About', href: '/about' }] }
|
|
42
|
+
];
|
|
43
|
+
</script>
|
|
44
|
+
|
|
45
|
+
<NavigationMenu {items} bind:value={open} onValueChange={({ value, details }) => console.log(value, details.reason)} />
|
|
46
|
+
\`\`\`
|
|
47
|
+
|
|
48
|
+
## Items
|
|
49
|
+
|
|
50
|
+
- A **link** (\`type: 'link'\`) is a plain entry of the bar: \`label\`, \`href\`, optional \`prefix\`, \`iconOnly\` (paint only the prefix; the string label becomes the accessible name), \`active\` (renders \`aria-current="page"\`), \`disabled\`, \`target\`, \`rel\` and \`onclick\`.
|
|
51
|
+
- A **panel** (\`type: 'panel'\`) is a disclosure button: \`value\` (unique), \`label\`, optional \`prefix\`, \`iconOnly\` (paint only the prefix; the string label becomes the accessible name), \`disabled\`, and the body in \`content\`: a list of links (\`label\`, \`href\`, \`description\`, \`prefix\`, \`active\`, \`disabled\`, \`target\`, \`rel\`, \`onclick\`), or a snippet \`{#snippet content({ close })}\` that renders anything. \`items\` adds a nested level under \`content\`: links, and more panels that expand in place.
|
|
52
|
+
- \`Value\` is generic: \`NavigationMenuItem<'product' | 'company'>\` types \`value\`, \`defaultValue\` and \`onValueChange\`.
|
|
53
|
+
|
|
54
|
+
## Props
|
|
55
|
+
|
|
56
|
+
- **items**: NavigationMenuItem[] (required) - Entries of the bar.
|
|
57
|
+
- **label**: string - Accessible name of the nav landmark. Give it when the page has more than one nav.
|
|
58
|
+
- **value** / **defaultValue**: Value | null - The open panel's \`value\`; \`null\` while all are closed. \`value\` is bindable.
|
|
59
|
+
- **onValueChange**: (payload: { value: Value | null; details: OpenChangeDetails }) => void - Called before the open panel changes with the panel that will be open. \`details.reason\` is \`trigger-press\`, \`trigger-hover\`, \`list-navigation\`, \`escape-key\`, \`outside-press\`, \`focus-out\`, \`item-press\`, \`close-press\` or \`trigger-unmount\`; \`details.event\` carries the DOM event; \`details.cancel()\` keeps the current panel. A link press closes every level and calls it once with \`null\`. Not called for the initial state or for changes the parent assigns to \`value\`.
|
|
60
|
+
- **openOnHover**: boolean (default: true) - Resting the pointer on a trigger opens its panel. Touch never hovers.
|
|
61
|
+
- **delay**: number (default: 50) - Milliseconds before a hovered trigger opens. Switching between triggers while a panel is open is immediate.
|
|
62
|
+
- **closeDelay**: number (default: 100) - Milliseconds the pointer may stay outside the triggers and the panel before a hover-opened panel closes.
|
|
63
|
+
- **keepMounted**: boolean (default: false) - Keeps every panel in the DOM under \`hidden\`, so crawlers and the server-rendered HTML see their links. A kept-mounted popup hides at once when closed, without an exit animation.
|
|
64
|
+
- **onAfterOpen** / **onAfterClose**: () => void - Called once each time the panel area finishes opening or closing (at once when no animation plays). Not called for the initial state.
|
|
65
|
+
- **size**: 'small' | 'normal' | 'large' (default: 'normal') - Size of triggers, links and panel text.
|
|
66
|
+
- **density**: 'compact' | 'normal' | 'comfortable' (default: 'normal') - Spacing inside the panel area and between its rows.
|
|
67
|
+
- **color**: Colors - Semantic role of the triggers and the selected look. Falls back to the Theme's default color.
|
|
68
|
+
- **dir**: 'ltr' | 'rtl' - Text direction. When omitted it follows the i18n direction, else the element's computed direction. It mirrors the arrow keys and the panel alignment.
|
|
69
|
+
- **transition**: FSOProps - Popup enter and exit overrides (numeric \`x\`, \`y\`, \`scale\`, \`opacity\`, \`duration\`, \`easing\`).
|
|
70
|
+
- **ref**: HTMLElement | null - Bindable reference to the nav element.
|
|
71
|
+
- **class**: string - Class name of the nav.
|
|
72
|
+
- **theme**: NavigationMenuThemeProps - Theme overrides: \`root\`, \`list\`, \`item\`, \`trigger\`, \`link\`, \`caret\`, \`viewport\`, \`popup\`, \`panel\`, \`contentList\`, \`contentLink\`, \`contentPrefix\`, \`contentText\`, \`contentTitle\`, \`contentDescription\`, \`nestedTrigger\` and \`motion\`.
|
|
73
|
+
|
|
74
|
+
## Behavior
|
|
75
|
+
|
|
76
|
+
- The markup is \`<nav aria-label><ul>\`: each panel trigger is a \`<button>\` with \`aria-expanded\` and \`aria-controls\` (no \`aria-haspopup\`: it is a disclosure, not a menu), each link an \`<a>\`. There is no \`aria-orientation\`.
|
|
77
|
+
- **One inline panel area.** The panel area is rendered inside the nav, after the trigger list, never portaled. It animates its width and height as the open panel changes, and aligns to the open trigger's inline edge inside the layout viewport. On a switch the new panel fades and slides in from the side of the trigger it comes from, after the old one has faded and slid out the other way (the entry waits for the exit and lasts twice the in duration) (\`data-activation-direction\` names the direction); the \`motion\` / \`transition\` durations and reduced motion apply.
|
|
78
|
+
- **Opening.** Click, Enter or Space toggle a trigger; ArrowDown opens it. Opening by keyboard keeps focus on the trigger. Tab from an open trigger enters the panel's links; Tab past the last link continues after the trigger and closes the panel (also when nothing follows the menu and focus leaves the page); Shift+Tab from the first link returns to the trigger. ArrowDown on an open trigger moves into the panel. A panel is entered by Tab only from its own trigger: Tab from a later entry of the bar skips it and leaves the menu. A pointer press focuses the trigger (Safari does not focus buttons on click), so Tab, ArrowDown and Escape carry on from it.
|
|
79
|
+
- **Moving along the bar.** ArrowLeft and ArrowRight (mirrored in RTL), Home and End move focus between the bar's enabled triggers and links, without wrapping; Tab still visits each. With a panel open, the open panel follows: arrowing onto a trigger switches to its panel (focus stays on the trigger) and arrowing onto a link closes it. With no panel open they only move focus.
|
|
80
|
+
- **Inside a panel.** ArrowDown and ArrowUp move to the next and previous link or button of the open panel, wrapping at either end; ArrowRight and ArrowLeft do the same (mirrored in RTL); Home and End jump to the first and last. Disabled links and links of a collapsed nested level are skipped. A text field or select keeps its own arrow keys, and a control that handles an arrow key itself (calls \`preventDefault()\`) keeps it. Snippet panels get the same keys over their tabbable controls.
|
|
81
|
+
- **Hover.** Resting on a trigger opens its panel after \`delay\`; moving to another trigger switches at once. A panel opened by hover closes when the pointer leaves the trigger and the panel (with a diagonal-safe area) after \`closeDelay\`, unless focus is inside it. A pointer press on the trigger of a hover-opened panel keeps it open; pressing again closes it. Enter or Space on that trigger closes it. A hover that began before a press or Escape never reopens the panel afterwards.
|
|
82
|
+
- **Closing.** Escape closes the open panel; from inside the panel it returns focus to the trigger with a visible ring, and from the bar focus stays where it is. A press outside, focus moving out, and a press on any link close it. A link press closes every level, once. A consumer \`onclick\` runs first and \`event.preventDefault()\` there skips the built-in close.
|
|
83
|
+
- **Disabled.** A disabled panel trigger never opens and is skipped by the arrow keys; it renders \`disabled\` and \`data-disabled\`. A disabled link drops its \`href\` and leaves the tab order.
|
|
84
|
+
- **Removed panels.** If the open panel is removed or disabled, the value resets to \`null\` (\`onValueChange\` with reason \`trigger-unmount\`).
|
|
85
|
+
- **Nested levels.** \`items\` under a panel render inline; a nested panel is a disclosure button that expands in place with a click, Enter or Space. The panel's arrow keys reach nested triggers and the links of expanded levels.
|
|
86
|
+
|
|
87
|
+
## Styling hooks
|
|
88
|
+
|
|
89
|
+
Data attributes (presence attributes, \`""\` while the state holds):
|
|
90
|
+
|
|
91
|
+
- \`data-open\` / \`data-closed\`: on the nav, the popup and each panel.
|
|
92
|
+
- \`data-entering\` / \`data-exiting\`: on the popup while its animation plays.
|
|
93
|
+
- \`data-popup-open\`: on a panel trigger while its panel is open.
|
|
94
|
+
- \`data-disabled\`: on a disabled trigger, link or nested trigger.
|
|
95
|
+
- \`data-selected\`: on the link of the current page.
|
|
96
|
+
- \`data-side="bottom"\` and \`data-align="start"\`: on the viewport and popup.
|
|
97
|
+
- \`data-activation-direction="left" | "right"\`: on a panel that replaced another, the physical direction its trigger lies in from the previously open one.
|
|
98
|
+
|
|
99
|
+
CSS variables on the viewport: \`--anchor-width\` and \`--anchor-height\`, the open trigger's size in px. The typed maps \`navigationMenuDataAttributes\` and \`navigationMenuCssVariables\` (from \`entasis/navigation-menu\`) list each name with its meaning.
|
|
100
|
+
|
|
101
|
+
## Structure
|
|
102
|
+
|
|
103
|
+
\`\`\`
|
|
104
|
+
<nav aria-label>
|
|
105
|
+
<ul>
|
|
106
|
+
<li><button aria-expanded aria-controls /></li>
|
|
107
|
+
<li><a href /></li>
|
|
108
|
+
</ul>
|
|
109
|
+
<div data-side="bottom"> <!-- viewport, in flow, positioned under the active trigger -->
|
|
110
|
+
<div> <!-- popup, animates its size -->
|
|
111
|
+
<div id> <!-- one panel per open trigger -->
|
|
112
|
+
<ul><li><a href /></li></ul>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
</nav>
|
|
117
|
+
\`\`\`
|
|
118
|
+
|
|
119
|
+
## Accessibility
|
|
120
|
+
|
|
121
|
+
Disclosure navigation (the WAI-ARIA APG disclosure navigation pattern): every trigger and link keeps its place in the natural Tab order, panels follow in the document, and arrow keys are a shortcut that supplements Tab, along the bar and inside the open panel. Escape returns focus to the trigger and keyboard closes show the focus ring.
|
|
122
|
+
|
|
123
|
+
| Focus | Key | Result |
|
|
124
|
+
| --- | --- | --- |
|
|
125
|
+
| Trigger | Enter, Space | Toggles its panel; focus stays |
|
|
126
|
+
| Closed trigger | ArrowDown | Opens its panel; focus stays |
|
|
127
|
+
| Open trigger | ArrowDown, Tab | First control of the panel |
|
|
128
|
+
| Bar entry | ArrowRight / ArrowLeft (mirrored in RTL) | Next / previous enabled entry, no wrap; with a panel open, a trigger switches to its panel (focus stays on it) and a link closes the panel |
|
|
129
|
+
| Bar entry | Home / End | First / last enabled entry |
|
|
130
|
+
| Bar entry | Escape | Closes the open panel; focus stays |
|
|
131
|
+
| Panel | ArrowDown / ArrowUp | Next / previous control, wrapping |
|
|
132
|
+
| Panel | ArrowRight / ArrowLeft (mirrored in RTL) | The neighbouring entry of the bar: a trigger opens its panel and focus goes to its first control; a link closes the panel and takes focus; no wrap at the ends |
|
|
133
|
+
| Panel | Home / End | First / last control |
|
|
134
|
+
| Panel | Tab past the last control | Next entry after the trigger; the panel closes |
|
|
135
|
+
| Panel | Shift+Tab on the first control | The trigger; the panel stays open |
|
|
136
|
+
| Panel | Escape | Closes; focus returns to the trigger with a ring |
|
|
137
|
+
| Anywhere | Focus leaves the menu | Closes | A current-page link renders \`aria-current="page"\`.
|
|
138
|
+
`;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { Colors, Density, Sizes } from '../../types/theme.js';
|
|
3
|
+
import type { WithAttachments } from '../../types/props.js';
|
|
4
|
+
import type { ResponsiveProps } from '../Theme/theme.js';
|
|
5
|
+
import type { FSOProps } from '../../transitions/transition.js';
|
|
6
|
+
import type { OpenChangeDetails } from '../../utils/openChange.js';
|
|
7
|
+
import type { Slot } from '../Slot/slot.js';
|
|
8
|
+
import type { NavigationMenuThemeProps } from './navigationMenu.theme.js';
|
|
9
|
+
/** A link: a top-level entry of the bar, or a row inside a panel. */
|
|
10
|
+
export type NavigationMenuLink = {
|
|
11
|
+
/** Text or snippet shown for the link. */
|
|
12
|
+
label: Slot;
|
|
13
|
+
/** Where the link goes. */
|
|
14
|
+
href: string;
|
|
15
|
+
/** Secondary text under the label. Shown inside panels only. */
|
|
16
|
+
description?: Slot;
|
|
17
|
+
/** Content before the label, usually an icon. */
|
|
18
|
+
prefix?: Slot;
|
|
19
|
+
/**
|
|
20
|
+
* Paints only `prefix`. The string `label` is then spoken instead of painted, as the accessible
|
|
21
|
+
* name of an icon-only top-level link.
|
|
22
|
+
*/
|
|
23
|
+
iconOnly?: boolean;
|
|
24
|
+
/** Marks the link of the current page: renders `aria-current="page"` and the selected look. */
|
|
25
|
+
active?: boolean;
|
|
26
|
+
/** The link cannot be followed: it drops its `href`, leaves the tab order and renders `aria-disabled`. */
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
/** Link `target`. */
|
|
29
|
+
target?: string;
|
|
30
|
+
/** Link `rel`. */
|
|
31
|
+
rel?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Native click handler. It runs before the built-in close, and `event.preventDefault()` there
|
|
34
|
+
* skips it (and the navigation itself).
|
|
35
|
+
*/
|
|
36
|
+
onclick?: (event: MouseEvent) => void;
|
|
37
|
+
};
|
|
38
|
+
/** What a snippet panel receives. */
|
|
39
|
+
export type NavigationMenuPanelApi = {
|
|
40
|
+
/** Closes the open panel and every nested level, reported as `close-press`. */
|
|
41
|
+
close: () => void;
|
|
42
|
+
};
|
|
43
|
+
/** A disclosure button in the bar that shows a panel. */
|
|
44
|
+
export type NavigationMenuPanel<Value extends string = string> = {
|
|
45
|
+
type: 'panel';
|
|
46
|
+
/** Identifies the panel in `value`, `defaultValue` and `onValueChange`. Unique among panels. */
|
|
47
|
+
value: Value;
|
|
48
|
+
/** Text or snippet shown on the trigger. */
|
|
49
|
+
label: Slot;
|
|
50
|
+
/** Content before the label, usually an icon. */
|
|
51
|
+
prefix?: Slot;
|
|
52
|
+
/**
|
|
53
|
+
* Paints only `prefix` (and the caret). The string `label` is then spoken instead of painted, as
|
|
54
|
+
* the accessible name of an icon-only trigger.
|
|
55
|
+
*/
|
|
56
|
+
iconOnly?: boolean;
|
|
57
|
+
/** A disabled trigger never opens: it renders `disabled` and `data-disabled`. */
|
|
58
|
+
disabled?: boolean;
|
|
59
|
+
/** The panel's body: a list of links, or a snippet that renders anything. */
|
|
60
|
+
content?: NavigationMenuLink[] | Snippet<[NavigationMenuPanelApi]>;
|
|
61
|
+
/**
|
|
62
|
+
* A nested level rendered inline under `content`: links, and further panels that expand in
|
|
63
|
+
* place (an inline disclosure, not another floating layer). A link press anywhere in the tree
|
|
64
|
+
* closes every level.
|
|
65
|
+
*/
|
|
66
|
+
items?: NavigationMenuItem<Value>[];
|
|
67
|
+
};
|
|
68
|
+
/** One entry of the bar or of a nested level. */
|
|
69
|
+
export type NavigationMenuItem<Value extends string = string> = ({
|
|
70
|
+
type: 'link';
|
|
71
|
+
} & NavigationMenuLink) | NavigationMenuPanel<Value>;
|
|
72
|
+
/** Payload of `onValueChange`: the panel the menu is about to show and why. */
|
|
73
|
+
export type NavigationMenuValueChangePayload<Value extends string = string> = {
|
|
74
|
+
/** The panel that will be open, `null` when every panel closes. */
|
|
75
|
+
value: Value | null;
|
|
76
|
+
/** Reason, originating event and `cancel()`. */
|
|
77
|
+
details: OpenChangeDetails;
|
|
78
|
+
};
|
|
79
|
+
export type NavigationMenuProps<Value extends string = string> = WithAttachments<{
|
|
80
|
+
/** The entries of the bar, in order. */
|
|
81
|
+
items: NavigationMenuItem<Value>[];
|
|
82
|
+
/** Accessible name of the `nav` landmark. Give it when the page has more than one. */
|
|
83
|
+
label?: string;
|
|
84
|
+
/** Bindable reference to the `nav` element. */
|
|
85
|
+
ref?: HTMLElement | null;
|
|
86
|
+
/** The open panel's `value`, `null` while all are closed. Bindable. */
|
|
87
|
+
value?: Value | null;
|
|
88
|
+
/** The open panel when `value` is omitted. */
|
|
89
|
+
defaultValue?: Value | null;
|
|
90
|
+
/**
|
|
91
|
+
* Called before the open panel changes: a trigger press, hovering, ArrowDown on a trigger,
|
|
92
|
+
* Escape, an outside press, focus leaving, a link press, or the open panel being
|
|
93
|
+
* removed. `details.reason` (in the `{ value, details }` payload) says why, `details.event` carries the DOM event, and
|
|
94
|
+
* `details.cancel()` keeps the current panel. Inside the callback `value` still holds the
|
|
95
|
+
* previous panel. A link press closes every level and calls this once with `null`. Not called
|
|
96
|
+
* for the initial state or for changes the parent assigns to `value`.
|
|
97
|
+
*/
|
|
98
|
+
onValueChange?: (payload: NavigationMenuValueChangePayload<Value>) => void;
|
|
99
|
+
/** Opens a panel when the pointer rests on its trigger. Touch never hovers. @default true */
|
|
100
|
+
openOnHover?: boolean;
|
|
101
|
+
/** Milliseconds the pointer rests on a trigger before its panel opens; switching between triggers is immediate. @default 50 */
|
|
102
|
+
delay?: number;
|
|
103
|
+
/** Milliseconds the pointer may stay outside the triggers and the panel before a hover-opened panel closes. @default 100 */
|
|
104
|
+
closeDelay?: number;
|
|
105
|
+
/**
|
|
106
|
+
* Keeps every panel in the DOM under `hidden`, so crawlers and the server-rendered HTML see
|
|
107
|
+
* their links. A kept-mounted popup hides at once when closed (it has no exit animation).
|
|
108
|
+
* @default false
|
|
109
|
+
*/
|
|
110
|
+
keepMounted?: boolean;
|
|
111
|
+
/** Called once each time a panel finishes opening: after the animation, or at once when none plays. Not called for the initial state. */
|
|
112
|
+
onAfterOpen?: () => void;
|
|
113
|
+
/** Called once each time the panel area finishes closing. Not called for the initial state. */
|
|
114
|
+
onAfterClose?: () => void;
|
|
115
|
+
/** Size of the triggers, links and panel text. @default 'normal' */
|
|
116
|
+
size?: Sizes;
|
|
117
|
+
/** Spacing inside the panel area and between its rows. @default 'normal' */
|
|
118
|
+
density?: Density;
|
|
119
|
+
/** Semantic role of the triggers and of the selected look. Falls back to the Theme's default color. */
|
|
120
|
+
color?: Colors;
|
|
121
|
+
/** Text direction; mirrors the arrow keys and the panel alignment. Follows the i18n direction or the element's computed direction when omitted. */
|
|
122
|
+
dir?: 'ltr' | 'rtl';
|
|
123
|
+
/** Popup enter and exit overrides; supports responsive values and wins over the `motion` theme slot. Only numeric `x` and `y` apply. */
|
|
124
|
+
transition?: ResponsiveProps<FSOProps>;
|
|
125
|
+
/** Class name of the `nav` root. */
|
|
126
|
+
class?: string;
|
|
127
|
+
/** Theme overrides for the bar, the triggers and the panel parts. */
|
|
128
|
+
theme?: NavigationMenuThemeProps;
|
|
129
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import type { Attachment } from 'svelte/attachments';
|
|
2
|
+
import { SvelteSet } from 'svelte/reactivity';
|
|
3
|
+
import type { TransitionConfig } from 'svelte/transition';
|
|
4
|
+
import type { FSOProps } from '../../transitions/transition.js';
|
|
5
|
+
import type { ResponsiveProps } from '../Theme/theme.js';
|
|
6
|
+
import { type OpenChangeDetails, type OpenChangeInit } from '../../utils/openChange.js';
|
|
7
|
+
import type { DeepPartial, MotionSpec } from '../../utils/motion/index.js';
|
|
8
|
+
import { type Direction } from '../../utils/useDirection.svelte.js';
|
|
9
|
+
import type { NavigationMenuItem, NavigationMenuPanel } from './navigationMenu.props.js';
|
|
10
|
+
export type NavigationMenuStateOptions<Value extends string> = {
|
|
11
|
+
id: string;
|
|
12
|
+
items: () => NavigationMenuItem<Value>[];
|
|
13
|
+
/** The raw value: controlled, or the retained uncontrolled one. */
|
|
14
|
+
value: () => Value | null;
|
|
15
|
+
setValue: (value: Value | null) => void;
|
|
16
|
+
onValueChange: () => ((payload: {
|
|
17
|
+
value: Value | null;
|
|
18
|
+
details: OpenChangeDetails;
|
|
19
|
+
}) => void) | undefined;
|
|
20
|
+
openOnHover: () => boolean;
|
|
21
|
+
delay: () => number;
|
|
22
|
+
closeDelay: () => number;
|
|
23
|
+
keepMounted: () => boolean;
|
|
24
|
+
dir: () => Direction | undefined;
|
|
25
|
+
transition: () => ResponsiveProps<FSOProps> | undefined;
|
|
26
|
+
motion: () => DeepPartial<MotionSpec> | undefined;
|
|
27
|
+
onAfterOpen: () => (() => void) | undefined;
|
|
28
|
+
onAfterClose: () => (() => void) | undefined;
|
|
29
|
+
};
|
|
30
|
+
type ChangeInit = OpenChangeInit & {
|
|
31
|
+
reason: NonNullable<OpenChangeInit['reason']>;
|
|
32
|
+
};
|
|
33
|
+
export declare function useNavigationMenuState<Value extends string>(options: NavigationMenuStateOptions<Value>): {
|
|
34
|
+
readonly panels: NavigationMenuPanel<Value>[];
|
|
35
|
+
readonly isOpen: boolean;
|
|
36
|
+
readonly value: Value | null;
|
|
37
|
+
readonly displayValue: Value | null;
|
|
38
|
+
readonly displayItem: NavigationMenuPanel<Value> | null;
|
|
39
|
+
readonly rendered: boolean;
|
|
40
|
+
readonly visible: boolean;
|
|
41
|
+
readonly status: import("../../utils/stateAttributes.js").OpenTransitionStatus;
|
|
42
|
+
readonly activationDirection: "left" | "right" | null;
|
|
43
|
+
readonly direction: Direction;
|
|
44
|
+
readonly openOnHover: boolean;
|
|
45
|
+
readonly keepMounted: boolean;
|
|
46
|
+
readonly delay: number;
|
|
47
|
+
isSwitching: () => boolean;
|
|
48
|
+
panelOut: (element: HTMLElement) => TransitionConfig;
|
|
49
|
+
panelIndex: (value: Value | null) => number;
|
|
50
|
+
triggerId: (value: Value) => string;
|
|
51
|
+
panelId: (value: Value) => string;
|
|
52
|
+
/** Whether the panel for `value` has its element in the DOM now. */
|
|
53
|
+
hasPanel: (value: Value) => boolean;
|
|
54
|
+
isOpenFor: (value: Value) => boolean;
|
|
55
|
+
safeArea: {
|
|
56
|
+
reference: (ref: HTMLElement) => () => void;
|
|
57
|
+
anchorReference: (ref: HTMLElement) => () => void;
|
|
58
|
+
floatingReference: (ref: HTMLElement) => () => void;
|
|
59
|
+
updateAreas: () => void;
|
|
60
|
+
containsPoint: (x: number, y: number) => boolean;
|
|
61
|
+
};
|
|
62
|
+
nestedOpen: SvelteSet<string>;
|
|
63
|
+
close: (init?: Partial<ChangeInit>) => boolean;
|
|
64
|
+
pressLink: (event: MouseEvent) => void;
|
|
65
|
+
pressTrigger: (value: Value, event: MouseEvent) => void;
|
|
66
|
+
hoverTrigger: (value: Value, event: MouseEvent) => void;
|
|
67
|
+
handleFocusOut: (event: FocusEvent) => void;
|
|
68
|
+
layer: import("../../utils/layers.svelte.js").LayerHandle;
|
|
69
|
+
root: Attachment<HTMLElement>;
|
|
70
|
+
list: Attachment<HTMLElement>;
|
|
71
|
+
trigger: (value: Value) => Attachment<HTMLElement>;
|
|
72
|
+
viewport: Attachment<HTMLElement>;
|
|
73
|
+
popup: Attachment<HTMLElement>;
|
|
74
|
+
panel: (value: Value) => Attachment<HTMLElement>;
|
|
75
|
+
};
|
|
76
|
+
export type NavigationMenuState<Value extends string = string> = ReturnType<typeof useNavigationMenuState<Value>>;
|
|
77
|
+
export declare function setNavigationMenuState(state: NavigationMenuState<string>): {
|
|
78
|
+
readonly panels: NavigationMenuPanel<string>[];
|
|
79
|
+
readonly isOpen: boolean;
|
|
80
|
+
readonly value: string | null;
|
|
81
|
+
readonly displayValue: string | null;
|
|
82
|
+
readonly displayItem: NavigationMenuPanel<string> | null;
|
|
83
|
+
readonly rendered: boolean;
|
|
84
|
+
readonly visible: boolean;
|
|
85
|
+
readonly status: import("../../utils/stateAttributes.js").OpenTransitionStatus;
|
|
86
|
+
readonly activationDirection: "left" | "right" | null;
|
|
87
|
+
readonly direction: Direction;
|
|
88
|
+
readonly openOnHover: boolean;
|
|
89
|
+
readonly keepMounted: boolean;
|
|
90
|
+
readonly delay: number;
|
|
91
|
+
isSwitching: () => boolean;
|
|
92
|
+
panelOut: (element: HTMLElement) => TransitionConfig;
|
|
93
|
+
panelIndex: (value: string | null) => number;
|
|
94
|
+
triggerId: (value: string) => string;
|
|
95
|
+
panelId: (value: string) => string;
|
|
96
|
+
/** Whether the panel for `value` has its element in the DOM now. */
|
|
97
|
+
hasPanel: (value: string) => boolean;
|
|
98
|
+
isOpenFor: (value: string) => boolean;
|
|
99
|
+
safeArea: {
|
|
100
|
+
reference: (ref: HTMLElement) => () => void;
|
|
101
|
+
anchorReference: (ref: HTMLElement) => () => void;
|
|
102
|
+
floatingReference: (ref: HTMLElement) => () => void;
|
|
103
|
+
updateAreas: () => void;
|
|
104
|
+
containsPoint: (x: number, y: number) => boolean;
|
|
105
|
+
};
|
|
106
|
+
nestedOpen: SvelteSet<string>;
|
|
107
|
+
close: (init?: Partial<ChangeInit>) => boolean;
|
|
108
|
+
pressLink: (event: MouseEvent) => void;
|
|
109
|
+
pressTrigger: (value: string, event: MouseEvent) => void;
|
|
110
|
+
hoverTrigger: (value: string, event: MouseEvent) => void;
|
|
111
|
+
handleFocusOut: (event: FocusEvent) => void;
|
|
112
|
+
layer: import("../../utils/layers.svelte.js").LayerHandle;
|
|
113
|
+
root: Attachment<HTMLElement>;
|
|
114
|
+
list: Attachment<HTMLElement>;
|
|
115
|
+
trigger: (value: string) => Attachment<HTMLElement>;
|
|
116
|
+
viewport: Attachment<HTMLElement>;
|
|
117
|
+
popup: Attachment<HTMLElement>;
|
|
118
|
+
panel: (value: string) => Attachment<HTMLElement>;
|
|
119
|
+
};
|
|
120
|
+
export declare function getNavigationMenuState(): {
|
|
121
|
+
readonly panels: NavigationMenuPanel<string>[];
|
|
122
|
+
readonly isOpen: boolean;
|
|
123
|
+
readonly value: string | null;
|
|
124
|
+
readonly displayValue: string | null;
|
|
125
|
+
readonly displayItem: NavigationMenuPanel<string> | null;
|
|
126
|
+
readonly rendered: boolean;
|
|
127
|
+
readonly visible: boolean;
|
|
128
|
+
readonly status: import("../../utils/stateAttributes.js").OpenTransitionStatus;
|
|
129
|
+
readonly activationDirection: "left" | "right" | null;
|
|
130
|
+
readonly direction: Direction;
|
|
131
|
+
readonly openOnHover: boolean;
|
|
132
|
+
readonly keepMounted: boolean;
|
|
133
|
+
readonly delay: number;
|
|
134
|
+
isSwitching: () => boolean;
|
|
135
|
+
panelOut: (element: HTMLElement) => TransitionConfig;
|
|
136
|
+
panelIndex: (value: string | null) => number;
|
|
137
|
+
triggerId: (value: string) => string;
|
|
138
|
+
panelId: (value: string) => string;
|
|
139
|
+
/** Whether the panel for `value` has its element in the DOM now. */
|
|
140
|
+
hasPanel: (value: string) => boolean;
|
|
141
|
+
isOpenFor: (value: string) => boolean;
|
|
142
|
+
safeArea: {
|
|
143
|
+
reference: (ref: HTMLElement) => () => void;
|
|
144
|
+
anchorReference: (ref: HTMLElement) => () => void;
|
|
145
|
+
floatingReference: (ref: HTMLElement) => () => void;
|
|
146
|
+
updateAreas: () => void;
|
|
147
|
+
containsPoint: (x: number, y: number) => boolean;
|
|
148
|
+
};
|
|
149
|
+
nestedOpen: SvelteSet<string>;
|
|
150
|
+
close: (init?: Partial<ChangeInit>) => boolean;
|
|
151
|
+
pressLink: (event: MouseEvent) => void;
|
|
152
|
+
pressTrigger: (value: string, event: MouseEvent) => void;
|
|
153
|
+
hoverTrigger: (value: string, event: MouseEvent) => void;
|
|
154
|
+
handleFocusOut: (event: FocusEvent) => void;
|
|
155
|
+
layer: import("../../utils/layers.svelte.js").LayerHandle;
|
|
156
|
+
root: Attachment<HTMLElement>;
|
|
157
|
+
list: Attachment<HTMLElement>;
|
|
158
|
+
trigger: (value: string) => Attachment<HTMLElement>;
|
|
159
|
+
viewport: Attachment<HTMLElement>;
|
|
160
|
+
popup: Attachment<HTMLElement>;
|
|
161
|
+
panel: (value: string) => Attachment<HTMLElement>;
|
|
162
|
+
};
|
|
163
|
+
export {};
|