@cratis/components 2.9.1 → 3.1.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 +196 -66
- 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 +5 -0
- package/dist/esm/DataTables/index.d.ts.map +1 -1
- package/dist/esm/DataTables/index.js +3 -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,13 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var PivotViewer = require('./PivotViewer.js');
|
|
4
|
-
var types = require('./types.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
|
-
|
|
9
|
-
exports.PivotViewer = PivotViewer.PivotViewer;
|
|
10
|
-
exports.PivotViewerOptimized = PivotViewer.PivotViewer;
|
|
11
|
-
exports.getPropertyPath = types.getPropertyPath;
|
|
12
|
-
exports.getValueByPath = types.getValueByPath;
|
|
13
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../PivotViewer/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;AACA;;;;;;;"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
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
|
-
* Extract property path from a property accessor function
|
|
7
|
-
* Supports nested properties like item => item.address.city
|
|
8
|
-
*/
|
|
9
|
-
function getPropertyPath(accessor) {
|
|
10
|
-
const fnStr = accessor.toString();
|
|
11
|
-
// Match patterns like: item => item.prop or item => item.prop.nested or (item) => item.prop
|
|
12
|
-
const match = fnStr.match(/(?:=>|return)\s*[a-zA-Z_$][a-zA-Z0-9_$]*\.([a-zA-Z_$][a-zA-Z0-9_$.]*)/);
|
|
13
|
-
return match ? match[1] : '';
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Get the value from an item using a property path string
|
|
17
|
-
* Supports nested properties like "address.city"
|
|
18
|
-
*/
|
|
19
|
-
function getValueByPath(item, path) {
|
|
20
|
-
const parts = path.split('.');
|
|
21
|
-
let value = item;
|
|
22
|
-
for (const part of parts) {
|
|
23
|
-
if (value === null || value === undefined) {
|
|
24
|
-
return undefined;
|
|
25
|
-
}
|
|
26
|
-
value = value[part];
|
|
27
|
-
}
|
|
28
|
-
return value;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
exports.getPropertyPath = getPropertyPath;
|
|
32
|
-
exports.getValueByPath = getValueByPath;
|
|
33
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../PivotViewer/types.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;AAYA;;;AAGG;AACG,SAAU,eAAe,CAAQ,QAAiC,EAAA;AACpE,IAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE;;IAEjC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,uEAAuE,CAAC;AAClG,IAAA,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE;AAChC;AAEA;;;AAGG;AACG,SAAU,cAAc,CAAQ,IAAW,EAAE,IAAY,EAAA;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7B,IAAI,KAAK,GAAY,IAAI;AACzB,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AACvC,YAAA,OAAO,SAAS;QACpB;AACA,QAAA,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;IACvB;AACA,IAAA,OAAO,KAAK;AAChB;;;;;"}
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
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
|
-
const easeOutCubic = (t) => 1 - Math.pow(1 - t, 3);
|
|
6
|
-
/**
|
|
7
|
-
* Animate zoom and scroll together, keeping a specific element centered
|
|
8
|
-
*/
|
|
9
|
-
function animateZoomAndScroll({ container, cardPosition, targetCardPosition, getCardPositionAtZoom, getLayoutSizeAtZoom, spacer, startZoom, targetZoom, targetScrollLeft, targetScrollTop, duration = 300, easing = easeOutCubic, onUpdate, onComplete, startScrollLeft, startScrollTop, }) {
|
|
10
|
-
container.style.scrollBehavior = 'auto';
|
|
11
|
-
let startTime = null;
|
|
12
|
-
let rafId = null;
|
|
13
|
-
// Capture start scroll if not provided
|
|
14
|
-
const initialScrollLeft = startScrollLeft ?? container.scrollLeft;
|
|
15
|
-
const initialScrollTop = startScrollTop ?? container.scrollTop;
|
|
16
|
-
// Calculate initial center point relative to viewport
|
|
17
|
-
const startCardCenterX = cardPosition ? (cardPosition.x * startZoom + (cardPosition.width * startZoom) / 2) : 0;
|
|
18
|
-
const startCardCenterY = cardPosition ? (cardPosition.y * startZoom + (cardPosition.height * startZoom) / 2) : 0;
|
|
19
|
-
const startCardScreenX = startCardCenterX - initialScrollLeft;
|
|
20
|
-
const startCardScreenY = startCardCenterY - initialScrollTop;
|
|
21
|
-
const animate = (timestamp) => {
|
|
22
|
-
if (startTime === null) {
|
|
23
|
-
startTime = timestamp;
|
|
24
|
-
}
|
|
25
|
-
const elapsed = timestamp - startTime;
|
|
26
|
-
const progress = Math.min(1, elapsed / duration);
|
|
27
|
-
const easedProgress = easing(progress);
|
|
28
|
-
const currentZoom = startZoom + (targetZoom - startZoom) * easedProgress;
|
|
29
|
-
// Update spacer size synchronously if possible
|
|
30
|
-
if (spacer && getLayoutSizeAtZoom) {
|
|
31
|
-
const size = getLayoutSizeAtZoom(currentZoom);
|
|
32
|
-
if (size) {
|
|
33
|
-
spacer.style.width = `${size.width * currentZoom}px`;
|
|
34
|
-
spacer.style.height = `${size.height * currentZoom}px`;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
onUpdate(currentZoom);
|
|
38
|
-
if (cardPosition) {
|
|
39
|
-
let currentCardX;
|
|
40
|
-
let currentCardY;
|
|
41
|
-
if (getCardPositionAtZoom) {
|
|
42
|
-
const pos = getCardPositionAtZoom(currentZoom);
|
|
43
|
-
if (pos) {
|
|
44
|
-
currentCardX = pos.x;
|
|
45
|
-
currentCardY = pos.y;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
currentCardX = cardPosition.x;
|
|
49
|
-
currentCardY = cardPosition.y;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
// Interpolate card position if target is provided (for layouts that change with zoom)
|
|
54
|
-
currentCardX = targetCardPosition
|
|
55
|
-
? cardPosition.x + (targetCardPosition.x - cardPosition.x) * easedProgress
|
|
56
|
-
: cardPosition.x;
|
|
57
|
-
currentCardY = targetCardPosition
|
|
58
|
-
? cardPosition.y + (targetCardPosition.y - cardPosition.y) * easedProgress
|
|
59
|
-
: cardPosition.y;
|
|
60
|
-
}
|
|
61
|
-
// Calculate where the card center is at current zoom
|
|
62
|
-
const currentCardCenterX = currentCardX * currentZoom + (cardPosition.width * currentZoom) / 2;
|
|
63
|
-
const currentCardCenterY = currentCardY * currentZoom + (cardPosition.height * currentZoom) / 2;
|
|
64
|
-
// Calculate where the card center will be at the end of animation (relative to viewport)
|
|
65
|
-
// Target scroll position is where we want to end up
|
|
66
|
-
const endCardX = targetCardPosition ? targetCardPosition.x : cardPosition.x;
|
|
67
|
-
const endCardY = targetCardPosition ? targetCardPosition.y : cardPosition.y;
|
|
68
|
-
const endCardCenterX = endCardX * targetZoom + (cardPosition.width * targetZoom) / 2;
|
|
69
|
-
const endCardCenterY = endCardY * targetZoom + (cardPosition.height * targetZoom) / 2;
|
|
70
|
-
const endCardScreenX = endCardCenterX - targetScrollLeft;
|
|
71
|
-
const endCardScreenY = endCardCenterY - targetScrollTop;
|
|
72
|
-
// Interpolate the desired screen position
|
|
73
|
-
const desiredScreenX = startCardScreenX + (endCardScreenX - startCardScreenX) * easedProgress;
|
|
74
|
-
const desiredScreenY = startCardScreenY + (endCardScreenY - startCardScreenY) * easedProgress;
|
|
75
|
-
// Calculate needed scroll position to put card at desired screen position
|
|
76
|
-
const neededScrollLeft = currentCardCenterX - desiredScreenX;
|
|
77
|
-
const neededScrollTop = currentCardCenterY - desiredScreenY;
|
|
78
|
-
let maxScrollLeft = container.scrollWidth - container.clientWidth;
|
|
79
|
-
let maxScrollTop = container.scrollHeight - container.clientHeight;
|
|
80
|
-
// If we have explicit layout size, use it for clamping to avoid DOM sync issues
|
|
81
|
-
if (getLayoutSizeAtZoom) {
|
|
82
|
-
const size = getLayoutSizeAtZoom(currentZoom);
|
|
83
|
-
if (size) {
|
|
84
|
-
maxScrollLeft = Math.max(0, size.width * currentZoom - container.clientWidth);
|
|
85
|
-
maxScrollTop = Math.max(0, size.height * currentZoom - container.clientHeight);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
// We can't clamp strictly during animation because the scrollWidth/Height might not have updated yet
|
|
89
|
-
// if the spacer hasn't resized. But usually spacer resizes immediately on zoom update.
|
|
90
|
-
// For safety, we just set it.
|
|
91
|
-
container.scrollLeft = Math.min(Math.max(0, neededScrollLeft), maxScrollLeft);
|
|
92
|
-
container.scrollTop = Math.min(Math.max(0, neededScrollTop), maxScrollTop);
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
// If no card position, just interpolate scroll position
|
|
96
|
-
// Use captured initial scroll positions for linear interpolation
|
|
97
|
-
const currentScrollLeft = initialScrollLeft + (targetScrollLeft - initialScrollLeft) * easedProgress;
|
|
98
|
-
const currentScrollTop = initialScrollTop + (targetScrollTop - initialScrollTop) * easedProgress;
|
|
99
|
-
container.scrollLeft = currentScrollLeft;
|
|
100
|
-
container.scrollTop = currentScrollTop;
|
|
101
|
-
}
|
|
102
|
-
if (progress < 1) {
|
|
103
|
-
rafId = requestAnimationFrame(animate);
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
container.style.scrollBehavior = '';
|
|
107
|
-
container.scrollLeft = targetScrollLeft;
|
|
108
|
-
container.scrollTop = targetScrollTop;
|
|
109
|
-
onComplete?.();
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
rafId = requestAnimationFrame(animate);
|
|
113
|
-
return () => {
|
|
114
|
-
if (rafId !== null) {
|
|
115
|
-
cancelAnimationFrame(rafId);
|
|
116
|
-
container.style.scrollBehavior = '';
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Calculate scroll position to center a card in viewport, accounting for detail panel
|
|
122
|
-
*/
|
|
123
|
-
function calculateCenterScrollPosition(container, cardPosition, zoomLevel, detailPanelWidth = 0, totalHeight) {
|
|
124
|
-
const cardCenterX = cardPosition.x * zoomLevel + (cardPosition.width * zoomLevel) / 2;
|
|
125
|
-
const cardCenterY = cardPosition.y * zoomLevel + (cardPosition.height * zoomLevel) / 2;
|
|
126
|
-
const cardBottomY = (cardPosition.y + cardPosition.height) * zoomLevel;
|
|
127
|
-
const availableWidth = container.clientWidth - detailPanelWidth;
|
|
128
|
-
const targetX = availableWidth / 2;
|
|
129
|
-
// For vertical centering, prefer putting the card center at viewport center.
|
|
130
|
-
// But ensure the card bottom stays visible (at least 20% from viewport bottom).
|
|
131
|
-
const viewportHeight = container.clientHeight;
|
|
132
|
-
const targetYCenter = viewportHeight / 2;
|
|
133
|
-
const targetYForBottom = viewportHeight * 0.7; // Card center should be at most 70% down
|
|
134
|
-
const scrollLeft = Math.max(0, cardCenterX - targetX);
|
|
135
|
-
// Calculate scroll needed to center the card
|
|
136
|
-
const scrollTopForCenter = cardCenterY - targetYCenter;
|
|
137
|
-
// Calculate scroll that ensures card bottom is visible with some margin
|
|
138
|
-
const scrollTopForBottomVisible = cardBottomY - viewportHeight + 50; // 50px margin from bottom
|
|
139
|
-
// If centering would push the card bottom out of view, use the bottom-visible scroll
|
|
140
|
-
let scrollTop = scrollTopForCenter;
|
|
141
|
-
if (scrollTopForCenter > scrollTopForBottomVisible + (cardPosition.height * zoomLevel / 2)) {
|
|
142
|
-
// Card is near bottom of content, adjust to keep it visible
|
|
143
|
-
scrollTop = Math.max(0, cardCenterY - targetYForBottom);
|
|
144
|
-
}
|
|
145
|
-
scrollTop = Math.max(0, scrollTop);
|
|
146
|
-
// If totalHeight is provided, clamp to valid scroll range
|
|
147
|
-
if (totalHeight) {
|
|
148
|
-
const contentHeight = totalHeight * zoomLevel;
|
|
149
|
-
const maxScrollTop = Math.max(0, contentHeight - viewportHeight);
|
|
150
|
-
scrollTop = Math.min(scrollTop, maxScrollTop);
|
|
151
|
-
}
|
|
152
|
-
return { scrollLeft, scrollTop };
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Smooth scroll to position
|
|
156
|
-
*/
|
|
157
|
-
function smoothScrollTo(container, scrollLeft, scrollTop, smooth = true) {
|
|
158
|
-
container.scrollTo({
|
|
159
|
-
left: scrollLeft,
|
|
160
|
-
top: scrollTop,
|
|
161
|
-
behavior: smooth ? 'smooth' : 'auto',
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
exports.animateZoomAndScroll = animateZoomAndScroll;
|
|
166
|
-
exports.calculateCenterScrollPosition = calculateCenterScrollPosition;
|
|
167
|
-
exports.easeOutCubic = easeOutCubic;
|
|
168
|
-
exports.smoothScrollTo = smoothScrollTo;
|
|
169
|
-
//# sourceMappingURL=animations.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"animations.js","sources":["../../../../PivotViewer/utils/animations.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var layout = require('../engine/layout.js');
|
|
4
|
-
var constants = require('../constants.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
|
-
/**
|
|
9
|
-
* Computes the card position at a specific zoom level
|
|
10
|
-
*/
|
|
11
|
-
function getCardPositionAtZoom(zoom, itemId, grouping, viewMode, containerWidth, containerHeight) {
|
|
12
|
-
const scaledContainerWidth = containerWidth / zoom;
|
|
13
|
-
const scaledContainerHeight = viewMode === 'collection'
|
|
14
|
-
? containerHeight / zoom
|
|
15
|
-
: containerHeight;
|
|
16
|
-
const layout$1 = layout.computeLayout(
|
|
17
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
18
|
-
grouping, {
|
|
19
|
-
viewMode,
|
|
20
|
-
cardWidth: constants.BASE_CARD_WIDTH,
|
|
21
|
-
cardHeight: constants.BASE_CARD_HEIGHT,
|
|
22
|
-
cardsPerColumn: constants.CARDS_PER_COLUMN,
|
|
23
|
-
containerWidth: scaledContainerWidth,
|
|
24
|
-
containerHeight: scaledContainerHeight,
|
|
25
|
-
});
|
|
26
|
-
const position = layout$1.positions.get(itemId);
|
|
27
|
-
if (!position) {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
return {
|
|
31
|
-
x: position.x,
|
|
32
|
-
y: position.y,
|
|
33
|
-
width: constants.BASE_CARD_WIDTH,
|
|
34
|
-
height: constants.BASE_CARD_HEIGHT,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Computes layout size at a specific zoom level
|
|
39
|
-
*/
|
|
40
|
-
function getLayoutSizeAtZoom(zoom, grouping, viewMode, containerWidth, containerHeight) {
|
|
41
|
-
if (viewMode === 'collection') {
|
|
42
|
-
const layout$1 = layout.computeLayout(
|
|
43
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
44
|
-
grouping, {
|
|
45
|
-
viewMode,
|
|
46
|
-
cardWidth: constants.BASE_CARD_WIDTH,
|
|
47
|
-
cardHeight: constants.BASE_CARD_HEIGHT,
|
|
48
|
-
cardsPerColumn: constants.CARDS_PER_COLUMN,
|
|
49
|
-
containerWidth,
|
|
50
|
-
containerHeight,
|
|
51
|
-
});
|
|
52
|
-
return { width: layout$1.totalWidth, height: layout$1.totalHeight };
|
|
53
|
-
}
|
|
54
|
-
const scaledContainerWidth = containerWidth / zoom;
|
|
55
|
-
const scaledContainerHeight = containerHeight;
|
|
56
|
-
const layout$1 = layout.computeLayout(
|
|
57
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
58
|
-
grouping, {
|
|
59
|
-
viewMode,
|
|
60
|
-
cardWidth: constants.BASE_CARD_WIDTH,
|
|
61
|
-
cardHeight: constants.BASE_CARD_HEIGHT,
|
|
62
|
-
cardsPerColumn: constants.CARDS_PER_COLUMN,
|
|
63
|
-
containerWidth: scaledContainerWidth,
|
|
64
|
-
containerHeight: scaledContainerHeight,
|
|
65
|
-
});
|
|
66
|
-
return { width: layout$1.totalWidth, height: layout$1.totalHeight };
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Creates callback functions for card position calculations at various zoom levels
|
|
70
|
-
* Used for smooth animations during zoom and pan operations
|
|
71
|
-
*/
|
|
72
|
-
function createCardPositionCallbacks(itemId, grouping, viewMode, containerWidth, containerHeight) {
|
|
73
|
-
return {
|
|
74
|
-
getCardPositionAtZoom: (zoom) => getCardPositionAtZoom(zoom, itemId, grouping, viewMode, containerWidth, containerHeight),
|
|
75
|
-
getLayoutSizeAtZoom: (zoom) => getLayoutSizeAtZoom(zoom, grouping, viewMode, containerWidth, containerHeight),
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
exports.createCardPositionCallbacks = createCardPositionCallbacks;
|
|
80
|
-
exports.getCardPositionAtZoom = getCardPositionAtZoom;
|
|
81
|
-
exports.getLayoutSizeAtZoom = getLayoutSizeAtZoom;
|
|
82
|
-
//# sourceMappingURL=cardPosition.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cardPosition.js","sources":["../../../../PivotViewer/utils/cardPosition.ts"],"sourcesContent":[null],"names":["layout","computeLayout","BASE_CARD_WIDTH","BASE_CARD_HEIGHT","CARDS_PER_COLUMN"],"mappings":";;;;;AAAA;AACA;AAgBA;;AAEG;AACG,SAAU,qBAAqB,CACjC,IAAY,EACZ,MAAuB,EACvB,QAAwB,EACxB,QAAkB,EAClB,cAAsB,EACtB,eAAuB,EAAA;AAEvB,IAAA,MAAM,oBAAoB,GAAG,cAAc,GAAG,IAAI;AAClD,IAAA,MAAM,qBAAqB,GAAG,QAAQ,KAAK;UACrC,eAAe,GAAG;UAClB,eAAe;IAErB,MAAMA,QAAM,GAAGC,oBAAa;;AAExB,IAAA,QAA0B,EAAE;QAC5B,QAAQ;AACR,QAAA,SAAS,EAAEC,yBAAe;AAC1B,QAAA,UAAU,EAAEC,0BAAgB;AAC5B,QAAA,cAAc,EAAEC,0BAAgB;AAChC,QACA,cAAc,EAAE,oBAAoB;AACpC,QAAA,eAAe,EAAE,qBAAqB;AACzC,KAAA,CAAC;IAEF,MAAM,QAAQ,GAAGJ,QAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;IAC7C,IAAI,CAAC,QAAQ,EAAE;AACX,QAAA,OAAO,IAAI;IACf;IAEA,OAAO;QACH,CAAC,EAAE,QAAQ,CAAC,CAAC;QACb,CAAC,EAAE,QAAQ,CAAC,CAAC;AACb,QAAA,KAAK,EAAEE,yBAAe;AACtB,QAAA,MAAM,EAAEC,0BAAgB;KAC3B;AACL;AAEA;;AAEG;AACG,SAAU,mBAAmB,CAC/B,IAAY,EACZ,QAAwB,EACxB,QAAkB,EAClB,cAAsB,EACtB,eAAuB,EAAA;AAEvB,IAAA,IAAI,QAAQ,KAAK,YAAY,EAAE;QAC3B,MAAMH,QAAM,GAAGC,oBAAa;;AAExB,QAAA,QAA0B,EAAE;YAC5B,QAAQ;AACR,YAAA,SAAS,EAAEC,yBAAe;AAC1B,YAAA,UAAU,EAAEC,0BAAgB;AAC5B,YAAA,cAAc,EAAEC,0BAAgB;AAChC,YACA,cAAc;YACd,eAAe;AAClB,SAAA,CAAC;AACF,QAAA,OAAO,EAAE,KAAK,EAAEJ,QAAM,CAAC,UAAU,EAAE,MAAM,EAAEA,QAAM,CAAC,WAAW,EAAE;IACnE;AAEA,IAAA,MAAM,oBAAoB,GAAG,cAAc,GAAG,IAAI;IAClD,MAAM,qBAAqB,GAAG,eAAe;IAE7C,MAAMA,QAAM,GAAGC,oBAAa;;AAExB,IAAA,QAA0B,EAAE;QAC5B,QAAQ;AACR,QAAA,SAAS,EAAEC,yBAAe;AAC1B,QAAA,UAAU,EAAEC,0BAAgB;AAC5B,QAAA,cAAc,EAAEC,0BAAgB;AAChC,QACA,cAAc,EAAE,oBAAoB;AACpC,QAAA,eAAe,EAAE,qBAAqB;AACzC,KAAA,CAAC;AAEF,IAAA,OAAO,EAAE,KAAK,EAAEJ,QAAM,CAAC,UAAU,EAAE,MAAM,EAAEA,QAAM,CAAC,WAAW,EAAE;AACnE;AAEA;;;AAGG;AACG,SAAU,2BAA2B,CACvC,MAAuB,EACvB,QAAwB,EACxB,QAAkB,EAClB,cAAsB,EACtB,eAAuB,EAAA;IAEvB,OAAO;AACH,QAAA,qBAAqB,EAAE,CAAC,IAAY,KAChC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,CAAC;AAE5F,QAAA,mBAAmB,EAAE,CAAC,IAAY,KAC9B,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,CAAC;KACrF;AACL;;;;;;"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
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
|
-
// Zoom constants
|
|
6
|
-
const ZOOM_MAX = 3;
|
|
7
|
-
const BASE_CARD_WIDTH = 200;
|
|
8
|
-
const BASE_CARD_HEIGHT = 176;
|
|
9
|
-
const DETAIL_PANEL_WIDTH = 380;
|
|
10
|
-
const ZOOM_MULTIPLIER = 1.2;
|
|
11
|
-
const MIN_ZOOM_ON_SELECT = 1.2;
|
|
12
|
-
|
|
13
|
-
exports.BASE_CARD_HEIGHT = BASE_CARD_HEIGHT;
|
|
14
|
-
exports.BASE_CARD_WIDTH = BASE_CARD_WIDTH;
|
|
15
|
-
exports.DETAIL_PANEL_WIDTH = DETAIL_PANEL_WIDTH;
|
|
16
|
-
exports.MIN_ZOOM_ON_SELECT = MIN_ZOOM_ON_SELECT;
|
|
17
|
-
exports.ZOOM_MAX = ZOOM_MAX;
|
|
18
|
-
exports.ZOOM_MULTIPLIER = ZOOM_MULTIPLIER;
|
|
19
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../../PivotViewer/utils/constants.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;AAEA;AAEO,MAAM,QAAQ,GAAG;AAOjB,MAAM,eAAe,GAAG;AACxB,MAAM,gBAAgB,GAAG;AACzB,MAAM,kBAAkB,GAAG;AAI3B,MAAM,eAAe,GAAG;AACxB,MAAM,kBAAkB,GAAG;;;;;;;;;"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
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
|
-
* Resolves the ID for an item, handling type conversions and consistency with layout keys
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Ensures the item ID matches the layout's key type (number vs string)
|
|
10
|
-
* by attempting type conversion if needed
|
|
11
|
-
*/
|
|
12
|
-
function normalizeIdToLayoutKey(itemId, layout) {
|
|
13
|
-
// If already in layout, return as-is
|
|
14
|
-
if (layout.positions.has(itemId)) {
|
|
15
|
-
return itemId;
|
|
16
|
-
}
|
|
17
|
-
// Try converting number to string
|
|
18
|
-
if (typeof itemId === 'number' && layout.positions.has(String(itemId))) {
|
|
19
|
-
return String(itemId);
|
|
20
|
-
}
|
|
21
|
-
// Try converting string to number
|
|
22
|
-
if (typeof itemId === 'string') {
|
|
23
|
-
const numId = Number(itemId);
|
|
24
|
-
if (!isNaN(numId) && layout.positions.has(numId)) {
|
|
25
|
-
return numId;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
// Return original if no match found (will likely result in null position)
|
|
29
|
-
return itemId;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Gets the card position from the layout, handling ID type mismatches
|
|
33
|
-
*/
|
|
34
|
-
function getCardPositionFromLayout(itemId, layout, cardWidth, cardHeight) {
|
|
35
|
-
const normalizedId = normalizeIdToLayoutKey(itemId, layout);
|
|
36
|
-
const position = layout.positions.get(normalizedId);
|
|
37
|
-
if (!position) {
|
|
38
|
-
return null;
|
|
39
|
-
}
|
|
40
|
-
return {
|
|
41
|
-
x: position.x,
|
|
42
|
-
y: position.y,
|
|
43
|
-
width: cardWidth,
|
|
44
|
-
height: cardHeight,
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
exports.getCardPositionFromLayout = getCardPositionFromLayout;
|
|
49
|
-
exports.normalizeIdToLayoutKey = normalizeIdToLayoutKey;
|
|
50
|
-
//# sourceMappingURL=idResolution.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"idResolution.js","sources":["../../../../PivotViewer/utils/idResolution.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;AAaA;;AAEG;AAcH;;;AAGG;AACG,SAAU,sBAAsB,CAClC,MAAuB,EACvB,MAAc,EAAA;;IAGd,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;AAC9B,QAAA,OAAO,MAAM;IACjB;;AAGA,IAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;AACpE,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC;IACzB;;AAGA,IAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AAC5B,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AAC9C,YAAA,OAAO,KAAK;QAChB;IACJ;;AAGA,IAAA,OAAO,MAAM;AACjB;AAEA;;AAEG;AACG,SAAU,yBAAyB,CACrC,MAAuB,EACvB,MAAc,EACd,SAAiB,EACjB,UAAkB,EAAA;IAElB,MAAM,YAAY,GAAG,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC;IAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;IAEnD,IAAI,CAAC,QAAQ,EAAE;AACX,QAAA,OAAO,IAAI;IACf;IAEA,OAAO;QACH,CAAC,EAAE,QAAQ,CAAC,CAAC;QACb,CAAC,EAAE,QAAQ,CAAC,CAAC;AACb,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,MAAM,EAAE,UAAU;KACrB;AACL;;;;;"}
|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var animations = require('./animations.js');
|
|
4
|
-
var constants = require('./constants.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
|
-
/**
|
|
9
|
-
* Compare two item IDs handling type coercion (string vs number)
|
|
10
|
-
*/
|
|
11
|
-
function isSameItemId(id1, id2) {
|
|
12
|
-
if (id1 === null || id2 === null)
|
|
13
|
-
return false;
|
|
14
|
-
// Strict equality
|
|
15
|
-
if (id1 === id2)
|
|
16
|
-
return true;
|
|
17
|
-
// Compare as strings to handle number/string mismatches
|
|
18
|
-
return String(id1) === String(id2);
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Handle card click for selection with zoom and scroll animation
|
|
22
|
-
*/
|
|
23
|
-
function handleCardSelection({ itemId, selectedItemId, container, cardPosition, targetCardPosition, getCardPositionAtZoom, getLayoutSizeAtZoom, spacer, viewMode, zoomLevel, totalHeight, preSelectionState, startScrollPosition, setZoomLevel, setIsZooming, setSelectedItem, setPreSelectionState, item, }) {
|
|
24
|
-
// Clicking the same card - deselect (using type-coerced comparison)
|
|
25
|
-
if (isSameItemId(selectedItemId, itemId)) {
|
|
26
|
-
deselectCard({
|
|
27
|
-
container,
|
|
28
|
-
cardPosition,
|
|
29
|
-
targetCardPosition,
|
|
30
|
-
getCardPositionAtZoom,
|
|
31
|
-
getLayoutSizeAtZoom,
|
|
32
|
-
spacer,
|
|
33
|
-
viewMode,
|
|
34
|
-
zoomLevel,
|
|
35
|
-
preSelectionState,
|
|
36
|
-
setZoomLevel,
|
|
37
|
-
setIsZooming,
|
|
38
|
-
setSelectedItem,
|
|
39
|
-
setPreSelectionState,
|
|
40
|
-
});
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
// First selection - save state and zoom in
|
|
44
|
-
const isFirstSelection = selectedItemId === null;
|
|
45
|
-
if (isFirstSelection) {
|
|
46
|
-
setPreSelectionState({
|
|
47
|
-
zoom: zoomLevel,
|
|
48
|
-
scrollLeft: container.scrollLeft,
|
|
49
|
-
scrollTop: container.scrollTop,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
setSelectedItem(item);
|
|
53
|
-
if (isFirstSelection) {
|
|
54
|
-
if (viewMode === 'collection') {
|
|
55
|
-
// Collection mode: animate scroll to center the selected card (no zoom change)
|
|
56
|
-
if (cardPosition) {
|
|
57
|
-
setIsZooming(true);
|
|
58
|
-
const { scrollLeft, scrollTop } = animations.calculateCenterScrollPosition(container, cardPosition, zoomLevel, 0, totalHeight);
|
|
59
|
-
animations.animateZoomAndScroll({
|
|
60
|
-
container,
|
|
61
|
-
cardPosition,
|
|
62
|
-
startZoom: zoomLevel,
|
|
63
|
-
targetZoom: zoomLevel,
|
|
64
|
-
targetScrollLeft: scrollLeft,
|
|
65
|
-
targetScrollTop: scrollTop,
|
|
66
|
-
onUpdate: setZoomLevel,
|
|
67
|
-
onComplete: () => setIsZooming(false),
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
// Grouped mode: animate zoom and scroll
|
|
73
|
-
zoomAndCenterCard({
|
|
74
|
-
container,
|
|
75
|
-
cardPosition,
|
|
76
|
-
targetCardPosition,
|
|
77
|
-
getCardPositionAtZoom,
|
|
78
|
-
getLayoutSizeAtZoom,
|
|
79
|
-
spacer,
|
|
80
|
-
zoomLevel,
|
|
81
|
-
totalHeight,
|
|
82
|
-
startScrollPosition,
|
|
83
|
-
setZoomLevel,
|
|
84
|
-
setIsZooming,
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
// Subsequent selections: animate the scroll to center the new card
|
|
90
|
-
if (cardPosition) {
|
|
91
|
-
setIsZooming(true);
|
|
92
|
-
const detailWidth = viewMode === 'collection' ? 0 : constants.DETAIL_PANEL_WIDTH;
|
|
93
|
-
const { scrollLeft, scrollTop } = animations.calculateCenterScrollPosition(container, cardPosition, zoomLevel, detailWidth, totalHeight);
|
|
94
|
-
animations.animateZoomAndScroll({
|
|
95
|
-
container,
|
|
96
|
-
cardPosition,
|
|
97
|
-
startZoom: zoomLevel,
|
|
98
|
-
targetZoom: zoomLevel,
|
|
99
|
-
targetScrollLeft: scrollLeft,
|
|
100
|
-
targetScrollTop: scrollTop,
|
|
101
|
-
onUpdate: setZoomLevel,
|
|
102
|
-
onComplete: () => setIsZooming(false),
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Deselect card with zoom-out animation if needed
|
|
109
|
-
*/
|
|
110
|
-
function deselectCard({ container, cardPosition, targetCardPosition, getCardPositionAtZoom, getLayoutSizeAtZoom, spacer, viewMode, zoomLevel, preSelectionState, setZoomLevel, setIsZooming, setSelectedItem, setPreSelectionState, }) {
|
|
111
|
-
if (!preSelectionState) {
|
|
112
|
-
setSelectedItem(null);
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
// Collection mode: just scroll back
|
|
116
|
-
if (viewMode === 'collection') {
|
|
117
|
-
setSelectedItem(null);
|
|
118
|
-
animations.smoothScrollTo(container, preSelectionState.scrollLeft, preSelectionState.scrollTop, true);
|
|
119
|
-
setPreSelectionState(null);
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
// Grouped mode: check if zoom changed
|
|
123
|
-
const zoomChanged = Math.abs(preSelectionState.zoom - zoomLevel) > 0.001;
|
|
124
|
-
if (!zoomChanged || !cardPosition) {
|
|
125
|
-
setSelectedItem(null);
|
|
126
|
-
animations.smoothScrollTo(container, preSelectionState.scrollLeft, preSelectionState.scrollTop, true);
|
|
127
|
-
setPreSelectionState(null);
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
// Animate zoom out
|
|
131
|
-
setIsZooming(true);
|
|
132
|
-
animations.animateZoomAndScroll({
|
|
133
|
-
container,
|
|
134
|
-
cardPosition,
|
|
135
|
-
targetCardPosition,
|
|
136
|
-
getCardPositionAtZoom,
|
|
137
|
-
getLayoutSizeAtZoom,
|
|
138
|
-
spacer,
|
|
139
|
-
startZoom: zoomLevel,
|
|
140
|
-
targetZoom: preSelectionState.zoom,
|
|
141
|
-
targetScrollLeft: preSelectionState.scrollLeft,
|
|
142
|
-
targetScrollTop: preSelectionState.scrollTop,
|
|
143
|
-
onUpdate: setZoomLevel,
|
|
144
|
-
onComplete: () => {
|
|
145
|
-
setIsZooming(false);
|
|
146
|
-
setSelectedItem(null);
|
|
147
|
-
setPreSelectionState(null);
|
|
148
|
-
},
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Zoom in and center a card
|
|
153
|
-
*/
|
|
154
|
-
function zoomAndCenterCard({ container, cardPosition, targetCardPosition, getCardPositionAtZoom, getLayoutSizeAtZoom, spacer, zoomLevel, totalHeight, startScrollPosition, setZoomLevel, setIsZooming, }) {
|
|
155
|
-
const targetZoom = Math.min(constants.ZOOM_MAX, Math.max(constants.MIN_ZOOM_ON_SELECT, zoomLevel * constants.ZOOM_MULTIPLIER));
|
|
156
|
-
const shouldZoom = Math.abs(targetZoom - zoomLevel) > 0.001;
|
|
157
|
-
if (!shouldZoom || !cardPosition) {
|
|
158
|
-
if (cardPosition) {
|
|
159
|
-
const { scrollLeft, scrollTop } = animations.calculateCenterScrollPosition(container, cardPosition, zoomLevel, constants.DETAIL_PANEL_WIDTH, totalHeight);
|
|
160
|
-
animations.smoothScrollTo(container, scrollLeft, scrollTop, true);
|
|
161
|
-
}
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
setIsZooming(true);
|
|
165
|
-
// Use targetCardPosition if available, otherwise fallback to cardPosition
|
|
166
|
-
const { scrollLeft: targetScrollLeft, scrollTop: targetScrollTop } = animations.calculateCenterScrollPosition(container, targetCardPosition || cardPosition, targetZoom, constants.DETAIL_PANEL_WIDTH, totalHeight);
|
|
167
|
-
animations.animateZoomAndScroll({
|
|
168
|
-
container,
|
|
169
|
-
cardPosition,
|
|
170
|
-
targetCardPosition,
|
|
171
|
-
getCardPositionAtZoom,
|
|
172
|
-
getLayoutSizeAtZoom,
|
|
173
|
-
spacer,
|
|
174
|
-
startZoom: zoomLevel,
|
|
175
|
-
targetZoom,
|
|
176
|
-
targetScrollLeft,
|
|
177
|
-
targetScrollTop,
|
|
178
|
-
startScrollLeft: startScrollPosition?.x,
|
|
179
|
-
startScrollTop: startScrollPosition?.y,
|
|
180
|
-
onUpdate: setZoomLevel,
|
|
181
|
-
onComplete: () => {
|
|
182
|
-
setIsZooming(false);
|
|
183
|
-
},
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
exports.handleCardSelection = handleCardSelection;
|
|
188
|
-
//# sourceMappingURL=selection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"selection.js","sources":["../../../../PivotViewer/utils/selection.ts"],"sourcesContent":[null],"names":["calculateCenterScrollPosition","animateZoomAndScroll","DETAIL_PANEL_WIDTH","smoothScrollTo","ZOOM_MAX","MIN_ZOOM_ON_SELECT","ZOOM_MULTIPLIER"],"mappings":"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"}
|