cursedbelt 5.81.2 → 5.85.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/dist/react/AuthGate.d.ts.map +1 -1
- package/dist/react/AuthGate.js +1 -0
- package/dist/react/AuthGate.js.map +1 -1
- package/dist/react/activity-bar/ActivityBar.d.ts +1 -1
- package/dist/react/activity-bar/ActivityBar.d.ts.map +1 -1
- package/dist/react/activity-bar/ActivityBar.js +2 -2
- package/dist/react/activity-bar/ActivityBar.js.map +1 -1
- package/dist/react/analytics/MetricDrilldown.d.ts +1 -1
- package/dist/react/analytics/MetricDrilldown.d.ts.map +1 -1
- package/dist/react/analytics/MetricDrilldown.js +2 -2
- package/dist/react/analytics/MetricDrilldown.js.map +1 -1
- package/dist/react/analytics/RangeTabs.d.ts +1 -1
- package/dist/react/analytics/RangeTabs.d.ts.map +1 -1
- package/dist/react/analytics/RangeTabs.js +2 -2
- package/dist/react/analytics/RangeTabs.js.map +1 -1
- package/dist/react/canvas-hud/AlignmentGuides.d.ts +26 -0
- package/dist/react/canvas-hud/AlignmentGuides.d.ts.map +1 -0
- package/dist/react/canvas-hud/AlignmentGuides.js +51 -0
- package/dist/react/canvas-hud/AlignmentGuides.js.map +1 -0
- package/dist/react/canvas-hud/CanvasMinimap.d.ts +1 -1
- package/dist/react/canvas-hud/CanvasMinimap.d.ts.map +1 -1
- package/dist/react/canvas-hud/CanvasMinimap.js +2 -2
- package/dist/react/canvas-hud/CanvasMinimap.js.map +1 -1
- package/dist/react/canvas-hud/CanvasNodeMenu.d.ts +1 -1
- package/dist/react/canvas-hud/CanvasNodeMenu.d.ts.map +1 -1
- package/dist/react/canvas-hud/CanvasNodeMenu.js +2 -2
- package/dist/react/canvas-hud/CanvasNodeMenu.js.map +1 -1
- package/dist/react/canvas-hud/CanvasSearchField.d.ts +1 -1
- package/dist/react/canvas-hud/CanvasSearchField.d.ts.map +1 -1
- package/dist/react/canvas-hud/CanvasSearchField.js +2 -2
- package/dist/react/canvas-hud/CanvasSearchField.js.map +1 -1
- package/dist/react/canvas-hud/HudControls.d.ts +3 -3
- package/dist/react/canvas-hud/HudControls.d.ts.map +1 -1
- package/dist/react/canvas-hud/HudControls.js +6 -6
- package/dist/react/canvas-hud/HudControls.js.map +1 -1
- package/dist/react/canvas-hud/alignment.d.ts +56 -0
- package/dist/react/canvas-hud/alignment.d.ts.map +1 -0
- package/dist/react/canvas-hud/alignment.js +100 -0
- package/dist/react/canvas-hud/alignment.js.map +1 -0
- package/dist/react/canvas-hud/index.d.ts +4 -0
- package/dist/react/canvas-hud/index.d.ts.map +1 -1
- package/dist/react/canvas-hud/index.js +2 -0
- package/dist/react/canvas-hud/index.js.map +1 -1
- package/dist/react/charts/AreaChart.d.ts +1 -1
- package/dist/react/charts/AreaChart.d.ts.map +1 -1
- package/dist/react/charts/AreaChart.js +2 -2
- package/dist/react/charts/AreaChart.js.map +1 -1
- package/dist/react/charts/BarChart.d.ts +9 -1
- package/dist/react/charts/BarChart.d.ts.map +1 -1
- package/dist/react/charts/BarChart.js +10 -3
- package/dist/react/charts/BarChart.js.map +1 -1
- package/dist/react/charts/ChartCard.d.ts +1 -1
- package/dist/react/charts/ChartCard.d.ts.map +1 -1
- package/dist/react/charts/ChartCard.js +2 -2
- package/dist/react/charts/ChartCard.js.map +1 -1
- package/dist/react/charts/ChartFrame.d.ts +1 -1
- package/dist/react/charts/ChartFrame.d.ts.map +1 -1
- package/dist/react/charts/ChartFrame.js +2 -2
- package/dist/react/charts/ChartFrame.js.map +1 -1
- package/dist/react/charts/ChartLegend.d.ts +1 -1
- package/dist/react/charts/ChartLegend.d.ts.map +1 -1
- package/dist/react/charts/ChartLegend.js +2 -2
- package/dist/react/charts/ChartLegend.js.map +1 -1
- package/dist/react/charts/ChartTooltip.d.ts +1 -1
- package/dist/react/charts/ChartTooltip.d.ts.map +1 -1
- package/dist/react/charts/ChartTooltip.js +2 -2
- package/dist/react/charts/ChartTooltip.js.map +1 -1
- package/dist/react/charts/HeatmapChart.d.ts +1 -1
- package/dist/react/charts/HeatmapChart.d.ts.map +1 -1
- package/dist/react/charts/HeatmapChart.js +2 -2
- package/dist/react/charts/HeatmapChart.js.map +1 -1
- package/dist/react/charts/IntervalTimeline.d.ts +1 -1
- package/dist/react/charts/IntervalTimeline.d.ts.map +1 -1
- package/dist/react/charts/IntervalTimeline.js +3 -3
- package/dist/react/charts/IntervalTimeline.js.map +1 -1
- package/dist/react/charts/LineChart.d.ts +1 -1
- package/dist/react/charts/LineChart.d.ts.map +1 -1
- package/dist/react/charts/LineChart.js +2 -2
- package/dist/react/charts/LineChart.js.map +1 -1
- package/dist/react/charts/PieChart.d.ts +1 -1
- package/dist/react/charts/PieChart.d.ts.map +1 -1
- package/dist/react/charts/PieChart.js +2 -2
- package/dist/react/charts/PieChart.js.map +1 -1
- package/dist/react/charts/RadialBarChart.d.ts +1 -1
- package/dist/react/charts/RadialBarChart.d.ts.map +1 -1
- package/dist/react/charts/RadialBarChart.js +2 -2
- package/dist/react/charts/RadialBarChart.js.map +1 -1
- package/dist/react/charts/Sparkline.d.ts +1 -1
- package/dist/react/charts/Sparkline.d.ts.map +1 -1
- package/dist/react/charts/Sparkline.js +2 -2
- package/dist/react/charts/Sparkline.js.map +1 -1
- package/dist/react/charts/TimeSeriesChart.d.ts +1 -1
- package/dist/react/charts/TimeSeriesChart.d.ts.map +1 -1
- package/dist/react/charts/TimeSeriesChart.js +3 -3
- package/dist/react/charts/TimeSeriesChart.js.map +1 -1
- package/dist/react/charts/Treemap.d.ts +1 -1
- package/dist/react/charts/Treemap.d.ts.map +1 -1
- package/dist/react/charts/Treemap.js +2 -2
- package/dist/react/charts/Treemap.js.map +1 -1
- package/dist/react/chat/Bubble.d.ts +1 -1
- package/dist/react/chat/Bubble.d.ts.map +1 -1
- package/dist/react/chat/Bubble.js +3 -3
- package/dist/react/chat/Bubble.js.map +1 -1
- package/dist/react/chat/DateMarker.d.ts +1 -1
- package/dist/react/chat/DateMarker.d.ts.map +1 -1
- package/dist/react/chat/DateMarker.js +2 -2
- package/dist/react/chat/DateMarker.js.map +1 -1
- package/dist/react/chat/MessageComposer.d.ts +1 -1
- package/dist/react/chat/MessageComposer.d.ts.map +1 -1
- package/dist/react/chat/MessageComposer.js +2 -2
- package/dist/react/chat/MessageComposer.js.map +1 -1
- package/dist/react/chat/MessageRow.d.ts +1 -1
- package/dist/react/chat/MessageRow.d.ts.map +1 -1
- package/dist/react/chat/MessageRow.js +3 -3
- package/dist/react/chat/MessageRow.js.map +1 -1
- package/dist/react/chat/MessageScroller.d.ts +1 -1
- package/dist/react/chat/MessageScroller.d.ts.map +1 -1
- package/dist/react/chat/MessageScroller.js +2 -2
- package/dist/react/chat/MessageScroller.js.map +1 -1
- package/dist/react/chat/MessageThread.d.ts +1 -1
- package/dist/react/chat/MessageThread.d.ts.map +1 -1
- package/dist/react/chat/MessageThread.js +2 -2
- package/dist/react/chat/MessageThread.js.map +1 -1
- package/dist/react/chat/PresenceRoster.d.ts +1 -1
- package/dist/react/chat/PresenceRoster.d.ts.map +1 -1
- package/dist/react/chat/PresenceRoster.js +2 -2
- package/dist/react/chat/PresenceRoster.js.map +1 -1
- package/dist/react/chat/StatusMarker.d.ts +1 -1
- package/dist/react/chat/StatusMarker.d.ts.map +1 -1
- package/dist/react/chat/StatusMarker.js +2 -2
- package/dist/react/chat/StatusMarker.js.map +1 -1
- package/dist/react/code-editor/CodeEditor.d.ts +1 -1
- package/dist/react/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/react/code-editor/CodeEditor.js +2 -2
- package/dist/react/code-editor/CodeEditor.js.map +1 -1
- package/dist/react/companion-link/CompanionLinkBar.d.ts +3 -2
- package/dist/react/companion-link/CompanionLinkBar.d.ts.map +1 -1
- package/dist/react/companion-link/CompanionLinkBar.js +3 -3
- package/dist/react/companion-link/CompanionLinkBar.js.map +1 -1
- package/dist/react/companion-link/CompanionLinkStatus.d.ts +1 -1
- package/dist/react/companion-link/CompanionLinkStatus.d.ts.map +1 -1
- package/dist/react/companion-link/CompanionLinkStatus.js +3 -3
- package/dist/react/companion-link/CompanionLinkStatus.js.map +1 -1
- package/dist/react/companion-link/StaleMirrorBanner.d.ts +1 -1
- package/dist/react/companion-link/StaleMirrorBanner.d.ts.map +1 -1
- package/dist/react/companion-link/StaleMirrorBanner.js +2 -2
- package/dist/react/companion-link/StaleMirrorBanner.js.map +1 -1
- package/dist/react/components/Accordion.d.ts +1 -1
- package/dist/react/components/Accordion.d.ts.map +1 -1
- package/dist/react/components/Accordion.js +2 -2
- package/dist/react/components/Accordion.js.map +1 -1
- package/dist/react/components/ActionBar.d.ts +3 -3
- package/dist/react/components/ActionBar.d.ts.map +1 -1
- package/dist/react/components/ActionBar.js +10 -10
- package/dist/react/components/ActionBar.js.map +1 -1
- package/dist/react/components/ActionGroup.d.ts +1 -1
- package/dist/react/components/ActionGroup.d.ts.map +1 -1
- package/dist/react/components/ActionGroup.js +2 -2
- package/dist/react/components/ActionGroup.js.map +1 -1
- package/dist/react/components/ActionsHelp.d.ts +1 -1
- package/dist/react/components/ActionsHelp.d.ts.map +1 -1
- package/dist/react/components/ActionsHelp.js +2 -2
- package/dist/react/components/ActionsHelp.js.map +1 -1
- package/dist/react/components/AddItemsMenu.d.ts +1 -1
- package/dist/react/components/AddItemsMenu.d.ts.map +1 -1
- package/dist/react/components/AddItemsMenu.js +2 -2
- package/dist/react/components/AddItemsMenu.js.map +1 -1
- package/dist/react/components/Alert.d.ts +1 -1
- package/dist/react/components/Alert.d.ts.map +1 -1
- package/dist/react/components/Alert.js +2 -2
- package/dist/react/components/Alert.js.map +1 -1
- package/dist/react/components/AmbientBackdrop.d.ts +1 -1
- package/dist/react/components/AmbientBackdrop.d.ts.map +1 -1
- package/dist/react/components/AmbientBackdrop.js +2 -2
- package/dist/react/components/AmbientBackdrop.js.map +1 -1
- package/dist/react/components/AppShell.d.ts +3 -3
- package/dist/react/components/AppShell.d.ts.map +1 -1
- package/dist/react/components/AppShell.js +17 -5
- package/dist/react/components/AppShell.js.map +1 -1
- package/dist/react/components/AsyncPanel.d.ts +1 -1
- package/dist/react/components/AsyncPanel.d.ts.map +1 -1
- package/dist/react/components/AsyncPanel.js +5 -5
- package/dist/react/components/AsyncPanel.js.map +1 -1
- package/dist/react/components/Autocomplete.d.ts +3 -3
- package/dist/react/components/Autocomplete.d.ts.map +1 -1
- package/dist/react/components/Autocomplete.js +2 -2
- package/dist/react/components/Autocomplete.js.map +1 -1
- package/dist/react/components/Avatar.d.ts +1 -1
- package/dist/react/components/Avatar.d.ts.map +1 -1
- package/dist/react/components/Avatar.js +3 -3
- package/dist/react/components/Avatar.js.map +1 -1
- package/dist/react/components/AvatarStack.d.ts +1 -1
- package/dist/react/components/AvatarStack.d.ts.map +1 -1
- package/dist/react/components/AvatarStack.js +2 -2
- package/dist/react/components/AvatarStack.js.map +1 -1
- package/dist/react/components/BannerLane.d.ts +1 -1
- package/dist/react/components/BannerLane.d.ts.map +1 -1
- package/dist/react/components/BannerLane.js +2 -2
- package/dist/react/components/BannerLane.js.map +1 -1
- package/dist/react/components/BuildFreshness.d.ts +3 -3
- package/dist/react/components/BuildFreshness.d.ts.map +1 -1
- package/dist/react/components/BuildFreshness.js +3 -3
- package/dist/react/components/BuildFreshness.js.map +1 -1
- package/dist/react/components/ButtonLink.d.ts +1 -1
- package/dist/react/components/ButtonLink.d.ts.map +1 -1
- package/dist/react/components/ButtonLink.js +2 -2
- package/dist/react/components/ButtonLink.js.map +1 -1
- package/dist/react/components/CardDisplayControls.d.ts +6 -1
- package/dist/react/components/CardDisplayControls.d.ts.map +1 -1
- package/dist/react/components/CardDisplayControls.js +3 -3
- package/dist/react/components/CardDisplayControls.js.map +1 -1
- package/dist/react/components/ChartTablePanel.d.ts +1 -1
- package/dist/react/components/ChartTablePanel.d.ts.map +1 -1
- package/dist/react/components/ChartTablePanel.js +2 -2
- package/dist/react/components/ChartTablePanel.js.map +1 -1
- package/dist/react/components/ChipFilterStrip.d.ts +1 -1
- package/dist/react/components/ChipFilterStrip.d.ts.map +1 -1
- package/dist/react/components/ChipFilterStrip.js +2 -2
- package/dist/react/components/ChipFilterStrip.js.map +1 -1
- package/dist/react/components/ChoiceGroup.d.ts +1 -1
- package/dist/react/components/ChoiceGroup.d.ts.map +1 -1
- package/dist/react/components/ChoiceGroup.js +2 -2
- package/dist/react/components/ChoiceGroup.js.map +1 -1
- package/dist/react/components/ChoiceMenu.d.ts +1 -1
- package/dist/react/components/ChoiceMenu.d.ts.map +1 -1
- package/dist/react/components/ChoiceMenu.js +2 -2
- package/dist/react/components/ChoiceMenu.js.map +1 -1
- package/dist/react/components/CodeArea.d.ts +1 -1
- package/dist/react/components/CodeArea.d.ts.map +1 -1
- package/dist/react/components/CodeArea.js +2 -2
- package/dist/react/components/CodeArea.js.map +1 -1
- package/dist/react/components/CodeFieldInput.d.ts +1 -1
- package/dist/react/components/CodeFieldInput.d.ts.map +1 -1
- package/dist/react/components/CodeFieldInput.js +2 -2
- package/dist/react/components/CodeFieldInput.js.map +1 -1
- package/dist/react/components/Collapsible.d.ts +1 -1
- package/dist/react/components/Collapsible.d.ts.map +1 -1
- package/dist/react/components/Collapsible.js +2 -2
- package/dist/react/components/Collapsible.js.map +1 -1
- package/dist/react/components/ColorField.d.ts +1 -1
- package/dist/react/components/ColorField.d.ts.map +1 -1
- package/dist/react/components/ColorField.js +2 -2
- package/dist/react/components/ColorField.js.map +1 -1
- package/dist/react/components/ColorSwatches.d.ts +1 -1
- package/dist/react/components/ColorSwatches.d.ts.map +1 -1
- package/dist/react/components/ColorSwatches.js +2 -2
- package/dist/react/components/ColorSwatches.js.map +1 -1
- package/dist/react/components/ComboboxField.d.ts.map +1 -1
- package/dist/react/components/ComboboxField.js +5 -2
- package/dist/react/components/ComboboxField.js.map +1 -1
- package/dist/react/components/CommentThread.d.ts +1 -1
- package/dist/react/components/CommentThread.d.ts.map +1 -1
- package/dist/react/components/CommentThread.js +2 -2
- package/dist/react/components/CommentThread.js.map +1 -1
- package/dist/react/components/ConfirmDialog.d.ts +1 -1
- package/dist/react/components/ConfirmDialog.d.ts.map +1 -1
- package/dist/react/components/ConfirmDialog.js +2 -2
- package/dist/react/components/ConfirmDialog.js.map +1 -1
- package/dist/react/components/ConnectionHealer.d.ts +1 -1
- package/dist/react/components/ConnectionHealer.d.ts.map +1 -1
- package/dist/react/components/ConnectionHealer.js +3 -3
- package/dist/react/components/ConnectionHealer.js.map +1 -1
- package/dist/react/components/ControlPanel.d.ts +2 -2
- package/dist/react/components/ControlPanel.d.ts.map +1 -1
- package/dist/react/components/ControlPanel.js +5 -5
- package/dist/react/components/ControlPanel.js.map +1 -1
- package/dist/react/components/CopyButton.d.ts +1 -1
- package/dist/react/components/CopyButton.d.ts.map +1 -1
- package/dist/react/components/CopyButton.js +2 -2
- package/dist/react/components/CopyButton.js.map +1 -1
- package/dist/react/components/CopyableText.d.ts +1 -1
- package/dist/react/components/CopyableText.d.ts.map +1 -1
- package/dist/react/components/CopyableText.js +3 -3
- package/dist/react/components/CopyableText.js.map +1 -1
- package/dist/react/components/DataTable/CardView.d.ts +1 -1
- package/dist/react/components/DataTable/CardView.d.ts.map +1 -1
- package/dist/react/components/DataTable/CardView.js +2 -2
- package/dist/react/components/DataTable/CardView.js.map +1 -1
- package/dist/react/components/DataTable/ColumnChecklist.d.ts +1 -1
- package/dist/react/components/DataTable/ColumnChecklist.d.ts.map +1 -1
- package/dist/react/components/DataTable/ColumnChecklist.js +2 -2
- package/dist/react/components/DataTable/ColumnChecklist.js.map +1 -1
- package/dist/react/components/DataTable/DataTable.d.ts +1 -1
- package/dist/react/components/DataTable/DataTable.d.ts.map +1 -1
- package/dist/react/components/DataTable/DataTable.js +2 -2
- package/dist/react/components/DataTable/DataTable.js.map +1 -1
- package/dist/react/components/DataTable/Pagination.d.ts +1 -1
- package/dist/react/components/DataTable/Pagination.d.ts.map +1 -1
- package/dist/react/components/DataTable/Pagination.js +2 -2
- package/dist/react/components/DataTable/Pagination.js.map +1 -1
- package/dist/react/components/DataTable/RowActions.d.ts +1 -1
- package/dist/react/components/DataTable/RowActions.d.ts.map +1 -1
- package/dist/react/components/DataTable/RowActions.js +2 -2
- package/dist/react/components/DataTable/RowActions.js.map +1 -1
- package/dist/react/components/DataTable/SearchBox.d.ts +1 -1
- package/dist/react/components/DataTable/SearchBox.d.ts.map +1 -1
- package/dist/react/components/DataTable/SearchBox.js +4 -4
- package/dist/react/components/DataTable/SearchBox.js.map +1 -1
- package/dist/react/components/DataTable/SortHeader.d.ts +3 -3
- package/dist/react/components/DataTable/SortHeader.d.ts.map +1 -1
- package/dist/react/components/DataTable/SortHeader.js +4 -4
- package/dist/react/components/DataTable/SortHeader.js.map +1 -1
- package/dist/react/components/DataTable/SortStack.d.ts +1 -1
- package/dist/react/components/DataTable/SortStack.d.ts.map +1 -1
- package/dist/react/components/DataTable/SortStack.js +2 -2
- package/dist/react/components/DataTable/SortStack.js.map +1 -1
- package/dist/react/components/DataTable/TableFilterBuilder.d.ts +1 -1
- package/dist/react/components/DataTable/TableFilterBuilder.d.ts.map +1 -1
- package/dist/react/components/DataTable/TableFilterBuilder.js +2 -2
- package/dist/react/components/DataTable/TableFilterBuilder.js.map +1 -1
- package/dist/react/components/DataTable/TableViewToggle.d.ts +1 -1
- package/dist/react/components/DataTable/TableViewToggle.d.ts.map +1 -1
- package/dist/react/components/DataTable/TableViewToggle.js +2 -2
- package/dist/react/components/DataTable/TableViewToggle.js.map +1 -1
- package/dist/react/components/DataTable/Toolbar.d.ts +1 -1
- package/dist/react/components/DataTable/Toolbar.d.ts.map +1 -1
- package/dist/react/components/DataTable/Toolbar.js +2 -2
- package/dist/react/components/DataTable/Toolbar.js.map +1 -1
- package/dist/react/components/DataTable/ViewOptionsMenu.d.ts +1 -1
- package/dist/react/components/DataTable/ViewOptionsMenu.d.ts.map +1 -1
- package/dist/react/components/DataTable/ViewOptionsMenu.js +2 -2
- package/dist/react/components/DataTable/ViewOptionsMenu.js.map +1 -1
- package/dist/react/components/DataTable/cells/CellRenderer.d.ts.map +1 -1
- package/dist/react/components/DataTable/cells/CellRenderer.js +6 -2
- package/dist/react/components/DataTable/cells/CellRenderer.js.map +1 -1
- package/dist/react/components/DataTable/cells/CodeCell.d.ts +1 -1
- package/dist/react/components/DataTable/cells/CodeCell.d.ts.map +1 -1
- package/dist/react/components/DataTable/cells/CodeCell.js +2 -2
- package/dist/react/components/DataTable/cells/CodeCell.js.map +1 -1
- package/dist/react/components/DataTable/cells/LinkCell.d.ts +1 -1
- package/dist/react/components/DataTable/cells/LinkCell.d.ts.map +1 -1
- package/dist/react/components/DataTable/cells/LinkCell.js +2 -2
- package/dist/react/components/DataTable/cells/LinkCell.js.map +1 -1
- package/dist/react/components/DataTable/cells/PasswordCell.d.ts +1 -1
- package/dist/react/components/DataTable/cells/PasswordCell.d.ts.map +1 -1
- package/dist/react/components/DataTable/cells/PasswordCell.js +2 -2
- package/dist/react/components/DataTable/cells/PasswordCell.js.map +1 -1
- package/dist/react/components/DatePicker.d.ts +1 -1
- package/dist/react/components/DatePicker.d.ts.map +1 -1
- package/dist/react/components/DatePicker.js +2 -2
- package/dist/react/components/DatePicker.js.map +1 -1
- package/dist/react/components/DateRangePicker.d.ts +1 -1
- package/dist/react/components/DateRangePicker.d.ts.map +1 -1
- package/dist/react/components/DateRangePicker.js +2 -2
- package/dist/react/components/DateRangePicker.js.map +1 -1
- package/dist/react/components/DateTimeField.d.ts +1 -1
- package/dist/react/components/DateTimeField.d.ts.map +1 -1
- package/dist/react/components/DateTimeField.js +2 -2
- package/dist/react/components/DateTimeField.js.map +1 -1
- package/dist/react/components/DiscardConfirmDialog.d.ts +1 -1
- package/dist/react/components/DiscardConfirmDialog.d.ts.map +1 -1
- package/dist/react/components/DiscardConfirmDialog.js +2 -2
- package/dist/react/components/DiscardConfirmDialog.js.map +1 -1
- package/dist/react/components/DisclosureButton.d.ts +2 -2
- package/dist/react/components/DisclosureButton.d.ts.map +1 -1
- package/dist/react/components/DisclosureButton.js +4 -4
- package/dist/react/components/DisclosureButton.js.map +1 -1
- package/dist/react/components/DragHandle.d.ts +1 -1
- package/dist/react/components/DragHandle.d.ts.map +1 -1
- package/dist/react/components/DragHandle.js +2 -2
- package/dist/react/components/DragHandle.js.map +1 -1
- package/dist/react/components/Drawer.d.ts +1 -1
- package/dist/react/components/Drawer.d.ts.map +1 -1
- package/dist/react/components/Drawer.js +2 -2
- package/dist/react/components/Drawer.js.map +1 -1
- package/dist/react/components/DropIndicator.d.ts +1 -1
- package/dist/react/components/DropIndicator.d.ts.map +1 -1
- package/dist/react/components/DropIndicator.js +3 -3
- package/dist/react/components/DropIndicator.js.map +1 -1
- package/dist/react/components/DropSlot.d.ts +1 -1
- package/dist/react/components/DropSlot.d.ts.map +1 -1
- package/dist/react/components/DropSlot.js +2 -2
- package/dist/react/components/DropSlot.js.map +1 -1
- package/dist/react/components/DropdownMenu.d.ts +1 -1
- package/dist/react/components/DropdownMenu.d.ts.map +1 -1
- package/dist/react/components/DropdownMenu.js +2 -2
- package/dist/react/components/DropdownMenu.js.map +1 -1
- package/dist/react/components/EditorPage.d.ts +2 -2
- package/dist/react/components/EditorPage.d.ts.map +1 -1
- package/dist/react/components/EditorPage.js +4 -4
- package/dist/react/components/EditorPage.js.map +1 -1
- package/dist/react/components/ElsewhereNotice.d.ts +1 -1
- package/dist/react/components/ElsewhereNotice.d.ts.map +1 -1
- package/dist/react/components/ElsewhereNotice.js +2 -2
- package/dist/react/components/ElsewhereNotice.js.map +1 -1
- package/dist/react/components/EmojiField.d.ts +1 -1
- package/dist/react/components/EmojiField.d.ts.map +1 -1
- package/dist/react/components/EmojiField.js +2 -2
- package/dist/react/components/EmojiField.js.map +1 -1
- package/dist/react/components/EmptyState.d.ts +1 -1
- package/dist/react/components/EmptyState.d.ts.map +1 -1
- package/dist/react/components/EmptyState.js +2 -2
- package/dist/react/components/EmptyState.js.map +1 -1
- package/dist/react/components/EnvCompare.d.ts +1 -1
- package/dist/react/components/EnvCompare.d.ts.map +1 -1
- package/dist/react/components/EnvCompare.js +3 -3
- package/dist/react/components/EnvCompare.js.map +1 -1
- package/dist/react/components/EnvEditor.d.ts +1 -1
- package/dist/react/components/EnvEditor.d.ts.map +1 -1
- package/dist/react/components/EnvEditor.js +2 -2
- package/dist/react/components/EnvEditor.js.map +1 -1
- package/dist/react/components/ErrorBoundary.d.ts +1 -1
- package/dist/react/components/ErrorBoundary.d.ts.map +1 -1
- package/dist/react/components/ErrorBoundary.js +3 -3
- package/dist/react/components/ErrorBoundary.js.map +1 -1
- package/dist/react/components/ErrorCard.d.ts +1 -1
- package/dist/react/components/ErrorCard.d.ts.map +1 -1
- package/dist/react/components/ErrorCard.js +2 -2
- package/dist/react/components/ErrorCard.js.map +1 -1
- package/dist/react/components/EventTimeline.d.ts +1 -1
- package/dist/react/components/EventTimeline.d.ts.map +1 -1
- package/dist/react/components/EventTimeline.js +2 -2
- package/dist/react/components/EventTimeline.js.map +1 -1
- package/dist/react/components/ExpandableRow.d.ts +1 -1
- package/dist/react/components/ExpandableRow.d.ts.map +1 -1
- package/dist/react/components/ExpandableRow.js +2 -2
- package/dist/react/components/ExpandableRow.js.map +1 -1
- package/dist/react/components/ExternalLink.d.ts +1 -1
- package/dist/react/components/ExternalLink.d.ts.map +1 -1
- package/dist/react/components/ExternalLink.js +4 -4
- package/dist/react/components/ExternalLink.js.map +1 -1
- package/dist/react/components/Field.d.ts +1 -1
- package/dist/react/components/Field.d.ts.map +1 -1
- package/dist/react/components/Field.js +2 -2
- package/dist/react/components/Field.js.map +1 -1
- package/dist/react/components/FieldGrid.d.ts +1 -1
- package/dist/react/components/FieldGrid.d.ts.map +1 -1
- package/dist/react/components/FieldGrid.js +2 -2
- package/dist/react/components/FieldGrid.js.map +1 -1
- package/dist/react/components/FileActions.d.ts +1 -1
- package/dist/react/components/FileActions.d.ts.map +1 -1
- package/dist/react/components/FileActions.js +2 -2
- package/dist/react/components/FileActions.js.map +1 -1
- package/dist/react/components/FileDropZone.d.ts +1 -1
- package/dist/react/components/FileDropZone.d.ts.map +1 -1
- package/dist/react/components/FileDropZone.js +2 -2
- package/dist/react/components/FileDropZone.js.map +1 -1
- package/dist/react/components/FileLocation.d.ts +1 -1
- package/dist/react/components/FileLocation.d.ts.map +1 -1
- package/dist/react/components/FileLocation.js +2 -2
- package/dist/react/components/FileLocation.js.map +1 -1
- package/dist/react/components/FileTypeIcon.d.ts +1 -1
- package/dist/react/components/FileTypeIcon.d.ts.map +1 -1
- package/dist/react/components/FileTypeIcon.js +2 -2
- package/dist/react/components/FileTypeIcon.js.map +1 -1
- package/dist/react/components/FindingsList.d.ts +1 -1
- package/dist/react/components/FindingsList.d.ts.map +1 -1
- package/dist/react/components/FindingsList.js +3 -3
- package/dist/react/components/FindingsList.js.map +1 -1
- package/dist/react/components/FormPreviewLayout.d.ts +1 -1
- package/dist/react/components/FormPreviewLayout.d.ts.map +1 -1
- package/dist/react/components/FormPreviewLayout.js +2 -2
- package/dist/react/components/FormPreviewLayout.js.map +1 -1
- package/dist/react/components/Guide.d.ts +2 -2
- package/dist/react/components/Guide.d.ts.map +1 -1
- package/dist/react/components/Guide.js +4 -4
- package/dist/react/components/Guide.js.map +1 -1
- package/dist/react/components/Heat.d.ts +130 -0
- package/dist/react/components/Heat.d.ts.map +1 -0
- package/dist/react/components/Heat.js +139 -0
- package/dist/react/components/Heat.js.map +1 -0
- package/dist/react/components/HoverCard.d.ts +1 -1
- package/dist/react/components/HoverCard.d.ts.map +1 -1
- package/dist/react/components/HoverCard.js +2 -2
- package/dist/react/components/HoverCard.js.map +1 -1
- package/dist/react/components/IconPicker.d.ts +1 -1
- package/dist/react/components/IconPicker.d.ts.map +1 -1
- package/dist/react/components/IconPicker.js +2 -2
- package/dist/react/components/IconPicker.js.map +1 -1
- package/dist/react/components/ImpactDialog.d.ts +1 -1
- package/dist/react/components/ImpactDialog.d.ts.map +1 -1
- package/dist/react/components/ImpactDialog.js +2 -2
- package/dist/react/components/ImpactDialog.js.map +1 -1
- package/dist/react/components/InfoHintImpl.d.ts +1 -1
- package/dist/react/components/InfoHintImpl.d.ts.map +1 -1
- package/dist/react/components/InfoHintImpl.js +2 -2
- package/dist/react/components/InfoHintImpl.js.map +1 -1
- package/dist/react/components/InheritBadge.d.ts +1 -1
- package/dist/react/components/InheritBadge.d.ts.map +1 -1
- package/dist/react/components/InheritBadge.js +2 -2
- package/dist/react/components/InheritBadge.js.map +1 -1
- package/dist/react/components/InlineEditableText.d.ts +1 -1
- package/dist/react/components/InlineEditableText.d.ts.map +1 -1
- package/dist/react/components/InlineEditableText.js +6 -6
- package/dist/react/components/InlineEditableText.js.map +1 -1
- package/dist/react/components/IsolatedFrame.d.ts +1 -1
- package/dist/react/components/IsolatedFrame.d.ts.map +1 -1
- package/dist/react/components/IsolatedFrame.js +4 -4
- package/dist/react/components/IsolatedFrame.js.map +1 -1
- package/dist/react/components/JsonEditor.d.ts +1 -1
- package/dist/react/components/JsonEditor.d.ts.map +1 -1
- package/dist/react/components/JsonEditor.js +2 -2
- package/dist/react/components/JsonEditor.js.map +1 -1
- package/dist/react/components/KanbanBoard.d.ts +1 -1
- package/dist/react/components/KanbanBoard.d.ts.map +1 -1
- package/dist/react/components/KanbanBoard.js +2 -2
- package/dist/react/components/KanbanBoard.js.map +1 -1
- package/dist/react/components/KeyBadge.d.ts +1 -1
- package/dist/react/components/KeyBadge.d.ts.map +1 -1
- package/dist/react/components/KeyBadge.js +5 -5
- package/dist/react/components/KeyBadge.js.map +1 -1
- package/dist/react/components/Lightbox.d.ts +1 -1
- package/dist/react/components/Lightbox.d.ts.map +1 -1
- package/dist/react/components/Lightbox.js +2 -2
- package/dist/react/components/Lightbox.js.map +1 -1
- package/dist/react/components/ListToolbar.d.ts +1 -1
- package/dist/react/components/ListToolbar.d.ts.map +1 -1
- package/dist/react/components/ListToolbar.js +2 -2
- package/dist/react/components/ListToolbar.js.map +1 -1
- package/dist/react/components/LogViewer.d.ts +1 -1
- package/dist/react/components/LogViewer.d.ts.map +1 -1
- package/dist/react/components/LogViewer.js +2 -2
- package/dist/react/components/LogViewer.js.map +1 -1
- package/dist/react/components/Menu.d.ts +3 -3
- package/dist/react/components/Menu.d.ts.map +1 -1
- package/dist/react/components/Menu.js +7 -7
- package/dist/react/components/Menu.js.map +1 -1
- package/dist/react/components/MeterList.d.ts +1 -1
- package/dist/react/components/MeterList.d.ts.map +1 -1
- package/dist/react/components/MeterList.js +5 -5
- package/dist/react/components/MeterList.js.map +1 -1
- package/dist/react/components/Modal.d.ts +1 -1
- package/dist/react/components/Modal.d.ts.map +1 -1
- package/dist/react/components/Modal.js +2 -2
- package/dist/react/components/Modal.js.map +1 -1
- package/dist/react/components/MultiSelectField.d.ts +1 -1
- package/dist/react/components/MultiSelectField.d.ts.map +1 -1
- package/dist/react/components/MultiSelectField.js +2 -2
- package/dist/react/components/MultiSelectField.js.map +1 -1
- package/dist/react/components/OnlineDot.d.ts +1 -1
- package/dist/react/components/OnlineDot.d.ts.map +1 -1
- package/dist/react/components/OnlineDot.js +2 -2
- package/dist/react/components/OnlineDot.js.map +1 -1
- package/dist/react/components/OtpInput.d.ts +1 -1
- package/dist/react/components/OtpInput.d.ts.map +1 -1
- package/dist/react/components/OtpInput.js +2 -2
- package/dist/react/components/OtpInput.js.map +1 -1
- package/dist/react/components/Page.d.ts +12 -1
- package/dist/react/components/Page.d.ts.map +1 -1
- package/dist/react/components/Page.js +10 -2
- package/dist/react/components/Page.js.map +1 -1
- package/dist/react/components/PageGuideButton.d.ts +1 -1
- package/dist/react/components/PageGuideButton.d.ts.map +1 -1
- package/dist/react/components/PageGuideButton.js +3 -3
- package/dist/react/components/PageGuideButton.js.map +1 -1
- package/dist/react/components/PageGuidePopover.d.ts +1 -1
- package/dist/react/components/PageGuidePopover.d.ts.map +1 -1
- package/dist/react/components/PageGuidePopover.js +2 -2
- package/dist/react/components/PageGuidePopover.js.map +1 -1
- package/dist/react/components/PanelGrid.d.ts +1 -1
- package/dist/react/components/PanelGrid.d.ts.map +1 -1
- package/dist/react/components/PanelGrid.js +3 -3
- package/dist/react/components/PanelGrid.js.map +1 -1
- package/dist/react/components/PanelSeparator.d.ts +1 -1
- package/dist/react/components/PanelSeparator.d.ts.map +1 -1
- package/dist/react/components/PanelSeparator.js +2 -2
- package/dist/react/components/PanelSeparator.js.map +1 -1
- package/dist/react/components/PathText.d.ts +1 -1
- package/dist/react/components/PathText.d.ts.map +1 -1
- package/dist/react/components/PathText.js +2 -2
- package/dist/react/components/PathText.js.map +1 -1
- package/dist/react/components/PointerDrag.d.ts +1 -1
- package/dist/react/components/PointerDrag.d.ts.map +1 -1
- package/dist/react/components/PointerDrag.js +2 -2
- package/dist/react/components/PointerDrag.js.map +1 -1
- package/dist/react/components/Popover.d.ts +2 -2
- package/dist/react/components/Popover.d.ts.map +1 -1
- package/dist/react/components/Popover.js +4 -4
- package/dist/react/components/Popover.js.map +1 -1
- package/dist/react/components/Progress.d.ts +2 -2
- package/dist/react/components/Progress.d.ts.map +1 -1
- package/dist/react/components/Progress.js +4 -4
- package/dist/react/components/Progress.js.map +1 -1
- package/dist/react/components/PromptDialog.d.ts +1 -1
- package/dist/react/components/PromptDialog.d.ts.map +1 -1
- package/dist/react/components/PromptDialog.js +2 -2
- package/dist/react/components/PromptDialog.js.map +1 -1
- package/dist/react/components/PropertyPicker.d.ts.map +1 -1
- package/dist/react/components/PropertyPicker.js +5 -2
- package/dist/react/components/PropertyPicker.js.map +1 -1
- package/dist/react/components/QueryBoundary.d.ts.map +1 -1
- package/dist/react/components/QueryBoundary.js +1 -0
- package/dist/react/components/QueryBoundary.js.map +1 -1
- package/dist/react/components/RatingField.d.ts +1 -1
- package/dist/react/components/RatingField.d.ts.map +1 -1
- package/dist/react/components/RatingField.js +2 -2
- package/dist/react/components/RatingField.js.map +1 -1
- package/dist/react/components/ReactionBar.d.ts +1 -1
- package/dist/react/components/ReactionBar.d.ts.map +1 -1
- package/dist/react/components/ReactionBar.js +2 -2
- package/dist/react/components/ReactionBar.js.map +1 -1
- package/dist/react/components/ReactionPicker.d.ts +1 -1
- package/dist/react/components/ReactionPicker.d.ts.map +1 -1
- package/dist/react/components/ReactionPicker.js +2 -2
- package/dist/react/components/ReactionPicker.js.map +1 -1
- package/dist/react/components/RenderField.d.ts +1 -1
- package/dist/react/components/RenderField.d.ts.map +1 -1
- package/dist/react/components/RenderField.js +2 -2
- package/dist/react/components/RenderField.js.map +1 -1
- package/dist/react/components/ResponsiveWorkbench.d.ts +1 -1
- package/dist/react/components/ResponsiveWorkbench.d.ts.map +1 -1
- package/dist/react/components/ResponsiveWorkbench.js +2 -2
- package/dist/react/components/ResponsiveWorkbench.js.map +1 -1
- package/dist/react/components/RevealAction.d.ts +1 -1
- package/dist/react/components/RevealAction.d.ts.map +1 -1
- package/dist/react/components/RevealAction.js +3 -3
- package/dist/react/components/RevealAction.js.map +1 -1
- package/dist/react/components/SaveIndicator.d.ts +1 -1
- package/dist/react/components/SaveIndicator.d.ts.map +1 -1
- package/dist/react/components/SaveIndicator.js +2 -2
- package/dist/react/components/SaveIndicator.js.map +1 -1
- package/dist/react/components/SearchInput.d.ts +9 -2
- package/dist/react/components/SearchInput.d.ts.map +1 -1
- package/dist/react/components/SearchInput.js +1 -1
- package/dist/react/components/SearchInput.js.map +1 -1
- package/dist/react/components/SecretInput.d.ts +1 -1
- package/dist/react/components/SecretInput.d.ts.map +1 -1
- package/dist/react/components/SecretInput.js +2 -2
- package/dist/react/components/SecretInput.js.map +1 -1
- package/dist/react/components/SectionNav.d.ts +1 -1
- package/dist/react/components/SectionNav.d.ts.map +1 -1
- package/dist/react/components/SectionNav.js +2 -2
- package/dist/react/components/SectionNav.js.map +1 -1
- package/dist/react/components/SegmentedControl.d.ts +1 -1
- package/dist/react/components/SegmentedControl.d.ts.map +1 -1
- package/dist/react/components/SegmentedControl.js +2 -2
- package/dist/react/components/SegmentedControl.js.map +1 -1
- package/dist/react/components/SelectFieldImpl.d.ts +1 -1
- package/dist/react/components/SelectFieldImpl.d.ts.map +1 -1
- package/dist/react/components/SelectFieldImpl.js +2 -2
- package/dist/react/components/SelectFieldImpl.js.map +1 -1
- package/dist/react/components/SelectionBar.d.ts +1 -1
- package/dist/react/components/SelectionBar.d.ts.map +1 -1
- package/dist/react/components/SelectionBar.js +2 -2
- package/dist/react/components/SelectionBar.js.map +1 -1
- package/dist/react/components/SettingsStrip.d.ts +1 -1
- package/dist/react/components/SettingsStrip.d.ts.map +1 -1
- package/dist/react/components/SettingsStrip.js +2 -2
- package/dist/react/components/SettingsStrip.js.map +1 -1
- package/dist/react/components/SheetTabStrip.d.ts.map +1 -1
- package/dist/react/components/SheetTabStrip.js +8 -8
- package/dist/react/components/SheetTabStrip.js.map +1 -1
- package/dist/react/components/Skeleton.d.ts +4 -4
- package/dist/react/components/Skeleton.d.ts.map +1 -1
- package/dist/react/components/Skeleton.js +10 -10
- package/dist/react/components/Skeleton.js.map +1 -1
- package/dist/react/components/Slider.d.ts +2 -2
- package/dist/react/components/Slider.d.ts.map +1 -1
- package/dist/react/components/Slider.js +4 -4
- package/dist/react/components/Slider.js.map +1 -1
- package/dist/react/components/SliderField.d.ts +1 -1
- package/dist/react/components/SliderField.d.ts.map +1 -1
- package/dist/react/components/SliderField.js +2 -2
- package/dist/react/components/SliderField.js.map +1 -1
- package/dist/react/components/Sparkline.d.ts +1 -1
- package/dist/react/components/Sparkline.d.ts.map +1 -1
- package/dist/react/components/Sparkline.js +2 -2
- package/dist/react/components/Sparkline.js.map +1 -1
- package/dist/react/components/Spinner.d.ts +1 -1
- package/dist/react/components/Spinner.d.ts.map +1 -1
- package/dist/react/components/Spinner.js +2 -2
- package/dist/react/components/Spinner.js.map +1 -1
- package/dist/react/components/SplitButton.d.ts +1 -1
- package/dist/react/components/SplitButton.d.ts.map +1 -1
- package/dist/react/components/SplitButton.js +2 -2
- package/dist/react/components/SplitButton.js.map +1 -1
- package/dist/react/components/SplitPane.d.ts +1 -1
- package/dist/react/components/SplitPane.d.ts.map +1 -1
- package/dist/react/components/SplitPane.js +2 -2
- package/dist/react/components/SplitPane.js.map +1 -1
- package/dist/react/components/StarRating.d.ts +1 -1
- package/dist/react/components/StarRating.d.ts.map +1 -1
- package/dist/react/components/StarRating.js +4 -4
- package/dist/react/components/StarRating.js.map +1 -1
- package/dist/react/components/StatStrip.d.ts +1 -1
- package/dist/react/components/StatStrip.d.ts.map +1 -1
- package/dist/react/components/StatStrip.js +2 -2
- package/dist/react/components/StatStrip.js.map +1 -1
- package/dist/react/components/StatTile.d.ts +1 -1
- package/dist/react/components/StatTile.d.ts.map +1 -1
- package/dist/react/components/StatTile.js +2 -2
- package/dist/react/components/StatTile.js.map +1 -1
- package/dist/react/components/StatTileGrid.d.ts +1 -1
- package/dist/react/components/StatTileGrid.d.ts.map +1 -1
- package/dist/react/components/StatTileGrid.js +2 -2
- package/dist/react/components/StatTileGrid.js.map +1 -1
- package/dist/react/components/SwatchPicker.d.ts +1 -1
- package/dist/react/components/SwatchPicker.d.ts.map +1 -1
- package/dist/react/components/SwatchPicker.js +2 -2
- package/dist/react/components/SwatchPicker.js.map +1 -1
- package/dist/react/components/Tabs.d.ts +1 -1
- package/dist/react/components/Tabs.d.ts.map +1 -1
- package/dist/react/components/Tabs.js +2 -2
- package/dist/react/components/Tabs.js.map +1 -1
- package/dist/react/components/TagStrip.d.ts +1 -1
- package/dist/react/components/TagStrip.d.ts.map +1 -1
- package/dist/react/components/TagStrip.js +2 -2
- package/dist/react/components/TagStrip.js.map +1 -1
- package/dist/react/components/TagsInput.d.ts +1 -1
- package/dist/react/components/TagsInput.d.ts.map +1 -1
- package/dist/react/components/TagsInput.js +2 -2
- package/dist/react/components/TagsInput.js.map +1 -1
- package/dist/react/components/ThresholdMeter.d.ts +1 -1
- package/dist/react/components/ThresholdMeter.d.ts.map +1 -1
- package/dist/react/components/ThresholdMeter.js +2 -2
- package/dist/react/components/ThresholdMeter.js.map +1 -1
- package/dist/react/components/TooltipImpl.d.ts +1 -1
- package/dist/react/components/TooltipImpl.d.ts.map +1 -1
- package/dist/react/components/TooltipImpl.js +5 -5
- package/dist/react/components/TooltipImpl.js.map +1 -1
- package/dist/react/components/TreeView.d.ts +1 -1
- package/dist/react/components/TreeView.d.ts.map +1 -1
- package/dist/react/components/TreeView.js +2 -2
- package/dist/react/components/TreeView.js.map +1 -1
- package/dist/react/components/Wizard/ReviewStep.d.ts +1 -1
- package/dist/react/components/Wizard/ReviewStep.d.ts.map +1 -1
- package/dist/react/components/Wizard/ReviewStep.js +2 -2
- package/dist/react/components/Wizard/ReviewStep.js.map +1 -1
- package/dist/react/components/Wizard/Stepper.d.ts +1 -1
- package/dist/react/components/Wizard/Stepper.d.ts.map +1 -1
- package/dist/react/components/Wizard/Stepper.js +2 -2
- package/dist/react/components/Wizard/Stepper.js.map +1 -1
- package/dist/react/components/Wizard/Wizard.d.ts +1 -1
- package/dist/react/components/Wizard/Wizard.d.ts.map +1 -1
- package/dist/react/components/Wizard/Wizard.js +2 -2
- package/dist/react/components/Wizard/Wizard.js.map +1 -1
- package/dist/react/components/auth/AuthCard.d.ts +1 -1
- package/dist/react/components/auth/AuthCard.d.ts.map +1 -1
- package/dist/react/components/auth/AuthCard.js +2 -2
- package/dist/react/components/auth/AuthCard.js.map +1 -1
- package/dist/react/components/auth/AuthForm.d.ts +1 -1
- package/dist/react/components/auth/AuthForm.d.ts.map +1 -1
- package/dist/react/components/auth/AuthForm.js +2 -2
- package/dist/react/components/auth/AuthForm.js.map +1 -1
- package/dist/react/components/auth/LoginForm.d.ts +1 -1
- package/dist/react/components/auth/LoginForm.d.ts.map +1 -1
- package/dist/react/components/auth/LoginForm.js +2 -2
- package/dist/react/components/auth/LoginForm.js.map +1 -1
- package/dist/react/components/auth/PasswordResetConfirm.d.ts +1 -1
- package/dist/react/components/auth/PasswordResetConfirm.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordResetConfirm.js +2 -2
- package/dist/react/components/auth/PasswordResetConfirm.js.map +1 -1
- package/dist/react/components/auth/PasswordResetRequest.d.ts +1 -1
- package/dist/react/components/auth/PasswordResetRequest.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordResetRequest.js +3 -3
- package/dist/react/components/auth/PasswordResetRequest.js.map +1 -1
- package/dist/react/components/auth/PasswordSetFields.d.ts +1 -1
- package/dist/react/components/auth/PasswordSetFields.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordSetFields.js +2 -2
- package/dist/react/components/auth/PasswordSetFields.js.map +1 -1
- package/dist/react/components/auth/PasswordStrengthMeter.d.ts +1 -1
- package/dist/react/components/auth/PasswordStrengthMeter.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordStrengthMeter.js +2 -2
- package/dist/react/components/auth/PasswordStrengthMeter.js.map +1 -1
- package/dist/react/components/auth/RegisterForm.d.ts +1 -1
- package/dist/react/components/auth/RegisterForm.d.ts.map +1 -1
- package/dist/react/components/auth/RegisterForm.js +2 -2
- package/dist/react/components/auth/RegisterForm.js.map +1 -1
- package/dist/react/components/auth/SetInitialPassword.d.ts +1 -1
- package/dist/react/components/auth/SetInitialPassword.d.ts.map +1 -1
- package/dist/react/components/auth/SetInitialPassword.js +2 -2
- package/dist/react/components/auth/SetInitialPassword.js.map +1 -1
- package/dist/react/components/auth/SignInCard.d.ts +1 -1
- package/dist/react/components/auth/SignInCard.d.ts.map +1 -1
- package/dist/react/components/auth/SignInCard.js +2 -2
- package/dist/react/components/auth/SignInCard.js.map +1 -1
- package/dist/react/components/auth/SignupForm.d.ts +1 -1
- package/dist/react/components/auth/SignupForm.d.ts.map +1 -1
- package/dist/react/components/auth/SignupForm.js +2 -2
- package/dist/react/components/auth/SignupForm.js.map +1 -1
- package/dist/react/components/auth/TotpEntry.d.ts +1 -1
- package/dist/react/components/auth/TotpEntry.d.ts.map +1 -1
- package/dist/react/components/auth/TotpEntry.js +2 -2
- package/dist/react/components/auth/TotpEntry.js.map +1 -1
- package/dist/react/components/auth/fields.d.ts +2 -2
- package/dist/react/components/auth/fields.d.ts.map +1 -1
- package/dist/react/components/auth/fields.js +4 -4
- package/dist/react/components/auth/fields.js.map +1 -1
- package/dist/react/components/calendar/CalendarLegend.d.ts +1 -1
- package/dist/react/components/calendar/CalendarLegend.d.ts.map +1 -1
- package/dist/react/components/calendar/CalendarLegend.js +2 -2
- package/dist/react/components/calendar/CalendarLegend.js.map +1 -1
- package/dist/react/components/calendar/DayAgenda.d.ts +1 -1
- package/dist/react/components/calendar/DayAgenda.d.ts.map +1 -1
- package/dist/react/components/calendar/DayAgenda.js +2 -2
- package/dist/react/components/calendar/DayAgenda.js.map +1 -1
- package/dist/react/components/calendar/EventChip.d.ts +1 -1
- package/dist/react/components/calendar/EventChip.d.ts.map +1 -1
- package/dist/react/components/calendar/EventChip.js +2 -2
- package/dist/react/components/calendar/EventChip.js.map +1 -1
- package/dist/react/components/calendar/MonthGrid.d.ts +1 -1
- package/dist/react/components/calendar/MonthGrid.d.ts.map +1 -1
- package/dist/react/components/calendar/MonthGrid.js +2 -2
- package/dist/react/components/calendar/MonthGrid.js.map +1 -1
- package/dist/react/components/calendar/WeekView.d.ts +1 -1
- package/dist/react/components/calendar/WeekView.d.ts.map +1 -1
- package/dist/react/components/calendar/WeekView.js +2 -2
- package/dist/react/components/calendar/WeekView.js.map +1 -1
- package/dist/react/components/fieldErrorText.d.ts +1 -1
- package/dist/react/components/fieldErrorText.d.ts.map +1 -1
- package/dist/react/components/fieldErrorText.js +2 -2
- package/dist/react/components/fieldErrorText.js.map +1 -1
- package/dist/react/components/filterChip.d.ts +1 -1
- package/dist/react/components/filterChip.d.ts.map +1 -1
- package/dist/react/components/filterChip.js +2 -2
- package/dist/react/components/filterChip.js.map +1 -1
- package/dist/react/components/layout.d.ts +1 -1
- package/dist/react/components/layout.d.ts.map +1 -1
- package/dist/react/components/layout.js +3 -3
- package/dist/react/components/layout.js.map +1 -1
- package/dist/react/components/sharing/RecipientAvatar.d.ts +1 -1
- package/dist/react/components/sharing/RecipientAvatar.d.ts.map +1 -1
- package/dist/react/components/sharing/RecipientAvatar.js +3 -3
- package/dist/react/components/sharing/RecipientAvatar.js.map +1 -1
- package/dist/react/components/sharing/RecipientPicker.d.ts +1 -1
- package/dist/react/components/sharing/RecipientPicker.d.ts.map +1 -1
- package/dist/react/components/sharing/RecipientPicker.js +2 -2
- package/dist/react/components/sharing/RecipientPicker.js.map +1 -1
- package/dist/react/components/sharing/ShareDialog.d.ts.map +1 -1
- package/dist/react/components/sharing/ShareDialog.js +10 -11
- package/dist/react/components/sharing/ShareDialog.js.map +1 -1
- package/dist/react/components/sharing/ShareEditor.d.ts +1 -1
- package/dist/react/components/sharing/ShareEditor.d.ts.map +1 -1
- package/dist/react/components/sharing/ShareEditor.js +4 -2
- package/dist/react/components/sharing/ShareEditor.js.map +1 -1
- package/dist/react/components/sharing/SharedWithUserDialog.d.ts +1 -1
- package/dist/react/components/sharing/SharedWithUserDialog.d.ts.map +1 -1
- package/dist/react/components/sharing/SharedWithUserDialog.js +2 -2
- package/dist/react/components/sharing/SharedWithUserDialog.js.map +1 -1
- package/dist/react/dashboard-grid/DashboardGrid.d.ts +1 -1
- package/dist/react/dashboard-grid/DashboardGrid.d.ts.map +1 -1
- package/dist/react/dashboard-grid/DashboardGrid.js +2 -2
- package/dist/react/dashboard-grid/DashboardGrid.js.map +1 -1
- package/dist/react/dashboard-grid/WidgetFrame.d.ts +1 -1
- package/dist/react/dashboard-grid/WidgetFrame.d.ts.map +1 -1
- package/dist/react/dashboard-grid/WidgetFrame.js +2 -2
- package/dist/react/dashboard-grid/WidgetFrame.js.map +1 -1
- package/dist/react/deep-link/links.d.ts +10 -1
- package/dist/react/deep-link/links.d.ts.map +1 -1
- package/dist/react/deep-link/links.js +2 -3
- package/dist/react/deep-link/links.js.map +1 -1
- package/dist/react/deep-link/useDeepLink.d.ts.map +1 -1
- package/dist/react/deep-link/useDeepLink.js +1 -0
- package/dist/react/deep-link/useDeepLink.js.map +1 -1
- package/dist/react/diff-viewer/DiffViewer.d.ts +1 -1
- package/dist/react/diff-viewer/DiffViewer.d.ts.map +1 -1
- package/dist/react/diff-viewer/DiffViewer.js +2 -2
- package/dist/react/diff-viewer/DiffViewer.js.map +1 -1
- package/dist/react/diff-viewer/TextComparePane.d.ts +1 -1
- package/dist/react/diff-viewer/TextComparePane.d.ts.map +1 -1
- package/dist/react/diff-viewer/TextComparePane.js +4 -4
- package/dist/react/diff-viewer/TextComparePane.js.map +1 -1
- package/dist/react/disk-usage/DiskUsageRulesEditor.d.ts +1 -1
- package/dist/react/disk-usage/DiskUsageRulesEditor.d.ts.map +1 -1
- package/dist/react/disk-usage/DiskUsageRulesEditor.js +2 -2
- package/dist/react/disk-usage/DiskUsageRulesEditor.js.map +1 -1
- package/dist/react/disk-usage/DiskUsageScanControls.d.ts +1 -1
- package/dist/react/disk-usage/DiskUsageScanControls.d.ts.map +1 -1
- package/dist/react/disk-usage/DiskUsageScanControls.js +2 -2
- package/dist/react/disk-usage/DiskUsageScanControls.js.map +1 -1
- package/dist/react/disk-usage/DiskUsageSummaryTiles.d.ts +1 -1
- package/dist/react/disk-usage/DiskUsageSummaryTiles.d.ts.map +1 -1
- package/dist/react/disk-usage/DiskUsageSummaryTiles.js +3 -3
- package/dist/react/disk-usage/DiskUsageSummaryTiles.js.map +1 -1
- package/dist/react/disk-usage/DiskUsageTree.d.ts +1 -1
- package/dist/react/disk-usage/DiskUsageTree.d.ts.map +1 -1
- package/dist/react/disk-usage/DiskUsageTree.js +2 -2
- package/dist/react/disk-usage/DiskUsageTree.js.map +1 -1
- package/dist/react/emoji/EmojiAutocomplete.d.ts +1 -1
- package/dist/react/emoji/EmojiAutocomplete.d.ts.map +1 -1
- package/dist/react/emoji/EmojiAutocomplete.js +2 -2
- package/dist/react/emoji/EmojiAutocomplete.js.map +1 -1
- package/dist/react/emoji/EmojiPicker.d.ts +1 -1
- package/dist/react/emoji/EmojiPicker.d.ts.map +1 -1
- package/dist/react/emoji/EmojiPicker.js +2 -2
- package/dist/react/emoji/EmojiPicker.js.map +1 -1
- package/dist/react/engagement/beacon.d.ts.map +1 -1
- package/dist/react/engagement/beacon.js +1 -0
- package/dist/react/engagement/beacon.js.map +1 -1
- package/dist/react/file-tree/FileTree.d.ts +1 -1
- package/dist/react/file-tree/FileTree.d.ts.map +1 -1
- package/dist/react/file-tree/FileTree.js +2 -2
- package/dist/react/file-tree/FileTree.js.map +1 -1
- package/dist/react/file-tree/FolderViewMenus.d.ts +3 -3
- package/dist/react/file-tree/FolderViewMenus.d.ts.map +1 -1
- package/dist/react/file-tree/FolderViewMenus.js +6 -6
- package/dist/react/file-tree/FolderViewMenus.js.map +1 -1
- package/dist/react/file-tree/FolderViewPanels.d.ts +3 -3
- package/dist/react/file-tree/FolderViewPanels.d.ts.map +1 -1
- package/dist/react/file-tree/FolderViewPanels.js +18 -11
- package/dist/react/file-tree/FolderViewPanels.js.map +1 -1
- package/dist/react/filter-rail/FilterRail.d.ts +15 -4
- package/dist/react/filter-rail/FilterRail.d.ts.map +1 -1
- package/dist/react/filter-rail/FilterRail.js +5 -5
- package/dist/react/filter-rail/FilterRail.js.map +1 -1
- package/dist/react/filter-rail/RailSection.d.ts +1 -1
- package/dist/react/filter-rail/RailSection.d.ts.map +1 -1
- package/dist/react/filter-rail/RailSection.js +3 -3
- package/dist/react/filter-rail/RailSection.js.map +1 -1
- package/dist/react/filter-rail/railResize.d.ts +1 -1
- package/dist/react/filter-rail/railResize.d.ts.map +1 -1
- package/dist/react/filter-rail/railResize.js +2 -2
- package/dist/react/filter-rail/railResize.js.map +1 -1
- package/dist/react/folder-tree/FolderActionsMenu.d.ts +1 -1
- package/dist/react/folder-tree/FolderActionsMenu.d.ts.map +1 -1
- package/dist/react/folder-tree/FolderActionsMenu.js +2 -2
- package/dist/react/folder-tree/FolderActionsMenu.js.map +1 -1
- package/dist/react/folder-tree/FolderBreadcrumb.d.ts +1 -1
- package/dist/react/folder-tree/FolderBreadcrumb.d.ts.map +1 -1
- package/dist/react/folder-tree/FolderBreadcrumb.js +3 -3
- package/dist/react/folder-tree/FolderBreadcrumb.js.map +1 -1
- package/dist/react/folder-tree/FolderPicker.d.ts +1 -1
- package/dist/react/folder-tree/FolderPicker.d.ts.map +1 -1
- package/dist/react/folder-tree/FolderPicker.js +2 -2
- package/dist/react/folder-tree/FolderPicker.js.map +1 -1
- package/dist/react/folder-tree/FolderTreeRail.d.ts +1 -1
- package/dist/react/folder-tree/FolderTreeRail.d.ts.map +1 -1
- package/dist/react/folder-tree/FolderTreeRail.js +2 -2
- package/dist/react/folder-tree/FolderTreeRail.js.map +1 -1
- package/dist/react/folder-tree/NewFolderControl.d.ts +1 -1
- package/dist/react/folder-tree/NewFolderControl.d.ts.map +1 -1
- package/dist/react/folder-tree/NewFolderControl.js +3 -3
- package/dist/react/folder-tree/NewFolderControl.js.map +1 -1
- package/dist/react/hooks/DragHandleIcon.d.ts +1 -1
- package/dist/react/hooks/DragHandleIcon.d.ts.map +1 -1
- package/dist/react/hooks/DragHandleIcon.js +2 -2
- package/dist/react/hooks/DragHandleIcon.js.map +1 -1
- package/dist/react/hooks/usePaletteDrag.d.ts.map +1 -1
- package/dist/react/hooks/usePaletteDrag.js +1 -0
- package/dist/react/hooks/usePaletteDrag.js.map +1 -1
- package/dist/react/icons.d.ts +1 -1
- package/dist/react/icons.d.ts.map +1 -1
- package/dist/react/icons.js +3 -3
- package/dist/react/icons.js.map +1 -1
- package/dist/react/index.d.ts +1 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +1 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/keep-awake/KeepAwake.d.ts.map +1 -1
- package/dist/react/keep-awake/KeepAwake.js +1 -0
- package/dist/react/keep-awake/KeepAwake.js.map +1 -1
- package/dist/react/layout/CCResizeBoundary.d.ts +1 -1
- package/dist/react/layout/CCResizeBoundary.d.ts.map +1 -1
- package/dist/react/layout/CCResizeBoundary.js +2 -2
- package/dist/react/layout/CCResizeBoundary.js.map +1 -1
- package/dist/react/layoutEngine/LayoutCanvas.d.ts +1 -1
- package/dist/react/layoutEngine/LayoutCanvas.d.ts.map +1 -1
- package/dist/react/layoutEngine/LayoutCanvas.js +5 -5
- package/dist/react/layoutEngine/LayoutCanvas.js.map +1 -1
- package/dist/react/layoutEngine/LayoutConfigDialog.d.ts +1 -1
- package/dist/react/layoutEngine/LayoutConfigDialog.d.ts.map +1 -1
- package/dist/react/layoutEngine/LayoutConfigDialog.js +2 -2
- package/dist/react/layoutEngine/LayoutConfigDialog.js.map +1 -1
- package/dist/react/layoutEngine/LayoutRenderer.d.ts +1 -1
- package/dist/react/layoutEngine/LayoutRenderer.d.ts.map +1 -1
- package/dist/react/layoutEngine/LayoutRenderer.js +2 -2
- package/dist/react/layoutEngine/LayoutRenderer.js.map +1 -1
- package/dist/react/layoutEngine/NodeInspector.d.ts +1 -1
- package/dist/react/layoutEngine/NodeInspector.d.ts.map +1 -1
- package/dist/react/layoutEngine/NodeInspector.js +2 -2
- package/dist/react/layoutEngine/NodeInspector.js.map +1 -1
- package/dist/react/layoutEngine/SuggestPanel.d.ts +1 -1
- package/dist/react/layoutEngine/SuggestPanel.d.ts.map +1 -1
- package/dist/react/layoutEngine/SuggestPanel.js +2 -2
- package/dist/react/layoutEngine/SuggestPanel.js.map +1 -1
- package/dist/react/lib/daypicker.js.map +1 -1
- package/dist/react/look/AppearanceFields.d.ts +1 -1
- package/dist/react/look/AppearanceFields.d.ts.map +1 -1
- package/dist/react/look/AppearanceFields.js +2 -2
- package/dist/react/look/AppearanceFields.js.map +1 -1
- package/dist/react/look/AppearancePanel.d.ts +1 -1
- package/dist/react/look/AppearancePanel.d.ts.map +1 -1
- package/dist/react/look/AppearancePanel.js +2 -2
- package/dist/react/look/AppearancePanel.js.map +1 -1
- package/dist/react/look/AppearanceSheet.d.ts +1 -1
- package/dist/react/look/AppearanceSheet.d.ts.map +1 -1
- package/dist/react/look/AppearanceSheet.js +2 -2
- package/dist/react/look/AppearanceSheet.js.map +1 -1
- package/dist/react/look/AppearanceSheetPanel.d.ts +1 -1
- package/dist/react/look/AppearanceSheetPanel.d.ts.map +1 -1
- package/dist/react/look/AppearanceSheetPanel.js +2 -2
- package/dist/react/look/AppearanceSheetPanel.js.map +1 -1
- package/dist/react/look/LookPicker.d.ts +1 -1
- package/dist/react/look/LookPicker.d.ts.map +1 -1
- package/dist/react/look/LookPicker.js +2 -2
- package/dist/react/look/LookPicker.js.map +1 -1
- package/dist/react/markdown/Markdown.d.ts +1 -1
- package/dist/react/markdown/Markdown.d.ts.map +1 -1
- package/dist/react/markdown/Markdown.js +2 -2
- package/dist/react/markdown/Markdown.js.map +1 -1
- package/dist/react/markdown/MarkdownDoc.d.ts +1 -1
- package/dist/react/markdown/MarkdownDoc.d.ts.map +1 -1
- package/dist/react/markdown/MarkdownDoc.js +2 -2
- package/dist/react/markdown/MarkdownDoc.js.map +1 -1
- package/dist/react/master-detail/DetailPane.d.ts +4 -4
- package/dist/react/master-detail/DetailPane.d.ts.map +1 -1
- package/dist/react/master-detail/DetailPane.js +8 -8
- package/dist/react/master-detail/DetailPane.js.map +1 -1
- package/dist/react/master-detail/MasterDetail.d.ts +13 -1
- package/dist/react/master-detail/MasterDetail.d.ts.map +1 -1
- package/dist/react/master-detail/MasterDetail.js +5 -5
- package/dist/react/master-detail/MasterDetail.js.map +1 -1
- package/dist/react/master-lock/MasterLockDialog.d.ts +1 -1
- package/dist/react/master-lock/MasterLockDialog.d.ts.map +1 -1
- package/dist/react/master-lock/MasterLockDialog.js +2 -2
- package/dist/react/master-lock/MasterLockDialog.js.map +1 -1
- package/dist/react/master-lock/MasterLockProvider.d.ts +1 -1
- package/dist/react/master-lock/MasterLockProvider.d.ts.map +1 -1
- package/dist/react/master-lock/MasterLockProvider.js +3 -2
- package/dist/react/master-lock/MasterLockProvider.js.map +1 -1
- package/dist/react/media/AutoMaskControls.d.ts +1 -1
- package/dist/react/media/AutoMaskControls.d.ts.map +1 -1
- package/dist/react/media/AutoMaskControls.js +2 -2
- package/dist/react/media/AutoMaskControls.js.map +1 -1
- package/dist/react/media/BrushSizeSlider.d.ts +1 -1
- package/dist/react/media/BrushSizeSlider.d.ts.map +1 -1
- package/dist/react/media/BrushSizeSlider.js +2 -2
- package/dist/react/media/BrushSizeSlider.js.map +1 -1
- package/dist/react/media/CanvasVideoPlayer.d.ts +1 -1
- package/dist/react/media/CanvasVideoPlayer.d.ts.map +1 -1
- package/dist/react/media/CanvasVideoPlayer.js +2 -2
- package/dist/react/media/CanvasVideoPlayer.js.map +1 -1
- package/dist/react/media/DenseGalleryShell.d.ts +2 -2
- package/dist/react/media/DenseGalleryShell.d.ts.map +1 -1
- package/dist/react/media/DenseGalleryShell.js +4 -4
- package/dist/react/media/DenseGalleryShell.js.map +1 -1
- package/dist/react/media/FocusViewer.d.ts +1 -1
- package/dist/react/media/FocusViewer.d.ts.map +1 -1
- package/dist/react/media/FocusViewer.js +2 -2
- package/dist/react/media/FocusViewer.js.map +1 -1
- package/dist/react/media/FrameGrabber.d.ts +1 -1
- package/dist/react/media/FrameGrabber.d.ts.map +1 -1
- package/dist/react/media/FrameGrabber.js +2 -2
- package/dist/react/media/FrameGrabber.js.map +1 -1
- package/dist/react/media/HoverScrubVideoThumb.d.ts +1 -1
- package/dist/react/media/HoverScrubVideoThumb.d.ts.map +1 -1
- package/dist/react/media/HoverScrubVideoThumb.js +3 -3
- package/dist/react/media/HoverScrubVideoThumb.js.map +1 -1
- package/dist/react/media/ImageEditor.d.ts +1 -1
- package/dist/react/media/ImageEditor.d.ts.map +1 -1
- package/dist/react/media/ImageEditor.js +3 -3
- package/dist/react/media/ImageEditor.js.map +1 -1
- package/dist/react/media/MaskPainter.d.ts +1 -1
- package/dist/react/media/MaskPainter.d.ts.map +1 -1
- package/dist/react/media/MaskPainter.js +2 -2
- package/dist/react/media/MaskPainter.js.map +1 -1
- package/dist/react/media/MediaCatalogueViewer.d.ts +1 -1
- package/dist/react/media/MediaCatalogueViewer.d.ts.map +1 -1
- package/dist/react/media/MediaCatalogueViewer.js +2 -2
- package/dist/react/media/MediaCatalogueViewer.js.map +1 -1
- package/dist/react/media/MediaCell.d.ts +1 -1
- package/dist/react/media/MediaCell.d.ts.map +1 -1
- package/dist/react/media/MediaCell.js +2 -2
- package/dist/react/media/MediaCell.js.map +1 -1
- package/dist/react/media/MediaLightbox.d.ts +1 -1
- package/dist/react/media/MediaLightbox.d.ts.map +1 -1
- package/dist/react/media/MediaLightbox.js +2 -2
- package/dist/react/media/MediaLightbox.js.map +1 -1
- package/dist/react/media/MediaResize.d.ts +2 -2
- package/dist/react/media/MediaResize.d.ts.map +1 -1
- package/dist/react/media/MediaResize.js +4 -4
- package/dist/react/media/MediaResize.js.map +1 -1
- package/dist/react/media/MediaThumb.d.ts +1 -1
- package/dist/react/media/MediaThumb.d.ts.map +1 -1
- package/dist/react/media/MediaThumb.js +3 -3
- package/dist/react/media/MediaThumb.js.map +1 -1
- package/dist/react/media/MediaUploadControl.d.ts +1 -1
- package/dist/react/media/MediaUploadControl.d.ts.map +1 -1
- package/dist/react/media/MediaUploadControl.js +2 -2
- package/dist/react/media/MediaUploadControl.js.map +1 -1
- package/dist/react/media/PictureControls.d.ts +1 -1
- package/dist/react/media/PictureControls.d.ts.map +1 -1
- package/dist/react/media/PictureControls.js +2 -2
- package/dist/react/media/PictureControls.js.map +1 -1
- package/dist/react/media/PictureEditor.d.ts +1 -1
- package/dist/react/media/PictureEditor.d.ts.map +1 -1
- package/dist/react/media/PictureEditor.js +2 -2
- package/dist/react/media/PictureEditor.js.map +1 -1
- package/dist/react/media/PlayerStrip.d.ts +1 -1
- package/dist/react/media/PlayerStrip.d.ts.map +1 -1
- package/dist/react/media/PlayerStrip.js +3 -3
- package/dist/react/media/PlayerStrip.js.map +1 -1
- package/dist/react/media/TrimRangeSlider.d.ts +1 -1
- package/dist/react/media/TrimRangeSlider.d.ts.map +1 -1
- package/dist/react/media/TrimRangeSlider.js +2 -2
- package/dist/react/media/TrimRangeSlider.js.map +1 -1
- package/dist/react/media/VideoChapterEditor.d.ts +1 -1
- package/dist/react/media/VideoChapterEditor.d.ts.map +1 -1
- package/dist/react/media/VideoChapterEditor.js +2 -2
- package/dist/react/media/VideoChapterEditor.js.map +1 -1
- package/dist/react/media/VideoCutEditor.d.ts +1 -1
- package/dist/react/media/VideoCutEditor.d.ts.map +1 -1
- package/dist/react/media/VideoCutEditor.js +2 -2
- package/dist/react/media/VideoCutEditor.js.map +1 -1
- package/dist/react/media/VideoPlayer.d.ts +2 -2
- package/dist/react/media/VideoPlayer.d.ts.map +1 -1
- package/dist/react/media/VideoPlayer.js +4 -4
- package/dist/react/media/VideoPlayer.js.map +1 -1
- package/dist/react/media/VideoSlideContent.d.ts +1 -1
- package/dist/react/media/VideoSlideContent.d.ts.map +1 -1
- package/dist/react/media/VideoSlideContent.js +2 -2
- package/dist/react/media/VideoSlideContent.js.map +1 -1
- package/dist/react/media/VideoTrimmer.d.ts +1 -1
- package/dist/react/media/VideoTrimmer.d.ts.map +1 -1
- package/dist/react/media/VideoTrimmer.js +2 -2
- package/dist/react/media/VideoTrimmer.js.map +1 -1
- package/dist/react/media/VideoTurner.d.ts +1 -1
- package/dist/react/media/VideoTurner.d.ts.map +1 -1
- package/dist/react/media/VideoTurner.js +2 -2
- package/dist/react/media/VideoTurner.js.map +1 -1
- package/dist/react/media/VirtualizedRows.d.ts +1 -1
- package/dist/react/media/VirtualizedRows.d.ts.map +1 -1
- package/dist/react/media/VirtualizedRows.js +2 -2
- package/dist/react/media/VirtualizedRows.js.map +1 -1
- package/dist/react/media/WaveformStrip.d.ts +1 -1
- package/dist/react/media/WaveformStrip.d.ts.map +1 -1
- package/dist/react/media/WaveformStrip.js +2 -2
- package/dist/react/media/WaveformStrip.js.map +1 -1
- package/dist/react/media/sourceFault.d.ts +1 -1
- package/dist/react/media/sourceFault.d.ts.map +1 -1
- package/dist/react/media/sourceFault.js +2 -2
- package/dist/react/media/sourceFault.js.map +1 -1
- package/dist/react/media-gallery/GalleryTable.d.ts +1 -1
- package/dist/react/media-gallery/GalleryTable.d.ts.map +1 -1
- package/dist/react/media-gallery/GalleryTable.js +2 -2
- package/dist/react/media-gallery/GalleryTable.js.map +1 -1
- package/dist/react/media-gallery/MediaGallery.d.ts +1 -1
- package/dist/react/media-gallery/MediaGallery.d.ts.map +1 -1
- package/dist/react/media-gallery/MediaGallery.js +3 -3
- package/dist/react/media-gallery/MediaGallery.js.map +1 -1
- package/dist/react/media-gallery/MediaMetaEditor.d.ts +1 -1
- package/dist/react/media-gallery/MediaMetaEditor.d.ts.map +1 -1
- package/dist/react/media-gallery/MediaMetaEditor.js +2 -2
- package/dist/react/media-gallery/MediaMetaEditor.js.map +1 -1
- package/dist/react/media-gallery/galleryItemMedia.d.ts +1 -1
- package/dist/react/media-gallery/galleryItemMedia.d.ts.map +1 -1
- package/dist/react/media-gallery/galleryItemMedia.js +2 -2
- package/dist/react/media-gallery/galleryItemMedia.js.map +1 -1
- package/dist/react/namespace/NamespaceTargetCapsule.d.ts +1 -1
- package/dist/react/namespace/NamespaceTargetCapsule.d.ts.map +1 -1
- package/dist/react/namespace/NamespaceTargetCapsule.js +2 -2
- package/dist/react/namespace/NamespaceTargetCapsule.js.map +1 -1
- package/dist/react/nav/BreadcrumbMenus.d.ts +2 -2
- package/dist/react/nav/BreadcrumbMenus.d.ts.map +1 -1
- package/dist/react/nav/BreadcrumbMenus.js +6 -4
- package/dist/react/nav/BreadcrumbMenus.js.map +1 -1
- package/dist/react/nav/BreadcrumbPivot.d.ts +1 -1
- package/dist/react/nav/BreadcrumbPivot.d.ts.map +1 -1
- package/dist/react/nav/BreadcrumbPivot.js +2 -2
- package/dist/react/nav/BreadcrumbPivot.js.map +1 -1
- package/dist/react/nav/BreadcrumbProvider.d.ts.map +1 -1
- package/dist/react/nav/BreadcrumbProvider.js +2 -0
- package/dist/react/nav/BreadcrumbProvider.js.map +1 -1
- package/dist/react/nav/BreadcrumbTrail.d.ts +1 -1
- package/dist/react/nav/BreadcrumbTrail.d.ts.map +1 -1
- package/dist/react/nav/BreadcrumbTrail.js +5 -3
- package/dist/react/nav/BreadcrumbTrail.js.map +1 -1
- package/dist/react/nav/Breadcrumbs.d.ts +3 -3
- package/dist/react/nav/Breadcrumbs.d.ts.map +1 -1
- package/dist/react/nav/Breadcrumbs.js +6 -6
- package/dist/react/nav/Breadcrumbs.js.map +1 -1
- package/dist/react/nav/ColorSwatchGrid.d.ts +1 -1
- package/dist/react/nav/ColorSwatchGrid.d.ts.map +1 -1
- package/dist/react/nav/ColorSwatchGrid.js +2 -2
- package/dist/react/nav/ColorSwatchGrid.js.map +1 -1
- package/dist/react/nav/CommandBar.d.ts +1 -1
- package/dist/react/nav/CommandBar.d.ts.map +1 -1
- package/dist/react/nav/CommandBar.js +2 -2
- package/dist/react/nav/CommandBar.js.map +1 -1
- package/dist/react/nav/HeaderSearch.d.ts +1 -1
- package/dist/react/nav/HeaderSearch.d.ts.map +1 -1
- package/dist/react/nav/HeaderSearch.js +2 -2
- package/dist/react/nav/HeaderSearch.js.map +1 -1
- package/dist/react/nav/HubTileGrid.d.ts +1 -1
- package/dist/react/nav/HubTileGrid.d.ts.map +1 -1
- package/dist/react/nav/HubTileGrid.js +2 -2
- package/dist/react/nav/HubTileGrid.js.map +1 -1
- package/dist/react/nav/NavColorPicker.d.ts +1 -1
- package/dist/react/nav/NavColorPicker.d.ts.map +1 -1
- package/dist/react/nav/NavColorPicker.js +2 -2
- package/dist/react/nav/NavColorPicker.js.map +1 -1
- package/dist/react/nav/NavItemMenu.d.ts +1 -1
- package/dist/react/nav/NavItemMenu.d.ts.map +1 -1
- package/dist/react/nav/NavItemMenu.js +2 -2
- package/dist/react/nav/NavItemMenu.js.map +1 -1
- package/dist/react/nav/PlaceBar.d.ts +4 -4
- package/dist/react/nav/PlaceBar.d.ts.map +1 -1
- package/dist/react/nav/PlaceBar.js +14 -9
- package/dist/react/nav/PlaceBar.js.map +1 -1
- package/dist/react/nav/RailPlaces.d.ts +48 -0
- package/dist/react/nav/RailPlaces.d.ts.map +1 -0
- package/dist/react/nav/RailPlaces.js +51 -0
- package/dist/react/nav/RailPlaces.js.map +1 -0
- package/dist/react/nav/SearchResults.d.ts +1 -1
- package/dist/react/nav/SearchResults.d.ts.map +1 -1
- package/dist/react/nav/SearchResults.js +3 -3
- package/dist/react/nav/SearchResults.js.map +1 -1
- package/dist/react/nav/SideNav.d.ts +4 -4
- package/dist/react/nav/SideNav.d.ts.map +1 -1
- package/dist/react/nav/SideNav.js +5 -4
- package/dist/react/nav/SideNav.js.map +1 -1
- package/dist/react/nav/SideNavCustomize.d.ts +3 -3
- package/dist/react/nav/SideNavCustomize.d.ts.map +1 -1
- package/dist/react/nav/SideNavCustomize.js +6 -6
- package/dist/react/nav/SideNavCustomize.js.map +1 -1
- package/dist/react/nav/TopBar.d.ts +7 -2
- package/dist/react/nav/TopBar.d.ts.map +1 -1
- package/dist/react/nav/TopBar.js +9 -4
- package/dist/react/nav/TopBar.js.map +1 -1
- package/dist/react/nav/index.d.ts +2 -1
- package/dist/react/nav/index.d.ts.map +1 -1
- package/dist/react/nav/index.js +2 -1
- package/dist/react/nav/index.js.map +1 -1
- package/dist/react/nav/navShared.d.ts +17 -1
- package/dist/react/nav/navShared.d.ts.map +1 -1
- package/dist/react/nav/navShared.js +13 -4
- package/dist/react/nav/navShared.js.map +1 -1
- package/dist/react/notifications/NotificationBell.d.ts +1 -1
- package/dist/react/notifications/NotificationBell.d.ts.map +1 -1
- package/dist/react/notifications/NotificationBell.js +2 -2
- package/dist/react/notifications/NotificationBell.js.map +1 -1
- package/dist/react/notifications/NotificationFeed.d.ts +1 -1
- package/dist/react/notifications/NotificationFeed.d.ts.map +1 -1
- package/dist/react/notifications/NotificationFeed.js +2 -2
- package/dist/react/notifications/NotificationFeed.js.map +1 -1
- package/dist/react/notifications/NotificationInbox.d.ts +1 -1
- package/dist/react/notifications/NotificationInbox.d.ts.map +1 -1
- package/dist/react/notifications/NotificationInbox.js +2 -2
- package/dist/react/notifications/NotificationInbox.js.map +1 -1
- package/dist/react/palette/CommandPalette.d.ts +1 -1
- package/dist/react/palette/CommandPalette.d.ts.map +1 -1
- package/dist/react/palette/CommandPalette.js +2 -2
- package/dist/react/palette/CommandPalette.js.map +1 -1
- package/dist/react/palette/Kbd.d.ts +1 -1
- package/dist/react/palette/Kbd.d.ts.map +1 -1
- package/dist/react/palette/Kbd.js +3 -3
- package/dist/react/palette/Kbd.js.map +1 -1
- package/dist/react/palette/ShortcutSheet.d.ts +1 -1
- package/dist/react/palette/ShortcutSheet.d.ts.map +1 -1
- package/dist/react/palette/ShortcutSheet.js +2 -2
- package/dist/react/palette/ShortcutSheet.js.map +1 -1
- package/dist/react/palette/commandSources.d.ts.map +1 -1
- package/dist/react/palette/commandSources.js +1 -0
- package/dist/react/palette/commandSources.js.map +1 -1
- package/dist/react/pdf-viewer/PdfPage.d.ts +1 -1
- package/dist/react/pdf-viewer/PdfPage.d.ts.map +1 -1
- package/dist/react/pdf-viewer/PdfPage.js +2 -2
- package/dist/react/pdf-viewer/PdfPage.js.map +1 -1
- package/dist/react/pdf-viewer/PdfViewer.d.ts +1 -1
- package/dist/react/pdf-viewer/PdfViewer.d.ts.map +1 -1
- package/dist/react/pdf-viewer/PdfViewer.js +5 -5
- package/dist/react/pdf-viewer/PdfViewer.js.map +1 -1
- package/dist/react/portal/CCPortalProvider.d.ts.map +1 -1
- package/dist/react/portal/CCPortalProvider.js +1 -0
- package/dist/react/portal/CCPortalProvider.js.map +1 -1
- package/dist/react/problem-detail/ProblemDetailView.d.ts +1 -1
- package/dist/react/problem-detail/ProblemDetailView.d.ts.map +1 -1
- package/dist/react/problem-detail/ProblemDetailView.js +2 -2
- package/dist/react/problem-detail/ProblemDetailView.js.map +1 -1
- package/dist/react/rich-text/RichTextEditor.d.ts.map +1 -1
- package/dist/react/rich-text/RichTextEditor.js +2 -2
- package/dist/react/rich-text/RichTextEditor.js.map +1 -1
- package/dist/react/rich-text/RichTextToolbar.d.ts +1 -1
- package/dist/react/rich-text/RichTextToolbar.d.ts.map +1 -1
- package/dist/react/rich-text/RichTextToolbar.js +2 -2
- package/dist/react/rich-text/RichTextToolbar.js.map +1 -1
- package/dist/react/sharing/SharePanel.d.ts +1 -1
- package/dist/react/sharing/SharePanel.d.ts.map +1 -1
- package/dist/react/sharing/SharePanel.js +2 -2
- package/dist/react/sharing/SharePanel.js.map +1 -1
- package/dist/react/slots/Slot.d.ts.map +1 -1
- package/dist/react/slots/Slot.js +1 -0
- package/dist/react/slots/Slot.js.map +1 -1
- package/dist/react/spreadsheet/SpreadsheetGrid.d.ts +1 -1
- package/dist/react/spreadsheet/SpreadsheetGrid.d.ts.map +1 -1
- package/dist/react/spreadsheet/SpreadsheetGrid.js +2 -2
- package/dist/react/spreadsheet/SpreadsheetGrid.js.map +1 -1
- package/dist/react/testReport/TestReportViewer.d.ts +1 -1
- package/dist/react/testReport/TestReportViewer.d.ts.map +1 -1
- package/dist/react/testReport/TestReportViewer.js +5 -5
- package/dist/react/testReport/TestReportViewer.js.map +1 -1
- package/dist/react/uiScale/UiScaleControl.d.ts +1 -1
- package/dist/react/uiScale/UiScaleControl.d.ts.map +1 -1
- package/dist/react/uiScale/UiScaleControl.js +2 -2
- package/dist/react/uiScale/UiScaleControl.js.map +1 -1
- package/dist/react/workbook-viewer/WorkbookViewer.d.ts +1 -1
- package/dist/react/workbook-viewer/WorkbookViewer.d.ts.map +1 -1
- package/dist/react/workbook-viewer/WorkbookViewer.js +5 -5
- package/dist/react/workbook-viewer/WorkbookViewer.js.map +1 -1
- package/dist/scripts/guardrailsEnforce.d.ts.map +1 -1
- package/dist/styles-areas/analytics.css +9 -9
- package/dist/styles-areas/canvas-hud.css +3 -2
- package/dist/styles-areas/core.css +13 -13
- package/dist/styles-areas/data-table.css +9 -9
- package/dist/styles-areas/filter-rail.css +2 -2
- package/dist/styles-areas/nav.css +7 -7
- package/dist/styles-areas/stats.css +20 -13
- package/dist/styles-utilities.css +21 -0
- package/dist/testing/designAudit.d.ts +1 -1
- package/dist/testing/designAudit.d.ts.map +1 -1
- package/dist/testing/designAudit.js +29 -0
- package/dist/testing/designAudit.js.map +1 -1
- package/dist/theme.css +3 -0
- package/package.json +4 -1
- package/scripts/attributesForwarded.spec.ts +45 -0
- package/scripts/attributesForwarded.ts +172 -0
- package/scripts/guardrailsEnforce.spec.ts +28 -0
- package/scripts/guardrailsEnforce.ts +40 -0
- package/scripts/styleAreas.ts +1 -0
- package/src/react/AuthGate.tsx +1 -0
- package/src/react/activity-bar/ActivityBar.tsx +2 -0
- package/src/react/analytics/MetricDrilldown.tsx +2 -0
- package/src/react/analytics/RangeTabs.tsx +2 -1
- package/src/react/canvas-hud/AlignmentGuides.tsx +95 -0
- package/src/react/canvas-hud/CanvasMinimap.tsx +2 -0
- package/src/react/canvas-hud/CanvasNodeMenu.tsx +2 -0
- package/src/react/canvas-hud/CanvasSearchField.tsx +2 -1
- package/src/react/canvas-hud/HudControls.tsx +6 -2
- package/src/react/canvas-hud/alignment.spec.tsx +149 -0
- package/src/react/canvas-hud/alignment.ts +143 -0
- package/src/react/canvas-hud/index.ts +6 -1
- package/src/react/charts/AreaChart.tsx +2 -1
- package/src/react/charts/BarChart.tsx +21 -3
- package/src/react/charts/ChartCard.tsx +2 -1
- package/src/react/charts/ChartFrame.tsx +2 -1
- package/src/react/charts/ChartLegend.tsx +2 -1
- package/src/react/charts/ChartTooltip.tsx +2 -0
- package/src/react/charts/HeatmapChart.tsx +2 -1
- package/src/react/charts/IntervalTimeline.tsx +3 -1
- package/src/react/charts/LineChart.tsx +2 -1
- package/src/react/charts/PieChart.tsx +2 -1
- package/src/react/charts/RadialBarChart.tsx +2 -1
- package/src/react/charts/Sparkline.tsx +2 -0
- package/src/react/charts/TimeSeriesChart.tsx +3 -2
- package/src/react/charts/Treemap.tsx +2 -1
- package/src/react/chat/Bubble.tsx +3 -0
- package/src/react/chat/DateMarker.tsx +2 -1
- package/src/react/chat/MessageComposer.tsx +2 -0
- package/src/react/chat/MessageRow.tsx +3 -0
- package/src/react/chat/MessageScroller.tsx +2 -1
- package/src/react/chat/MessageThread.tsx +2 -1
- package/src/react/chat/PresenceRoster.tsx +2 -2
- package/src/react/chat/StatusMarker.tsx +2 -1
- package/src/react/code-editor/CodeEditor.tsx +2 -0
- package/src/react/companion-link/CompanionLinkBar.tsx +13 -3
- package/src/react/companion-link/CompanionLinkStatus.tsx +3 -3
- package/src/react/companion-link/StaleMirrorBanner.tsx +2 -2
- package/src/react/components/Accordion.tsx +2 -1
- package/src/react/components/ActionBar.tsx +10 -7
- package/src/react/components/ActionGroup.tsx +2 -0
- package/src/react/components/ActionsHelp.tsx +2 -2
- package/src/react/components/AddItemsMenu.tsx +2 -0
- package/src/react/components/Alert.spec.tsx +11 -0
- package/src/react/components/Alert.tsx +2 -0
- package/src/react/components/AmbientBackdrop.tsx +2 -0
- package/src/react/components/AppShell.spec.tsx +30 -0
- package/src/react/components/AppShell.tsx +46 -6
- package/src/react/components/AsyncPanel.tsx +5 -3
- package/src/react/components/Autocomplete.tsx +18 -2
- package/src/react/components/Avatar.tsx +3 -2
- package/src/react/components/AvatarStack.tsx +2 -2
- package/src/react/components/BannerLane.tsx +2 -1
- package/src/react/components/BuildFreshness.tsx +8 -5
- package/src/react/components/ButtonLink.tsx +2 -0
- package/src/react/components/CardDisplayControls.spec.tsx +9 -0
- package/src/react/components/CardDisplayControls.tsx +9 -2
- package/src/react/components/ChartTablePanel.tsx +2 -0
- package/src/react/components/ChipFilterStrip.tsx +2 -1
- package/src/react/components/ChoiceGroup.tsx +2 -1
- package/src/react/components/ChoiceMenu.tsx +2 -0
- package/src/react/components/CodeArea.tsx +2 -0
- package/src/react/components/CodeFieldInput.tsx +2 -1
- package/src/react/components/Collapsible.tsx +2 -0
- package/src/react/components/ColorField.tsx +2 -0
- package/src/react/components/ColorSwatches.tsx +2 -1
- package/src/react/components/ComboboxField.tsx +7 -0
- package/src/react/components/CommentThread.tsx +2 -1
- package/src/react/components/ConfirmDialog.tsx +2 -0
- package/src/react/components/ConnectionHealer.tsx +8 -3
- package/src/react/components/ControlPanel.tsx +5 -4
- package/src/react/components/CopyButton.tsx +2 -0
- package/src/react/components/CopyableText.tsx +3 -1
- package/src/react/components/DataTable/CardView.tsx +2 -1
- package/src/react/components/DataTable/ColumnChecklist.tsx +2 -1
- package/src/react/components/DataTable/DataTable.tsx +2 -1
- package/src/react/components/DataTable/Pagination.tsx +2 -2
- package/src/react/components/DataTable/RowActions.tsx +2 -0
- package/src/react/components/DataTable/SearchBox.tsx +15 -17
- package/src/react/components/DataTable/SortHeader.tsx +7 -4
- package/src/react/components/DataTable/SortStack.tsx +2 -0
- package/src/react/components/DataTable/TableFilterBuilder.tsx +2 -0
- package/src/react/components/DataTable/TableViewToggle.tsx +2 -1
- package/src/react/components/DataTable/Toolbar.tsx +2 -1
- package/src/react/components/DataTable/ViewOptionsMenu.tsx +2 -1
- package/src/react/components/DataTable/cells/CellRenderer.tsx +6 -2
- package/src/react/components/DataTable/cells/CodeCell.tsx +2 -1
- package/src/react/components/DataTable/cells/LinkCell.tsx +2 -1
- package/src/react/components/DataTable/cells/PasswordCell.tsx +2 -2
- package/src/react/components/DatePicker.tsx +2 -0
- package/src/react/components/DateRangePicker.tsx +2 -0
- package/src/react/components/DateTimeField.tsx +2 -1
- package/src/react/components/DiscardConfirmDialog.tsx +2 -0
- package/src/react/components/DisclosureButton.tsx +4 -1
- package/src/react/components/DragHandle.tsx +2 -1
- package/src/react/components/Drawer.tsx +2 -0
- package/src/react/components/DropIndicator.tsx +3 -3
- package/src/react/components/DropSlot.tsx +2 -1
- package/src/react/components/DropdownMenu.tsx +2 -0
- package/src/react/components/EditorPage.tsx +4 -2
- package/src/react/components/ElsewhereNotice.tsx +2 -0
- package/src/react/components/EmojiField.tsx +2 -0
- package/src/react/components/EmptyState.tsx +2 -0
- package/src/react/components/EnvCompare.tsx +3 -1
- package/src/react/components/EnvEditor.tsx +2 -0
- package/src/react/components/ErrorBoundary.tsx +3 -3
- package/src/react/components/ErrorCard.tsx +2 -0
- package/src/react/components/EventTimeline.tsx +2 -2
- package/src/react/components/ExpandableRow.tsx +2 -0
- package/src/react/components/ExternalLink.tsx +4 -2
- package/src/react/components/Field.tsx +2 -0
- package/src/react/components/FieldGrid.tsx +2 -1
- package/src/react/components/FileActions.tsx +2 -2
- package/src/react/components/FileDropZone.tsx +2 -0
- package/src/react/components/FileLocation.tsx +2 -0
- package/src/react/components/FileTypeIcon.tsx +2 -0
- package/src/react/components/FindingsList.tsx +3 -1
- package/src/react/components/FormPreviewLayout.tsx +2 -1
- package/src/react/components/Guide.tsx +4 -4
- package/src/react/components/Heat.spec.tsx +136 -0
- package/src/react/components/Heat.tsx +249 -0
- package/src/react/components/HoverCard.tsx +2 -0
- package/src/react/components/IconPicker.tsx +2 -1
- package/src/react/components/ImpactDialog.tsx +2 -0
- package/src/react/components/InfoHintImpl.tsx +2 -0
- package/src/react/components/InheritBadge.tsx +2 -1
- package/src/react/components/InlineEditableText.tsx +6 -3
- package/src/react/components/IsolatedFrame.tsx +4 -3
- package/src/react/components/JsonEditor.tsx +2 -0
- package/src/react/components/KanbanBoard.tsx +2 -1
- package/src/react/components/KeyBadge.tsx +16 -12
- package/src/react/components/Lightbox.tsx +2 -1
- package/src/react/components/ListToolbar.tsx +2 -0
- package/src/react/components/LogViewer.tsx +2 -1
- package/src/react/components/Menu.tsx +7 -5
- package/src/react/components/MeterList.tsx +12 -7
- package/src/react/components/Modal.tsx +2 -0
- package/src/react/components/MultiSelectField.tsx +2 -0
- package/src/react/components/OnlineDot.tsx +2 -2
- package/src/react/components/OtpInput.tsx +2 -1
- package/src/react/components/Page.spec.tsx +1 -0
- package/src/react/components/Page.tsx +10 -0
- package/src/react/components/PageGuideButton.tsx +3 -2
- package/src/react/components/PageGuidePopover.tsx +2 -1
- package/src/react/components/PanelGrid.tsx +3 -1
- package/src/react/components/PanelSeparator.tsx +2 -0
- package/src/react/components/PathText.tsx +2 -0
- package/src/react/components/PointerDrag.tsx +2 -1
- package/src/react/components/Popover.tsx +4 -2
- package/src/react/components/Progress.tsx +4 -0
- package/src/react/components/PromptDialog.tsx +2 -0
- package/src/react/components/PropertyPicker.tsx +7 -0
- package/src/react/components/QueryBoundary.tsx +1 -0
- package/src/react/components/RatingField.tsx +2 -0
- package/src/react/components/ReactionBar.tsx +2 -2
- package/src/react/components/ReactionPicker.tsx +2 -1
- package/src/react/components/RenderField.tsx +2 -1
- package/src/react/components/ResponsiveWorkbench.tsx +2 -1
- package/src/react/components/RevealAction.tsx +3 -1
- package/src/react/components/SaveIndicator.tsx +2 -2
- package/src/react/components/SearchInput.spec.tsx +11 -5
- package/src/react/components/SearchInput.tsx +10 -3
- package/src/react/components/SecretInput.tsx +2 -0
- package/src/react/components/SectionNav.tsx +2 -2
- package/src/react/components/SegmentedControl.tsx +2 -1
- package/src/react/components/SelectFieldImpl.tsx +2 -0
- package/src/react/components/SelectionBar.tsx +2 -1
- package/src/react/components/SettingsStrip.tsx +2 -2
- package/src/react/components/SheetTabStrip.tsx +27 -10
- package/src/react/components/Skeleton.tsx +10 -9
- package/src/react/components/Slider.tsx +4 -0
- package/src/react/components/SliderField.tsx +2 -0
- package/src/react/components/Sparkline.tsx +2 -1
- package/src/react/components/Spinner.tsx +2 -1
- package/src/react/components/SplitButton.tsx +2 -1
- package/src/react/components/SplitPane.tsx +2 -0
- package/src/react/components/StarRating.tsx +4 -2
- package/src/react/components/StatStrip.tsx +8 -1
- package/src/react/components/StatTile.tsx +2 -1
- package/src/react/components/StatTileGrid.tsx +2 -1
- package/src/react/components/SwatchPicker.tsx +2 -0
- package/src/react/components/Tabs.tsx +2 -0
- package/src/react/components/TagStrip.tsx +2 -0
- package/src/react/components/TagsInput.tsx +2 -0
- package/src/react/components/ThresholdMeter.tsx +2 -1
- package/src/react/components/TooltipImpl.tsx +5 -3
- package/src/react/components/TreeView.tsx +2 -0
- package/src/react/components/Wizard/ReviewStep.tsx +2 -1
- package/src/react/components/Wizard/Stepper.tsx +2 -0
- package/src/react/components/Wizard/Wizard.tsx +2 -1
- package/src/react/components/attributesForwarded.spec.tsx +42 -0
- package/src/react/components/auth/AuthCard.tsx +2 -0
- package/src/react/components/auth/AuthForm.tsx +2 -1
- package/src/react/components/auth/LoginForm.tsx +2 -0
- package/src/react/components/auth/PasswordResetConfirm.tsx +2 -0
- package/src/react/components/auth/PasswordResetRequest.tsx +3 -1
- package/src/react/components/auth/PasswordSetFields.tsx +2 -0
- package/src/react/components/auth/PasswordStrengthMeter.tsx +2 -1
- package/src/react/components/auth/RegisterForm.tsx +2 -0
- package/src/react/components/auth/SetInitialPassword.tsx +2 -0
- package/src/react/components/auth/SignInCard.tsx +2 -1
- package/src/react/components/auth/SignupForm.tsx +2 -0
- package/src/react/components/auth/TotpEntry.tsx +2 -0
- package/src/react/components/auth/fields.tsx +4 -2
- package/src/react/components/calendar/CalendarLegend.tsx +2 -1
- package/src/react/components/calendar/DayAgenda.tsx +2 -1
- package/src/react/components/calendar/EventChip.tsx +2 -2
- package/src/react/components/calendar/MonthGrid.tsx +2 -1
- package/src/react/components/calendar/WeekView.tsx +2 -1
- package/src/react/components/fieldErrorText.tsx +2 -2
- package/src/react/components/filterChip.tsx +2 -1
- package/src/react/components/layout.tsx +3 -3
- package/src/react/components/sharing/RecipientAvatar.tsx +3 -1
- package/src/react/components/sharing/RecipientPicker.tsx +2 -1
- package/src/react/components/sharing/ShareDialog.tsx +11 -23
- package/src/react/components/sharing/ShareEditor.tsx +4 -1
- package/src/react/components/sharing/SharedWithUserDialog.tsx +2 -1
- package/src/react/dashboard-grid/DashboardGrid.tsx +2 -1
- package/src/react/dashboard-grid/WidgetFrame.tsx +2 -0
- package/src/react/deep-link/links.spec.ts +16 -2
- package/src/react/deep-link/links.ts +12 -3
- package/src/react/deep-link/useDeepLink.tsx +1 -0
- package/src/react/diff-viewer/DiffViewer.tsx +2 -0
- package/src/react/diff-viewer/TextComparePane.tsx +4 -2
- package/src/react/disk-usage/DiskUsageRulesEditor.tsx +2 -1
- package/src/react/disk-usage/DiskUsageScanControls.tsx +2 -1
- package/src/react/disk-usage/DiskUsageSummaryTiles.tsx +3 -1
- package/src/react/disk-usage/DiskUsageTree.tsx +2 -1
- package/src/react/emoji/EmojiAutocomplete.tsx +2 -1
- package/src/react/emoji/EmojiPicker.tsx +2 -0
- package/src/react/engagement/beacon.tsx +1 -0
- package/src/react/file-tree/FileTree.tsx +2 -0
- package/src/react/file-tree/FolderViewMenus.tsx +6 -4
- package/src/react/file-tree/FolderViewPanels.tsx +26 -16
- package/src/react/filter-rail/FilterRail.tsx +26 -4
- package/src/react/filter-rail/RailSection.tsx +3 -2
- package/src/react/filter-rail/railResize.tsx +2 -1
- package/src/react/folder-tree/FolderActionsMenu.tsx +2 -0
- package/src/react/folder-tree/FolderBreadcrumb.tsx +3 -1
- package/src/react/folder-tree/FolderPicker.tsx +2 -1
- package/src/react/folder-tree/FolderTreeRail.tsx +2 -1
- package/src/react/folder-tree/NewFolderControl.tsx +3 -1
- package/src/react/hooks/DragHandleIcon.tsx +2 -2
- package/src/react/hooks/usePaletteDrag.tsx +1 -0
- package/src/react/icons.tsx +3 -3
- package/src/react/index.ts +19 -0
- package/src/react/keep-awake/KeepAwake.tsx +1 -0
- package/src/react/layout/CCResizeBoundary.tsx +2 -2
- package/src/react/layoutEngine/LayoutCanvas.tsx +11 -3
- package/src/react/layoutEngine/LayoutConfigDialog.tsx +2 -0
- package/src/react/layoutEngine/LayoutRenderer.tsx +2 -1
- package/src/react/layoutEngine/NodeInspector.tsx +2 -1
- package/src/react/layoutEngine/SuggestPanel.tsx +2 -1
- package/src/react/lib/daypicker.tsx +1 -1
- package/src/react/look/AppearanceFields.tsx +2 -2
- package/src/react/look/AppearancePanel.tsx +2 -1
- package/src/react/look/AppearanceSheet.tsx +2 -2
- package/src/react/look/AppearanceSheetPanel.tsx +2 -2
- package/src/react/look/LookPicker.tsx +2 -1
- package/src/react/markdown/Markdown.tsx +2 -2
- package/src/react/markdown/MarkdownDoc.tsx +2 -2
- package/src/react/master-detail/DetailPane.tsx +8 -5
- package/src/react/master-detail/MasterDetail.tsx +14 -3
- package/src/react/master-lock/MasterLockDialog.tsx +2 -0
- package/src/react/master-lock/MasterLockProvider.tsx +3 -1
- package/src/react/media/AutoMaskControls.tsx +2 -0
- package/src/react/media/BrushSizeSlider.tsx +2 -2
- package/src/react/media/CanvasVideoPlayer.tsx +2 -0
- package/src/react/media/DenseGalleryShell.tsx +4 -1
- package/src/react/media/FocusViewer.tsx +2 -1
- package/src/react/media/FrameGrabber.tsx +2 -0
- package/src/react/media/HoverScrubVideoThumb.tsx +3 -0
- package/src/react/media/ImageEditor.tsx +3 -1
- package/src/react/media/MaskPainter.tsx +2 -0
- package/src/react/media/MediaCatalogueViewer.tsx +2 -1
- package/src/react/media/MediaCell.tsx +2 -1
- package/src/react/media/MediaLightbox.tsx +2 -1
- package/src/react/media/MediaResize.tsx +16 -4
- package/src/react/media/MediaThumb.tsx +3 -0
- package/src/react/media/MediaUploadControl.tsx +2 -1
- package/src/react/media/PictureControls.tsx +2 -1
- package/src/react/media/PictureEditor.tsx +2 -0
- package/src/react/media/PlayerStrip.tsx +3 -2
- package/src/react/media/TrimRangeSlider.tsx +2 -1
- package/src/react/media/VideoChapterEditor.tsx +2 -0
- package/src/react/media/VideoCutEditor.tsx +2 -0
- package/src/react/media/VideoPlayer.tsx +4 -0
- package/src/react/media/VideoSlideContent.tsx +2 -1
- package/src/react/media/VideoTrimmer.tsx +2 -0
- package/src/react/media/VideoTurner.tsx +2 -0
- package/src/react/media/VirtualizedRows.tsx +2 -0
- package/src/react/media/WaveformStrip.tsx +2 -1
- package/src/react/media/sourceFault.tsx +2 -1
- package/src/react/media-gallery/GalleryTable.tsx +2 -0
- package/src/react/media-gallery/MediaGallery.tsx +3 -0
- package/src/react/media-gallery/MediaMetaEditor.tsx +2 -0
- package/src/react/media-gallery/galleryItemMedia.tsx +2 -0
- package/src/react/namespace/NamespaceTargetCapsule.tsx +2 -0
- package/src/react/nav/BreadcrumbMenus.tsx +6 -0
- package/src/react/nav/BreadcrumbPivot.tsx +2 -1
- package/src/react/nav/BreadcrumbProvider.tsx +2 -0
- package/src/react/nav/BreadcrumbTrail.tsx +5 -0
- package/src/react/nav/Breadcrumbs.tsx +6 -0
- package/src/react/nav/ColorSwatchGrid.tsx +2 -1
- package/src/react/nav/CommandBar.tsx +2 -1
- package/src/react/nav/HeaderSearch.tsx +2 -1
- package/src/react/nav/HubTileGrid.tsx +2 -1
- package/src/react/nav/NavColorPicker.tsx +2 -0
- package/src/react/nav/NavItemMenu.tsx +2 -0
- package/src/react/nav/PlaceBar.tsx +24 -13
- package/src/react/nav/RailPlaces.spec.tsx +111 -0
- package/src/react/nav/RailPlaces.tsx +192 -0
- package/src/react/nav/SearchResults.tsx +3 -2
- package/src/react/nav/SideNav.tsx +13 -6
- package/src/react/nav/SideNavCustomize.tsx +6 -3
- package/src/react/nav/TopBar.tsx +9 -0
- package/src/react/nav/index.ts +5 -0
- package/src/react/nav/navShared.tsx +25 -0
- package/src/react/notifications/NotificationBell.tsx +2 -0
- package/src/react/notifications/NotificationFeed.tsx +2 -1
- package/src/react/notifications/NotificationInbox.tsx +2 -1
- package/src/react/palette/CommandPalette.tsx +2 -0
- package/src/react/palette/Kbd.tsx +3 -3
- package/src/react/palette/ShortcutSheet.tsx +2 -0
- package/src/react/palette/commandSources.tsx +1 -0
- package/src/react/pdf-viewer/PdfPage.tsx +2 -1
- package/src/react/pdf-viewer/PdfViewer.tsx +5 -2
- package/src/react/portal/CCPortalProvider.tsx +1 -0
- package/src/react/problem-detail/ProblemDetailView.tsx +2 -1
- package/src/react/rich-text/RichTextEditor.tsx +2 -0
- package/src/react/rich-text/RichTextToolbar.tsx +2 -2
- package/src/react/sharing/SharePanel.tsx +2 -1
- package/src/react/slots/Slot.tsx +1 -0
- package/src/react/spreadsheet/SpreadsheetGrid.tsx +2 -0
- package/src/react/testReport/TestReportViewer.tsx +5 -4
- package/src/react/uiScale/UiScaleControl.tsx +2 -1
- package/src/react/workbook-viewer/WorkbookViewer.tsx +5 -2
- package/src/styles-areas/analytics.css +9 -9
- package/src/styles-areas/canvas-hud.css +3 -2
- package/src/styles-areas/core.css +13 -13
- package/src/styles-areas/data-table.css +9 -9
- package/src/styles-areas/filter-rail.css +2 -2
- package/src/styles-areas/nav.css +7 -7
- package/src/styles-areas/stats.css +20 -13
- package/src/styles-utilities.css +21 -0
- package/src/testing/designAudit.ts +30 -0
- package/src/theme.css +3 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bun run attributes:forwarded [--prune]` — a `data-testid` written on a component reaches the DOM.
|
|
3
|
+
*
|
|
4
|
+
* ## The trap this exists for
|
|
5
|
+
*
|
|
6
|
+
* Forge task 3451 (2026-10-20): `<Alert tone="error" data-testid="ship-stopped">` in station type-
|
|
7
|
+
* checked, rendered its text, and its test's `findByTestId("ship-stopped")` hung until it timed out.
|
|
8
|
+
* `Alert` destructured a fixed list of props and spread nothing onto its root, so the id was
|
|
9
|
+
* dropped — and TypeScript accepts ANY hyphenated attribute (`data-*`, `aria-*`) on any component, so
|
|
10
|
+
* no type error could ever say so. 358 exported components were built the same way.
|
|
11
|
+
*
|
|
12
|
+
* ## What counts
|
|
13
|
+
*
|
|
14
|
+
* A COMPONENT is a capitalised export of a `src/react` `.tsx` file that is a function (a
|
|
15
|
+
* declaration, or a `const` arrow/function, through `memo`/`forwardRef`) taking a props parameter.
|
|
16
|
+
* It FORWARDS when the props it does not name reach a JSX element: its parameter's destructuring
|
|
17
|
+
* (or a `const { … } = props` inside it) ends in a rest element that is spread onto an element
|
|
18
|
+
* (`{...rest}`), or the props object itself is spread. A component with no parameter has nothing to
|
|
19
|
+
* drop and is not judged.
|
|
20
|
+
*
|
|
21
|
+
* A component that renders no element of its own — a provider, a portal host, a hook wrapper —
|
|
22
|
+
* says so on the line above its export: `// no-attribute-forward: <why>`, which the check reads.
|
|
23
|
+
*
|
|
24
|
+
* `attributesForwarded.baseline` lists the components that dropped them when this was written, as
|
|
25
|
+
* `<file>#<Component>`. It is a CEILING: a non-forwarding component missing from it fails, and an
|
|
26
|
+
* entry that now forwards (or is gone) fails too, so the list only shrinks — `--prune` removes
|
|
27
|
+
* those and refuses to add anything.
|
|
28
|
+
*/
|
|
29
|
+
import { readFileSync, writeFileSync } from "node:fs";
|
|
30
|
+
import { join } from "node:path";
|
|
31
|
+
import * as ts from "typescript";
|
|
32
|
+
|
|
33
|
+
const ROOT = join(import.meta.dir, "..");
|
|
34
|
+
export const BASELINE = join(ROOT, "attributesForwarded.baseline");
|
|
35
|
+
export const OPT_OUT = "no-attribute-forward:";
|
|
36
|
+
|
|
37
|
+
export interface Judged {
|
|
38
|
+
/** `<file relative to the repo>#<Component>`. */
|
|
39
|
+
id: string;
|
|
40
|
+
forwards: boolean;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
type Fn = ts.FunctionDeclaration | ts.ArrowFunction | ts.FunctionExpression;
|
|
44
|
+
|
|
45
|
+
/** The function a `const X = memo(forwardRef((props) => …))` finally wraps. */
|
|
46
|
+
function unwrap(node: ts.Expression | undefined): Fn | undefined {
|
|
47
|
+
let current = node;
|
|
48
|
+
while (current && (ts.isCallExpression(current) || ts.isParenthesizedExpression(current) || ts.isAsExpression(current))) {
|
|
49
|
+
current = ts.isCallExpression(current) ? current.arguments[0] : current.expression;
|
|
50
|
+
}
|
|
51
|
+
return current && (ts.isArrowFunction(current) || ts.isFunctionExpression(current)) ? current : undefined;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/** Every identifier spread onto a JSX element anywhere in `node`. */
|
|
55
|
+
function spreadNames(node: ts.Node): Set<string> {
|
|
56
|
+
const names = new Set<string>();
|
|
57
|
+
const visit = (n: ts.Node): void => {
|
|
58
|
+
if (ts.isJsxSpreadAttribute(n) && ts.isIdentifier(n.expression)) names.add(n.expression.text);
|
|
59
|
+
n.forEachChild(visit);
|
|
60
|
+
};
|
|
61
|
+
visit(node);
|
|
62
|
+
return names;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/** The rest element's name in a destructuring, if it has one. */
|
|
66
|
+
function restName(pattern: ts.ObjectBindingPattern): string | undefined {
|
|
67
|
+
const rest = pattern.elements.find((e) => e.dotDotDotToken);
|
|
68
|
+
return rest && ts.isIdentifier(rest.name) ? rest.name.text : undefined;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/** Does this component's unnamed props reach an element? `undefined` ⇒ not judged (no props). */
|
|
72
|
+
export function forwardsAttributes(fn: Fn): boolean | undefined {
|
|
73
|
+
const param = fn.parameters[0];
|
|
74
|
+
if (!param) return undefined;
|
|
75
|
+
const spread = spreadNames(fn);
|
|
76
|
+
if (ts.isObjectBindingPattern(param.name)) {
|
|
77
|
+
const rest = restName(param.name);
|
|
78
|
+
return rest !== undefined && spread.has(rest);
|
|
79
|
+
}
|
|
80
|
+
if (!ts.isIdentifier(param.name)) return false;
|
|
81
|
+
const props = param.name.text;
|
|
82
|
+
if (spread.has(props)) return true;
|
|
83
|
+
let forwards = false;
|
|
84
|
+
const visit = (n: ts.Node): void => {
|
|
85
|
+
if (
|
|
86
|
+
ts.isVariableDeclaration(n) &&
|
|
87
|
+
ts.isObjectBindingPattern(n.name) &&
|
|
88
|
+
n.initializer &&
|
|
89
|
+
ts.isIdentifier(n.initializer) &&
|
|
90
|
+
n.initializer.text === props
|
|
91
|
+
) {
|
|
92
|
+
const rest = restName(n.name);
|
|
93
|
+
if (rest !== undefined && spread.has(rest)) forwards = true;
|
|
94
|
+
}
|
|
95
|
+
n.forEachChild(visit);
|
|
96
|
+
};
|
|
97
|
+
visit(fn);
|
|
98
|
+
return forwards;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function optedOut(statement: ts.Statement, source: ts.SourceFile): boolean {
|
|
102
|
+
const ranges = ts.getLeadingCommentRanges(source.text, statement.getFullStart()) ?? [];
|
|
103
|
+
return ranges.some((r) => source.text.slice(r.pos, r.end).includes(OPT_OUT));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/** Every judged component in one source file. */
|
|
107
|
+
export function judgeSource(id: string, text: string): Judged[] {
|
|
108
|
+
const source = ts.createSourceFile(id, text, ts.ScriptTarget.Latest, true, ts.ScriptKind.TSX);
|
|
109
|
+
const judged: Judged[] = [];
|
|
110
|
+
const judge = (name: string, fn: Fn | undefined, statement: ts.Statement): void => {
|
|
111
|
+
if (!fn || !/^[A-Z]/.test(name) || optedOut(statement, source)) return;
|
|
112
|
+
const forwards = forwardsAttributes(fn);
|
|
113
|
+
if (forwards !== undefined) judged.push({ id: `${id}#${name}`, forwards });
|
|
114
|
+
};
|
|
115
|
+
for (const statement of source.statements) {
|
|
116
|
+
const exported = ts.canHaveModifiers(statement) && ts.getModifiers(statement)?.some((m) => m.kind === ts.SyntaxKind.ExportKeyword);
|
|
117
|
+
if (!exported) continue;
|
|
118
|
+
if (ts.isFunctionDeclaration(statement) && statement.name && statement.body) judge(statement.name.text, statement, statement);
|
|
119
|
+
if (ts.isVariableStatement(statement)) {
|
|
120
|
+
for (const d of statement.declarationList.declarations) {
|
|
121
|
+
if (ts.isIdentifier(d.name)) judge(d.name.text, unwrap(d.initializer), statement);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return judged;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/** Every `src/react` component that drops what it does not name, sorted. */
|
|
129
|
+
export function dropping(root: string = ROOT): string[] {
|
|
130
|
+
const files = [...new Bun.Glob("src/react/**/*.tsx").scanSync(root)].filter((f) => !/\.(spec|test)\.tsx$/.test(f));
|
|
131
|
+
return files
|
|
132
|
+
.flatMap((f) => judgeSource(f, readFileSync(join(root, f), "utf8")))
|
|
133
|
+
.filter((j) => !j.forwards)
|
|
134
|
+
.map((j) => j.id)
|
|
135
|
+
.sort();
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export function readBaseline(file: string = BASELINE): string[] {
|
|
139
|
+
return readFileSync(file, "utf8")
|
|
140
|
+
.split("\n")
|
|
141
|
+
.map((l) => l.trim())
|
|
142
|
+
.filter((l) => l && !l.startsWith("#"));
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/** The new gaps (a fault), and the entries that have outlived their gap (also a fault). */
|
|
146
|
+
export function compare(now: readonly string[], baseline: readonly string[]): { added: string[]; stale: string[] } {
|
|
147
|
+
const current = new Set(now);
|
|
148
|
+
const allowed = new Set(baseline);
|
|
149
|
+
return { added: now.filter((n) => !allowed.has(n)), stale: baseline.filter((n) => !current.has(n)) };
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
if (import.meta.main) {
|
|
153
|
+
const now = dropping();
|
|
154
|
+
const baseline = readBaseline();
|
|
155
|
+
const { added, stale } = compare(now, baseline);
|
|
156
|
+
const prune = process.argv.includes("--prune");
|
|
157
|
+
if (prune && stale.length > 0) {
|
|
158
|
+
const gone = new Set(stale);
|
|
159
|
+
const text = readFileSync(BASELINE, "utf8");
|
|
160
|
+
writeFileSync(BASELINE, text.split("\n").filter((l) => !gone.has(l.trim())).join("\n"));
|
|
161
|
+
console.log(`pruned ${stale.length}: ${stale.join(", ")}`);
|
|
162
|
+
}
|
|
163
|
+
for (const id of added) {
|
|
164
|
+
console.error(
|
|
165
|
+
`✗ ${id} drops the attributes it does not name — end its props destructuring with \`...rest\` and spread it on its root element, or say \`// ${OPT_OUT} <why>\` above it.`,
|
|
166
|
+
);
|
|
167
|
+
}
|
|
168
|
+
if (!prune) for (const id of stale) console.error(`✗ ${id} is in attributesForwarded.baseline but forwards now — \`bun run attributes:forwarded --prune\`.`);
|
|
169
|
+
const faults = added.length + (prune ? 0 : stale.length);
|
|
170
|
+
console.log(`${now.length} component(s) drop unnamed attributes (baseline ${baseline.length - (prune ? stale.length : 0)})`);
|
|
171
|
+
process.exit(faults > 0 ? 1 : 0);
|
|
172
|
+
}
|
|
@@ -1713,6 +1713,34 @@ describe('no-raw-kbd', () => {
|
|
|
1713
1713
|
});
|
|
1714
1714
|
});
|
|
1715
1715
|
|
|
1716
|
+
describe('no-raw-search', () => {
|
|
1717
|
+
test('🔴 flags the hand-made box vault shipped — the browser ✕ only shows under a pointer', () => {
|
|
1718
|
+
expect(check('no-raw-search', `<Input ref={searchRef} type="search" value={filter.query} />`)).toHaveLength(1);
|
|
1719
|
+
expect(check('no-raw-search', `<input type='search' />`)).toHaveLength(1);
|
|
1720
|
+
expect(check('no-raw-search', `const field = { name: 'q', type: 'search' };`)).toHaveLength(1);
|
|
1721
|
+
});
|
|
1722
|
+
|
|
1723
|
+
test('passes SearchInput, and an attribute SELECTOR is not a field', () => {
|
|
1724
|
+
expect(check('no-raw-search', `<SearchInput value={q} onChange={setQ} />`)).toHaveLength(0);
|
|
1725
|
+
expect(check('no-raw-search', `root.querySelector('input[type="search"], [data-game]')`)).toHaveLength(0);
|
|
1726
|
+
});
|
|
1727
|
+
|
|
1728
|
+
test('passes an ignore-commented line, same line or the block above', () => {
|
|
1729
|
+
expect(
|
|
1730
|
+
check(
|
|
1731
|
+
'no-raw-search',
|
|
1732
|
+
`{/* guardrails-ignore no-raw-search: the find bar's own Close clears it */}
|
|
1733
|
+
<input type="search" />`,
|
|
1734
|
+
),
|
|
1735
|
+
).toHaveLength(0);
|
|
1736
|
+
});
|
|
1737
|
+
|
|
1738
|
+
test('a stylesheet is not scanned, nor the belt\'s own boxes that draw their ✕', () => {
|
|
1739
|
+
expect(RULES['no-raw-search']!.check('src/styles.css', 'input[type="search"] { font-size: 16px }')).toHaveLength(0);
|
|
1740
|
+
expect(RULES['no-raw-search']!.check('src/react/components/SearchInput.tsx', `<Input type='search' />`)).toHaveLength(0);
|
|
1741
|
+
});
|
|
1742
|
+
});
|
|
1743
|
+
|
|
1716
1744
|
describe('no-raw-nav', () => {
|
|
1717
1745
|
test('🔴 flags a hand-rolled <nav> — the header music shipped on 2026-09-25', () => {
|
|
1718
1746
|
expect(
|
|
@@ -2408,6 +2408,45 @@ const noRawPassword: Rule = {
|
|
|
2408
2408
|
},
|
|
2409
2409
|
};
|
|
2410
2410
|
|
|
2411
|
+
// ── no-raw-search (owner, 2026-10-20: "a small x … standardized so all apps have it") ──
|
|
2412
|
+
// A search box with no ✕ a phone can reach. Vault's had one only because Chrome paints
|
|
2413
|
+
// `type="search"`'s own cancel button — under the pointer, and never on an iPhone, which is where
|
|
2414
|
+
// the owner found it missing. cursedbelt's `SearchInput` draws its ✕ whenever there is text (the
|
|
2415
|
+
// default since 5.84.0), so a search field is that component, never a hand-made
|
|
2416
|
+
// `<Input type="search">`.
|
|
2417
|
+
//
|
|
2418
|
+
// Same shape as `no-raw-password`: on the ATTRIBUTE, any tag or props object. An attribute
|
|
2419
|
+
// SELECTOR (`input[type="search"]` in a querySelector or a stylesheet) is not a field and does not
|
|
2420
|
+
// match. The belt's own boxes that draw their own ✕ (`SearchInput`, `HeaderSearch`, the canvas
|
|
2421
|
+
// HUD's field) are exempt by path; a field that genuinely cannot be a `SearchInput` takes the
|
|
2422
|
+
// per-line opt-out naming its own way to clear.
|
|
2423
|
+
const SEARCH_TYPE_RE =
|
|
2424
|
+
/(?<![[\w-])type\s*=\s*(?:\{\s*)?["'`]search["'`]|\btype\s*:\s*["'`]search["'`]/;
|
|
2425
|
+
const SEARCH_IGNORE_RE = /guardrails-ignore\s+no-raw-search\s*:/;
|
|
2426
|
+
const SEARCH_OWNERS_RE = /(^|\/)src\/react\/(components\/SearchInput|nav\/HeaderSearch|canvas-hud\/CanvasSearchField)\.tsx$/;
|
|
2427
|
+
|
|
2428
|
+
const noRawSearch: Rule = {
|
|
2429
|
+
name: "no-raw-search",
|
|
2430
|
+
description:
|
|
2431
|
+
"Owner, 2026-10-20: every search box has a ✕ that clears it, on every device. A `type=\"search\"` field — on any tag, component or props object — must be cursedbelt's `SearchInput` (`cursedbelt/react/search-input`), which draws the ✕ whenever there is text; the browser's own shows only on hover, and never on an iPhone. A field that cannot be one takes the per-line opt-out naming how it clears.",
|
|
2432
|
+
check(filePath, source) {
|
|
2433
|
+
const normalized = filePath.replace(/\\/g, "/");
|
|
2434
|
+
if (isTestSource(normalized)) return [];
|
|
2435
|
+
if (!/\.[jt]sx?$/.test(normalized) || SEARCH_OWNERS_RE.test(normalized)) return [];
|
|
2436
|
+
const raws = source.split("\n");
|
|
2437
|
+
const scan = blankComments(source).split("\n");
|
|
2438
|
+
const out: Violation[] = [];
|
|
2439
|
+
for (const [i, line] of scan.entries()) {
|
|
2440
|
+
if (!SEARCH_TYPE_RE.test(line)) continue;
|
|
2441
|
+
const raw = raws[i] ?? "";
|
|
2442
|
+
if (SEARCH_IGNORE_RE.test(raw)) continue;
|
|
2443
|
+
if (SEARCH_IGNORE_RE.test(raws.slice(Math.max(0, i - 3), i).join("\n"))) continue;
|
|
2444
|
+
out.push({ file: filePath, line: i + 1, snippet: raw.trim() });
|
|
2445
|
+
}
|
|
2446
|
+
return out;
|
|
2447
|
+
},
|
|
2448
|
+
};
|
|
2449
|
+
|
|
2411
2450
|
// ── no-raw-nav ──────────────────────────────────────────────────────────────
|
|
2412
2451
|
// The owner, 2026-09-25: *"the music app header on iphone goes off the right side of the
|
|
2413
2452
|
// screen. … cb should enforce this via a top bar component so each app cannot do it wrong
|
|
@@ -3085,6 +3124,7 @@ export const RULES: Record<string, Rule> = {
|
|
|
3085
3124
|
[typedFieldOutsideAForm.name]: typedFieldOutsideAForm,
|
|
3086
3125
|
[noFastTooltip.name]: noFastTooltip,
|
|
3087
3126
|
[noRawPassword.name]: noRawPassword,
|
|
3127
|
+
[noRawSearch.name]: noRawSearch,
|
|
3088
3128
|
[noRawNav.name]: noRawNav,
|
|
3089
3129
|
[noRawLazy.name]: noRawLazy,
|
|
3090
3130
|
[noRawPopover.name]: noRawPopover,
|
package/scripts/styleAreas.ts
CHANGED
package/src/react/AuthGate.tsx
CHANGED
|
@@ -43,6 +43,7 @@ function dropSearchParam(name: string): void {
|
|
|
43
43
|
* accepts any bearer token), so mounting this unconditionally around every
|
|
44
44
|
* generated app is a safe no-op until `notifyUnauthorized` is ever called.
|
|
45
45
|
*/
|
|
46
|
+
// no-attribute-forward: renders its children, or a redirect, with no element of its own.
|
|
46
47
|
export function AuthGate({ loginPath, registerPath = '/auth/register', children }: AuthGateProps) {
|
|
47
48
|
const [unauthorized, setUnauthorized] = useState(false);
|
|
48
49
|
const [invite, setInvite] = useState(
|
|
@@ -420,6 +420,7 @@ export function ActivityBar({
|
|
|
420
420
|
expandable = true,
|
|
421
421
|
locked = false,
|
|
422
422
|
onLockedChange,
|
|
423
|
+
...rest
|
|
423
424
|
}: ActivityBarProps): JSX.Element {
|
|
424
425
|
const wide = useMediaQuery(`(min-width: ${LOCK_MIN_WIDTH}px)`);
|
|
425
426
|
const lockable = expandable && onLockedChange !== undefined && wide;
|
|
@@ -434,6 +435,7 @@ export function ActivityBar({
|
|
|
434
435
|
* buttons, and seven separate tab stops is both honest and better here.
|
|
435
436
|
*/
|
|
436
437
|
<fieldset
|
|
438
|
+
{...rest}
|
|
437
439
|
ref={root}
|
|
438
440
|
className={className ? `cbab ${className}` : 'cbab'}
|
|
439
441
|
aria-label={ariaLabel}
|
|
@@ -88,6 +88,7 @@ export function RangeTabs({
|
|
|
88
88
|
onCustomChange,
|
|
89
89
|
className,
|
|
90
90
|
'aria-label': ariaLabel = 'Time range',
|
|
91
|
+
...rest
|
|
91
92
|
}: RangeTabsProps) {
|
|
92
93
|
const offered = keys ?? (onCustomChange ? RANGE_PRESETS.map((p) => p.key) : FIXED_RANGE_KEYS);
|
|
93
94
|
const presets = RANGE_PRESETS.filter(
|
|
@@ -104,7 +105,7 @@ export function RangeTabs({
|
|
|
104
105
|
// `min-w-0 max-w-full`: as a flex item (a toolbar, a header row) this wrapper otherwise
|
|
105
106
|
// takes the strip's whole width as its minimum, and the segment row's own sideways scroll
|
|
106
107
|
// never engages — at 390px the six presets pushed the page 31px wide (forge task 2589).
|
|
107
|
-
<div className={cn('min-w-0 max-w-full', className)}>
|
|
108
|
+
<div {...rest} className={cn('min-w-0 max-w-full', className)}>
|
|
108
109
|
<div className='flex flex-wrap items-center gap-2'>
|
|
109
110
|
<SegmentedControl
|
|
110
111
|
aria-label={ariaLabel}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { type RefObject, useEffect, useRef } from 'react';
|
|
2
|
+
import { type AlignmentGuide, snapSuspended } from './alignment.js';
|
|
3
|
+
|
|
4
|
+
export interface AlignmentGuidesProps {
|
|
5
|
+
/** What `snapToAlignment` returned for the drag in progress; empty draws nothing. */
|
|
6
|
+
guides: readonly AlignmentGuide[];
|
|
7
|
+
/** The view's scale, so each line stays one screen pixel wide at every zoom. */
|
|
8
|
+
scale: number;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* CNV-12's lines — Mural's thin accent hairlines, drawn while an item is dragged and gone the moment
|
|
13
|
+
* it is let go. Place it INSIDE the canvas's transformed stage (React Flow's `ViewportPortal`, or the
|
|
14
|
+
* element a canvas puts `translate(x, y) scale(k)` on): it draws in world units from the stage's
|
|
15
|
+
* origin, so it pans and zooms with the content and never needs the view's offset.
|
|
16
|
+
*
|
|
17
|
+
* `aria-hidden` and `pointer-events: none`: the lines are a hint about where the item will land,
|
|
18
|
+
* which the item itself already shows; they must never take a pointer from the item underneath.
|
|
19
|
+
*/
|
|
20
|
+
export function AlignmentGuides({ guides, scale, ...rest }: AlignmentGuidesProps) {
|
|
21
|
+
if (guides.length === 0 || !(scale > 0)) return null;
|
|
22
|
+
const width = 1 / scale;
|
|
23
|
+
return (
|
|
24
|
+
<svg
|
|
25
|
+
{...rest}
|
|
26
|
+
data-testid='canvas-alignment-guides'
|
|
27
|
+
aria-hidden='true'
|
|
28
|
+
width={1}
|
|
29
|
+
height={1}
|
|
30
|
+
// At the stage's origin, above the items it is drawn among (React Flow's nodes reach z ~2000).
|
|
31
|
+
className='pointer-events-none absolute top-0 left-0 z-[5000] overflow-visible'
|
|
32
|
+
>
|
|
33
|
+
{guides.map((guide) =>
|
|
34
|
+
guide.axis === 'x' ? (
|
|
35
|
+
<line
|
|
36
|
+
key={`x${guide.at}`}
|
|
37
|
+
data-guide='x'
|
|
38
|
+
x1={guide.at}
|
|
39
|
+
x2={guide.at}
|
|
40
|
+
y1={guide.from}
|
|
41
|
+
y2={guide.to}
|
|
42
|
+
stroke='var(--accent)'
|
|
43
|
+
strokeOpacity={0.85}
|
|
44
|
+
strokeWidth={width}
|
|
45
|
+
shapeRendering='crispEdges'
|
|
46
|
+
/>
|
|
47
|
+
) : (
|
|
48
|
+
<line
|
|
49
|
+
key={`y${guide.at}`}
|
|
50
|
+
data-guide='y'
|
|
51
|
+
x1={guide.from}
|
|
52
|
+
x2={guide.to}
|
|
53
|
+
y1={guide.at}
|
|
54
|
+
y2={guide.at}
|
|
55
|
+
stroke='var(--accent)'
|
|
56
|
+
strokeOpacity={0.85}
|
|
57
|
+
strokeWidth={width}
|
|
58
|
+
shapeRendering='crispEdges'
|
|
59
|
+
/>
|
|
60
|
+
),
|
|
61
|
+
)}
|
|
62
|
+
</svg>
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Whether ⌘ or Ctrl is held right now — CNV-12's way to drag an item off the lines. A ref, not
|
|
68
|
+
* state: React Flow reports a drag as a stream of changes with no pointer event on them, so the
|
|
69
|
+
* canvas reads this inside its change handler, between renders. Kept current from the pointer's
|
|
70
|
+
* own moves and from the keys, so pressing ⌘ mid-drag takes effect on the next move.
|
|
71
|
+
*/
|
|
72
|
+
export function useSnapSuspended(): RefObject<boolean> {
|
|
73
|
+
const held = useRef(false);
|
|
74
|
+
useEffect(() => {
|
|
75
|
+
const read = (event: KeyboardEvent | PointerEvent) => {
|
|
76
|
+
held.current = snapSuspended(event);
|
|
77
|
+
};
|
|
78
|
+
const clear = () => {
|
|
79
|
+
held.current = false;
|
|
80
|
+
};
|
|
81
|
+
window.addEventListener('keydown', read, true);
|
|
82
|
+
window.addEventListener('keyup', read, true);
|
|
83
|
+
window.addEventListener('pointermove', read, true);
|
|
84
|
+
window.addEventListener('pointerdown', read, true);
|
|
85
|
+
window.addEventListener('blur', clear);
|
|
86
|
+
return () => {
|
|
87
|
+
window.removeEventListener('keydown', read, true);
|
|
88
|
+
window.removeEventListener('keyup', read, true);
|
|
89
|
+
window.removeEventListener('pointermove', read, true);
|
|
90
|
+
window.removeEventListener('pointerdown', read, true);
|
|
91
|
+
window.removeEventListener('blur', clear);
|
|
92
|
+
};
|
|
93
|
+
}, []);
|
|
94
|
+
return held;
|
|
95
|
+
}
|
|
@@ -37,6 +37,7 @@ export function CanvasMinimap({
|
|
|
37
37
|
children,
|
|
38
38
|
hint,
|
|
39
39
|
className,
|
|
40
|
+
...rest
|
|
40
41
|
}: CanvasMinimapProps) {
|
|
41
42
|
if (bounds.width <= 0 || bounds.height <= 0 || viewport.width <= 0 || view.scale <= 0) return null;
|
|
42
43
|
const ratio = Math.min(size / bounds.width, (size * 0.62) / bounds.height);
|
|
@@ -54,6 +55,7 @@ export function CanvasMinimap({
|
|
|
54
55
|
const caption = hint === undefined ? (onJump ? 'Tap to jump' : null) : hint;
|
|
55
56
|
return (
|
|
56
57
|
<div
|
|
58
|
+
{...rest}
|
|
57
59
|
data-testid='canvas-minimap'
|
|
58
60
|
className={cn(
|
|
59
61
|
'pointer-events-auto flex flex-col items-center gap-1 rounded-lg border border-border/60 bg-background/70 p-2 shadow-raised backdrop-blur-md',
|
|
@@ -45,10 +45,12 @@ export function CanvasNodeMenu({
|
|
|
45
45
|
align = 'start',
|
|
46
46
|
side = 'bottom',
|
|
47
47
|
className,
|
|
48
|
+
...rest
|
|
48
49
|
}: CanvasNodeMenuProps) {
|
|
49
50
|
const stop = (event: PointerEvent) => event.stopPropagation();
|
|
50
51
|
return (
|
|
51
52
|
<Popover
|
|
53
|
+
{...rest}
|
|
52
54
|
open={open}
|
|
53
55
|
onOpenChange={onOpenChange}
|
|
54
56
|
align={align}
|
|
@@ -40,6 +40,7 @@ export function CanvasSearchField({
|
|
|
40
40
|
placeholder = 'Find…',
|
|
41
41
|
'aria-label': ariaLabel,
|
|
42
42
|
className,
|
|
43
|
+
...rest
|
|
43
44
|
}: CanvasSearchFieldProps) {
|
|
44
45
|
const searching = value.trim().length > 0;
|
|
45
46
|
const onKeyDown = (event: KeyboardEvent<HTMLInputElement>) => {
|
|
@@ -54,7 +55,7 @@ export function CanvasSearchField({
|
|
|
54
55
|
event.stopPropagation();
|
|
55
56
|
};
|
|
56
57
|
return (
|
|
57
|
-
<HudPill className={cn('gap-0.5 rounded-lg py-0.5 pr-1 pl-0', className)}>
|
|
58
|
+
<HudPill {...rest} className={cn('gap-0.5 rounded-lg py-0.5 pr-1 pl-0', className)}>
|
|
58
59
|
<IconSearch size={16} className='ml-2 shrink-0 text-muted-foreground' />
|
|
59
60
|
<Input
|
|
60
61
|
type='search'
|
|
@@ -31,9 +31,10 @@ export interface HudButtonProps {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/** One HUD control — an icon-sized belt `IconButton`, with a pressed state for a toggle. */
|
|
34
|
-
export function HudButton({ label, onClick, children, pressed, unavailableReason, className }: HudButtonProps) {
|
|
34
|
+
export function HudButton({ label, onClick, children, pressed, unavailableReason, className, ...rest }: HudButtonProps) {
|
|
35
35
|
return (
|
|
36
36
|
<IconButton
|
|
37
|
+
{...rest}
|
|
37
38
|
label={label}
|
|
38
39
|
size='sm'
|
|
39
40
|
aria-pressed={pressed}
|
|
@@ -81,6 +82,7 @@ export function HudZoomControls({
|
|
|
81
82
|
children,
|
|
82
83
|
orientation = 'horizontal',
|
|
83
84
|
className,
|
|
85
|
+
...rest
|
|
84
86
|
}: HudZoomControlsProps) {
|
|
85
87
|
const vertical = orientation === 'vertical';
|
|
86
88
|
const zoomOut = (
|
|
@@ -95,6 +97,7 @@ export function HudZoomControls({
|
|
|
95
97
|
);
|
|
96
98
|
return (
|
|
97
99
|
<HudPill
|
|
100
|
+
{...rest}
|
|
98
101
|
role='group'
|
|
99
102
|
aria-label='View'
|
|
100
103
|
aria-orientation={orientation}
|
|
@@ -133,10 +136,11 @@ export interface CanvasZoomHintProps {
|
|
|
133
136
|
* CNV-1's "Hold ⌘ to zoom" — what an embedded canvas says when a plain wheel scrolled the page
|
|
134
137
|
* instead of zooming it, the way an embedded Google Map does. Says Ctrl off a Mac.
|
|
135
138
|
*/
|
|
136
|
-
export function CanvasZoomHint({ show, className }: CanvasZoomHintProps) {
|
|
139
|
+
export function CanvasZoomHint({ show, className, ...rest }: CanvasZoomHintProps) {
|
|
137
140
|
const mac = typeof navigator !== 'undefined' && /Mac|iPhone|iPad/.test(navigator.platform || navigator.userAgent);
|
|
138
141
|
return (
|
|
139
142
|
<div
|
|
143
|
+
{...rest}
|
|
140
144
|
aria-hidden={!show}
|
|
141
145
|
data-testid='canvas-zoom-hint'
|
|
142
146
|
className={cn(
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { afterEach, describe, expect, test } from 'bun:test';
|
|
2
|
+
import { act, cleanup, render } from '@testing-library/react';
|
|
3
|
+
import { snapSuspended, snapToAlignment, unionBounds } from './alignment.js';
|
|
4
|
+
import { AlignmentGuides, useSnapSuspended } from './AlignmentGuides.js';
|
|
5
|
+
|
|
6
|
+
afterEach(cleanup);
|
|
7
|
+
|
|
8
|
+
const box = (x: number, y: number, width = 100, height = 50) => ({ x, y, width, height });
|
|
9
|
+
|
|
10
|
+
describe('snapToAlignment (CNV-12: alignment guides while dragging)', () => {
|
|
11
|
+
test('a left edge within tolerance settles onto its neighbour’s, and one vertical guide spans both', () => {
|
|
12
|
+
const snap = snapToAlignment(box(203, 200, 60, 30), [box(200, 0)], 6);
|
|
13
|
+
expect(snap.dx).toBe(-3);
|
|
14
|
+
expect(snap.dy).toBe(0);
|
|
15
|
+
expect(snap.guides).toEqual([{ axis: 'x', at: 200, from: 0, to: 230 }]);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
test('a box the same size as its neighbour draws its two edges, not a third line down the middle', () => {
|
|
19
|
+
const snap = snapToAlignment(box(203, 200), [box(200, 0)], 6);
|
|
20
|
+
expect(snap.guides).toEqual([
|
|
21
|
+
{ axis: 'x', at: 200, from: 0, to: 250 },
|
|
22
|
+
{ axis: 'x', at: 300, from: 0, to: 250 },
|
|
23
|
+
]);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
test('outside the tolerance nothing moves and nothing is drawn', () => {
|
|
27
|
+
expect(snapToAlignment(box(207, 400), [box(200, 0)], 6)).toEqual({ dx: 0, dy: 0, guides: [] });
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
test('middles line up with middles, and an edge with a middle of another size', () => {
|
|
31
|
+
// The moving box's middle (54 + 46 = 100) already sits on the other's (50 + 50): no move beats
|
|
32
|
+
// the left edges' 4, and the middle guide is drawn.
|
|
33
|
+
const centred = snapToAlignment(box(54, 300, 92, 20), [box(50, 0, 100, 50)], 6);
|
|
34
|
+
expect(centred.dx).toBe(0);
|
|
35
|
+
expect(centred.guides.some((g) => g.axis === 'x' && g.at === 100)).toBe(true);
|
|
36
|
+
const edgeToMiddle = snapToAlignment(box(97, 300, 40, 20), [box(0, 0, 200, 50)], 6);
|
|
37
|
+
expect(edgeToMiddle.dx).toBe(3);
|
|
38
|
+
expect(edgeToMiddle.guides).toContainEqual({ axis: 'x', at: 100, from: 0, to: 320 });
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
test('each axis snaps on its own, so a corner can settle on two lines at once', () => {
|
|
42
|
+
const snap = snapToAlignment(box(502, 104, 40, 30), [box(500, 0), box(0, 100)], 6);
|
|
43
|
+
expect(snap.dx).toBe(-2);
|
|
44
|
+
expect(snap.dy).toBe(-4);
|
|
45
|
+
expect(snap.guides.map((g) => `${g.axis}${g.at}`).sort()).toEqual(['x500', 'y100']);
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
test('the nearest line wins, not the first one found', () => {
|
|
49
|
+
const snap = snapToAlignment(box(105, 400), [box(100, 0), box(104, 200)], 6);
|
|
50
|
+
expect(snap.dx).toBe(-1);
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
test('three items on one line draw ONE guide through all of them', () => {
|
|
54
|
+
const snap = snapToAlignment(box(301, 500, 40, 20), [box(300, 0), box(300, 200)], 6);
|
|
55
|
+
const vertical = snap.guides.filter((g) => g.axis === 'x' && g.at === 300);
|
|
56
|
+
expect(vertical).toEqual([{ axis: 'x', at: 300, from: 0, to: 520 }]);
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
test('a right edge snaps to a right edge, and the guide sits on that edge', () => {
|
|
60
|
+
const snap = snapToAlignment(box(0, 200, 98, 30), [box(0, 0, 100, 50)], 6);
|
|
61
|
+
// left edges already coincide (0 = 0), so no move — and both the left guide and the right are honest
|
|
62
|
+
expect(snap.dx).toBe(0);
|
|
63
|
+
const shifted = snapToAlignment(box(20, 200, 78, 30), [box(0, 0, 100, 50)], 6);
|
|
64
|
+
expect(shifted.dx).toBe(2);
|
|
65
|
+
expect(shifted.guides).toContainEqual({ axis: 'x', at: 100, from: 0, to: 230 });
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
test("axis 'x' snaps and draws only vertical lines — a row of cards does not draw a line along the row", () => {
|
|
69
|
+
// Same row (y 0) as the neighbour, left edge 2 off: settles sideways, and no horizontal line is drawn.
|
|
70
|
+
const sideways = snapToAlignment(box(202, 0, 60, 50), [box(200, 0)], 6, 'x');
|
|
71
|
+
expect(sideways.dx).toBe(-2);
|
|
72
|
+
expect(sideways.dy).toBe(0);
|
|
73
|
+
expect(sideways.guides.every((g) => g.axis === 'x')).toBe(true);
|
|
74
|
+
expect(snapToAlignment(box(500, 3, 60, 50), [box(0, 0)], 6, 'x')).toEqual({ dx: 0, dy: 0, guides: [] });
|
|
75
|
+
expect(snapToAlignment(box(500, 3, 60, 50), [box(0, 0)], 6, 'y').dy).toBe(-3);
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
test('no neighbours, or a zero tolerance (⌘ held), is a plain drag', () => {
|
|
79
|
+
expect(snapToAlignment(box(3, 3), [], 6)).toEqual({ dx: 0, dy: 0, guides: [] });
|
|
80
|
+
expect(snapToAlignment(box(203, 3), [box(200, 0)], 0)).toEqual({ dx: 0, dy: 0, guides: [] });
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
describe('unionBounds', () => {
|
|
85
|
+
test('the box around a multi-selection', () => {
|
|
86
|
+
expect(unionBounds([box(10, 20, 30, 40), box(-5, 50, 10, 10)])).toEqual({ x: -5, y: 20, width: 45, height: 40 });
|
|
87
|
+
expect(unionBounds([])).toBeNull();
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
describe('snapSuspended', () => {
|
|
92
|
+
test('⌘ or Ctrl suspends snapping; nothing held does not', () => {
|
|
93
|
+
expect(snapSuspended({ metaKey: true })).toBe(true);
|
|
94
|
+
expect(snapSuspended({ ctrlKey: true })).toBe(true);
|
|
95
|
+
expect(snapSuspended({ metaKey: false, ctrlKey: false })).toBe(false);
|
|
96
|
+
expect(snapSuspended(null)).toBe(false);
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
describe('AlignmentGuides', () => {
|
|
101
|
+
test('draws one hairline per guide, one screen pixel wide at the view’s scale, and takes no pointer', () => {
|
|
102
|
+
const { getByTestId } = render(
|
|
103
|
+
<AlignmentGuides
|
|
104
|
+
scale={2}
|
|
105
|
+
guides={[
|
|
106
|
+
{ axis: 'x', at: 10, from: 0, to: 90 },
|
|
107
|
+
{ axis: 'y', at: 40, from: -5, to: 60 },
|
|
108
|
+
]}
|
|
109
|
+
/>,
|
|
110
|
+
);
|
|
111
|
+
const svg = getByTestId('canvas-alignment-guides');
|
|
112
|
+
expect(svg.getAttribute('aria-hidden')).toBe('true');
|
|
113
|
+
expect(svg.getAttribute('class')).toContain('pointer-events-none');
|
|
114
|
+
const [vertical, horizontal] = Array.from(svg.querySelectorAll('line'));
|
|
115
|
+
expect([vertical.getAttribute('x1'), vertical.getAttribute('x2'), vertical.getAttribute('y1'), vertical.getAttribute('y2')]).toEqual(['10', '10', '0', '90']);
|
|
116
|
+
expect([horizontal.getAttribute('y1'), horizontal.getAttribute('x1'), horizontal.getAttribute('x2')]).toEqual(['40', '-5', '60']);
|
|
117
|
+
expect(vertical.getAttribute('stroke-width')).toBe('0.5');
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
test('nothing to draw renders nothing', () => {
|
|
121
|
+
const { queryByTestId } = render(<AlignmentGuides scale={1} guides={[]} />);
|
|
122
|
+
expect(queryByTestId('canvas-alignment-guides')).toBeNull();
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
describe('useSnapSuspended', () => {
|
|
127
|
+
test('follows ⌘ down and up, and lets go when the window loses focus', () => {
|
|
128
|
+
let held: { current: boolean | null } = { current: null };
|
|
129
|
+
function Probe() {
|
|
130
|
+
held = useSnapSuspended();
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
render(<Probe />);
|
|
134
|
+
expect(held.current).toBe(false);
|
|
135
|
+
act(() => {
|
|
136
|
+
window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Meta', metaKey: true }));
|
|
137
|
+
});
|
|
138
|
+
expect(held.current).toBe(true);
|
|
139
|
+
act(() => {
|
|
140
|
+
window.dispatchEvent(new KeyboardEvent('keyup', { key: 'Meta', metaKey: false }));
|
|
141
|
+
});
|
|
142
|
+
expect(held.current).toBe(false);
|
|
143
|
+
act(() => {
|
|
144
|
+
window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Control', ctrlKey: true }));
|
|
145
|
+
window.dispatchEvent(new Event('blur'));
|
|
146
|
+
});
|
|
147
|
+
expect(held.current).toBe(false);
|
|
148
|
+
});
|
|
149
|
+
});
|