@itwin/components-react 4.13.3 → 4.14.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/CHANGELOG.md +6 -3
- package/lib/cjs/components-react/common/ImageRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/common/ImageRenderer.js +0 -4
- package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
- package/lib/cjs/components-react/common/Links.d.ts.map +1 -1
- package/lib/cjs/components-react/common/Links.js +0 -7
- package/lib/cjs/components-react/common/Links.js.map +1 -1
- package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +0 -1
- package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
- package/lib/cjs/components-react/common/UseElementsScrollStorage.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseElementsScrollStorage.js +0 -1
- package/lib/cjs/components-react/common/UseElementsScrollStorage.js.map +1 -1
- package/lib/cjs/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/DateTimeTypeConverter.js +0 -13
- package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.js +0 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DateField.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/DateField.js +1 -8
- package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePicker.js +0 -2
- package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +0 -1
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
- package/lib/cjs/components-react/datepicker/TimeField.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/TimeField.js +0 -9
- package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
- package/lib/cjs/components-react/editors/BooleanEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/BooleanEditor.js +0 -8
- package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/CustomNumberEditor.js +7 -25
- package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/DateTimeEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/DateTimeEditor.js +0 -21
- package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +1 -14
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/EnumEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/EnumEditor.js +1 -13
- package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/IconEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/IconEditor.js +0 -9
- package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +0 -6
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/NumericInputEditor.js +1 -10
- package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/PopupButton.js +0 -2
- package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
- package/lib/cjs/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/PropertyEditorManager.js +0 -1
- package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
- package/lib/cjs/components-react/editors/SliderEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/SliderEditor.js +0 -10
- package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/TextEditor.js +0 -7
- package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/TextareaEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/TextareaEditor.js +0 -15
- package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/ToggleEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/ToggleEditor.js +0 -9
- package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +1 -0
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +0 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +3 -4
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.js +0 -1
- package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js +0 -3
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/cjs/components-react/inputs/ParsedInput.d.ts +1 -1
- package/lib/cjs/components-react/inputs/ParsedInput.d.ts.map +1 -1
- package/lib/cjs/components-react/inputs/ParsedInput.js +0 -5
- package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +0 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js +1 -2
- package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +0 -2
- package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.js +7 -4
- package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +6 -3
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +5 -5
- package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +1 -0
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -0
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +1 -0
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -0
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -9
- package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +0 -2
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +0 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -4
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +3 -4
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyList.js +0 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +0 -2
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +0 -4
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +0 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +0 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +2 -6
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +0 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +0 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +1 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.js +7 -24
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Items.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/Items.js +0 -2
- package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.js +0 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItem.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItem.js +3 -6
- package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +3 -13
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +1 -7
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +0 -3
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
- package/lib/cjs/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/useDragInteraction.js +0 -2
- package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.js +0 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +1 -8
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.js +0 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +0 -4
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +0 -5
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +0 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +1 -10
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/lib/esm/components-react/common/ImageRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/common/ImageRenderer.js +0 -4
- package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
- package/lib/esm/components-react/common/Links.d.ts.map +1 -1
- package/lib/esm/components-react/common/Links.js +0 -7
- package/lib/esm/components-react/common/Links.js.map +1 -1
- package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +0 -1
- package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
- package/lib/esm/components-react/common/UseElementsScrollStorage.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseElementsScrollStorage.js +0 -1
- package/lib/esm/components-react/common/UseElementsScrollStorage.js.map +1 -1
- package/lib/esm/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
- package/lib/esm/components-react/converters/DateTimeTypeConverter.js +0 -13
- package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js +0 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/esm/components-react/datepicker/DateField.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/DateField.js +1 -8
- package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
- package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/DatePicker.js +0 -2
- package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +0 -1
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
- package/lib/esm/components-react/datepicker/TimeField.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/TimeField.js +0 -9
- package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
- package/lib/esm/components-react/editors/BooleanEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/BooleanEditor.js +0 -8
- package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
- package/lib/esm/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/CustomNumberEditor.js +7 -25
- package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/esm/components-react/editors/DateTimeEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/DateTimeEditor.js +0 -21
- package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +1 -14
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
- package/lib/esm/components-react/editors/EnumEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/EnumEditor.js +1 -13
- package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
- package/lib/esm/components-react/editors/IconEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/IconEditor.js +0 -9
- package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
- package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/ImageCheckBoxEditor.js +0 -6
- package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
- package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/NumericInputEditor.js +1 -10
- package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
- package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
- package/lib/esm/components-react/editors/PopupButton.js +0 -2
- package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
- package/lib/esm/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
- package/lib/esm/components-react/editors/PropertyEditorManager.js +0 -1
- package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
- package/lib/esm/components-react/editors/SliderEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/SliderEditor.js +0 -10
- package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
- package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/TextEditor.js +0 -7
- package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
- package/lib/esm/components-react/editors/TextareaEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/TextareaEditor.js +0 -15
- package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
- package/lib/esm/components-react/editors/ToggleEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/ToggleEditor.js +0 -9
- package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +1 -0
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +0 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +3 -4
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.js +0 -1
- package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
- package/lib/esm/components-react/iconpicker/IconPickerButton.js +0 -3
- package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/esm/components-react/inputs/ParsedInput.d.ts +1 -1
- package/lib/esm/components-react/inputs/ParsedInput.d.ts.map +1 -1
- package/lib/esm/components-react/inputs/ParsedInput.js +0 -5
- package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +0 -1
- package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js +1 -2
- package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +0 -2
- package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyView.js +7 -4
- package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +3 -3
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +5 -5
- package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +1 -0
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -0
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +1 -0
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -0
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -9
- package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +0 -2
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +0 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +3 -4
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +3 -4
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyList.js +0 -1
- package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +0 -2
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +0 -4
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +0 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +0 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +2 -3
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +0 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +0 -2
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +1 -2
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.js +7 -24
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.js.map +1 -1
- package/lib/esm/components-react/toolbar/Items.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/Items.js +0 -2
- package/lib/esm/components-react/toolbar/Items.js.map +1 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.js +0 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItem.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItem.js +3 -6
- package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +3 -13
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemsPanel.js +1 -7
- package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js +0 -3
- package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
- package/lib/esm/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/useDragInteraction.js +0 -2
- package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.js +0 -1
- package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +1 -8
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.js +0 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +0 -4
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +0 -5
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +0 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +1 -10
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/package.json +11 -15
|
@@ -79,23 +79,19 @@ function PopupItemsPanel(props) {
|
|
|
79
79
|
];
|
|
80
80
|
}, []), [items, numItemsPerColumn]);
|
|
81
81
|
const handleGroupItemClick = React.useCallback((item) => {
|
|
82
|
-
// istanbul ignore else
|
|
83
82
|
if (appui_abstract_1.ToolbarItemUtilities.isGroupButton(item)) {
|
|
84
83
|
// push group to front of array
|
|
85
84
|
setGroupArray([item, ...groupArray]);
|
|
86
85
|
}
|
|
87
86
|
}, [groupArray]);
|
|
88
87
|
const handleBackArrowClick = React.useCallback(() => {
|
|
89
|
-
// istanbul ignore else
|
|
90
88
|
if (groupArray.length > 1) {
|
|
91
89
|
setGroupArray(groupArray.slice(1));
|
|
92
90
|
}
|
|
93
91
|
}, [groupArray]);
|
|
94
92
|
const { closePanel, setSelectedItem } = (0, PopupItem_1.useToolbarPopupContext)();
|
|
95
93
|
const { onItemExecuted, onKeyDown } = (0, InternalToolbarComponent_1.useToolbarWithOverflowDirectionContext)();
|
|
96
|
-
const handleOnPointerUp = React.useCallback(
|
|
97
|
-
/* istanbul ignore next */ (panelItem) => {
|
|
98
|
-
// istanbul ignore else
|
|
94
|
+
const handleOnPointerUp = React.useCallback((panelItem) => {
|
|
99
95
|
if (appui_abstract_1.ToolbarItemUtilities.isActionButton(panelItem)) {
|
|
100
96
|
props.activateOnPointerUp &&
|
|
101
97
|
setSelectedItem &&
|
|
@@ -106,7 +102,6 @@ function PopupItemsPanel(props) {
|
|
|
106
102
|
}
|
|
107
103
|
}, [props.activateOnPointerUp, setSelectedItem, closePanel, onItemExecuted]);
|
|
108
104
|
const handleActionItemClick = React.useCallback((panelItem) => {
|
|
109
|
-
// istanbul ignore else
|
|
110
105
|
if (appui_abstract_1.ToolbarItemUtilities.isActionButton(panelItem)) {
|
|
111
106
|
setSelectedItem && setSelectedItem(panelItem);
|
|
112
107
|
panelItem.execute();
|
|
@@ -114,7 +109,6 @@ function PopupItemsPanel(props) {
|
|
|
114
109
|
closePanel();
|
|
115
110
|
}
|
|
116
111
|
}, [setSelectedItem, closePanel, onItemExecuted]);
|
|
117
|
-
// istanbul ignore next - NEEDSWORK add complete tests
|
|
118
112
|
const handleOnKeyDown = React.useCallback((e) => {
|
|
119
113
|
onKeyDown(e);
|
|
120
114
|
}, [onKeyDown]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupItemsPanel.js","sourceRoot":"","sources":["../../../../src/components-react/toolbar/PopupItemsPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Toolbar\n */\n\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { ActionButton, GroupButton } from \"@itwin/appui-abstract\";\nimport {\n ConditionalBooleanValue,\n ConditionalStringValue,\n ToolbarItemUtilities,\n} from \"@itwin/appui-abstract\";\nimport { Badge, IconHelper } from \"@itwin/core-react\";\nimport { BackArrow } from \"./groupPanel/BackArrow\";\nimport { GroupColumn } from \"./groupPanel/Column\";\nimport { Columns } from \"./groupPanel/Columns\";\nimport { Panel } from \"./groupPanel/Panel\";\nimport { Title } from \"./groupPanel/Title\";\nimport { GroupToolExpander } from \"./groupPanel/tool/Expander\";\nimport { GroupTool } from \"./groupPanel/tool/Tool\";\nimport { useToolbarPopupContext } from \"./PopupItem\";\nimport { useToolbarWithOverflowDirectionContext } from \"./InternalToolbarComponent\";\n\nfunction getNumItemsInColumn(numTotalItems: number): number {\n if (numTotalItems <= 6) return numTotalItems;\n if (numTotalItems <= 24) return Math.ceil(numTotalItems / 2);\n if (numTotalItems <= 36) return Math.ceil(numTotalItems / 3);\n return Math.ceil(numTotalItems / 4);\n}\n\ninterface PopupItemsPanelProps {\n groupItem: GroupButton;\n activateOnPointerUp?: boolean;\n}\n\n/** Component that displays a list of tools in a panel.\n * @internal future\n */\nexport function PopupItemsPanel(props: PopupItemsPanelProps) {\n const [groupArray, setGroupArray] = React.useState([props.groupItem]);\n const activeGroup = React.useMemo(() => groupArray[0], [groupArray]);\n const items = React.useMemo(() => activeGroup.items, [activeGroup]);\n\n const preferredNumItemsInColumn = getNumItemsInColumn(items.length);\n\n // Divide items equally between columns.\n const numberOfColumns = Math.ceil(items.length / preferredNumItemsInColumn);\n const numItemsPerColumn = Math.ceil(items.length / numberOfColumns);\n\n const columnToItems = React.useMemo(\n () =>\n items.reduce<ReadonlyArray<ReadonlyArray<GroupButton | ActionButton>>>(\n (acc, item, index) => {\n const columnIndex = Math.floor(index / numItemsPerColumn);\n if (columnIndex >= acc.length) {\n return [...acc, [item]];\n }\n return [\n ...acc.slice(0, columnIndex),\n [...acc[columnIndex], item],\n ...acc.slice(columnIndex + 1),\n ];\n },\n []\n ),\n [items, numItemsPerColumn]\n );\n\n const handleGroupItemClick = React.useCallback(\n (item: GroupButton | ActionButton) => {\n // istanbul ignore else\n if (ToolbarItemUtilities.isGroupButton(item)) {\n // push group to front of array\n setGroupArray([item, ...groupArray]);\n }\n },\n [groupArray]\n );\n\n const handleBackArrowClick = React.useCallback(() => {\n // istanbul ignore else\n if (groupArray.length > 1) {\n setGroupArray(groupArray.slice(1));\n }\n }, [groupArray]);\n\n const { closePanel, setSelectedItem } = useToolbarPopupContext();\n const { onItemExecuted, onKeyDown } =\n useToolbarWithOverflowDirectionContext();\n\n const handleOnPointerUp = React.useCallback(\n /* istanbul ignore next */ (panelItem: GroupButton | ActionButton) => {\n // istanbul ignore else\n if (ToolbarItemUtilities.isActionButton(panelItem)) {\n props.activateOnPointerUp &&\n setSelectedItem &&\n setSelectedItem(panelItem);\n props.activateOnPointerUp && panelItem.execute();\n onItemExecuted(panelItem);\n props.activateOnPointerUp && closePanel();\n }\n },\n [props.activateOnPointerUp, setSelectedItem, closePanel, onItemExecuted]\n );\n\n const handleActionItemClick = React.useCallback(\n (panelItem: GroupButton | ActionButton) => {\n // istanbul ignore else\n if (ToolbarItemUtilities.isActionButton(panelItem)) {\n setSelectedItem && setSelectedItem(panelItem);\n panelItem.execute();\n onItemExecuted(panelItem);\n closePanel();\n }\n },\n [setSelectedItem, closePanel, onItemExecuted]\n );\n\n // istanbul ignore next - NEEDSWORK add complete tests\n const handleOnKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n onKeyDown(e);\n },\n [onKeyDown]\n );\n\n // build n-number of columns\n const columns = React.useMemo(\n () =>\n columnToItems.map((columnItems, columnIndex) => (\n <GroupColumn key={columnIndex}>\n {columnItems.map((panelItem) => {\n const icon = IconHelper.getIconReactNode(\n panelItem.icon,\n panelItem.internalData\n );\n const label = ConditionalStringValue.getValue(panelItem.label);\n if (ToolbarItemUtilities.isGroupButton(panelItem)) {\n return (\n <GroupToolExpander\n isDisabled={ConditionalBooleanValue.getValue(\n panelItem.isDisabled\n )}\n key={panelItem.id}\n label={label}\n icon={icon}\n badge={<Badge type={panelItem.badgeType} />}\n item={panelItem}\n onClick={handleGroupItemClick}\n />\n );\n }\n\n return (\n <GroupTool\n isDisabled={ConditionalBooleanValue.getValue(\n panelItem.isDisabled\n )}\n isActive={!!panelItem.isActive}\n key={panelItem.id}\n label={label}\n icon={icon}\n item={panelItem}\n onClick={handleActionItemClick}\n onPointerUp={handleOnPointerUp}\n badge={<Badge type={panelItem.badgeType} />}\n />\n );\n })}\n </GroupColumn>\n )),\n [\n columnToItems,\n handleActionItemClick,\n handleGroupItemClick,\n handleOnPointerUp,\n ]\n );\n\n // ensure we have a panel title for nested groups\n const titleString = activeGroup.panelLabel\n ? activeGroup.panelLabel\n : activeGroup.label;\n const panelTitle = React.useMemo(\n () => ConditionalStringValue.getValue(titleString),\n [titleString]\n );\n const className = classnames(\n 1 === groupArray.length && \"components-toolbar-item-expandable-group-group\",\n groupArray.length > 1 && \"components-toolbar-item-expandable-group-nested\"\n );\n\n return (\n <Panel className={className} onKeyDown={handleOnKeyDown}>\n {groupArray.length > 1 && (\n <BackArrow className=\"components-back\" onClick={handleBackArrowClick} />\n )}\n {panelTitle && <Title>{panelTitle}</Title>}\n {columns && <Columns>{columns}</Columns>}\n </Panel>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PopupItemsPanel.js","sourceRoot":"","sources":["../../../../src/components-react/toolbar/PopupItemsPanel.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4DAAoC;AACpC,6CAA+B;AAE/B,0DAI+B;AAC/B,kDAAsD;AACtD,sDAAmD;AACnD,gDAAkD;AAClD,kDAA+C;AAC/C,8CAA2C;AAC3C,8CAA2C;AAC3C,yDAA+D;AAC/D,iDAAmD;AACnD,2CAAqD;AACrD,yEAAoF;AAEpF,SAAS,mBAAmB,CAAC,aAAqB;IAChD,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC;IAC7C,IAAI,aAAa,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;IAC7D,IAAI,aAAa,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;AACtC,CAAC;AAOD;;GAEG;AACH,SAAgB,eAAe,CAAC,KAA2B;IACzD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACrE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpE,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpE,wCAAwC;IACxC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,yBAAyB,CAAC,CAAC;IAC5E,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;IAEpE,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,GAAG,EAAE,CACH,KAAK,CAAC,MAAM,CACV,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,iBAAiB,CAAC,CAAC;QAC1D,IAAI,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO;YACL,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC;YAC5B,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;YAC3B,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;SAC9B,CAAC;IACJ,CAAC,EACD,EAAE,CACH,EACH,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAC3B,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAC5C,CAAC,IAAgC,EAAE,EAAE;QACnC,IAAI,qCAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,+BAA+B;YAC/B,aAAa,CAAC,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAClD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,IAAA,kCAAsB,GAAE,CAAC;IACjE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,GACjC,IAAA,iEAAsC,GAAE,CAAC;IAE3C,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CACzC,CAAC,SAAqC,EAAE,EAAE;QACxC,IAAI,qCAAoB,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,KAAK,CAAC,mBAAmB;gBACvB,eAAe;gBACf,eAAe,CAAC,SAAS,CAAC,CAAC;YAC7B,KAAK,CAAC,mBAAmB,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACjD,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,KAAK,CAAC,mBAAmB,IAAI,UAAU,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC,EACD,CAAC,KAAK,CAAC,mBAAmB,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,CAAC,CACzE,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAC7C,CAAC,SAAqC,EAAE,EAAE;QACxC,IAAI,qCAAoB,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,eAAe,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;YAC9C,SAAS,CAAC,OAAO,EAAE,CAAC;YACpB,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,UAAU,EAAE,CAAC;QACf,CAAC;IACH,CAAC,EACD,CAAC,eAAe,EAAE,UAAU,EAAE,cAAc,CAAC,CAC9C,CAAC;IAEF,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CACvC,CAAC,CAAsB,EAAE,EAAE;QACzB,SAAS,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,4BAA4B;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CACH,aAAa,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,CAC9C,oBAAC,oBAAW,IAAC,GAAG,EAAE,WAAW,IAC1B,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,uBAAU,CAAC,gBAAgB,CACtC,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,YAAY,CACvB,CAAC;QACF,MAAM,KAAK,GAAG,uCAAsB,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,qCAAoB,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,OAAO,CACL,oBAAC,4BAAiB,IAChB,UAAU,EAAE,wCAAuB,CAAC,QAAQ,CAC1C,SAAS,CAAC,UAAU,CACrB,EACD,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,oBAAC,kBAAK,IAAC,IAAI,EAAE,SAAS,CAAC,SAAS,GAAI,EAC3C,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,oBAAoB,GAC7B,CACH,CAAC;QACJ,CAAC;QAED,OAAO,CACL,oBAAC,gBAAS,IACR,UAAU,EAAE,wCAAuB,CAAC,QAAQ,CAC1C,SAAS,CAAC,UAAU,CACrB,EACD,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,EAC9B,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,qBAAqB,EAC9B,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,oBAAC,kBAAK,IAAC,IAAI,EAAE,SAAS,CAAC,SAAS,GAAI,GAC3C,CACH,CAAC;IACJ,CAAC,CAAC,CACU,CACf,CAAC,EACJ;QACE,aAAa;QACb,qBAAqB;QACrB,oBAAoB;QACpB,iBAAiB;KAClB,CACF,CAAC;IAEF,iDAAiD;IACjD,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU;QACxC,CAAC,CAAC,WAAW,CAAC,UAAU;QACxB,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;IACtB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAC9B,GAAG,EAAE,CAAC,uCAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAClD,CAAC,WAAW,CAAC,CACd,CAAC;IACF,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,CAAC,KAAK,UAAU,CAAC,MAAM,IAAI,gDAAgD,EAC3E,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,iDAAiD,CAC3E,CAAC;IAEF,OAAO,CACL,oBAAC,aAAK,IAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe;QACpD,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CACxB,oBAAC,qBAAS,IAAC,SAAS,EAAC,iBAAiB,EAAC,OAAO,EAAE,oBAAoB,GAAI,CACzE;QACA,UAAU,IAAI,oBAAC,aAAK,QAAE,UAAU,CAAS;QACzC,OAAO,IAAI,oBAAC,iBAAO,QAAE,OAAO,CAAW,CAClC,CACT,CAAC;AACJ,CAAC;AA9JD,0CA8JC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Toolbar\n */\n\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { ActionButton, GroupButton } from \"@itwin/appui-abstract\";\nimport {\n ConditionalBooleanValue,\n ConditionalStringValue,\n ToolbarItemUtilities,\n} from \"@itwin/appui-abstract\";\nimport { Badge, IconHelper } from \"@itwin/core-react\";\nimport { BackArrow } from \"./groupPanel/BackArrow\";\nimport { GroupColumn } from \"./groupPanel/Column\";\nimport { Columns } from \"./groupPanel/Columns\";\nimport { Panel } from \"./groupPanel/Panel\";\nimport { Title } from \"./groupPanel/Title\";\nimport { GroupToolExpander } from \"./groupPanel/tool/Expander\";\nimport { GroupTool } from \"./groupPanel/tool/Tool\";\nimport { useToolbarPopupContext } from \"./PopupItem\";\nimport { useToolbarWithOverflowDirectionContext } from \"./InternalToolbarComponent\";\n\nfunction getNumItemsInColumn(numTotalItems: number): number {\n if (numTotalItems <= 6) return numTotalItems;\n if (numTotalItems <= 24) return Math.ceil(numTotalItems / 2);\n if (numTotalItems <= 36) return Math.ceil(numTotalItems / 3);\n return Math.ceil(numTotalItems / 4);\n}\n\ninterface PopupItemsPanelProps {\n groupItem: GroupButton;\n activateOnPointerUp?: boolean;\n}\n\n/** Component that displays a list of tools in a panel.\n * @internal future\n */\nexport function PopupItemsPanel(props: PopupItemsPanelProps) {\n const [groupArray, setGroupArray] = React.useState([props.groupItem]);\n const activeGroup = React.useMemo(() => groupArray[0], [groupArray]);\n const items = React.useMemo(() => activeGroup.items, [activeGroup]);\n\n const preferredNumItemsInColumn = getNumItemsInColumn(items.length);\n\n // Divide items equally between columns.\n const numberOfColumns = Math.ceil(items.length / preferredNumItemsInColumn);\n const numItemsPerColumn = Math.ceil(items.length / numberOfColumns);\n\n const columnToItems = React.useMemo(\n () =>\n items.reduce<ReadonlyArray<ReadonlyArray<GroupButton | ActionButton>>>(\n (acc, item, index) => {\n const columnIndex = Math.floor(index / numItemsPerColumn);\n if (columnIndex >= acc.length) {\n return [...acc, [item]];\n }\n return [\n ...acc.slice(0, columnIndex),\n [...acc[columnIndex], item],\n ...acc.slice(columnIndex + 1),\n ];\n },\n []\n ),\n [items, numItemsPerColumn]\n );\n\n const handleGroupItemClick = React.useCallback(\n (item: GroupButton | ActionButton) => {\n if (ToolbarItemUtilities.isGroupButton(item)) {\n // push group to front of array\n setGroupArray([item, ...groupArray]);\n }\n },\n [groupArray]\n );\n\n const handleBackArrowClick = React.useCallback(() => {\n if (groupArray.length > 1) {\n setGroupArray(groupArray.slice(1));\n }\n }, [groupArray]);\n\n const { closePanel, setSelectedItem } = useToolbarPopupContext();\n const { onItemExecuted, onKeyDown } =\n useToolbarWithOverflowDirectionContext();\n\n const handleOnPointerUp = React.useCallback(\n (panelItem: GroupButton | ActionButton) => {\n if (ToolbarItemUtilities.isActionButton(panelItem)) {\n props.activateOnPointerUp &&\n setSelectedItem &&\n setSelectedItem(panelItem);\n props.activateOnPointerUp && panelItem.execute();\n onItemExecuted(panelItem);\n props.activateOnPointerUp && closePanel();\n }\n },\n [props.activateOnPointerUp, setSelectedItem, closePanel, onItemExecuted]\n );\n\n const handleActionItemClick = React.useCallback(\n (panelItem: GroupButton | ActionButton) => {\n if (ToolbarItemUtilities.isActionButton(panelItem)) {\n setSelectedItem && setSelectedItem(panelItem);\n panelItem.execute();\n onItemExecuted(panelItem);\n closePanel();\n }\n },\n [setSelectedItem, closePanel, onItemExecuted]\n );\n\n const handleOnKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n onKeyDown(e);\n },\n [onKeyDown]\n );\n\n // build n-number of columns\n const columns = React.useMemo(\n () =>\n columnToItems.map((columnItems, columnIndex) => (\n <GroupColumn key={columnIndex}>\n {columnItems.map((panelItem) => {\n const icon = IconHelper.getIconReactNode(\n panelItem.icon,\n panelItem.internalData\n );\n const label = ConditionalStringValue.getValue(panelItem.label);\n if (ToolbarItemUtilities.isGroupButton(panelItem)) {\n return (\n <GroupToolExpander\n isDisabled={ConditionalBooleanValue.getValue(\n panelItem.isDisabled\n )}\n key={panelItem.id}\n label={label}\n icon={icon}\n badge={<Badge type={panelItem.badgeType} />}\n item={panelItem}\n onClick={handleGroupItemClick}\n />\n );\n }\n\n return (\n <GroupTool\n isDisabled={ConditionalBooleanValue.getValue(\n panelItem.isDisabled\n )}\n isActive={!!panelItem.isActive}\n key={panelItem.id}\n label={label}\n icon={icon}\n item={panelItem}\n onClick={handleActionItemClick}\n onPointerUp={handleOnPointerUp}\n badge={<Badge type={panelItem.badgeType} />}\n />\n );\n })}\n </GroupColumn>\n )),\n [\n columnToItems,\n handleActionItemClick,\n handleGroupItemClick,\n handleOnPointerUp,\n ]\n );\n\n // ensure we have a panel title for nested groups\n const titleString = activeGroup.panelLabel\n ? activeGroup.panelLabel\n : activeGroup.label;\n const panelTitle = React.useMemo(\n () => ConditionalStringValue.getValue(titleString),\n [titleString]\n );\n const className = classnames(\n 1 === groupArray.length && \"components-toolbar-item-expandable-group-group\",\n groupArray.length > 1 && \"components-toolbar-item-expandable-group-nested\"\n );\n\n return (\n <Panel className={className} onKeyDown={handleOnKeyDown}>\n {groupArray.length > 1 && (\n <BackArrow className=\"components-back\" onClick={handleBackArrowClick} />\n )}\n {panelTitle && <Title>{panelTitle}</Title>}\n {columns && <Columns>{columns}</Columns>}\n </Panel>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../../../../../src/components-react/toolbar/groupPanel/tool/Tool.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,kDAAkD;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iBAAiB;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yCAAyC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,KAAK,IAAI,CAAC;IACrD,yDAAyD;IACzD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,KAAK,IAAI,CAAC;IACzD,uBAAuB;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,uBAAuB;IACvB,IAAI,EAAE,WAAW,GAAG,YAAY,CAAC;IACjC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;CAC9C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../../../../../src/components-react/toolbar/groupPanel/tool/Tool.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,kDAAkD;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iBAAiB;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yCAAyC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,KAAK,IAAI,CAAC;IACrD,yDAAyD;IACzD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,KAAK,IAAI,CAAC;IACzD,uBAAuB;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,uBAAuB;IACvB,IAAI,EAAE,WAAW,GAAG,YAAY,CAAC;IACjC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;CAC9C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,qBA8C9C"}
|
|
@@ -46,16 +46,13 @@ function GroupTool(props) {
|
|
|
46
46
|
const targeted = (0, core_react_1.useTargeted)(ref);
|
|
47
47
|
const itemClassName = (0, classnames_1.default)("components-toolbar-item-expandable-group-tool-item", props.isActive && "components-active", props.isFocused && "components-focused", props.isDisabled && "components-disabled", props.onPointerUp && "components-pointer-up", targeted && "components-targeted", props.className);
|
|
48
48
|
const handleClick = React.useCallback(() => {
|
|
49
|
-
// istanbul ignore else
|
|
50
49
|
if (!props.isDisabled && props.onClick)
|
|
51
50
|
props.onClick(props.item);
|
|
52
51
|
}, [props]);
|
|
53
52
|
const handlePointerUp = React.useCallback(() => {
|
|
54
|
-
// istanbul ignore else
|
|
55
53
|
if (!props.isDisabled && props.onPointerUp)
|
|
56
54
|
props.onPointerUp(props.item);
|
|
57
55
|
}, [props]);
|
|
58
|
-
// istanbul ignore next
|
|
59
56
|
const providerId = "providerId" in props.item ? props.item.providerId : undefined;
|
|
60
57
|
return (React.createElement("div", { className: itemClassName, onClick: handleClick, onKeyDown: props.onKeyDown, onPointerUp: handlePointerUp, "data-item-id": props.item.id, "data-item-type": "popup-tool-panel-item", "data-item-priority": props.item.itemPriority, "data-item-provider-id": providerId, ref: ref, style: props.style, role: "button", tabIndex: 0 },
|
|
61
58
|
React.createElement("div", { className: "components-icon" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tool.js","sourceRoot":"","sources":["../../../../../../src/components-react/toolbar/groupPanel/tool/Tool.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uBAAqB;AACrB,4DAAoC;AACpC,6CAA+B;AAG/B,kDAAgD;AA8BhD;;GAEG;AACH,SAAgB,SAAS,CAAC,KAAqB;IAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,IAAA,oBAAU,EAC9B,oDAAoD,EACpD,KAAK,CAAC,QAAQ,IAAI,mBAAmB,EACrC,KAAK,CAAC,SAAS,IAAI,oBAAoB,EACvC,KAAK,CAAC,UAAU,IAAI,qBAAqB,EACzC,KAAK,CAAC,WAAW,IAAI,uBAAuB,EAC5C,QAAQ,IAAI,qBAAqB,EACjC,KAAK,CAAC,SAAS,CAChB,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACzC,
|
|
1
|
+
{"version":3,"file":"Tool.js","sourceRoot":"","sources":["../../../../../../src/components-react/toolbar/groupPanel/tool/Tool.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uBAAqB;AACrB,4DAAoC;AACpC,6CAA+B;AAG/B,kDAAgD;AA8BhD;;GAEG;AACH,SAAgB,SAAS,CAAC,KAAqB;IAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,IAAA,oBAAU,EAC9B,oDAAoD,EACpD,KAAK,CAAC,QAAQ,IAAI,mBAAmB,EACrC,KAAK,CAAC,SAAS,IAAI,oBAAoB,EACvC,KAAK,CAAC,UAAU,IAAI,qBAAqB,EACzC,KAAK,CAAC,WAAW,IAAI,uBAAuB,EAC5C,QAAQ,IAAI,qBAAqB,EACjC,KAAK,CAAC,SAAS,CAChB,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACzC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO;YAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC7C,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,WAAW;YAAE,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,UAAU,GACd,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,OAAO,CACL,6BACE,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,WAAW,EAAE,eAAe,kBACd,KAAK,CAAC,IAAI,CAAC,EAAE,oBACZ,uBAAuB,wBAClB,KAAK,CAAC,IAAI,CAAC,YAAY,2BACpB,UAAU,EACjC,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC;QAEX,6BAAK,SAAS,EAAC,iBAAiB;YAC7B,KAAK,CAAC,IAAI;YACV,KAAK,CAAC,KAAK,IAAI,6BAAK,SAAS,EAAC,kBAAkB,IAAE,KAAK,CAAC,KAAK,CAAO,CACjE;QACN,6BAAK,SAAS,EAAC,kBAAkB,IAAE,KAAK,CAAC,KAAK,CAAO;QACpD,KAAK,CAAC,QAAQ,CACX,CACP,CAAC;AACJ,CAAC;AA9CD,8BA8CC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Toolbar\n */\n\nimport \"./Tool.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { ActionButton, GroupButton } from \"@itwin/appui-abstract\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { useTargeted } from \"@itwin/core-react\";\n\n/** Properties of [[GroupTool]] component.\n * @internal\n */\nexport interface GroupToolProps extends CommonProps {\n /** Additional content, besides icon and label. */\n children?: React.ReactNode;\n /** Tool icon. */\n icon?: React.ReactNode;\n /** Describes if the item is active. */\n isActive?: boolean;\n /** Describes if the item is disabled. */\n isDisabled?: boolean;\n /** Describes if the item is focused. */\n isFocused?: boolean;\n /** Tool label. */\n label?: string;\n /** Function called when the item is clicked. */\n onClick?: (item: GroupButton | ActionButton) => void;\n /** Function called when pointer up event is received. */\n onPointerUp?: (item: GroupButton | ActionButton) => void;\n /** A badge to draw. */\n badge?: React.ReactNode;\n /** GroupButton item */\n item: GroupButton | ActionButton;\n /** Optional function to call on any KeyDown events processed by toolbar */\n onKeyDown?: (e: React.KeyboardEvent) => void;\n}\n\n/** Tool entry of tool group panel. Used in [[GroupColumn]].\n * @internal\n */\nexport function GroupTool(props: GroupToolProps) {\n const ref = React.useRef<HTMLDivElement>(null);\n const targeted = useTargeted(ref);\n const itemClassName = classnames(\n \"components-toolbar-item-expandable-group-tool-item\",\n props.isActive && \"components-active\",\n props.isFocused && \"components-focused\",\n props.isDisabled && \"components-disabled\",\n props.onPointerUp && \"components-pointer-up\",\n targeted && \"components-targeted\",\n props.className\n );\n\n const handleClick = React.useCallback(() => {\n if (!props.isDisabled && props.onClick) props.onClick(props.item);\n }, [props]);\n\n const handlePointerUp = React.useCallback(() => {\n if (!props.isDisabled && props.onPointerUp) props.onPointerUp(props.item);\n }, [props]);\n\n const providerId =\n \"providerId\" in props.item ? props.item.providerId : undefined;\n return (\n <div\n className={itemClassName}\n onClick={handleClick}\n onKeyDown={props.onKeyDown}\n onPointerUp={handlePointerUp}\n data-item-id={props.item.id}\n data-item-type=\"popup-tool-panel-item\"\n data-item-priority={props.item.itemPriority}\n data-item-provider-id={providerId}\n ref={ref}\n style={props.style}\n role=\"button\"\n tabIndex={0}\n >\n <div className=\"components-icon\">\n {props.icon}\n {props.badge && <div className=\"components-badge\">{props.badge}</div>}\n </div>\n <div className=\"components-label\">{props.label}</div>\n {props.children}\n </div>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDragInteraction.d.ts","sourceRoot":"","sources":["../../../../src/components-react/toolbar/useDragInteraction.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useDragInteraction.d.ts","sourceRoot":"","sources":["../../../../src/components-react/toolbar/useDragInteraction.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA+D/B;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,CAAC,EAAE,MAAM,IAAI,EACpB,WAAW,CAAC,EAAE,MAAM,IAAI;2BA0BlB,kBAAkB;;EA6BzB"}
|
|
@@ -40,7 +40,6 @@ const getDragDistance = (from, to) => {
|
|
|
40
40
|
function useDrag(args) {
|
|
41
41
|
const { initialPosition, onDrag } = args;
|
|
42
42
|
const handlePointerMove = React.useCallback((e) => {
|
|
43
|
-
// istanbul ignore if
|
|
44
43
|
if (!initialPosition.current)
|
|
45
44
|
return;
|
|
46
45
|
const newPosition = new core_react_1.Point(e.clientX, e.clientY);
|
|
@@ -97,7 +96,6 @@ function useDragInteraction(onClick, onOpenPanel) {
|
|
|
97
96
|
onLongPress: handleOpenPanel,
|
|
98
97
|
});
|
|
99
98
|
const handleButtonClick = React.useCallback(() => {
|
|
100
|
-
// istanbul ignore if
|
|
101
99
|
if (skipClick.current)
|
|
102
100
|
return;
|
|
103
101
|
onClick && onClick();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDragInteraction.js","sourceRoot":"","sources":["../../../../src/components-react/toolbar/useDragInteraction.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,kDAAiD;AAEjD,gBAAgB;AAChB,MAAM,eAAe,GAAG,CAAC,IAAW,EAAE,EAAS,EAAE,EAAE;IACjD,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC,CAAC;AAOF,SAAS,OAAO,CAAC,IAAiB;IAChC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACzC,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CACzC,CAAC,CAAe,EAAE,EAAE;QAClB,
|
|
1
|
+
{"version":3,"file":"useDragInteraction.js","sourceRoot":"","sources":["../../../../src/components-react/toolbar/useDragInteraction.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Toolbar\n */\n\nimport * as React from \"react\";\nimport { Point, Timer } from \"@itwin/core-react\";\n\n/** @internal */\nconst getDragDistance = (from: Point, to: Point) => {\n return from.getDistanceTo(to);\n};\n\ninterface UseDragArgs {\n readonly initialPosition: React.MutableRefObject<Point | undefined>;\n readonly onDrag: () => void;\n}\n\nfunction useDrag(args: UseDragArgs) {\n const { initialPosition, onDrag } = args;\n const handlePointerMove = React.useCallback(\n (e: PointerEvent) => {\n if (!initialPosition.current) return;\n const newPosition = new Point(e.clientX, e.clientY);\n const dragDistance = getDragDistance(\n initialPosition.current,\n newPosition\n );\n if (dragDistance < 20) return;\n onDrag();\n },\n [initialPosition, onDrag]\n );\n return { handlePointerMove };\n}\n\ninterface UseLongPressArgs {\n readonly initialPosition: React.RefObject<Point | undefined>;\n readonly onLongPress: () => void;\n}\n\nfunction useLongPress(args: UseLongPressArgs) {\n const longPressTimer = React.useRef(new Timer(500));\n const handlePointerDown = React.useCallback(() => {\n longPressTimer.current.start();\n }, []);\n const handlePointerUp = React.useCallback(() => {\n longPressTimer.current.stop();\n }, []);\n\n const handlePointerMove = React.useCallback(\n (e: PointerEvent) => {\n if (!args.initialPosition.current) return;\n const newPosition = new Point(e.clientX, e.clientY);\n const distance = args.initialPosition.current.getDistanceTo(newPosition);\n distance >= 10 && longPressTimer.current.stop();\n },\n [args.initialPosition]\n );\n React.useEffect(() => {\n longPressTimer.current.setOnExecute(args.onLongPress);\n return () => {\n longPressTimer.current.setOnExecute(undefined); // eslint-disable-line react-hooks/exhaustive-deps\n };\n }, [args.onLongPress]);\n return { handlePointerDown, handlePointerMove, handlePointerUp };\n}\n\n/**\n * Hook used on expandable item that require drag or long press to open\n * @param onClick Function called when item is clicked.\n * @param onOpenPanel Function called when item is dragged or long pressed to open panel.\n * @public\n */\nexport function useDragInteraction(\n onClick?: () => void,\n onOpenPanel?: () => void\n) {\n const initialPosition = React.useRef<Point | undefined>(undefined);\n const skipClick = React.useRef<boolean>(false);\n const handleOpenPanel = React.useCallback(() => {\n initialPosition.current = undefined;\n skipClick.current = true;\n onOpenPanel && onOpenPanel();\n }, [onOpenPanel]);\n const { handlePointerMove: dragPointerMove } = useDrag({\n initialPosition,\n onDrag: handleOpenPanel,\n });\n const {\n handlePointerDown: longPressPointerDown,\n handlePointerMove: longPressPointerMove,\n handlePointerUp: longPressPointerUp,\n } = useLongPress({\n initialPosition,\n onLongPress: handleOpenPanel,\n });\n const handleButtonClick = React.useCallback(() => {\n if (skipClick.current) return;\n onClick && onClick();\n }, [onClick]);\n const handlePointerDown = React.useCallback(\n (e: React.PointerEvent) => {\n e.target instanceof Element &&\n e.target.releasePointerCapture(e.pointerId);\n initialPosition.current = new Point(e.clientX, e.clientY);\n skipClick.current = false;\n longPressPointerDown();\n },\n [longPressPointerDown]\n );\n const handlePointerMove = React.useCallback(\n (e: PointerEvent) => {\n dragPointerMove(e);\n longPressPointerMove(e);\n },\n [dragPointerMove, longPressPointerMove]\n );\n const handlePointerUp = React.useCallback(() => {\n initialPosition.current = undefined;\n longPressPointerUp();\n }, [longPressPointerUp]);\n React.useEffect(() => {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp);\n return () => {\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp);\n };\n }, [handlePointerMove, handlePointerUp]);\n return { handlePointerDown, handleButtonClick };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,6BAA8B,SAAQ,YAAY;IACjE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,6BAA6B,EAAE,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,IAAI,CAAC,EAAE,YAAY,KAChB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,CACN,MAAM,CAAC,EAAE,YAAY,EACrB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,mBAAmB,GACnB,uBAAuB,GACvB,sBAAsB,GACtB,iBAAiB,CAAC;AAEtB;;GAEG;AACH,eAAO,MAAM,qBAAqB,aACtB,gBAAgB,oCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,yBAAyB,aAC1B,gBAAgB,wCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,wBAAwB,aACzB,gBAAgB,uCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,2BAA2B,aAC5B,gBAAgB,kCAM3B,CAAC;AACF;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"TreeDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,6BAA8B,SAAQ,YAAY;IACjE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,6BAA6B,EAAE,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,IAAI,CAAC,EAAE,YAAY,KAChB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,CACN,MAAM,CAAC,EAAE,YAAY,EACrB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,mBAAmB,GACnB,uBAAuB,GACvB,sBAAsB,GACtB,iBAAiB,CAAC;AAEtB;;GAEG;AACH,eAAO,MAAM,qBAAqB,aACtB,gBAAgB,oCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,yBAAyB,aAC1B,gBAAgB,wCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,wBAAwB,aACzB,gBAAgB,uCAG3B,CAAC;AACF;;GAEG;AACH,eAAO,MAAM,2BAA2B,aAC5B,gBAAgB,kCAM3B,CAAC;AACF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,SAAU,YAAY,YAW7C,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeDataProvider.js","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAkFH;;GAEG;AACI,MAAM,qBAAqB,GAAG,CACnC,QAA0B,EACO,EAAE;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AAJW,QAAA,qBAAqB,yBAIhC;AACF;;GAEG;AACI,MAAM,yBAAyB,GAAG,CACvC,QAA0B,EACW,EAAE;IACvC,OAAO,SAAS,KAAM,QAAoC,CAAC,IAAI,CAAC;AAClE,CAAC,CAAC;AAJW,QAAA,yBAAyB,6BAIpC;AACF;;GAEG;AACI,MAAM,wBAAwB,GAAG,CACtC,QAA0B,EACU,EAAE;IACtC,OAAO,OAAO,QAAQ,KAAK,UAAU,CAAC;AACxC,CAAC,CAAC;AAJW,QAAA,wBAAwB,4BAInC;AACF;;GAEG;AACI,MAAM,2BAA2B,GAAG,CACzC,QAA0B,EACK,EAAE;IACjC,MAAM,SAAS,GAAG,QAA6B,CAAC;IAChD,OAAO,CACL,SAAS,KAAK,SAAS,CAAC,QAAQ,IAAI,SAAS,KAAK,SAAS,CAAC,aAAa,CAC1E,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,2BAA2B,+BAOtC;AACF;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"TreeDataProvider.js","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAkFH;;GAEG;AACI,MAAM,qBAAqB,GAAG,CACnC,QAA0B,EACO,EAAE;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AAJW,QAAA,qBAAqB,yBAIhC;AACF;;GAEG;AACI,MAAM,yBAAyB,GAAG,CACvC,QAA0B,EACW,EAAE;IACvC,OAAO,SAAS,KAAM,QAAoC,CAAC,IAAI,CAAC;AAClE,CAAC,CAAC;AAJW,QAAA,yBAAyB,6BAIpC;AACF;;GAEG;AACI,MAAM,wBAAwB,GAAG,CACtC,QAA0B,EACU,EAAE;IACtC,OAAO,OAAO,QAAQ,KAAK,UAAU,CAAC;AACxC,CAAC,CAAC;AAJW,QAAA,wBAAwB,4BAInC;AACF;;GAEG;AACI,MAAM,2BAA2B,GAAG,CACzC,QAA0B,EACK,EAAE;IACjC,MAAM,SAAS,GAAG,QAA6B,CAAC;IAChD,OAAO,CACL,SAAS,KAAK,SAAS,CAAC,QAAQ,IAAI,SAAS,KAAK,SAAS,CAAC,aAAa,CAC1E,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,2BAA2B,+BAOtC;AACF;;;;;GAKG;AACI,MAAM,WAAW,GAAG,CAAC,IAAkB,EAAE,EAAE;IAChD,MAAM,eAAe,GAAG,IAAqC,CAAC;IAC9D,IACE,UAAU,IAAI,eAAe;QAC7B,eAAe,CAAC,QAAQ;QACxB,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAEnC,OAAO,IAAI,CAAC;IACd,MAAM,aAAa,GAAG,IAA+B,CAAC;IACtD,IAAI,aAAa,IAAI,aAAa,IAAI,aAAa,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7E,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAXW,QAAA,WAAW,eAWtB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport type { PropertyRecord } from \"@itwin/appui-abstract\";\nimport type { CheckBoxState } from \"@itwin/core-react\";\nimport type { PageOptions } from \"../common/PageOptions\";\nimport type { ItemStyle } from \"../properties/ItemStyle\";\n\n/**\n * A node item which can be displayed in a tree.\n * @public\n */\nexport interface TreeNodeItem {\n id: string;\n parentId?: string;\n label: PropertyRecord;\n description?: string;\n autoExpand?: boolean;\n icon?: string;\n isSelectionDisabled?: boolean;\n isCheckboxVisible?: boolean;\n isCheckboxDisabled?: boolean;\n checkBoxState?: CheckBoxState;\n isEditable?: boolean;\n style?: ItemStyle;\n /**\n * A key-value pairs data structure that can be used by data provider\n * to store some custom data for this node item.\n */\n extendedData?: { [key: string]: any };\n}\n\n/** A [[TreeNodeItem]] for immediately loaded trees\n * @public\n */\nexport interface ImmediatelyLoadedTreeNodeItem extends TreeNodeItem {\n children?: TreeNodeItem[];\n}\n\n/** A [[TreeNodeItem]] for delay-loaded trees\n * @public\n */\nexport interface DelayLoadedTreeNodeItem extends TreeNodeItem {\n hasChildren?: boolean;\n}\n\n/** Array of tree node data elements\n * @public\n */\nexport type TreeDataProviderRaw = ImmediatelyLoadedTreeNodeItem[];\n\n/** A Promise for TreeDataProviderRaw\n * @public\n */\nexport type TreeDataProviderPromise = Promise<TreeDataProviderRaw>;\n\n/** Signature for a method that returns TreeDataProviderPromise for supplied parent node\n * @public\n */\nexport type TreeDataProviderMethod = (\n node?: TreeNodeItem\n) => Promise<DelayLoadedTreeNodeItem[]>;\n\n/** Interface for a tree data provider class\n * @public\n */\nexport interface ITreeDataProvider {\n getNodesCount(parent?: TreeNodeItem): Promise<number>;\n getNodes(\n parent?: TreeNodeItem,\n page?: PageOptions\n ): Promise<DelayLoadedTreeNodeItem[]>;\n}\n\n/** Type definition for all Tree data providers\n * @public\n */\nexport type TreeDataProvider =\n | TreeDataProviderRaw\n | TreeDataProviderPromise\n | TreeDataProviderMethod\n | ITreeDataProvider;\n\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderRaw]]\n * @public\n */\nexport const isTreeDataProviderRaw = (\n provider: TreeDataProvider\n): provider is TreeDataProviderRaw => {\n return Array.isArray(provider);\n};\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderPromise]]\n * @public\n */\nexport const isTreeDataProviderPromise = (\n provider: TreeDataProvider\n): provider is TreeDataProviderPromise => {\n return undefined !== (provider as TreeDataProviderPromise).then;\n};\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderMethod]]\n * @public\n */\nexport const isTreeDataProviderMethod = (\n provider: TreeDataProvider\n): provider is TreeDataProviderMethod => {\n return typeof provider === \"function\";\n};\n/** Checks if [[TreeDataProvider]] is an [[ITreeDataProvider]]\n * @public\n */\nexport const isTreeDataProviderInterface = (\n provider: TreeDataProvider\n): provider is ITreeDataProvider => {\n const candidate = provider as ITreeDataProvider;\n return (\n undefined !== candidate.getNodes && undefined !== candidate.getNodesCount\n );\n};\n/**\n * Determines whether node has children\n * @param node node to check\n * @returns whether node has children\n * @public\n */\nexport const hasChildren = (node: TreeNodeItem) => {\n const nodeAsImmediate = node as ImmediatelyLoadedTreeNodeItem;\n if (\n \"children\" in nodeAsImmediate &&\n nodeAsImmediate.children &&\n nodeAsImmediate.children.length > 0\n )\n return true;\n const nodeAsDelayed = node as DelayLoadedTreeNodeItem;\n if (\"hasChildren\" in nodeAsDelayed && nodeAsDelayed.hasChildren) return true;\n return false;\n};\n\n/**\n * EditableTreeDataProvider provides cell editing processing for the Tree.\n * @public\n */\nexport interface EditableTreeDataProvider extends ITreeDataProvider {\n updateLabel(nodeItem: TreeNodeItem, newLabel: string): void;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeEventDispatcher.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"AAIA;;GAEG;AAsBH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAU3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,OAAO,CAAC,iBAAiB,CAKrB;gBAGF,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,gBAAgB;
|
|
1
|
+
{"version":3,"file":"TreeEventDispatcher.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"AAIA;;GAEG;AAsBH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAU3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,OAAO,CAAC,iBAAiB,CAKrB;gBAGF,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,gBAAgB;IAgFlC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa;IAqC7D,cAAc,CAAC,MAAM,EAAE,MAAM;IAK7B,eAAe,CAAC,MAAM,EAAE,MAAM;IAK9B,aAAa,CAClB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;IAuBvC,eAAe,CAAC,MAAM,EAAE,MAAM;IAI9B,eAAe,CAAC,MAAM,EAAE,MAAM;IAI9B,qBAAqB,CAAC,MAAM,EAAE,MAAM;IAapC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI;IAI/C,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI;IAIpD,OAAO,CAAC,uBAAuB;IA0B/B,OAAO,CAAC,mBAAmB;IA+C3B,OAAO,CAAE,mBAAmB;IA4B5B,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,MAAM,CAAC,wBAAwB;CAexC"}
|
|
@@ -31,7 +31,6 @@ class TreeEventDispatcher {
|
|
|
31
31
|
})))), (0, rxjs_1.concatAll)(), (0, rxjs_1.shareReplay)({
|
|
32
32
|
refCount: true,
|
|
33
33
|
}));
|
|
34
|
-
/* istanbul ignore else */
|
|
35
34
|
if (this._treeEvents.onSelectionModified !== undefined)
|
|
36
35
|
this._treeEvents.onSelectionModified({ modifications });
|
|
37
36
|
});
|
|
@@ -44,7 +43,6 @@ class TreeEventDispatcher {
|
|
|
44
43
|
}), (0, rxjs_1.shareReplay)({
|
|
45
44
|
refCount: true,
|
|
46
45
|
}));
|
|
47
|
-
/* istanbul ignore else */
|
|
48
46
|
if (this._treeEvents.onSelectionModified !== undefined)
|
|
49
47
|
this._treeEvents.onSelectionModified({ modifications });
|
|
50
48
|
});
|
|
@@ -57,7 +55,6 @@ class TreeEventDispatcher {
|
|
|
57
55
|
}), (0, rxjs_1.shareReplay)({
|
|
58
56
|
refCount: true,
|
|
59
57
|
}));
|
|
60
|
-
/* istanbul ignore else */
|
|
61
58
|
if (this._treeEvents.onSelectionReplaced !== undefined)
|
|
62
59
|
this._treeEvents.onSelectionReplaced({ replacements });
|
|
63
60
|
});
|
|
@@ -81,17 +78,14 @@ class TreeEventDispatcher {
|
|
|
81
78
|
const stateChanges = (0, rxjs_1.concat)((0, rxjs_1.of)(immediateStateChanges), (0, rxjs_1.from)(this._activeSelections).pipe((0, rxjs_1.mergeAll)(), (0, rxjs_1.map)(({ selectedNodeItems }) => selectedNodeItems.map((item) => ({ nodeItem: item, newState }))))).pipe((0, rxjs_1.shareReplay)({
|
|
82
79
|
refCount: true,
|
|
83
80
|
}));
|
|
84
|
-
/* istanbul ignore else */
|
|
85
81
|
if (this._treeEvents.onCheckboxStateChanged !== undefined)
|
|
86
82
|
this._treeEvents.onCheckboxStateChanged({ stateChanges });
|
|
87
83
|
}
|
|
88
84
|
onNodeExpanded(nodeId) {
|
|
89
|
-
/* istanbul ignore else */
|
|
90
85
|
if (this._treeEvents.onNodeExpanded !== undefined)
|
|
91
86
|
this._treeEvents.onNodeExpanded({ nodeId });
|
|
92
87
|
}
|
|
93
88
|
onNodeCollapsed(nodeId) {
|
|
94
|
-
/* istanbul ignore else */
|
|
95
89
|
if (this._treeEvents.onNodeCollapsed !== undefined)
|
|
96
90
|
this._treeEvents.onNodeCollapsed({ nodeId });
|
|
97
91
|
}
|
|
@@ -157,7 +151,7 @@ class TreeEventDispatcher {
|
|
|
157
151
|
: this._getVisibleNodes().getModel().getRootNode();
|
|
158
152
|
return parentNode
|
|
159
153
|
? (0, Observable_1.toRxjsObservable)(this._nodeLoader.loadNode(parentNode, node.childIndex))
|
|
160
|
-
:
|
|
154
|
+
: rxjs_1.EMPTY;
|
|
161
155
|
})).pipe(
|
|
162
156
|
// We have requested multiple nodes that may belong to the same page.
|
|
163
157
|
// When the page loads we only want to process the loaded nodes once.
|
|
@@ -195,7 +189,6 @@ class TreeEventDispatcher {
|
|
|
195
189
|
const items = [];
|
|
196
190
|
for (const nodeId of nodeIds) {
|
|
197
191
|
const node = this._getVisibleNodes().getModel().getNode(nodeId);
|
|
198
|
-
// istanbul ignore else
|
|
199
192
|
if (node !== undefined && !node.isSelectionDisabled) {
|
|
200
193
|
items.push(node.item);
|
|
201
194
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeEventDispatcher.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAGH,+BAkBc;AAQd,0EAGyC;AAQzC,2CAA8C;AAE9C,6CAAgD;AAEhD;;;;GAIG;AACH,MAAa,mBAAmB;IAc9B,YACE,UAAsB,EACtB,UAA2B,EAC3B,aAA4B,EAC5B,eAAuC;QAXjC,sBAAiB,GAAG,IAAI,GAAG,EAKhC,CAAC;QAQF,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAExC,IAAI,CAAC,iBAAiB,GAAG,IAAI,2CAAoB,CAC/C,aAAa,EACb,IAAI,CAAC,gBAAgB,CACtB,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,WAAW,CAChD,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE;YACvB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CACzC,IAAA,UAAG,EAAC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,EAAE,CACzC,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,CAClD,IAAA,gBAAS,EAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,IAAA,WAAI,EAAC,iBAAiB,CAAC,CAAC,EAC7D,IAAA,cAAO,GAAE,EACT,IAAA,UAAG,EAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gBACrB,iBAAiB,EAAE,YAAY;gBAC/B,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;aAC5D,CAAC,CAAC,CACJ,CACF,EACD,IAAA,gBAAS,GAAE,EACX,IAAA,kBAAW,EAAC;gBACV,QAAQ,EAAE,IAAI;aACf,CAAC,CACH,CAAC;YAEF,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CACnD,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,EAAE;YACrC,MAAM,aAAa,GAAG,IAAA,YAAK,EACzB,IAAA,YAAK,EAAC,GAAG,EAAE;gBACT,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC1C,OAAO,YAAK,CAAC;YACf,CAAC,CAAC,EACF,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,eAAe,CAAC,CAC7D,CAAC,IAAI,CACJ,IAAA,eAAQ,EAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC/C,CAAC,CAAC,EACF,IAAA,kBAAW,EAAC;gBACV,QAAQ,EAAE,IAAI;aACf,CAAC,CACH,CAAC;YAEF,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CACpD,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YACtB,MAAM,YAAY,GAAG,IAAA,YAAK,EACxB,IAAA,YAAK,EAAC,GAAG,EAAE;gBACT,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACzC,OAAO,YAAK,CAAC;YACf,CAAC,CAAC,EACF,IAAI,CAAC,uBAAuB,CAAC,eAAe,EAAE,EAAE,CAAC,CAClD,CAAC,IAAI,CACJ,IAAA,eAAQ,EAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC9C,CAAC,CAAC,EACF,IAAA,kBAAW,EAAC;gBACV,QAAQ,EAAE,IAAI;aACf,CAAC,CACH,CAAC;YAEF,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAC3D,CAAC,CACF,CAAC;IACJ,CAAC;IAEM,qBAAqB,CAAC,MAAc,EAAE,QAAuB;QAClE,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,WAAW,KAAK,SAAS;YAAE,OAAO;QAEtC,MAAM,qBAAqB,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzE,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YAC3B,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAChC,IACE,IAAA,2BAAe,EAAC,IAAI,CAAC;oBACrB,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE;oBAC1B,IAAI,CAAC,UAAU;oBACf,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAChC,CAAC;oBACD,qBAAqB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,aAAM,EACzB,IAAA,SAAE,EAAC,qBAAqB,CAAC,EACzB,IAAA,WAAI,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAC/B,IAAA,eAAQ,GAAE,EACV,IAAA,UAAG,EAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAC5B,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAChE,CACF,CACF,CAAC,IAAI,CACJ,IAAA,kBAAW,EAAC;YACV,QAAQ,EAAE,IAAI;SACf,CAAC,CACH,CAAC;QAEF,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,sBAAsB,KAAK,SAAS;YACvD,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;IAEM,cAAc,CAAC,MAAc;QAClC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,cAAc,KAAK,SAAS;YAC/C,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,KAAK,SAAS;YAChD,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEM,aAAa,CAClB,MAAc,EACd,KAA4C;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,cAAc,GAAG,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC;QAE/C,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,iBAAiB,KAAK,SAAS,EAChD,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAE/C,mFAAmF;YACnF,CAAC,cAAc,IAAI,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;QAED,gEAAgE;QAChE,IAAI,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEM,qBAAqB,CAAC,MAAc;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;QAEtD,iEAAiE;QACjE,IACE,cAAc;YACd,IAAI,CAAC,WAAW,CAAC,qBAAqB,KAAK,SAAS,EACpD,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEM,aAAa,CAAC,KAA0B;QAC7C,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAEM,WAAW,CAAC,KAA0B;QAC3C,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;IAEO,uBAAuB,CAC7B,SAA+C,EAC/C,WAAgC;QAKhC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,IAAA,uCAAgB,EAAC,SAAS,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAChE,IAAA,UAAG,EAAC,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE;gBAC/B,OAAO;oBACL,iBAAiB;oBACjB,mBAAmB,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;iBACxD,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,IAAA,SAAE,EAAC;YACR,iBAAiB,EAAE,aAAa;YAChC,mBAAmB,EAAE,eAAe;SACrC,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CACzB,OAAe,EACf,OAAe;QAEf,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAC7B,mBAAmB,CAAC,wBAAwB,CAC1C,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAC3C,CAAC;QAEJ,MAAM,mBAAmB,GAAG,IAAA,WAAI,EAC9B,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;gBAC9B,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC3D,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;YACrD,OAAO,UAAU;gBACf,CAAC,CAAC,IAAA,6BAAgB,EACd,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CACvD;gBACH,CAAC,CAAC,0BAA0B,CAAC,YAAK,CAAC;QACvC,CAAC,CAAC,CACH,CAAC,IAAI;QACJ,qEAAqE;QACrE,qEAAqE;QACrE,gGAAgG;QAChG,6EAA6E;QAC7E,IAAA,eAAQ,GAAE,EACV,IAAA,2BAAoB,GAAE,CACvB,CAAC;QAEF,OAAO,IAAA,aAAM,EACX,IAAA,SAAE,EACA,UAAU;aACP,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;aAC3C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5B,EACD,mBAAmB,CAAC,IAAI,CACtB,IAAA,UAAG,EAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CACtB,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CACxD,CACF,CACF,CAAC,IAAI,CACJ,IAAA,aAAM,EAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,oFAAoF;QACpF,IAAA,kBAAW,EAAC,oBAAa,CAAC,CAC3B,CAAC;IACJ,CAAC;IAEO,CAAC,mBAAmB,CAC1B,OAAe,EACf,OAAe;QAEf,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAC3C,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,CAAC;YACb,CAAC;YAED,IAAI,IAAA,2BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,IAAI,OAAO,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;oBAC/C,MAAM,IAAI,CAAC;oBACX,OAAO;gBACT,CAAC;gBAED,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;oBAC/C,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO;oBACT,CAAC;oBAED,cAAc,GAAG,IAAI,CAAC;oBACtB,MAAM,IAAI,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,OAAiB;QACxC,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,uBAAuB;YACvB,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,MAAM,CAAC,wBAAwB,CACrC,KAAyD;QAEzD,MAAM,eAAe,GAAoB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAA+B,EAAE,CAAC;QACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAA,2BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,OAAO,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;CACF;AA7UD,kDA6UC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport type { Observable } from \"rxjs\";\nimport {\n asapScheduler,\n concat,\n concatAll,\n concatMap,\n defer,\n distinctUntilChanged,\n EMPTY,\n filter,\n finalize,\n from,\n map,\n merge,\n mergeAll,\n of,\n shareReplay,\n subscribeOn,\n toArray,\n} from \"rxjs\";\nimport type { CheckBoxState } from \"@itwin/core-react\";\nimport type { SelectionMode } from \"../../common/selection/SelectionModes\";\nimport type { TreeNodeItem } from \"../TreeDataProvider\";\nimport type {\n IndividualSelection,\n RangeSelection,\n} from \"./internal/TreeSelectionManager\";\nimport {\n isRangeSelection,\n TreeSelectionManager,\n} from \"./internal/TreeSelectionManager\";\nimport type { TreeActions } from \"./TreeActions\";\nimport type { TreeEvents } from \"./TreeEvents\";\nimport type {\n TreeModelNode,\n TreeModelNodePlaceholder,\n VisibleTreeNodes,\n} from \"./TreeModel\";\nimport { isTreeModelNode } from \"./TreeModel\";\nimport type { ITreeNodeLoader } from \"./TreeNodeLoader\";\nimport { toRxjsObservable } from \"./Observable\";\n\n/**\n * Default event dispatcher that emits tree events according performed actions.\n * It converts low level tree events into TreeEvents.\n * @internal\n */\nexport class TreeEventDispatcher implements TreeActions {\n private _treeEvents: TreeEvents;\n private _nodeLoader: ITreeNodeLoader;\n private _getVisibleNodes: () => VisibleTreeNodes;\n\n private _selectionManager: TreeSelectionManager;\n\n private _activeSelections = new Set<\n Observable<{\n selectedNodeItems: TreeNodeItem[];\n deselectedNodeItems?: TreeNodeItem[];\n }>\n >();\n\n constructor(\n treeEvents: TreeEvents,\n nodeLoader: ITreeNodeLoader,\n selectionMode: SelectionMode,\n getVisibleNodes: () => VisibleTreeNodes\n ) {\n this._treeEvents = treeEvents;\n this._nodeLoader = nodeLoader;\n this._getVisibleNodes = getVisibleNodes;\n\n this._selectionManager = new TreeSelectionManager(\n selectionMode,\n this._getVisibleNodes\n );\n\n this._selectionManager.onDragSelection.addListener(\n ({ selectionChanges }) => {\n const modifications = selectionChanges.pipe(\n map(({ selectedNodes, deselectedNodes }) =>\n this.collectSelectionChanges(selectedNodes, []).pipe(\n concatMap(({ selectedNodeItems }) => from(selectedNodeItems)),\n toArray(),\n map((collectedIds) => ({\n selectedNodeItems: collectedIds,\n deselectedNodeItems: this.collectNodeItems(deselectedNodes),\n }))\n )\n ),\n concatAll(),\n shareReplay({\n refCount: true,\n })\n );\n\n /* istanbul ignore else */\n if (this._treeEvents.onSelectionModified !== undefined)\n this._treeEvents.onSelectionModified({ modifications });\n }\n );\n\n this._selectionManager.onSelectionChanged.addListener(\n ({ selectedNodes, deselectedNodes }) => {\n const modifications = merge(\n defer(() => {\n this._activeSelections.add(modifications);\n return EMPTY;\n }),\n this.collectSelectionChanges(selectedNodes, deselectedNodes)\n ).pipe(\n finalize(() => {\n this._activeSelections.delete(modifications);\n }),\n shareReplay({\n refCount: true,\n })\n );\n\n /* istanbul ignore else */\n if (this._treeEvents.onSelectionModified !== undefined)\n this._treeEvents.onSelectionModified({ modifications });\n }\n );\n\n this._selectionManager.onSelectionReplaced.addListener(\n ({ selectedNodeIds }) => {\n const replacements = merge(\n defer(() => {\n this._activeSelections.add(replacements);\n return EMPTY;\n }),\n this.collectSelectionChanges(selectedNodeIds, [])\n ).pipe(\n finalize(() => {\n this._activeSelections.delete(replacements);\n }),\n shareReplay({\n refCount: true,\n })\n );\n\n /* istanbul ignore else */\n if (this._treeEvents.onSelectionReplaced !== undefined)\n this._treeEvents.onSelectionReplaced({ replacements });\n }\n );\n }\n\n public onNodeCheckboxClicked(nodeId: string, newState: CheckBoxState) {\n const visibleNodes = this._getVisibleNodes();\n const clickedNode = visibleNodes.getModel().getNode(nodeId);\n if (clickedNode === undefined) return;\n\n const immediateStateChanges = [{ nodeItem: clickedNode.item, newState }];\n if (clickedNode.isSelected) {\n for (const node of visibleNodes) {\n if (\n isTreeModelNode(node) &&\n node.id !== clickedNode.id &&\n node.isSelected &&\n node.checkbox.state !== newState\n ) {\n immediateStateChanges.push({ nodeItem: node.item, newState });\n }\n }\n }\n\n const stateChanges = concat(\n of(immediateStateChanges),\n from(this._activeSelections).pipe(\n mergeAll(),\n map(({ selectedNodeItems }) =>\n selectedNodeItems.map((item) => ({ nodeItem: item, newState }))\n )\n )\n ).pipe(\n shareReplay({\n refCount: true,\n })\n );\n\n /* istanbul ignore else */\n if (this._treeEvents.onCheckboxStateChanged !== undefined)\n this._treeEvents.onCheckboxStateChanged({ stateChanges });\n }\n\n public onNodeExpanded(nodeId: string) {\n /* istanbul ignore else */\n if (this._treeEvents.onNodeExpanded !== undefined)\n this._treeEvents.onNodeExpanded({ nodeId });\n }\n\n public onNodeCollapsed(nodeId: string) {\n /* istanbul ignore else */\n if (this._treeEvents.onNodeCollapsed !== undefined)\n this._treeEvents.onNodeCollapsed({ nodeId });\n }\n\n public onNodeClicked(\n nodeId: string,\n event: React.MouseEvent<Element, MouseEvent>\n ) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n const isNodeSelected = node && node.isSelected;\n\n if (\n event.detail === 2 &&\n this._treeEvents.onNodeDoubleClick !== undefined\n ) {\n this._treeEvents.onNodeDoubleClick({ nodeId });\n\n // trigger onNodeClicked as to not lose highlight of the node when double clicking.\n !isNodeSelected && this._selectionManager.onNodeClicked(nodeId, event);\n } else {\n this._selectionManager.onNodeClicked(nodeId, event);\n }\n\n // if clicked node was already selected fire delayed click event\n if (isNodeSelected && this._treeEvents.onDelayedNodeClick !== undefined) {\n this._treeEvents.onDelayedNodeClick({ nodeId });\n }\n }\n\n public onNodeMouseDown(nodeId: string) {\n this._selectionManager.onNodeMouseDown(nodeId);\n }\n\n public onNodeMouseMove(nodeId: string) {\n this._selectionManager.onNodeMouseMove(nodeId);\n }\n\n public onNodeEditorActivated(nodeId: string) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n const isNodeSelected = node ? node.isSelected : false;\n\n // if node was already selected, fire onNodeEditorActivated event\n if (\n isNodeSelected &&\n this._treeEvents.onNodeEditorActivated !== undefined\n ) {\n this._treeEvents.onNodeEditorActivated({ nodeId });\n }\n }\n\n public onTreeKeyDown(event: React.KeyboardEvent): void {\n this._selectionManager.onTreeKeyDown(event, this);\n }\n\n public onTreeKeyUp(event: React.KeyboardEvent): void {\n this._selectionManager.onTreeKeyUp(event, this);\n }\n\n private collectSelectionChanges(\n selection: IndividualSelection | RangeSelection,\n deselection: IndividualSelection\n ): Observable<{\n selectedNodeItems: TreeNodeItem[];\n deselectedNodeItems: TreeNodeItem[];\n }> {\n const deselectedItems = this.collectNodeItems(deselection);\n if (isRangeSelection(selection)) {\n return this.collectNodesBetween(selection.from, selection.to).pipe(\n map((selectedNodeItems, index) => {\n return {\n selectedNodeItems,\n deselectedNodeItems: index === 0 ? deselectedItems : [],\n };\n })\n );\n }\n\n const selectedItems = this.collectNodeItems(selection);\n return of({\n selectedNodeItems: selectedItems,\n deselectedNodeItems: deselectedItems,\n });\n }\n\n private collectNodesBetween(\n nodeId1: string,\n nodeId2: string\n ): Observable<TreeNodeItem[]> {\n const [readyNodes, nodesToLoad] =\n TreeEventDispatcher.groupNodesByLoadingState(\n this.iterateNodesBetween(nodeId1, nodeId2)\n );\n\n const loadedSelectedNodes = from(\n nodesToLoad.map((node) => {\n const parentNode = node.parentId\n ? this._getVisibleNodes().getModel().getNode(node.parentId)\n : this._getVisibleNodes().getModel().getRootNode();\n return parentNode\n ? toRxjsObservable(\n this._nodeLoader.loadNode(parentNode, node.childIndex)\n )\n : /* istanbul ignore next */ EMPTY;\n })\n ).pipe(\n // We have requested multiple nodes that may belong to the same page.\n // When the page loads we only want to process the loaded nodes once.\n // Making assumption that loaded nodes from the same page will be emitted without interruptions.\n // Maybe we could simplify this to `this._nodeLoader.loadNodes(nodesToLoad)`?\n mergeAll(),\n distinctUntilChanged()\n );\n\n return concat(\n of(\n readyNodes\n .filter((node) => !node.isSelectionDisabled)\n .map((node) => node.item)\n ),\n loadedSelectedNodes.pipe(\n map(({ loadedNodes }) =>\n loadedNodes.filter((item) => !item.isSelectionDisabled)\n )\n )\n ).pipe(\n filter((nodeItems) => nodeItems.length > 0),\n // Give enough time for multiple subscribers to subscribe before any emissions begin\n subscribeOn(asapScheduler)\n );\n }\n\n private *iterateNodesBetween(\n nodeId1: string,\n nodeId2: string\n ): Iterable<TreeModelNode | TreeModelNodePlaceholder> {\n let firstNodeFound = false;\n for (const node of this._getVisibleNodes()) {\n if (firstNodeFound) {\n yield node;\n }\n\n if (isTreeModelNode(node)) {\n if (nodeId1 === nodeId2 && node.id === nodeId1) {\n yield node;\n return;\n }\n\n if (node.id === nodeId1 || node.id === nodeId2) {\n if (firstNodeFound) {\n return;\n }\n\n firstNodeFound = true;\n yield node;\n }\n }\n }\n }\n\n private collectNodeItems(nodeIds: string[]): TreeNodeItem[] {\n const items: TreeNodeItem[] = [];\n for (const nodeId of nodeIds) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n // istanbul ignore else\n if (node !== undefined && !node.isSelectionDisabled) {\n items.push(node.item);\n }\n }\n return items;\n }\n\n private static groupNodesByLoadingState(\n nodes: Iterable<TreeModelNode | TreeModelNodePlaceholder>\n ): [TreeModelNode[], TreeModelNodePlaceholder[]] {\n const loadedNodeItems: TreeModelNode[] = [];\n const nodesToLoad: TreeModelNodePlaceholder[] = [];\n for (const node of nodes) {\n if (isTreeModelNode(node)) {\n loadedNodeItems.push(node);\n } else {\n nodesToLoad.push(node);\n }\n }\n\n return [loadedNodeItems, nodesToLoad];\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TreeEventDispatcher.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport type { Observable } from \"rxjs\";\nimport {\n asapScheduler,\n concat,\n concatAll,\n concatMap,\n defer,\n distinctUntilChanged,\n EMPTY,\n filter,\n finalize,\n from,\n map,\n merge,\n mergeAll,\n of,\n shareReplay,\n subscribeOn,\n toArray,\n} from \"rxjs\";\nimport type { CheckBoxState } from \"@itwin/core-react\";\nimport type { SelectionMode } from \"../../common/selection/SelectionModes\";\nimport type { TreeNodeItem } from \"../TreeDataProvider\";\nimport type {\n IndividualSelection,\n RangeSelection,\n} from \"./internal/TreeSelectionManager\";\nimport {\n isRangeSelection,\n TreeSelectionManager,\n} from \"./internal/TreeSelectionManager\";\nimport type { TreeActions } from \"./TreeActions\";\nimport type { TreeEvents } from \"./TreeEvents\";\nimport type {\n TreeModelNode,\n TreeModelNodePlaceholder,\n VisibleTreeNodes,\n} from \"./TreeModel\";\nimport { isTreeModelNode } from \"./TreeModel\";\nimport type { ITreeNodeLoader } from \"./TreeNodeLoader\";\nimport { toRxjsObservable } from \"./Observable\";\n\n/**\n * Default event dispatcher that emits tree events according performed actions.\n * It converts low level tree events into TreeEvents.\n * @internal\n */\nexport class TreeEventDispatcher implements TreeActions {\n private _treeEvents: TreeEvents;\n private _nodeLoader: ITreeNodeLoader;\n private _getVisibleNodes: () => VisibleTreeNodes;\n\n private _selectionManager: TreeSelectionManager;\n\n private _activeSelections = new Set<\n Observable<{\n selectedNodeItems: TreeNodeItem[];\n deselectedNodeItems?: TreeNodeItem[];\n }>\n >();\n\n constructor(\n treeEvents: TreeEvents,\n nodeLoader: ITreeNodeLoader,\n selectionMode: SelectionMode,\n getVisibleNodes: () => VisibleTreeNodes\n ) {\n this._treeEvents = treeEvents;\n this._nodeLoader = nodeLoader;\n this._getVisibleNodes = getVisibleNodes;\n\n this._selectionManager = new TreeSelectionManager(\n selectionMode,\n this._getVisibleNodes\n );\n\n this._selectionManager.onDragSelection.addListener(\n ({ selectionChanges }) => {\n const modifications = selectionChanges.pipe(\n map(({ selectedNodes, deselectedNodes }) =>\n this.collectSelectionChanges(selectedNodes, []).pipe(\n concatMap(({ selectedNodeItems }) => from(selectedNodeItems)),\n toArray(),\n map((collectedIds) => ({\n selectedNodeItems: collectedIds,\n deselectedNodeItems: this.collectNodeItems(deselectedNodes),\n }))\n )\n ),\n concatAll(),\n shareReplay({\n refCount: true,\n })\n );\n\n if (this._treeEvents.onSelectionModified !== undefined)\n this._treeEvents.onSelectionModified({ modifications });\n }\n );\n\n this._selectionManager.onSelectionChanged.addListener(\n ({ selectedNodes, deselectedNodes }) => {\n const modifications = merge(\n defer(() => {\n this._activeSelections.add(modifications);\n return EMPTY;\n }),\n this.collectSelectionChanges(selectedNodes, deselectedNodes)\n ).pipe(\n finalize(() => {\n this._activeSelections.delete(modifications);\n }),\n shareReplay({\n refCount: true,\n })\n );\n\n if (this._treeEvents.onSelectionModified !== undefined)\n this._treeEvents.onSelectionModified({ modifications });\n }\n );\n\n this._selectionManager.onSelectionReplaced.addListener(\n ({ selectedNodeIds }) => {\n const replacements = merge(\n defer(() => {\n this._activeSelections.add(replacements);\n return EMPTY;\n }),\n this.collectSelectionChanges(selectedNodeIds, [])\n ).pipe(\n finalize(() => {\n this._activeSelections.delete(replacements);\n }),\n shareReplay({\n refCount: true,\n })\n );\n\n if (this._treeEvents.onSelectionReplaced !== undefined)\n this._treeEvents.onSelectionReplaced({ replacements });\n }\n );\n }\n\n public onNodeCheckboxClicked(nodeId: string, newState: CheckBoxState) {\n const visibleNodes = this._getVisibleNodes();\n const clickedNode = visibleNodes.getModel().getNode(nodeId);\n if (clickedNode === undefined) return;\n\n const immediateStateChanges = [{ nodeItem: clickedNode.item, newState }];\n if (clickedNode.isSelected) {\n for (const node of visibleNodes) {\n if (\n isTreeModelNode(node) &&\n node.id !== clickedNode.id &&\n node.isSelected &&\n node.checkbox.state !== newState\n ) {\n immediateStateChanges.push({ nodeItem: node.item, newState });\n }\n }\n }\n\n const stateChanges = concat(\n of(immediateStateChanges),\n from(this._activeSelections).pipe(\n mergeAll(),\n map(({ selectedNodeItems }) =>\n selectedNodeItems.map((item) => ({ nodeItem: item, newState }))\n )\n )\n ).pipe(\n shareReplay({\n refCount: true,\n })\n );\n\n if (this._treeEvents.onCheckboxStateChanged !== undefined)\n this._treeEvents.onCheckboxStateChanged({ stateChanges });\n }\n\n public onNodeExpanded(nodeId: string) {\n if (this._treeEvents.onNodeExpanded !== undefined)\n this._treeEvents.onNodeExpanded({ nodeId });\n }\n\n public onNodeCollapsed(nodeId: string) {\n if (this._treeEvents.onNodeCollapsed !== undefined)\n this._treeEvents.onNodeCollapsed({ nodeId });\n }\n\n public onNodeClicked(\n nodeId: string,\n event: React.MouseEvent<Element, MouseEvent>\n ) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n const isNodeSelected = node && node.isSelected;\n\n if (\n event.detail === 2 &&\n this._treeEvents.onNodeDoubleClick !== undefined\n ) {\n this._treeEvents.onNodeDoubleClick({ nodeId });\n\n // trigger onNodeClicked as to not lose highlight of the node when double clicking.\n !isNodeSelected && this._selectionManager.onNodeClicked(nodeId, event);\n } else {\n this._selectionManager.onNodeClicked(nodeId, event);\n }\n\n // if clicked node was already selected fire delayed click event\n if (isNodeSelected && this._treeEvents.onDelayedNodeClick !== undefined) {\n this._treeEvents.onDelayedNodeClick({ nodeId });\n }\n }\n\n public onNodeMouseDown(nodeId: string) {\n this._selectionManager.onNodeMouseDown(nodeId);\n }\n\n public onNodeMouseMove(nodeId: string) {\n this._selectionManager.onNodeMouseMove(nodeId);\n }\n\n public onNodeEditorActivated(nodeId: string) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n const isNodeSelected = node ? node.isSelected : false;\n\n // if node was already selected, fire onNodeEditorActivated event\n if (\n isNodeSelected &&\n this._treeEvents.onNodeEditorActivated !== undefined\n ) {\n this._treeEvents.onNodeEditorActivated({ nodeId });\n }\n }\n\n public onTreeKeyDown(event: React.KeyboardEvent): void {\n this._selectionManager.onTreeKeyDown(event, this);\n }\n\n public onTreeKeyUp(event: React.KeyboardEvent): void {\n this._selectionManager.onTreeKeyUp(event, this);\n }\n\n private collectSelectionChanges(\n selection: IndividualSelection | RangeSelection,\n deselection: IndividualSelection\n ): Observable<{\n selectedNodeItems: TreeNodeItem[];\n deselectedNodeItems: TreeNodeItem[];\n }> {\n const deselectedItems = this.collectNodeItems(deselection);\n if (isRangeSelection(selection)) {\n return this.collectNodesBetween(selection.from, selection.to).pipe(\n map((selectedNodeItems, index) => {\n return {\n selectedNodeItems,\n deselectedNodeItems: index === 0 ? deselectedItems : [],\n };\n })\n );\n }\n\n const selectedItems = this.collectNodeItems(selection);\n return of({\n selectedNodeItems: selectedItems,\n deselectedNodeItems: deselectedItems,\n });\n }\n\n private collectNodesBetween(\n nodeId1: string,\n nodeId2: string\n ): Observable<TreeNodeItem[]> {\n const [readyNodes, nodesToLoad] =\n TreeEventDispatcher.groupNodesByLoadingState(\n this.iterateNodesBetween(nodeId1, nodeId2)\n );\n\n const loadedSelectedNodes = from(\n nodesToLoad.map((node) => {\n const parentNode = node.parentId\n ? this._getVisibleNodes().getModel().getNode(node.parentId)\n : this._getVisibleNodes().getModel().getRootNode();\n return parentNode\n ? toRxjsObservable(\n this._nodeLoader.loadNode(parentNode, node.childIndex)\n )\n : EMPTY;\n })\n ).pipe(\n // We have requested multiple nodes that may belong to the same page.\n // When the page loads we only want to process the loaded nodes once.\n // Making assumption that loaded nodes from the same page will be emitted without interruptions.\n // Maybe we could simplify this to `this._nodeLoader.loadNodes(nodesToLoad)`?\n mergeAll(),\n distinctUntilChanged()\n );\n\n return concat(\n of(\n readyNodes\n .filter((node) => !node.isSelectionDisabled)\n .map((node) => node.item)\n ),\n loadedSelectedNodes.pipe(\n map(({ loadedNodes }) =>\n loadedNodes.filter((item) => !item.isSelectionDisabled)\n )\n )\n ).pipe(\n filter((nodeItems) => nodeItems.length > 0),\n // Give enough time for multiple subscribers to subscribe before any emissions begin\n subscribeOn(asapScheduler)\n );\n }\n\n private *iterateNodesBetween(\n nodeId1: string,\n nodeId2: string\n ): Iterable<TreeModelNode | TreeModelNodePlaceholder> {\n let firstNodeFound = false;\n for (const node of this._getVisibleNodes()) {\n if (firstNodeFound) {\n yield node;\n }\n\n if (isTreeModelNode(node)) {\n if (nodeId1 === nodeId2 && node.id === nodeId1) {\n yield node;\n return;\n }\n\n if (node.id === nodeId1 || node.id === nodeId2) {\n if (firstNodeFound) {\n return;\n }\n\n firstNodeFound = true;\n yield node;\n }\n }\n }\n }\n\n private collectNodeItems(nodeIds: string[]): TreeNodeItem[] {\n const items: TreeNodeItem[] = [];\n for (const nodeId of nodeIds) {\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n if (node !== undefined && !node.isSelectionDisabled) {\n items.push(node.item);\n }\n }\n return items;\n }\n\n private static groupNodesByLoadingState(\n nodes: Iterable<TreeModelNode | TreeModelNodePlaceholder>\n ): [TreeModelNode[], TreeModelNodePlaceholder[]] {\n const loadedNodeItems: TreeModelNode[] = [];\n const nodesToLoad: TreeModelNodePlaceholder[] = [];\n for (const node of nodes) {\n if (isTreeModelNode(node)) {\n loadedNodeItems.push(node);\n } else {\n nodesToLoad.push(node);\n }\n }\n\n return [loadedNodeItems, nodesToLoad];\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeModel.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EACV,uBAAuB,EACvB,6BAA6B,EAC7B,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAEvC,+FAA+F;IAC/F,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;IAEhD,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEhC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,SAAS,EAAE,OAAO,CAAC;IAEnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,+FAA+F;IAC/F,WAAW,CAAC,EAAE,wBAAwB,CAAC;IAEvC,QAAQ,EAAE,mBAAmB,CAAC;IAE9B,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,wBAAwB,GACxB,iBAAiB,CAAC;AAEtB;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,iBAAiB,GAAG,SAAS,GACjC,GAAG,IAAI,aAAa,CAMtB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,iBAAiB,GAAG,SAAS,GACjC,GAAG,IAAI,wBAAwB,CAEjC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,iBAAiB,GAAG,SAAS,GACjC,GAAG,IAAI,iBAAiB,CAM1B;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,6BAA6B,GAC1D,uBAAuB,CAAC;AAE1B;;;GAGG;AACH,MAAM,WAAW,gBACf,SAAQ,QAAQ,CAAC,aAAa,GAAG,wBAAwB,CAAC;IAC1D,WAAW,IAAI,MAAM,CAAC;IACtB,UAAU,CACR,KAAK,EAAE,MAAM,GACZ,aAAa,GAAG,wBAAwB,GAAG,SAAS,CAAC;IACxD,QAAQ,IAAI,SAAS,CAAC;IACtB,eAAe,IAAI,MAAM,GAAG,SAAS,CAAC;IACtC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW,IAAI,iBAAiB,CAAC;IAEjC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAC/C,OAAO,CACL,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,GACjB,aAAa,GAAG,wBAAwB,GAAG,SAAS,CAAC;IACxD,OAAO,CACL,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,UAAU,CAAC,EAAE,MAAM,GAClB,aAAa,GAAG,wBAAwB,GAAG,iBAAiB,GAAG,SAAS,CAAC;IAE5E,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC3E,cAAc,CACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAAC;IAEtB,qBAAqB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;CAC3E;AAED;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,SAAS;IACzC,CAAC,SAAS,CAAC,UAAQ;IAE1B,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,SAAS,CAIf;gBAEiB,IAAI,CAAC,EAAE,SAAS;IAQnC,sHAAsH;IAC/G,WAAW,IAAI,iBAAiB;IAIvC;;OAEG;IACI,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IACrD,OAAO,CACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,GACjB,oBAAoB,GAAG,wBAAwB,GAAG,SAAS;IA6B9D;;;OAGG;IACI,WAAW,CAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS;IAIlC,qEAAqE;IAC9D,cAAc,CACnB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS;IAIrB;;;OAGG;IACI,WAAW,CAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,kBAAkB,EAAE,EAChC,MAAM,EAAE,MAAM,GACb,IAAI;IAkBP;;;OAGG;IACI,WAAW,CAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,cAAc,EAAE,kBAAkB,EAClC,MAAM,EAAE,MAAM,GACb,IAAI;IAiBP;;;OAGG;IACI,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IA2B9D;;;;;;OAMG;IACI,QAAQ,CACb,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,WAAW,EAAE,MAAM,GAClB,OAAO;IA4DV,OAAO,CAAC,eAAe;IAcvB;;;OAGG;IACI,cAAc,CACnB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,IAAI;IAYP;;;OAGG;IACI,WAAW,CAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,MAAM,GAAG,MAAM,GACrB,IAAI;
|
|
1
|
+
{"version":3,"file":"TreeModel.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -220,7 +220,6 @@ class MutableTreeModel {
|
|
|
220
220
|
removeChild(parentId, child) {
|
|
221
221
|
const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);
|
|
222
222
|
this._tree.removeChild(parentId, child);
|
|
223
|
-
// istanbul ignore else
|
|
224
223
|
if (parentNode)
|
|
225
224
|
MutableTreeModel.setNumChildrenForNode(parentNode, this._tree.getChildren(parentNode.id));
|
|
226
225
|
}
|