@cratis/components 1.5.0 → 1.6.6
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/cjs/CommandDialog/CommandDialog.js +11 -4
- package/dist/cjs/CommandDialog/CommandDialog.js.map +1 -1
- package/dist/cjs/CommandDialog/StepperCommandDialog.js +23 -4
- package/dist/cjs/CommandDialog/StepperCommandDialog.js.map +1 -1
- package/dist/cjs/CommandDialog/index.js +2 -1
- package/dist/cjs/CommandDialog/index.js.map +1 -1
- package/dist/cjs/CommandForm/fields/CalendarField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/CheckboxField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/ChipsField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/ColorPickerField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/DropdownField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/InputTextField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/MultiSelectField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/NumberField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/SliderField.js.map +1 -1
- package/dist/cjs/CommandForm/fields/TextAreaField.js.map +1 -1
- package/dist/cjs/CommandForm/index.js +2 -34
- package/dist/cjs/CommandForm/index.js.map +1 -1
- package/dist/cjs/Common/ErrorBoundary.js.map +1 -1
- package/dist/cjs/Common/FormElement.js.map +1 -1
- package/dist/cjs/Common/Page.js.map +1 -1
- package/dist/cjs/Common/Tooltip.js +4 -0
- package/dist/cjs/Common/Tooltip.js.map +1 -1
- package/dist/cjs/Common/index.js +2 -1
- package/dist/cjs/Common/index.js.map +1 -1
- package/dist/cjs/DataPage/DataPage.js +6 -0
- package/dist/cjs/DataPage/DataPage.js.map +1 -1
- package/dist/cjs/DataPage/index.js +2 -1
- package/dist/cjs/DataPage/index.js.map +1 -1
- package/dist/cjs/DataTables/DataTableForObservableQuery.js +5 -0
- package/dist/cjs/DataTables/DataTableForObservableQuery.js.map +1 -1
- package/dist/cjs/DataTables/DataTableForQuery.js +5 -0
- package/dist/cjs/DataTables/DataTableForQuery.js.map +1 -1
- package/dist/cjs/DataTables/index.js +2 -1
- package/dist/cjs/DataTables/index.js.map +1 -1
- package/dist/cjs/Dialogs/BusyIndicatorDialog.js.map +1 -1
- package/dist/cjs/Dialogs/ConfirmationDialog.js.map +1 -1
- package/dist/cjs/Dialogs/Dialog.js +8 -2
- package/dist/cjs/Dialogs/Dialog.js.map +1 -1
- package/dist/cjs/Dialogs/index.js +2 -1
- package/dist/cjs/Dialogs/index.js.map +1 -1
- package/dist/cjs/Dropdown/Dropdown.js +1 -0
- package/dist/cjs/Dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/Dropdown/index.js +2 -1
- package/dist/cjs/Dropdown/index.js.map +1 -1
- package/dist/cjs/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
- package/dist/cjs/ObjectContentEditor/index.js +2 -1
- package/dist/cjs/ObjectContentEditor/index.js.map +1 -1
- package/dist/cjs/ObjectContentEditor/objectHelpers.js +6 -0
- package/dist/cjs/ObjectContentEditor/objectHelpers.js.map +1 -1
- package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -1
- package/dist/cjs/ObjectNavigationalBar/breadcrumbHelpers.js +6 -0
- package/dist/cjs/ObjectNavigationalBar/breadcrumbHelpers.js.map +1 -1
- package/dist/cjs/ObjectNavigationalBar/index.js +2 -1
- package/dist/cjs/ObjectNavigationalBar/index.js.map +1 -1
- package/dist/cjs/PivotViewer/PivotViewer.js +28 -0
- package/dist/cjs/PivotViewer/PivotViewer.js.map +1 -1
- package/dist/cjs/PivotViewer/components/AxisLabels.js +4 -0
- package/dist/cjs/PivotViewer/components/AxisLabels.js.map +1 -1
- package/dist/cjs/PivotViewer/components/DetailPanel.js.map +1 -1
- package/dist/cjs/PivotViewer/components/FilterPanel.js +4 -0
- package/dist/cjs/PivotViewer/components/FilterPanel.js.map +1 -1
- package/dist/cjs/PivotViewer/components/FilterPanelContainer.js.map +1 -1
- package/dist/cjs/PivotViewer/components/PivotCanvas.js +138 -2
- package/dist/cjs/PivotViewer/components/PivotCanvas.js.map +1 -1
- package/dist/cjs/PivotViewer/components/PivotViewerMain.js +4 -0
- package/dist/cjs/PivotViewer/components/PivotViewerMain.js.map +1 -1
- package/dist/cjs/PivotViewer/components/RangeHistogramFilter.js.map +1 -1
- package/dist/cjs/PivotViewer/components/Spinner.js.map +1 -1
- package/dist/cjs/PivotViewer/components/Toolbar.js.map +1 -1
- package/dist/cjs/PivotViewer/components/ToolbarContainer.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/animation.js +8 -1
- package/dist/cjs/PivotViewer/components/pivot/animation.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/colorResolver.js +3 -1
- package/dist/cjs/PivotViewer/components/pivot/colorResolver.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/constants.js +8 -5
- package/dist/cjs/PivotViewer/components/pivot/constants.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/groups.js +15 -0
- package/dist/cjs/PivotViewer/components/pivot/groups.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/sprites.js +32 -13
- package/dist/cjs/PivotViewer/components/pivot/sprites.js.map +1 -1
- package/dist/cjs/PivotViewer/components/pivot/visibility.js +102 -3
- package/dist/cjs/PivotViewer/components/pivot/visibility.js.map +1 -1
- package/dist/cjs/PivotViewer/constants.js +2 -0
- package/dist/cjs/PivotViewer/constants.js.map +1 -1
- package/dist/cjs/PivotViewer/engine/layout.js +23 -0
- package/dist/cjs/PivotViewer/engine/layout.js.map +1 -1
- package/dist/cjs/PivotViewer/engine/store.js +29 -0
- package/dist/cjs/PivotViewer/engine/store.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useAnimationModeTracking.js +8 -0
- package/dist/cjs/PivotViewer/hooks/useAnimationModeTracking.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useCardSelection.js +10 -1
- package/dist/cjs/PivotViewer/hooks/useCardSelection.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useContainerDimensions.js +11 -0
- package/dist/cjs/PivotViewer/hooks/useContainerDimensions.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useCurrentFilters.js +6 -0
- package/dist/cjs/PivotViewer/hooks/useCurrentFilters.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useDetailPanelClose.js +11 -1
- package/dist/cjs/PivotViewer/hooks/useDetailPanelClose.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useDimensionState.js +2 -0
- package/dist/cjs/PivotViewer/hooks/useDimensionState.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useFieldExtractors.js +2 -0
- package/dist/cjs/PivotViewer/hooks/useFieldExtractors.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useFilterOptions.js +2 -0
- package/dist/cjs/PivotViewer/hooks/useFilterOptions.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useFilterState.js +5 -0
- package/dist/cjs/PivotViewer/hooks/useFilterState.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/usePanning.js +14 -0
- package/dist/cjs/PivotViewer/hooks/usePanning.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/usePivotEngine.js +7 -0
- package/dist/cjs/PivotViewer/hooks/usePivotEngine.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useScrollSync.js +6 -0
- package/dist/cjs/PivotViewer/hooks/useScrollSync.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useViewModeScrollHandling.js +9 -0
- package/dist/cjs/PivotViewer/hooks/useViewModeScrollHandling.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useWheelZoom.js +8 -2
- package/dist/cjs/PivotViewer/hooks/useWheelZoom.js.map +1 -1
- package/dist/cjs/PivotViewer/hooks/useZoomState.js +2 -0
- package/dist/cjs/PivotViewer/hooks/useZoomState.js.map +1 -1
- package/dist/cjs/PivotViewer/index.js +2 -1
- package/dist/cjs/PivotViewer/index.js.map +1 -1
- package/dist/cjs/PivotViewer/types.js +11 -0
- package/dist/cjs/PivotViewer/types.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/animations.js +35 -2
- package/dist/cjs/PivotViewer/utils/animations.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/cardPosition.js +21 -3
- package/dist/cjs/PivotViewer/utils/cardPosition.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/constants.js +3 -0
- package/dist/cjs/PivotViewer/utils/constants.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/idResolution.js +16 -0
- package/dist/cjs/PivotViewer/utils/idResolution.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/selection.js +25 -0
- package/dist/cjs/PivotViewer/utils/selection.js.map +1 -1
- package/dist/cjs/PivotViewer/utils/utils.js +5 -0
- package/dist/cjs/PivotViewer/utils/utils.js.map +1 -1
- package/dist/cjs/SchemaEditor/NameCell.js.map +1 -1
- package/dist/cjs/SchemaEditor/SchemaEditor.js.map +1 -1
- package/dist/cjs/SchemaEditor/TypeCell.js.map +1 -1
- package/dist/cjs/SchemaEditor/index.js +2 -1
- package/dist/cjs/SchemaEditor/index.js.map +1 -1
- package/dist/cjs/SchemaEditor/schemaHelpers.js +8 -0
- package/dist/cjs/SchemaEditor/schemaHelpers.js.map +1 -1
- package/dist/cjs/TimeMachine/EventsView.js +2 -0
- package/dist/cjs/TimeMachine/EventsView.js.map +1 -1
- package/dist/cjs/TimeMachine/Properties.js.map +1 -1
- package/dist/cjs/TimeMachine/ReadModelView.js +1 -0
- package/dist/cjs/TimeMachine/ReadModelView.js.map +1 -1
- package/dist/cjs/TimeMachine/TimeMachine.js +11 -1
- package/dist/cjs/TimeMachine/TimeMachine.js.map +1 -1
- package/dist/cjs/TimeMachine/index.js +2 -1
- package/dist/cjs/TimeMachine/index.js.map +1 -1
- package/dist/cjs/TimeMachine/propertiesHelpers.js +5 -0
- package/dist/cjs/TimeMachine/propertiesHelpers.js.map +1 -1
- package/dist/cjs/Toolbar/Toolbar.css +8 -0
- package/dist/cjs/Toolbar/Toolbar.js +7 -1
- package/dist/cjs/Toolbar/Toolbar.js.map +1 -1
- package/dist/cjs/Toolbar/ToolbarButton.js +16 -2
- package/dist/cjs/Toolbar/ToolbarButton.js.map +1 -1
- package/dist/cjs/Toolbar/ToolbarContext.js +8 -0
- package/dist/cjs/Toolbar/ToolbarContext.js.map +1 -1
- package/dist/cjs/Toolbar/ToolbarDragContext.js +24 -0
- package/dist/cjs/Toolbar/ToolbarDragContext.js.map +1 -0
- package/dist/cjs/Toolbar/ToolbarFanOutItem.js +11 -0
- package/dist/cjs/Toolbar/ToolbarFanOutItem.js.map +1 -1
- package/dist/cjs/Toolbar/ToolbarSection.js +18 -1
- package/dist/cjs/Toolbar/ToolbarSection.js.map +1 -1
- package/dist/cjs/Toolbar/ToolbarSeparator.js +6 -0
- package/dist/cjs/Toolbar/ToolbarSeparator.js.map +1 -1
- package/dist/cjs/Toolbar/index.js +2 -1
- package/dist/cjs/Toolbar/index.js.map +1 -1
- package/dist/cjs/tailwind-utilities.css +16 -1
- package/dist/cjs/types/TypeFormat.js +2 -0
- package/dist/cjs/types/TypeFormat.js.map +1 -1
- package/dist/cjs/types/index.js +2 -1
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/useOverlayZIndex.js +10 -0
- package/dist/cjs/useOverlayZIndex.js.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.d.ts +2 -2
- package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.js +11 -4
- package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.stories.d.ts +1 -0
- package/dist/esm/CommandDialog/CommandDialog.stories.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.stories.js +52 -0
- package/dist/esm/CommandDialog/CommandDialog.stories.js.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts +5 -4
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.js +23 -4
- package/dist/esm/CommandDialog/StepperCommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.stories.d.ts +1 -0
- package/dist/esm/CommandDialog/StepperCommandDialog.stories.d.ts.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.stories.js +54 -0
- package/dist/esm/CommandDialog/StepperCommandDialog.stories.js.map +1 -1
- package/dist/esm/CommandDialog/index.js +3 -0
- package/dist/esm/CommandDialog/index.js.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.js.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.js.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.js.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
- package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
- package/dist/esm/CommandForm/index.d.ts +0 -1
- package/dist/esm/CommandForm/index.d.ts.map +1 -1
- package/dist/esm/CommandForm/index.js +3 -1
- package/dist/esm/CommandForm/index.js.map +1 -1
- package/dist/esm/Common/ErrorBoundary.js.map +1 -1
- package/dist/esm/Common/FormElement.js.map +1 -1
- package/dist/esm/Common/Page.js.map +1 -1
- package/dist/esm/Common/Tooltip.js +4 -0
- package/dist/esm/Common/Tooltip.js.map +1 -1
- package/dist/esm/Common/index.js +3 -0
- package/dist/esm/Common/index.js.map +1 -1
- package/dist/esm/DataPage/DataPage.js +6 -0
- package/dist/esm/DataPage/DataPage.js.map +1 -1
- package/dist/esm/DataPage/index.js +3 -0
- package/dist/esm/DataPage/index.js.map +1 -1
- package/dist/esm/DataTables/DataTableForObservableQuery.js +5 -0
- package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.js +5 -0
- package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
- package/dist/esm/DataTables/index.js +3 -0
- package/dist/esm/DataTables/index.js.map +1 -1
- package/dist/esm/Dialogs/BusyIndicatorDialog.js.map +1 -1
- package/dist/esm/Dialogs/ConfirmationDialog.js.map +1 -1
- package/dist/esm/Dialogs/Dialog.d.ts +5 -3
- package/dist/esm/Dialogs/Dialog.d.ts.map +1 -1
- package/dist/esm/Dialogs/Dialog.js +8 -2
- package/dist/esm/Dialogs/Dialog.js.map +1 -1
- package/dist/esm/Dialogs/index.js +3 -0
- package/dist/esm/Dialogs/index.js.map +1 -1
- package/dist/esm/Dropdown/Dropdown.js +1 -0
- package/dist/esm/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/Dropdown/index.js +3 -0
- package/dist/esm/Dropdown/index.js.map +1 -1
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
- package/dist/esm/ObjectContentEditor/index.js +3 -0
- package/dist/esm/ObjectContentEditor/index.js.map +1 -1
- package/dist/esm/ObjectContentEditor/objectHelpers.js +6 -0
- package/dist/esm/ObjectContentEditor/objectHelpers.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/breadcrumbHelpers.js +6 -0
- package/dist/esm/ObjectNavigationalBar/breadcrumbHelpers.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/index.js +3 -0
- package/dist/esm/ObjectNavigationalBar/index.js.map +1 -1
- package/dist/esm/PivotViewer/PivotViewer.js +28 -0
- package/dist/esm/PivotViewer/PivotViewer.js.map +1 -1
- package/dist/esm/PivotViewer/components/AxisLabels.js +4 -0
- package/dist/esm/PivotViewer/components/AxisLabels.js.map +1 -1
- package/dist/esm/PivotViewer/components/DetailPanel.js.map +1 -1
- package/dist/esm/PivotViewer/components/FilterPanel.js +4 -0
- package/dist/esm/PivotViewer/components/FilterPanel.js.map +1 -1
- package/dist/esm/PivotViewer/components/FilterPanelContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotCanvas.js +138 -2
- package/dist/esm/PivotViewer/components/PivotCanvas.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotViewerMain.js +4 -0
- package/dist/esm/PivotViewer/components/PivotViewerMain.js.map +1 -1
- package/dist/esm/PivotViewer/components/RangeHistogramFilter.js.map +1 -1
- package/dist/esm/PivotViewer/components/Spinner.js.map +1 -1
- package/dist/esm/PivotViewer/components/Toolbar.js.map +1 -1
- package/dist/esm/PivotViewer/components/ToolbarContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/animation.js +8 -1
- package/dist/esm/PivotViewer/components/pivot/animation.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/colorResolver.js +3 -1
- package/dist/esm/PivotViewer/components/pivot/colorResolver.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/constants.js +8 -5
- package/dist/esm/PivotViewer/components/pivot/constants.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/groups.js +15 -0
- package/dist/esm/PivotViewer/components/pivot/groups.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/sprites.js +19 -0
- package/dist/esm/PivotViewer/components/pivot/sprites.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/visibility.js +102 -3
- package/dist/esm/PivotViewer/components/pivot/visibility.js.map +1 -1
- package/dist/esm/PivotViewer/constants.js +2 -0
- package/dist/esm/PivotViewer/constants.js.map +1 -1
- package/dist/esm/PivotViewer/engine/layout.js +23 -0
- package/dist/esm/PivotViewer/engine/layout.js.map +1 -1
- package/dist/esm/PivotViewer/engine/store.js +29 -0
- package/dist/esm/PivotViewer/engine/store.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useAnimationModeTracking.js +8 -0
- package/dist/esm/PivotViewer/hooks/useAnimationModeTracking.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useCardSelection.js +10 -1
- package/dist/esm/PivotViewer/hooks/useCardSelection.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useContainerDimensions.js +11 -0
- package/dist/esm/PivotViewer/hooks/useContainerDimensions.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useCurrentFilters.js +6 -0
- package/dist/esm/PivotViewer/hooks/useCurrentFilters.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.js +11 -1
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDimensionState.js +2 -0
- package/dist/esm/PivotViewer/hooks/useDimensionState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.js +2 -0
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterOptions.js +2 -0
- package/dist/esm/PivotViewer/hooks/useFilterOptions.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterState.js +5 -0
- package/dist/esm/PivotViewer/hooks/useFilterState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/usePanning.js +14 -0
- package/dist/esm/PivotViewer/hooks/usePanning.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/usePivotEngine.js +7 -0
- package/dist/esm/PivotViewer/hooks/usePivotEngine.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useScrollSync.js +6 -0
- package/dist/esm/PivotViewer/hooks/useScrollSync.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.js +9 -0
- package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useWheelZoom.js +8 -2
- package/dist/esm/PivotViewer/hooks/useWheelZoom.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useZoomState.js +2 -0
- package/dist/esm/PivotViewer/hooks/useZoomState.js.map +1 -1
- package/dist/esm/PivotViewer/index.js +3 -0
- package/dist/esm/PivotViewer/index.js.map +1 -1
- package/dist/esm/PivotViewer/types.js +11 -0
- package/dist/esm/PivotViewer/types.js.map +1 -1
- package/dist/esm/PivotViewer/utils/animations.js +35 -2
- package/dist/esm/PivotViewer/utils/animations.js.map +1 -1
- package/dist/esm/PivotViewer/utils/cardPosition.js +21 -3
- package/dist/esm/PivotViewer/utils/cardPosition.js.map +1 -1
- package/dist/esm/PivotViewer/utils/constants.js +3 -0
- package/dist/esm/PivotViewer/utils/constants.js.map +1 -1
- package/dist/esm/PivotViewer/utils/idResolution.js +16 -0
- package/dist/esm/PivotViewer/utils/idResolution.js.map +1 -1
- package/dist/esm/PivotViewer/utils/selection.js +25 -0
- package/dist/esm/PivotViewer/utils/selection.js.map +1 -1
- package/dist/esm/PivotViewer/utils/utils.js +5 -0
- package/dist/esm/PivotViewer/utils/utils.js.map +1 -1
- package/dist/esm/SchemaEditor/NameCell.js.map +1 -1
- package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -1
- package/dist/esm/SchemaEditor/TypeCell.js.map +1 -1
- package/dist/esm/SchemaEditor/index.js +3 -0
- package/dist/esm/SchemaEditor/index.js.map +1 -1
- package/dist/esm/SchemaEditor/schemaHelpers.js +8 -0
- package/dist/esm/SchemaEditor/schemaHelpers.js.map +1 -1
- package/dist/esm/TimeMachine/EventsView.js +2 -0
- package/dist/esm/TimeMachine/EventsView.js.map +1 -1
- package/dist/esm/TimeMachine/Properties.js.map +1 -1
- package/dist/esm/TimeMachine/ReadModelView.js +1 -0
- package/dist/esm/TimeMachine/ReadModelView.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachine.js +11 -1
- package/dist/esm/TimeMachine/TimeMachine.js.map +1 -1
- package/dist/esm/TimeMachine/index.js +3 -0
- package/dist/esm/TimeMachine/index.js.map +1 -1
- package/dist/esm/TimeMachine/propertiesHelpers.js +5 -0
- package/dist/esm/TimeMachine/propertiesHelpers.js.map +1 -1
- package/dist/esm/Toolbar/Toolbar.css +8 -0
- package/dist/esm/Toolbar/Toolbar.d.ts +3 -1
- package/dist/esm/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/esm/Toolbar/Toolbar.js +7 -1
- package/dist/esm/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/Toolbar/Toolbar.stories.d.ts +1 -0
- package/dist/esm/Toolbar/Toolbar.stories.d.ts.map +1 -1
- package/dist/esm/Toolbar/Toolbar.stories.js +23 -0
- package/dist/esm/Toolbar/Toolbar.stories.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarButton.d.ts +4 -1
- package/dist/esm/Toolbar/ToolbarButton.d.ts.map +1 -1
- package/dist/esm/Toolbar/ToolbarButton.js +16 -2
- package/dist/esm/Toolbar/ToolbarButton.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarContext.js +8 -0
- package/dist/esm/Toolbar/ToolbarContext.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarDragContext.d.ts +7 -0
- package/dist/esm/Toolbar/ToolbarDragContext.d.ts.map +1 -0
- package/dist/esm/Toolbar/ToolbarDragContext.js +21 -0
- package/dist/esm/Toolbar/ToolbarDragContext.js.map +1 -0
- package/dist/esm/Toolbar/ToolbarFanOutItem.js +11 -0
- package/dist/esm/Toolbar/ToolbarFanOutItem.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarSection.js +18 -1
- package/dist/esm/Toolbar/ToolbarSection.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarSeparator.js +6 -0
- package/dist/esm/Toolbar/ToolbarSeparator.js.map +1 -1
- package/dist/esm/Toolbar/index.js +3 -0
- package/dist/esm/Toolbar/index.js.map +1 -1
- package/dist/esm/tailwind-utilities.css +16 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/types/TypeFormat.js +2 -0
- package/dist/esm/types/TypeFormat.js.map +1 -1
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/useOverlayZIndex.js +10 -0
- package/dist/esm/useOverlayZIndex.js.map +1 -1
- package/package.json +8 -8
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var constants = require('../constants.js');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
7
|
function computeLayout(grouping, spec) {
|
|
6
8
|
const positions = new Map();
|
|
7
9
|
if (spec.viewMode === 'collection') {
|
|
@@ -15,6 +17,7 @@ function computeCollectionLayout(grouping, spec, positions) {
|
|
|
15
17
|
const { cardWidth, cardHeight, containerWidth } = spec;
|
|
16
18
|
const slotWidth = cardWidth + constants.CARD_GAP;
|
|
17
19
|
const slotHeight = cardHeight + constants.CARD_GAP;
|
|
20
|
+
// Calculate how many cards fit per row based on container width (include gap)
|
|
18
21
|
const cardsPerRow = Math.max(1, Math.floor((containerWidth + constants.CARD_GAP - (constants.CANVAS_PADDING * 2)) / slotWidth));
|
|
19
22
|
let x = constants.CANVAS_PADDING;
|
|
20
23
|
let y = constants.CANVAS_PADDING;
|
|
@@ -28,8 +31,10 @@ function computeCollectionLayout(grouping, spec, positions) {
|
|
|
28
31
|
y,
|
|
29
32
|
groupIndex: 0,
|
|
30
33
|
});
|
|
34
|
+
// Move to next position horizontally (left to right)
|
|
31
35
|
column++;
|
|
32
36
|
x += slotWidth;
|
|
37
|
+
// Wrap to next row when we've filled the width
|
|
33
38
|
if (column >= cardsPerRow) {
|
|
34
39
|
column = 0;
|
|
35
40
|
x = constants.CANVAS_PADDING;
|
|
@@ -48,22 +53,32 @@ function computeCollectionLayout(grouping, spec, positions) {
|
|
|
48
53
|
}
|
|
49
54
|
function computeGroupedLayout(grouping, spec, positions) {
|
|
50
55
|
const { cardWidth, cardHeight, cardsPerColumn } = spec;
|
|
56
|
+
// Override group spacing to ensure consistent card spacing across groups
|
|
57
|
+
// We want visual gap between groups to match gap between cards (CARD_GAP)
|
|
51
58
|
const effectiveGroupSpacing = 0;
|
|
52
59
|
const slotWidth = cardWidth + constants.CARD_GAP;
|
|
53
60
|
const slotHeight = cardHeight + constants.CARD_GAP;
|
|
61
|
+
// Bottom gap = BOTTOM_MARGIN + CARD_GAP - CANVAS_PADDING.
|
|
62
|
+
// To match the left/right edge padding within each bucket (CARD_GAP / 2 = 5px):
|
|
63
|
+
// BOTTOM_MARGIN = CANVAS_PADDING - CARD_GAP + (CARD_GAP / 2) = CANVAS_PADDING - CARD_GAP / 2
|
|
54
64
|
const BOTTOM_MARGIN = constants.CANVAS_PADDING - constants.CARD_GAP / 2;
|
|
65
|
+
// Fixed bucket width: 2 columns of cards per bucket (always)
|
|
55
66
|
const COLUMNS_PER_BUCKET = 2;
|
|
56
67
|
const bucketWidth = COLUMNS_PER_BUCKET * slotWidth;
|
|
57
68
|
let groupX = 0;
|
|
69
|
+
// Use container height for layout, or fallback to cardsPerColumn height
|
|
58
70
|
const layoutHeight = spec.containerHeight || (cardsPerColumn * slotHeight);
|
|
59
71
|
const bucketWidths = [];
|
|
60
72
|
const groupXs = [];
|
|
61
73
|
let maxRows = 0;
|
|
74
|
+
// First pass: calculate max rows to determine total height
|
|
62
75
|
for (const group of grouping.groups) {
|
|
63
76
|
const itemsInGroup = group.ids.length;
|
|
64
77
|
const rowsInGroup = Math.ceil(itemsInGroup / COLUMNS_PER_BUCKET);
|
|
65
78
|
maxRows = Math.max(maxRows, rowsInGroup);
|
|
66
79
|
}
|
|
80
|
+
// Calculate actual content height needed (ensure it's at least as tall as the container)
|
|
81
|
+
// We need to fit the tallest column plus the bottom margin
|
|
67
82
|
const contentHeight = Math.max(layoutHeight, (maxRows * slotHeight) + BOTTOM_MARGIN);
|
|
68
83
|
for (let groupIndex = 0; groupIndex < grouping.groups.length; groupIndex++) {
|
|
69
84
|
const group = grouping.groups[groupIndex];
|
|
@@ -71,9 +86,15 @@ function computeGroupedLayout(grouping, spec, positions) {
|
|
|
71
86
|
const itemsInGroup = group.ids.length;
|
|
72
87
|
for (let i = 0; i < itemsInGroup; i++) {
|
|
73
88
|
const id = group.ids[i];
|
|
89
|
+
// Cards fill from left to right, bottom to top
|
|
90
|
+
// For a 2-column bucket: i=0,1 in row 0; i=2,3 in row 1; etc.
|
|
74
91
|
const col = i % COLUMNS_PER_BUCKET;
|
|
75
92
|
const row = Math.floor(i / COLUMNS_PER_BUCKET);
|
|
93
|
+
// Center the cards within the bucket
|
|
94
|
+
// The bucket width fits 2 slots (2W + 2G). Cards take 2W + G.
|
|
95
|
+
// So we have G/2 padding on each side to center them.
|
|
76
96
|
const x = groupX + (col * slotWidth) + (constants.CARD_GAP / 2);
|
|
97
|
+
// Position cards from bottom of container, stacking upwards, starting at row 0 (bottom)
|
|
77
98
|
const y = constants.CANVAS_PADDING + contentHeight - BOTTOM_MARGIN - ((row + 1) * slotHeight);
|
|
78
99
|
positions.set(id, {
|
|
79
100
|
x,
|
|
@@ -81,7 +102,9 @@ function computeGroupedLayout(grouping, spec, positions) {
|
|
|
81
102
|
groupIndex,
|
|
82
103
|
});
|
|
83
104
|
}
|
|
105
|
+
// Always use fixed bucket width
|
|
84
106
|
bucketWidths.push(bucketWidth);
|
|
107
|
+
// Advance position by fixed bucket width + spacing
|
|
85
108
|
groupX += bucketWidth;
|
|
86
109
|
if (groupIndex < grouping.groups.length - 1) {
|
|
87
110
|
groupX += effectiveGroupSpacing;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sources":["../../../../PivotViewer/engine/layout.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"layout.js","sources":["../../../../PivotViewer/engine/layout.ts"],"sourcesContent":[null],"names":["CARD_GAP","CANVAS_PADDING"],"mappings":"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"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
4
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
|
+
/**
|
|
6
|
+
* Convert array of items to columnar store
|
|
7
|
+
*/
|
|
3
8
|
function buildStore(items, fieldExtractors) {
|
|
4
9
|
const count = items.length;
|
|
5
10
|
const ids = new Uint32Array(count);
|
|
@@ -51,6 +56,9 @@ function stringifyValue(value) {
|
|
|
51
56
|
return 'undefined';
|
|
52
57
|
return String(value);
|
|
53
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Build categorical index for a string field
|
|
61
|
+
*/
|
|
54
62
|
function buildCategoricalIndex(field) {
|
|
55
63
|
if (field.kind !== 'string') {
|
|
56
64
|
throw new Error('Categorical index requires string field');
|
|
@@ -79,6 +87,9 @@ function buildCategoricalIndex(field) {
|
|
|
79
87
|
values.sort();
|
|
80
88
|
return { valueToIds, values };
|
|
81
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Build numeric index for a number field
|
|
92
|
+
*/
|
|
82
93
|
function buildNumericIndex(field) {
|
|
83
94
|
if (field.kind !== 'number') {
|
|
84
95
|
throw new Error('Numeric index requires number field');
|
|
@@ -106,6 +117,9 @@ function buildNumericIndex(field) {
|
|
|
106
117
|
}
|
|
107
118
|
return { values, ids, min, max };
|
|
108
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* Build all indexes for specified fields
|
|
122
|
+
*/
|
|
109
123
|
function buildIndexes(store, fieldNames) {
|
|
110
124
|
const categorical = new Map();
|
|
111
125
|
const numeric = new Map();
|
|
@@ -122,6 +136,9 @@ function buildIndexes(store, fieldNames) {
|
|
|
122
136
|
}
|
|
123
137
|
return { categorical, numeric };
|
|
124
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Intersect two sorted arrays of IDs
|
|
141
|
+
*/
|
|
125
142
|
function intersectSorted(a, b) {
|
|
126
143
|
const result = [];
|
|
127
144
|
let i = 0;
|
|
@@ -141,6 +158,9 @@ function intersectSorted(a, b) {
|
|
|
141
158
|
}
|
|
142
159
|
return new Uint32Array(result);
|
|
143
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* Union multiple sorted arrays
|
|
163
|
+
*/
|
|
144
164
|
function unionSorted(arrays) {
|
|
145
165
|
if (arrays.length === 0)
|
|
146
166
|
return new Uint32Array(0);
|
|
@@ -155,6 +175,9 @@ function unionSorted(arrays) {
|
|
|
155
175
|
const result = Array.from(set).sort((a, b) => a - b);
|
|
156
176
|
return new Uint32Array(result);
|
|
157
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* Apply filters using indexes
|
|
180
|
+
*/
|
|
158
181
|
function applyFilters(store, indexes, filters) {
|
|
159
182
|
if (filters.length === 0) {
|
|
160
183
|
return {
|
|
@@ -212,6 +235,9 @@ function applyFilters(store, indexes, filters) {
|
|
|
212
235
|
count: visibleIds.length,
|
|
213
236
|
};
|
|
214
237
|
}
|
|
238
|
+
/**
|
|
239
|
+
* Group items by field value
|
|
240
|
+
*/
|
|
215
241
|
function computeGrouping(store, indexes, visibleIds, groupBy) {
|
|
216
242
|
const field = store.fields.get(groupBy.field);
|
|
217
243
|
if (!field) {
|
|
@@ -306,6 +332,9 @@ function groupByNumeric(field, visibleIds, buckets = 10) {
|
|
|
306
332
|
}
|
|
307
333
|
return { groups };
|
|
308
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Sort IDs based on a field
|
|
337
|
+
*/
|
|
309
338
|
function sortIds(store, ids, sortBy) {
|
|
310
339
|
const field = store.fields.get(sortBy);
|
|
311
340
|
if (!field)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sources":["../../../../PivotViewer/engine/store.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type {\n PivotStore,\n Field,\n CategoricalIndex,\n NumericIndex,\n PivotIndexes,\n FilterSpec,\n FilterResult,\n GroupSpec,\n GroupResult,\n GroupingResult,\n FieldValue,\n} from './types';\n\n/**\n * Convert array of items to columnar store\n */\nexport function buildStore<TItem extends object>(\n items: TItem[],\n fieldExtractors: Map<string, (item: TItem) => FieldValue>\n): PivotStore {\n const count = items.length;\n const ids = new Uint32Array(count);\n const fields = new Map<string, Field>();\n\n for (let i = 0; i < count; i++) {\n ids[i] = i;\n }\n\n for (const [fieldName, extractor] of fieldExtractors) {\n const firstValue = count > 0 ? extractor(items[0]) : null;\n const kind = inferKind(firstValue);\n\n if (kind === 'number') {\n const values = new Float64Array(count);\n for (let i = 0; i < count; i++) {\n const val = extractor(items[i]);\n values[i] = typeof val === 'number' ? val : NaN;\n }\n fields.set(fieldName, { kind: 'number', values });\n } else if (kind === 'boolean') {\n const values = new Uint8Array(count);\n for (let i = 0; i < count; i++) {\n const val = extractor(items[i]);\n values[i] = val === true ? 1 : 0;\n }\n fields.set(fieldName, { kind: 'boolean', values });\n } else {\n const values: string[] = [];\n for (let i = 0; i < count; i++) {\n const val = extractor(items[i]);\n values.push(stringifyValue(val));\n }\n fields.set(fieldName, { kind: 'string', values });\n }\n }\n\n return { count, ids, fields, items };\n}\n\nfunction inferKind(value: FieldValue): 'string' | 'number' | 'boolean' {\n if (typeof value === 'number') return 'number';\n if (typeof value === 'boolean') return 'boolean';\n return 'string';\n}\n\nfunction stringifyValue(value: FieldValue): string {\n if (value === null) return 'null';\n if (value === undefined) return 'undefined';\n return String(value);\n}\n\n/**\n * Build categorical index for a string field\n */\nexport function buildCategoricalIndex(field: Field): CategoricalIndex {\n if (field.kind !== 'string') {\n throw new Error('Categorical index requires string field');\n }\n\n const valueToIdsList = new Map<string, number[]>();\n\n for (let i = 0; i < field.values.length; i++) {\n const value = field.values[i];\n let list = valueToIdsList.get(value);\n if (!list) {\n list = [];\n valueToIdsList.set(value, list);\n }\n list.push(i);\n }\n\n const valueToIds = new Map<string, Uint32Array>();\n const values: string[] = [];\n\n for (const [value, idsList] of valueToIdsList) {\n values.push(value);\n const ids = new Uint32Array(idsList.length);\n for (let i = 0; i < idsList.length; i++) {\n ids[i] = idsList[i];\n }\n ids.sort();\n valueToIds.set(value, ids);\n }\n\n values.sort();\n\n return { valueToIds, values };\n}\n\n/**\n * Build numeric index for a number field\n */\nexport function buildNumericIndex(field: Field): NumericIndex {\n if (field.kind !== 'number') {\n throw new Error('Numeric index requires number field');\n }\n\n const count = field.values.length;\n const pairs: Array<{ value: number; id: number }> = [];\n\n let min = Infinity;\n let max = -Infinity;\n\n for (let i = 0; i < count; i++) {\n const value = field.values[i];\n if (!isNaN(value)) {\n pairs.push({ value, id: i });\n if (value < min) min = value;\n if (value > max) max = value;\n }\n }\n\n pairs.sort((a, b) => a.value - b.value);\n\n const values = new Float64Array(pairs.length);\n const ids = new Uint32Array(pairs.length);\n\n for (let i = 0; i < pairs.length; i++) {\n values[i] = pairs[i].value;\n ids[i] = pairs[i].id;\n }\n\n return { values, ids, min, max };\n}\n\n/**\n * Build all indexes for specified fields\n */\nexport function buildIndexes(store: PivotStore, fieldNames: string[]): PivotIndexes {\n const categorical = new Map<string, CategoricalIndex>();\n const numeric = new Map<string, NumericIndex>();\n\n for (const fieldName of fieldNames) {\n const field = store.fields.get(fieldName);\n if (!field) continue;\n\n if (field.kind === 'string') {\n categorical.set(fieldName, buildCategoricalIndex(field));\n } else if (field.kind === 'number') {\n numeric.set(fieldName, buildNumericIndex(field));\n }\n }\n\n return { categorical, numeric };\n}\n\n/**\n * Intersect two sorted arrays of IDs\n */\nfunction intersectSorted(a: Uint32Array, b: Uint32Array): Uint32Array {\n const result: number[] = [];\n let i = 0;\n let j = 0;\n\n while (i < a.length && j < b.length) {\n if (a[i] === b[j]) {\n result.push(a[i]);\n i++;\n j++;\n } else if (a[i] < b[j]) {\n i++;\n } else {\n j++;\n }\n }\n\n return new Uint32Array(result);\n}\n\n/**\n * Union multiple sorted arrays\n */\nfunction unionSorted(arrays: Uint32Array[]): Uint32Array {\n if (arrays.length === 0) return new Uint32Array(0);\n if (arrays.length === 1) return arrays[0];\n\n const set = new Set<number>();\n for (const arr of arrays) {\n for (let i = 0; i < arr.length; i++) {\n set.add(arr[i]);\n }\n }\n\n const result = Array.from(set).sort((a, b) => a - b);\n return new Uint32Array(result);\n}\n\n/**\n * Apply filters using indexes\n */\nexport function applyFilters(\n store: PivotStore,\n indexes: PivotIndexes,\n filters: FilterSpec[]\n): FilterResult {\n if (filters.length === 0) {\n return {\n visibleIds: store.ids,\n count: store.count,\n };\n }\n\n const sets: Uint32Array[] = [];\n\n for (const filter of filters) {\n if (filter.type === 'categorical' && filter.values && filter.values.size > 0) {\n const index = indexes.categorical.get(filter.field);\n if (!index) continue;\n\n const arrays: Uint32Array[] = [];\n for (const value of filter.values) {\n const ids = index.valueToIds.get(value);\n if (ids) {\n arrays.push(ids);\n }\n }\n\n if (arrays.length > 0) {\n sets.push(unionSorted(arrays));\n }\n } else if (filter.type === 'numeric' && filter.range) {\n const index = indexes.numeric.get(filter.field);\n if (!index) continue;\n\n const { min, max } = filter.range;\n const result: number[] = [];\n\n for (let i = 0; i < index.values.length; i++) {\n const val = index.values[i];\n if (val >= min && val <= max) {\n result.push(index.ids[i]);\n }\n }\n\n if (result.length > 0) {\n result.sort((a, b) => a - b);\n sets.push(new Uint32Array(result));\n }\n }\n }\n\n if (sets.length === 0) {\n return {\n visibleIds: store.ids,\n count: store.count,\n };\n }\n\n let visibleIds = sets[0];\n for (let i = 1; i < sets.length; i++) {\n visibleIds = intersectSorted(visibleIds, sets[i]);\n }\n\n return {\n visibleIds,\n count: visibleIds.length,\n };\n}\n\n/**\n * Group items by field value\n */\nexport function computeGrouping(\n store: PivotStore,\n indexes: PivotIndexes,\n visibleIds: Uint32Array,\n groupBy: GroupSpec\n): GroupingResult {\n const field = store.fields.get(groupBy.field);\n if (!field) {\n return { groups: [] };\n }\n\n if (field.kind === 'string') {\n return groupByCategorical(field, visibleIds, indexes.categorical.get(groupBy.field));\n } else if (field.kind === 'number') {\n return groupByNumeric(field, visibleIds, groupBy.buckets);\n }\n\n return { groups: [] };\n}\n\nfunction groupByCategorical(\n field: Field,\n visibleIds: Uint32Array,\n index?: CategoricalIndex\n): GroupingResult {\n if (field.kind !== 'string') {\n return { groups: [] };\n }\n\n const valueToIds = new Map<string, number[]>();\n\n for (let i = 0; i < visibleIds.length; i++) {\n const id = visibleIds[i];\n const value = field.values[id];\n\n let list = valueToIds.get(value);\n if (!list) {\n list = [];\n valueToIds.set(value, list);\n }\n list.push(id);\n }\n\n const groups: GroupResult[] = [];\n const sortedValues = index ? index.values : Array.from(valueToIds.keys()).sort();\n\n for (const value of sortedValues) {\n const idsList = valueToIds.get(value);\n if (!idsList) continue;\n\n const ids = new Uint32Array(idsList);\n groups.push({\n key: value,\n label: value,\n value,\n ids,\n count: ids.length,\n });\n }\n\n return { groups };\n}\n\nfunction groupByNumeric(\n field: Field,\n visibleIds: Uint32Array,\n buckets: number = 10\n): GroupingResult {\n if (field.kind !== 'number') {\n return { groups: [] };\n }\n\n let min = Infinity;\n let max = -Infinity;\n\n for (let i = 0; i < visibleIds.length; i++) {\n const value = field.values[visibleIds[i]];\n if (!isNaN(value)) {\n if (value < min) min = value;\n if (value > max) max = value;\n }\n }\n\n if (!isFinite(min) || !isFinite(max)) {\n return { groups: [] };\n }\n\n const range = max - min;\n const bucketSize = range / buckets;\n\n const bucketLists: number[][] = Array.from({ length: buckets }, () => []);\n\n for (let i = 0; i < visibleIds.length; i++) {\n const id = visibleIds[i];\n const value = field.values[id];\n if (isNaN(value)) continue;\n\n let bucketIndex = Math.floor((value - min) / bucketSize);\n if (bucketIndex >= buckets) bucketIndex = buckets - 1;\n\n bucketLists[bucketIndex].push(id);\n }\n\n const groups: GroupResult[] = [];\n\n for (let i = 0; i < buckets; i++) {\n const list = bucketLists[i];\n if (list.length === 0) continue;\n\n const bucketMin = min + i * bucketSize;\n const bucketMax = min + (i + 1) * bucketSize;\n\n const ids = new Uint32Array(list);\n groups.push({\n key: `${i}`,\n label: `${bucketMin.toFixed(1)} - ${bucketMax.toFixed(1)}`,\n value: bucketMin,\n ids,\n count: ids.length,\n });\n }\n\n return { groups };\n}\n\n/**\n * Sort IDs based on a field\n */\nexport function sortIds(\n store: PivotStore,\n ids: Uint32Array,\n sortBy: string\n): Uint32Array {\n const field = store.fields.get(sortBy);\n if (!field) return ids;\n\n const sortedIds = new Uint32Array(ids);\n\n if (field.kind === 'number') {\n const values = field.values;\n sortedIds.sort((a, b) => values[a] - values[b]);\n } else if (field.kind === 'string') {\n const values = field.values;\n sortedIds.sort((a, b) => values[a].localeCompare(values[b]));\n } else if (field.kind === 'boolean') {\n const values = field.values;\n sortedIds.sort((a, b) => values[a] - values[b]);\n }\n\n return sortedIds;\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.js","sources":["../../../../PivotViewer/engine/store.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
7
|
+
/**
|
|
8
|
+
* Tracks changes to animation mode based on filter, search, dimension, or view mode changes
|
|
9
|
+
*/
|
|
5
10
|
function useAnimationModeTracking(filterState, rangeFilterState, search, activeDimensionKey, viewMode, setAnimationMode) {
|
|
6
11
|
const isFirstRenderRef = React.useRef(true);
|
|
7
12
|
const prevFilterStateRef = React.useRef(filterState);
|
|
@@ -10,6 +15,7 @@ function useAnimationModeTracking(filterState, rangeFilterState, search, activeD
|
|
|
10
15
|
const prevDimensionRef = React.useRef(activeDimensionKey);
|
|
11
16
|
const prevViewModeRef = React.useRef(viewMode);
|
|
12
17
|
React.useEffect(() => {
|
|
18
|
+
// Skip the first render
|
|
13
19
|
if (isFirstRenderRef.current) {
|
|
14
20
|
isFirstRenderRef.current = false;
|
|
15
21
|
return;
|
|
@@ -19,6 +25,8 @@ function useAnimationModeTracking(filterState, rangeFilterState, search, activeD
|
|
|
19
25
|
const searchChanged = prevSearchRef.current !== search;
|
|
20
26
|
const dimensionChanged = prevDimensionRef.current !== activeDimensionKey;
|
|
21
27
|
const viewModeChanged = prevViewModeRef.current !== viewMode;
|
|
28
|
+
// If filters or search changed, use filter animation (fade/scale)
|
|
29
|
+
// If dimension or view mode changed, use layout animation (fly)
|
|
22
30
|
if (filterChanged || rangeChanged || searchChanged) {
|
|
23
31
|
setAnimationMode('filter');
|
|
24
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAnimationModeTracking.js","sources":["../../../../PivotViewer/hooks/useAnimationModeTracking.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useAnimationModeTracking.js","sources":["../../../../PivotViewer/hooks/useAnimationModeTracking.ts"],"sourcesContent":[null],"names":["useRef","useEffect"],"mappings":";;;;AAAA;AACA;AAIA;;AAEG;AACG,SAAU,wBAAwB,CACpC,WAAwC,EACxC,gBAAuE,EACvE,MAAc,EACd,kBAAiC,EACjC,QAAgB,EAChB,gBAAqD,EAAA;AAErD,IAAA,MAAM,gBAAgB,GAAGA,YAAM,CAAC,IAAI,CAAC;AACrC,IAAA,MAAM,kBAAkB,GAAGA,YAAM,CAAC,WAAW,CAAC;AAC9C,IAAA,MAAM,uBAAuB,GAAGA,YAAM,CAAC,gBAAgB,CAAC;AACxD,IAAA,MAAM,aAAa,GAAGA,YAAM,CAAC,MAAM,CAAC;AACpC,IAAA,MAAM,gBAAgB,GAAGA,YAAM,CAAC,kBAAkB,CAAC;AACnD,IAAA,MAAM,eAAe,GAAGA,YAAM,CAAC,QAAQ,CAAC;IAExCC,eAAS,CAAC,MAAK;;AAEX,QAAA,IAAI,gBAAgB,CAAC,OAAO,EAAE;AAC1B,YAAA,gBAAgB,CAAC,OAAO,GAAG,KAAK;YAChC;QACJ;AAEA,QAAA,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,KAAK,WAAW;AAChE,QAAA,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,KAAK,gBAAgB;AACzE,QAAA,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,KAAK,MAAM;AACtD,QAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,KAAK,kBAAkB;AACxE,QAAA,MAAM,eAAe,GAAG,eAAe,CAAC,OAAO,KAAK,QAAQ;;;AAI5D,QAAA,IAAI,aAAa,IAAI,YAAY,IAAI,aAAa,EAAE;YAChD,gBAAgB,CAAC,QAAQ,CAAC;QAC9B;AAAO,aAAA,IAAI,gBAAgB,IAAI,eAAe,EAAE;YAC5C,gBAAgB,CAAC,QAAQ,CAAC;QAC9B;AAEA,QAAA,kBAAkB,CAAC,OAAO,GAAG,WAAW;AACxC,QAAA,uBAAuB,CAAC,OAAO,GAAG,gBAAgB;AAClD,QAAA,aAAa,CAAC,OAAO,GAAG,MAAM;AAC9B,QAAA,gBAAgB,CAAC,OAAO,GAAG,kBAAkB;AAC7C,QAAA,eAAe,CAAC,OAAO,GAAG,QAAQ;AACtC,IAAA,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;AAC/F;;;;"}
|
|
@@ -6,13 +6,17 @@ var idResolution = require('../utils/idResolution.js');
|
|
|
6
6
|
var cardPosition = require('../utils/cardPosition.js');
|
|
7
7
|
var constants = require('../utils/constants.js');
|
|
8
8
|
|
|
9
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
10
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
9
11
|
function useCardSelection({ data, isPanning, selectedItem, zoomLevel, viewMode, layout, containerRef, spacerRef, containerDimensions, scrollPosition, preSelectionState, grouping, getItemId, resolveId, setZoomLevel, setIsZooming, setSelectedItem, setPreSelectionState, }) {
|
|
10
12
|
return React.useCallback((item, e, id) => {
|
|
11
13
|
if (isPanning)
|
|
12
14
|
return;
|
|
15
|
+
// Use the containerRef directly as the scrollable viewport
|
|
13
16
|
const container = containerRef.current;
|
|
14
17
|
if (!container)
|
|
15
18
|
return;
|
|
19
|
+
// Resolve item ID
|
|
16
20
|
let itemId = (id !== undefined && id !== null) ? id : resolveId(item, 0);
|
|
17
21
|
itemId = idResolution.normalizeIdToLayoutKey(itemId, layout);
|
|
18
22
|
const selectedId = selectedItem
|
|
@@ -22,15 +26,20 @@ function useCardSelection({ data, isPanning, selectedItem, zoomLevel, viewMode,
|
|
|
22
26
|
return idResolution.normalizeIdToLayoutKey(rawSelectedId, layout);
|
|
23
27
|
})()
|
|
24
28
|
: null;
|
|
29
|
+
// Get card position from layout
|
|
25
30
|
const cardPosition$1 = idResolution.getCardPositionFromLayout(itemId, layout, constants.BASE_CARD_WIDTH, constants.BASE_CARD_HEIGHT);
|
|
31
|
+
// Calculate target position for animation
|
|
26
32
|
let targetCardPosition = null;
|
|
27
33
|
let callbacks = { getCardPositionAtZoom: null, getLayoutSizeAtZoom: null };
|
|
28
34
|
let targetTotalHeight = layout.totalHeight;
|
|
29
35
|
if (viewMode === 'grouped' && cardPosition$1) {
|
|
36
|
+
// Calculate target zoom
|
|
30
37
|
const targetZoom = Math.min(constants.ZOOM_MAX, Math.max(constants.MIN_ZOOM_ON_SELECT, zoomLevel * constants.ZOOM_MULTIPLIER));
|
|
31
38
|
const targetContainerWidth = containerDimensions.width / targetZoom;
|
|
32
39
|
const targetContainerHeight = containerDimensions.height;
|
|
33
|
-
callbacks = cardPosition.createCardPositionCallbacks(itemId,
|
|
40
|
+
callbacks = cardPosition.createCardPositionCallbacks(itemId,
|
|
41
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
42
|
+
grouping, viewMode, targetContainerWidth, targetContainerHeight);
|
|
34
43
|
const targetPosition = callbacks.getCardPositionAtZoom(targetZoom);
|
|
35
44
|
if (targetPosition) {
|
|
36
45
|
targetCardPosition = targetPosition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCardSelection.js","sources":["../../../../PivotViewer/hooks/useCardSelection.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useCardSelection.js","sources":["../../../../PivotViewer/hooks/useCardSelection.ts"],"sourcesContent":[null],"names":["useCallback","normalizeIdToLayoutKey","cardPosition","getCardPositionFromLayout","BASE_CARD_WIDTH","BASE_CARD_HEIGHT","ZOOM_MAX","MIN_ZOOM_ON_SELECT","ZOOM_MULTIPLIER","createCardPositionCallbacks","handleCardSelection"],"mappings":"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"}
|
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
7
|
+
/**
|
|
8
|
+
* Hook to track container dimensions using ResizeObserver.
|
|
9
|
+
*
|
|
10
|
+
* @param containerRef - Ref to the container element.
|
|
11
|
+
* @param dependency - Optional dependency to trigger updates.
|
|
12
|
+
* @returns Dimensions of the container.
|
|
13
|
+
*/
|
|
5
14
|
function useContainerDimensions(containerRef, dependency) {
|
|
6
15
|
const [dimensions, setDimensions] = React.useState({ width: 1200, height: 600 });
|
|
7
16
|
React.useEffect(() => {
|
|
@@ -14,7 +23,9 @@ function useContainerDimensions(containerRef, dependency) {
|
|
|
14
23
|
height: container.clientHeight,
|
|
15
24
|
});
|
|
16
25
|
};
|
|
26
|
+
// Initial dimensions
|
|
17
27
|
updateDimensions();
|
|
28
|
+
// Observe for resize changes
|
|
18
29
|
const resizeObserver = new ResizeObserver(() => {
|
|
19
30
|
updateDimensions();
|
|
20
31
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useContainerDimensions.js","sources":["../../../../PivotViewer/hooks/useContainerDimensions.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useContainerDimensions.js","sources":["../../../../PivotViewer/hooks/useContainerDimensions.ts"],"sourcesContent":[null],"names":["useState","useEffect"],"mappings":";;;;AAAA;AACA;AAIA;;;;;;AAMG;AACG,SAAU,sBAAsB,CACpC,YAA6C,EAC7C,UAAoB,EAAA;AAEpB,IAAA,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAGA,cAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAE1EC,eAAS,CAAC,MAAK;AACb,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,IAAI,CAAC,SAAS;YAAE;QAEhB,MAAM,gBAAgB,GAAG,MAAK;AAC5B,YAAA,aAAa,CAAC;gBACZ,KAAK,EAAE,SAAS,CAAC,WAAW;gBAC5B,MAAM,EAAE,SAAS,CAAC,YAAY;AAC/B,aAAA,CAAC;AACJ,QAAA,CAAC;;AAGD,QAAA,gBAAgB,EAAE;;AAGlB,QAAA,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,MAAK;AAC7C,YAAA,gBAAgB,EAAE;AACpB,QAAA,CAAC,CAAC;AACF,QAAA,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;AAEjC,QAAA,OAAO,MAAK;YACV,cAAc,CAAC,UAAU,EAAE;AAC7B,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAE9B,IAAA,OAAO,UAAU;AACnB;;;;"}
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
7
|
function useCurrentFilters(filters, filterState, rangeFilterState, search, searchFields, dimensionFilter, activeDimension) {
|
|
6
8
|
return React.useMemo(() => {
|
|
7
9
|
const specs = [];
|
|
10
|
+
// Search filter
|
|
8
11
|
const searchTerm = search.trim().toLowerCase();
|
|
9
12
|
if (searchTerm && searchFields && searchFields.length > 0) ;
|
|
13
|
+
// Categorical filters
|
|
10
14
|
for (const [key, values] of Object.entries(filterState)) {
|
|
11
15
|
const valueSet = values;
|
|
12
16
|
if (valueSet.size > 0) {
|
|
@@ -17,6 +21,7 @@ function useCurrentFilters(filters, filterState, rangeFilterState, search, searc
|
|
|
17
21
|
});
|
|
18
22
|
}
|
|
19
23
|
}
|
|
24
|
+
// Range filters
|
|
20
25
|
for (const [key, range] of Object.entries(rangeFilterState)) {
|
|
21
26
|
if (range && (range[0] !== null || range[1] !== null)) {
|
|
22
27
|
const min = range[0] ?? -Infinity;
|
|
@@ -28,6 +33,7 @@ function useCurrentFilters(filters, filterState, rangeFilterState, search, searc
|
|
|
28
33
|
});
|
|
29
34
|
}
|
|
30
35
|
}
|
|
36
|
+
// Dimension filter (grouped filter)
|
|
31
37
|
if (dimensionFilter && activeDimension) {
|
|
32
38
|
specs.push({
|
|
33
39
|
field: activeDimension.key,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentFilters.js","sources":["../../../../PivotViewer/hooks/useCurrentFilters.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useCurrentFilters.js","sources":["../../../../PivotViewer/hooks/useCurrentFilters.ts"],"sourcesContent":[null],"names":["useMemo"],"mappings":";;;;AAAA;AACA;AAMM,SAAU,iBAAiB,CAC7B,OAAyC,EACzC,WAAwC,EACxC,gBAAuE,EACvE,MAAc,EACd,YAAmC,EACnC,eAA8B,EAC9B,eAAkD,EAAA;IAElD,OAAOA,aAAO,CAAC,MAAmB;QAC9B,MAAM,KAAK,GAAiB,EAAE;;QAG9B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;QAC9C,IAAI,UAAU,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;;AAM3D,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YACrD,MAAM,QAAQ,GAAG,MAAqB;AACtC,YAAA,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE;gBACnB,KAAK,CAAC,IAAI,CAAC;AACP,oBAAA,KAAK,EAAE,GAAG;AACV,oBAAA,IAAI,EAAE,aAAa;AACnB,oBAAA,MAAM,EAAE,QAAQ;AACnB,iBAAA,CAAC;YACN;QACJ;;AAGA,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;AACzD,YAAA,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE;gBACnD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;gBACjC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ;gBAChC,KAAK,CAAC,IAAI,CAAC;AACP,oBAAA,KAAK,EAAE,GAAG;AACV,oBAAA,IAAI,EAAE,SAAS;AACf,oBAAA,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;AACtB,iBAAA,CAAC;YACN;QACJ;;AAGA,QAAA,IAAI,eAAe,IAAI,eAAe,EAAE;YACpC,KAAK,CAAC,IAAI,CAAC;gBACP,KAAK,EAAE,eAAe,CAAC,GAAG;AAC1B,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC;AACrC,aAAA,CAAC;QACN;AAEA,QAAA,OAAO,KAAK;AAChB,IAAA,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;AAC/F;AAEM,SAAU,iBAAiB,CAC7B,kBAAiC,EACjC,UAAmC,EAAA;IAEnC,OAAOA,aAAO,CAAC,MAAgB;QAC3B,OAAO;YACH,KAAK,EAAE,kBAAkB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE;AACrD,YAAA,OAAO,EAAE,EAAE;SACd;AACL,IAAA,CAAC,EAAE,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AACxC;;;;;"}
|
|
@@ -6,27 +6,34 @@ var idResolution = require('../utils/idResolution.js');
|
|
|
6
6
|
var cardPosition = require('../utils/cardPosition.js');
|
|
7
7
|
var constants = require('../utils/constants.js');
|
|
8
8
|
|
|
9
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
10
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
9
11
|
function useDetailPanelClose({ selectedItem, preSelectionState, zoomLevel, viewMode, layout, containerRef, containerDimensions, grouping, data, resolveId, setZoomLevel, setIsZooming, setSelectedItem, setPreSelectionState, }) {
|
|
10
12
|
return React.useCallback(() => {
|
|
13
|
+
// Use the containerRef directly as the scrollable viewport
|
|
11
14
|
const container = containerRef.current;
|
|
12
15
|
if (!container || !selectedItem) {
|
|
13
16
|
setSelectedItem(null);
|
|
14
17
|
return;
|
|
15
18
|
}
|
|
19
|
+
// Resolve item ID
|
|
16
20
|
const index = data.indexOf(selectedItem);
|
|
17
21
|
let itemId = index !== -1 ? index : resolveId(selectedItem, 0);
|
|
18
22
|
itemId = idResolution.normalizeIdToLayoutKey(itemId, layout);
|
|
23
|
+
// Get card position from layout
|
|
19
24
|
const cardPosition$1 = idResolution.getCardPositionFromLayout(itemId, layout, constants.BASE_CARD_WIDTH, constants.BASE_CARD_HEIGHT);
|
|
20
25
|
if (!preSelectionState) {
|
|
21
26
|
setSelectedItem(null);
|
|
22
27
|
return;
|
|
23
28
|
}
|
|
29
|
+
// Collection mode: just scroll back
|
|
24
30
|
if (viewMode === 'collection') {
|
|
25
31
|
setSelectedItem(null);
|
|
26
32
|
animations.smoothScrollTo(container, preSelectionState.scrollLeft, preSelectionState.scrollTop, true);
|
|
27
33
|
setPreSelectionState(null);
|
|
28
34
|
return;
|
|
29
35
|
}
|
|
36
|
+
// Grouped mode: check if zoom changed
|
|
30
37
|
const zoomChanged = Math.abs(preSelectionState.zoom - zoomLevel) > 0.001;
|
|
31
38
|
if (!zoomChanged || !cardPosition$1) {
|
|
32
39
|
setSelectedItem(null);
|
|
@@ -34,10 +41,13 @@ function useDetailPanelClose({ selectedItem, preSelectionState, zoomLevel, viewM
|
|
|
34
41
|
setPreSelectionState(null);
|
|
35
42
|
return;
|
|
36
43
|
}
|
|
44
|
+
// Calculate target position for animation (zooming out)
|
|
37
45
|
const targetZoom = preSelectionState.zoom;
|
|
38
46
|
const targetContainerWidth = containerDimensions.width / targetZoom;
|
|
39
47
|
const targetContainerHeight = containerDimensions.height;
|
|
40
|
-
const callbacks = cardPosition.createCardPositionCallbacks(itemId,
|
|
48
|
+
const callbacks = cardPosition.createCardPositionCallbacks(itemId,
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
50
|
+
grouping, viewMode, targetContainerWidth, targetContainerHeight);
|
|
41
51
|
const targetCardPosition = callbacks.getCardPositionAtZoom(targetZoom);
|
|
42
52
|
setIsZooming(true);
|
|
43
53
|
animations.animateZoomAndScroll({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDetailPanelClose.js","sources":["../../../../PivotViewer/hooks/useDetailPanelClose.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useDetailPanelClose.js","sources":["../../../../PivotViewer/hooks/useDetailPanelClose.ts"],"sourcesContent":[null],"names":["useCallback","normalizeIdToLayoutKey","cardPosition","getCardPositionFromLayout","BASE_CARD_WIDTH","BASE_CARD_HEIGHT","smoothScrollTo","createCardPositionCallbacks","animateZoomAndScroll"],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
7
|
function useDimensionState(dimensions, defaultDimensionKey) {
|
|
6
8
|
const dimensionMap = React.useMemo(() => {
|
|
7
9
|
const map = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDimensionState.js","sources":["../../../../PivotViewer/hooks/useDimensionState.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useDimensionState.js","sources":["../../../../PivotViewer/hooks/useDimensionState.ts"],"sourcesContent":[null],"names":["useMemo","useState","useEffect","useCallback"],"mappings":";;;;AAAA;AACA;AAOM,SAAU,iBAAiB,CAC7B,UAAmC,EACnC,mBAA4B,EAAA;AAE5B,IAAA,MAAM,YAAY,GAAGA,aAAO,CAAC,MAAK;AAC9B,QAAA,MAAM,GAAG,GAAG,IAAI,GAAG,EAAiC;AACpD,QAAA,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACpE,QAAA,OAAO,GAAG;AACd,IAAA,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhB,IAAA,MAAM,gBAAgB,GAAGA,aAAO,CAAC,MAAK;QAClC,IAAI,mBAAmB,IAAI,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE;AAC9D,YAAA,OAAO,mBAAmB;QAC9B;QACA,OAAO,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE;IACnC,CAAC,EAAE,CAAC,mBAAmB,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAEnD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAGC,cAAQ,CAAC,gBAAgB,CAAC;IAC9E,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAGA,cAAQ,CAAgB,IAAI,CAAC;IAE3EC,eAAS,CAAC,MAAK;AACX,QAAA,qBAAqB,CAAC,CAAC,QAAQ,KAAI;YAC/B,IAAI,QAAQ,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;AACxC,gBAAA,OAAO,QAAQ;YACnB;AACA,YAAA,OAAO,gBAAgB;AAC3B,QAAA,CAAC,CAAC;QACF,kBAAkB,CAAC,IAAI,CAAC;AAC5B,IAAA,CAAC,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAEpC,IAAA,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;AAE7E,IAAA,MAAM,oBAAoB,GAAGC,iBAAW,CAAC,CAAC,QAAgB,KAAI;QAC1D,kBAAkB,CAAC,CAAC,IAAI,MAAM,IAAI,KAAK,QAAQ,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC;IACvE,CAAC,EAAE,EAAE,CAAC;IAEN,OAAO;QACH,YAAY;QACZ,kBAAkB;QAClB,qBAAqB;QACrB,eAAe;QACf,eAAe;QACf,oBAAoB;KACvB;AACL;;;;"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
7
|
function useFieldExtractors(dimensions, filters) {
|
|
6
8
|
const fieldExtractors = React.useMemo(() => {
|
|
7
9
|
const extractors = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFieldExtractors.js","sources":["../../../../PivotViewer/hooks/useFieldExtractors.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"useFieldExtractors.js","sources":["../../../../PivotViewer/hooks/useFieldExtractors.ts"],"sourcesContent":[null],"names":["useMemo"],"mappings":";;;;AAAA;AACA;AAMM,SAAU,kBAAkB,CAC9B,UAAmC,EACnC,OAA8B,EAAA;AAE9B,IAAA,MAAM,eAAe,GAAGA,aAAO,CAAC,MAAK;AACjC,QAAA,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuC;AAEjE,QAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;YAC1B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,KAAI;gBAC7B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC9B,IAAI,GAAG,YAAY,IAAI;AAAE,oBAAA,OAAO,GAAG,CAAC,OAAO,EAAE;AAC7C,gBAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;AAChG,oBAAA,OAAO,GAAG;gBACd;AACA,gBAAA,OAAO,MAAM,CAAC,GAAG,CAAC;AACtB,YAAA,CAAC,CAAC;QACN;QAEA,IAAI,OAAO,EAAE;AACT,YAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,KAAI;oBAChC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACjC,IAAI,GAAG,YAAY,IAAI;AAAE,wBAAA,OAAO,GAAG,CAAC,OAAO,EAAE;AAC7C,oBAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;AAChG,wBAAA,OAAO,GAAG;oBACd;AACA,oBAAA,OAAO,MAAM,CAAC,GAAG,CAAC;AACtB,gBAAA,CAAC,CAAC;YACN;QACJ;AAEA,QAAA,OAAO,UAAU;AACrB,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAEzB,IAAA,MAAM,WAAW,GAAGA,aAAO,CAAC,MAAK;AAC7B,QAAA,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU;AAEhC,QAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC1B,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACvB;QAEA,IAAI,OAAO,EAAE;AACT,YAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC1B,gBAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;YAC1B;QACJ;AAEA,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7B,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAEzB,IAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE;AAC3C;;;;"}
|