cursedbelt 0.0.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 +80 -0
- package/dist/client/convertRequest.d.ts +15 -0
- package/dist/client/convertRequest.d.ts.map +1 -0
- package/dist/client/convertRequest.js +94 -0
- package/dist/client/convertRequest.js.map +1 -0
- package/dist/client/ctgrConfig.d.ts +3 -0
- package/dist/client/ctgrConfig.d.ts.map +1 -0
- package/dist/client/ctgrConfig.js +32 -0
- package/dist/client/ctgrConfig.js.map +1 -0
- package/dist/client/ctgrGuard.d.ts +2 -0
- package/dist/client/ctgrGuard.d.ts.map +1 -0
- package/dist/client/ctgrGuard.js +71 -0
- package/dist/client/ctgrGuard.js.map +1 -0
- package/dist/client/index.d.ts +5 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +12 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/ws.d.ts +37 -0
- package/dist/client/ws.d.ts.map +1 -0
- package/dist/client/ws.js +43 -0
- package/dist/client/ws.js.map +1 -0
- package/dist/core/color.d.ts +15 -0
- package/dist/core/color.d.ts.map +1 -0
- package/dist/core/color.js +33 -0
- package/dist/core/color.js.map +1 -0
- package/dist/core/csv.d.ts +65 -0
- package/dist/core/csv.d.ts.map +1 -0
- package/dist/core/csv.js +55 -0
- package/dist/core/csv.js.map +1 -0
- package/dist/core/ctgr.d.ts +6 -0
- package/dist/core/ctgr.d.ts.map +1 -0
- package/dist/core/ctgr.js +58 -0
- package/dist/core/ctgr.js.map +1 -0
- package/dist/core/layout/aggregate.d.ts +8 -0
- package/dist/core/layout/aggregate.d.ts.map +1 -0
- package/dist/core/layout/aggregate.js +77 -0
- package/dist/core/layout/aggregate.js.map +1 -0
- package/dist/core/layout/field.d.ts +14 -0
- package/dist/core/layout/field.d.ts.map +1 -0
- package/dist/core/layout/field.js +2 -0
- package/dist/core/layout/field.js.map +1 -0
- package/dist/core/layout/grid.d.ts +7 -0
- package/dist/core/layout/grid.d.ts.map +1 -0
- package/dist/core/layout/grid.js +152 -0
- package/dist/core/layout/grid.js.map +1 -0
- package/dist/core/layout/index.d.ts +10 -0
- package/dist/core/layout/index.d.ts.map +1 -0
- package/dist/core/layout/index.js +18 -0
- package/dist/core/layout/index.js.map +1 -0
- package/dist/core/layout/migrate.d.ts +4 -0
- package/dist/core/layout/migrate.d.ts.map +1 -0
- package/dist/core/layout/migrate.js +170 -0
- package/dist/core/layout/migrate.js.map +1 -0
- package/dist/core/layout/resolve.d.ts +23 -0
- package/dist/core/layout/resolve.d.ts.map +1 -0
- package/dist/core/layout/resolve.js +27 -0
- package/dist/core/layout/resolve.js.map +1 -0
- package/dist/core/layout/treeOps.d.ts +11 -0
- package/dist/core/layout/treeOps.d.ts.map +1 -0
- package/dist/core/layout/treeOps.js +68 -0
- package/dist/core/layout/treeOps.js.map +1 -0
- package/dist/core/layout/types.d.ts +97 -0
- package/dist/core/layout/types.d.ts.map +1 -0
- package/dist/core/layout/types.js +21 -0
- package/dist/core/layout/types.js.map +1 -0
- package/dist/core/layout/undoHistory.d.ts +34 -0
- package/dist/core/layout/undoHistory.d.ts.map +1 -0
- package/dist/core/layout/undoHistory.js +53 -0
- package/dist/core/layout/undoHistory.js.map +1 -0
- package/dist/core/layout/version.d.ts +8 -0
- package/dist/core/layout/version.d.ts.map +1 -0
- package/dist/core/layout/version.js +8 -0
- package/dist/core/layout/version.js.map +1 -0
- package/dist/core/media/bgRemoval.d.ts +28 -0
- package/dist/core/media/bgRemoval.d.ts.map +1 -0
- package/dist/core/media/bgRemoval.js +102 -0
- package/dist/core/media/bgRemoval.js.map +1 -0
- package/dist/core/media/format.d.ts +21 -0
- package/dist/core/media/format.d.ts.map +1 -0
- package/dist/core/media/format.js +55 -0
- package/dist/core/media/format.js.map +1 -0
- package/dist/core/media/index.d.ts +8 -0
- package/dist/core/media/index.d.ts.map +1 -0
- package/dist/core/media/index.js +11 -0
- package/dist/core/media/index.js.map +1 -0
- package/dist/core/media/mediaItem.d.ts +16 -0
- package/dist/core/media/mediaItem.d.ts.map +1 -0
- package/dist/core/media/mediaItem.js +35 -0
- package/dist/core/media/mediaItem.js.map +1 -0
- package/dist/core/media/segment.d.ts +80 -0
- package/dist/core/media/segment.d.ts.map +1 -0
- package/dist/core/media/segment.js +248 -0
- package/dist/core/media/segment.js.map +1 -0
- package/dist/core/media/trim.d.ts +29 -0
- package/dist/core/media/trim.d.ts.map +1 -0
- package/dist/core/media/trim.js +58 -0
- package/dist/core/media/trim.js.map +1 -0
- package/dist/core/media/types.d.ts +94 -0
- package/dist/core/media/types.d.ts.map +1 -0
- package/dist/core/media/types.js +12 -0
- package/dist/core/media/types.js.map +1 -0
- package/dist/core/media/validate.d.ts +10 -0
- package/dist/core/media/validate.d.ts.map +1 -0
- package/dist/core/media/validate.js +122 -0
- package/dist/core/media/validate.js.map +1 -0
- package/dist/core/navigation/breadcrumbCompat.d.ts +25 -0
- package/dist/core/navigation/breadcrumbCompat.d.ts.map +1 -0
- package/dist/core/navigation/breadcrumbCompat.js +22 -0
- package/dist/core/navigation/breadcrumbCompat.js.map +1 -0
- package/dist/core/navigation/coverageTest.d.ts +25 -0
- package/dist/core/navigation/coverageTest.d.ts.map +1 -0
- package/dist/core/navigation/coverageTest.js +49 -0
- package/dist/core/navigation/coverageTest.js.map +1 -0
- package/dist/core/navigation/index.d.ts +7 -0
- package/dist/core/navigation/index.d.ts.map +1 -0
- package/dist/core/navigation/index.js +11 -0
- package/dist/core/navigation/index.js.map +1 -0
- package/dist/core/navigation/migrateNavPreferences.d.ts +54 -0
- package/dist/core/navigation/migrateNavPreferences.d.ts.map +1 -0
- package/dist/core/navigation/migrateNavPreferences.js +64 -0
- package/dist/core/navigation/migrateNavPreferences.js.map +1 -0
- package/dist/core/navigation/navigationModel.d.ts +93 -0
- package/dist/core/navigation/navigationModel.d.ts.map +1 -0
- package/dist/core/navigation/navigationModel.js +15 -0
- package/dist/core/navigation/navigationModel.js.map +1 -0
- package/dist/core/navigation/navigationSelectors.d.ts +64 -0
- package/dist/core/navigation/navigationSelectors.d.ts.map +1 -0
- package/dist/core/navigation/navigationSelectors.js +163 -0
- package/dist/core/navigation/navigationSelectors.js.map +1 -0
- package/dist/core/navigation/searchCatalogue.d.ts +24 -0
- package/dist/core/navigation/searchCatalogue.d.ts.map +1 -0
- package/dist/core/navigation/searchCatalogue.js +77 -0
- package/dist/core/navigation/searchCatalogue.js.map +1 -0
- package/dist/core/palette/ShortcutRegistry.d.ts +34 -0
- package/dist/core/palette/ShortcutRegistry.d.ts.map +1 -0
- package/dist/core/palette/ShortcutRegistry.js +53 -0
- package/dist/core/palette/ShortcutRegistry.js.map +1 -0
- package/dist/core/palette/fuzzyRank.d.ts +19 -0
- package/dist/core/palette/fuzzyRank.d.ts.map +1 -0
- package/dist/core/palette/fuzzyRank.js +74 -0
- package/dist/core/palette/fuzzyRank.js.map +1 -0
- package/dist/core/palette/hotkeys.d.ts +29 -0
- package/dist/core/palette/hotkeys.d.ts.map +1 -0
- package/dist/core/palette/hotkeys.js +119 -0
- package/dist/core/palette/hotkeys.js.map +1 -0
- package/dist/core/palette/index.d.ts +4 -0
- package/dist/core/palette/index.d.ts.map +1 -0
- package/dist/core/palette/index.js +9 -0
- package/dist/core/palette/index.js.map +1 -0
- package/dist/core/uiScale/index.d.ts +9 -0
- package/dist/core/uiScale/index.d.ts.map +1 -0
- package/dist/core/uiScale/index.js +9 -0
- package/dist/core/uiScale/index.js.map +1 -0
- package/dist/core/uiScale/scale.d.ts +37 -0
- package/dist/core/uiScale/scale.d.ts.map +1 -0
- package/dist/core/uiScale/scale.js +48 -0
- package/dist/core/uiScale/scale.js.map +1 -0
- package/dist/core/uiScale/uiScaleStore.d.ts +48 -0
- package/dist/core/uiScale/uiScaleStore.d.ts.map +1 -0
- package/dist/core/uiScale/uiScaleStore.js +64 -0
- package/dist/core/uiScale/uiScaleStore.js.map +1 -0
- package/dist/ctgr/base64url.d.ts +9 -0
- package/dist/ctgr/base64url.d.ts.map +1 -0
- package/dist/ctgr/base64url.js +40 -0
- package/dist/ctgr/base64url.js.map +1 -0
- package/dist/ctgr/chunkStore.d.ts +25 -0
- package/dist/ctgr/chunkStore.d.ts.map +1 -0
- package/dist/ctgr/chunkStore.js +126 -0
- package/dist/ctgr/chunkStore.js.map +1 -0
- package/dist/ctgr/codec.d.ts +45 -0
- package/dist/ctgr/codec.d.ts.map +1 -0
- package/dist/ctgr/codec.js +154 -0
- package/dist/ctgr/codec.js.map +1 -0
- package/dist/ctgr/compress.d.ts +3 -0
- package/dist/ctgr/compress.d.ts.map +1 -0
- package/dist/ctgr/compress.js +21 -0
- package/dist/ctgr/compress.js.map +1 -0
- package/dist/ctgr/crc32.d.ts +3 -0
- package/dist/ctgr/crc32.d.ts.map +1 -0
- package/dist/ctgr/crc32.js +24 -0
- package/dist/ctgr/crc32.js.map +1 -0
- package/dist/ctgr/digest.d.ts +2 -0
- package/dist/ctgr/digest.d.ts.map +1 -0
- package/dist/ctgr/digest.js +16 -0
- package/dist/ctgr/digest.js.map +1 -0
- package/dist/ctgr/index.d.ts +9 -0
- package/dist/ctgr/index.d.ts.map +1 -0
- package/dist/ctgr/index.js +14 -0
- package/dist/ctgr/index.js.map +1 -0
- package/dist/ctgr/types.d.ts +65 -0
- package/dist/ctgr/types.d.ts.map +1 -0
- package/dist/ctgr/types.js +22 -0
- package/dist/ctgr/types.js.map +1 -0
- package/dist/ctgr/v0compat.d.ts +28 -0
- package/dist/ctgr/v0compat.d.ts.map +1 -0
- package/dist/ctgr/v0compat.js +129 -0
- package/dist/ctgr/v0compat.js.map +1 -0
- package/dist/data/env/index.d.ts +75 -0
- package/dist/data/env/index.d.ts.map +1 -0
- package/dist/data/env/index.js +149 -0
- package/dist/data/env/index.js.map +1 -0
- package/dist/data/json/index.d.ts +61 -0
- package/dist/data/json/index.d.ts.map +1 -0
- package/dist/data/json/index.js +488 -0
- package/dist/data/json/index.js.map +1 -0
- package/dist/game/core/DisposeRegistry.d.ts +42 -0
- package/dist/game/core/DisposeRegistry.d.ts.map +1 -0
- package/dist/game/core/DisposeRegistry.js +67 -0
- package/dist/game/core/DisposeRegistry.js.map +1 -0
- package/dist/game/core/drawBudget.d.ts +26 -0
- package/dist/game/core/drawBudget.d.ts.map +1 -0
- package/dist/game/core/drawBudget.js +55 -0
- package/dist/game/core/drawBudget.js.map +1 -0
- package/dist/game/core/fixedTimestep.d.ts +38 -0
- package/dist/game/core/fixedTimestep.d.ts.map +1 -0
- package/dist/game/core/fixedTimestep.js +47 -0
- package/dist/game/core/fixedTimestep.js.map +1 -0
- package/dist/game/core/index.d.ts +9 -0
- package/dist/game/core/index.d.ts.map +1 -0
- package/dist/game/core/index.js +8 -0
- package/dist/game/core/index.js.map +1 -0
- package/dist/game/core/inputCollector.d.ts +82 -0
- package/dist/game/core/inputCollector.d.ts.map +1 -0
- package/dist/game/core/inputCollector.js +176 -0
- package/dist/game/core/inputCollector.js.map +1 -0
- package/dist/game/core/resizeCanvas.d.ts +19 -0
- package/dist/game/core/resizeCanvas.d.ts.map +1 -0
- package/dist/game/core/resizeCanvas.js +29 -0
- package/dist/game/core/resizeCanvas.js.map +1 -0
- package/dist/game/react/index.d.ts +3 -0
- package/dist/game/react/index.d.ts.map +1 -0
- package/dist/game/react/index.js +5 -0
- package/dist/game/react/index.js.map +1 -0
- package/dist/game/react/useGameEngine.d.ts +64 -0
- package/dist/game/react/useGameEngine.d.ts.map +1 -0
- package/dist/game/react/useGameEngine.js +77 -0
- package/dist/game/react/useGameEngine.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/dist/ops/test-report/types.d.ts +81 -0
- package/dist/ops/test-report/types.d.ts.map +1 -0
- package/dist/ops/test-report/types.js +13 -0
- package/dist/ops/test-report/types.js.map +1 -0
- package/dist/react/Toast.d.ts +5 -0
- package/dist/react/Toast.d.ts.map +1 -0
- package/dist/react/Toast.js +33 -0
- package/dist/react/Toast.js.map +1 -0
- package/dist/react/charts/AreaChart.d.ts +27 -0
- package/dist/react/charts/AreaChart.d.ts.map +1 -0
- package/dist/react/charts/AreaChart.js +19 -0
- package/dist/react/charts/AreaChart.js.map +1 -0
- package/dist/react/charts/BarChart.d.ts +27 -0
- package/dist/react/charts/BarChart.d.ts.map +1 -0
- package/dist/react/charts/BarChart.js +20 -0
- package/dist/react/charts/BarChart.js.map +1 -0
- package/dist/react/charts/CategoryBars.d.ts +17 -0
- package/dist/react/charts/CategoryBars.d.ts.map +1 -0
- package/dist/react/charts/CategoryBars.js +28 -0
- package/dist/react/charts/CategoryBars.js.map +1 -0
- package/dist/react/charts/CategoryDonut.d.ts +16 -0
- package/dist/react/charts/CategoryDonut.d.ts.map +1 -0
- package/dist/react/charts/CategoryDonut.js +17 -0
- package/dist/react/charts/CategoryDonut.js.map +1 -0
- package/dist/react/charts/ChartFrame.d.ts +19 -0
- package/dist/react/charts/ChartFrame.d.ts.map +1 -0
- package/dist/react/charts/ChartFrame.js +17 -0
- package/dist/react/charts/ChartFrame.js.map +1 -0
- package/dist/react/charts/ChartLegend.d.ts +19 -0
- package/dist/react/charts/ChartLegend.d.ts.map +1 -0
- package/dist/react/charts/ChartLegend.js +11 -0
- package/dist/react/charts/ChartLegend.js.map +1 -0
- package/dist/react/charts/ChartTooltip.d.ts +35 -0
- package/dist/react/charts/ChartTooltip.d.ts.map +1 -0
- package/dist/react/charts/ChartTooltip.js +26 -0
- package/dist/react/charts/ChartTooltip.js.map +1 -0
- package/dist/react/charts/DivergingBars.d.ts +16 -0
- package/dist/react/charts/DivergingBars.d.ts.map +1 -0
- package/dist/react/charts/DivergingBars.js +14 -0
- package/dist/react/charts/DivergingBars.js.map +1 -0
- package/dist/react/charts/DonutChart.d.ts +10 -0
- package/dist/react/charts/DonutChart.d.ts.map +1 -0
- package/dist/react/charts/DonutChart.js +16 -0
- package/dist/react/charts/DonutChart.js.map +1 -0
- package/dist/react/charts/LabeledSeriesChart.d.ts +25 -0
- package/dist/react/charts/LabeledSeriesChart.d.ts.map +1 -0
- package/dist/react/charts/LabeledSeriesChart.js +29 -0
- package/dist/react/charts/LabeledSeriesChart.js.map +1 -0
- package/dist/react/charts/LineChart.d.ts +25 -0
- package/dist/react/charts/LineChart.d.ts.map +1 -0
- package/dist/react/charts/LineChart.js +12 -0
- package/dist/react/charts/LineChart.js.map +1 -0
- package/dist/react/charts/MiniBarChart.d.ts +14 -0
- package/dist/react/charts/MiniBarChart.d.ts.map +1 -0
- package/dist/react/charts/MiniBarChart.js +14 -0
- package/dist/react/charts/MiniBarChart.js.map +1 -0
- package/dist/react/charts/PieChart.d.ts +25 -0
- package/dist/react/charts/PieChart.d.ts.map +1 -0
- package/dist/react/charts/PieChart.js +17 -0
- package/dist/react/charts/PieChart.js.map +1 -0
- package/dist/react/charts/RadialBarChart.d.ts +24 -0
- package/dist/react/charts/RadialBarChart.d.ts.map +1 -0
- package/dist/react/charts/RadialBarChart.js +20 -0
- package/dist/react/charts/RadialBarChart.js.map +1 -0
- package/dist/react/charts/Sparkline.d.ts +20 -0
- package/dist/react/charts/Sparkline.d.ts.map +1 -0
- package/dist/react/charts/Sparkline.js +19 -0
- package/dist/react/charts/Sparkline.js.map +1 -0
- package/dist/react/charts/StackedBars.d.ts +18 -0
- package/dist/react/charts/StackedBars.d.ts.map +1 -0
- package/dist/react/charts/StackedBars.js +15 -0
- package/dist/react/charts/StackedBars.js.map +1 -0
- package/dist/react/charts/StatusDonut.d.ts +7 -0
- package/dist/react/charts/StatusDonut.d.ts.map +1 -0
- package/dist/react/charts/StatusDonut.js +22 -0
- package/dist/react/charts/StatusDonut.js.map +1 -0
- package/dist/react/charts/TimeSeriesChart.d.ts +23 -0
- package/dist/react/charts/TimeSeriesChart.d.ts.map +1 -0
- package/dist/react/charts/TimeSeriesChart.js +26 -0
- package/dist/react/charts/TimeSeriesChart.js.map +1 -0
- package/dist/react/charts/chartTheme.d.ts +21 -0
- package/dist/react/charts/chartTheme.d.ts.map +1 -0
- package/dist/react/charts/chartTheme.js +55 -0
- package/dist/react/charts/chartTheme.js.map +1 -0
- package/dist/react/charts/format.d.ts +12 -0
- package/dist/react/charts/format.d.ts.map +1 -0
- package/dist/react/charts/format.js +111 -0
- package/dist/react/charts/format.js.map +1 -0
- package/dist/react/charts/index.d.ts +13 -0
- package/dist/react/charts/index.d.ts.map +1 -0
- package/dist/react/charts/index.js +23 -0
- package/dist/react/charts/index.js.map +1 -0
- package/dist/react/charts/shared.d.ts +30 -0
- package/dist/react/charts/shared.d.ts.map +1 -0
- package/dist/react/charts/shared.js +13 -0
- package/dist/react/charts/shared.js.map +1 -0
- package/dist/react/charts/tokens.d.ts +56 -0
- package/dist/react/charts/tokens.d.ts.map +1 -0
- package/dist/react/charts/tokens.js +128 -0
- package/dist/react/charts/tokens.js.map +1 -0
- package/dist/react/compat.d.ts +8 -0
- package/dist/react/compat.d.ts.map +1 -0
- package/dist/react/compat.js +31 -0
- package/dist/react/compat.js.map +1 -0
- package/dist/react/components/ActionBar.d.ts +27 -0
- package/dist/react/components/ActionBar.d.ts.map +1 -0
- package/dist/react/components/ActionBar.js +29 -0
- package/dist/react/components/ActionBar.js.map +1 -0
- package/dist/react/components/AddItemsMenu.d.ts +41 -0
- package/dist/react/components/AddItemsMenu.d.ts.map +1 -0
- package/dist/react/components/AddItemsMenu.js +26 -0
- package/dist/react/components/AddItemsMenu.js.map +1 -0
- package/dist/react/components/Alert.d.ts +28 -0
- package/dist/react/components/Alert.d.ts.map +1 -0
- package/dist/react/components/Alert.js +29 -0
- package/dist/react/components/Alert.js.map +1 -0
- package/dist/react/components/AppShell.d.ts +118 -0
- package/dist/react/components/AppShell.d.ts.map +1 -0
- package/dist/react/components/AppShell.js +57 -0
- package/dist/react/components/AppShell.js.map +1 -0
- package/dist/react/components/AutoGrowTextarea.d.ts +31 -0
- package/dist/react/components/AutoGrowTextarea.d.ts.map +1 -0
- package/dist/react/components/AutoGrowTextarea.js +75 -0
- package/dist/react/components/AutoGrowTextarea.js.map +1 -0
- package/dist/react/components/Badge.d.ts +27 -0
- package/dist/react/components/Badge.d.ts.map +1 -0
- package/dist/react/components/Badge.js +41 -0
- package/dist/react/components/Badge.js.map +1 -0
- package/dist/react/components/Button.d.ts +35 -0
- package/dist/react/components/Button.d.ts.map +1 -0
- package/dist/react/components/Button.js +56 -0
- package/dist/react/components/Button.js.map +1 -0
- package/dist/react/components/ButtonGroup.d.ts +11 -0
- package/dist/react/components/ButtonGroup.d.ts.map +1 -0
- package/dist/react/components/ButtonGroup.js +14 -0
- package/dist/react/components/ButtonGroup.js.map +1 -0
- package/dist/react/components/ButtonLink.d.ts +19 -0
- package/dist/react/components/ButtonLink.d.ts.map +1 -0
- package/dist/react/components/ButtonLink.js +13 -0
- package/dist/react/components/ButtonLink.js.map +1 -0
- package/dist/react/components/Card.d.ts +27 -0
- package/dist/react/components/Card.d.ts.map +1 -0
- package/dist/react/components/Card.js +29 -0
- package/dist/react/components/Card.js.map +1 -0
- package/dist/react/components/Checkbox.d.ts +14 -0
- package/dist/react/components/Checkbox.d.ts.map +1 -0
- package/dist/react/components/Checkbox.js +23 -0
- package/dist/react/components/Checkbox.js.map +1 -0
- package/dist/react/components/CodeFieldInput.d.ts +29 -0
- package/dist/react/components/CodeFieldInput.d.ts.map +1 -0
- package/dist/react/components/CodeFieldInput.js +37 -0
- package/dist/react/components/CodeFieldInput.js.map +1 -0
- package/dist/react/components/Collapsible.d.ts +28 -0
- package/dist/react/components/Collapsible.d.ts.map +1 -0
- package/dist/react/components/Collapsible.js +17 -0
- package/dist/react/components/Collapsible.js.map +1 -0
- package/dist/react/components/ColorField.d.ts +21 -0
- package/dist/react/components/ColorField.d.ts.map +1 -0
- package/dist/react/components/ColorField.js +16 -0
- package/dist/react/components/ColorField.js.map +1 -0
- package/dist/react/components/ConfirmDialog.d.ts +25 -0
- package/dist/react/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/react/components/ConfirmDialog.js +29 -0
- package/dist/react/components/ConfirmDialog.js.map +1 -0
- package/dist/react/components/CopyButton.d.ts +40 -0
- package/dist/react/components/CopyButton.d.ts.map +1 -0
- package/dist/react/components/CopyButton.js +33 -0
- package/dist/react/components/CopyButton.js.map +1 -0
- package/dist/react/components/DataTable/CardView.d.ts +18 -0
- package/dist/react/components/DataTable/CardView.d.ts.map +1 -0
- package/dist/react/components/DataTable/CardView.js +23 -0
- package/dist/react/components/DataTable/CardView.js.map +1 -0
- package/dist/react/components/DataTable/DataTable.d.ts +53 -0
- package/dist/react/components/DataTable/DataTable.d.ts.map +1 -0
- package/dist/react/components/DataTable/DataTable.js +86 -0
- package/dist/react/components/DataTable/DataTable.js.map +1 -0
- package/dist/react/components/DataTable/Pagination.d.ts +14 -0
- package/dist/react/components/DataTable/Pagination.d.ts.map +1 -0
- package/dist/react/components/DataTable/Pagination.js +20 -0
- package/dist/react/components/DataTable/Pagination.js.map +1 -0
- package/dist/react/components/DataTable/RowActions.d.ts +13 -0
- package/dist/react/components/DataTable/RowActions.d.ts.map +1 -0
- package/dist/react/components/DataTable/RowActions.js +19 -0
- package/dist/react/components/DataTable/RowActions.js.map +1 -0
- package/dist/react/components/DataTable/SortHeader.d.ts +14 -0
- package/dist/react/components/DataTable/SortHeader.d.ts.map +1 -0
- package/dist/react/components/DataTable/SortHeader.js +15 -0
- package/dist/react/components/DataTable/SortHeader.js.map +1 -0
- package/dist/react/components/DataTable/Toolbar.d.ts +25 -0
- package/dist/react/components/DataTable/Toolbar.d.ts.map +1 -0
- package/dist/react/components/DataTable/Toolbar.js +17 -0
- package/dist/react/components/DataTable/Toolbar.js.map +1 -0
- package/dist/react/components/DataTable/ViewOptionsMenu.d.ts +12 -0
- package/dist/react/components/DataTable/ViewOptionsMenu.d.ts.map +1 -0
- package/dist/react/components/DataTable/ViewOptionsMenu.js +21 -0
- package/dist/react/components/DataTable/ViewOptionsMenu.js.map +1 -0
- package/dist/react/components/DataTable/cells/CellRenderer.d.ts +32 -0
- package/dist/react/components/DataTable/cells/CellRenderer.d.ts.map +1 -0
- package/dist/react/components/DataTable/cells/CellRenderer.js +133 -0
- package/dist/react/components/DataTable/cells/CellRenderer.js.map +1 -0
- package/dist/react/components/DataTable/cells/CodeCell.d.ts +13 -0
- package/dist/react/components/DataTable/cells/CodeCell.d.ts.map +1 -0
- package/dist/react/components/DataTable/cells/CodeCell.js +12 -0
- package/dist/react/components/DataTable/cells/CodeCell.js.map +1 -0
- package/dist/react/components/DataTable/cells/LinkCell.d.ts +12 -0
- package/dist/react/components/DataTable/cells/LinkCell.d.ts.map +1 -0
- package/dist/react/components/DataTable/cells/LinkCell.js +11 -0
- package/dist/react/components/DataTable/cells/LinkCell.js.map +1 -0
- package/dist/react/components/DataTable/cells/PasswordCell.d.ts +12 -0
- package/dist/react/components/DataTable/cells/PasswordCell.d.ts.map +1 -0
- package/dist/react/components/DataTable/cells/PasswordCell.js +21 -0
- package/dist/react/components/DataTable/cells/PasswordCell.js.map +1 -0
- package/dist/react/components/DataTable/index.d.ts +13 -0
- package/dist/react/components/DataTable/index.d.ts.map +1 -0
- package/dist/react/components/DataTable/index.js +12 -0
- package/dist/react/components/DataTable/index.js.map +1 -0
- package/dist/react/components/DataTable/types.d.ts +37 -0
- package/dist/react/components/DataTable/types.d.ts.map +1 -0
- package/dist/react/components/DataTable/types.js +2 -0
- package/dist/react/components/DataTable/types.js.map +1 -0
- package/dist/react/components/DataTable.d.ts +16 -0
- package/dist/react/components/DataTable.d.ts.map +1 -0
- package/dist/react/components/DataTable.js +25 -0
- package/dist/react/components/DataTable.js.map +1 -0
- package/dist/react/components/DiscardConfirmDialog.d.ts +25 -0
- package/dist/react/components/DiscardConfirmDialog.d.ts.map +1 -0
- package/dist/react/components/DiscardConfirmDialog.js +46 -0
- package/dist/react/components/DiscardConfirmDialog.js.map +1 -0
- package/dist/react/components/DiscardConfirmOverlay.d.ts +14 -0
- package/dist/react/components/DiscardConfirmOverlay.d.ts.map +1 -0
- package/dist/react/components/DiscardConfirmOverlay.js +7 -0
- package/dist/react/components/DiscardConfirmOverlay.js.map +1 -0
- package/dist/react/components/DisclosureButton.d.ts +20 -0
- package/dist/react/components/DisclosureButton.d.ts.map +1 -0
- package/dist/react/components/DisclosureButton.js +15 -0
- package/dist/react/components/DisclosureButton.js.map +1 -0
- package/dist/react/components/DismissButton.d.ts +10 -0
- package/dist/react/components/DismissButton.d.ts.map +1 -0
- package/dist/react/components/DismissButton.js +7 -0
- package/dist/react/components/DismissButton.js.map +1 -0
- package/dist/react/components/DragHandle.d.ts +15 -0
- package/dist/react/components/DragHandle.d.ts.map +1 -0
- package/dist/react/components/DragHandle.js +9 -0
- package/dist/react/components/DragHandle.js.map +1 -0
- package/dist/react/components/Drawer.d.ts +34 -0
- package/dist/react/components/Drawer.d.ts.map +1 -0
- package/dist/react/components/Drawer.js +58 -0
- package/dist/react/components/Drawer.js.map +1 -0
- package/dist/react/components/DropIndicator.d.ts +11 -0
- package/dist/react/components/DropIndicator.d.ts.map +1 -0
- package/dist/react/components/DropIndicator.js +18 -0
- package/dist/react/components/DropIndicator.js.map +1 -0
- package/dist/react/components/Dropdown.d.ts +64 -0
- package/dist/react/components/Dropdown.d.ts.map +1 -0
- package/dist/react/components/Dropdown.js +144 -0
- package/dist/react/components/Dropdown.js.map +1 -0
- package/dist/react/components/DropdownMenu.d.ts +34 -0
- package/dist/react/components/DropdownMenu.d.ts.map +1 -0
- package/dist/react/components/DropdownMenu.js +27 -0
- package/dist/react/components/DropdownMenu.js.map +1 -0
- package/dist/react/components/EmojiField.d.ts +17 -0
- package/dist/react/components/EmojiField.d.ts.map +1 -0
- package/dist/react/components/EmojiField.js +18 -0
- package/dist/react/components/EmojiField.js.map +1 -0
- package/dist/react/components/EmptyState.d.ts +18 -0
- package/dist/react/components/EmptyState.d.ts.map +1 -0
- package/dist/react/components/EmptyState.js +11 -0
- package/dist/react/components/EmptyState.js.map +1 -0
- package/dist/react/components/EnvCompare.d.ts +20 -0
- package/dist/react/components/EnvCompare.d.ts.map +1 -0
- package/dist/react/components/EnvCompare.js +31 -0
- package/dist/react/components/EnvCompare.js.map +1 -0
- package/dist/react/components/EnvEditor.d.ts +22 -0
- package/dist/react/components/EnvEditor.d.ts.map +1 -0
- package/dist/react/components/EnvEditor.js +42 -0
- package/dist/react/components/EnvEditor.js.map +1 -0
- package/dist/react/components/Field.d.ts +48 -0
- package/dist/react/components/Field.d.ts.map +1 -0
- package/dist/react/components/Field.js +49 -0
- package/dist/react/components/Field.js.map +1 -0
- package/dist/react/components/FieldInput.d.ts +86 -0
- package/dist/react/components/FieldInput.d.ts.map +1 -0
- package/dist/react/components/FieldInput.js +218 -0
- package/dist/react/components/FieldInput.js.map +1 -0
- package/dist/react/components/FieldLabel.d.ts +23 -0
- package/dist/react/components/FieldLabel.d.ts.map +1 -0
- package/dist/react/components/FieldLabel.js +8 -0
- package/dist/react/components/FieldLabel.js.map +1 -0
- package/dist/react/components/Grid.d.ts +20 -0
- package/dist/react/components/Grid.d.ts.map +1 -0
- package/dist/react/components/Grid.js +15 -0
- package/dist/react/components/Grid.js.map +1 -0
- package/dist/react/components/HoverCard.d.ts +19 -0
- package/dist/react/components/HoverCard.d.ts.map +1 -0
- package/dist/react/components/HoverCard.js +21 -0
- package/dist/react/components/HoverCard.js.map +1 -0
- package/dist/react/components/IconButton.d.ts +14 -0
- package/dist/react/components/IconButton.d.ts.map +1 -0
- package/dist/react/components/IconButton.js +13 -0
- package/dist/react/components/IconButton.js.map +1 -0
- package/dist/react/components/InfoHint.d.ts +24 -0
- package/dist/react/components/InfoHint.d.ts.map +1 -0
- package/dist/react/components/InfoHint.js +43 -0
- package/dist/react/components/InfoHint.js.map +1 -0
- package/dist/react/components/InlineEditableText.d.ts +28 -0
- package/dist/react/components/InlineEditableText.d.ts.map +1 -0
- package/dist/react/components/InlineEditableText.js +65 -0
- package/dist/react/components/InlineEditableText.js.map +1 -0
- package/dist/react/components/Input.d.ts +18 -0
- package/dist/react/components/Input.d.ts.map +1 -0
- package/dist/react/components/Input.js +22 -0
- package/dist/react/components/Input.js.map +1 -0
- package/dist/react/components/JsonEditor.d.ts +59 -0
- package/dist/react/components/JsonEditor.d.ts.map +1 -0
- package/dist/react/components/JsonEditor.js +54 -0
- package/dist/react/components/JsonEditor.js.map +1 -0
- package/dist/react/components/Lightbox.d.ts +17 -0
- package/dist/react/components/Lightbox.d.ts.map +1 -0
- package/dist/react/components/Lightbox.js +18 -0
- package/dist/react/components/Lightbox.js.map +1 -0
- package/dist/react/components/Modal.d.ts +35 -0
- package/dist/react/components/Modal.d.ts.map +1 -0
- package/dist/react/components/Modal.js +54 -0
- package/dist/react/components/Modal.js.map +1 -0
- package/dist/react/components/ModalShell.d.ts +39 -0
- package/dist/react/components/ModalShell.d.ts.map +1 -0
- package/dist/react/components/ModalShell.js +63 -0
- package/dist/react/components/ModalShell.js.map +1 -0
- package/dist/react/components/MultiSelectField.d.ts +28 -0
- package/dist/react/components/MultiSelectField.d.ts.map +1 -0
- package/dist/react/components/MultiSelectField.js +25 -0
- package/dist/react/components/MultiSelectField.js.map +1 -0
- package/dist/react/components/Page.d.ts +23 -0
- package/dist/react/components/Page.d.ts.map +1 -0
- package/dist/react/components/Page.js +24 -0
- package/dist/react/components/Page.js.map +1 -0
- package/dist/react/components/PageBottom.d.ts +62 -0
- package/dist/react/components/PageBottom.d.ts.map +1 -0
- package/dist/react/components/PageBottom.js +87 -0
- package/dist/react/components/PageBottom.js.map +1 -0
- package/dist/react/components/PageContainer.d.ts +8 -0
- package/dist/react/components/PageContainer.d.ts.map +1 -0
- package/dist/react/components/PageContainer.js +12 -0
- package/dist/react/components/PageContainer.js.map +1 -0
- package/dist/react/components/Pagination.d.ts +24 -0
- package/dist/react/components/Pagination.d.ts.map +1 -0
- package/dist/react/components/Pagination.js +48 -0
- package/dist/react/components/Pagination.js.map +1 -0
- package/dist/react/components/Popover.d.ts +23 -0
- package/dist/react/components/Popover.d.ts.map +1 -0
- package/dist/react/components/Popover.js +14 -0
- package/dist/react/components/Popover.js.map +1 -0
- package/dist/react/components/QueryBoundary.d.ts +34 -0
- package/dist/react/components/QueryBoundary.d.ts.map +1 -0
- package/dist/react/components/QueryBoundary.js +28 -0
- package/dist/react/components/QueryBoundary.js.map +1 -0
- package/dist/react/components/RatingField.d.ts +21 -0
- package/dist/react/components/RatingField.d.ts.map +1 -0
- package/dist/react/components/RatingField.js +30 -0
- package/dist/react/components/RatingField.js.map +1 -0
- package/dist/react/components/RenderField.d.ts +16 -0
- package/dist/react/components/RenderField.d.ts.map +1 -0
- package/dist/react/components/RenderField.js +19 -0
- package/dist/react/components/RenderField.js.map +1 -0
- package/dist/react/components/ScrollArea.d.ts +61 -0
- package/dist/react/components/ScrollArea.d.ts.map +1 -0
- package/dist/react/components/ScrollArea.js +67 -0
- package/dist/react/components/ScrollArea.js.map +1 -0
- package/dist/react/components/ScrollToTopButton.d.ts +8 -0
- package/dist/react/components/ScrollToTopButton.d.ts.map +1 -0
- package/dist/react/components/ScrollToTopButton.js +42 -0
- package/dist/react/components/ScrollToTopButton.js.map +1 -0
- package/dist/react/components/SecretInput.d.ts +38 -0
- package/dist/react/components/SecretInput.d.ts.map +1 -0
- package/dist/react/components/SecretInput.js +33 -0
- package/dist/react/components/SecretInput.js.map +1 -0
- package/dist/react/components/Section.d.ts +17 -0
- package/dist/react/components/Section.d.ts.map +1 -0
- package/dist/react/components/Section.js +14 -0
- package/dist/react/components/Section.js.map +1 -0
- package/dist/react/components/SectionHeading.d.ts +12 -0
- package/dist/react/components/SectionHeading.d.ts.map +1 -0
- package/dist/react/components/SectionHeading.js +5 -0
- package/dist/react/components/SectionHeading.js.map +1 -0
- package/dist/react/components/SegmentedControl.d.ts +24 -0
- package/dist/react/components/SegmentedControl.d.ts.map +1 -0
- package/dist/react/components/SegmentedControl.js +14 -0
- package/dist/react/components/SegmentedControl.js.map +1 -0
- package/dist/react/components/Select.d.ts +5 -0
- package/dist/react/components/Select.d.ts.map +1 -0
- package/dist/react/components/Select.js +8 -0
- package/dist/react/components/Select.js.map +1 -0
- package/dist/react/components/SelectField.d.ts +46 -0
- package/dist/react/components/SelectField.d.ts.map +1 -0
- package/dist/react/components/SelectField.js +23 -0
- package/dist/react/components/SelectField.js.map +1 -0
- package/dist/react/components/Skeleton.d.ts +28 -0
- package/dist/react/components/Skeleton.d.ts.map +1 -0
- package/dist/react/components/Skeleton.js +29 -0
- package/dist/react/components/Skeleton.js.map +1 -0
- package/dist/react/components/Spinner.d.ts +14 -0
- package/dist/react/components/Spinner.d.ts.map +1 -0
- package/dist/react/components/Spinner.js +10 -0
- package/dist/react/components/Spinner.js.map +1 -0
- package/dist/react/components/SplitButton.d.ts +36 -0
- package/dist/react/components/SplitButton.d.ts.map +1 -0
- package/dist/react/components/SplitButton.js +24 -0
- package/dist/react/components/SplitButton.js.map +1 -0
- package/dist/react/components/StatTile.d.ts +22 -0
- package/dist/react/components/StatTile.d.ts.map +1 -0
- package/dist/react/components/StatTile.js +27 -0
- package/dist/react/components/StatTile.js.map +1 -0
- package/dist/react/components/Surface.d.ts +37 -0
- package/dist/react/components/Surface.d.ts.map +1 -0
- package/dist/react/components/Surface.js +29 -0
- package/dist/react/components/Surface.js.map +1 -0
- package/dist/react/components/Switch.d.ts +12 -0
- package/dist/react/components/Switch.d.ts.map +1 -0
- package/dist/react/components/Switch.js +13 -0
- package/dist/react/components/Switch.js.map +1 -0
- package/dist/react/components/TagsInput.d.ts +25 -0
- package/dist/react/components/TagsInput.d.ts.map +1 -0
- package/dist/react/components/TagsInput.js +62 -0
- package/dist/react/components/TagsInput.js.map +1 -0
- package/dist/react/components/TextArea.d.ts +10 -0
- package/dist/react/components/TextArea.d.ts.map +1 -0
- package/dist/react/components/TextArea.js +14 -0
- package/dist/react/components/TextArea.js.map +1 -0
- package/dist/react/components/Tooltip.d.ts +32 -0
- package/dist/react/components/Tooltip.d.ts.map +1 -0
- package/dist/react/components/Tooltip.js +32 -0
- package/dist/react/components/Tooltip.js.map +1 -0
- package/dist/react/components/Wizard/ReviewStep.d.ts +26 -0
- package/dist/react/components/Wizard/ReviewStep.d.ts.map +1 -0
- package/dist/react/components/Wizard/ReviewStep.js +42 -0
- package/dist/react/components/Wizard/ReviewStep.js.map +1 -0
- package/dist/react/components/Wizard/Stepper.d.ts +24 -0
- package/dist/react/components/Wizard/Stepper.d.ts.map +1 -0
- package/dist/react/components/Wizard/Stepper.js +24 -0
- package/dist/react/components/Wizard/Stepper.js.map +1 -0
- package/dist/react/components/Wizard/Wizard.d.ts +20 -0
- package/dist/react/components/Wizard/Wizard.d.ts.map +1 -0
- package/dist/react/components/Wizard/Wizard.js +153 -0
- package/dist/react/components/Wizard/Wizard.js.map +1 -0
- package/dist/react/components/Wizard/types.d.ts +71 -0
- package/dist/react/components/Wizard/types.d.ts.map +1 -0
- package/dist/react/components/Wizard/types.js +2 -0
- package/dist/react/components/Wizard/types.js.map +1 -0
- package/dist/react/components/dialog.d.ts +38 -0
- package/dist/react/components/dialog.d.ts.map +1 -0
- package/dist/react/components/dialog.js +38 -0
- package/dist/react/components/dialog.js.map +1 -0
- package/dist/react/components/layout.d.ts +32 -0
- package/dist/react/components/layout.d.ts.map +1 -0
- package/dist/react/components/layout.js +46 -0
- package/dist/react/components/layout.js.map +1 -0
- package/dist/react/components/popoverPlacement.d.ts +40 -0
- package/dist/react/components/popoverPlacement.d.ts.map +1 -0
- package/dist/react/components/popoverPlacement.js +25 -0
- package/dist/react/components/popoverPlacement.js.map +1 -0
- package/dist/react/components/revealOnHover.d.ts +3 -0
- package/dist/react/components/revealOnHover.d.ts.map +1 -0
- package/dist/react/components/revealOnHover.js +3 -0
- package/dist/react/components/revealOnHover.js.map +1 -0
- package/dist/react/confirm.d.ts +25 -0
- package/dist/react/confirm.d.ts.map +1 -0
- package/dist/react/confirm.js +43 -0
- package/dist/react/confirm.js.map +1 -0
- package/dist/react/constants/viewport.d.ts +16 -0
- package/dist/react/constants/viewport.d.ts.map +1 -0
- package/dist/react/constants/viewport.js +16 -0
- package/dist/react/constants/viewport.js.map +1 -0
- package/dist/react/createApiHooks.d.ts +110 -0
- package/dist/react/createApiHooks.d.ts.map +1 -0
- package/dist/react/createApiHooks.js +56 -0
- package/dist/react/createApiHooks.js.map +1 -0
- package/dist/react/emoji/EmojiAutocomplete.d.ts +23 -0
- package/dist/react/emoji/EmojiAutocomplete.d.ts.map +1 -0
- package/dist/react/emoji/EmojiAutocomplete.js +99 -0
- package/dist/react/emoji/EmojiAutocomplete.js.map +1 -0
- package/dist/react/emoji/EmojiPicker.d.ts +32 -0
- package/dist/react/emoji/EmojiPicker.d.ts.map +1 -0
- package/dist/react/emoji/EmojiPicker.js +41 -0
- package/dist/react/emoji/EmojiPicker.js.map +1 -0
- package/dist/react/emoji/emojiSearch.d.ts +22 -0
- package/dist/react/emoji/emojiSearch.d.ts.map +1 -0
- package/dist/react/emoji/emojiSearch.js +49 -0
- package/dist/react/emoji/emojiSearch.js.map +1 -0
- package/dist/react/emoji/index.d.ts +4 -0
- package/dist/react/emoji/index.d.ts.map +1 -0
- package/dist/react/emoji/index.js +4 -0
- package/dist/react/emoji/index.js.map +1 -0
- package/dist/react/hooks/DragHandleIcon.d.ts +12 -0
- package/dist/react/hooks/DragHandleIcon.d.ts.map +1 -0
- package/dist/react/hooks/DragHandleIcon.js +13 -0
- package/dist/react/hooks/DragHandleIcon.js.map +1 -0
- package/dist/react/hooks/dragShared.d.ts +21 -0
- package/dist/react/hooks/dragShared.d.ts.map +1 -0
- package/dist/react/hooks/dragShared.js +2 -0
- package/dist/react/hooks/dragShared.js.map +1 -0
- package/dist/react/hooks/useAutoSizeTextarea.d.ts +19 -0
- package/dist/react/hooks/useAutoSizeTextarea.d.ts.map +1 -0
- package/dist/react/hooks/useAutoSizeTextarea.js +44 -0
- package/dist/react/hooks/useAutoSizeTextarea.js.map +1 -0
- package/dist/react/hooks/useCaretInView.d.ts +22 -0
- package/dist/react/hooks/useCaretInView.d.ts.map +1 -0
- package/dist/react/hooks/useCaretInView.js +32 -0
- package/dist/react/hooks/useCaretInView.js.map +1 -0
- package/dist/react/hooks/useCopyToClipboard.d.ts +11 -0
- package/dist/react/hooks/useCopyToClipboard.d.ts.map +1 -0
- package/dist/react/hooks/useCopyToClipboard.js +31 -0
- package/dist/react/hooks/useCopyToClipboard.js.map +1 -0
- package/dist/react/hooks/useCrossContainerDrag.d.ts +72 -0
- package/dist/react/hooks/useCrossContainerDrag.d.ts.map +1 -0
- package/dist/react/hooks/useCrossContainerDrag.js +202 -0
- package/dist/react/hooks/useCrossContainerDrag.js.map +1 -0
- package/dist/react/hooks/useDebouncedValue.d.ts +7 -0
- package/dist/react/hooks/useDebouncedValue.d.ts.map +1 -0
- package/dist/react/hooks/useDebouncedValue.js +15 -0
- package/dist/react/hooks/useDebouncedValue.js.map +1 -0
- package/dist/react/hooks/useDiscardGuard.d.ts +42 -0
- package/dist/react/hooks/useDiscardGuard.d.ts.map +1 -0
- package/dist/react/hooks/useDiscardGuard.js +44 -0
- package/dist/react/hooks/useDiscardGuard.js.map +1 -0
- package/dist/react/hooks/useDismissibleItems.d.ts +46 -0
- package/dist/react/hooks/useDismissibleItems.d.ts.map +1 -0
- package/dist/react/hooks/useDismissibleItems.js +28 -0
- package/dist/react/hooks/useDismissibleItems.js.map +1 -0
- package/dist/react/hooks/useDndSensors.d.ts +21 -0
- package/dist/react/hooks/useDndSensors.d.ts.map +1 -0
- package/dist/react/hooks/useDndSensors.js +23 -0
- package/dist/react/hooks/useDndSensors.js.map +1 -0
- package/dist/react/hooks/useDragReorder.d.ts +70 -0
- package/dist/react/hooks/useDragReorder.d.ts.map +1 -0
- package/dist/react/hooks/useDragReorder.js +134 -0
- package/dist/react/hooks/useDragReorder.js.map +1 -0
- package/dist/react/hooks/useDragToMove.d.ts +65 -0
- package/dist/react/hooks/useDragToMove.d.ts.map +1 -0
- package/dist/react/hooks/useDragToMove.js +76 -0
- package/dist/react/hooks/useDragToMove.js.map +1 -0
- package/dist/react/hooks/useEscapeKey.d.ts +3 -0
- package/dist/react/hooks/useEscapeKey.d.ts.map +1 -0
- package/dist/react/hooks/useEscapeKey.js +15 -0
- package/dist/react/hooks/useEscapeKey.js.map +1 -0
- package/dist/react/hooks/useHasHover.d.ts +9 -0
- package/dist/react/hooks/useHasHover.d.ts.map +1 -0
- package/dist/react/hooks/useHasHover.js +39 -0
- package/dist/react/hooks/useHasHover.js.map +1 -0
- package/dist/react/hooks/useKeyDown.d.ts +16 -0
- package/dist/react/hooks/useKeyDown.d.ts.map +1 -0
- package/dist/react/hooks/useKeyDown.js +42 -0
- package/dist/react/hooks/useKeyDown.js.map +1 -0
- package/dist/react/hooks/useKeyboardInset.d.ts +12 -0
- package/dist/react/hooks/useKeyboardInset.d.ts.map +1 -0
- package/dist/react/hooks/useKeyboardInset.js +33 -0
- package/dist/react/hooks/useKeyboardInset.js.map +1 -0
- package/dist/react/hooks/useMediaQuery.d.ts +3 -0
- package/dist/react/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/react/hooks/useMediaQuery.js +16 -0
- package/dist/react/hooks/useMediaQuery.js.map +1 -0
- package/dist/react/hooks/useOnlineStatus.d.ts +8 -0
- package/dist/react/hooks/useOnlineStatus.d.ts.map +1 -0
- package/dist/react/hooks/useOnlineStatus.js +27 -0
- package/dist/react/hooks/useOnlineStatus.js.map +1 -0
- package/dist/react/hooks/usePagination.d.ts +49 -0
- package/dist/react/hooks/usePagination.d.ts.map +1 -0
- package/dist/react/hooks/usePagination.js +50 -0
- package/dist/react/hooks/usePagination.js.map +1 -0
- package/dist/react/hooks/useTableSort.d.ts +33 -0
- package/dist/react/hooks/useTableSort.d.ts.map +1 -0
- package/dist/react/hooks/useTableSort.js +72 -0
- package/dist/react/hooks/useTableSort.js.map +1 -0
- package/dist/react/hooks/useWindowResize.d.ts +13 -0
- package/dist/react/hooks/useWindowResize.d.ts.map +1 -0
- package/dist/react/hooks/useWindowResize.js +30 -0
- package/dist/react/hooks/useWindowResize.js.map +1 -0
- package/dist/react/index.d.ts +106 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +110 -0
- package/dist/react/index.js.map +1 -0
- package/dist/react/layoutEngine/LayoutCanvas.d.ts +23 -0
- package/dist/react/layoutEngine/LayoutCanvas.d.ts.map +1 -0
- package/dist/react/layoutEngine/LayoutCanvas.js +153 -0
- package/dist/react/layoutEngine/LayoutCanvas.js.map +1 -0
- package/dist/react/layoutEngine/LayoutConfigDialog.d.ts +24 -0
- package/dist/react/layoutEngine/LayoutConfigDialog.d.ts.map +1 -0
- package/dist/react/layoutEngine/LayoutConfigDialog.js +100 -0
- package/dist/react/layoutEngine/LayoutConfigDialog.js.map +1 -0
- package/dist/react/layoutEngine/LayoutRenderer.d.ts +22 -0
- package/dist/react/layoutEngine/LayoutRenderer.d.ts.map +1 -0
- package/dist/react/layoutEngine/LayoutRenderer.js +69 -0
- package/dist/react/layoutEngine/LayoutRenderer.js.map +1 -0
- package/dist/react/layoutEngine/NodeInspector.d.ts +18 -0
- package/dist/react/layoutEngine/NodeInspector.d.ts.map +1 -0
- package/dist/react/layoutEngine/NodeInspector.js +94 -0
- package/dist/react/layoutEngine/NodeInspector.js.map +1 -0
- package/dist/react/layoutEngine/SuggestPanel.d.ts +12 -0
- package/dist/react/layoutEngine/SuggestPanel.d.ts.map +1 -0
- package/dist/react/layoutEngine/SuggestPanel.js +25 -0
- package/dist/react/layoutEngine/SuggestPanel.js.map +1 -0
- package/dist/react/layoutEngine/index.d.ts +9 -0
- package/dist/react/layoutEngine/index.d.ts.map +1 -0
- package/dist/react/layoutEngine/index.js +15 -0
- package/dist/react/layoutEngine/index.js.map +1 -0
- package/dist/react/layoutEngine/registry.d.ts +11 -0
- package/dist/react/layoutEngine/registry.d.ts.map +1 -0
- package/dist/react/layoutEngine/registry.js +46 -0
- package/dist/react/layoutEngine/registry.js.map +1 -0
- package/dist/react/layoutEngine/types.d.ts +81 -0
- package/dist/react/layoutEngine/types.d.ts.map +1 -0
- package/dist/react/layoutEngine/types.js +2 -0
- package/dist/react/layoutEngine/types.js.map +1 -0
- package/dist/react/layoutEngine/useLayoutEditor.d.ts +40 -0
- package/dist/react/layoutEngine/useLayoutEditor.d.ts.map +1 -0
- package/dist/react/layoutEngine/useLayoutEditor.js +98 -0
- package/dist/react/layoutEngine/useLayoutEditor.js.map +1 -0
- package/dist/react/lib/cn.d.ts +4 -0
- package/dist/react/lib/cn.d.ts.map +1 -0
- package/dist/react/lib/cn.js +7 -0
- package/dist/react/lib/cn.js.map +1 -0
- package/dist/react/lib/draftPersistence.d.ts +19 -0
- package/dist/react/lib/draftPersistence.d.ts.map +1 -0
- package/dist/react/lib/draftPersistence.js +50 -0
- package/dist/react/lib/draftPersistence.js.map +1 -0
- package/dist/react/lib/field.d.ts +13 -0
- package/dist/react/lib/field.d.ts.map +1 -0
- package/dist/react/lib/field.js +13 -0
- package/dist/react/lib/field.js.map +1 -0
- package/dist/react/lib/floatingStyles.d.ts +18 -0
- package/dist/react/lib/floatingStyles.d.ts.map +1 -0
- package/dist/react/lib/floatingStyles.js +24 -0
- package/dist/react/lib/floatingStyles.js.map +1 -0
- package/dist/react/lib/form.d.ts +25 -0
- package/dist/react/lib/form.d.ts.map +1 -0
- package/dist/react/lib/form.js +34 -0
- package/dist/react/lib/form.js.map +1 -0
- package/dist/react/lib/store.d.ts +21 -0
- package/dist/react/lib/store.d.ts.map +1 -0
- package/dist/react/lib/store.js +12 -0
- package/dist/react/lib/store.js.map +1 -0
- package/dist/react/media/AutoMaskControls.d.ts +31 -0
- package/dist/react/media/AutoMaskControls.d.ts.map +1 -0
- package/dist/react/media/AutoMaskControls.js +34 -0
- package/dist/react/media/AutoMaskControls.js.map +1 -0
- package/dist/react/media/BrushSizeSlider.d.ts +14 -0
- package/dist/react/media/BrushSizeSlider.d.ts.map +1 -0
- package/dist/react/media/BrushSizeSlider.js +49 -0
- package/dist/react/media/BrushSizeSlider.js.map +1 -0
- package/dist/react/media/ImageEditor.d.ts +14 -0
- package/dist/react/media/ImageEditor.d.ts.map +1 -0
- package/dist/react/media/ImageEditor.js +54 -0
- package/dist/react/media/ImageEditor.js.map +1 -0
- package/dist/react/media/MaskPainter.d.ts +21 -0
- package/dist/react/media/MaskPainter.d.ts.map +1 -0
- package/dist/react/media/MaskPainter.js +599 -0
- package/dist/react/media/MaskPainter.js.map +1 -0
- package/dist/react/media/MediaCatalogueViewer.d.ts +9 -0
- package/dist/react/media/MediaCatalogueViewer.d.ts.map +1 -0
- package/dist/react/media/MediaCatalogueViewer.js +43 -0
- package/dist/react/media/MediaCatalogueViewer.js.map +1 -0
- package/dist/react/media/MediaCell.d.ts +18 -0
- package/dist/react/media/MediaCell.d.ts.map +1 -0
- package/dist/react/media/MediaCell.js +20 -0
- package/dist/react/media/MediaCell.js.map +1 -0
- package/dist/react/media/MediaLightbox.d.ts +22 -0
- package/dist/react/media/MediaLightbox.d.ts.map +1 -0
- package/dist/react/media/MediaLightbox.js +24 -0
- package/dist/react/media/MediaLightbox.js.map +1 -0
- package/dist/react/media/TrimRangeSlider.d.ts +23 -0
- package/dist/react/media/TrimRangeSlider.d.ts.map +1 -0
- package/dist/react/media/TrimRangeSlider.js +59 -0
- package/dist/react/media/TrimRangeSlider.js.map +1 -0
- package/dist/react/media/VideoSlideContent.d.ts +13 -0
- package/dist/react/media/VideoSlideContent.d.ts.map +1 -0
- package/dist/react/media/VideoSlideContent.js +21 -0
- package/dist/react/media/VideoSlideContent.js.map +1 -0
- package/dist/react/media/VideoTrimmer.d.ts +10 -0
- package/dist/react/media/VideoTrimmer.d.ts.map +1 -0
- package/dist/react/media/VideoTrimmer.js +129 -0
- package/dist/react/media/VideoTrimmer.js.map +1 -0
- package/dist/react/media/VirtualizedRows.d.ts +28 -0
- package/dist/react/media/VirtualizedRows.d.ts.map +1 -0
- package/dist/react/media/VirtualizedRows.js +64 -0
- package/dist/react/media/VirtualizedRows.js.map +1 -0
- package/dist/react/media/imageEditorSpec.d.ts +70 -0
- package/dist/react/media/imageEditorSpec.d.ts.map +1 -0
- package/dist/react/media/imageEditorSpec.js +110 -0
- package/dist/react/media/imageEditorSpec.js.map +1 -0
- package/dist/react/media/index.d.ts +11 -0
- package/dist/react/media/index.d.ts.map +1 -0
- package/dist/react/media/index.js +18 -0
- package/dist/react/media/index.js.map +1 -0
- package/dist/react/media/maskGeometry.d.ts +42 -0
- package/dist/react/media/maskGeometry.d.ts.map +1 -0
- package/dist/react/media/maskGeometry.js +66 -0
- package/dist/react/media/maskGeometry.js.map +1 -0
- package/dist/react/media/maskModel.d.ts +65 -0
- package/dist/react/media/maskModel.d.ts.map +1 -0
- package/dist/react/media/maskModel.js +64 -0
- package/dist/react/media/maskModel.js.map +1 -0
- package/dist/react/media/maskRaster.d.ts +40 -0
- package/dist/react/media/maskRaster.d.ts.map +1 -0
- package/dist/react/media/maskRaster.js +126 -0
- package/dist/react/media/maskRaster.js.map +1 -0
- package/dist/react/media/mediaPhoto.d.ts +35 -0
- package/dist/react/media/mediaPhoto.d.ts.map +1 -0
- package/dist/react/media/mediaPhoto.js +53 -0
- package/dist/react/media/mediaPhoto.js.map +1 -0
- package/dist/react/media/types.d.ts +146 -0
- package/dist/react/media/types.d.ts.map +1 -0
- package/dist/react/media/types.js +2 -0
- package/dist/react/media/types.js.map +1 -0
- package/dist/react/media/useIntersectionObserver.d.ts +18 -0
- package/dist/react/media/useIntersectionObserver.d.ts.map +1 -0
- package/dist/react/media/useIntersectionObserver.js +28 -0
- package/dist/react/media/useIntersectionObserver.js.map +1 -0
- package/dist/react/media/videoThumbnailer.d.ts +14 -0
- package/dist/react/media/videoThumbnailer.d.ts.map +1 -0
- package/dist/react/media/videoThumbnailer.js +111 -0
- package/dist/react/media/videoThumbnailer.js.map +1 -0
- package/dist/react/nav/Breadcrumbs.d.ts +44 -0
- package/dist/react/nav/Breadcrumbs.d.ts.map +1 -0
- package/dist/react/nav/Breadcrumbs.js +43 -0
- package/dist/react/nav/Breadcrumbs.js.map +1 -0
- package/dist/react/nav/ColorSwatchGrid.d.ts +19 -0
- package/dist/react/nav/ColorSwatchGrid.d.ts.map +1 -0
- package/dist/react/nav/ColorSwatchGrid.js +21 -0
- package/dist/react/nav/ColorSwatchGrid.js.map +1 -0
- package/dist/react/nav/CommandBar.d.ts +43 -0
- package/dist/react/nav/CommandBar.d.ts.map +1 -0
- package/dist/react/nav/CommandBar.js +19 -0
- package/dist/react/nav/CommandBar.js.map +1 -0
- package/dist/react/nav/HeaderSearch.d.ts +37 -0
- package/dist/react/nav/HeaderSearch.d.ts.map +1 -0
- package/dist/react/nav/HeaderSearch.js +101 -0
- package/dist/react/nav/HeaderSearch.js.map +1 -0
- package/dist/react/nav/HubTileGrid.d.ts +32 -0
- package/dist/react/nav/HubTileGrid.d.ts.map +1 -0
- package/dist/react/nav/HubTileGrid.js +60 -0
- package/dist/react/nav/HubTileGrid.js.map +1 -0
- package/dist/react/nav/NavColorPicker.d.ts +19 -0
- package/dist/react/nav/NavColorPicker.d.ts.map +1 -0
- package/dist/react/nav/NavColorPicker.js +16 -0
- package/dist/react/nav/NavColorPicker.js.map +1 -0
- package/dist/react/nav/NavItemMenu.d.ts +30 -0
- package/dist/react/nav/NavItemMenu.d.ts.map +1 -0
- package/dist/react/nav/NavItemMenu.js +24 -0
- package/dist/react/nav/NavItemMenu.js.map +1 -0
- package/dist/react/nav/PlaceBar.d.ts +36 -0
- package/dist/react/nav/PlaceBar.d.ts.map +1 -0
- package/dist/react/nav/PlaceBar.js +36 -0
- package/dist/react/nav/PlaceBar.js.map +1 -0
- package/dist/react/nav/SearchResults.d.ts +43 -0
- package/dist/react/nav/SearchResults.d.ts.map +1 -0
- package/dist/react/nav/SearchResults.js +26 -0
- package/dist/react/nav/SearchResults.js.map +1 -0
- package/dist/react/nav/SideNav.d.ts +37 -0
- package/dist/react/nav/SideNav.d.ts.map +1 -0
- package/dist/react/nav/SideNav.js +76 -0
- package/dist/react/nav/SideNav.js.map +1 -0
- package/dist/react/nav/SideNavItem.d.ts +28 -0
- package/dist/react/nav/SideNavItem.d.ts.map +1 -0
- package/dist/react/nav/SideNavItem.js +38 -0
- package/dist/react/nav/SideNavItem.js.map +1 -0
- package/dist/react/nav/colors.d.ts +8 -0
- package/dist/react/nav/colors.d.ts.map +1 -0
- package/dist/react/nav/colors.js +31 -0
- package/dist/react/nav/colors.js.map +1 -0
- package/dist/react/nav/filterNavSearch.d.ts +15 -0
- package/dist/react/nav/filterNavSearch.d.ts.map +1 -0
- package/dist/react/nav/filterNavSearch.js +65 -0
- package/dist/react/nav/filterNavSearch.js.map +1 -0
- package/dist/react/nav/index.d.ts +15 -0
- package/dist/react/nav/index.d.ts.map +1 -0
- package/dist/react/nav/index.js +22 -0
- package/dist/react/nav/index.js.map +1 -0
- package/dist/react/nav/navMenuPlacement.d.ts +58 -0
- package/dist/react/nav/navMenuPlacement.d.ts.map +1 -0
- package/dist/react/nav/navMenuPlacement.js +36 -0
- package/dist/react/nav/navMenuPlacement.js.map +1 -0
- package/dist/react/nav/navSearch.d.ts +31 -0
- package/dist/react/nav/navSearch.d.ts.map +1 -0
- package/dist/react/nav/navSearch.js +37 -0
- package/dist/react/nav/navSearch.js.map +1 -0
- package/dist/react/nav/navShared.d.ts +43 -0
- package/dist/react/nav/navShared.d.ts.map +1 -0
- package/dist/react/nav/navShared.js +51 -0
- package/dist/react/nav/navShared.js.map +1 -0
- package/dist/react/nav/partitionAndOrder.d.ts +19 -0
- package/dist/react/nav/partitionAndOrder.d.ts.map +1 -0
- package/dist/react/nav/partitionAndOrder.js +25 -0
- package/dist/react/nav/partitionAndOrder.js.map +1 -0
- package/dist/react/nav/types.d.ts +65 -0
- package/dist/react/nav/types.d.ts.map +1 -0
- package/dist/react/nav/types.js +2 -0
- package/dist/react/nav/types.js.map +1 -0
- package/dist/react/palette/Command.d.ts +25 -0
- package/dist/react/palette/Command.d.ts.map +1 -0
- package/dist/react/palette/Command.js +41 -0
- package/dist/react/palette/Command.js.map +1 -0
- package/dist/react/palette/CommandPalette.d.ts +64 -0
- package/dist/react/palette/CommandPalette.d.ts.map +1 -0
- package/dist/react/palette/CommandPalette.js +205 -0
- package/dist/react/palette/CommandPalette.js.map +1 -0
- package/dist/react/palette/index.d.ts +7 -0
- package/dist/react/palette/index.d.ts.map +1 -0
- package/dist/react/palette/index.js +11 -0
- package/dist/react/palette/index.js.map +1 -0
- package/dist/react/palette/useCommandPalette.d.ts +16 -0
- package/dist/react/palette/useCommandPalette.d.ts.map +1 -0
- package/dist/react/palette/useCommandPalette.js +20 -0
- package/dist/react/palette/useCommandPalette.js.map +1 -0
- package/dist/react/palette/useHotkeys.d.ts +14 -0
- package/dist/react/palette/useHotkeys.d.ts.map +1 -0
- package/dist/react/palette/useHotkeys.js +35 -0
- package/dist/react/palette/useHotkeys.js.map +1 -0
- package/dist/react/palette/useShortcutRegistry.d.ts +4 -0
- package/dist/react/palette/useShortcutRegistry.d.ts.map +1 -0
- package/dist/react/palette/useShortcutRegistry.js +12 -0
- package/dist/react/palette/useShortcutRegistry.js.map +1 -0
- package/dist/react/search/HeaderSearch.d.ts +55 -0
- package/dist/react/search/HeaderSearch.d.ts.map +1 -0
- package/dist/react/search/HeaderSearch.js +107 -0
- package/dist/react/search/HeaderSearch.js.map +1 -0
- package/dist/react/search/SearchResults.d.ts +45 -0
- package/dist/react/search/SearchResults.d.ts.map +1 -0
- package/dist/react/search/SearchResults.js +25 -0
- package/dist/react/search/SearchResults.js.map +1 -0
- package/dist/react/search/index.d.ts +3 -0
- package/dist/react/search/index.d.ts.map +1 -0
- package/dist/react/search/index.js +8 -0
- package/dist/react/search/index.js.map +1 -0
- package/dist/react/spreadsheet/GridCopyPaste.d.ts +28 -0
- package/dist/react/spreadsheet/GridCopyPaste.d.ts.map +1 -0
- package/dist/react/spreadsheet/GridCopyPaste.js +84 -0
- package/dist/react/spreadsheet/GridCopyPaste.js.map +1 -0
- package/dist/react/spreadsheet/SpreadsheetGrid.d.ts +61 -0
- package/dist/react/spreadsheet/SpreadsheetGrid.d.ts.map +1 -0
- package/dist/react/spreadsheet/SpreadsheetGrid.js +31 -0
- package/dist/react/spreadsheet/SpreadsheetGrid.js.map +1 -0
- package/dist/react/spreadsheet/index.d.ts +6 -0
- package/dist/react/spreadsheet/index.d.ts.map +1 -0
- package/dist/react/spreadsheet/index.js +17 -0
- package/dist/react/spreadsheet/index.js.map +1 -0
- package/dist/react/spreadsheet/types.d.ts +42 -0
- package/dist/react/spreadsheet/types.d.ts.map +1 -0
- package/dist/react/spreadsheet/types.js +5 -0
- package/dist/react/spreadsheet/types.js.map +1 -0
- package/dist/react/spreadsheet/useGlideTheme.d.ts +14 -0
- package/dist/react/spreadsheet/useGlideTheme.d.ts.map +1 -0
- package/dist/react/spreadsheet/useGlideTheme.js +113 -0
- package/dist/react/spreadsheet/useGlideTheme.js.map +1 -0
- package/dist/react/spreadsheet/useGridSelection.d.ts +18 -0
- package/dist/react/spreadsheet/useGridSelection.d.ts.map +1 -0
- package/dist/react/spreadsheet/useGridSelection.js +32 -0
- package/dist/react/spreadsheet/useGridSelection.js.map +1 -0
- package/dist/react/styling.d.ts +76 -0
- package/dist/react/styling.d.ts.map +1 -0
- package/dist/react/styling.js +20 -0
- package/dist/react/styling.js.map +1 -0
- package/dist/react/testReport/TestReportViewer.d.ts +25 -0
- package/dist/react/testReport/TestReportViewer.d.ts.map +1 -0
- package/dist/react/testReport/TestReportViewer.js +114 -0
- package/dist/react/testReport/TestReportViewer.js.map +1 -0
- package/dist/react/testReport/index.d.ts +2 -0
- package/dist/react/testReport/index.d.ts.map +1 -0
- package/dist/react/testReport/index.js +2 -0
- package/dist/react/testReport/index.js.map +1 -0
- package/dist/react/toastStore.d.ts +34 -0
- package/dist/react/toastStore.d.ts.map +1 -0
- package/dist/react/toastStore.js +70 -0
- package/dist/react/toastStore.js.map +1 -0
- package/dist/react/uiScale/UiScaleControl.d.ts +15 -0
- package/dist/react/uiScale/UiScaleControl.d.ts.map +1 -0
- package/dist/react/uiScale/UiScaleControl.js +16 -0
- package/dist/react/uiScale/UiScaleControl.js.map +1 -0
- package/dist/react/uiScale/scale.d.ts +37 -0
- package/dist/react/uiScale/scale.d.ts.map +1 -0
- package/dist/react/uiScale/scale.js +48 -0
- package/dist/react/uiScale/scale.js.map +1 -0
- package/dist/react/uiScale/uiScaleStore.d.ts +48 -0
- package/dist/react/uiScale/uiScaleStore.d.ts.map +1 -0
- package/dist/react/uiScale/uiScaleStore.js +64 -0
- package/dist/react/uiScale/uiScaleStore.js.map +1 -0
- package/dist/react/uiScale/useUiScale.d.ts +28 -0
- package/dist/react/uiScale/useUiScale.d.ts.map +1 -0
- package/dist/react/uiScale/useUiScale.js +27 -0
- package/dist/react/uiScale/useUiScale.js.map +1 -0
- package/dist/react/useToasts.d.ts +21 -0
- package/dist/react/useToasts.d.ts.map +1 -0
- package/dist/react/useToasts.js +28 -0
- package/dist/react/useToasts.js.map +1 -0
- package/dist/server/app.d.ts +42 -0
- package/dist/server/app.d.ts.map +1 -0
- package/dist/server/app.js +42 -0
- package/dist/server/app.js.map +1 -0
- package/dist/server/auth/cookie.d.ts +23 -0
- package/dist/server/auth/cookie.d.ts.map +1 -0
- package/dist/server/auth/cookie.js +36 -0
- package/dist/server/auth/cookie.js.map +1 -0
- package/dist/server/auth/csrf.d.ts +43 -0
- package/dist/server/auth/csrf.d.ts.map +1 -0
- package/dist/server/auth/csrf.js +37 -0
- package/dist/server/auth/csrf.js.map +1 -0
- package/dist/server/auth/getOnly.d.ts +21 -0
- package/dist/server/auth/getOnly.d.ts.map +1 -0
- package/dist/server/auth/getOnly.js +28 -0
- package/dist/server/auth/getOnly.js.map +1 -0
- package/dist/server/auth/index.d.ts +12 -0
- package/dist/server/auth/index.d.ts.map +1 -0
- package/dist/server/auth/index.js +15 -0
- package/dist/server/auth/index.js.map +1 -0
- package/dist/server/auth/jwt.d.ts +19 -0
- package/dist/server/auth/jwt.d.ts.map +1 -0
- package/dist/server/auth/jwt.js +57 -0
- package/dist/server/auth/jwt.js.map +1 -0
- package/dist/server/auth/loginThrottle.d.ts +34 -0
- package/dist/server/auth/loginThrottle.d.ts.map +1 -0
- package/dist/server/auth/loginThrottle.js +63 -0
- package/dist/server/auth/loginThrottle.js.map +1 -0
- package/dist/server/auth/middleware.d.ts +15 -0
- package/dist/server/auth/middleware.d.ts.map +1 -0
- package/dist/server/auth/middleware.js +48 -0
- package/dist/server/auth/middleware.js.map +1 -0
- package/dist/server/auth/password.d.ts +15 -0
- package/dist/server/auth/password.d.ts.map +1 -0
- package/dist/server/auth/password.js +66 -0
- package/dist/server/auth/password.js.map +1 -0
- package/dist/server/auth/sessionStore.d.ts +20 -0
- package/dist/server/auth/sessionStore.d.ts.map +1 -0
- package/dist/server/auth/sessionStore.js +222 -0
- package/dist/server/auth/sessionStore.js.map +1 -0
- package/dist/server/auth/totp.d.ts +35 -0
- package/dist/server/auth/totp.d.ts.map +1 -0
- package/dist/server/auth/totp.js +82 -0
- package/dist/server/auth/totp.js.map +1 -0
- package/dist/server/auth/types.d.ts +134 -0
- package/dist/server/auth/types.d.ts.map +1 -0
- package/dist/server/auth/types.js +2 -0
- package/dist/server/auth/types.js.map +1 -0
- package/dist/server/auth/vault.d.ts +28 -0
- package/dist/server/auth/vault.d.ts.map +1 -0
- package/dist/server/auth/vault.js +58 -0
- package/dist/server/auth/vault.js.map +1 -0
- package/dist/server/auth.d.ts +20 -0
- package/dist/server/auth.d.ts.map +1 -0
- package/dist/server/auth.js +20 -0
- package/dist/server/auth.js.map +1 -0
- package/dist/server/context.d.ts +36 -0
- package/dist/server/context.d.ts.map +1 -0
- package/dist/server/context.js +2 -0
- package/dist/server/context.js.map +1 -0
- package/dist/server/ctgr.d.ts +32 -0
- package/dist/server/ctgr.d.ts.map +1 -0
- package/dist/server/ctgr.js +61 -0
- package/dist/server/ctgr.js.map +1 -0
- package/dist/server/db/kysely.d.ts +15 -0
- package/dist/server/db/kysely.d.ts.map +1 -0
- package/dist/server/db/kysely.js +17 -0
- package/dist/server/db/kysely.js.map +1 -0
- package/dist/server/db/plumbingTypes.d.ts +117 -0
- package/dist/server/db/plumbingTypes.d.ts.map +1 -0
- package/dist/server/db/plumbingTypes.js +13 -0
- package/dist/server/db/plumbingTypes.js.map +1 -0
- package/dist/server/errors.d.ts +52 -0
- package/dist/server/errors.d.ts.map +1 -0
- package/dist/server/errors.js +52 -0
- package/dist/server/errors.js.map +1 -0
- package/dist/server/index.d.ts +23 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +46 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/jobs/fireQueue.d.ts +13 -0
- package/dist/server/jobs/fireQueue.d.ts.map +1 -0
- package/dist/server/jobs/fireQueue.js +38 -0
- package/dist/server/jobs/fireQueue.js.map +1 -0
- package/dist/server/jobs/index.d.ts +7 -0
- package/dist/server/jobs/index.d.ts.map +1 -0
- package/dist/server/jobs/index.js +11 -0
- package/dist/server/jobs/index.js.map +1 -0
- package/dist/server/jobs/logger.d.ts +11 -0
- package/dist/server/jobs/logger.d.ts.map +1 -0
- package/dist/server/jobs/logger.js +15 -0
- package/dist/server/jobs/logger.js.map +1 -0
- package/dist/server/jobs/plainjobAdapter.d.ts +20 -0
- package/dist/server/jobs/plainjobAdapter.d.ts.map +1 -0
- package/dist/server/jobs/plainjobAdapter.js +49 -0
- package/dist/server/jobs/plainjobAdapter.js.map +1 -0
- package/dist/server/jobs/polling.d.ts +18 -0
- package/dist/server/jobs/polling.d.ts.map +1 -0
- package/dist/server/jobs/polling.js +63 -0
- package/dist/server/jobs/polling.js.map +1 -0
- package/dist/server/jobs/runner.d.ts +19 -0
- package/dist/server/jobs/runner.d.ts.map +1 -0
- package/dist/server/jobs/runner.js +142 -0
- package/dist/server/jobs/runner.js.map +1 -0
- package/dist/server/jobs/timeout.d.ts +29 -0
- package/dist/server/jobs/timeout.d.ts.map +1 -0
- package/dist/server/jobs/timeout.js +48 -0
- package/dist/server/jobs/timeout.js.map +1 -0
- package/dist/server/jobs/types.d.ts +141 -0
- package/dist/server/jobs/types.d.ts.map +1 -0
- package/dist/server/jobs/types.js +5 -0
- package/dist/server/jobs/types.js.map +1 -0
- package/dist/server/media-bun/ffmpeg.d.ts +58 -0
- package/dist/server/media-bun/ffmpeg.d.ts.map +1 -0
- package/dist/server/media-bun/ffmpeg.js +126 -0
- package/dist/server/media-bun/ffmpeg.js.map +1 -0
- package/dist/server/media-bun/image.d.ts +8 -0
- package/dist/server/media-bun/image.d.ts.map +1 -0
- package/dist/server/media-bun/image.js +97 -0
- package/dist/server/media-bun/image.js.map +1 -0
- package/dist/server/media-bun/index.d.ts +4 -0
- package/dist/server/media-bun/index.d.ts.map +1 -0
- package/dist/server/media-bun/index.js +8 -0
- package/dist/server/media-bun/index.js.map +1 -0
- package/dist/server/media-bun/video.d.ts +17 -0
- package/dist/server/media-bun/video.d.ts.map +1 -0
- package/dist/server/media-bun/video.js +100 -0
- package/dist/server/media-bun/video.js.map +1 -0
- package/dist/server/metrics/metricsBuffer.d.ts +40 -0
- package/dist/server/metrics/metricsBuffer.d.ts.map +1 -0
- package/dist/server/metrics/metricsBuffer.js +37 -0
- package/dist/server/metrics/metricsBuffer.js.map +1 -0
- package/dist/server/metrics/normalizeRoute.d.ts +6 -0
- package/dist/server/metrics/normalizeRoute.d.ts.map +1 -0
- package/dist/server/metrics/normalizeRoute.js +59 -0
- package/dist/server/metrics/normalizeRoute.js.map +1 -0
- package/dist/server/middleware/correlationId.d.ts +10 -0
- package/dist/server/middleware/correlationId.d.ts.map +1 -0
- package/dist/server/middleware/correlationId.js +21 -0
- package/dist/server/middleware/correlationId.js.map +1 -0
- package/dist/server/middleware/errorEnvelope.d.ts +14 -0
- package/dist/server/middleware/errorEnvelope.d.ts.map +1 -0
- package/dist/server/middleware/errorEnvelope.js +30 -0
- package/dist/server/middleware/errorEnvelope.js.map +1 -0
- package/dist/server/middleware/index.d.ts +7 -0
- package/dist/server/middleware/index.d.ts.map +1 -0
- package/dist/server/middleware/index.js +8 -0
- package/dist/server/middleware/index.js.map +1 -0
- package/dist/server/middleware/rateLimit.d.ts +28 -0
- package/dist/server/middleware/rateLimit.d.ts.map +1 -0
- package/dist/server/middleware/rateLimit.js +65 -0
- package/dist/server/middleware/rateLimit.js.map +1 -0
- package/dist/server/middleware/requestLogger.d.ts +30 -0
- package/dist/server/middleware/requestLogger.d.ts.map +1 -0
- package/dist/server/middleware/requestLogger.js +48 -0
- package/dist/server/middleware/requestLogger.js.map +1 -0
- package/dist/server/middleware/securityHeaders.d.ts +30 -0
- package/dist/server/middleware/securityHeaders.d.ts.map +1 -0
- package/dist/server/middleware/securityHeaders.js +45 -0
- package/dist/server/middleware/securityHeaders.js.map +1 -0
- package/dist/server/middleware/zValidator.d.ts +48 -0
- package/dist/server/middleware/zValidator.d.ts.map +1 -0
- package/dist/server/middleware/zValidator.js +76 -0
- package/dist/server/middleware/zValidator.js.map +1 -0
- package/dist/server/migration/runner.d.ts +43 -0
- package/dist/server/migration/runner.d.ts.map +1 -0
- package/dist/server/migration/runner.js +56 -0
- package/dist/server/migration/runner.js.map +1 -0
- package/dist/server/migration/types.d.ts +17 -0
- package/dist/server/migration/types.d.ts.map +1 -0
- package/dist/server/migration/types.js +2 -0
- package/dist/server/migration/types.js.map +1 -0
- package/dist/server/sqlite/backup.d.ts +36 -0
- package/dist/server/sqlite/backup.d.ts.map +1 -0
- package/dist/server/sqlite/backup.js +75 -0
- package/dist/server/sqlite/backup.js.map +1 -0
- package/dist/server/sqlite/fts5.d.ts +105 -0
- package/dist/server/sqlite/fts5.d.ts.map +1 -0
- package/dist/server/sqlite/fts5.js +151 -0
- package/dist/server/sqlite/fts5.js.map +1 -0
- package/dist/server/sqlite/health.d.ts +45 -0
- package/dist/server/sqlite/health.d.ts.map +1 -0
- package/dist/server/sqlite/health.js +53 -0
- package/dist/server/sqlite/health.js.map +1 -0
- package/dist/server/sqlite/index.d.ts +6 -0
- package/dist/server/sqlite/index.d.ts.map +1 -0
- package/dist/server/sqlite/index.js +10 -0
- package/dist/server/sqlite/index.js.map +1 -0
- package/dist/server/sqlite/readonlySql.d.ts +16 -0
- package/dist/server/sqlite/readonlySql.d.ts.map +1 -0
- package/dist/server/sqlite/readonlySql.js +66 -0
- package/dist/server/sqlite/readonlySql.js.map +1 -0
- package/dist/server/sqlite/viewer.d.ts +4 -0
- package/dist/server/sqlite/viewer.d.ts.map +1 -0
- package/dist/server/sqlite/viewer.js +92 -0
- package/dist/server/sqlite/viewer.js.map +1 -0
- package/dist/server/sqlite.d.ts +31 -0
- package/dist/server/sqlite.d.ts.map +1 -0
- package/dist/server/sqlite.js +46 -0
- package/dist/server/sqlite.js.map +1 -0
- package/dist/server/ws/eventBus.d.ts +15 -0
- package/dist/server/ws/eventBus.d.ts.map +1 -0
- package/dist/server/ws/eventBus.js +43 -0
- package/dist/server/ws/eventBus.js.map +1 -0
- package/dist/server/ws/hub.d.ts +21 -0
- package/dist/server/ws/hub.d.ts.map +1 -0
- package/dist/server/ws/hub.js +155 -0
- package/dist/server/ws/hub.js.map +1 -0
- package/dist/server/ws/index.d.ts +6 -0
- package/dist/server/ws/index.d.ts.map +1 -0
- package/dist/server/ws/index.js +8 -0
- package/dist/server/ws/index.js.map +1 -0
- package/dist/server/ws/presence.d.ts +12 -0
- package/dist/server/ws/presence.d.ts.map +1 -0
- package/dist/server/ws/presence.js +21 -0
- package/dist/server/ws/presence.js.map +1 -0
- package/dist/server/ws/room.d.ts +18 -0
- package/dist/server/ws/room.d.ts.map +1 -0
- package/dist/server/ws/room.js +24 -0
- package/dist/server/ws/room.js.map +1 -0
- package/dist/server/ws/types.d.ts +123 -0
- package/dist/server/ws/types.d.ts.map +1 -0
- package/dist/server/ws/types.js +2 -0
- package/dist/server/ws/types.js.map +1 -0
- package/package.json +241 -0
- package/src/styles.css +52 -0
- package/src/theme.css +239 -0
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { closestCorners, DndContext, DragOverlay, useDraggable, useDroppable, } from '@dnd-kit/core';
|
|
3
|
+
import { useMemo, useState } from 'react';
|
|
4
|
+
import { resolveBinding as coreResolveBinding, nodeGridClass, } from '../../core/layout';
|
|
5
|
+
import { DismissButton } from '../components/DismissButton';
|
|
6
|
+
import { DragHandle } from '../components/DragHandle';
|
|
7
|
+
import { useDndSensors } from '../hooks/useDndSensors';
|
|
8
|
+
import { cn } from '../lib/cn';
|
|
9
|
+
import { widgetDef } from './registry';
|
|
10
|
+
// The WYSIWYG editing surface. Each node is a live, display-only preview of its
|
|
11
|
+
// widget on a sample row, laid out on the real container-query 12-col grid; a node is
|
|
12
|
+
// both a @dnd-kit draggable AND a drop target, so you can drag a node to reorder it,
|
|
13
|
+
// drop it onto another node to land beside it, or drop it into a section to nest it.
|
|
14
|
+
// Cross-section moves work by construction. Built on a bespoke `DndContext` with
|
|
15
|
+
// `closestCorners` (the right strategy for 2D placement — a `SortableContext`
|
|
16
|
+
// assumes a 1-D list), so it composes nested section zones without the
|
|
17
|
+
// container-vs-item id clash a list-reorder primitive would hit.
|
|
18
|
+
// Sentinel container id for the top level (the model uses `null`; dnd-kit needs a
|
|
19
|
+
// string). Distinct from any section id.
|
|
20
|
+
const ROOT = '__root__';
|
|
21
|
+
const toModelContainer = (c) => (c === ROOT ? null : c);
|
|
22
|
+
// The display-only widget preview inside a node frame.
|
|
23
|
+
function NodePreview({ node, shared, }) {
|
|
24
|
+
const def = widgetDef(shared.widgets, node.type);
|
|
25
|
+
const resolved = shared.resolve(node, {
|
|
26
|
+
fieldByKey: shared.fieldByKey,
|
|
27
|
+
row: shared.sampleRow,
|
|
28
|
+
rows: shared.sampleRows,
|
|
29
|
+
});
|
|
30
|
+
const field = resolved.kind === 'column' || resolved.kind === 'aggregate' ? resolved.field : undefined;
|
|
31
|
+
const missing = node.binding.kind === 'column' && resolved.kind === 'unresolved';
|
|
32
|
+
const showLabel = Boolean(def?.labeled && field && !node.hideLabel);
|
|
33
|
+
if (missing) {
|
|
34
|
+
return _jsx("span", { className: 'text-xs text-destructive', children: "Column removed \u2014 delete this widget" });
|
|
35
|
+
}
|
|
36
|
+
return (_jsxs(_Fragment, { children: [showLabel && field && (_jsx("div", { className: 'mb-0.5 text-xs uppercase tracking-wide text-muted-foreground', children: field.label })), _jsx("div", { className: 'min-w-0 break-words', children: def?.render({
|
|
37
|
+
node,
|
|
38
|
+
resolved,
|
|
39
|
+
surface: shared.surface,
|
|
40
|
+
interactive: false,
|
|
41
|
+
field,
|
|
42
|
+
row: shared.sampleRow,
|
|
43
|
+
rows: shared.sampleRows,
|
|
44
|
+
}) })] }));
|
|
45
|
+
}
|
|
46
|
+
// One selectable, draggable node frame. `useDraggable` lifts it (via the grip);
|
|
47
|
+
// `useDroppable` lets another node land beside it.
|
|
48
|
+
function NodeFrame({ node, container, index, shared, isSection, children, }) {
|
|
49
|
+
const def = widgetDef(shared.widgets, node.type);
|
|
50
|
+
const data = { kind: 'node', node: node.id, container, index, isSection: !!isSection };
|
|
51
|
+
const drag = useDraggable({ id: node.id, data });
|
|
52
|
+
const drop = useDroppable({ id: node.id, data });
|
|
53
|
+
const selected = shared.selectedId === node.id;
|
|
54
|
+
const field = node.binding.kind === 'column' ? shared.fieldByKey.get(node.binding.key) : undefined;
|
|
55
|
+
const frameLabel = field?.label ?? def?.title ?? node.type;
|
|
56
|
+
const setRef = (el) => {
|
|
57
|
+
drag.setNodeRef(el);
|
|
58
|
+
drop.setNodeRef(el);
|
|
59
|
+
};
|
|
60
|
+
return (_jsxs("div", { ref: setRef, role: 'button', tabIndex: 0, "aria-label": `Edit ${frameLabel}`, onClick: (e) => {
|
|
61
|
+
e.stopPropagation();
|
|
62
|
+
shared.onSelect(node.id);
|
|
63
|
+
}, onKeyDown: (e) => {
|
|
64
|
+
if (e.key === 'Enter')
|
|
65
|
+
shared.onSelect(node.id);
|
|
66
|
+
}, className: cn('group relative cursor-pointer rounded-lg border p-2 text-left transition', drag.isDragging && 'opacity-40', selected ? 'border-accent ring-1 ring-accent' : 'border-border hover:border-border-strong'), children: [_jsxs("div", { className: 'mb-1 flex items-center justify-between gap-1', children: [_jsxs("span", { className: 'flex min-w-0 items-center gap-1 text-[11px] font-medium text-muted-foreground', children: [_jsx(DragHandle, { handleProps: { ...drag.attributes, ...drag.listeners }, activatorRef: drag.setActivatorNodeRef }), _jsx("span", { className: 'truncate', children: isSection ? `Section${node.title ? ` · ${node.title}` : ''}` : frameLabel })] }), _jsx(DismissButton, { label: isSection ? 'Remove section' : 'Remove widget', icon: shared.removeIcon, className: 'shrink-0 opacity-0 transition group-hover:opacity-100', onClick: (e) => {
|
|
67
|
+
e.stopPropagation();
|
|
68
|
+
shared.onRemove(node.id);
|
|
69
|
+
} })] }), children ?? _jsx(NodePreview, { node: node, shared: shared })] }));
|
|
70
|
+
}
|
|
71
|
+
// The droppable children area of a section (so an empty section can receive a node).
|
|
72
|
+
function SectionZone({ id, children }) {
|
|
73
|
+
const data = { kind: 'zone', container: id };
|
|
74
|
+
const { setNodeRef, isOver } = useDroppable({ id: `zone:${id}`, data });
|
|
75
|
+
return (_jsx("div", { ref: setNodeRef, className: cn('@container grid grid-cols-12 gap-3 rounded-md p-1 transition-colors', isOver && 'bg-accent/10 ring-1 ring-accent/40'), children: children }));
|
|
76
|
+
}
|
|
77
|
+
export function LayoutCanvas({ nodes, fields, sampleRow, sampleRows, surface, widgets, resolve, removeIcon, selectedId, onSelect, onRemove, onMoveNode, emptyHint, }) {
|
|
78
|
+
const sensors = useDndSensors();
|
|
79
|
+
const fieldByKey = useMemo(() => new Map(fields.map((f) => [f.key, f])), [fields]);
|
|
80
|
+
const [activeId, setActiveId] = useState(null);
|
|
81
|
+
const shared = {
|
|
82
|
+
fieldByKey,
|
|
83
|
+
sampleRow,
|
|
84
|
+
sampleRows,
|
|
85
|
+
surface,
|
|
86
|
+
widgets,
|
|
87
|
+
resolve: resolve ?? coreResolveBinding,
|
|
88
|
+
removeIcon,
|
|
89
|
+
selectedId,
|
|
90
|
+
onSelect,
|
|
91
|
+
onRemove,
|
|
92
|
+
};
|
|
93
|
+
// Children of a container (null = top level) in the current model order.
|
|
94
|
+
const childrenOf = (c) => c === null ? nodes : (nodes.find((n) => n.id === c)?.children ?? []);
|
|
95
|
+
const onDragStart = (e) => setActiveId(String(e.active.id));
|
|
96
|
+
const onDragEnd = (e) => {
|
|
97
|
+
setActiveId(null);
|
|
98
|
+
const { active, over } = e;
|
|
99
|
+
if (!over)
|
|
100
|
+
return;
|
|
101
|
+
const a = active.data.current;
|
|
102
|
+
const o = over.data.current;
|
|
103
|
+
if (!a || !o)
|
|
104
|
+
return;
|
|
105
|
+
const destContainer = o.container;
|
|
106
|
+
// Sections live only at the top level — never nest one inside another.
|
|
107
|
+
if (a.isSection && destContainer !== ROOT)
|
|
108
|
+
return;
|
|
109
|
+
if (o.kind === 'node' && o.node === a.node)
|
|
110
|
+
return; // dropped on self
|
|
111
|
+
const dest = toModelContainer(destContainer);
|
|
112
|
+
const destItems = childrenOf(dest).filter((n) => n.id !== a.node); // post-removal order
|
|
113
|
+
let index;
|
|
114
|
+
if (o.kind === 'zone') {
|
|
115
|
+
index = destItems.length; // empty space → append
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
const overIdx = destItems.findIndex((n) => n.id === o.node);
|
|
119
|
+
const translated = active.rect.current.translated;
|
|
120
|
+
const below = !!translated && !!over.rect && translated.top > over.rect.top + over.rect.height / 2;
|
|
121
|
+
index = overIdx < 0 ? destItems.length : overIdx + (below ? 1 : 0);
|
|
122
|
+
}
|
|
123
|
+
onMoveNode(a.node, dest, index);
|
|
124
|
+
};
|
|
125
|
+
if (nodes.length === 0) {
|
|
126
|
+
return (_jsx("div", { className: 'rounded-lg border border-dashed border-border py-12 text-center text-sm text-muted-foreground', children: emptyHint ?? 'Add fields and elements to design this view.' }));
|
|
127
|
+
}
|
|
128
|
+
const activeNode = activeId ? findNode(nodes, activeId) : null;
|
|
129
|
+
return (_jsxs(DndContext, { sensors: sensors, collisionDetection: closestCorners, onDragStart: onDragStart, onDragEnd: onDragEnd, onDragCancel: () => setActiveId(null), children: [_jsx(RootZone, { children: nodes.map((node, i) => node.type === 'section' ? (_jsx("div", { className: cn('relative', nodeGridClass({ ...node, width: 'full' })), children: _jsx(NodeFrame, { node: node, container: ROOT, index: i, shared: shared, isSection: true, children: node.children?.length ? (_jsx(SectionZone, { id: node.id, children: node.children.map((child, ci) => (_jsx("div", { className: cn('relative', nodeGridClass(child)), children: _jsx(NodeFrame, { node: child, container: node.id, index: ci, shared: shared }) }, child.id))) })) : (_jsx(EmptySectionZone, { id: node.id })) }) }, node.id)) : (_jsx("div", { className: cn('relative', nodeGridClass(node)), children: _jsx(NodeFrame, { node: node, container: ROOT, index: i, shared: shared }) }, node.id))) }), _jsx(DragOverlay, { children: activeNode ? (_jsx("div", { className: 'rounded-lg border border-accent bg-surface p-2 text-left shadow-overlay', children: _jsx(NodePreview, { node: activeNode, shared: shared }) })) : null })] }));
|
|
130
|
+
}
|
|
131
|
+
// The top-level droppable grid.
|
|
132
|
+
function RootZone({ children }) {
|
|
133
|
+
const data = { kind: 'zone', container: ROOT };
|
|
134
|
+
const { setNodeRef, isOver } = useDroppable({ id: `zone:${ROOT}`, data });
|
|
135
|
+
return (_jsx("div", { ref: setNodeRef, className: cn('@container grid grid-cols-12 gap-3 rounded-lg p-1 transition-colors', isOver && 'bg-accent/5'), children: children }));
|
|
136
|
+
}
|
|
137
|
+
// The droppable area shown inside a section that has no children yet.
|
|
138
|
+
function EmptySectionZone({ id }) {
|
|
139
|
+
const data = { kind: 'zone', container: id };
|
|
140
|
+
const { setNodeRef, isOver } = useDroppable({ id: `zone:${id}`, data });
|
|
141
|
+
return (_jsx("div", { ref: setNodeRef, className: cn('rounded border border-dashed py-4 text-center text-xs transition-colors', isOver ? 'border-accent bg-accent/10 text-accent' : 'border-border text-muted-foreground'), children: "Drag a widget here, or select this section and add one." }));
|
|
142
|
+
}
|
|
143
|
+
function findNode(nodes, id) {
|
|
144
|
+
for (const n of nodes) {
|
|
145
|
+
if (n.id === id)
|
|
146
|
+
return n;
|
|
147
|
+
const child = n.children?.find((c) => c.id === id);
|
|
148
|
+
if (child)
|
|
149
|
+
return child;
|
|
150
|
+
}
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=LayoutCanvas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutCanvas.js","sourceRoot":"","sources":["../../../src/react/layoutEngine/LayoutCanvas.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { LayoutField, LayoutNode, LayoutRow, LayoutView } from '../../core/layout';
|
|
3
|
+
import type { BindingResolver } from './LayoutRenderer';
|
|
4
|
+
import type { LayoutWidgetDef, WidgetRegistry } from './types';
|
|
5
|
+
export type LayoutConfigDialogProps<F extends LayoutField = LayoutField> = {
|
|
6
|
+
open: boolean;
|
|
7
|
+
onOpenChange: (open: boolean) => void;
|
|
8
|
+
title?: ReactNode;
|
|
9
|
+
/** The views to edit (e.g. `{ card, detail, dashboard }` or `{ page }`). */
|
|
10
|
+
initialViews: Record<string, LayoutView>;
|
|
11
|
+
fields: F[];
|
|
12
|
+
widgets: WidgetRegistry<F>;
|
|
13
|
+
/** Sample data driving the live previews. */
|
|
14
|
+
sampleRow: LayoutRow;
|
|
15
|
+
sampleRows?: LayoutRow[];
|
|
16
|
+
resolve?: BindingResolver<F>;
|
|
17
|
+
/** Friendly per-view tab labels (defaults to the capitalized key). */
|
|
18
|
+
tabLabels?: Record<string, string>;
|
|
19
|
+
/** Turn a chosen palette widget into a node (lets the host seed app defaults). */
|
|
20
|
+
makeNode?: (def: LayoutWidgetDef<F>, fields: F[]) => LayoutNode | null;
|
|
21
|
+
onSave: (views: Record<string, LayoutView>) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare function LayoutConfigDialog<F extends LayoutField = LayoutField>({ open, onOpenChange, title, initialViews, fields, widgets, sampleRow, sampleRows, resolve, tabLabels, makeNode, onSave, }: LayoutConfigDialogProps<F>): import("react").JSX.Element;
|
|
24
|
+
//# sourceMappingURL=LayoutConfigDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutConfigDialog.d.ts","sourceRoot":"","sources":["../../../src/react/layoutEngine/LayoutConfigDialog.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAC1D,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,SAAS,EAET,UAAU,EACX,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAIxD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAa/D,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI;IACzE,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3B,6CAA6C;IAC7C,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC7B,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,kFAAkF;IAClF,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,UAAU,GAAG,IAAI,CAAC;IACvE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CACrD,CAAC;AAsCF,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EACtE,IAAI,EACJ,YAAY,EACZ,KAA0B,EAC1B,YAAY,EACZ,MAAM,EACN,OAAO,EACP,SAAS,EACT,UAAU,EACV,OAAO,EACP,SAAS,EACT,QAAQ,EACR,MAAM,GACP,EAAE,uBAAuB,CAAC,CAAC,CAAC,+BA8L5B"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { Redo2, Undo2, X } from 'lucide-react';
|
|
3
|
+
import { useEffect, useRef } from 'react';
|
|
4
|
+
import { Button } from '../components/Button';
|
|
5
|
+
import { Dialog, DialogClose, DialogContent, DialogTitle } from '../components/dialog';
|
|
6
|
+
import { ScrollArea } from '../components/ScrollArea';
|
|
7
|
+
import { SegmentedControl } from '../components/SegmentedControl';
|
|
8
|
+
import { Switch } from '../components/Switch';
|
|
9
|
+
import { useDiscardGuard } from '../hooks/useDiscardGuard';
|
|
10
|
+
import { LayoutCanvas } from './LayoutCanvas';
|
|
11
|
+
import { NodeInspector } from './NodeInspector';
|
|
12
|
+
import { makeElementNode, makeSectionNode, newNodeId } from './registry';
|
|
13
|
+
import { SuggestPanel } from './SuggestPanel';
|
|
14
|
+
import { useLayoutEditor } from './useLayoutEditor';
|
|
15
|
+
// The reimagined, non-technical layout editor. Built on the Modal/overlay family
|
|
16
|
+
// (task 10), but the UX is the point: the user picks blocks from a plain-language
|
|
17
|
+
// palette (SuggestPanel), arranges them by dragging on the WYSIWYG canvas, and tweaks
|
|
18
|
+
// the selected one in the inspector — width by visual swatch, the rest under "More
|
|
19
|
+
// options". The data flowing in/out is the same `LayoutView` map; only the editing
|
|
20
|
+
// surface is ground-up. A dirty close is guarded (useDiscardGuard) with a "Discard
|
|
21
|
+
// changes?" prompt that also offers Save.
|
|
22
|
+
const cap = (s) => s.charAt(0).toUpperCase() + s.slice(1);
|
|
23
|
+
// Default node factory: bind field widgets to the first compatible column, seed an
|
|
24
|
+
// aggregate as a count, make a section/decoration otherwise.
|
|
25
|
+
function defaultMakeNode(def, fields, widgets) {
|
|
26
|
+
if (def.container || def.type === 'section')
|
|
27
|
+
return makeSectionNode();
|
|
28
|
+
if (def.acceptsBindingKinds.includes('column')) {
|
|
29
|
+
const field = fields.find((f) => !def.acceptsColumnTypes || (f.type && def.acceptsColumnTypes.includes(f.type))) ?? fields[0];
|
|
30
|
+
if (!field)
|
|
31
|
+
return null;
|
|
32
|
+
return {
|
|
33
|
+
id: newNodeId(def.type),
|
|
34
|
+
type: def.type,
|
|
35
|
+
binding: { kind: 'column', key: field.key },
|
|
36
|
+
width: def.defaultWidth ?? 'full',
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
if (def.acceptsBindingKinds.includes('aggregate')) {
|
|
40
|
+
return {
|
|
41
|
+
id: newNodeId(def.type),
|
|
42
|
+
type: def.type,
|
|
43
|
+
binding: { kind: 'aggregate', metric: 'count' },
|
|
44
|
+
width: def.defaultWidth ?? 'full',
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return makeElementNode(widgets, def.type, def.type === 'heading' ? 'Heading' : def.type === 'text' ? 'Text' : undefined);
|
|
48
|
+
}
|
|
49
|
+
export function LayoutConfigDialog({ open, onOpenChange, title = 'Customize layout', initialViews, fields, widgets, sampleRow, sampleRows, resolve, tabLabels, makeNode, onSave, }) {
|
|
50
|
+
const editor = useLayoutEditor(initialViews);
|
|
51
|
+
const rows = sampleRows ?? [sampleRow];
|
|
52
|
+
// Re-seed the editor each time the dialog opens (it stays mounted between opens).
|
|
53
|
+
const wasOpen = useRef(false);
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
if (open && !wasOpen.current)
|
|
56
|
+
editor.reset(initialViews);
|
|
57
|
+
wasOpen.current = open;
|
|
58
|
+
}, [open]);
|
|
59
|
+
const handleSave = () => {
|
|
60
|
+
onSave(editor.payload);
|
|
61
|
+
onOpenChange(false);
|
|
62
|
+
};
|
|
63
|
+
// Dirty close → an in-dialog "Discard changes?" prompt that also offers Save.
|
|
64
|
+
const guard = useDiscardGuard({
|
|
65
|
+
open,
|
|
66
|
+
isDirty: editor.isDirty,
|
|
67
|
+
onClose: () => onOpenChange(false),
|
|
68
|
+
onSave: handleSave,
|
|
69
|
+
});
|
|
70
|
+
const onAdd = (def) => {
|
|
71
|
+
const node = (makeNode ?? ((d, fs) => defaultMakeNode(d, fs, widgets)))(def, fields);
|
|
72
|
+
if (node)
|
|
73
|
+
editor.addNode(node, def.container ? null : editor.activeContainerId);
|
|
74
|
+
};
|
|
75
|
+
const selected = editor.selectedNode;
|
|
76
|
+
const tabOptions = editor.tabs.map((t) => ({ value: t, label: tabLabels?.[t] ?? cap(t) }));
|
|
77
|
+
// The active tab names the surface the renderer/preview should assume.
|
|
78
|
+
const SURFACES = ['card', 'detail', 'dashboard', 'page'];
|
|
79
|
+
const surface = SURFACES.includes(editor.tab)
|
|
80
|
+
? editor.tab
|
|
81
|
+
: 'detail';
|
|
82
|
+
return (_jsx(Dialog, { open: open, onOpenChange: (next) => {
|
|
83
|
+
if (next)
|
|
84
|
+
onOpenChange(true);
|
|
85
|
+
else
|
|
86
|
+
guard.guardedClose();
|
|
87
|
+
}, children: _jsxs(DialogContent, { className: 'fixed inset-0 z-50 flex w-full flex-col bg-surface text-foreground shadow-overlay data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0 sm:inset-4 sm:rounded-xl sm:border sm:border-border lg:inset-8', onInteractOutside: (e) => {
|
|
88
|
+
e.preventDefault();
|
|
89
|
+
guard.guardedClose();
|
|
90
|
+
},
|
|
91
|
+
// While the discard prompt is up, Escape keeps editing; otherwise it falls
|
|
92
|
+
// through to onOpenChange → guardedClose.
|
|
93
|
+
onEscapeKeyDown: (e) => {
|
|
94
|
+
if (guard.isConfirming) {
|
|
95
|
+
e.preventDefault();
|
|
96
|
+
guard.cancelDiscard();
|
|
97
|
+
}
|
|
98
|
+
}, children: [_jsxs("div", { className: 'flex shrink-0 items-center justify-between gap-3 border-b border-border px-5 py-3', children: [_jsx(DialogTitle, { className: 'text-lg font-semibold', children: title }), _jsxs("div", { className: 'flex items-center gap-1', children: [_jsx(Button, { variant: 'ghost', size: 'sm', leftIcon: _jsx(Undo2, { className: 'size-4' }), disabled: !editor.canUndo, onClick: editor.undo, "aria-label": 'Undo', children: "Undo" }), _jsx(Button, { variant: 'ghost', size: 'sm', leftIcon: _jsx(Redo2, { className: 'size-4' }), disabled: !editor.canRedo, onClick: editor.redo, "aria-label": 'Redo', children: "Redo" }), _jsx(DialogClose, { className: 'ml-1 rounded-lg p-1 text-muted-foreground hover:bg-muted', "aria-label": 'Close', children: _jsx(X, { className: 'size-5' }) })] })] }), _jsxs("div", { className: 'flex shrink-0 flex-wrap items-center justify-between gap-3 border-b border-border px-5 py-3', children: [tabOptions.length > 1 ? (_jsx(SegmentedControl, { options: tabOptions, value: editor.tab, onChange: editor.selectTab, "aria-label": 'Layout view' })) : (_jsx("span", { className: 'text-sm font-medium', children: tabOptions[0]?.label })), _jsxs("div", { className: 'flex items-center gap-2 text-sm text-muted-foreground', children: [_jsx("span", { id: 'cb-layout-enable', children: "Use a custom layout" }), _jsx(Switch, { "aria-labelledby": 'cb-layout-enable', checked: Boolean(editor.view.enabled), onCheckedChange: (v) => editor.setEnabled(v) })] })] }), _jsx(ScrollArea, { className: 'flex-1 px-5 py-4', children: _jsxs("div", { className: 'flex flex-col gap-4 lg:flex-row lg:items-start', children: [_jsx("div", { className: 'min-w-0 flex-1', children: _jsx(LayoutCanvas, { nodes: editor.view.nodes, fields: fields, sampleRow: sampleRow, sampleRows: rows, surface: surface, widgets: widgets, resolve: resolve, selectedId: editor.selectedId, onSelect: editor.setSelectedId, onRemove: editor.removeNode, onMoveNode: editor.moveNodeTo, emptyHint: 'Add blocks from the panel on the right to design this view.' }) }), _jsx("aside", { className: 'shrink-0 lg:w-72', children: _jsx("div", { className: 'rounded-lg border border-border bg-background p-3', children: selected ? (_jsxs(_Fragment, { children: [_jsxs("div", { className: 'mb-3 flex items-center justify-between', children: [_jsx("span", { className: 'text-sm font-semibold', children: "Edit block" }), _jsx(Button, { variant: 'ghost', size: 'sm', onClick: () => editor.setSelectedId(null), children: "Done" })] }), _jsx(NodeInspector, { node: selected, fields: fields, widgets: widgets, sampleRow: sampleRow, sampleRows: rows, resolve: resolve, onChange: (patch) => editor.updateNode(selected.id, patch), onDelete: editor.removeNode })] })) : (_jsxs(_Fragment, { children: [_jsxs("div", { className: 'mb-3 flex items-center justify-between gap-2', children: [_jsx("span", { className: 'text-sm font-semibold', children: "Add a block" }), _jsx(Button, { variant: 'secondary', size: 'sm', onClick: () => editor.addNode(makeSectionNode(), null), children: "+ Section" })] }), _jsx(SuggestPanel, { widgets: widgets, onAdd: onAdd })] })) }) })] }) }), _jsxs("div", { className: 'flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3', children: [_jsx(Button, { variant: 'secondary', onClick: () => guard.guardedClose(), children: "Cancel" }), _jsx(Button, { variant: 'primary', onClick: handleSave, disabled: !editor.isDirty, children: "Save layout" })] }), guard.discardOverlay] }) }));
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=LayoutConfigDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutConfigDialog.js","sourceRoot":"","sources":["../../../src/react/layoutEngine/LayoutConfigDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type LayoutField, type LayoutNode, type LayoutRow, type LayoutSurface, type ResolvedBinding, type ResolveEnv } from '../../core/layout';
|
|
2
|
+
import type { WidgetRegistry } from './types';
|
|
3
|
+
export type BindingResolver<F extends LayoutField> = (node: LayoutNode, env: ResolveEnv<F>) => ResolvedBinding<F>;
|
|
4
|
+
export type LayoutRendererProps<F extends LayoutField = LayoutField> = {
|
|
5
|
+
nodes: LayoutNode[];
|
|
6
|
+
fields: F[];
|
|
7
|
+
surface: LayoutSurface;
|
|
8
|
+
widgets: WidgetRegistry<F>;
|
|
9
|
+
/** The record a card/detail renders. */
|
|
10
|
+
row?: LayoutRow;
|
|
11
|
+
/** The visible set aggregate widgets fold over. */
|
|
12
|
+
rows?: LayoutRow[];
|
|
13
|
+
resolve?: BindingResolver<F>;
|
|
14
|
+
/** Whether interactive widgets are live; defaults to the detail surface. */
|
|
15
|
+
interactive?: boolean;
|
|
16
|
+
onPatchCell?: (key: string, value: unknown) => void;
|
|
17
|
+
/** When set, each node becomes clickable (e.g. to open it for editing). */
|
|
18
|
+
onNodeClick?: (nodeId: string) => void;
|
|
19
|
+
className?: string;
|
|
20
|
+
};
|
|
21
|
+
export declare function LayoutRenderer<F extends LayoutField = LayoutField>({ nodes, fields, surface, widgets, row, rows, resolve, interactive, onPatchCell, onNodeClick, className, }: LayoutRendererProps<F>): import("react").JSX.Element;
|
|
22
|
+
//# sourceMappingURL=LayoutRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutRenderer.d.ts","sourceRoot":"","sources":["../../../src/react/layoutEngine/LayoutRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,aAAa,EAIlB,KAAK,eAAe,EACpB,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAW9C,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,WAAW,IAAI,CACnD,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,KACf,eAAe,CAAC,CAAC,CAAC,CAAC;AA6FxB,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI;IACrE,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3B,wCAAwC;IACxC,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,mDAAmD;IACnD,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IAGnB,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC7B,4EAA4E;IAC5E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,2EAA2E;IAC3E,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAGF,wBAAgB,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EAClE,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,GAAG,EACH,IAAI,EACJ,OAAO,EACP,WAAW,EACX,WAAW,EACX,WAAW,EACX,SAAS,GACV,EAAE,mBAAmB,CAAC,CAAC,CAAC,+BAmBxB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { resolveBinding as coreResolveBinding, nodeBoxClass, nodeGridClass, nodeTextClass, } from '../../core/layout';
|
|
4
|
+
import { cn } from '../lib/cn';
|
|
5
|
+
import { isContainerType, widgetDef } from './registry';
|
|
6
|
+
// `@container` marks the sub-grid as its own query context, so a section's children
|
|
7
|
+
// reflow to the SECTION's width (not the outer grid's). Literal so Tailwind scans it.
|
|
8
|
+
const childGridClass = '@container grid grid-cols-12 gap-x-4 gap-y-2';
|
|
9
|
+
// Render one node: resolve its binding, (recursively) its children, then hand a
|
|
10
|
+
// WidgetContext to the registered widget.
|
|
11
|
+
function LayoutNodeView({ node, ctx, }) {
|
|
12
|
+
const def = widgetDef(ctx.widgets, node.type);
|
|
13
|
+
if (!def)
|
|
14
|
+
return null;
|
|
15
|
+
const resolved = ctx.resolve(node, ctx.env);
|
|
16
|
+
const bindingKind = node.binding.kind;
|
|
17
|
+
const isFieldBinding = bindingKind === 'column' || bindingKind === 'slot' || bindingKind === 'aggregate';
|
|
18
|
+
// A field widget whose data can't be resolved (deleted column / unmapped slot /
|
|
19
|
+
// unsupported source) is dropped — matches the old "skip missing column".
|
|
20
|
+
if (isFieldBinding && resolved.kind === 'unresolved')
|
|
21
|
+
return null;
|
|
22
|
+
const field = resolved.kind === 'column' || resolved.kind === 'aggregate' ? resolved.field : undefined;
|
|
23
|
+
const children = isContainerType(ctx.widgets, node.type) && node.children?.length ? (_jsx("div", { className: childGridClass, children: node.children.map((c) => (_jsx(LayoutNodeView, { node: c, ctx: ctx }, c.id))) })) : undefined;
|
|
24
|
+
const content = def.render({
|
|
25
|
+
node,
|
|
26
|
+
resolved,
|
|
27
|
+
surface: ctx.surface,
|
|
28
|
+
interactive: ctx.interactive,
|
|
29
|
+
field,
|
|
30
|
+
row: ctx.env.row,
|
|
31
|
+
rows: ctx.env.rows,
|
|
32
|
+
children,
|
|
33
|
+
onPatchCell: ctx.onPatchCell,
|
|
34
|
+
});
|
|
35
|
+
const showLabel = Boolean(def.labeled && field && !node.hideLabel);
|
|
36
|
+
const clickable = ctx.onNodeClick;
|
|
37
|
+
return (_jsxs("div", { className: cn(nodeGridClass(node), 'min-w-0', nodeBoxClass(node.style)), ...(clickable
|
|
38
|
+
? {
|
|
39
|
+
role: 'button',
|
|
40
|
+
tabIndex: 0,
|
|
41
|
+
onClick: (e) => {
|
|
42
|
+
e.stopPropagation();
|
|
43
|
+
clickable(node.id);
|
|
44
|
+
},
|
|
45
|
+
onKeyDown: (e) => {
|
|
46
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
47
|
+
e.preventDefault();
|
|
48
|
+
clickable(node.id);
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
}
|
|
52
|
+
: {}), children: [showLabel && field && (_jsx("div", { className: 'mb-0.5 text-xs uppercase tracking-wide text-muted-foreground', children: field.label })), _jsx("div", { className: cn('min-w-0 break-words', nodeTextClass(node.style)), children: content })] }));
|
|
53
|
+
}
|
|
54
|
+
// Render an ordered list of layout nodes onto the responsive 12-col grid.
|
|
55
|
+
export function LayoutRenderer({ nodes, fields, surface, widgets, row, rows, resolve, interactive, onPatchCell, onNodeClick, className, }) {
|
|
56
|
+
const fieldByKey = useMemo(() => new Map(fields.map((f) => [f.key, f])), [fields]);
|
|
57
|
+
const ctx = {
|
|
58
|
+
env: { fieldByKey, row, rows },
|
|
59
|
+
surface,
|
|
60
|
+
widgets,
|
|
61
|
+
resolve: resolve ?? coreResolveBinding,
|
|
62
|
+
interactive: interactive ?? surface === 'detail',
|
|
63
|
+
onPatchCell,
|
|
64
|
+
onNodeClick,
|
|
65
|
+
};
|
|
66
|
+
const gapY = surface === 'card' ? 'gap-y-2' : 'gap-y-3';
|
|
67
|
+
return (_jsx("div", { className: className ?? cn('@container grid grid-cols-12 gap-x-4', gapY), children: nodes.map((node) => (_jsx(LayoutNodeView, { node: node, ctx: ctx }, node.id))) }));
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=LayoutRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutRenderer.js","sourceRoot":"","sources":["../../../src/react/layoutEngine/LayoutRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type LayoutField, type LayoutNode, type LayoutRow } from '../../core/layout';
|
|
2
|
+
import type { BindingResolver } from './LayoutRenderer';
|
|
3
|
+
import type { WidgetRegistry } from './types';
|
|
4
|
+
export type NodeInspectorProps<F extends LayoutField = LayoutField> = {
|
|
5
|
+
node: LayoutNode;
|
|
6
|
+
fields: F[];
|
|
7
|
+
widgets: WidgetRegistry<F>;
|
|
8
|
+
/** Sample data for the live preview (optional). */
|
|
9
|
+
sampleRow?: LayoutRow;
|
|
10
|
+
sampleRows?: LayoutRow[];
|
|
11
|
+
resolve?: BindingResolver<F>;
|
|
12
|
+
/** Patch the selected node (merged shallowly). */
|
|
13
|
+
onChange: (patch: Partial<LayoutNode>) => void;
|
|
14
|
+
/** Remove the node (after a confirm). */
|
|
15
|
+
onDelete: (nodeId: string) => void;
|
|
16
|
+
};
|
|
17
|
+
export declare function NodeInspector<F extends LayoutField = LayoutField>({ node, fields, widgets, sampleRow, sampleRows, resolve, onChange, onDelete, }: NodeInspectorProps<F>): import("react").JSX.Element;
|
|
18
|
+
//# sourceMappingURL=NodeInspector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeInspector.d.ts","sourceRoot":"","sources":["../../../src/react/layoutEngine/NodeInspector.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EAIf,MAAM,mBAAmB,CAAC;AAM3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAS9C,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI;IACpE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC7B,kDAAkD;IAClD,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAC/C,yCAAyC;IACzC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC,CAAC;AAuJF,wBAAgB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EACjE,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,EACT,UAAU,EACV,OAAO,EACP,QAAQ,EACR,QAAQ,GACT,EAAE,kBAAkB,CAAC,CAAC,CAAC,+BA+PvB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { resolveBinding as coreResolveBinding, } from '../../core/layout';
|
|
4
|
+
import { Button } from '../components/Button';
|
|
5
|
+
import { Collapsible } from '../components/Collapsible';
|
|
6
|
+
import { ConfirmDialog } from '../components/ConfirmDialog';
|
|
7
|
+
import { Switch } from '../components/Switch';
|
|
8
|
+
import { cn } from '../lib/cn';
|
|
9
|
+
import { compatibleWidgets, widgetDef } from './registry';
|
|
10
|
+
// A themed, token-driven native control (the engine doesn't pull in the full field kit).
|
|
11
|
+
const selectClass = 'w-full rounded-md border border-border bg-surface px-2 py-1.5 text-sm text-foreground focus:border-accent focus:outline-none focus:ring-1 focus:ring-ring';
|
|
12
|
+
const inputClass = selectClass;
|
|
13
|
+
const WIDTHS = [
|
|
14
|
+
{ value: 'full', label: 'Full width', fraction: 1 },
|
|
15
|
+
{ value: 'half', label: 'Half', fraction: 1 / 2 },
|
|
16
|
+
{ value: 'third', label: 'Third', fraction: 1 / 3 },
|
|
17
|
+
{ value: 'quarter', label: 'Quarter', fraction: 1 / 4 },
|
|
18
|
+
];
|
|
19
|
+
const AGG_METRICS = [
|
|
20
|
+
{ value: 'count', label: 'Count of rows' },
|
|
21
|
+
{ value: 'sum', label: 'Sum' },
|
|
22
|
+
{ value: 'avg', label: 'Average' },
|
|
23
|
+
{ value: 'min', label: 'Lowest' },
|
|
24
|
+
{ value: 'max', label: 'Highest' },
|
|
25
|
+
{ value: 'countTrue', label: 'Count where true' },
|
|
26
|
+
{ value: 'distinctCount', label: 'Distinct values' },
|
|
27
|
+
{ value: 'progress', label: 'Progress (done / total)' },
|
|
28
|
+
];
|
|
29
|
+
// Enumerated style tokens ('' = inherit/none) — kept under "More options".
|
|
30
|
+
const TONES = ['', 'neutral', 'emerald', 'sky', 'cyan', 'amber', 'purple', 'rose', 'slate'];
|
|
31
|
+
const FILLS = ['', 'subtle', 'toned', 'solid', 'card'];
|
|
32
|
+
const BORDERS = ['', 'hairline', 'toned', 'strong'];
|
|
33
|
+
const RADII = ['', 'none', 'sm', 'md', 'lg', 'full'];
|
|
34
|
+
const PADDINGS = ['', 'none', 'tight', 'cozy', 'roomy'];
|
|
35
|
+
const ALIGNS = ['', 'left', 'center', 'right'];
|
|
36
|
+
const SIZES = ['', 'xs', 'sm', 'base', 'lg', 'xl', '2xl', '3xl'];
|
|
37
|
+
const WEIGHTS = ['', 'normal', 'medium', 'semibold', 'bold'];
|
|
38
|
+
const TEXT_COLORS = ['', 'default', 'muted', 'subtle', 'tone'];
|
|
39
|
+
const Labeled = ({ label, children }) => (_jsxs("label", { className: 'flex flex-col gap-1', children: [_jsx("span", { className: 'text-[11px] font-medium uppercase tracking-wide text-muted-foreground', children: label }), children] }));
|
|
40
|
+
const StyleSelect = ({ label, value, options, onPick, }) => (_jsx(Labeled, { label: label, children: _jsx("select", { className: selectClass, value: value ?? '', onChange: (e) => onPick(e.target.value || undefined), children: options.map((o) => (_jsx("option", { value: o, children: o || '—' }, o))) }) }));
|
|
41
|
+
// Visual width chooser: a 2×2 grid of toggles, each a proportion swatch + word — no
|
|
42
|
+
// span numbers. Selected reads with the accent ring.
|
|
43
|
+
function WidthChooser({ value, onPick }) {
|
|
44
|
+
return (_jsxs("fieldset", { className: 'm-0 flex min-w-0 flex-col gap-1 border-0 p-0', children: [_jsx("legend", { className: 'mb-1 p-0 text-[11px] font-medium uppercase tracking-wide text-muted-foreground', children: "Width" }), _jsx("div", { className: 'grid grid-cols-2 gap-2', children: WIDTHS.map((w) => {
|
|
45
|
+
const selected = (value ?? 'full') === w.value;
|
|
46
|
+
return (_jsxs("button", { type: 'button', "aria-pressed": selected, onClick: () => onPick(w.value), className: cn('flex flex-col gap-1 rounded-md border p-2 text-left text-xs transition', selected
|
|
47
|
+
? 'border-accent ring-1 ring-accent text-foreground'
|
|
48
|
+
: 'border-border text-muted-foreground hover:border-border-strong'), children: [_jsx("span", { className: 'flex h-2 w-full overflow-hidden rounded-full bg-muted', children: _jsx("span", { className: 'h-full rounded-full bg-accent', style: { width: `${Math.round(w.fraction * 100)}%` } }) }), w.label] }, w.value));
|
|
49
|
+
}) })] }));
|
|
50
|
+
}
|
|
51
|
+
// A small live preview of the block on the sample row (display-only).
|
|
52
|
+
function Preview({ node, fields, widgets, sampleRow, sampleRows, resolve, }) {
|
|
53
|
+
const def = widgetDef(widgets, node.type);
|
|
54
|
+
const fieldByKey = new Map(fields.map((f) => [f.key, f]));
|
|
55
|
+
const resolved = resolve(node, { fieldByKey, row: sampleRow, rows: sampleRows });
|
|
56
|
+
const field = resolved.kind === 'column' || resolved.kind === 'aggregate' ? resolved.field : undefined;
|
|
57
|
+
return (_jsx(Labeled, { label: 'Preview', children: _jsx("div", { className: 'min-w-0 break-words rounded-md border border-border bg-surface p-3 text-sm text-foreground', children: def?.render({
|
|
58
|
+
node,
|
|
59
|
+
resolved,
|
|
60
|
+
surface: 'detail',
|
|
61
|
+
interactive: false,
|
|
62
|
+
field,
|
|
63
|
+
row: sampleRow,
|
|
64
|
+
rows: sampleRows,
|
|
65
|
+
}) ?? _jsx("span", { className: 'text-muted-foreground', children: "No preview" }) }) }));
|
|
66
|
+
}
|
|
67
|
+
export function NodeInspector({ node, fields, widgets, sampleRow, sampleRows, resolve, onChange, onDelete, }) {
|
|
68
|
+
const [confirmingDelete, setConfirmingDelete] = useState(false);
|
|
69
|
+
const isColumn = node.binding.kind === 'column';
|
|
70
|
+
const boundKey = node.binding.kind === 'column' ? node.binding.key : undefined;
|
|
71
|
+
const field = fields.find((f) => f.key === boundKey);
|
|
72
|
+
const isDecoration = node.binding.kind === 'static';
|
|
73
|
+
const isSection = node.type === 'section';
|
|
74
|
+
const isAggregate = node.binding.kind === 'aggregate';
|
|
75
|
+
const aggMetric = node.binding.kind === 'aggregate' ? node.binding.metric : 'count';
|
|
76
|
+
const aggKey = node.binding.kind === 'aggregate' ? node.binding.key : undefined;
|
|
77
|
+
const def = widgetDef(widgets, node.type);
|
|
78
|
+
const setStyle = (patch) => onChange({ style: { ...(node.style ?? {}), ...patch } });
|
|
79
|
+
const setAgg = (patch) => onChange({
|
|
80
|
+
binding: {
|
|
81
|
+
kind: 'aggregate',
|
|
82
|
+
metric: (patch.metric ?? aggMetric),
|
|
83
|
+
key: 'key' in patch ? patch.key : aggKey,
|
|
84
|
+
},
|
|
85
|
+
});
|
|
86
|
+
return (_jsxs("div", { className: 'flex flex-col gap-4', children: [isColumn && (_jsxs(_Fragment, { children: [_jsx(Labeled, { label: 'Field', children: _jsx("select", { className: selectClass, value: boundKey ?? '', onChange: (e) => onChange({ binding: { kind: 'column', key: e.target.value } }), children: fields.map((f) => (_jsx("option", { value: f.key, children: f.label }, f.key))) }) }), _jsx(Labeled, { label: 'Show as', children: _jsx("select", { className: selectClass, value: node.type, onChange: (e) => onChange({ type: e.target.value }), children: compatibleWidgets(widgets, field).map((w) => (_jsx("option", { value: w.type, children: w.title }, w.type))) }) })] })), isAggregate && (_jsx(Labeled, { label: 'Show', children: _jsx("select", { className: selectClass, value: aggMetric, onChange: (e) => setAgg({ metric: e.target.value }), children: AGG_METRICS.map((m) => (_jsx("option", { value: m.value, children: m.label }, m.value))) }) })), isSection && (_jsx(Labeled, { label: 'Section title', children: _jsx("input", { className: inputClass, placeholder: 'Section', value: node.title ?? '', onChange: (e) => onChange({ title: e.target.value }) }) })), isDecoration && (node.type === 'heading' || node.type === 'text') && (_jsx(Labeled, { label: 'Text', children: _jsx("input", { className: inputClass, value: node.content ?? '', onChange: (e) => onChange({ content: e.target.value }) }) })), !isSection && (_jsx(WidthChooser, { value: node.width ?? 'full', onPick: (w) => onChange({ width: w }) })), sampleRow && (_jsx(Preview, { node: node, fields: fields, widgets: widgets, sampleRow: sampleRow, sampleRows: sampleRows ?? [sampleRow], resolve: resolve ?? coreResolveBinding })), _jsx(Collapsible, { trigger: 'More options', className: 'border-t border-border pt-1', children: _jsxs("div", { className: 'flex flex-col gap-3 pt-2', children: [isColumn && (_jsxs("div", { className: 'flex items-center justify-between gap-2 text-sm text-foreground', children: [_jsx("span", { id: 'hide-label-text', children: "Hide the field label" }), _jsx(Switch, { "aria-labelledby": 'hide-label-text', checked: Boolean(node.hideLabel), onCheckedChange: (v) => onChange({ hideLabel: v || undefined }) })] })), isAggregate && aggMetric !== 'count' && (_jsx(Labeled, { label: 'Column', children: _jsxs("select", { className: selectClass, value: aggKey ?? '', onChange: (e) => setAgg({ key: e.target.value || undefined }), children: [_jsx("option", { value: '', children: "Pick a column\u2026" }), fields.map((f) => (_jsx("option", { value: f.key, children: f.label }, f.key)))] }) })), _jsx(Labeled, { label: 'Row height', children: _jsxs("select", { className: selectClass, value: String(node.rowSpan ?? 1), onChange: (e) => {
|
|
87
|
+
const n = Number(e.target.value);
|
|
88
|
+
onChange({ rowSpan: n === 1 ? undefined : n });
|
|
89
|
+
}, children: [_jsx("option", { value: '1', children: "1 row" }), _jsx("option", { value: '2', children: "2 rows" }), _jsx("option", { value: '3', children: "3 rows" })] }) }), def?.InspectorComponent && (_jsx(def.InspectorComponent, { node: node, field: field, onChange: onChange })), _jsxs("div", { className: 'grid grid-cols-2 gap-2', children: [_jsx(StyleSelect, { label: 'Accent', value: node.style?.tone, options: TONES, onPick: (v) => setStyle({ tone: v }) }), _jsx(StyleSelect, { label: 'Background', value: node.style?.fill, options: FILLS, onPick: (v) => setStyle({ fill: v }) }), _jsx(StyleSelect, { label: 'Border', value: node.style?.border, options: BORDERS, onPick: (v) => setStyle({ border: v }) }), _jsx(StyleSelect, { label: 'Corners', value: node.style?.radius, options: RADII, onPick: (v) => setStyle({ radius: v }) }), _jsx(StyleSelect, { label: 'Padding', value: node.style?.padding, options: PADDINGS, onPick: (v) => setStyle({ padding: v }) }), _jsx(StyleSelect, { label: 'Align', value: node.style?.align, options: ALIGNS, onPick: (v) => setStyle({ align: v }) }), _jsx(StyleSelect, { label: 'Text size', value: node.style?.textSize, options: SIZES, onPick: (v) => setStyle({ textSize: v }) }), _jsx(StyleSelect, { label: 'Weight', value: node.style?.weight, options: WEIGHTS, onPick: (v) => setStyle({ weight: v }) }), _jsx(StyleSelect, { label: 'Text color', value: node.style?.textColor, options: TEXT_COLORS, onPick: (v) => setStyle({ textColor: v }) })] }), isColumn && (_jsx(Labeled, { label: 'Empty fallback', children: _jsx("input", { className: inputClass, placeholder: 'Shown when the value is empty', value: node.emptyFallback ?? '', onChange: (e) => onChange({ emptyFallback: e.target.value || undefined }) }) }))] }) }), _jsx(Button, { variant: 'destructive', size: 'sm', className: 'self-start', onClick: () => setConfirmingDelete(true), children: "Remove this block" }), _jsx(ConfirmDialog, { open: confirmingDelete, title: 'Remove this block?', message: 'It will be taken off this layout. You can add it back anytime.', confirmLabel: 'Remove', cancelLabel: 'Keep', destructive: true, onConfirm: () => {
|
|
90
|
+
setConfirmingDelete(false);
|
|
91
|
+
onDelete(node.id);
|
|
92
|
+
}, onCancel: () => setConfirmingDelete(false) })] }));
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=NodeInspector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeInspector.js","sourceRoot":"","sources":["../../../src/react/layoutEngine/NodeInspector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { LayoutField } from '../../core/layout';
|
|
2
|
+
import type { LayoutWidgetDef, WidgetRegistry } from './types';
|
|
3
|
+
export type SuggestPanelProps<F extends LayoutField = LayoutField> = {
|
|
4
|
+
widgets: WidgetRegistry<F>;
|
|
5
|
+
/** Add a widget — the host turns the chosen def into a node and inserts it. */
|
|
6
|
+
onAdd: (def: LayoutWidgetDef<F>) => void;
|
|
7
|
+
/** Hide the fallback `keyValue` entry (it's an internal default, not a real choice). */
|
|
8
|
+
hideFallback?: boolean;
|
|
9
|
+
className?: string;
|
|
10
|
+
};
|
|
11
|
+
export declare function SuggestPanel<F extends LayoutField = LayoutField>({ widgets, onAdd, hideFallback, className, }: SuggestPanelProps<F>): import("react").JSX.Element;
|
|
12
|
+
//# sourceMappingURL=SuggestPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SuggestPanel.d.ts","sourceRoot":"","sources":["../../../src/react/layoutEngine/SuggestPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,eAAe,EAAkB,cAAc,EAAE,MAAM,SAAS,CAAC;AAe/E,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI;IACnE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3B,+EAA+E;IAC/E,KAAK,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACzC,wFAAwF;IACxF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EAChE,OAAO,EACP,KAAK,EACL,YAAmB,EACnB,SAAS,GACV,EAAE,iBAAiB,CAAC,CAAC,CAAC,+BAsCtB"}
|