@cratis/components 2.9.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +128 -67
- package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.js +4 -4
- package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/CommandStepper.d.ts +18 -4
- package/dist/esm/CommandDialog/CommandStepper.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandStepper.js +51 -60
- package/dist/esm/CommandDialog/CommandStepper.js.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts +6 -7
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.js +18 -15
- package/dist/esm/CommandDialog/StepperCommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/StepperPanel.d.ts +10 -0
- package/dist/esm/CommandDialog/StepperPanel.d.ts.map +1 -0
- package/dist/esm/CommandDialog/StepperPanel.js +30 -0
- package/dist/esm/CommandDialog/StepperPanel.js.map +1 -0
- package/dist/esm/CommandDialog/index.d.ts +1 -0
- package/dist/esm/CommandDialog/index.d.ts.map +1 -1
- package/dist/esm/CommandDialog/index.js +1 -0
- package/dist/esm/CommandDialog/index.js.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/CalendarField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.js +2 -8
- package/dist/esm/CommandForm/fields/CalendarField.js.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.js +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.d.ts +4 -3
- package/dist/esm/CommandForm/fields/ChipsField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.js +3 -3
- package/dist/esm/CommandForm/fields/ChipsField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.js +16 -8
- package/dist/esm/CommandForm/fields/ColorPickerField.js.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.js +1 -4
- package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.js +2 -8
- package/dist/esm/CommandForm/fields/MultiSelectField.js.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/NumberField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.js +1 -1
- package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
- package/dist/esm/CommandForm/fields/PasswordField.d.ts +13 -0
- package/dist/esm/CommandForm/fields/PasswordField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/PasswordField.js +20 -0
- package/dist/esm/CommandForm/fields/PasswordField.js.map +1 -0
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.js +2 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.js +2 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RatingField.d.ts +14 -0
- package/dist/esm/CommandForm/fields/RatingField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/RatingField.js +19 -0
- package/dist/esm/CommandForm/fields/RatingField.js.map +1 -0
- package/dist/esm/CommandForm/fields/SliderField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/SliderField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/SliderField.js +1 -1
- package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts +3 -3
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.js +2 -2
- package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts +13 -0
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/ToggleSwitchField.js +20 -0
- package/dist/esm/CommandForm/fields/ToggleSwitchField.js.map +1 -0
- package/dist/esm/CommandForm/fields/index.d.ts +3 -0
- package/dist/esm/CommandForm/fields/index.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/index.js +3 -0
- package/dist/esm/CommandForm/fields/index.js.map +1 -1
- package/dist/esm/CommandForm/index.js +3 -0
- package/dist/esm/CommandForm/index.js.map +1 -1
- package/dist/esm/Common/ActionMenubar.d.ts +21 -0
- package/dist/esm/Common/ActionMenubar.d.ts.map +1 -0
- package/dist/esm/Common/ActionMenubar.js +20 -0
- package/dist/esm/Common/ActionMenubar.js.map +1 -0
- package/dist/esm/Common/CratisComponentsProvider.d.ts +5 -3
- package/dist/esm/Common/CratisComponentsProvider.d.ts.map +1 -1
- package/dist/esm/Common/CratisComponentsProvider.js +27 -11
- package/dist/esm/Common/CratisComponentsProvider.js.map +1 -1
- package/dist/esm/Common/DatePickerInput.d.ts +22 -0
- package/dist/esm/Common/DatePickerInput.d.ts.map +1 -0
- package/dist/esm/Common/DatePickerInput.js +18 -0
- package/dist/esm/Common/DatePickerInput.js.map +1 -0
- package/dist/esm/Common/FormElement.d.ts +0 -1
- package/dist/esm/Common/FormElement.d.ts.map +1 -1
- package/dist/esm/Common/FormElement.js +0 -1
- package/dist/esm/Common/FormElement.js.map +1 -1
- package/dist/esm/Common/Tooltip.d.ts +2 -2
- package/dist/esm/Common/Tooltip.d.ts.map +1 -1
- package/dist/esm/Common/Tooltip.js +25 -13
- package/dist/esm/Common/Tooltip.js.map +1 -1
- package/dist/esm/Common/index.d.ts +2 -0
- package/dist/esm/Common/index.d.ts.map +1 -1
- package/dist/esm/Common/index.js +2 -0
- package/dist/esm/Common/index.js.map +1 -1
- package/dist/esm/DataPage/DataPage.d.ts +17 -10
- package/dist/esm/DataPage/DataPage.d.ts.map +1 -1
- package/dist/esm/DataPage/DataPage.js +19 -18
- package/dist/esm/DataPage/DataPage.js.map +1 -1
- package/dist/esm/DataPage/index.d.ts +1 -0
- package/dist/esm/DataPage/index.d.ts.map +1 -1
- package/dist/esm/DataPage/index.js +1 -0
- package/dist/esm/DataPage/index.js.map +1 -1
- package/dist/esm/DataTables/Column.d.ts +25 -0
- package/dist/esm/DataTables/Column.d.ts.map +1 -0
- package/dist/esm/DataTables/Column.js +24 -0
- package/dist/esm/DataTables/Column.js.map +1 -0
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts +10 -0
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts.map +1 -0
- package/dist/esm/DataTables/ColumnFilterMenu.js +44 -0
- package/dist/esm/DataTables/ColumnFilterMenu.js.map +1 -0
- package/dist/esm/DataTables/DataTableCore.d.ts +33 -0
- package/dist/esm/DataTables/DataTableCore.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableCore.js +59 -0
- package/dist/esm/DataTables/DataTableCore.js.map +1 -0
- package/dist/esm/DataTables/DataTableFilterMeta.d.ts +6 -0
- package/dist/esm/DataTables/DataTableFilterMeta.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableFilterMeta.js +2 -0
- package/dist/esm/DataTables/DataTableFilterMeta.js.map +1 -0
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts +9 -8
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableForObservableQuery.js +41 -64
- package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.d.ts +9 -8
- package/dist/esm/DataTables/DataTableForQuery.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.js +17 -44
- package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableSelectionChangeEvent.d.ts +6 -0
- package/dist/esm/DataTables/DataTableSelectionChangeEvent.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableSelectionChangeEvent.js +2 -0
- package/dist/esm/DataTables/DataTableSelectionChangeEvent.js.map +1 -0
- package/dist/esm/DataTables/TablePaginator.d.ts +17 -0
- package/dist/esm/DataTables/TablePaginator.d.ts.map +1 -0
- package/dist/esm/DataTables/TablePaginator.js +22 -0
- package/dist/esm/DataTables/TablePaginator.js.map +1 -0
- package/dist/esm/DataTables/index.d.ts +4 -0
- package/dist/esm/DataTables/index.d.ts.map +1 -1
- package/dist/esm/DataTables/index.js +2 -0
- package/dist/esm/DataTables/index.js.map +1 -1
- package/dist/esm/DataTables/paginatorRange.d.ts +2 -0
- package/dist/esm/DataTables/paginatorRange.d.ts.map +1 -0
- package/dist/esm/DataTables/paginatorRange.js +21 -0
- package/dist/esm/DataTables/paginatorRange.js.map +1 -0
- package/dist/esm/DataTables/selectionKeys.d.ts +4 -0
- package/dist/esm/DataTables/selectionKeys.d.ts.map +1 -0
- package/dist/esm/DataTables/selectionKeys.js +34 -0
- package/dist/esm/DataTables/selectionKeys.js.map +1 -0
- package/dist/esm/Dialogs/BusyIndicatorDialog.d.ts.map +1 -1
- package/dist/esm/Dialogs/BusyIndicatorDialog.js +2 -2
- package/dist/esm/Dialogs/BusyIndicatorDialog.js.map +1 -1
- package/dist/esm/Dialogs/Dialog.d.ts +9 -7
- package/dist/esm/Dialogs/Dialog.d.ts.map +1 -1
- package/dist/esm/Dialogs/Dialog.js +45 -23
- package/dist/esm/Dialogs/Dialog.js.map +1 -1
- package/dist/esm/Display/Avatar.d.ts +11 -0
- package/dist/esm/Display/Avatar.d.ts.map +1 -0
- package/dist/esm/Display/Avatar.js +13 -0
- package/dist/esm/Display/Avatar.js.map +1 -0
- package/dist/esm/Display/Badge.d.ts +12 -0
- package/dist/esm/Display/Badge.d.ts.map +1 -0
- package/dist/esm/Display/Badge.js +11 -0
- package/dist/esm/Display/Badge.js.map +1 -0
- package/dist/esm/Display/Chip.d.ts +11 -0
- package/dist/esm/Display/Chip.d.ts.map +1 -0
- package/dist/esm/Display/Chip.js +11 -0
- package/dist/esm/Display/Chip.js.map +1 -0
- package/dist/esm/Display/ProgressBar.d.ts +8 -0
- package/dist/esm/Display/ProgressBar.d.ts.map +1 -0
- package/dist/esm/Display/ProgressBar.js +12 -0
- package/dist/esm/Display/ProgressBar.js.map +1 -0
- package/dist/esm/Display/Skeleton.d.ts +9 -0
- package/dist/esm/Display/Skeleton.d.ts.map +1 -0
- package/dist/esm/Display/Skeleton.js +18 -0
- package/dist/esm/Display/Skeleton.js.map +1 -0
- package/dist/esm/Display/Tag.d.ts +12 -0
- package/dist/esm/Display/Tag.d.ts.map +1 -0
- package/dist/esm/Display/Tag.js +12 -0
- package/dist/esm/Display/Tag.js.map +1 -0
- package/dist/esm/Display/index.d.ts +7 -0
- package/dist/esm/Display/index.d.ts.map +1 -0
- package/dist/esm/Display/index.js +10 -0
- package/dist/esm/Display/index.js.map +1 -0
- package/dist/esm/Dropdown/Dropdown.d.ts +33 -3
- package/dist/esm/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/Dropdown/Dropdown.js +15 -18
- package/dist/esm/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/Filter/FilterPanel.d.ts +3 -2
- package/dist/esm/Filter/FilterPanel.d.ts.map +1 -1
- package/dist/esm/Filter/FilterPanel.js +4 -5
- package/dist/esm/Filter/FilterPanel.js.map +1 -1
- package/dist/esm/Notifications/Toaster.d.ts +9 -0
- package/dist/esm/Notifications/Toaster.d.ts.map +1 -0
- package/dist/esm/Notifications/Toaster.js +43 -0
- package/dist/esm/Notifications/Toaster.js.map +1 -0
- package/dist/esm/Notifications/index.d.ts +4 -0
- package/dist/esm/Notifications/index.d.ts.map +1 -0
- package/dist/{cjs/types → esm/Notifications}/index.js +3 -5
- package/dist/esm/Notifications/index.js.map +1 -0
- package/dist/esm/Notifications/toast.d.ts +3 -0
- package/dist/esm/Notifications/toast.d.ts.map +1 -0
- package/dist/esm/Notifications/toast.js +2 -0
- package/dist/esm/Notifications/toast.js.map +1 -0
- package/dist/esm/Notifications/toastCommandResult.d.ts +11 -0
- package/dist/esm/Notifications/toastCommandResult.d.ts.map +1 -0
- package/dist/esm/Notifications/toastCommandResult.js +59 -0
- package/dist/esm/Notifications/toastCommandResult.js.map +1 -0
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts.map +1 -1
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.js +11 -15
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts +2 -2
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts.map +1 -1
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js +3 -3
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -1
- package/dist/esm/PivotViewer/PivotViewer.d.ts +0 -1
- package/dist/esm/PivotViewer/PivotViewer.d.ts.map +1 -1
- package/dist/esm/PivotViewer/PivotViewer.js +0 -1
- package/dist/esm/PivotViewer/PivotViewer.js.map +1 -1
- package/dist/esm/PivotViewer/components/Spinner.d.ts +0 -1
- package/dist/esm/PivotViewer/components/Spinner.d.ts.map +1 -1
- package/dist/esm/PivotViewer/components/Spinner.js +2 -1
- package/dist/esm/PivotViewer/components/Spinner.js.map +1 -1
- package/dist/esm/SchemaEditor/NameCell.d.ts.map +1 -1
- package/dist/esm/SchemaEditor/NameCell.js +3 -2
- package/dist/esm/SchemaEditor/NameCell.js.map +1 -1
- package/dist/esm/SchemaEditor/SchemaEditor.d.ts +15 -1
- package/dist/esm/SchemaEditor/SchemaEditor.d.ts.map +1 -1
- package/dist/esm/SchemaEditor/SchemaEditor.js +45 -32
- package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -1
- package/dist/esm/SchemaEditor/TypeCell.d.ts +3 -1
- package/dist/esm/SchemaEditor/TypeCell.d.ts.map +1 -1
- package/dist/esm/SchemaEditor/TypeCell.js +7 -6
- package/dist/esm/SchemaEditor/TypeCell.js.map +1 -1
- package/dist/esm/SchemaEditor/index.js +1 -1
- package/dist/esm/TimeMachine/EventsView.d.ts +5 -4
- package/dist/esm/TimeMachine/EventsView.d.ts.map +1 -1
- package/dist/esm/TimeMachine/EventsView.js +3 -3
- package/dist/esm/TimeMachine/EventsView.js.map +1 -1
- package/dist/esm/TimeMachine/Properties.d.ts +0 -1
- package/dist/esm/TimeMachine/Properties.d.ts.map +1 -1
- package/dist/esm/TimeMachine/Properties.js +0 -1
- package/dist/esm/TimeMachine/Properties.js.map +1 -1
- package/dist/esm/TimeMachine/ReadModelView.d.ts +2 -0
- package/dist/esm/TimeMachine/ReadModelView.d.ts.map +1 -1
- package/dist/esm/TimeMachine/ReadModelView.js +3 -2
- package/dist/esm/TimeMachine/ReadModelView.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachine.d.ts +4 -1
- package/dist/esm/TimeMachine/TimeMachine.d.ts.map +1 -1
- package/dist/esm/TimeMachine/TimeMachine.js +5 -4
- package/dist/esm/TimeMachine/TimeMachine.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachineLabels.d.ts +12 -0
- package/dist/esm/TimeMachine/TimeMachineLabels.d.ts.map +1 -0
- package/dist/esm/TimeMachine/TimeMachineLabels.js +16 -0
- package/dist/esm/TimeMachine/TimeMachineLabels.js.map +1 -0
- package/dist/esm/TimeMachine/index.d.ts +2 -0
- package/dist/esm/TimeMachine/index.d.ts.map +1 -1
- package/dist/esm/TimeMachine/index.js +1 -0
- package/dist/esm/TimeMachine/index.js.map +1 -1
- package/dist/esm/Toolbar/Toolbar.d.ts +0 -1
- package/dist/esm/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/esm/Toolbar/Toolbar.js +0 -1
- package/dist/esm/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +22 -18
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/styles.css +4686 -0
- package/dist/esm/theme.css +357 -0
- package/dist/esm/tokens.css +32 -12
- package/package.json +40 -26
- package/dist/cjs/CommandDialog/CommandDialog.js +0 -195
- package/dist/cjs/CommandDialog/CommandDialog.js.map +0 -1
- package/dist/cjs/CommandDialog/CommandStepper.css +0 -24
- package/dist/cjs/CommandDialog/CommandStepper.js +0 -238
- package/dist/cjs/CommandDialog/CommandStepper.js.map +0 -1
- package/dist/cjs/CommandDialog/StepperCommandDialog.js +0 -207
- package/dist/cjs/CommandDialog/StepperCommandDialog.js.map +0 -1
- package/dist/cjs/CommandDialog/applyBeforeExecute.js +0 -42
- package/dist/cjs/CommandDialog/applyBeforeExecute.js.map +0 -1
- package/dist/cjs/CommandDialog/index.js +0 -16
- package/dist/cjs/CommandDialog/index.js.map +0 -1
- package/dist/cjs/CommandDialog/stepChildren.js +0 -31
- package/dist/cjs/CommandDialog/stepChildren.js.map +0 -1
- package/dist/cjs/CommandForm/AutoCommandForm.js +0 -49
- package/dist/cjs/CommandForm/AutoCommandForm.js.map +0 -1
- package/dist/cjs/CommandForm/defaultFieldTypeProviders.js +0 -24
- package/dist/cjs/CommandForm/defaultFieldTypeProviders.js.map +0 -1
- package/dist/cjs/CommandForm/fieldTypeProviderRegistry.js +0 -36
- package/dist/cjs/CommandForm/fieldTypeProviderRegistry.js.map +0 -1
- package/dist/cjs/CommandForm/fields/CalendarField.js +0 -32
- package/dist/cjs/CommandForm/fields/CalendarField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/CheckboxField.js +0 -22
- package/dist/cjs/CommandForm/fields/CheckboxField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/ChipsField.js +0 -28
- package/dist/cjs/CommandForm/fields/ChipsField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/ColorPickerField.js +0 -33
- package/dist/cjs/CommandForm/fields/ColorPickerField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/DropdownField.js +0 -31
- package/dist/cjs/CommandForm/fields/DropdownField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/InputTextField.js +0 -53
- package/dist/cjs/CommandForm/fields/InputTextField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/MultiSelectField.js +0 -36
- package/dist/cjs/CommandForm/fields/MultiSelectField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/NumberField.js +0 -23
- package/dist/cjs/CommandForm/fields/NumberField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/RadioButtonField.js +0 -23
- package/dist/cjs/CommandForm/fields/RadioButtonField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/RadioGroupField.js +0 -40
- package/dist/cjs/CommandForm/fields/RadioGroupField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/SliderField.js +0 -22
- package/dist/cjs/CommandForm/fields/SliderField.js.map +0 -1
- package/dist/cjs/CommandForm/fields/TextAreaField.js +0 -24
- package/dist/cjs/CommandForm/fields/TextAreaField.js.map +0 -1
- package/dist/cjs/CommandForm/index.js +0 -37
- package/dist/cjs/CommandForm/index.js.map +0 -1
- package/dist/cjs/Common/CratisComponentsProvider.js +0 -44
- package/dist/cjs/Common/CratisComponentsProvider.js.map +0 -1
- package/dist/cjs/Common/ErrorBoundary.js +0 -58
- package/dist/cjs/Common/ErrorBoundary.js.map +0 -1
- package/dist/cjs/Common/FormElement.css +0 -26
- package/dist/cjs/Common/FormElement.js +0 -23
- package/dist/cjs/Common/FormElement.js.map +0 -1
- package/dist/cjs/Common/Icon.js +0 -33
- package/dist/cjs/Common/Icon.js.map +0 -1
- package/dist/cjs/Common/Page.js +0 -23
- package/dist/cjs/Common/Page.js.map +0 -1
- package/dist/cjs/Common/Tooltip.css +0 -10
- package/dist/cjs/Common/Tooltip.js +0 -21
- package/dist/cjs/Common/Tooltip.js.map +0 -1
- package/dist/cjs/Common/index.js +0 -23
- package/dist/cjs/Common/index.js.map +0 -1
- package/dist/cjs/Common/normalizeIconClass.js +0 -48
- package/dist/cjs/Common/normalizeIconClass.js.map +0 -1
- package/dist/cjs/DataPage/DataPage.js +0 -219
- package/dist/cjs/DataPage/DataPage.js.map +0 -1
- package/dist/cjs/DataPage/DataPageLayout.js +0 -34
- package/dist/cjs/DataPage/DataPageLayout.js.map +0 -1
- package/dist/cjs/DataPage/index.js +0 -12
- package/dist/cjs/DataPage/index.js.map +0 -1
- package/dist/cjs/DataTables/DataTableForObservableQuery.js +0 -133
- package/dist/cjs/DataTables/DataTableForObservableQuery.js.map +0 -1
- package/dist/cjs/DataTables/DataTableForQuery.js +0 -96
- package/dist/cjs/DataTables/DataTableForQuery.js.map +0 -1
- package/dist/cjs/DataTables/index.js +0 -11
- package/dist/cjs/DataTables/index.js.map +0 -1
- package/dist/cjs/Dialogs/BusyIndicatorDialog.js +0 -63
- package/dist/cjs/Dialogs/BusyIndicatorDialog.js.map +0 -1
- package/dist/cjs/Dialogs/ConfirmationDialog.js +0 -16
- package/dist/cjs/Dialogs/ConfirmationDialog.js.map +0 -1
- package/dist/cjs/Dialogs/Dialog.js +0 -203
- package/dist/cjs/Dialogs/Dialog.js.map +0 -1
- package/dist/cjs/Dialogs/DialogInitialFocus.js +0 -49
- package/dist/cjs/Dialogs/DialogInitialFocus.js.map +0 -1
- package/dist/cjs/Dialogs/index.js +0 -18
- package/dist/cjs/Dialogs/index.js.map +0 -1
- package/dist/cjs/Dropdown/Dropdown.js +0 -29
- package/dist/cjs/Dropdown/Dropdown.js.map +0 -1
- package/dist/cjs/Dropdown/index.js +0 -9
- package/dist/cjs/Dropdown/index.js.map +0 -1
- package/dist/cjs/Filter/FilterEditor.js +0 -28
- package/dist/cjs/Filter/FilterEditor.js.map +0 -1
- package/dist/cjs/Filter/FilterPanel.css +0 -459
- package/dist/cjs/Filter/FilterPanel.js +0 -109
- package/dist/cjs/Filter/FilterPanel.js.map +0 -1
- package/dist/cjs/Filter/RangeHistogramFilter.js +0 -121
- package/dist/cjs/Filter/RangeHistogramFilter.js.map +0 -1
- package/dist/cjs/Filter/index.js +0 -18
- package/dist/cjs/Filter/index.js.map +0 -1
- package/dist/cjs/Filter/useFilterState.js +0 -111
- package/dist/cjs/Filter/useFilterState.js.map +0 -1
- package/dist/cjs/Filter/utils.js +0 -28
- package/dist/cjs/Filter/utils.js.map +0 -1
- package/dist/cjs/ObjectContentEditor/ObjectContentEditor.js +0 -268
- package/dist/cjs/ObjectContentEditor/ObjectContentEditor.js.map +0 -1
- package/dist/cjs/ObjectContentEditor/index.js +0 -9
- package/dist/cjs/ObjectContentEditor/index.js.map +0 -1
- package/dist/cjs/ObjectContentEditor/objectHelpers.js +0 -25
- package/dist/cjs/ObjectContentEditor/objectHelpers.js.map +0 -1
- package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.css +0 -6
- package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.js +0 -49
- package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.js.map +0 -1
- package/dist/cjs/ObjectNavigationalBar/breadcrumbHelpers.js +0 -21
- package/dist/cjs/ObjectNavigationalBar/breadcrumbHelpers.js.map +0 -1
- package/dist/cjs/ObjectNavigationalBar/index.js +0 -9
- package/dist/cjs/ObjectNavigationalBar/index.js.map +0 -1
- package/dist/cjs/PivotViewer/PivotViewer.css +0 -1323
- package/dist/cjs/PivotViewer/PivotViewer.js +0 -307
- package/dist/cjs/PivotViewer/PivotViewer.js.map +0 -1
- package/dist/cjs/PivotViewer/components/AxisLabels.js +0 -28
- package/dist/cjs/PivotViewer/components/AxisLabels.js.map +0 -1
- package/dist/cjs/PivotViewer/components/DetailPanel.js +0 -42
- package/dist/cjs/PivotViewer/components/DetailPanel.js.map +0 -1
- package/dist/cjs/PivotViewer/components/FilterPanel.js +0 -29
- package/dist/cjs/PivotViewer/components/FilterPanel.js.map +0 -1
- package/dist/cjs/PivotViewer/components/FilterPanelContainer.js +0 -11
- package/dist/cjs/PivotViewer/components/FilterPanelContainer.js.map +0 -1
- package/dist/cjs/PivotViewer/components/PivotCanvas.js +0 -558
- package/dist/cjs/PivotViewer/components/PivotCanvas.js.map +0 -1
- package/dist/cjs/PivotViewer/components/PivotViewerMain.js +0 -98
- package/dist/cjs/PivotViewer/components/PivotViewerMain.js.map +0 -1
- package/dist/cjs/PivotViewer/components/Spinner.css +0 -77
- package/dist/cjs/PivotViewer/components/Spinner.js +0 -11
- package/dist/cjs/PivotViewer/components/Spinner.js.map +0 -1
- package/dist/cjs/PivotViewer/components/Toolbar.js +0 -44
- package/dist/cjs/PivotViewer/components/Toolbar.js.map +0 -1
- package/dist/cjs/PivotViewer/components/ToolbarContainer.js +0 -11
- package/dist/cjs/PivotViewer/components/ToolbarContainer.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/animation.js +0 -90
- package/dist/cjs/PivotViewer/components/pivot/animation.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/colorResolver.js +0 -66
- package/dist/cjs/PivotViewer/components/pivot/colorResolver.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/constants.js +0 -22
- package/dist/cjs/PivotViewer/components/pivot/constants.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/groups.js +0 -166
- package/dist/cjs/PivotViewer/components/pivot/groups.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/sprites.js +0 -279
- package/dist/cjs/PivotViewer/components/pivot/sprites.js.map +0 -1
- package/dist/cjs/PivotViewer/components/pivot/visibility.js +0 -359
- package/dist/cjs/PivotViewer/components/pivot/visibility.js.map +0 -1
- package/dist/cjs/PivotViewer/constants.js +0 -16
- package/dist/cjs/PivotViewer/constants.js.map +0 -1
- package/dist/cjs/PivotViewer/engine/layout.js +0 -123
- package/dist/cjs/PivotViewer/engine/layout.js.map +0 -1
- package/dist/cjs/PivotViewer/engine/store.js +0 -365
- package/dist/cjs/PivotViewer/engine/store.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useAnimationModeTracking.js +0 -45
- package/dist/cjs/PivotViewer/hooks/useAnimationModeTracking.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useCardSelection.js +0 -74
- package/dist/cjs/PivotViewer/hooks/useCardSelection.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useContainerDimensions.js +0 -41
- package/dist/cjs/PivotViewer/hooks/useContainerDimensions.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useCurrentFilters.js +0 -58
- package/dist/cjs/PivotViewer/hooks/useCurrentFilters.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useDetailPanelClose.js +0 -73
- package/dist/cjs/PivotViewer/hooks/useDetailPanelClose.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useDimensionState.js +0 -45
- package/dist/cjs/PivotViewer/hooks/useDimensionState.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useFieldExtractors.js +0 -52
- package/dist/cjs/PivotViewer/hooks/useFieldExtractors.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useFilterOptions.js +0 -26
- package/dist/cjs/PivotViewer/hooks/useFilterOptions.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useFilterState.js +0 -101
- package/dist/cjs/PivotViewer/hooks/useFilterState.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/usePanning.js +0 -138
- package/dist/cjs/PivotViewer/hooks/usePanning.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/usePivotEngine.js +0 -229
- package/dist/cjs/PivotViewer/hooks/usePivotEngine.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useScrollSync.js +0 -27
- package/dist/cjs/PivotViewer/hooks/useScrollSync.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useViewModeScrollHandling.js +0 -52
- package/dist/cjs/PivotViewer/hooks/useViewModeScrollHandling.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useWheelZoom.js +0 -106
- package/dist/cjs/PivotViewer/hooks/useWheelZoom.js.map +0 -1
- package/dist/cjs/PivotViewer/hooks/useZoomState.js +0 -37
- package/dist/cjs/PivotViewer/hooks/useZoomState.js.map +0 -1
- package/dist/cjs/PivotViewer/index.js +0 -13
- package/dist/cjs/PivotViewer/index.js.map +0 -1
- package/dist/cjs/PivotViewer/types.js +0 -33
- package/dist/cjs/PivotViewer/types.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/animations.js +0 -169
- package/dist/cjs/PivotViewer/utils/animations.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/cardPosition.js +0 -82
- package/dist/cjs/PivotViewer/utils/cardPosition.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/constants.js +0 -19
- package/dist/cjs/PivotViewer/utils/constants.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/idResolution.js +0 -50
- package/dist/cjs/PivotViewer/utils/idResolution.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/selection.js +0 -188
- package/dist/cjs/PivotViewer/utils/selection.js.map +0 -1
- package/dist/cjs/PivotViewer/utils/utils.js +0 -153
- package/dist/cjs/PivotViewer/utils/utils.js.map +0 -1
- package/dist/cjs/SchemaEditor/NameCell.js +0 -38
- package/dist/cjs/SchemaEditor/NameCell.js.map +0 -1
- package/dist/cjs/SchemaEditor/SchemaEditor.js +0 -333
- package/dist/cjs/SchemaEditor/SchemaEditor.js.map +0 -1
- package/dist/cjs/SchemaEditor/SchemaEditor.module.css +0 -15
- package/dist/cjs/SchemaEditor/TypeCell.js +0 -102
- package/dist/cjs/SchemaEditor/TypeCell.js.map +0 -1
- package/dist/cjs/SchemaEditor/index.js +0 -11
- package/dist/cjs/SchemaEditor/index.js.map +0 -1
- package/dist/cjs/SchemaEditor/schemaHelpers.js +0 -41
- package/dist/cjs/SchemaEditor/schemaHelpers.js.map +0 -1
- package/dist/cjs/TimeMachine/EventsView.css +0 -213
- package/dist/cjs/TimeMachine/EventsView.js +0 -70
- package/dist/cjs/TimeMachine/EventsView.js.map +0 -1
- package/dist/cjs/TimeMachine/Properties.css +0 -57
- package/dist/cjs/TimeMachine/Properties.js +0 -34
- package/dist/cjs/TimeMachine/Properties.js.map +0 -1
- package/dist/cjs/TimeMachine/ReadModelView.js +0 -51
- package/dist/cjs/TimeMachine/ReadModelView.js.map +0 -1
- package/dist/cjs/TimeMachine/TimeMachine.css +0 -587
- package/dist/cjs/TimeMachine/TimeMachine.js +0 -110
- package/dist/cjs/TimeMachine/TimeMachine.js.map +0 -1
- package/dist/cjs/TimeMachine/index.js +0 -15
- package/dist/cjs/TimeMachine/index.js.map +0 -1
- package/dist/cjs/TimeMachine/propertiesHelpers.js +0 -16
- package/dist/cjs/TimeMachine/propertiesHelpers.js.map +0 -1
- package/dist/cjs/Toolbar/Toolbar.css +0 -357
- package/dist/cjs/Toolbar/Toolbar.js +0 -15
- package/dist/cjs/Toolbar/Toolbar.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarButton.js +0 -42
- package/dist/cjs/Toolbar/ToolbarButton.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarContext.js +0 -14
- package/dist/cjs/Toolbar/ToolbarContext.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarDragContext.js +0 -24
- package/dist/cjs/Toolbar/ToolbarDragContext.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarFanOutItem.js +0 -75
- package/dist/cjs/Toolbar/ToolbarFanOutItem.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarFolder.js +0 -55
- package/dist/cjs/Toolbar/ToolbarFolder.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarFolderContext.js +0 -20
- package/dist/cjs/Toolbar/ToolbarFolderContext.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarGroup.js +0 -107
- package/dist/cjs/Toolbar/ToolbarGroup.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarLayout.js +0 -119
- package/dist/cjs/Toolbar/ToolbarLayout.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarSection.js +0 -127
- package/dist/cjs/Toolbar/ToolbarSection.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarSeparator.js +0 -14
- package/dist/cjs/Toolbar/ToolbarSeparator.js.map +0 -1
- package/dist/cjs/Toolbar/ToolbarSlot.js +0 -125
- package/dist/cjs/Toolbar/ToolbarSlot.js.map +0 -1
- package/dist/cjs/Toolbar/index.js +0 -29
- package/dist/cjs/Toolbar/index.js.map +0 -1
- package/dist/cjs/index.js +0 -41
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/package.json +0 -3
- package/dist/cjs/tailwind-utilities.css +0 -1159
- package/dist/cjs/tokens.css +0 -83
- package/dist/cjs/types/TypeFormat.js +0 -22
- package/dist/cjs/types/TypeFormat.js.map +0 -1
- package/dist/cjs/types/index.js.map +0 -1
- package/dist/cjs/useOverlayZIndex.js +0 -65
- package/dist/cjs/useOverlayZIndex.js.map +0 -1
- package/dist/esm/CommandDialog/CommandStepper.css +0 -24
- package/dist/esm/Common/FormElement.css +0 -26
- package/dist/esm/Common/Tooltip.css +0 -10
- package/dist/esm/Filter/FilterPanel.css +0 -459
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.css +0 -6
- package/dist/esm/PivotViewer/PivotViewer.css +0 -1323
- package/dist/esm/PivotViewer/components/Spinner.css +0 -77
- package/dist/esm/SchemaEditor/SchemaEditor.module.css +0 -15
- package/dist/esm/TimeMachine/EventsView.css +0 -213
- package/dist/esm/TimeMachine/Properties.css +0 -57
- package/dist/esm/TimeMachine/TimeMachine.css +0 -587
- package/dist/esm/Toolbar/Toolbar.css +0 -357
- package/dist/esm/tailwind-utilities.css +0 -1159
- package/dist/esm/tsconfig.tsbuildinfo +0 -1
- package/dist/esm/useOverlayZIndex.d.ts +0 -3
- package/dist/esm/useOverlayZIndex.d.ts.map +0 -1
- package/dist/esm/useOverlayZIndex.js +0 -62
- package/dist/esm/useOverlayZIndex.js.map +0 -1
- package/dist/esm/vite.config.d.ts +0 -3
- package/dist/esm/vite.config.d.ts.map +0 -1
- package/dist/esm/vite.config.js +0 -77
- package/dist/esm/vite.config.js.map +0 -1
- package/dist/esm/vitest.setup.d.ts +0 -2
- package/dist/esm/vitest.setup.d.ts.map +0 -1
- package/dist/esm/vitest.setup.js +0 -6
- package/dist/esm/vitest.setup.js.map +0 -1
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
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
|
-
function usePanning(containerRef, onBackgroundClick, onScrollChange) {
|
|
8
|
-
const [isPanning, setIsPanning] = React.useState(false);
|
|
9
|
-
const panStartRef = React.useRef(null);
|
|
10
|
-
const velocityRef = React.useRef({ x: 0, y: 0 });
|
|
11
|
-
const lastMouseRef = React.useRef(null);
|
|
12
|
-
const inertiaAnimationRef = React.useRef(null);
|
|
13
|
-
const didDragRef = React.useRef(false);
|
|
14
|
-
const clickedOnBackgroundRef = React.useRef(false);
|
|
15
|
-
const stopInertia = React.useCallback(() => {
|
|
16
|
-
if (inertiaAnimationRef.current) {
|
|
17
|
-
cancelAnimationFrame(inertiaAnimationRef.current);
|
|
18
|
-
inertiaAnimationRef.current = null;
|
|
19
|
-
}
|
|
20
|
-
}, []);
|
|
21
|
-
const handlePanStart = React.useCallback((e, isExplicitlyOnCard) => {
|
|
22
|
-
const container = containerRef.current;
|
|
23
|
-
if (!container)
|
|
24
|
-
return;
|
|
25
|
-
stopInertia();
|
|
26
|
-
const target = e.target;
|
|
27
|
-
// Check if explicitly on card (from Pixi) or via DOM (fallback)
|
|
28
|
-
const isOnCard = isExplicitlyOnCard ?? !!target.closest('.pv-card');
|
|
29
|
-
clickedOnBackgroundRef.current = !isOnCard;
|
|
30
|
-
didDragRef.current = false;
|
|
31
|
-
velocityRef.current = { x: 0, y: 0 };
|
|
32
|
-
if (e.button === 1 || (e.button === 0 && (e.altKey || !isOnCard))) {
|
|
33
|
-
if (!isOnCard) {
|
|
34
|
-
e.preventDefault?.();
|
|
35
|
-
}
|
|
36
|
-
setIsPanning(true);
|
|
37
|
-
panStartRef.current = {
|
|
38
|
-
x: e.clientX,
|
|
39
|
-
y: e.clientY,
|
|
40
|
-
scrollLeft: container.scrollLeft,
|
|
41
|
-
scrollTop: container.scrollTop,
|
|
42
|
-
};
|
|
43
|
-
lastMouseRef.current = { x: e.clientX, y: e.clientY, time: performance.now() };
|
|
44
|
-
}
|
|
45
|
-
}, [containerRef, stopInertia]);
|
|
46
|
-
const handlePanMove = React.useCallback((e) => {
|
|
47
|
-
const panStart = panStartRef.current;
|
|
48
|
-
if (!isPanning || !panStart)
|
|
49
|
-
return;
|
|
50
|
-
const dx = e.clientX - panStart.x;
|
|
51
|
-
const dy = e.clientY - panStart.y;
|
|
52
|
-
// Mark as dragged if moved more than 3 pixels
|
|
53
|
-
if (Math.abs(dx) > 3 || Math.abs(dy) > 3) {
|
|
54
|
-
didDragRef.current = true;
|
|
55
|
-
}
|
|
56
|
-
// Camera moves opposite to drag direction
|
|
57
|
-
const newCameraX = panStart.scrollLeft - dx;
|
|
58
|
-
const newCameraY = panStart.scrollTop - dy;
|
|
59
|
-
// Update camera position
|
|
60
|
-
// Update container scroll directly so the visual camera follows the drag
|
|
61
|
-
const container = containerRef.current;
|
|
62
|
-
if (container) {
|
|
63
|
-
// Constrain scroll position to prevent viewing beyond content bounds
|
|
64
|
-
const maxScrollLeft = Math.max(0, container.scrollWidth - container.clientWidth);
|
|
65
|
-
const maxScrollTop = Math.max(0, container.scrollHeight - container.clientHeight);
|
|
66
|
-
container.scrollLeft = Math.max(0, Math.min(maxScrollLeft, Math.round(newCameraX)));
|
|
67
|
-
container.scrollTop = Math.max(0, Math.min(maxScrollTop, Math.round(newCameraY)));
|
|
68
|
-
}
|
|
69
|
-
// Also notify parent about scroll change (keeps external state in sync)
|
|
70
|
-
if (onScrollChange) {
|
|
71
|
-
onScrollChange({ x: container ? container.scrollLeft : newCameraX, y: container ? container.scrollTop : newCameraY });
|
|
72
|
-
}
|
|
73
|
-
// Track velocity for inertia
|
|
74
|
-
const now = performance.now();
|
|
75
|
-
const last = lastMouseRef.current;
|
|
76
|
-
if (last) {
|
|
77
|
-
const dt = now - last.time;
|
|
78
|
-
if (dt > 0 && dt < 50) {
|
|
79
|
-
const instantVx = (last.x - e.clientX) / dt;
|
|
80
|
-
const instantVy = (last.y - e.clientY) / dt;
|
|
81
|
-
velocityRef.current = {
|
|
82
|
-
x: velocityRef.current.x * 0.5 + instantVx * 0.5,
|
|
83
|
-
y: velocityRef.current.y * 0.5 + instantVy * 0.5,
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
lastMouseRef.current = { x: e.clientX, y: e.clientY, time: now };
|
|
88
|
-
}, [isPanning, containerRef, onScrollChange]);
|
|
89
|
-
const handlePanEnd = React.useCallback(() => {
|
|
90
|
-
const wasPanning = isPanning;
|
|
91
|
-
const velocity = { ...velocityRef.current };
|
|
92
|
-
setIsPanning(false);
|
|
93
|
-
panStartRef.current = null;
|
|
94
|
-
// If clicked on background and didn't drag, trigger deselect
|
|
95
|
-
if (clickedOnBackgroundRef.current && !didDragRef.current && onBackgroundClick) ;
|
|
96
|
-
if (!wasPanning) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
const container = containerRef.current;
|
|
100
|
-
if (!container) {
|
|
101
|
-
lastMouseRef.current = null;
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
const speed = Math.sqrt(velocity.x * velocity.x + velocity.y * velocity.y);
|
|
105
|
-
// Start inertia if moving fast enough
|
|
106
|
-
if (speed > 0.3) {
|
|
107
|
-
let vx = velocity.x * 16;
|
|
108
|
-
let vy = velocity.y * 16;
|
|
109
|
-
const animate = () => {
|
|
110
|
-
const currentSpeed = Math.sqrt(vx * vx + vy * vy);
|
|
111
|
-
if (currentSpeed < 0.5) {
|
|
112
|
-
inertiaAnimationRef.current = null;
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
// Constrain scroll position to prevent viewing beyond content bounds
|
|
116
|
-
const maxScrollLeft = Math.max(0, container.scrollWidth - container.clientWidth);
|
|
117
|
-
const maxScrollTop = Math.max(0, container.scrollHeight - container.clientHeight);
|
|
118
|
-
container.scrollLeft = Math.max(0, Math.min(maxScrollLeft, container.scrollLeft + vx));
|
|
119
|
-
container.scrollTop = Math.max(0, Math.min(maxScrollTop, container.scrollTop + vy));
|
|
120
|
-
// Decay
|
|
121
|
-
vx *= 0.95;
|
|
122
|
-
vy *= 0.95;
|
|
123
|
-
inertiaAnimationRef.current = requestAnimationFrame(animate);
|
|
124
|
-
};
|
|
125
|
-
inertiaAnimationRef.current = requestAnimationFrame(animate);
|
|
126
|
-
}
|
|
127
|
-
lastMouseRef.current = null;
|
|
128
|
-
}, [isPanning, containerRef, onBackgroundClick]);
|
|
129
|
-
return {
|
|
130
|
-
isPanning,
|
|
131
|
-
handlePanStart,
|
|
132
|
-
handlePanMove,
|
|
133
|
-
handlePanEnd,
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
exports.usePanning = usePanning;
|
|
138
|
-
//# sourceMappingURL=usePanning.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usePanning.js","sources":["../../../../PivotViewer/hooks/usePanning.ts"],"sourcesContent":[null],"names":["useState","useRef","useCallback"],"mappings":"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"}
|
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var store = require('../engine/store.js');
|
|
5
|
-
|
|
6
|
-
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
7
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
8
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
9
|
-
function usePivotEngine({ data, fieldExtractors, indexFields, }) {
|
|
10
|
-
const [ready, setReady] = React.useState(false);
|
|
11
|
-
const [workerAvailable, setWorkerAvailable] = React.useState(false);
|
|
12
|
-
const workerRef = React.useRef(null);
|
|
13
|
-
const indexesRef = React.useRef(null);
|
|
14
|
-
const fallbackRef = React.useRef(false);
|
|
15
|
-
const storeRef = React.useRef(null);
|
|
16
|
-
const pendingCallbacksRef = React.useRef(new Map());
|
|
17
|
-
React.useEffect(() => {
|
|
18
|
-
if (typeof window === 'undefined' || typeof Worker === 'undefined') {
|
|
19
|
-
fallbackRef.current = true;
|
|
20
|
-
setWorkerAvailable(false);
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
const workerUrl = new URL('../engine/pivot.worker.js', (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('PivotViewer/hooks/usePivotEngine.js', document.baseURI).href)));
|
|
24
|
-
let disposed = false;
|
|
25
|
-
const enableFallback = () => {
|
|
26
|
-
fallbackRef.current = true;
|
|
27
|
-
workerRef.current = null;
|
|
28
|
-
setWorkerAvailable(false);
|
|
29
|
-
};
|
|
30
|
-
const setupWorker = async () => {
|
|
31
|
-
try {
|
|
32
|
-
if (typeof fetch === 'function') {
|
|
33
|
-
const response = await fetch(workerUrl, { method: 'HEAD' });
|
|
34
|
-
const contentType = response.headers.get('content-type') ?? '';
|
|
35
|
-
if (!response.ok || !contentType.includes('javascript')) {
|
|
36
|
-
enableFallback();
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch {
|
|
42
|
-
enableFallback();
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
if (disposed) {
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
const worker = new Worker(workerUrl, { type: 'module' });
|
|
49
|
-
workerRef.current = worker;
|
|
50
|
-
setWorkerAvailable(true);
|
|
51
|
-
worker.onmessage = (e) => {
|
|
52
|
-
const message = e.data;
|
|
53
|
-
switch (message.type) {
|
|
54
|
-
case 'indexesReady':
|
|
55
|
-
setReady(true);
|
|
56
|
-
break;
|
|
57
|
-
case 'filterResult': {
|
|
58
|
-
const callback = pendingCallbacksRef.current.get('filter');
|
|
59
|
-
if (callback) {
|
|
60
|
-
callback(message.result);
|
|
61
|
-
pendingCallbacksRef.current.delete('filter');
|
|
62
|
-
}
|
|
63
|
-
break;
|
|
64
|
-
}
|
|
65
|
-
case 'groupingResult': {
|
|
66
|
-
const callback = pendingCallbacksRef.current.get('grouping');
|
|
67
|
-
if (callback) {
|
|
68
|
-
callback(message.result);
|
|
69
|
-
pendingCallbacksRef.current.delete('grouping');
|
|
70
|
-
}
|
|
71
|
-
break;
|
|
72
|
-
}
|
|
73
|
-
case 'sortResult': {
|
|
74
|
-
const callback = pendingCallbacksRef.current.get('sort');
|
|
75
|
-
if (callback) {
|
|
76
|
-
callback(message.result);
|
|
77
|
-
pendingCallbacksRef.current.delete('sort');
|
|
78
|
-
}
|
|
79
|
-
break;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
worker.onerror = (error) => {
|
|
84
|
-
console.error('[PivotEngine] Worker error:', error);
|
|
85
|
-
enableFallback();
|
|
86
|
-
if (storeRef.current) {
|
|
87
|
-
try {
|
|
88
|
-
indexesRef.current = store.buildIndexes(storeRef.current, indexFields);
|
|
89
|
-
}
|
|
90
|
-
catch (e) {
|
|
91
|
-
console.error('[PivotEngine] Failed to build indexes in fallback:', e);
|
|
92
|
-
indexesRef.current = null;
|
|
93
|
-
}
|
|
94
|
-
setReady(true);
|
|
95
|
-
}
|
|
96
|
-
};
|
|
97
|
-
};
|
|
98
|
-
void setupWorker();
|
|
99
|
-
return () => {
|
|
100
|
-
disposed = true;
|
|
101
|
-
workerRef.current?.terminate();
|
|
102
|
-
workerRef.current = null;
|
|
103
|
-
};
|
|
104
|
-
}, [indexFields]);
|
|
105
|
-
React.useEffect(() => {
|
|
106
|
-
setReady(false);
|
|
107
|
-
const store$1 = store.buildStore(data, fieldExtractors);
|
|
108
|
-
storeRef.current = store$1;
|
|
109
|
-
try {
|
|
110
|
-
indexesRef.current = store.buildIndexes(store$1, indexFields);
|
|
111
|
-
}
|
|
112
|
-
catch (e) {
|
|
113
|
-
console.error('[PivotEngine] buildIndexes failed:', e);
|
|
114
|
-
indexesRef.current = null;
|
|
115
|
-
}
|
|
116
|
-
if (workerRef.current && !fallbackRef.current) {
|
|
117
|
-
const fieldsArray = Array.from(store$1.fields.entries());
|
|
118
|
-
const serializableStore = {
|
|
119
|
-
...store$1,
|
|
120
|
-
fields: fieldsArray,
|
|
121
|
-
};
|
|
122
|
-
const message = {
|
|
123
|
-
type: 'buildIndexes',
|
|
124
|
-
store: serializableStore,
|
|
125
|
-
fields: indexFields,
|
|
126
|
-
};
|
|
127
|
-
workerRef.current.postMessage(message);
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
setReady(true);
|
|
131
|
-
}
|
|
132
|
-
}, [data, fieldExtractors, indexFields, workerAvailable]);
|
|
133
|
-
const applyFiltersCallback = React.useCallback((filters) => {
|
|
134
|
-
return new Promise((resolve) => {
|
|
135
|
-
// If worker is not available, use synchronous fallback using local indexes
|
|
136
|
-
if (!workerRef.current || fallbackRef.current) {
|
|
137
|
-
try {
|
|
138
|
-
const store$1 = storeRef.current;
|
|
139
|
-
const indexes = indexesRef.current;
|
|
140
|
-
if (store$1 && indexes) {
|
|
141
|
-
const result = store.applyFilters(store$1, indexes, filters);
|
|
142
|
-
resolve(result);
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
catch (e) {
|
|
147
|
-
console.error('[PivotEngine] fallback applyFilters error:', e);
|
|
148
|
-
}
|
|
149
|
-
// if fallback not possible, return empty result
|
|
150
|
-
resolve({ visibleIds: new Uint32Array(0), count: 0 });
|
|
151
|
-
return;
|
|
152
|
-
}
|
|
153
|
-
pendingCallbacksRef.current.set('filter', resolve);
|
|
154
|
-
const message = {
|
|
155
|
-
type: 'applyFilters',
|
|
156
|
-
filters,
|
|
157
|
-
};
|
|
158
|
-
workerRef.current.postMessage(message);
|
|
159
|
-
});
|
|
160
|
-
}, [ready]);
|
|
161
|
-
const computeGroupingCallback = React.useCallback((visibleIds, groupBy) => {
|
|
162
|
-
// Check if there's already a pending grouping request
|
|
163
|
-
if (pendingCallbacksRef.current.has('grouping')) {
|
|
164
|
-
return Promise.resolve({ groups: [] });
|
|
165
|
-
}
|
|
166
|
-
return new Promise((resolve) => {
|
|
167
|
-
// synchronous fallback if worker unavailable
|
|
168
|
-
if (!workerRef.current || fallbackRef.current) {
|
|
169
|
-
try {
|
|
170
|
-
const store$1 = storeRef.current;
|
|
171
|
-
const indexes = indexesRef.current;
|
|
172
|
-
if (store$1 && indexes) {
|
|
173
|
-
const result = store.computeGrouping(store$1, indexes, visibleIds, groupBy);
|
|
174
|
-
resolve(result);
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
catch (e) {
|
|
179
|
-
console.error('[PivotEngine] fallback computeGrouping error:', e);
|
|
180
|
-
}
|
|
181
|
-
resolve({ groups: [] });
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
pendingCallbacksRef.current.set('grouping', resolve);
|
|
185
|
-
const message = {
|
|
186
|
-
type: 'computeGrouping',
|
|
187
|
-
visibleIds,
|
|
188
|
-
groupBy,
|
|
189
|
-
};
|
|
190
|
-
workerRef.current.postMessage(message);
|
|
191
|
-
});
|
|
192
|
-
}, [ready]);
|
|
193
|
-
const sortIdsCallback = React.useCallback((visibleIds, sortBy) => {
|
|
194
|
-
return new Promise((resolve) => {
|
|
195
|
-
// synchronous fallback if worker unavailable
|
|
196
|
-
if (!workerRef.current || fallbackRef.current) {
|
|
197
|
-
try {
|
|
198
|
-
const store$1 = storeRef.current;
|
|
199
|
-
if (store$1) {
|
|
200
|
-
const result = store.sortIds(store$1, visibleIds, sortBy);
|
|
201
|
-
resolve(result);
|
|
202
|
-
return;
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
catch (e) {
|
|
206
|
-
console.error('[PivotEngine] fallback sortIds error:', e);
|
|
207
|
-
}
|
|
208
|
-
resolve(visibleIds);
|
|
209
|
-
return;
|
|
210
|
-
}
|
|
211
|
-
pendingCallbacksRef.current.set('sort', resolve);
|
|
212
|
-
const message = {
|
|
213
|
-
type: 'sort',
|
|
214
|
-
ids: visibleIds,
|
|
215
|
-
sortBy,
|
|
216
|
-
};
|
|
217
|
-
workerRef.current.postMessage(message);
|
|
218
|
-
});
|
|
219
|
-
}, [ready]);
|
|
220
|
-
return {
|
|
221
|
-
ready,
|
|
222
|
-
applyFilters: applyFiltersCallback,
|
|
223
|
-
computeGrouping: computeGroupingCallback,
|
|
224
|
-
sortIds: sortIdsCallback,
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
exports.usePivotEngine = usePivotEngine;
|
|
229
|
-
//# sourceMappingURL=usePivotEngine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usePivotEngine.js","sources":["../../../../PivotViewer/hooks/usePivotEngine.ts"],"sourcesContent":[null],"names":["useState","useRef","useEffect","buildIndexes","store","buildStore","useCallback","applyFilters","computeGrouping","sortIds"],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
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
|
-
* Synchronizes axis labels scroll with container scroll
|
|
9
|
-
*/
|
|
10
|
-
function useScrollSync(containerRef, axisLabelsRef, viewMode) {
|
|
11
|
-
React.useEffect(() => {
|
|
12
|
-
const container = containerRef.current;
|
|
13
|
-
const axisLabels = axisLabelsRef.current;
|
|
14
|
-
if (!container || !axisLabels || viewMode !== 'grouped')
|
|
15
|
-
return;
|
|
16
|
-
const handleScroll = () => {
|
|
17
|
-
axisLabels.scrollLeft = container.scrollLeft;
|
|
18
|
-
};
|
|
19
|
-
// Sync immediately
|
|
20
|
-
handleScroll();
|
|
21
|
-
container.addEventListener('scroll', handleScroll);
|
|
22
|
-
return () => container.removeEventListener('scroll', handleScroll);
|
|
23
|
-
}, [viewMode, containerRef, axisLabelsRef]);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
exports.useScrollSync = useScrollSync;
|
|
27
|
-
//# sourceMappingURL=useScrollSync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useScrollSync.js","sources":["../../../../PivotViewer/hooks/useScrollSync.ts"],"sourcesContent":[null],"names":["useEffect"],"mappings":";;;;AAAA;AACA;AAKA;;AAEG;SACa,aAAa,CACzB,YAA6C,EAC7C,aAA8C,EAC9C,QAAkB,EAAA;IAElBA,eAAS,CAAC,MAAK;AACX,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO;QAExC,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,QAAQ,KAAK,SAAS;YAAE;QAEzD,MAAM,YAAY,GAAG,MAAK;AACtB,YAAA,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU;AAChD,QAAA,CAAC;;AAGD,QAAA,YAAY,EAAE;AAEd,QAAA,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC;QAClD,OAAO,MAAM,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC;IACtE,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;AAC/C;;;;"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var animations = require('../utils/animations.js');
|
|
5
|
-
var constants = require('../utils/constants.js');
|
|
6
|
-
var idResolution = require('../utils/idResolution.js');
|
|
7
|
-
|
|
8
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
9
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
10
|
-
/**
|
|
11
|
-
* Handles scroll positioning when switching view modes or grouping changes
|
|
12
|
-
*/
|
|
13
|
-
function useViewModeScrollHandling({ containerRef, viewMode, grouping, layout, selectedItem, zoomLevel, resolveId, data, setPreSelectionState, }) {
|
|
14
|
-
const lastProcessedViewMode = React.useRef(viewMode);
|
|
15
|
-
const lastProcessedGrouping = React.useRef(grouping);
|
|
16
|
-
React.useEffect(() => {
|
|
17
|
-
const viewModeChanged = lastProcessedViewMode.current !== viewMode;
|
|
18
|
-
const groupingChanged = lastProcessedGrouping.current !== grouping;
|
|
19
|
-
if (!viewModeChanged && !groupingChanged)
|
|
20
|
-
return;
|
|
21
|
-
lastProcessedViewMode.current = viewMode;
|
|
22
|
-
lastProcessedGrouping.current = grouping;
|
|
23
|
-
const container = containerRef.current;
|
|
24
|
-
if (!container)
|
|
25
|
-
return;
|
|
26
|
-
// If we have a selected item, keep it centered in the new layout
|
|
27
|
-
if (selectedItem) {
|
|
28
|
-
const index = data.indexOf(selectedItem);
|
|
29
|
-
let itemId = index !== -1 ? index : resolveId(selectedItem, 0);
|
|
30
|
-
itemId = idResolution.normalizeIdToLayoutKey(itemId, layout);
|
|
31
|
-
const cardPosition = idResolution.getCardPositionFromLayout(itemId, layout, constants.BASE_CARD_WIDTH, constants.BASE_CARD_HEIGHT);
|
|
32
|
-
if (cardPosition) {
|
|
33
|
-
const detailWidth = viewMode === 'collection' ? 0 : constants.DETAIL_PANEL_WIDTH;
|
|
34
|
-
const { scrollLeft, scrollTop } = animations.calculateCenterScrollPosition(container, cardPosition, zoomLevel, detailWidth, layout.totalHeight);
|
|
35
|
-
container.scrollTo({ left: scrollLeft, top: scrollTop });
|
|
36
|
-
setPreSelectionState(null);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
else if (viewMode === 'grouped') {
|
|
40
|
-
// Default behavior for grouped view: scroll to bottom to see the cards
|
|
41
|
-
// which are laid out from bottom-to-top. Use layout.totalHeight which is
|
|
42
|
-
// the authoritative height in world units, converted back to pixels.
|
|
43
|
-
const scrollToHeight = layout.totalHeight * zoomLevel - container.clientHeight;
|
|
44
|
-
const targetScrollTop = Math.max(0, scrollToHeight);
|
|
45
|
-
container.scrollTop = targetScrollTop;
|
|
46
|
-
container.scrollLeft = 0;
|
|
47
|
-
}
|
|
48
|
-
}, [viewMode, grouping, layout, selectedItem, resolveId, zoomLevel, containerRef, data, setPreSelectionState]);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
exports.useViewModeScrollHandling = useViewModeScrollHandling;
|
|
52
|
-
//# sourceMappingURL=useViewModeScrollHandling.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useViewModeScrollHandling.js","sources":["../../../../PivotViewer/hooks/useViewModeScrollHandling.ts"],"sourcesContent":[null],"names":["useRef","useEffect","normalizeIdToLayoutKey","getCardPositionFromLayout","BASE_CARD_WIDTH","BASE_CARD_HEIGHT","DETAIL_PANEL_WIDTH","calculateCenterScrollPosition"],"mappings":";;;;;;;AAAA;AACA;AAwBA;;AAEG;AACG,SAAU,yBAAyB,CAAuB,EAC5D,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,SAAS,EACT,SAAS,EACT,IAAI,EACJ,oBAAoB,GACiB,EAAA;AACrC,IAAA,MAAM,qBAAqB,GAAGA,YAAM,CAAC,QAAQ,CAAC;AAC9C,IAAA,MAAM,qBAAqB,GAAGA,YAAM,CAAC,QAAQ,CAAC;IAE9CC,eAAS,CAAC,MAAK;AACX,QAAA,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,KAAK,QAAQ;AAClE,QAAA,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,KAAK,QAAQ;AAElE,QAAA,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe;YAAE;AAE1C,QAAA,qBAAqB,CAAC,OAAO,GAAG,QAAQ;AACxC,QAAA,qBAAqB,CAAC,OAAO,GAAG,QAAQ;AAExC,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,IAAI,CAAC,SAAS;YAAE;;QAGhB,IAAI,YAAY,EAAE;YACd,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;AACxC,YAAA,IAAI,MAAM,GAAoB,KAAK,KAAK,EAAE,GAAG,KAAK,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;AAC/E,YAAA,MAAM,GAAGC,mCAAsB,CAAC,MAAM,EAAE,MAAM,CAAC;AAE/C,YAAA,MAAM,YAAY,GAAGC,sCAAyB,CAAC,MAAM,EAAE,MAAM,EAAEC,yBAAe,EAAEC,0BAAgB,CAAC;YAEjG,IAAI,YAAY,EAAE;AACd,gBAAA,MAAM,WAAW,GAAG,QAAQ,KAAK,YAAY,GAAG,CAAC,GAAGC,4BAAkB;gBAEtE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAGC,wCAA6B,CAC3D,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,EACX,MAAM,CAAC,WAAW,CACrB;AAED,gBAAA,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;gBACxD,oBAAoB,CAAC,IAAI,CAAC;YAC9B;QACA;AAAO,aAAA,IAAI,QAAQ,KAAK,SAAS,EAAE;;;;YAI/B,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,YAAY;YAC9E,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC;AACnD,YAAA,SAAS,CAAC,SAAS,GAAG,eAAe;AACrC,YAAA,SAAS,CAAC,UAAU,GAAG,CAAC;QAChC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;AAClH;;;;"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var utils = require('../utils/utils.js');
|
|
5
|
-
|
|
6
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
7
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
8
|
-
function useWheelZoom(containerRef, zoomLevel, setZoomLevel) {
|
|
9
|
-
const handleWheel = React.useCallback((e) => {
|
|
10
|
-
if (e.ctrlKey || e.metaKey) {
|
|
11
|
-
e.preventDefault();
|
|
12
|
-
const container = containerRef.current;
|
|
13
|
-
if (!container)
|
|
14
|
-
return;
|
|
15
|
-
container.style.scrollBehavior = 'auto';
|
|
16
|
-
const rect = container.getBoundingClientRect();
|
|
17
|
-
const cursorX = e.clientX - rect.left;
|
|
18
|
-
const cursorY = e.clientY - rect.top;
|
|
19
|
-
const scrollX = container.scrollLeft;
|
|
20
|
-
const scrollY = container.scrollTop;
|
|
21
|
-
// Normalize delta based on deltaMode:
|
|
22
|
-
// 0 = DOM_DELTA_PIXEL (trackpad pinch — deltaY is in pixels, small values)
|
|
23
|
-
// 1 = DOM_DELTA_LINE (mouse wheel — deltaY is in lines, typically 3)
|
|
24
|
-
// 2 = DOM_DELTA_PAGE (rare, treated same as pixel for safety)
|
|
25
|
-
let factor;
|
|
26
|
-
if (e.deltaMode === 1) {
|
|
27
|
-
factor = 0.12; // line-mode: each "line" gives a noticeable zoom step
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
factor = 0.01; // pixel-mode (trackpad pinch) and page-mode: fast zoom step
|
|
31
|
-
}
|
|
32
|
-
const delta = -e.deltaY * factor;
|
|
33
|
-
const newZoom = Math.max(utils.ZOOM_MIN, Math.min(utils.ZOOM_MAX, zoomLevel + delta));
|
|
34
|
-
const zoomRatio = newZoom / zoomLevel;
|
|
35
|
-
const newScrollLeft = (scrollX + cursorX) * zoomRatio - cursorX;
|
|
36
|
-
const newScrollTop = (scrollY + cursorY) * zoomRatio - cursorY;
|
|
37
|
-
setZoomLevel(newZoom);
|
|
38
|
-
setTimeout(() => {
|
|
39
|
-
container.scrollLeft = Math.max(0, newScrollLeft);
|
|
40
|
-
container.scrollTop = Math.max(0, newScrollTop);
|
|
41
|
-
setTimeout(() => {
|
|
42
|
-
container.style.scrollBehavior = '';
|
|
43
|
-
}, 50);
|
|
44
|
-
}, 0);
|
|
45
|
-
}
|
|
46
|
-
}, [zoomLevel, setZoomLevel, containerRef]);
|
|
47
|
-
React.useEffect(() => {
|
|
48
|
-
const container = containerRef.current;
|
|
49
|
-
if (!container)
|
|
50
|
-
return;
|
|
51
|
-
container.addEventListener('wheel', handleWheel, { passive: false });
|
|
52
|
-
let lastTouchDistance = 0;
|
|
53
|
-
let currentZoom = zoomLevel;
|
|
54
|
-
const handleTouchStart = (e) => {
|
|
55
|
-
if (e.touches.length === 2) {
|
|
56
|
-
const dx = e.touches[0].clientX - e.touches[1].clientX;
|
|
57
|
-
const dy = e.touches[0].clientY - e.touches[1].clientY;
|
|
58
|
-
lastTouchDistance = Math.sqrt(dx * dx + dy * dy);
|
|
59
|
-
currentZoom = zoomLevel;
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
const handleTouchMove = (e) => {
|
|
63
|
-
if (e.touches.length === 2) {
|
|
64
|
-
e.preventDefault();
|
|
65
|
-
const dx = e.touches[0].clientX - e.touches[1].clientX;
|
|
66
|
-
const dy = e.touches[0].clientY - e.touches[1].clientY;
|
|
67
|
-
const distance = Math.sqrt(dx * dx + dy * dy);
|
|
68
|
-
const centerX = (e.touches[0].clientX + e.touches[1].clientX) / 2;
|
|
69
|
-
const centerY = (e.touches[0].clientY + e.touches[1].clientY) / 2;
|
|
70
|
-
const rect = container.getBoundingClientRect();
|
|
71
|
-
const cursorX = centerX - rect.left;
|
|
72
|
-
const cursorY = centerY - rect.top;
|
|
73
|
-
if (lastTouchDistance > 0) {
|
|
74
|
-
const scale = distance / lastTouchDistance;
|
|
75
|
-
const newZoom = Math.max(utils.ZOOM_MIN, Math.min(utils.ZOOM_MAX, currentZoom * scale));
|
|
76
|
-
const zoomRatio = newZoom / zoomLevel;
|
|
77
|
-
const contentX = container.scrollLeft + cursorX;
|
|
78
|
-
const contentY = container.scrollTop + cursorY;
|
|
79
|
-
const newScrollLeft = contentX * zoomRatio - cursorX;
|
|
80
|
-
const newScrollTop = contentY * zoomRatio - cursorY;
|
|
81
|
-
setZoomLevel(newZoom);
|
|
82
|
-
requestAnimationFrame(() => {
|
|
83
|
-
container.scrollLeft = Math.max(0, newScrollLeft);
|
|
84
|
-
container.scrollTop = Math.max(0, newScrollTop);
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
lastTouchDistance = distance;
|
|
88
|
-
}
|
|
89
|
-
};
|
|
90
|
-
const handleTouchEnd = () => {
|
|
91
|
-
lastTouchDistance = 0;
|
|
92
|
-
};
|
|
93
|
-
container.addEventListener('touchstart', handleTouchStart, { passive: true });
|
|
94
|
-
container.addEventListener('touchmove', handleTouchMove, { passive: false });
|
|
95
|
-
container.addEventListener('touchend', handleTouchEnd, { passive: true });
|
|
96
|
-
return () => {
|
|
97
|
-
container.removeEventListener('wheel', handleWheel);
|
|
98
|
-
container.removeEventListener('touchstart', handleTouchStart);
|
|
99
|
-
container.removeEventListener('touchmove', handleTouchMove);
|
|
100
|
-
container.removeEventListener('touchend', handleTouchEnd);
|
|
101
|
-
};
|
|
102
|
-
}, [handleWheel, zoomLevel, setZoomLevel, containerRef]);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
exports.useWheelZoom = useWheelZoom;
|
|
106
|
-
//# sourceMappingURL=useWheelZoom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useWheelZoom.js","sources":["../../../../PivotViewer/hooks/useWheelZoom.ts"],"sourcesContent":[null],"names":["useCallback","ZOOM_MIN","ZOOM_MAX","useEffect"],"mappings":"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"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var utils = require('../utils/utils.js');
|
|
5
|
-
|
|
6
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
7
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
8
|
-
function useZoomState(initialZoom = 1) {
|
|
9
|
-
const [zoomLevel, setZoomLevel] = React.useState(initialZoom);
|
|
10
|
-
const handleZoomChange = React.useCallback((newZoom) => {
|
|
11
|
-
setZoomLevel(Math.max(utils.ZOOM_MIN, Math.min(utils.ZOOM_MAX, newZoom)));
|
|
12
|
-
}, []);
|
|
13
|
-
const handleZoomIn = React.useCallback(() => {
|
|
14
|
-
handleZoomChange(zoomLevel + 0.2);
|
|
15
|
-
}, [zoomLevel, handleZoomChange]);
|
|
16
|
-
const handleZoomOut = React.useCallback(() => {
|
|
17
|
-
handleZoomChange(zoomLevel - 0.2);
|
|
18
|
-
}, [zoomLevel, handleZoomChange]);
|
|
19
|
-
const handleZoomSlider = React.useCallback((e) => {
|
|
20
|
-
handleZoomChange(parseFloat(e.target.value));
|
|
21
|
-
}, [handleZoomChange]);
|
|
22
|
-
const handleZoomReset = React.useCallback(() => {
|
|
23
|
-
handleZoomChange(1);
|
|
24
|
-
}, [handleZoomChange]);
|
|
25
|
-
return {
|
|
26
|
-
zoomLevel,
|
|
27
|
-
setZoomLevel,
|
|
28
|
-
handleZoomChange,
|
|
29
|
-
handleZoomIn,
|
|
30
|
-
handleZoomOut,
|
|
31
|
-
handleZoomSlider,
|
|
32
|
-
handleZoomReset,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
exports.useZoomState = useZoomState;
|
|
37
|
-
//# sourceMappingURL=useZoomState.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useZoomState.js","sources":["../../../../PivotViewer/hooks/useZoomState.ts"],"sourcesContent":[null],"names":["useState","useCallback","ZOOM_MIN","ZOOM_MAX"],"mappings":";;;;;AAAA;AACA;AAKM,SAAU,YAAY,CAAC,WAAW,GAAG,CAAC,EAAA;IAC1C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAGA,cAAQ,CAAC,WAAW,CAAC;AAEvD,IAAA,MAAM,gBAAgB,GAAGC,iBAAW,CAAC,CAAC,OAAe,KAAI;AACvD,QAAA,YAAY,CAAC,IAAI,CAAC,GAAG,CAACC,cAAQ,EAAE,IAAI,CAAC,GAAG,CAACC,cAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,YAAY,GAAGF,iBAAW,CAAC,MAAK;AACpC,QAAA,gBAAgB,CAAC,SAAS,GAAG,GAAG,CAAC;AACnC,IAAA,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAEjC,IAAA,MAAM,aAAa,GAAGA,iBAAW,CAAC,MAAK;AACrC,QAAA,gBAAgB,CAAC,SAAS,GAAG,GAAG,CAAC;AACnC,IAAA,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAEjC,IAAA,MAAM,gBAAgB,GAAGA,iBAAW,CAAC,CAAC,CAAsC,KAAI;QAC9E,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9C,IAAA,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;AAEtB,IAAA,MAAM,eAAe,GAAGA,iBAAW,CAAC,MAAK;QACvC,gBAAgB,CAAC,CAAC,CAAC;AACrB,IAAA,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;IAEtB,OAAO;QACL,SAAS;QACT,YAAY;QACZ,gBAAgB;QAChB,YAAY;QACZ,aAAa;QACb,gBAAgB;QAChB,eAAe;KAChB;AACH;;;;"}
|