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,54 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { X } from 'lucide-react';
|
|
3
|
+
import { useDiscardGuard } from '../hooks/useDiscardGuard';
|
|
4
|
+
import { cn } from '../lib/cn';
|
|
5
|
+
import { Dialog, DialogContent, DialogTitle } from './dialog';
|
|
6
|
+
import { IconButton } from './IconButton';
|
|
7
|
+
import { ScrollArea } from './ScrollArea';
|
|
8
|
+
// ONE sizing scale replaces the ad-hoc `max-w-xl`/`max-w-2xl`/`max-h-[80vh]` classNames
|
|
9
|
+
// scattered across the apps' modals. `full` is a near-fullscreen sheet with a 1rem margin
|
|
10
|
+
// on every side; `cn`'s twMerge dedupes its `max-h` against the base below (last wins).
|
|
11
|
+
const SIZE = {
|
|
12
|
+
sm: 'max-w-sm',
|
|
13
|
+
md: 'max-w-lg',
|
|
14
|
+
lg: 'max-w-2xl',
|
|
15
|
+
xl: 'max-w-4xl',
|
|
16
|
+
full: 'max-w-[calc(100vw-2rem)] max-h-[calc(100dvh-2rem)]',
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Centered modal dialog on Radix Dialog (shadcn-vendored). Renders into a portal, so it
|
|
20
|
+
* is never clipped by an `overflow` ancestor; the focus trap and scroll-lock are Radix
|
|
21
|
+
* native (WAI-ARIA compliant). The body scrolls through the keyboard-safe
|
|
22
|
+
* {@link ScrollArea} (task 03), so a focused field clears the on-screen keyboard.
|
|
23
|
+
*
|
|
24
|
+
* Escape and outside-click route through {@link useDiscardGuard} so a dirty form raises
|
|
25
|
+
* an in-modal "Discard changes?" panel instead of closing silently.
|
|
26
|
+
*/
|
|
27
|
+
export function Modal({ open, onClose, size = 'md', title, children, footer, isDirty, onSave, scrollBody = true, className, }) {
|
|
28
|
+
const { guardedClose, discardOverlay, isConfirming, cancelDiscard } = useDiscardGuard({
|
|
29
|
+
open,
|
|
30
|
+
onClose,
|
|
31
|
+
isDirty,
|
|
32
|
+
onSave,
|
|
33
|
+
});
|
|
34
|
+
return (_jsx(Dialog, { open: open, onOpenChange: (v) => {
|
|
35
|
+
if (!v)
|
|
36
|
+
guardedClose();
|
|
37
|
+
}, children: _jsxs(DialogContent, { className: cn(
|
|
38
|
+
// Centered card, capped to the viewport, animated zoom-in. Width keeps a 1rem
|
|
39
|
+
// margin on each side at every size, then caps at the size's max-width.
|
|
40
|
+
'fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2', 'flex w-[calc(100vw-2rem)] flex-col gap-0 overflow-hidden', 'rounded-xl border border-border bg-popover text-popover-foreground shadow-overlay', 'max-h-[min(90dvh,calc(100dvh-2rem))]', 'data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95', 'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95', SIZE[size], className),
|
|
41
|
+
// Intercept Radix's default close so a dirty form gets the discard prompt; while
|
|
42
|
+
// the prompt is up, Escape cancels it (keep editing) instead of re-prompting.
|
|
43
|
+
onInteractOutside: (e) => {
|
|
44
|
+
e.preventDefault();
|
|
45
|
+
guardedClose();
|
|
46
|
+
}, onEscapeKeyDown: (e) => {
|
|
47
|
+
e.preventDefault();
|
|
48
|
+
if (isConfirming)
|
|
49
|
+
cancelDiscard();
|
|
50
|
+
else
|
|
51
|
+
guardedClose();
|
|
52
|
+
}, children: [_jsxs("div", { className: 'flex flex-none items-center justify-between gap-3 border-b border-border px-5 py-4', children: [title ? (_jsx(DialogTitle, { className: 'text-base font-semibold', children: title })) : (_jsx(DialogTitle, { className: 'sr-only', children: "Dialog" })), _jsx(IconButton, { label: 'Close', onClick: guardedClose, children: _jsx(X, {}) })] }), scrollBody ? (_jsx(ScrollArea, { className: 'px-5 py-4', children: children })) : (_jsx("div", { className: 'flex min-h-0 flex-1 flex-col', children: children })), footer ? _jsx("div", { className: 'flex-none', children: footer }) : null, discardOverlay] }) }));
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=Modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../src/react/components/Modal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,wFAAwF;AACxF,0FAA0F;AAC1F,wFAAwF;AACxF,MAAM,IAAI,GAA8B;IACtC,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;IACf,IAAI,EAAE,oDAAoD;CAC3D,CAAC;AAyBF;;;;;;;;GAQG;AACH,MAAM,UAAU,KAAK,CAAC,EACpB,IAAI,EACJ,OAAO,EACP,IAAI,GAAG,IAAI,EACX,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACP,MAAM,EACN,UAAU,GAAG,IAAI,EACjB,SAAS,GACE;IACX,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,eAAe,CAAC;QACpF,IAAI;QACJ,OAAO;QACP,OAAO;QACP,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,MAAM,IACL,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,CAAC;gBAAE,YAAY,EAAE,CAAC;QACzB,CAAC,YAED,MAAC,aAAa,IACZ,SAAS,EAAE,EAAE;YACX,8EAA8E;YAC9E,wEAAwE;YACxE,0DAA0D,EAC1D,0DAA0D,EAC1D,mFAAmF,EACnF,sCAAsC,EACtC,uFAAuF,EACvF,gGAAgG,EAChG,IAAI,CAAC,IAAI,CAAC,EACV,SAAS,CACV;YACD,iFAAiF;YACjF,8EAA8E;YAC9E,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE;gBACvB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;YACjB,CAAC,EACD,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;gBACrB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,YAAY;oBAAE,aAAa,EAAE,CAAC;;oBAC7B,YAAY,EAAE,CAAC;YACtB,CAAC,aAED,eAAK,SAAS,EAAC,oFAAoF,aAChG,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,WAAW,IAAC,SAAS,EAAC,yBAAyB,YAAE,KAAK,GAAe,CACvE,CAAC,CAAC,CAAC,CAEF,KAAC,WAAW,IAAC,SAAS,EAAC,SAAS,uBAAqB,CACtD,EACD,KAAC,UAAU,IAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAE,YAAY,YAC7C,KAAC,CAAC,KAAG,GACM,IACT,EAEL,UAAU,CAAC,CAAC,CAAC,CAEZ,KAAC,UAAU,IAAC,SAAS,EAAC,WAAW,YAAE,QAAQ,GAAc,CAC1D,CAAC,CAAC,CAAC,CAGF,cAAK,SAAS,EAAC,8BAA8B,YAAE,QAAQ,GAAO,CAC/D,EAEA,MAAM,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,WAAW,YAAE,MAAM,GAAO,CAAC,CAAC,CAAC,IAAI,EAIzD,cAAc,IACD,GACT,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export type ModalSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
3
|
+
/** Stacking level: a confirm dialog on top of another modal sits above it. */
|
|
4
|
+
export type ModalLevel = 'base' | 'raised' | 'top';
|
|
5
|
+
export interface ModalShellProps {
|
|
6
|
+
onClose: () => void;
|
|
7
|
+
/** Header renders only when a title is given. */
|
|
8
|
+
title?: ReactNode;
|
|
9
|
+
subtitle?: ReactNode;
|
|
10
|
+
size?: ModalSize;
|
|
11
|
+
level?: ModalLevel;
|
|
12
|
+
/** Optional sticky footer bar (e.g. Cancel / Save). */
|
|
13
|
+
footer?: ReactNode;
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
/** Override the body content wrapper (padding/gap). */
|
|
16
|
+
bodyClassName?: string;
|
|
17
|
+
/** Extra classes for the panel. */
|
|
18
|
+
className?: string;
|
|
19
|
+
/** Fill the screen on mobile (defaults on for md/lg/xl). */
|
|
20
|
+
mobileFullScreen?: boolean;
|
|
21
|
+
/** A soft dismiss (backdrop/Escape/close) only closes when clean; otherwise it
|
|
22
|
+
* prompts "Discard changes?". Footer Save/Cancel should call onClose directly. */
|
|
23
|
+
confirmOnClose?: boolean;
|
|
24
|
+
/** Explicit unsaved-edits flag; overrides auto-detection. */
|
|
25
|
+
dirty?: boolean;
|
|
26
|
+
discardTitle?: string;
|
|
27
|
+
discardMessage?: string;
|
|
28
|
+
/** When given, the discard prompt also offers "Save changes". */
|
|
29
|
+
onSave?: () => void | Promise<void>;
|
|
30
|
+
saveText?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The canonical modal shell: backdrop + Escape close + a surface panel with an
|
|
34
|
+
* optional header and footer. Larger modals fill the screen on mobile (header/
|
|
35
|
+
* footer pinned, body scrolls — keyboard-safe via scroll-padding); centered cards
|
|
36
|
+
* on desktop. Render it conditionally from the parent (no `isOpen` prop).
|
|
37
|
+
*/
|
|
38
|
+
export declare function ModalShell({ onClose, title, subtitle, size, level, footer, children, bodyClassName, className, mobileFullScreen, confirmOnClose, dirty, discardTitle, discardMessage, onSave, saveText, }: ModalShellProps): import("react").JSX.Element;
|
|
39
|
+
//# sourceMappingURL=ModalShell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModalShell.d.ts","sourceRoot":"","sources":["../../../src/react/components/ModalShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAC;AAK5D,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAClD,8EAA8E;AAC9E,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AA+BnD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iDAAiD;IACjD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,uDAAuD;IACvD,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;uFACmF;IACnF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,IAAW,EACX,KAAc,EACd,MAAM,EACN,QAAQ,EACR,aAA+C,EAC/C,SAAS,EACT,gBAAgB,EAChB,cAAsB,EACtB,KAAK,EACL,YAAY,EACZ,cAAc,EACd,MAAM,EACN,QAAQ,GACT,EAAE,eAAe,+BA8GjB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { useDiscardGuard } from '../hooks/useDiscardGuard';
|
|
4
|
+
import { cn } from '../lib/cn';
|
|
5
|
+
import { DiscardConfirmOverlay } from './DiscardConfirmOverlay';
|
|
6
|
+
const SIZE_CLASS = {
|
|
7
|
+
sm: 'max-w-sm',
|
|
8
|
+
md: 'max-w-md',
|
|
9
|
+
lg: 'max-w-lg',
|
|
10
|
+
xl: 'max-w-2xl',
|
|
11
|
+
};
|
|
12
|
+
const SIZE_CLASS_DESKTOP = {
|
|
13
|
+
sm: 'sm:max-w-sm',
|
|
14
|
+
md: 'sm:max-w-md',
|
|
15
|
+
lg: 'sm:max-w-lg',
|
|
16
|
+
xl: 'sm:max-w-2xl',
|
|
17
|
+
};
|
|
18
|
+
const LEVEL_CLASS = { base: 'z-50', raised: 'z-[60]', top: 'z-[70]' };
|
|
19
|
+
const CloseIcon = () => (_jsxs("svg", { viewBox: '0 0 24 24', width: '20', height: '20', fill: 'none', stroke: 'currentColor', strokeWidth: '2', role: 'img', children: [_jsx("title", { children: "Close" }), _jsx("path", { strokeLinecap: 'round', d: 'M6 6l12 12M18 6L6 18' })] }));
|
|
20
|
+
/**
|
|
21
|
+
* The canonical modal shell: backdrop + Escape close + a surface panel with an
|
|
22
|
+
* optional header and footer. Larger modals fill the screen on mobile (header/
|
|
23
|
+
* footer pinned, body scrolls — keyboard-safe via scroll-padding); centered cards
|
|
24
|
+
* on desktop. Render it conditionally from the parent (no `isOpen` prop).
|
|
25
|
+
*/
|
|
26
|
+
export function ModalShell({ onClose, title, subtitle, size = 'md', level = 'base', footer, children, bodyClassName = 'flex flex-col gap-4 px-5 py-4', className, mobileFullScreen, confirmOnClose = false, dirty, discardTitle, discardMessage, onSave, saveText, }) {
|
|
27
|
+
const [autoDirty, setAutoDirty] = useState(false);
|
|
28
|
+
const autoTrack = confirmOnClose && dirty === undefined;
|
|
29
|
+
const isDirty = dirty ?? autoDirty;
|
|
30
|
+
const { confirming, requestClose, keepEditing, discard } = useDiscardGuard({
|
|
31
|
+
enabled: confirmOnClose,
|
|
32
|
+
dirty: isDirty,
|
|
33
|
+
onClose,
|
|
34
|
+
});
|
|
35
|
+
// Lock background scroll while open; pad for the missing scrollbar.
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
const { body, documentElement: html } = document;
|
|
38
|
+
const prevOverflow = body.style.overflow;
|
|
39
|
+
const prevPaddingRight = body.style.paddingRight;
|
|
40
|
+
const scrollbar = window.innerWidth - html.clientWidth;
|
|
41
|
+
body.style.overflow = 'hidden';
|
|
42
|
+
if (scrollbar > 0)
|
|
43
|
+
body.style.paddingRight = `${scrollbar}px`;
|
|
44
|
+
return () => {
|
|
45
|
+
body.style.overflow = prevOverflow;
|
|
46
|
+
body.style.paddingRight = prevPaddingRight;
|
|
47
|
+
};
|
|
48
|
+
}, []);
|
|
49
|
+
const fillMobile = mobileFullScreen ?? size !== 'sm';
|
|
50
|
+
const markDirty = autoTrack ? () => setAutoDirty(true) : undefined;
|
|
51
|
+
return (_jsxs("div", { className: cn('fixed inset-0 flex justify-center', LEVEL_CLASS[level], fillMobile ? 'items-stretch p-0 sm:items-center sm:p-4' : 'items-center p-4'), children: [_jsx("button", { type: 'button', "aria-label": 'Close', className: 'absolute inset-0 bg-gray-900/60 backdrop-blur-sm', onClick: requestClose }), _jsxs("div", { className: cn('relative z-10 flex w-full flex-col overflow-hidden bg-surface text-foreground shadow-2xl', fillMobile
|
|
52
|
+
? `h-full border-border sm:h-auto sm:max-h-[90vh] sm:rounded-2xl sm:border ${SIZE_CLASS_DESKTOP[size]}`
|
|
53
|
+
: `max-h-[90vh] rounded-2xl border border-border ${SIZE_CLASS[size]}`, className), onChange: markDirty, onInput: markDirty, children: [title !== undefined ? (_jsxs("div", { className: 'flex items-center justify-between border-b border-border px-5 py-4', children: [_jsxs("div", { className: 'min-w-0', children: [_jsx("h2", { className: 'text-lg font-bold', children: title }), subtitle ? (_jsx("p", { className: 'truncate text-sm text-muted-foreground', children: subtitle })) : null] }), _jsx("button", { type: 'button', "aria-label": 'Close', className: 'rounded-lg p-1 text-muted-foreground hover:bg-muted', onClick: requestClose, children: _jsx(CloseIcon, {}) })] })) : null, _jsx("div", { className: 'flex min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden', style: {
|
|
54
|
+
scrollPaddingBottom: 'calc(var(--keyboard-inset, 0px) + env(safe-area-inset-bottom, 0px) + 1.5rem)',
|
|
55
|
+
paddingBottom: 'var(--keyboard-inset, 0px)',
|
|
56
|
+
}, children: _jsx("div", { className: bodyClassName, children: children }) }), footer ? (_jsx("div", { className: 'flex justify-end gap-2 border-t border-border px-5 py-4', children: footer })) : null] }), confirming ? (_jsx(DiscardConfirmOverlay, { title: discardTitle, message: discardMessage, onKeepEditing: keepEditing, onDiscard: discard, saveText: saveText, onSave: onSave
|
|
57
|
+
? () => {
|
|
58
|
+
keepEditing();
|
|
59
|
+
void onSave();
|
|
60
|
+
}
|
|
61
|
+
: undefined })) : null] }));
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=ModalShell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModalShell.js","sourceRoot":"","sources":["../../../src/react/components/ModalShell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export interface MultiSelectOption {
|
|
3
|
+
value: string;
|
|
4
|
+
label?: ReactNode;
|
|
5
|
+
/** Optional swatch shown beside the option + in its pill. */
|
|
6
|
+
color?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface MultiSelectFieldProps {
|
|
10
|
+
/** The selected values (controlled). */
|
|
11
|
+
value: string[];
|
|
12
|
+
onChange: (value: string[]) => void;
|
|
13
|
+
options: MultiSelectOption[];
|
|
14
|
+
placeholder?: string;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
id?: string;
|
|
17
|
+
'aria-invalid'?: true | undefined;
|
|
18
|
+
'aria-describedby'?: string;
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Multi-select: an Input-shaped trigger that shows the chosen options as pills and
|
|
23
|
+
* opens a Radix Popover (portaled — never clipped) with a checkable list. Controlled
|
|
24
|
+
* — `value: string[]`, `onChange(next)`. Removing a choice is done by unchecking it
|
|
25
|
+
* in the list. The registry's `multiselect` control.
|
|
26
|
+
*/
|
|
27
|
+
export declare function MultiSelectField({ value, onChange, options, placeholder, disabled, id, 'aria-invalid': ariaInvalid, 'aria-describedby': ariaDescribedBy, className, }: MultiSelectFieldProps): import("react").JSX.Element;
|
|
28
|
+
//# sourceMappingURL=MultiSelectField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiSelectField.d.ts","sourceRoot":"","sources":["../../../src/react/components/MultiSelectField.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAIjD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,wCAAwC;IACxC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACpC,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,EACR,OAAO,EACP,WAAuB,EACvB,QAAQ,EACR,EAAE,EACF,cAAc,EAAE,WAAW,EAC3B,kBAAkB,EAAE,eAAe,EACnC,SAAS,GACV,EAAE,qBAAqB,+BA6FvB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Check, ChevronDown } from 'lucide-react';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { cn } from '../lib/cn';
|
|
5
|
+
import { Popover } from './Popover';
|
|
6
|
+
/**
|
|
7
|
+
* Multi-select: an Input-shaped trigger that shows the chosen options as pills and
|
|
8
|
+
* opens a Radix Popover (portaled — never clipped) with a checkable list. Controlled
|
|
9
|
+
* — `value: string[]`, `onChange(next)`. Removing a choice is done by unchecking it
|
|
10
|
+
* in the list. The registry's `multiselect` control.
|
|
11
|
+
*/
|
|
12
|
+
export function MultiSelectField({ value, onChange, options, placeholder = 'Select…', disabled, id, 'aria-invalid': ariaInvalid, 'aria-describedby': ariaDescribedBy, className, }) {
|
|
13
|
+
const [open, setOpen] = useState(false);
|
|
14
|
+
const toggle = (v) => onChange(value.includes(v) ? value.filter((x) => x !== v) : [...value, v]);
|
|
15
|
+
return (_jsx(Popover, { open: open, onOpenChange: setOpen, arrow: false, className: 'p-1', trigger: _jsxs("button", { id: id, type: 'button', role: 'combobox', "aria-expanded": open, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, disabled: disabled, className: cn('flex min-h-10 w-full flex-wrap items-center gap-1.5 rounded-field border border-field-border bg-field-bg px-2 py-1.5 text-left transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-field-ring/30 aria-[invalid=true]:border-field-error disabled:cursor-not-allowed disabled:opacity-50', className), children: [value.length === 0 ? (_jsx("span", { className: 'text-base text-field-placeholder sm:text-sm', children: placeholder })) : (value.map((v) => {
|
|
16
|
+
const opt = options.find((o) => o.value === v);
|
|
17
|
+
return (_jsxs("span", { className: 'inline-flex items-center gap-1 rounded bg-muted px-2 py-0.5 text-sm text-foreground', children: [opt?.color ? (_jsx("span", { "aria-hidden": true, className: 'size-2 rounded-full', style: { backgroundColor: opt.color } })) : null, opt?.label ?? v] }, v));
|
|
18
|
+
})), _jsx(ChevronDown, { className: 'ml-auto size-4 shrink-0 opacity-50', "aria-hidden": true })] }), children: _jsx("div", { role: 'listbox', "aria-multiselectable": true, className: 'max-h-64 min-w-48 space-y-0.5 overflow-y-auto', children: options.map((opt) => {
|
|
19
|
+
const checked = value.includes(opt.value);
|
|
20
|
+
return (_jsxs("button", { type: 'button', role: 'option', "aria-selected": checked, disabled: opt.disabled, onClick: () => toggle(opt.value), className: 'flex w-full items-center gap-2 rounded px-2 py-1.5 text-left text-sm text-foreground transition hover:bg-muted disabled:cursor-not-allowed disabled:opacity-50', children: [_jsx("span", { "aria-hidden": true, className: cn('flex size-4 shrink-0 items-center justify-center rounded-sm border', checked
|
|
21
|
+
? 'border-accent-solid bg-accent-solid text-white'
|
|
22
|
+
: 'border-border-strong'), children: checked ? _jsx(Check, { className: 'size-3' }) : null }), opt.color ? (_jsx("span", { "aria-hidden": true, className: 'size-3 shrink-0 rounded-full', style: { backgroundColor: opt.color } })) : null, _jsx("span", { className: 'flex-1 truncate', children: opt.label ?? opt.value })] }, opt.value));
|
|
23
|
+
}) }) }));
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=MultiSelectField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiSelectField.js","sourceRoot":"","sources":["../../../src/react/components/MultiSelectField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The routed content area. Purely structural: a min-height-0 flex column that fills
|
|
4
|
+
* its slot in the AppShell. It sets NO scroll/overflow and NO background — the single
|
|
5
|
+
* keyboard-safe `ScrollArea` (task 03) owns scrolling and the shell owns the page bg.
|
|
6
|
+
*/
|
|
7
|
+
export declare function Page({ className, ...p }: HTMLAttributes<HTMLDivElement>): import("react").JSX.Element;
|
|
8
|
+
/** Max-width centering + responsive horizontal gutters. Never sets height or overflow. */
|
|
9
|
+
export declare function PageContainer({ className, ...p }: HTMLAttributes<HTMLDivElement>): import("react").JSX.Element;
|
|
10
|
+
export interface PageHeaderProps {
|
|
11
|
+
title: ReactNode;
|
|
12
|
+
subtitle?: ReactNode;
|
|
13
|
+
/** Right-anchored page actions (desktop pushes them right via the Split row). */
|
|
14
|
+
actions?: ReactNode;
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The page title row: an `<h1>` (fluid `text-h1`) + optional subtitle, with optional
|
|
19
|
+
* actions pushed to the trailing edge. A bottom border separates it from the body;
|
|
20
|
+
* the sticky footer of actions is `ActionBar`'s job (task 06), not this.
|
|
21
|
+
*/
|
|
22
|
+
export declare function PageHeader({ title, subtitle, actions, className }: PageHeaderProps): import("react").JSX.Element;
|
|
23
|
+
//# sourceMappingURL=Page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../src/react/components/Page.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,cAAc,CAAC,+BAEvE;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,cAAc,CAAC,+BAIhF;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,iFAAiF;IACjF,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,eAAe,+BAUlF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../lib/cn';
|
|
3
|
+
import { Split } from './layout';
|
|
4
|
+
/**
|
|
5
|
+
* The routed content area. Purely structural: a min-height-0 flex column that fills
|
|
6
|
+
* its slot in the AppShell. It sets NO scroll/overflow and NO background — the single
|
|
7
|
+
* keyboard-safe `ScrollArea` (task 03) owns scrolling and the shell owns the page bg.
|
|
8
|
+
*/
|
|
9
|
+
export function Page({ className, ...p }) {
|
|
10
|
+
return _jsx("div", { className: cn('flex min-h-0 flex-1 flex-col', className), ...p });
|
|
11
|
+
}
|
|
12
|
+
/** Max-width centering + responsive horizontal gutters. Never sets height or overflow. */
|
|
13
|
+
export function PageContainer({ className, ...p }) {
|
|
14
|
+
return (_jsx("div", { className: cn('mx-auto w-full max-w-5xl px-4 py-6 sm:px-6 lg:px-8', className), ...p }));
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The page title row: an `<h1>` (fluid `text-h1`) + optional subtitle, with optional
|
|
18
|
+
* actions pushed to the trailing edge. A bottom border separates it from the body;
|
|
19
|
+
* the sticky footer of actions is `ActionBar`'s job (task 06), not this.
|
|
20
|
+
*/
|
|
21
|
+
export function PageHeader({ title, subtitle, actions, className }) {
|
|
22
|
+
return (_jsxs(Split, { className: cn('border-b border-border px-4 py-4 sm:px-6 lg:px-8', className), children: [_jsxs("div", { className: 'min-w-0', children: [_jsx("h1", { className: 'text-h1 font-bold tracking-tight text-foreground', children: title }), subtitle && _jsx("p", { className: 'mt-1 text-sm text-muted-foreground', children: subtitle })] }), actions && _jsx("div", { className: 'flex items-center gap-2', children: actions })] }));
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=Page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../src/react/components/Page.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;;;GAIG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,EAAkC;IACtE,OAAO,cAAK,SAAS,EAAE,EAAE,CAAC,8BAA8B,EAAE,SAAS,CAAC,KAAM,CAAC,GAAI,CAAC;AAClF,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,EAAkC;IAC/E,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,oDAAoD,EAAE,SAAS,CAAC,KAAM,CAAC,GAAI,CAC/F,CAAC;AACJ,CAAC;AAUD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAmB;IACjF,OAAO,CACL,MAAC,KAAK,IAAC,SAAS,EAAE,EAAE,CAAC,kDAAkD,EAAE,SAAS,CAAC,aACjF,eAAK,SAAS,EAAC,SAAS,aACtB,aAAI,SAAS,EAAC,kDAAkD,YAAE,KAAK,GAAM,EAC5E,QAAQ,IAAI,YAAG,SAAS,EAAC,oCAAoC,YAAE,QAAQ,GAAK,IACzE,EACL,OAAO,IAAI,cAAK,SAAS,EAAC,yBAAyB,YAAE,OAAO,GAAO,IAC9D,CACT,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Named bottom-space presets. `default` is the universal spacing every page gets;
|
|
4
|
+
* the others let a page ask for more (`roomy`) or less (`compact`/`none`) clearance
|
|
5
|
+
* via the `space` prop or — for a single shell-level spacer — `usePageBottomSpace`.
|
|
6
|
+
*/
|
|
7
|
+
export type PageBottomSpace = 'none' | 'compact' | 'default' | 'roomy';
|
|
8
|
+
/** Explicit spacer heights: any CSS length for mobile (`base`) and md+ (`md`). */
|
|
9
|
+
export interface PageBottomSpaceValue {
|
|
10
|
+
base: string;
|
|
11
|
+
md: string;
|
|
12
|
+
}
|
|
13
|
+
export interface PageBottomProps {
|
|
14
|
+
/** Extra content (e.g. a sticky toolbar) to render above the spacer. */
|
|
15
|
+
children?: ReactNode;
|
|
16
|
+
/**
|
|
17
|
+
* The instance's default spacer size — the app shell's "set up once" knob.
|
|
18
|
+
* A page can still override it at runtime with `usePageBottomSpace`. Defaults
|
|
19
|
+
* to `default` (the universal spacing).
|
|
20
|
+
*/
|
|
21
|
+
space?: PageBottomSpace;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Universal bottom spacer — drop it at the end of every scrollable page (typically
|
|
25
|
+
* once, in the app shell, after the routed content).
|
|
26
|
+
*
|
|
27
|
+
* On mobile (< md) it reserves 33 vh so the last row can always be scrolled fully
|
|
28
|
+
* above a fixed bottom strip (e.g. a ShortcutDock). On desktop it reserves 6 rem +
|
|
29
|
+
* the iOS safe-area home-indicator inset + the on-screen keyboard height (tracked
|
|
30
|
+
* by `useKeyboardInset` on `--keyboard-inset`).
|
|
31
|
+
*
|
|
32
|
+
* The height is driven by `--page-bottom-space` / `--page-bottom-space-md` with the
|
|
33
|
+
* `space` preset as the fallback, so any page can ask for more or less clearance at
|
|
34
|
+
* runtime by calling `usePageBottomSpace(...)`: the single shell-level spacer
|
|
35
|
+
* honours it with no prop drilling, and reverts when that page unmounts.
|
|
36
|
+
*
|
|
37
|
+
* `pointer-events-none` is essential: a flex-col page whose content is taller than
|
|
38
|
+
* its shrunk flex item (e.g. a full-bleed canvas with controls below it) can render
|
|
39
|
+
* UNDER this spacer — without it the transparent div would silently swallow pointer
|
|
40
|
+
* events on those bottom controls.
|
|
41
|
+
*
|
|
42
|
+
* Install `useKeyboardInset` once near the app root so `--keyboard-inset` is always
|
|
43
|
+
* defined; without it the spacer falls back to `0px` for that variable.
|
|
44
|
+
*
|
|
45
|
+
* Requires `viewport-fit=cover` in the `<meta name="viewport">` tag for
|
|
46
|
+
* `env(safe-area-inset-bottom)` to report the actual iOS home-indicator height (it
|
|
47
|
+
* returns `0px` without that flag).
|
|
48
|
+
*/
|
|
49
|
+
export declare const PageBottom: ({ children, space }?: PageBottomProps) => import("react").JSX.Element;
|
|
50
|
+
/**
|
|
51
|
+
* Override the universal `PageBottom` spacer for the current page. Call it from any
|
|
52
|
+
* page that needs more or less bottom clearance than the shell default; pass a
|
|
53
|
+
* preset name or an explicit `{ base, md }` height pair, or `null`/`undefined` to
|
|
54
|
+
* leave the default untouched. The override is reverted automatically when the page
|
|
55
|
+
* unmounts.
|
|
56
|
+
*
|
|
57
|
+
* It publishes `--page-bottom-space` / `--page-bottom-space-md` on `<html>` — the
|
|
58
|
+
* same mechanism as `useKeyboardInset` — which the shell's `<PageBottom />` reads,
|
|
59
|
+
* so a single spacer instance honours a per-page request without prop drilling.
|
|
60
|
+
*/
|
|
61
|
+
export declare const usePageBottomSpace: (space: PageBottomSpace | PageBottomSpaceValue | null | undefined) => void;
|
|
62
|
+
//# sourceMappingURL=PageBottom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageBottom.d.ts","sourceRoot":"","sources":["../../../src/react/components/PageBottom.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAEvE,kFAAkF;AAClF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAqCD,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,UAAU,GAAI,sBAAiC,eAAoB,gCAK/E,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,eAAe,GAAG,oBAAoB,GAAG,IAAI,GAAG,SAAS,KAC/D,IAcF,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect } from 'react';
|
|
3
|
+
// Each preset is a COMPLETE literal class pair (mobile + md) so Tailwind's JIT can
|
|
4
|
+
// see it when scanning cwip's dist. The height reads a CSS variable whose *fallback*
|
|
5
|
+
// is the preset's default — so the visual default is unchanged, AND any page can
|
|
6
|
+
// override the (typically single, shell-level) spacer at runtime via
|
|
7
|
+
// `usePageBottomSpace`, which writes that variable onto `<html>`. No prop drilling:
|
|
8
|
+
// one `<PageBottom/>` in the app shell still honours a per-page request.
|
|
9
|
+
const SPACE_CLASS = {
|
|
10
|
+
none: 'h-[var(--page-bottom-space,0px)] md:h-[var(--page-bottom-space-md,0px)]',
|
|
11
|
+
compact: 'h-[var(--page-bottom-space,16vh)] md:h-[var(--page-bottom-space-md,calc(3rem+env(safe-area-inset-bottom,0px)+var(--keyboard-inset,0px)))]',
|
|
12
|
+
default: 'h-[var(--page-bottom-space,33vh)] md:h-[var(--page-bottom-space-md,calc(6rem+env(safe-area-inset-bottom,0px)+var(--keyboard-inset,0px)))]',
|
|
13
|
+
roomy: 'h-[var(--page-bottom-space,50vh)] md:h-[var(--page-bottom-space-md,calc(10rem+env(safe-area-inset-bottom,0px)+var(--keyboard-inset,0px)))]',
|
|
14
|
+
};
|
|
15
|
+
// The CSS length each preset resolves to — mirrors the SPACE_CLASS fallbacks. The
|
|
16
|
+
// override hook writes these onto `<html>` as plain CSS (NOT through Tailwind), so
|
|
17
|
+
// they keep the spaces CSS `calc()` requires around `+`/`-`.
|
|
18
|
+
const SPACE_VALUE = {
|
|
19
|
+
none: { base: '0px', md: '0px' },
|
|
20
|
+
compact: {
|
|
21
|
+
base: '16vh',
|
|
22
|
+
md: 'calc(3rem + env(safe-area-inset-bottom, 0px) + var(--keyboard-inset, 0px))',
|
|
23
|
+
},
|
|
24
|
+
default: {
|
|
25
|
+
base: '33vh',
|
|
26
|
+
md: 'calc(6rem + env(safe-area-inset-bottom, 0px) + var(--keyboard-inset, 0px))',
|
|
27
|
+
},
|
|
28
|
+
roomy: {
|
|
29
|
+
base: '50vh',
|
|
30
|
+
md: 'calc(10rem + env(safe-area-inset-bottom, 0px) + var(--keyboard-inset, 0px))',
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Universal bottom spacer — drop it at the end of every scrollable page (typically
|
|
35
|
+
* once, in the app shell, after the routed content).
|
|
36
|
+
*
|
|
37
|
+
* On mobile (< md) it reserves 33 vh so the last row can always be scrolled fully
|
|
38
|
+
* above a fixed bottom strip (e.g. a ShortcutDock). On desktop it reserves 6 rem +
|
|
39
|
+
* the iOS safe-area home-indicator inset + the on-screen keyboard height (tracked
|
|
40
|
+
* by `useKeyboardInset` on `--keyboard-inset`).
|
|
41
|
+
*
|
|
42
|
+
* The height is driven by `--page-bottom-space` / `--page-bottom-space-md` with the
|
|
43
|
+
* `space` preset as the fallback, so any page can ask for more or less clearance at
|
|
44
|
+
* runtime by calling `usePageBottomSpace(...)`: the single shell-level spacer
|
|
45
|
+
* honours it with no prop drilling, and reverts when that page unmounts.
|
|
46
|
+
*
|
|
47
|
+
* `pointer-events-none` is essential: a flex-col page whose content is taller than
|
|
48
|
+
* its shrunk flex item (e.g. a full-bleed canvas with controls below it) can render
|
|
49
|
+
* UNDER this spacer — without it the transparent div would silently swallow pointer
|
|
50
|
+
* events on those bottom controls.
|
|
51
|
+
*
|
|
52
|
+
* Install `useKeyboardInset` once near the app root so `--keyboard-inset` is always
|
|
53
|
+
* defined; without it the spacer falls back to `0px` for that variable.
|
|
54
|
+
*
|
|
55
|
+
* Requires `viewport-fit=cover` in the `<meta name="viewport">` tag for
|
|
56
|
+
* `env(safe-area-inset-bottom)` to report the actual iOS home-indicator height (it
|
|
57
|
+
* returns `0px` without that flag).
|
|
58
|
+
*/
|
|
59
|
+
export const PageBottom = ({ children, space = 'default' } = {}) => (_jsxs(_Fragment, { children: [children, _jsx("div", { "aria-hidden": 'true', className: `pointer-events-none shrink-0 ${SPACE_CLASS[space]}` })] }));
|
|
60
|
+
/**
|
|
61
|
+
* Override the universal `PageBottom` spacer for the current page. Call it from any
|
|
62
|
+
* page that needs more or less bottom clearance than the shell default; pass a
|
|
63
|
+
* preset name or an explicit `{ base, md }` height pair, or `null`/`undefined` to
|
|
64
|
+
* leave the default untouched. The override is reverted automatically when the page
|
|
65
|
+
* unmounts.
|
|
66
|
+
*
|
|
67
|
+
* It publishes `--page-bottom-space` / `--page-bottom-space-md` on `<html>` — the
|
|
68
|
+
* same mechanism as `useKeyboardInset` — which the shell's `<PageBottom />` reads,
|
|
69
|
+
* so a single spacer instance honours a per-page request without prop drilling.
|
|
70
|
+
*/
|
|
71
|
+
export const usePageBottomSpace = (space) => {
|
|
72
|
+
const value = space == null ? null : typeof space === 'string' ? SPACE_VALUE[space] : space;
|
|
73
|
+
const base = value?.base ?? null;
|
|
74
|
+
const md = value?.md ?? null;
|
|
75
|
+
useEffect(() => {
|
|
76
|
+
if (base == null || md == null)
|
|
77
|
+
return;
|
|
78
|
+
const root = document.documentElement;
|
|
79
|
+
root.style.setProperty('--page-bottom-space', base);
|
|
80
|
+
root.style.setProperty('--page-bottom-space-md', md);
|
|
81
|
+
return () => {
|
|
82
|
+
root.style.removeProperty('--page-bottom-space');
|
|
83
|
+
root.style.removeProperty('--page-bottom-space-md');
|
|
84
|
+
};
|
|
85
|
+
}, [base, md]);
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=PageBottom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageBottom.js","sourceRoot":"","sources":["../../../src/react/components/PageBottom.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAelC,mFAAmF;AACnF,qFAAqF;AACrF,iFAAiF;AACjF,qEAAqE;AACrE,oFAAoF;AACpF,yEAAyE;AACzE,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,yEAAyE;IAC/E,OAAO,EACL,2IAA2I;IAC7I,OAAO,EACL,2IAA2I;IAC7I,KAAK,EACH,4IAA4I;CAC/I,CAAC;AAEF,kFAAkF;AAClF,mFAAmF;AACnF,6DAA6D;AAC7D,MAAM,WAAW,GAAkD;IACjE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE;IAChC,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,4EAA4E;KACjF;IACD,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,4EAA4E;KACjF;IACD,KAAK,EAAE;QACL,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,6EAA6E;KAClF;CACF,CAAC;AAaF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,GAAG,SAAS,KAAsB,EAAE,EAAE,EAAE,CAAC,CACnF,8BACG,QAAQ,EACT,6BAAiB,MAAM,EAAC,SAAS,EAAE,gCAAgC,WAAW,CAAC,KAAK,CAAC,EAAE,GAAI,IAC1F,CACJ,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAgE,EAC1D,EAAE;IACR,MAAM,KAAK,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5F,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC;IACjC,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC;IAC7B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI;YAAE,OAAO;QACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;QACtD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
export type PageContainerSize = 'default' | 'narrow' | 'wide';
|
|
3
|
+
export interface PageContainerProps extends HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
size?: PageContainerSize;
|
|
5
|
+
}
|
|
6
|
+
/** Centered, max-width content column with consistent horizontal padding. */
|
|
7
|
+
export declare function PageContainer({ size, className, ...props }: PageContainerProps): import("react").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=PageContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageContainer.d.ts","sourceRoot":"","sources":["../../../src/react/components/PageContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAQ9D,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACxE,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,EAAE,IAAgB,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAE1F"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../lib/cn';
|
|
3
|
+
const SIZE = {
|
|
4
|
+
default: 'max-w-6xl',
|
|
5
|
+
narrow: 'max-w-3xl',
|
|
6
|
+
wide: 'max-w-7xl',
|
|
7
|
+
};
|
|
8
|
+
/** Centered, max-width content column with consistent horizontal padding. */
|
|
9
|
+
export function PageContainer({ size = 'default', className, ...props }) {
|
|
10
|
+
return _jsx("div", { className: cn('mx-auto w-full px-6', SIZE[size], className), ...props });
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=PageContainer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageContainer.js","sourceRoot":"","sources":["../../../src/react/components/PageContainer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAI/B,MAAM,IAAI,GAAsC;IAC9C,OAAO,EAAE,WAAW;IACpB,MAAM,EAAE,WAAW;IACnB,IAAI,EAAE,WAAW;CAClB,CAAC;AAMF,6EAA6E;AAC7E,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,GAAG,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,EAAsB;IACzF,OAAO,cAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,KAAM,KAAK,GAAI,CAAC;AACzF,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type StyleableProps } from '../styling';
|
|
2
|
+
export type PaginationSlot = 'root';
|
|
3
|
+
export interface PaginationProps extends StyleableProps<PaginationSlot> {
|
|
4
|
+
page: number;
|
|
5
|
+
pageCount: number;
|
|
6
|
+
onPageChange: (page: number) => void;
|
|
7
|
+
/** Context for the "X–Y of Z" range label. */
|
|
8
|
+
total?: number;
|
|
9
|
+
pageSize?: number;
|
|
10
|
+
/** Optional rows-per-page selector. */
|
|
11
|
+
pageSizeOptions?: number[];
|
|
12
|
+
onPageSizeChange?: (size: number) => void;
|
|
13
|
+
/** Pages shown on each side of the current page (default 1). */
|
|
14
|
+
siblingCount?: number;
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A pagination bar: a "X–Y of Z" range label, an optional rows-per-page selector,
|
|
19
|
+
* and windowed page-number controls with Prev/Next. Fully controlled — drive it
|
|
20
|
+
* with `usePagination` (client-side) or your own offset/limit state. Renders
|
|
21
|
+
* nothing when there's a single page and no size selector.
|
|
22
|
+
*/
|
|
23
|
+
export declare const Pagination: ({ page, pageCount, onPageChange, total, pageSize, pageSizeOptions, onPageSizeChange, siblingCount, className, classNames, unstyled, }: PaginationProps) => import("react").JSX.Element | null;
|
|
24
|
+
//# sourceMappingURL=Pagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/react/components/Pagination.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AA4CnE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,uIAYxB,eAAe,uCA4FjB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cx, resolveClass } from '../styling';
|
|
3
|
+
const ELLIPSIS = 'ellipsis';
|
|
4
|
+
// Windowed page list: always show first/last, the current page, and `siblingCount`
|
|
5
|
+
// neighbours on each side, collapsing the rest into ellipses. e.g. 1 … 4 5 [6] 7 8 … 20
|
|
6
|
+
const buildRange = (page, pageCount, siblingCount) => {
|
|
7
|
+
const totalShown = siblingCount * 2 + 5; // first+last + current + 2 siblings + 2 ellipses
|
|
8
|
+
if (pageCount <= totalShown)
|
|
9
|
+
return Array.from({ length: pageCount }, (_, i) => i + 1);
|
|
10
|
+
const left = Math.max(page - siblingCount, 1);
|
|
11
|
+
const right = Math.min(page + siblingCount, pageCount);
|
|
12
|
+
const showLeftEllipsis = left > 2;
|
|
13
|
+
const showRightEllipsis = right < pageCount - 1;
|
|
14
|
+
const tokens = [1];
|
|
15
|
+
if (showLeftEllipsis)
|
|
16
|
+
tokens.push(ELLIPSIS);
|
|
17
|
+
for (let p = showLeftEllipsis ? left : 2; p <= (showRightEllipsis ? right : pageCount - 1); p++)
|
|
18
|
+
tokens.push(p);
|
|
19
|
+
if (showRightEllipsis)
|
|
20
|
+
tokens.push(ELLIPSIS);
|
|
21
|
+
tokens.push(pageCount);
|
|
22
|
+
return tokens;
|
|
23
|
+
};
|
|
24
|
+
const Chevron = ({ dir }) => (_jsxs("svg", { viewBox: '0 0 24 24', width: '16', height: '16', fill: 'none', stroke: 'currentColor', strokeWidth: '2', role: 'img', children: [_jsx("title", { children: dir === 'left' ? 'Previous' : 'Next' }), _jsx("path", { strokeLinecap: 'round', strokeLinejoin: 'round', d: dir === 'left' ? 'M15 18l-6-6 6-6' : 'M9 18l6-6-6-6' })] }));
|
|
25
|
+
const NAV_BTN = 'inline-flex h-8 min-w-8 items-center justify-center rounded-lg border border-gray-300 px-2 text-sm font-medium text-gray-700 transition hover:bg-gray-50 disabled:cursor-not-allowed disabled:opacity-40 dark:border-gray-700 dark:text-gray-200 dark:hover:bg-gray-800';
|
|
26
|
+
/**
|
|
27
|
+
* A pagination bar: a "X–Y of Z" range label, an optional rows-per-page selector,
|
|
28
|
+
* and windowed page-number controls with Prev/Next. Fully controlled — drive it
|
|
29
|
+
* with `usePagination` (client-side) or your own offset/limit state. Renders
|
|
30
|
+
* nothing when there's a single page and no size selector.
|
|
31
|
+
*/
|
|
32
|
+
export const Pagination = ({ page, pageCount, onPageChange, total, pageSize, pageSizeOptions, onPageSizeChange, siblingCount = 1, className, classNames, unstyled, }) => {
|
|
33
|
+
const showSizes = Boolean(pageSizeOptions?.length && onPageSizeChange);
|
|
34
|
+
if (pageCount <= 1 && !showSizes)
|
|
35
|
+
return null;
|
|
36
|
+
const go = (p) => onPageChange(Math.min(Math.max(p, 1), pageCount));
|
|
37
|
+
const tokens = buildRange(page, pageCount, siblingCount);
|
|
38
|
+
let rangeLabel = null;
|
|
39
|
+
if (typeof total === 'number' && typeof pageSize === 'number') {
|
|
40
|
+
const start = total === 0 ? 0 : (page - 1) * pageSize + 1;
|
|
41
|
+
const end = Math.min(page * pageSize, total);
|
|
42
|
+
rangeLabel = `${start}–${end} of ${total}`;
|
|
43
|
+
}
|
|
44
|
+
return (_jsxs("div", { className: resolveClass('flex flex-wrap items-center justify-between gap-3', classNames?.root ?? className, unstyled), children: [_jsxs("div", { className: 'flex items-center gap-3 text-sm text-gray-500 dark:text-gray-400', children: [rangeLabel && _jsx("span", { children: rangeLabel }), showSizes && (_jsxs("label", { className: 'flex items-center gap-1.5', children: [_jsx("span", { children: "Per page" }), _jsx("select", { "aria-label": 'Rows per page', className: 'rounded-lg border border-gray-300 bg-white px-2 py-1 text-sm dark:border-gray-700 dark:bg-gray-900', value: pageSize, onChange: (e) => onPageSizeChange?.(Number(e.target.value)), children: pageSizeOptions?.map((size) => (_jsx("option", { value: size, children: size }, size))) })] }))] }), pageCount > 1 && (_jsxs("div", { className: 'flex items-center gap-1', children: [_jsx("button", { type: 'button', "aria-label": 'Previous page', className: NAV_BTN, disabled: page <= 1, onClick: () => go(page - 1), children: _jsx(Chevron, { dir: 'left' }) }), tokens.map((token, i) => token === ELLIPSIS ? (_jsx("span", { className: 'px-1 text-sm text-gray-400', children: "\u2026" }, `ellipsis-${i}`)) : (_jsx("button", { type: 'button', "aria-label": `Page ${token}`, "aria-current": token === page ? 'page' : undefined, onClick: () => go(token), className: cx('inline-flex h-8 min-w-8 items-center justify-center rounded-lg px-2 text-sm font-medium transition', token === page
|
|
45
|
+
? 'bg-accent text-white'
|
|
46
|
+
: 'border border-gray-300 text-gray-700 hover:bg-gray-50 dark:border-gray-700 dark:text-gray-200 dark:hover:bg-gray-800'), children: token }, token))), _jsx("button", { type: 'button', "aria-label": 'Next page', className: NAV_BTN, disabled: page >= pageCount, onClick: () => go(page + 1), children: _jsx(Chevron, { dir: 'right' }) })] }))] }));
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=Pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../../../src/react/components/Pagination.tsx"],"names":[],"mappings":"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"}
|