entasis 0.11.0 → 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 +256 -30
- package/dist/components/Form/Field/Field.svelte.d.ts +9 -0
- 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 +64 -8
- 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 +109 -3
- package/dist/components/Form/Field/field.state.svelte.js +508 -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 +47 -14
- 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 +40 -2
- package/dist/components/Form/Form/FormInputRenderer.svelte +7 -0
- package/dist/components/Form/Form/form.d.ts +35 -6
- package/dist/components/Form/Form/form.mcp.d.ts +1 -1
- package/dist/components/Form/Form/form.mcp.js +113 -13
- package/dist/components/Form/Form/form.props.d.ts +32 -1
- package/dist/components/Form/Form/form.registry.d.ts +2 -2
- package/dist/components/Form/Form/form.registry.js +1 -4
- package/dist/components/Form/Form/form.state.svelte.d.ts +1138 -413
- package/dist/components/Form/Form/form.state.svelte.js +319 -26
- package/dist/components/Form/Form/index.d.ts +3 -1
- package/dist/components/Form/Form/visibility.d.ts +3096 -1831
- 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 +1022 -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 +225 -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
|
@@ -1,76 +1,87 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { applyCspNonce } from '../../utils/cspNonce.js';
|
|
2
2
|
import { createId } from '../../utils/id.js';
|
|
3
3
|
import { createBindableStateClass } from '../../utils/state.svelte.js';
|
|
4
4
|
import { usePanzoom } from '../../utils/usePanzoom.svelte.js';
|
|
5
5
|
import { onDestroy, untrack } from 'svelte';
|
|
6
6
|
import { on } from 'svelte/events';
|
|
7
|
-
|
|
8
|
-
//
|
|
9
|
-
// so we declare the minimal structural types we use rather than depending on
|
|
10
|
-
//
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
// sibling chunks that fail to resolve cross-origin from cdnjs.
|
|
15
|
-
const MERMAID_CDN = `https://cdnjs.cloudflare.com/ajax/libs/mermaid/${MERMAID_CDN_VERSION}/mermaid.min.js`;
|
|
7
|
+
// Mermaid source is rendered by Pele (https://pele.run, MIT, by Obsidian): a lightweight Mermaid
|
|
8
|
+
// renderer that returns themeable SVG synchronously. It is loaded from jsDelivr at runtime and never
|
|
9
|
+
// bundled, so we declare the minimal structural types we use rather than depending on its package.
|
|
10
|
+
// Bump this single const to upgrade (mirrors the pinned PDF.js runtime in DocumentViewer).
|
|
11
|
+
const PELE_CDN_VERSION = '1.6.0';
|
|
12
|
+
// The self-contained global build: one script that defines `window.pele` with every diagram type.
|
|
13
|
+
const PELE_CDN = `https://cdn.jsdelivr.net/npm/pele@${PELE_CDN_VERSION}/dist/pele.global.js`;
|
|
16
14
|
// Module-level singleton: dedupes concurrent loads and repeat mounts. Reset to
|
|
17
15
|
// null on failure so a later mount can retry. Only ever touched client-side.
|
|
18
|
-
let
|
|
19
|
-
const
|
|
16
|
+
let pelePromise = null;
|
|
17
|
+
const loadPele = () => {
|
|
20
18
|
if (typeof window === 'undefined') {
|
|
21
|
-
return Promise.reject(new Error('
|
|
19
|
+
return Promise.reject(new Error('Pele can only be loaded in the browser'));
|
|
22
20
|
}
|
|
23
21
|
const w = window;
|
|
24
|
-
if (w.
|
|
25
|
-
return Promise.resolve(w.
|
|
26
|
-
if (
|
|
27
|
-
return
|
|
28
|
-
|
|
22
|
+
if (w.pele)
|
|
23
|
+
return Promise.resolve(w.pele);
|
|
24
|
+
if (pelePromise)
|
|
25
|
+
return pelePromise;
|
|
26
|
+
pelePromise = new Promise((resolve, reject) => {
|
|
29
27
|
// Reuse a matching script tag if one already exists (added by another instance),
|
|
30
28
|
// otherwise inject a fresh one. `scriptEl` is the element we are waiting on so
|
|
31
29
|
// fail() can always remove it — a script that loaded but never defined
|
|
32
|
-
// window.
|
|
30
|
+
// window.pele (corrupt/partial asset) must not be left behind, or a later
|
|
33
31
|
// retry would attach listeners to an already-fired, dead <script> and hang.
|
|
34
|
-
const existing = document.querySelector(`script[data-
|
|
35
|
-
const scriptEl = existing ?? document.createElement('script');
|
|
32
|
+
const existing = document.querySelector(`script[data-pele-cdn="${PELE_CDN_VERSION}"]`);
|
|
33
|
+
const scriptEl = existing ?? applyCspNonce(document.createElement('script'));
|
|
36
34
|
const settle = () => {
|
|
37
35
|
clearTimeout(timeout);
|
|
38
|
-
if (w.
|
|
39
|
-
resolve(w.
|
|
36
|
+
if (w.pele)
|
|
37
|
+
resolve(w.pele);
|
|
40
38
|
else
|
|
41
|
-
fail(new Error('
|
|
39
|
+
fail(new Error('Pele loaded but window.pele is undefined'));
|
|
42
40
|
};
|
|
43
41
|
const fail = (err) => {
|
|
44
42
|
clearTimeout(timeout);
|
|
45
43
|
scriptEl.remove();
|
|
46
|
-
|
|
44
|
+
pelePromise = null; // allow a retry on the next mount
|
|
47
45
|
reject(err);
|
|
48
46
|
};
|
|
49
|
-
// Wall-clock guard: a stalled
|
|
50
|
-
const timeout = setTimeout(() => fail(new Error('
|
|
47
|
+
// Wall-clock guard: a stalled CDN request may never fire load/error.
|
|
48
|
+
const timeout = setTimeout(() => fail(new Error('Pele load timed out')), 30000);
|
|
51
49
|
if (existing) {
|
|
52
|
-
if (w.
|
|
50
|
+
if (w.pele) {
|
|
53
51
|
clearTimeout(timeout);
|
|
54
|
-
return resolve(w.
|
|
52
|
+
return resolve(w.pele);
|
|
55
53
|
}
|
|
56
54
|
existing.addEventListener('load', settle, { once: true });
|
|
57
|
-
existing.addEventListener('error', () => fail(new Error('Failed to load
|
|
55
|
+
existing.addEventListener('error', () => fail(new Error('Failed to load Pele from jsDelivr')), {
|
|
58
56
|
once: true
|
|
59
57
|
});
|
|
60
58
|
return;
|
|
61
59
|
}
|
|
62
|
-
scriptEl.src =
|
|
60
|
+
scriptEl.src = PELE_CDN;
|
|
63
61
|
scriptEl.async = true;
|
|
64
62
|
scriptEl.crossOrigin = 'anonymous';
|
|
65
|
-
scriptEl.dataset.
|
|
63
|
+
scriptEl.dataset.peleCdn = PELE_CDN_VERSION;
|
|
66
64
|
scriptEl.addEventListener('load', settle, { once: true });
|
|
67
|
-
scriptEl.addEventListener('error', () => fail(new Error('Failed to load
|
|
65
|
+
scriptEl.addEventListener('error', () => fail(new Error('Failed to load Pele from jsDelivr')), {
|
|
68
66
|
once: true
|
|
69
67
|
});
|
|
70
68
|
document.head.appendChild(scriptEl);
|
|
71
69
|
});
|
|
72
|
-
return
|
|
70
|
+
return pelePromise;
|
|
73
71
|
};
|
|
72
|
+
// The colour variables the theme maps onto design tokens, resolved into a downloaded file.
|
|
73
|
+
const PELE_COLOR_VARIABLES = [
|
|
74
|
+
'--pele-bg',
|
|
75
|
+
'--pele-fg',
|
|
76
|
+
'--pele-muted',
|
|
77
|
+
'--pele-line',
|
|
78
|
+
'--pele-surface',
|
|
79
|
+
'--pele-surface-alt',
|
|
80
|
+
'--pele-border',
|
|
81
|
+
'--pele-accent',
|
|
82
|
+
'--pele-critical',
|
|
83
|
+
...Array.from({ length: 8 }, (_, index) => `--pele-series-${index + 1}`)
|
|
84
|
+
];
|
|
74
85
|
/**
|
|
75
86
|
* Sanitize raw mermaid source. Defensive against copy/paste artefacts: BOM,
|
|
76
87
|
* unicode normalization, zero-width + control chars, CRLF, HTML entities, smart
|
|
@@ -146,163 +157,18 @@ export const sanitizeMermaidCode = (code) => {
|
|
|
146
157
|
return code;
|
|
147
158
|
}
|
|
148
159
|
};
|
|
149
|
-
// Map our --color-* design tokens onto mermaid themeVariables. mermaid reads
|
|
150
|
-
// these at initialize() time as concrete colors (not live CSS vars), so we
|
|
151
|
-
// resolve them from the DOM at render time and re-initialize on theme change.
|
|
152
|
-
//
|
|
153
|
-
// Our tokens resolve to `oklab()`/`color-mix()`, which mermaid's color parser
|
|
154
|
-
// rejects ("Unsupported color format"). So we resolve each token to a concrete
|
|
155
|
-
// computed color via a probe element, then normalize it to `#rrggbb`/`rgba()`
|
|
156
|
-
// through a canvas (which serializes any CSS color space to hex/rgb).
|
|
157
|
-
let colorProbe = null;
|
|
158
|
-
let colorCtx = null;
|
|
159
|
-
// Rasterize the color to a 1×1 canvas and read the pixel back: this forces any
|
|
160
|
-
// CSS color space (oklab, color-mix, etc.) down to concrete sRGB bytes we can hex.
|
|
161
|
-
// (A plain fillStyle round-trip keeps oklab as-is in Chrome, which mermaid rejects.)
|
|
162
|
-
const normalizeColor = (color) => {
|
|
163
|
-
if (!colorCtx) {
|
|
164
|
-
const canvas = document.createElement('canvas');
|
|
165
|
-
canvas.width = 1;
|
|
166
|
-
canvas.height = 1;
|
|
167
|
-
colorCtx = canvas.getContext('2d', { willReadFrequently: true });
|
|
168
|
-
}
|
|
169
|
-
if (!colorCtx || !color)
|
|
170
|
-
return null;
|
|
171
|
-
try {
|
|
172
|
-
colorCtx.clearRect(0, 0, 1, 1);
|
|
173
|
-
colorCtx.fillStyle = '#000000';
|
|
174
|
-
colorCtx.fillStyle = color;
|
|
175
|
-
colorCtx.fillRect(0, 0, 1, 1);
|
|
176
|
-
const [r, g, b] = colorCtx.getImageData(0, 0, 1, 1).data;
|
|
177
|
-
return `#${[r, g, b].map((n) => n.toString(16).padStart(2, '0')).join('')}`;
|
|
178
|
-
}
|
|
179
|
-
catch {
|
|
180
|
-
return null;
|
|
181
|
-
}
|
|
182
|
-
};
|
|
183
|
-
// Resolve any CSS color expression (var(), color-mix(), oklab()) to a concrete
|
|
184
|
-
// hex under the active theme, via the probe + canvas readback.
|
|
185
|
-
const readColor = (value, fallback) => {
|
|
186
|
-
if (typeof window === 'undefined')
|
|
187
|
-
return fallback;
|
|
188
|
-
if (!colorProbe) {
|
|
189
|
-
colorProbe = document.createElement('div');
|
|
190
|
-
colorProbe.style.cssText = 'position:absolute;width:0;height:0;pointer-events:none;opacity:0;';
|
|
191
|
-
document.body.appendChild(colorProbe);
|
|
192
|
-
}
|
|
193
|
-
colorProbe.style.color = '';
|
|
194
|
-
colorProbe.style.color = value;
|
|
195
|
-
const resolved = getComputedStyle(colorProbe).color;
|
|
196
|
-
return normalizeColor(resolved) || fallback;
|
|
197
|
-
};
|
|
198
|
-
const readToken = (name, fallback) => readColor(`var(${name})`, fallback);
|
|
199
|
-
// A token mixed `pct`% over the background — the derivation ladder. Low percentages
|
|
200
|
-
// give faint surface tints, higher ones give soft strokes/lines. Everything is
|
|
201
|
-
// derived from a token + the background so it adapts to light/dark automatically.
|
|
202
|
-
const mixOver = (token, pct, fallback) => readColor(`color-mix(in oklab, var(${token}) ${pct}%, var(--color-surface))`, fallback);
|
|
203
|
-
const mixFg = (pct, fallback) => mixOver('--color-neutral', pct, fallback);
|
|
204
|
-
const mixAccent = (pct, fallback) => mixOver('--color-primary', pct, fallback);
|
|
205
|
-
const buildThemeVariables = (fontFamily) => {
|
|
206
|
-
const foreground = readToken('--color-neutral', '#1f2328');
|
|
207
|
-
const background = readToken('--color-surface', '#ffffff');
|
|
208
|
-
// GitHub-flavoured, but not black-and-white: surfaces carry a faint accent tint
|
|
209
|
-
// and borders/links a soft (not saturated) accent, so the diagram has colour
|
|
210
|
-
// without the old "primary everywhere". Text stays at full contrast.
|
|
211
|
-
const nodeFill = mixAccent(7, '#eef1fb'); // faintly accent-tinted node surface
|
|
212
|
-
const nodeStroke = mixAccent(45, '#a6b1f0'); // soft accent border
|
|
213
|
-
const secondaryFill = mixAccent(13, '#e3e8fa'); // secondary nodes / activations
|
|
214
|
-
const surface = mixAccent(6, '#eef1fb'); // clusters / notes / title bands
|
|
215
|
-
const surfaceStroke = mixAccent(28, '#c3ccf3');
|
|
216
|
-
const line = mixAccent(52, '#8f9cec'); // edges / connectors / arrows
|
|
217
|
-
const textMuted = mixFg(50, '#6b7280'); // edge labels, muted text (kept neutral)
|
|
218
|
-
return {
|
|
219
|
-
background,
|
|
220
|
-
// Primary node family — neutral surface + grey border, NOT brand colour.
|
|
221
|
-
primaryColor: nodeFill,
|
|
222
|
-
primaryBorderColor: nodeStroke,
|
|
223
|
-
primaryTextColor: foreground,
|
|
224
|
-
mainBkg: nodeFill,
|
|
225
|
-
nodeBorder: nodeStroke,
|
|
226
|
-
// Secondary / tertiary surfaces (still greyscale).
|
|
227
|
-
secondaryColor: secondaryFill,
|
|
228
|
-
secondaryBorderColor: surfaceStroke,
|
|
229
|
-
secondaryTextColor: foreground,
|
|
230
|
-
tertiaryColor: surface,
|
|
231
|
-
tertiaryBorderColor: surfaceStroke,
|
|
232
|
-
tertiaryTextColor: foreground,
|
|
233
|
-
// Text + lines.
|
|
234
|
-
textColor: foreground,
|
|
235
|
-
lineColor: line,
|
|
236
|
-
titleColor: foreground,
|
|
237
|
-
edgeLabelBackground: background,
|
|
238
|
-
labelColor: foreground,
|
|
239
|
-
// Clusters / subgraphs.
|
|
240
|
-
clusterBkg: surface,
|
|
241
|
-
clusterBorder: surfaceStroke,
|
|
242
|
-
// Notes.
|
|
243
|
-
noteBkgColor: surface,
|
|
244
|
-
noteTextColor: foreground,
|
|
245
|
-
noteBorderColor: surfaceStroke,
|
|
246
|
-
// Sequence diagrams.
|
|
247
|
-
actorBkg: nodeFill,
|
|
248
|
-
actorBorder: nodeStroke,
|
|
249
|
-
actorTextColor: foreground,
|
|
250
|
-
actorLineColor: line,
|
|
251
|
-
signalColor: foreground,
|
|
252
|
-
signalTextColor: foreground,
|
|
253
|
-
labelBoxBkgColor: nodeFill,
|
|
254
|
-
labelBoxBorderColor: nodeStroke,
|
|
255
|
-
labelTextColor: foreground,
|
|
256
|
-
loopTextColor: foreground,
|
|
257
|
-
activationBkgColor: secondaryFill,
|
|
258
|
-
activationBorderColor: nodeStroke,
|
|
259
|
-
// Pie / bar: soft multi-hue from our semantic tokens (mixed over the
|
|
260
|
-
// background so they're muted pastels, not neon) — distinct and colourful,
|
|
261
|
-
// but calm. Full-contrast label text stays readable over these mid tones.
|
|
262
|
-
pie1: mixOver('--color-primary', 60, '#a6b1f0'),
|
|
263
|
-
pie2: mixOver('--color-info', 58, '#8fd0e6'),
|
|
264
|
-
pie3: mixOver('--color-success', 58, '#9bd8b0'),
|
|
265
|
-
pie4: mixOver('--color-warning', 62, '#eacf8f'),
|
|
266
|
-
pie5: mixOver('--color-secondary', 55, '#b7bcc6'),
|
|
267
|
-
pie6: mixOver('--color-danger', 58, '#eaa3a3'),
|
|
268
|
-
pie7: mixOver('--color-primary', 38, '#c8cff5'),
|
|
269
|
-
pie8: mixOver('--color-info', 38, '#bce3ef'),
|
|
270
|
-
pieStrokeColor: background,
|
|
271
|
-
pieOuterStrokeColor: nodeStroke,
|
|
272
|
-
pieTitleTextColor: foreground,
|
|
273
|
-
pieSectionTextColor: foreground,
|
|
274
|
-
pieLegendTextColor: foreground,
|
|
275
|
-
pieStrokeWidth: '1.5px',
|
|
276
|
-
pieOuterStrokeWidth: '1px',
|
|
277
|
-
// Muted edge-label text.
|
|
278
|
-
edgeLabelColor: textMuted,
|
|
279
|
-
fontFamily
|
|
280
|
-
};
|
|
281
|
-
};
|
|
282
|
-
// Scoped SVG polish mermaid's themeVariables can't express: soft-rounded node
|
|
283
|
-
// corners + edge-label pills, and hairline strokes. Scoped by the diagram's own id
|
|
284
|
-
// so it never leaks to other diagrams or the page (an unscoped <style> would).
|
|
285
|
-
const buildScopedStyle = (id) => `#${id} .node rect,#${id} .node polygon,#${id} .node circle,#${id} .cluster rect,` +
|
|
286
|
-
`#${id} rect.actor,#${id} .labelBox{rx:6px;ry:6px}` +
|
|
287
|
-
`#${id} .edgeLabel rect,#${id} .edgeLabel .label-container{rx:4px;ry:4px}` +
|
|
288
|
-
`#${id} .node rect,#${id} .cluster rect,#${id} rect.actor{stroke-width:1px}` +
|
|
289
|
-
`#${id} .edgePath path,#${id} .flowchart-link{stroke-width:1.5px}`;
|
|
290
160
|
/** The bound option props are declared by the base class, so `this.chart` & co. are typed
|
|
291
161
|
* without merging an interface into the class declaration. */
|
|
292
162
|
export class MermaidState extends createBindableStateClass() {
|
|
293
|
-
// The
|
|
163
|
+
// The renderer (Pele) once loaded from the CDN.
|
|
294
164
|
mermaid = $state.raw(null);
|
|
295
165
|
loading = $state(true);
|
|
296
166
|
error = $state(null);
|
|
297
|
-
theme = useTheme();
|
|
298
167
|
// The <svg> host we render into, and the wrapper the panzoom transforms.
|
|
299
168
|
svgHost = null;
|
|
300
169
|
renderToken = 0;
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
get fontFamily() {
|
|
304
|
-
return this.config?.fontFamily || 'ui-sans-serif, system-ui, -apple-system, sans-serif';
|
|
305
|
-
}
|
|
170
|
+
// Unique per instance: Pele prefixes the ids its markers and gradients reference with it.
|
|
171
|
+
idPrefix = createId('mermaid');
|
|
306
172
|
mounted = false;
|
|
307
173
|
// Hover gating: only enable wheel-zoom after the pointer has dwelled a moment,
|
|
308
174
|
// so scrolling the page past the diagram doesn't hijack the wheel.
|
|
@@ -325,11 +191,13 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
325
191
|
return self.touchPan === true;
|
|
326
192
|
}
|
|
327
193
|
});
|
|
328
|
-
// Load
|
|
194
|
+
// Load the renderer once (client only), then render.
|
|
329
195
|
$effect(() => {
|
|
330
196
|
untrack(() => void this.ensureLoaded());
|
|
331
197
|
});
|
|
332
|
-
// Re-render when the chart or config changes.
|
|
198
|
+
// Re-render when the chart or config changes. Colours need no re-render: the SVG draws with
|
|
199
|
+
// `--pele-*` variables that the theme maps onto design tokens, so a light/dark flip or a
|
|
200
|
+
// palette change restyles it in place.
|
|
333
201
|
$effect(() => {
|
|
334
202
|
void this.chart;
|
|
335
203
|
void this.config;
|
|
@@ -338,22 +206,9 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
338
206
|
void this.render();
|
|
339
207
|
});
|
|
340
208
|
});
|
|
341
|
-
// Re-render when the resolved --color-* tokens change: a light/dark flip, a palette
|
|
342
|
-
// swap or runtime design-token edits. Tokens are read from the DOM rather than from
|
|
343
|
-
// the reactive `resolvedTheme`, which flips before the attribute (and the colours) do.
|
|
344
|
-
// `<head>` also mutates on plain navigation, so only re-render when the derived
|
|
345
|
-
// variables actually differ from the ones last handed to mermaid.
|
|
346
|
-
$effect(() => observeThemeTokens(() => {
|
|
347
|
-
if (!this.mounted)
|
|
348
|
-
return;
|
|
349
|
-
if (JSON.stringify(buildThemeVariables(this.fontFamily)) === this.themeSignature)
|
|
350
|
-
return;
|
|
351
|
-
void this.render();
|
|
352
|
-
}));
|
|
353
209
|
onDestroy(() => {
|
|
354
210
|
this.renderToken++;
|
|
355
211
|
clearTimeout(this.hoverTimer);
|
|
356
|
-
this.removeTempContainer();
|
|
357
212
|
});
|
|
358
213
|
}
|
|
359
214
|
ensureLoaded = async () => {
|
|
@@ -362,7 +217,7 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
362
217
|
this.loading = true;
|
|
363
218
|
this.error = null;
|
|
364
219
|
try {
|
|
365
|
-
this.mermaid = await
|
|
220
|
+
this.mermaid = await loadPele();
|
|
366
221
|
this.mounted = true;
|
|
367
222
|
await this.render();
|
|
368
223
|
}
|
|
@@ -372,16 +227,6 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
372
227
|
this.onError?.(this.error);
|
|
373
228
|
}
|
|
374
229
|
};
|
|
375
|
-
// The id of the temporary measuring container mermaid.render() leaves in <body>
|
|
376
|
-
// (it's `d` + our render id). Tracked so we can remove exactly OUR own leftover —
|
|
377
|
-
// never a concurrent instance's still-in-flight node (removing that throws inside
|
|
378
|
-
// mermaid's layout: `x.firstChild` on a null container).
|
|
379
|
-
lastTempId = null;
|
|
380
|
-
removeTempContainer = (tempId = this.lastTempId) => {
|
|
381
|
-
if (typeof document === 'undefined' || !tempId)
|
|
382
|
-
return;
|
|
383
|
-
document.getElementById(tempId)?.remove();
|
|
384
|
-
};
|
|
385
230
|
render = async () => {
|
|
386
231
|
if (!this.mermaid || !this.svgHost || typeof window === 'undefined')
|
|
387
232
|
return;
|
|
@@ -392,7 +237,6 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
392
237
|
if (!hasContent)
|
|
393
238
|
this.loading = true;
|
|
394
239
|
this.error = null;
|
|
395
|
-
let tempId;
|
|
396
240
|
try {
|
|
397
241
|
const sanitized = sanitizeMermaidCode(this.chart ?? '');
|
|
398
242
|
if (!sanitized.trim()) {
|
|
@@ -400,48 +244,31 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
400
244
|
this.svgHost.innerHTML = '';
|
|
401
245
|
return;
|
|
402
246
|
}
|
|
403
|
-
|
|
404
|
-
//
|
|
405
|
-
|
|
406
|
-
const
|
|
407
|
-
const
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
themeVariables: {
|
|
416
|
-
...themeVariables,
|
|
417
|
-
...(userThemeVars || {})
|
|
418
|
-
},
|
|
419
|
-
// Hard-pinned last so caller config can't downgrade the sandbox: the rendered
|
|
420
|
-
// SVG is inserted via innerHTML, so strict sanitization is not optional.
|
|
421
|
-
securityLevel: 'strict',
|
|
422
|
-
suppressErrorRendering: true
|
|
423
|
-
};
|
|
424
|
-
this.mermaid.initialize(config);
|
|
425
|
-
const id = createId(`dmm-${token}`);
|
|
426
|
-
tempId = `d${id}`;
|
|
427
|
-
this.lastTempId = tempId;
|
|
428
|
-
const { svg } = await this.mermaid.render(id, sanitized);
|
|
247
|
+
// Labels are measured in the font they are drawn with: the page's, unless the caller
|
|
248
|
+
// names one. Pele writes it as the fallback of `--pele-font`, so the two always agree.
|
|
249
|
+
const { fontFamily: configFont, ...config } = this.config ?? {};
|
|
250
|
+
const computed = getComputedStyle(this.svgHost);
|
|
251
|
+
const { svg } = this.mermaid.render(sanitized, {
|
|
252
|
+
fontFamily: configFont || computed.fontFamily || 'sans-serif',
|
|
253
|
+
fontSize: parseFloat(computed.fontSize) || 16,
|
|
254
|
+
idPrefix: this.idPrefix,
|
|
255
|
+
// Natural size: the panzoom fits it to the viewport.
|
|
256
|
+
responsive: false,
|
|
257
|
+
config
|
|
258
|
+
});
|
|
429
259
|
// A newer render superseded this one.
|
|
430
260
|
if (token !== this.renderToken || !this.svgHost)
|
|
431
261
|
return;
|
|
262
|
+
// Pele's markup carries no `<style>` element or script, only presentation attributes and
|
|
263
|
+
// inline CSS variables, so it needs no CSP nonce.
|
|
432
264
|
this.svgHost.innerHTML = svg;
|
|
433
|
-
// Scoped polish (rounded corners / hairline strokes) keyed to the produced
|
|
434
|
-
// svg's own id so it can't affect any other diagram or the page.
|
|
435
|
-
const style = document.createElement('style');
|
|
436
|
-
style.textContent = buildScopedStyle(id);
|
|
437
|
-
this.svgHost.prepend(style);
|
|
438
265
|
// Copy sizing attributes from the produced <svg> onto our host.
|
|
439
266
|
const parsed = new DOMParser().parseFromString(svg, 'image/svg+xml').documentElement;
|
|
440
267
|
for (const attr of Array.from(parsed.attributes)) {
|
|
441
|
-
if (attr.name !== 'id')
|
|
268
|
+
if (attr.name !== 'id' && attr.name !== 'class' && attr.name !== 'style') {
|
|
442
269
|
this.svgHost.setAttribute(attr.name, attr.value);
|
|
270
|
+
}
|
|
443
271
|
}
|
|
444
|
-
this.removeTempContainer(tempId);
|
|
445
272
|
this.loading = false;
|
|
446
273
|
// Fit twice: the first pass measures, the second centres at final scale.
|
|
447
274
|
this.panzoom.zoomToFit();
|
|
@@ -451,7 +278,6 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
451
278
|
catch (e) {
|
|
452
279
|
if (token !== this.renderToken)
|
|
453
280
|
return;
|
|
454
|
-
this.removeTempContainer(tempId);
|
|
455
281
|
this.loading = false;
|
|
456
282
|
const err = e instanceof Error ? e : new Error(String(e));
|
|
457
283
|
// Streaming/forgiving mode: the source is transiently invalid between tokens,
|
|
@@ -508,6 +334,17 @@ export class MermaidState extends createBindableStateClass() {
|
|
|
508
334
|
clone.setAttribute('width', styles.width);
|
|
509
335
|
if (!clone.getAttribute('height'))
|
|
510
336
|
clone.setAttribute('height', styles.height);
|
|
337
|
+
// The file leaves the page, and with it the theme that defines `--pele-*`: write the
|
|
338
|
+
// resolved colours onto its root so it keeps the palette it has on screen.
|
|
339
|
+
const probe = svg.ownerDocument.createElement('span');
|
|
340
|
+
svg.parentNode?.appendChild(probe);
|
|
341
|
+
for (const name of PELE_COLOR_VARIABLES) {
|
|
342
|
+
probe.style.color = `var(${name})`;
|
|
343
|
+
const color = getComputedStyle(probe).color;
|
|
344
|
+
if (color)
|
|
345
|
+
clone.style.setProperty(name, color);
|
|
346
|
+
}
|
|
347
|
+
probe.remove();
|
|
511
348
|
return new XMLSerializer().serializeToString(clone);
|
|
512
349
|
};
|
|
513
350
|
triggerDownload = (url, filename, revoke) => {
|
|
@@ -1,9 +1,34 @@
|
|
|
1
1
|
import { setComponentTheme, useComponentTheme } from '../../utils/cva/index.js';
|
|
2
2
|
import { cva } from '../../utils/cva/index.js';
|
|
3
|
+
// Pele draws every diagram with `--pele-*` CSS variables, so the palette is plain CSS on the
|
|
4
|
+
// root: design tokens, with node surfaces, borders and lines a soft mix of the accent over the
|
|
5
|
+
// surface. Light/dark and palette changes restyle the diagram in place, without a re-render.
|
|
6
|
+
const peleColors = [
|
|
7
|
+
'[--pele-bg:var(--color-surface-raised)]',
|
|
8
|
+
'[--pele-fg:var(--color-neutral)]',
|
|
9
|
+
'[--pele-muted:color-mix(in_oklab,var(--color-neutral)_60%,var(--color-surface-raised))]',
|
|
10
|
+
'[--pele-line:color-mix(in_oklab,var(--color-primary)_65%,var(--color-surface-raised))]',
|
|
11
|
+
'[--pele-surface:color-mix(in_oklab,var(--color-primary)_7%,var(--color-surface-raised))]',
|
|
12
|
+
'[--pele-surface-alt:color-mix(in_oklab,var(--color-primary)_13%,var(--color-surface-raised))]',
|
|
13
|
+
'[--pele-border:color-mix(in_oklab,var(--color-primary)_55%,var(--color-surface-raised))]',
|
|
14
|
+
'[--pele-accent:var(--color-primary)]',
|
|
15
|
+
'[--pele-critical:var(--color-danger)]',
|
|
16
|
+
'[--pele-error:var(--color-danger)]',
|
|
17
|
+
'[--pele-radius:var(--radius-sm)]',
|
|
18
|
+
// Charts and colour-coded categories: the semantic hues, softened over the surface.
|
|
19
|
+
'[--pele-series-1:color-mix(in_oklab,var(--color-primary)_70%,var(--color-surface-raised))]',
|
|
20
|
+
'[--pele-series-2:color-mix(in_oklab,var(--color-info)_70%,var(--color-surface-raised))]',
|
|
21
|
+
'[--pele-series-3:color-mix(in_oklab,var(--color-success)_70%,var(--color-surface-raised))]',
|
|
22
|
+
'[--pele-series-4:color-mix(in_oklab,var(--color-warning)_70%,var(--color-surface-raised))]',
|
|
23
|
+
'[--pele-series-5:color-mix(in_oklab,var(--color-secondary)_70%,var(--color-surface-raised))]',
|
|
24
|
+
'[--pele-series-6:color-mix(in_oklab,var(--color-danger)_70%,var(--color-surface-raised))]',
|
|
25
|
+
'[--pele-series-7:color-mix(in_oklab,var(--color-primary)_40%,var(--color-surface-raised))]',
|
|
26
|
+
'[--pele-series-8:color-mix(in_oklab,var(--color-info)_40%,var(--color-surface-raised))]'
|
|
27
|
+
].join(' ');
|
|
3
28
|
// The outer element: the panzoom "owner" viewport. The expand control opens the same
|
|
4
29
|
// diagram in a fullScreen Dialog rather than promoting this element to an overlay.
|
|
5
30
|
const defaultMermaidRoot = cva({
|
|
6
|
-
base:
|
|
31
|
+
base: `group/mermaid relative w-full overflow-hidden rounded-sm border border-neutral-muted bg-surface-raised text-neutral ${peleColors}`,
|
|
7
32
|
variants: {
|
|
8
33
|
size: {
|
|
9
34
|
small: 'h-64 min-h-48',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { MetadataListProps } from './metadataList.props.js';
|
|
2
|
-
declare const MetadataList: import("svelte").Component<MetadataListProps, {}, "
|
|
2
|
+
declare const MetadataList: import("svelte").Component<MetadataListProps, {}, "ref" | "expanded">;
|
|
3
3
|
type MetadataList = ReturnType<typeof MetadataList>;
|
|
4
4
|
export default MetadataList;
|