@flikk/ui 1.0.0-beta.31 → 1.0.0-beta.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +295 -22
- package/dist/components/ai/AgentRequest/AgentRequest.animations.d.ts +25 -0
- package/dist/components/ai/AgentRequest/AgentRequest.animations.js +81 -0
- package/dist/components/ai/AgentRequest/AgentRequest.d.ts +3 -0
- package/dist/components/ai/AgentRequest/AgentRequest.js +435 -0
- package/dist/components/ai/AgentRequest/AgentRequest.theme.d.ts +2 -0
- package/dist/components/ai/AgentRequest/AgentRequest.theme.js +106 -0
- package/dist/components/ai/AgentRequest/AgentRequest.types.d.ts +241 -0
- package/dist/components/ai/AgentRequest/index.d.ts +3 -0
- package/dist/components/ai/CodeBlock/CodeBlock.theme.js +1 -1
- package/dist/components/ai/PromptInput/PromptInput.js +2 -2
- package/dist/components/ai/PromptInput/PromptInput.theme.js +2 -2
- package/dist/components/ai/PromptSuggestion/PromptSuggestion.theme.js +2 -2
- package/dist/components/ai/Reasoning/Reasoning.js +27 -3
- package/dist/components/ai/Reasoning/Reasoning.theme.d.ts +6 -0
- package/dist/components/ai/Reasoning/Reasoning.theme.js +36 -0
- package/dist/components/ai/Reasoning/Reasoning.types.d.ts +58 -5
- package/dist/components/ai/Reasoning/ReasoningTrace.d.ts +11 -0
- package/dist/components/ai/Reasoning/ReasoningTrace.js +84 -0
- package/dist/components/ai/Reasoning/index.d.ts +2 -1
- package/dist/components/ai/StreamingResponse/AnimatedText.d.ts +7 -0
- package/dist/components/ai/StreamingResponse/AnimatedText.js +8 -7
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.d.ts +5 -0
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.js +4 -4
- package/dist/components/ai/StreamingResponse/StreamingCursor.d.ts +2 -2
- package/dist/components/ai/StreamingResponse/StreamingCursor.js +10 -7
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.d.ts +10 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.js +59 -33
- package/dist/components/ai/StreamingResponse/StreamingResponse.js +13 -7
- package/dist/components/ai/StreamingResponse/StreamingResponse.types.d.ts +33 -2
- package/dist/components/ai/StreamingResponse/StreamingSurface.d.ts +13 -0
- package/dist/components/ai/StreamingResponse/StreamingSurface.js +38 -0
- package/dist/components/ai/StreamingResponse/WordAnimationContext.d.ts +5 -0
- package/dist/components/ai/StreamingResponse/WordAnimationContext.js +5 -4
- package/dist/components/ai/StreamingResponse/index.d.ts +4 -2
- package/dist/components/ai/TokenCounter/TokenCounter.theme.js +1 -1
- package/dist/components/ai/index.d.ts +3 -2
- package/dist/components/ai/index.js +4 -0
- package/dist/components/canvas/BaseNode.js +1 -1
- package/dist/components/canvas/CanvasToolbar.js +0 -1
- package/dist/components/canvas/Edge.js +2 -2
- package/dist/components/canvas/NodeControls.js +0 -1
- package/dist/components/canvas/NodeRenderer.js +2 -2
- package/dist/components/charts/ActivityRings/ActivityRings.js +2 -2
- package/dist/components/charts/ActivityRings/ActivityRings.theme.js +1 -1
- package/dist/components/charts/AreaChart/AreaChart.js +3 -3
- package/dist/components/charts/AreaChart/AreaChart.theme.js +3 -3
- package/dist/components/charts/BarChart/BarChart.js +4 -4
- package/dist/components/charts/ComboChart/BarRenderer.js +2 -2
- package/dist/components/charts/ComboChart/BarRenderer.types.d.ts +1 -1
- package/dist/components/charts/ComboChart/ComboChartCanvas.js +1 -1
- package/dist/components/charts/ComboChart/LineRenderer.js +1 -1
- package/dist/components/charts/ComboChart/LineRenderer.types.d.ts +1 -1
- package/dist/components/charts/DonutChart/DonutChart.theme.js +4 -4
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.js +1 -1
- package/dist/components/charts/Heatmap/Heatmap.js +49 -42
- package/dist/components/charts/Heatmap/Heatmap.theme.d.ts +6 -2
- package/dist/components/charts/Heatmap/Heatmap.theme.js +20 -8
- package/dist/components/charts/Heatmap/Heatmap.types.d.ts +49 -82
- package/dist/components/charts/Heatmap/HeatmapCell.js +30 -81
- package/dist/components/charts/Heatmap/HeatmapLegend.d.ts +7 -6
- package/dist/components/charts/Heatmap/HeatmapLegend.js +6 -6
- package/dist/components/charts/Heatmap/index.d.ts +1 -1
- package/dist/components/charts/Heatmap/utils/heatmapUtils.d.ts +7 -12
- package/dist/components/charts/Heatmap/utils/heatmapUtils.js +16 -61
- package/dist/components/charts/Heatmap/utils/heatmapUtils.test.d.ts +1 -0
- package/dist/components/charts/HorizontalBarChart/HorizontalBarChart.js +1 -1
- package/dist/components/charts/LineChart/LineChart.js +2 -2
- package/dist/components/charts/LollipopChart/LollipopChart.js +1 -1
- package/dist/components/charts/RadarChart/RadarChart.js +1 -1
- package/dist/components/charts/StackedBarChart/StackedBarChart.js +3 -3
- package/dist/components/charts/hooks/useChartAccessibility.js +9 -6
- package/dist/components/charts/index.d.ts +4 -8
- package/dist/components/charts/index.js +2 -4
- package/dist/components/charts/shared/ChartText/ChartText.theme.js +1 -1
- package/dist/components/charts/shared/index.d.ts +1 -1
- package/dist/components/charts/theme/chart.theme.js +3 -3
- package/dist/components/charts/utils/animation-utils.d.ts +12 -7
- package/dist/components/charts/utils/animation-utils.js +19 -19
- package/dist/components/core/Accordion/Accordion.theme.js +1 -1
- package/dist/components/core/Alert/Alert.animations.d.ts +11 -4
- package/dist/components/core/Alert/Alert.animations.js +11 -4
- package/dist/components/core/Alert/Alert.js +16 -2
- package/dist/components/core/Alert/Alert.theme.js +1 -1
- package/dist/components/core/Alert/Alert.types.d.ts +4 -2
- package/dist/components/core/AlertDialog/AlertDialog.js +2 -2
- package/dist/components/core/Avatar/Avatar.theme.js +1 -1
- package/dist/components/core/Badge/Badge.animations.d.ts +0 -5
- package/dist/components/core/Badge/Badge.animations.js +5 -84
- package/dist/components/core/Badge/Badge.d.ts +7 -4
- package/dist/components/core/Badge/Badge.js +27 -64
- package/dist/components/core/Badge/Badge.theme.js +8 -12
- package/dist/components/core/Badge/Badge.types.d.ts +18 -34
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.js +4 -4
- package/dist/components/core/Button/Button.js +7 -43
- package/dist/components/core/Button/Button.theme.js +2 -2
- package/dist/components/core/Button/Button.types.d.ts +8 -12
- package/dist/components/core/Button/index.d.ts +0 -2
- package/dist/components/core/Calendar/Calendar.theme.js +1 -1
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.theme.js +2 -2
- package/dist/components/core/Card/Card.js +7 -2
- package/dist/components/core/Card/Card.theme.js +29 -1
- package/dist/components/core/Card/Card.types.d.ts +20 -0
- package/dist/components/core/Card/CardBody.js +9 -1
- package/dist/components/core/Card/CardContext.d.ts +13 -0
- package/dist/components/core/Card/CardContext.js +14 -0
- package/dist/components/core/Card/CardHeader.js +4 -1
- package/dist/components/core/ContextMenu/ContextMenu.theme.js +4 -3
- package/dist/components/core/ContextMenu/ContextMenu.types.d.ts +8 -1
- package/dist/components/core/ContextMenu/ContextMenuSub.d.ts +11 -1
- package/dist/components/core/ContextMenu/ContextMenuSub.js +35 -22
- package/dist/components/core/ContextMenu/ContextMenuSubBody.js +14 -3
- package/dist/components/core/ContextMenu/ContextMenuSubTrigger.js +21 -8
- package/dist/components/core/DragDrop/DragDrop.theme.js +2 -2
- package/dist/components/core/Drawer/Drawer.theme.js +1 -1
- package/dist/components/core/Drawer/DrawerHeader.js +0 -1
- package/dist/components/core/Dropdown/DropdownMenu.js +22 -7
- package/dist/components/core/Link/Link.js +1 -1
- package/dist/components/core/Masonry/Masonry.theme.js +1 -1
- package/dist/components/core/MenuItem/MenuItem.js +2 -1
- package/dist/components/core/MenuItem/MenuItem.theme.js +13 -1
- package/dist/components/core/Message/Message.js +2 -0
- package/dist/components/core/Message/Message.theme.js +3 -3
- package/dist/components/core/Modal/Modal.animations.d.ts +1 -1
- package/dist/components/core/Modal/Modal.animations.js +50 -11
- package/dist/components/core/Modal/Modal.js +5 -1
- package/dist/components/core/Modal/Modal.theme.js +1 -1
- package/dist/components/core/Modal/ModalHeader.js +0 -1
- package/dist/components/core/ModalStack/ModalStackModal.js +3 -1
- package/dist/components/core/NavItem/NavItem.js +3 -2
- package/dist/components/core/NavItem/NavItem.theme.js +1 -1
- package/dist/components/core/OfflineIndicator/OfflineIndicator.theme.js +4 -2
- package/dist/components/core/PageHeading/PageHeading.theme.js +1 -1
- package/dist/components/core/Pagination/Pagination.theme.js +2 -2
- package/dist/components/core/Pill/Pill.js +2 -1
- package/dist/components/core/Pill/Pill.theme.js +4 -2
- package/dist/components/core/Popover/PopoverBody.js +16 -5
- package/dist/components/core/Progress/Progress.d.ts +0 -25
- package/dist/components/core/Progress/Progress.js +79 -11
- package/dist/components/core/Progress/Progress.theme.js +17 -0
- package/dist/components/core/Progress/Progress.types.d.ts +47 -1
- package/dist/components/core/Rating/Rating.theme.js +1 -1
- package/dist/components/core/Rating/Rating.types.d.ts +3 -2
- package/dist/components/core/ScrollArea/ScrollArea.js +1 -1
- package/dist/components/core/ScrollArea/ScrollArea.theme.js +1 -1
- package/dist/components/core/Segmented/Segmented.theme.js +3 -3
- package/dist/components/core/Segmented/SegmentedContext.js +1 -0
- package/dist/components/core/Sidebar/Sidebar.js +5 -2
- package/dist/components/core/Sidebar/Sidebar.theme.js +2 -2
- package/dist/components/core/Sidebar/SidebarContent.js +1 -1
- package/dist/components/core/Sidebar/SidebarHeader.js +1 -1
- package/dist/components/core/Sidebar/SidebarSearch.js +2 -2
- package/dist/components/core/Sidebar/SidebarToggle.js +1 -1
- package/dist/components/core/Sidebar/SidebarUserProfile.js +1 -1
- package/dist/components/core/Sortable/Sortable.theme.js +1 -1
- package/dist/components/core/Tabs/Tabs.theme.js +1 -1
- package/dist/components/core/Tag/Tag.theme.js +1 -1
- package/dist/components/core/Toast/ToastProvider.js +1 -1
- package/dist/components/core/Tree/Tree.theme.js +1 -1
- package/dist/components/core/index.d.ts +0 -2
- package/dist/components/core/index.js +0 -4
- package/dist/components/core/shared/ChartTooltip/ChartTooltip.animations.d.ts +4 -0
- package/dist/components/core/shared/ChartTooltip/ChartTooltip.animations.js +20 -0
- package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.js +1 -1
- package/dist/components/core/shared/Ripple.d.ts +16 -0
- package/dist/components/core/shared/Ripple.js +141 -0
- package/dist/components/data-display/GanttChart/GanttChart.theme.js +6 -6
- package/dist/components/data-display/GanttChart/GanttTaskBar.js +1 -1
- package/dist/components/data-display/GanttChart/GanttTimelineHeader.js +1 -1
- package/dist/components/data-display/GanttChart/GanttToolbar.js +0 -1
- package/dist/components/data-display/KPI/KPI.js +11 -20
- package/dist/components/data-display/KPI/KPI.theme.js +8 -4
- package/dist/components/data-display/Metric/Metric.theme.js +4 -4
- package/dist/components/data-display/Table/Table.theme.js +2 -2
- package/dist/components/data-display/Table/TableColumnManager.js +1 -2
- package/dist/components/data-display/Table/TableContext.js +1 -0
- package/dist/components/data-display/Table/TableFilter.js +9 -2
- package/dist/components/data-display/Table/TableSelectionHeader.js +1 -1
- package/dist/components/data-display/Timeline/Timeline.theme.js +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.js +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +4 -4
- package/dist/components/effects/Neumorphic/InsetCircleButton.js +1 -1
- package/dist/components/effects/Overlay/Overlay.js +7 -3
- package/dist/components/effects/index.d.ts +0 -32
- package/dist/components/effects/index.js +0 -16
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.d.ts +0 -2
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.js +1 -93
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.types.d.ts +0 -10
- package/dist/components/effects/shared/ShaderCanvas/index.d.ts +1 -1
- package/dist/components/effects/shared/index.d.ts +1 -3
- package/dist/components/effects/shared/shaderNoise.glsl.d.ts +1 -1
- package/dist/components/effects/shared/shaderNoise.glsl.js +2 -11
- package/dist/components/forms/Checkbox/Checkbox.theme.js +1 -1
- package/dist/components/forms/ColorPicker/ColorPickerHeader.js +1 -1
- package/dist/components/forms/ColorPicker/ColorPickerImage.js +1 -1
- package/dist/components/forms/Combobox/Combobox.js +2 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.theme.js +1 -1
- package/dist/components/forms/DateRangePicker/DateRangePickerContext.js +1 -0
- package/dist/components/forms/FileUpload/FileUpload.theme.js +2 -2
- package/dist/components/forms/FileUpload/FileUploadProgress.theme.js +1 -1
- package/dist/components/forms/InputAddress/InputAddress.types.d.ts +2 -2
- package/dist/components/forms/Radio/Radio.theme.js +1 -1
- package/dist/components/forms/RichTextEditor/RichTextEditor.d.ts +12 -16
- package/dist/components/forms/RichTextEditor/RichTextEditor.js +165 -1680
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.d.ts +12 -56
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.js +60 -118
- package/dist/components/forms/RichTextEditor/RichTextEditor.types.d.ts +62 -126
- package/dist/components/forms/RichTextEditor/RichTextLinkField.d.ts +18 -0
- package/dist/components/forms/RichTextEditor/RichTextLinkField.js +46 -0
- package/dist/components/forms/RichTextEditor/RichTextToolbar.d.ts +15 -0
- package/dist/components/forms/RichTextEditor/RichTextToolbar.js +93 -0
- package/dist/components/forms/RichTextEditor/editorCommands.d.ts +50 -0
- package/dist/components/forms/RichTextEditor/editorCommands.js +58 -0
- package/dist/components/forms/RichTextEditor/editorState.d.ts +19 -0
- package/dist/components/forms/RichTextEditor/editorState.js +103 -0
- package/dist/components/forms/RichTextEditor/index.d.ts +5 -3
- package/dist/components/forms/RichTextEditor/sanitizeHtml.d.ts +38 -0
- package/dist/components/forms/RichTextEditor/sanitizeHtml.js +179 -0
- package/dist/components/forms/RichTextEditor/sanitizeHtml.test.d.ts +1 -0
- package/dist/components/forms/Select/Select.js +4 -4
- package/dist/components/forms/Select/Select.types.d.ts +70 -7
- package/dist/components/forms/Select/useSelectState.d.ts +9 -3
- package/dist/components/forms/Select/useSelectState.js +4 -1
- package/dist/components/forms/SelectableCard/SelectableCard.js +2 -1
- package/dist/components/forms/SelectableCard/SelectableCard.theme.js +1 -1
- package/dist/components/forms/Switch/Switch.theme.js +2 -2
- package/dist/components/forms/TimePicker/TimePicker.theme.js +1 -1
- package/dist/components/forms/TimePicker/TimePickerTrigger.js +1 -1
- package/dist/components/forms/forms.theme.js +19 -5
- package/dist/components/forms/index.js +1 -0
- package/dist/components/generative/FormShell.d.ts +22 -0
- package/dist/components/generative/FormShell.js +102 -0
- package/dist/components/generative/GenerativeView.d.ts +52 -1
- package/dist/components/generative/GenerativeView.js +203 -11
- package/dist/components/generative/actions.d.ts +5 -0
- package/dist/components/generative/ai-sdk/index.d.ts +1 -0
- package/dist/components/generative/ai-sdk/index.js +1 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.d.ts +52 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.js +73 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.test.d.ts +1 -0
- package/dist/components/generative/fieldBinding.d.ts +31 -0
- package/dist/components/generative/fieldBinding.js +33 -0
- package/dist/components/generative/fieldBinding.test.d.ts +1 -0
- package/dist/components/generative/formScope.d.ts +71 -0
- package/dist/components/generative/formScope.js +135 -0
- package/dist/components/generative/index.d.ts +4 -0
- package/dist/components/generative/index.js +4 -0
- package/dist/components/generative/registry.d.ts +2 -0
- package/dist/components/generative/registry.js +10 -10
- package/dist/components/generative/schema.generated.js +178 -292
- package/dist/components/generative/toToolResult.d.ts +21 -0
- package/dist/components/generative/toToolResult.js +15 -0
- package/dist/components/generative/toToolResult.test.d.ts +1 -0
- package/dist/components/generative/validate.d.ts +10 -1
- package/dist/components/generative/validate.js +126 -11
- package/dist/components/layout/Grid/Grid.js +1 -0
- package/dist/components/layout/Section/Section.theme.js +1 -1
- package/dist/components/layout/Stack/Stack.js +1 -0
- package/dist/generative.schema.json +178 -292
- package/dist/index.js +1 -4
- package/dist/registry.json +2599 -2375
- package/dist/shadcn-compat.css +5 -5
- package/dist/styles/theme.test.d.ts +1 -0
- package/dist/styles.css +1 -1
- package/dist/test/render.d.ts +17 -0
- package/dist/themes/precision.css +232 -0
- package/dist/tools.json +179 -294
- package/dist/utils/index.d.ts +0 -1
- package/package.json +31 -1
- package/src/global.scss +21 -28
- package/src/styles/theme.css +124 -41
- package/src/styles/theme.test.ts +119 -0
- package/tailwind.preset.cjs +30 -20
- package/dist/components/charts/FunnelChart/FunnelChart.animations.d.ts +0 -35
- package/dist/components/charts/FunnelChart/FunnelChart.animations.js +0 -59
- package/dist/components/charts/FunnelChart/FunnelChart.d.ts +0 -8
- package/dist/components/charts/FunnelChart/FunnelChart.js +0 -410
- package/dist/components/charts/FunnelChart/FunnelChart.theme.d.ts +0 -2
- package/dist/components/charts/FunnelChart/FunnelChart.theme.js +0 -12
- package/dist/components/charts/FunnelChart/FunnelChart.types.d.ts +0 -105
- package/dist/components/charts/FunnelChart/index.d.ts +0 -4
- package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +0 -9
- package/dist/components/charts/ScatterPlot/ScatterPlot.js +0 -208
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.d.ts +0 -18
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.js +0 -42
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.d.ts +0 -60
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.js +0 -19
- package/dist/components/charts/ScatterPlot/index.d.ts +0 -3
- package/dist/components/core/Button/Button.ripple.d.ts +0 -71
- package/dist/components/core/Button/Button.ripple.js +0 -236
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.d.ts +0 -4
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.theme.d.ts +0 -12
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.types.d.ts +0 -23
- package/dist/components/core/Calendar/CalendarEvent/index.d.ts +0 -2
- package/dist/components/core/CardStack/CardStack.animations.d.ts +0 -47
- package/dist/components/core/CardStack/CardStack.d.ts +0 -3
- package/dist/components/core/CardStack/CardStack.js +0 -187
- package/dist/components/core/CardStack/CardStack.theme.d.ts +0 -6
- package/dist/components/core/CardStack/CardStack.theme.js +0 -33
- package/dist/components/core/CardStack/CardStack.types.d.ts +0 -139
- package/dist/components/core/CardStack/index.d.ts +0 -7
- package/dist/components/core/Carousel/Carousel.d.ts +0 -3
- package/dist/components/core/Carousel/Carousel.js +0 -83
- package/dist/components/core/Carousel/Carousel.theme.d.ts +0 -10
- package/dist/components/core/Carousel/Carousel.theme.js +0 -20
- package/dist/components/core/Carousel/Carousel.types.d.ts +0 -113
- package/dist/components/core/Carousel/CarouselBody.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselBody.js +0 -59
- package/dist/components/core/Carousel/CarouselContext.d.ts +0 -3
- package/dist/components/core/Carousel/CarouselContext.js +0 -13
- package/dist/components/core/Carousel/CarouselItem.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselItem.js +0 -11
- package/dist/components/core/Carousel/CarouselNext.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselNext.js +0 -16
- package/dist/components/core/Carousel/CarouselPrevious.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselPrevious.js +0 -16
- package/dist/components/core/Carousel/index.d.ts +0 -3
- package/dist/components/effects/ColorPanels/ColorPanels.d.ts +0 -8
- package/dist/components/effects/ColorPanels/ColorPanels.js +0 -66
- package/dist/components/effects/ColorPanels/ColorPanels.shaders.d.ts +0 -12
- package/dist/components/effects/ColorPanels/ColorPanels.shaders.js +0 -218
- package/dist/components/effects/ColorPanels/ColorPanels.types.d.ts +0 -29
- package/dist/components/effects/ColorPanels/ColorPanels.types.js +0 -3
- package/dist/components/effects/ColorPanels/index.d.ts +0 -2
- package/dist/components/effects/FlutedGlass/FlutedGlass.d.ts +0 -9
- package/dist/components/effects/FlutedGlass/FlutedGlass.js +0 -80
- package/dist/components/effects/FlutedGlass/FlutedGlass.shaders.d.ts +0 -12
- package/dist/components/effects/FlutedGlass/FlutedGlass.shaders.js +0 -335
- package/dist/components/effects/FlutedGlass/FlutedGlass.types.d.ts +0 -61
- package/dist/components/effects/FlutedGlass/FlutedGlass.types.js +0 -16
- package/dist/components/effects/FlutedGlass/index.d.ts +0 -3
- package/dist/components/effects/GlassEffect/GlassEffect.d.ts +0 -15
- package/dist/components/effects/GlassEffect/GlassEffect.js +0 -38
- package/dist/components/effects/GlassEffect/GlassEffect.types.d.ts +0 -19
- package/dist/components/effects/GlassEffect/index.d.ts +0 -2
- package/dist/components/effects/GlassSurface/GlassSurface.d.ts +0 -8
- package/dist/components/effects/GlassSurface/GlassSurface.js +0 -250
- package/dist/components/effects/GlassSurface/GlassSurface.types.d.ts +0 -66
- package/dist/components/effects/GlassSurface/index.d.ts +0 -2
- package/dist/components/effects/GodRays/GodRays.d.ts +0 -8
- package/dist/components/effects/GodRays/GodRays.js +0 -68
- package/dist/components/effects/GodRays/GodRays.shaders.d.ts +0 -10
- package/dist/components/effects/GodRays/GodRays.shaders.js +0 -128
- package/dist/components/effects/GodRays/GodRays.types.d.ts +0 -25
- package/dist/components/effects/GodRays/GodRays.types.js +0 -3
- package/dist/components/effects/GodRays/index.d.ts +0 -2
- package/dist/components/effects/GridPattern/GridPattern.d.ts +0 -18
- package/dist/components/effects/GridPattern/GridPattern.js +0 -65
- package/dist/components/effects/GridPattern/GridPattern.types.d.ts +0 -47
- package/dist/components/effects/GridPattern/index.d.ts +0 -2
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.d.ts +0 -10
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.js +0 -78
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.shaders.d.ts +0 -22
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.shaders.js +0 -239
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.types.d.ts +0 -52
- package/dist/components/effects/HalftoneCmyk/index.d.ts +0 -2
- package/dist/components/effects/HalftoneDots/HalftoneDots.d.ts +0 -9
- package/dist/components/effects/HalftoneDots/HalftoneDots.js +0 -68
- package/dist/components/effects/HalftoneDots/HalftoneDots.shaders.d.ts +0 -13
- package/dist/components/effects/HalftoneDots/HalftoneDots.shaders.js +0 -296
- package/dist/components/effects/HalftoneDots/HalftoneDots.types.d.ts +0 -43
- package/dist/components/effects/HalftoneDots/HalftoneDots.types.js +0 -12
- package/dist/components/effects/HalftoneDots/index.d.ts +0 -3
- package/dist/components/effects/ImageDithering/ImageDithering.d.ts +0 -9
- package/dist/components/effects/ImageDithering/ImageDithering.js +0 -68
- package/dist/components/effects/ImageDithering/ImageDithering.shaders.d.ts +0 -12
- package/dist/components/effects/ImageDithering/ImageDithering.shaders.js +0 -117
- package/dist/components/effects/ImageDithering/ImageDithering.types.d.ts +0 -30
- package/dist/components/effects/ImageDithering/ImageDithering.types.js +0 -8
- package/dist/components/effects/ImageDithering/index.d.ts +0 -3
- package/dist/components/effects/MagneticElement/MagneticElement.d.ts +0 -30
- package/dist/components/effects/MagneticElement/MagneticElement.js +0 -111
- package/dist/components/effects/MagneticElement/MagneticElement.types.d.ts +0 -44
- package/dist/components/effects/MagneticElement/index.d.ts +0 -2
- package/dist/components/effects/Metaballs/Metaballs.d.ts +0 -8
- package/dist/components/effects/Metaballs/Metaballs.js +0 -59
- package/dist/components/effects/Metaballs/Metaballs.shaders.d.ts +0 -10
- package/dist/components/effects/Metaballs/Metaballs.shaders.js +0 -102
- package/dist/components/effects/Metaballs/Metaballs.types.d.ts +0 -16
- package/dist/components/effects/Metaballs/Metaballs.types.js +0 -3
- package/dist/components/effects/Metaballs/index.d.ts +0 -2
- package/dist/components/effects/PaperTexture/PaperTexture.d.ts +0 -9
- package/dist/components/effects/PaperTexture/PaperTexture.js +0 -61
- package/dist/components/effects/PaperTexture/PaperTexture.shaders.d.ts +0 -22
- package/dist/components/effects/PaperTexture/PaperTexture.shaders.js +0 -145
- package/dist/components/effects/PaperTexture/PaperTexture.types.d.ts +0 -19
- package/dist/components/effects/PaperTexture/index.d.ts +0 -2
- package/dist/components/effects/PulsingBorder/PulsingBorder.d.ts +0 -27
- package/dist/components/effects/PulsingBorder/PulsingBorder.js +0 -174
- package/dist/components/effects/PulsingBorder/PulsingBorder.shaders.d.ts +0 -14
- package/dist/components/effects/PulsingBorder/PulsingBorder.shaders.js +0 -258
- package/dist/components/effects/PulsingBorder/PulsingBorder.types.d.ts +0 -75
- package/dist/components/effects/PulsingBorder/PulsingBorder.types.js +0 -3
- package/dist/components/effects/PulsingBorder/index.d.ts +0 -2
- package/dist/components/effects/SmokeRing/SmokeRing.d.ts +0 -8
- package/dist/components/effects/SmokeRing/SmokeRing.js +0 -62
- package/dist/components/effects/SmokeRing/SmokeRing.shaders.d.ts +0 -14
- package/dist/components/effects/SmokeRing/SmokeRing.shaders.js +0 -130
- package/dist/components/effects/SmokeRing/SmokeRing.types.d.ts +0 -22
- package/dist/components/effects/SmokeRing/SmokeRing.types.js +0 -3
- package/dist/components/effects/SmokeRing/index.d.ts +0 -2
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.d.ts +0 -9
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.js +0 -59
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.shaders.d.ts +0 -14
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.shaders.js +0 -129
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.types.d.ts +0 -23
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.types.js +0 -3
- package/dist/components/effects/StaticGradientMesh/index.d.ts +0 -2
- package/dist/components/effects/Water/Water.d.ts +0 -9
- package/dist/components/effects/Water/Water.js +0 -65
- package/dist/components/effects/Water/Water.shaders.d.ts +0 -11
- package/dist/components/effects/Water/Water.shaders.js +0 -123
- package/dist/components/effects/Water/Water.types.d.ts +0 -25
- package/dist/components/effects/Water/index.d.ts +0 -2
- package/dist/components/effects/shared/bayerMatrices.glsl.d.ts +0 -10
- package/dist/components/effects/shared/bayerMatrices.glsl.js +0 -44
- package/dist/components/effects/shared/imageUV.glsl.d.ts +0 -12
- package/dist/components/effects/shared/imageUV.glsl.js +0 -26
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.d.ts +0 -7
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.js +0 -32
- package/dist/utils/calendarUtils.d.ts +0 -60
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.theme.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.theme.js +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.types.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltipContent.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/index.d.ts +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ActionContext } from "./actions";
|
|
2
|
+
import { ActionDescriptor, JSONValue } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* The compact, provider-neutral payload a model reads after a user interacts
|
|
5
|
+
* with generated UI.
|
|
6
|
+
*
|
|
7
|
+
* Deliberately NOT an Anthropic or OpenAI tool-result envelope — those shapes
|
|
8
|
+
* differ, and baking one in would make the core quietly provider-specific.
|
|
9
|
+
* Wrap this in your provider's envelope at the call site (or use the
|
|
10
|
+
* `@flikk/ui/generative/ai-sdk` adapter, which does it for you).
|
|
11
|
+
*/
|
|
12
|
+
export interface GenerativeToolResult {
|
|
13
|
+
action: string;
|
|
14
|
+
component: string;
|
|
15
|
+
nodeId?: string;
|
|
16
|
+
payload?: JSONValue;
|
|
17
|
+
values?: Record<string, JSONValue>;
|
|
18
|
+
data?: JSONValue;
|
|
19
|
+
}
|
|
20
|
+
/** Shape an action dispatch into a payload a model can consume. */
|
|
21
|
+
export declare function toToolResult(action: ActionDescriptor, ctx: ActionContext): GenerativeToolResult;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Shape an action dispatch into a payload a model can consume. */
|
|
2
|
+
function toToolResult(action, ctx) {
|
|
3
|
+
return {
|
|
4
|
+
action: action.type,
|
|
5
|
+
component: ctx.component,
|
|
6
|
+
...(ctx.nodeId !== undefined ? { nodeId: ctx.nodeId } : {}),
|
|
7
|
+
...(action.payload !== undefined ? { payload: action.payload } : {}),
|
|
8
|
+
// Spread into a plain object: the values bag has a null prototype, which
|
|
9
|
+
// some serializers and equality checks treat differently.
|
|
10
|
+
...(ctx.values !== undefined ? { values: { ...ctx.values } } : {}),
|
|
11
|
+
...(ctx.data !== undefined ? { data: ctx.data } : {}),
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { toToolResult };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -3,7 +3,7 @@ import { GenerativeSchemaDoc } from "./schemaTypes";
|
|
|
3
3
|
export interface ValidationIssue {
|
|
4
4
|
/** JSONPath-ish locator, e.g. `$.children[2].props.color`. */
|
|
5
5
|
path: string;
|
|
6
|
-
code: "invalid-node" | "unknown-component" | "blocked-prop" | "unknown-prop" | "invalid-enum" | "coerced-value" | "invalid-value" | "invalid-shape" | "missing-required" | "applied-default" | "children-ignored" | "invalid-action" | "max-depth-exceeded";
|
|
6
|
+
code: "invalid-node" | "unknown-component" | "blocked-prop" | "unknown-prop" | "invalid-enum" | "coerced-value" | "invalid-value" | "invalid-shape" | "missing-required" | "applied-default" | "children-ignored" | "invalid-action" | "max-depth-exceeded" | "form-nested" | "field-name-invalid" | "field-unnamed" | "field-name-duplicate" | "invalid-id";
|
|
7
7
|
message: string;
|
|
8
8
|
severity: "error" | "warning";
|
|
9
9
|
}
|
|
@@ -15,6 +15,15 @@ export interface ValidateResult {
|
|
|
15
15
|
spec: UISpec;
|
|
16
16
|
issues: ValidationIssue[];
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Components whose value participates in a Form. Mirrors FIELD_BINDINGS.
|
|
20
|
+
*
|
|
21
|
+
* 🔴 A missing row here SKIPS the field-name safety check entirely for that
|
|
22
|
+
* component — i.e. it re-opens the prototype-pollution / unsafe-identifier
|
|
23
|
+
* hole that `field-name-invalid` exists to close. Exported solely so
|
|
24
|
+
* `fieldBinding.test.ts` can pin it against the other copies of this set.
|
|
25
|
+
*/
|
|
26
|
+
export declare const FIELD_COMPONENTS: Set<string>;
|
|
18
27
|
/**
|
|
19
28
|
* Validate + repair a model-emitted spec against the generated schema.
|
|
20
29
|
* Never throws; never mutates the input. Every repair is recorded in `issues`.
|
|
@@ -22,6 +22,34 @@ const PROTO_POLLUTION_KEYS = new Set(["__proto__", "constructor", "prototype"]);
|
|
|
22
22
|
const isHandler = (key) => /^on[a-z]/i.test(key);
|
|
23
23
|
/** Recursion guard for both the node tree and nested structured prop values. */
|
|
24
24
|
const MAX_DEPTH = 100;
|
|
25
|
+
/** Conventional field-name grammar — mirrors an HTML name attribute. */
|
|
26
|
+
const FIELD_NAME_RE = /^[A-Za-z_][A-Za-z0-9_-]*$/;
|
|
27
|
+
/**
|
|
28
|
+
* Is this a safe string to use as a key in a plain-object map rebuilt from
|
|
29
|
+
* spec input? Shared by `props.name` and `node.id` — both end up as object
|
|
30
|
+
* keys, so both owe the same three checks: a real string, no assignment-target
|
|
31
|
+
* hijack (`PROTO_POLLUTION_KEYS`), and no INHERITED `Object.prototype` member
|
|
32
|
+
* (`Reflect.has`, which walks the chain and so catches "toString",
|
|
33
|
+
* "hasOwnProperty", "valueOf", … in one go), plus a conservative grammar.
|
|
34
|
+
*/
|
|
35
|
+
function isSafeSpecIdentifier(value) {
|
|
36
|
+
return (typeof value === "string" &&
|
|
37
|
+
!PROTO_POLLUTION_KEYS.has(value) &&
|
|
38
|
+
!Reflect.has(Object.prototype, value) &&
|
|
39
|
+
FIELD_NAME_RE.test(value));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Components whose value participates in a Form. Mirrors FIELD_BINDINGS.
|
|
43
|
+
*
|
|
44
|
+
* 🔴 A missing row here SKIPS the field-name safety check entirely for that
|
|
45
|
+
* component — i.e. it re-opens the prototype-pollution / unsafe-identifier
|
|
46
|
+
* hole that `field-name-invalid` exists to close. Exported solely so
|
|
47
|
+
* `fieldBinding.test.ts` can pin it against the other copies of this set.
|
|
48
|
+
*/
|
|
49
|
+
const FIELD_COMPONENTS = new Set([
|
|
50
|
+
"Input", "Textarea", "Select", "Combobox", "Checkbox", "Switch", "Slider",
|
|
51
|
+
"InputOTP", "TimePicker", "InputDate", "InputCounter", "InputTag", "Rating",
|
|
52
|
+
]);
|
|
25
53
|
/**
|
|
26
54
|
* Safe lookup on a plain object used as a string-keyed map. Guards against
|
|
27
55
|
* Object.prototype-colliding keys ("constructor", "toString", "__proto__",
|
|
@@ -95,11 +123,11 @@ function validate(spec, options = {}) {
|
|
|
95
123
|
const schema = (_a = options.schema) !== null && _a !== void 0 ? _a : GENERATIVE_SCHEMA;
|
|
96
124
|
const issues = [];
|
|
97
125
|
if (Array.isArray(spec)) {
|
|
98
|
-
return { spec: spec.map((n, i) => validateNode(n, schema, `$[${i}]`, issues, 0)), issues };
|
|
126
|
+
return { spec: spec.map((n, i) => validateNode(n, schema, `$[${i}]`, issues, 0, false)), issues };
|
|
99
127
|
}
|
|
100
|
-
return { spec: validateNode(spec, schema, "$", issues, 0), issues };
|
|
128
|
+
return { spec: validateNode(spec, schema, "$", issues, 0, false), issues };
|
|
101
129
|
}
|
|
102
|
-
function validateNode(node, schema, path, issues, depth) {
|
|
130
|
+
function validateNode(node, schema, path, issues, depth, inForm = false, seenFieldNames) {
|
|
103
131
|
if (depth > MAX_DEPTH) {
|
|
104
132
|
issues.push({
|
|
105
133
|
path,
|
|
@@ -114,17 +142,98 @@ function validateNode(node, schema, path, issues, depth) {
|
|
|
114
142
|
return { component: "__invalid__" };
|
|
115
143
|
}
|
|
116
144
|
const raw = node;
|
|
117
|
-
|
|
145
|
+
// `node.id` is model-chosen and reaches the runtime as an OBJECT KEY, not
|
|
146
|
+
// just a React key: `GenerativeView` keys the per-form values bag by it
|
|
147
|
+
// (`values[formId]`). Left unchecked, `id: "__proto__"` on a Form made the
|
|
148
|
+
// shell believe it was controlled by an unfillable bag — the user typed and
|
|
149
|
+
// submit delivered `{}`, silently destroying their input. So the id gets
|
|
150
|
+
// exactly the treatment `props.name` already gets, and is dropped (never
|
|
151
|
+
// repaired) on failure — an id is an optional identity hint, so losing it
|
|
152
|
+
// costs only streaming-patch stability, whereas keeping a hostile one costs
|
|
153
|
+
// correctness. Applies to EVERY node, not just Form: ids are also React
|
|
154
|
+
// keys and streaming-patch targets, and there is no reason for the safe
|
|
155
|
+
// grammar to differ by component.
|
|
156
|
+
let id;
|
|
157
|
+
if (raw.id !== undefined) {
|
|
158
|
+
if (isSafeSpecIdentifier(raw.id)) {
|
|
159
|
+
id = raw.id;
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
issues.push({
|
|
163
|
+
path: `${path}.id`,
|
|
164
|
+
code: "invalid-id",
|
|
165
|
+
severity: "warning",
|
|
166
|
+
message: `Node id ${JSON.stringify(raw.id)} is not a safe identifier — removed; the node still renders`,
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
let componentName = raw.component;
|
|
171
|
+
if (componentName === "Form" && inForm) {
|
|
172
|
+
issues.push({
|
|
173
|
+
path,
|
|
174
|
+
code: "form-nested",
|
|
175
|
+
severity: "warning",
|
|
176
|
+
message: "Nested `Form` is not allowed — downgraded to `Stack`; children preserved",
|
|
177
|
+
});
|
|
178
|
+
componentName = "Stack";
|
|
179
|
+
}
|
|
180
|
+
const comp = safeLookup(schema.components, componentName);
|
|
118
181
|
if (!comp) {
|
|
119
182
|
issues.push({
|
|
120
183
|
path,
|
|
121
184
|
code: "unknown-component",
|
|
122
185
|
severity: "error",
|
|
123
|
-
message: `Unknown component "${
|
|
186
|
+
message: `Unknown component "${componentName}" — props/children stripped; renders as placeholder`,
|
|
124
187
|
});
|
|
125
|
-
return { component:
|
|
188
|
+
return { component: componentName, ...(id ? { id } : {}) };
|
|
126
189
|
}
|
|
127
190
|
const props = sanitizeProps(raw.props, comp, schema, path, issues);
|
|
191
|
+
// Field-name checks apply ONLY to components whose value actually
|
|
192
|
+
// participates in a Form (mirrors FIELD_BINDINGS) — e.g. `Avatar.name` is
|
|
193
|
+
// a person's display name, not a submission key, and must be left alone.
|
|
194
|
+
if (FIELD_COMPONENTS.has(componentName)) {
|
|
195
|
+
if (typeof props.name === "string") {
|
|
196
|
+
// `isSafeSpecIdentifier` bundles the three checks a submission key owes.
|
|
197
|
+
// `PROTO_POLLUTION_KEYS` is the write-side guard (assignment-target
|
|
198
|
+
// hijacks); `Reflect.has(Object.prototype, …)` is the read side — every
|
|
199
|
+
// OTHER Object.prototype member ("toString", "hasOwnProperty",
|
|
200
|
+
// "valueOf", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString",
|
|
201
|
+
// the dunder accessor pairs) which a plain-object values/errors bag
|
|
202
|
+
// (formScope.tsx) resolves to an inherited function instead of
|
|
203
|
+
// `undefined` for any untouched key, with no assignment required.
|
|
204
|
+
if (!isSafeSpecIdentifier(props.name)) {
|
|
205
|
+
issues.push({
|
|
206
|
+
path: `${path}.props.name`,
|
|
207
|
+
code: "field-name-invalid",
|
|
208
|
+
severity: "warning",
|
|
209
|
+
message: `Field name "${props.name}" is not a safe identifier — removed; the field will render but not submit`,
|
|
210
|
+
});
|
|
211
|
+
delete props.name;
|
|
212
|
+
}
|
|
213
|
+
else if (inForm && seenFieldNames) {
|
|
214
|
+
if (seenFieldNames.has(props.name)) {
|
|
215
|
+
issues.push({
|
|
216
|
+
path: `${path}.props.name`,
|
|
217
|
+
code: "field-name-duplicate",
|
|
218
|
+
severity: "warning",
|
|
219
|
+
message: `Field name "${props.name}" is already used elsewhere in this Form — removed; only the first occurrence is submitted`,
|
|
220
|
+
});
|
|
221
|
+
delete props.name;
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
seenFieldNames.add(props.name);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
else if (inForm) {
|
|
229
|
+
issues.push({
|
|
230
|
+
path: `${path}.props`,
|
|
231
|
+
code: "field-unnamed",
|
|
232
|
+
severity: "warning",
|
|
233
|
+
message: `"${componentName}" inside a Form has no \`name\` — it renders but its value is not submitted`,
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
}
|
|
128
237
|
// Fill required props that have a schema default; flag the rest.
|
|
129
238
|
for (const [name, ps] of Object.entries(comp.props)) {
|
|
130
239
|
if (!ps.required || props[name] !== undefined)
|
|
@@ -154,11 +263,17 @@ function validateNode(node, schema, path, issues, depth) {
|
|
|
154
263
|
path: `${path}.children`,
|
|
155
264
|
code: "children-ignored",
|
|
156
265
|
severity: "warning",
|
|
157
|
-
message: `"${
|
|
266
|
+
message: `"${componentName}" is not a container — children removed`,
|
|
158
267
|
});
|
|
159
268
|
}
|
|
160
269
|
else {
|
|
161
|
-
|
|
270
|
+
// A fresh dedup scope starts only when entering a NEW top-level Form
|
|
271
|
+
// (raw.component === "Form" and not already inForm) — a nested Form
|
|
272
|
+
// is downgraded above and its fields join the SAME outer scope,
|
|
273
|
+
// matching the single FormScope the runtime actually mounts for it.
|
|
274
|
+
const childInForm = inForm || raw.component === "Form";
|
|
275
|
+
const childSeenFieldNames = raw.component === "Form" && !inForm ? new Set() : seenFieldNames;
|
|
276
|
+
children = raw.children.map((c, i) => validateNode(c, schema, `${path}.children[${i}]`, issues, depth + 1, childInForm, childSeenFieldNames));
|
|
162
277
|
}
|
|
163
278
|
}
|
|
164
279
|
let actions;
|
|
@@ -193,8 +308,8 @@ function validateNode(node, schema, path, issues, depth) {
|
|
|
193
308
|
}
|
|
194
309
|
}
|
|
195
310
|
return {
|
|
196
|
-
component:
|
|
197
|
-
...(
|
|
311
|
+
component: componentName,
|
|
312
|
+
...(id ? { id } : {}),
|
|
198
313
|
...(raw.sizeHint ? { sizeHint: raw.sizeHint } : {}),
|
|
199
314
|
...(Object.keys(props).length ? { props } : {}),
|
|
200
315
|
...(children ? { children } : {}),
|
|
@@ -348,4 +463,4 @@ function checkValue(key, value, ps, schema, path, issues) {
|
|
|
348
463
|
}
|
|
349
464
|
}
|
|
350
465
|
|
|
351
|
-
export { validate };
|
|
466
|
+
export { FIELD_COMPONENTS, validate };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const sectionTheme = {
|
|
2
2
|
baseStyle: "block",
|
|
3
3
|
header: "flex items-start justify-between gap-4",
|
|
4
|
-
title: "text-[length:var(--section-title-size)]
|
|
4
|
+
title: "text-[length:var(--section-title-size)]/[var(--section-title-line-height)] font-semibold text-[var(--color-text-primary)]",
|
|
5
5
|
subtitle: "mt-0.5 text-sm text-[var(--color-text-secondary)]",
|
|
6
6
|
actions: "flex shrink-0 items-center gap-2",
|
|
7
7
|
bodyGaps: { 0: "mt-0", 1: "mt-1", 2: "mt-2", 3: "mt-3", 4: "mt-4", 5: "mt-5", 6: "mt-6", 8: "mt-8", 10: "mt-10", 12: "mt-12" },
|