@itwin/components-react 4.3.1 → 4.5.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 +21 -4
- package/lib/cjs/components-react/common/DelayedSpinner.js +2 -3
- package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
- package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts +1 -1
- package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
- package/lib/cjs/components-react/common/SubscriptionScheduler.js +18 -23
- package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
- package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseAsyncValue.js +6 -8
- package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +8 -7
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/cjs/components-react/converters/NumericTypeConverter.js +2 -4
- package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/StringTypeConverter.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/StringTypeConverter.js +3 -5
- package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverter.js +1 -2
- package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.js +8 -2
- package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/cjs/components-react/editors/CustomNumberEditor.js +6 -8
- package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/DateTimeEditor.js +2 -3
- package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/PopupButton.js +3 -4
- package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
- package/lib/cjs/components-react/editors/TextEditor.js +2 -4
- package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
- package/lib/cjs/components-react/favorite/FavoritePropertyList.js +3 -3
- package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +23 -9
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js +19 -8
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +8 -5
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +46 -18
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +7 -4
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +8 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +3 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +1 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +3 -3
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +11 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.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/filter-builder/FilterBuilderState.d.ts +58 -12
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +107 -13
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +3 -4
- package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +2 -3
- package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +4 -4
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -2
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +3 -6
- package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -2
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +3 -6
- package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -2
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +1 -2
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +1 -2
- package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +2 -2
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -54
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
- package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +2 -3
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -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.js +1 -1
- 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 +5 -7
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/selectable-content/SelectableContent.js +2 -3
- package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.d.ts +144 -0
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -0
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.js +548 -0
- package/lib/cjs/components-react/toolbar/InternalToolbarComponent.js.map +1 -0
- package/lib/cjs/components-react/toolbar/ItemWrapper.js +3 -3
- package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Items.js +5 -5
- package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Overflow.js +3 -3
- package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.js +5 -5
- package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItem.js +4 -4
- package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +4 -4
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +2 -2
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts +3 -3
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.js +2 -69
- package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +6 -106
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +6 -481
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/cjs/components-react/toolbar/useConditionalSynchedItems.d.ts +14 -0
- package/lib/cjs/components-react/toolbar/useConditionalSynchedItems.d.ts.map +1 -0
- package/lib/cjs/components-react/toolbar/useConditionalSynchedItems.js +118 -0
- package/lib/cjs/components-react/toolbar/useConditionalSynchedItems.js.map +1 -0
- package/lib/cjs/components-react/tree/controlled/Observable.d.ts +1 -1
- package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/Observable.js +3 -4
- package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts +1 -2
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +37 -68
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js +6 -7
- package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.js +7 -8
- package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +28 -35
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +6 -14
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.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 +3 -3
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +1 -2
- package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +2 -2
- package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +2 -3
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +53 -100
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/lib/cjs/components-react.d.ts +6 -2
- package/lib/cjs/components-react.d.ts.map +1 -1
- package/lib/cjs/components-react.js +6 -2
- package/lib/cjs/components-react.js.map +1 -1
- package/lib/esm/components-react/common/DelayedSpinner.js +2 -3
- package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
- package/lib/esm/components-react/common/SubscriptionScheduler.d.ts +1 -1
- package/lib/esm/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
- package/lib/esm/components-react/common/SubscriptionScheduler.js +12 -17
- package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
- package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseAsyncValue.js +1 -3
- package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +7 -6
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/esm/components-react/converters/NumericTypeConverter.js +2 -4
- package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/StringTypeConverter.d.ts.map +1 -1
- package/lib/esm/components-react/converters/StringTypeConverter.js +3 -5
- package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/TypeConverter.js +1 -2
- package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js +7 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/esm/components-react/editors/CustomNumberEditor.js +6 -8
- package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/esm/components-react/editors/DateTimeEditor.js +2 -3
- package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/esm/components-react/editors/PopupButton.js +3 -4
- package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
- package/lib/esm/components-react/editors/TextEditor.js +2 -4
- package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
- package/lib/esm/components-react/favorite/FavoritePropertyList.js +3 -3
- package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +23 -9
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.js +17 -7
- package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +8 -5
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +46 -18
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +8 -5
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +8 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +3 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +1 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +3 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +11 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.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/filter-builder/FilterBuilderState.d.ts +58 -12
- package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js +100 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +3 -4
- package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
- package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +2 -3
- package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +4 -4
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -2
- package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +3 -6
- package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -2
- package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +3 -6
- package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -2
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +1 -2
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +1 -2
- package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +2 -2
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -54
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
- package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +2 -3
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -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.js +1 -1
- 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 +5 -7
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/selectable-content/SelectableContent.js +2 -3
- package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.d.ts +144 -0
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -0
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.js +512 -0
- package/lib/esm/components-react/toolbar/InternalToolbarComponent.js.map +1 -0
- package/lib/esm/components-react/toolbar/ItemWrapper.js +1 -1
- package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
- package/lib/esm/components-react/toolbar/Items.js +1 -1
- package/lib/esm/components-react/toolbar/Items.js.map +1 -1
- package/lib/esm/components-react/toolbar/Overflow.js +1 -1
- package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.js +1 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItem.js +1 -1
- package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +1 -1
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemsPanel.js +1 -1
- package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.d.ts +3 -3
- package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.js +2 -66
- package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +6 -106
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +5 -471
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/esm/components-react/toolbar/useConditionalSynchedItems.d.ts +14 -0
- package/lib/esm/components-react/toolbar/useConditionalSynchedItems.d.ts.map +1 -0
- package/lib/esm/components-react/toolbar/useConditionalSynchedItems.js +91 -0
- package/lib/esm/components-react/toolbar/useConditionalSynchedItems.js.map +1 -0
- package/lib/esm/components-react/tree/controlled/Observable.d.ts +1 -1
- package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/Observable.js +1 -2
- package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts +1 -2
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +24 -55
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventHandler.js +1 -2
- package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.js +7 -8
- package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +18 -25
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +6 -14
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.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 +3 -3
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +1 -2
- package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +1 -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 +2 -3
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +52 -99
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/lib/esm/components-react.d.ts +6 -2
- package/lib/esm/components-react.d.ts.map +1 -1
- package/lib/esm/components-react.js +6 -2
- package/lib/esm/components-react.js.map +1 -1
- package/lib/public/locales/en/UiComponents.json +4 -1
- package/package.json +9 -10
|
@@ -8,8 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.TreeSelectionManager = exports.isRangeSelection = void 0;
|
|
11
|
-
const
|
|
12
|
-
const Subject_1 = require("rxjs/internal/Subject");
|
|
11
|
+
const rxjs_1 = require("rxjs");
|
|
13
12
|
const core_bentley_1 = require("@itwin/core-bentley");
|
|
14
13
|
const SelectionHandler_1 = require("../../../common/selection/SelectionHandler");
|
|
15
14
|
const TreeModel_1 = require("../TreeModel");
|
|
@@ -28,87 +27,54 @@ class TreeSelectionManager {
|
|
|
28
27
|
this.onSelectionReplaced = new core_bentley_1.BeUiEvent();
|
|
29
28
|
this.onDragSelection = new core_bentley_1.BeUiEvent();
|
|
30
29
|
this._onKeyboardEvent = (e, actions, isKeyDown) => {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
const processedNodeId = this._selectionHandler.processedItem;
|
|
31
|
+
if (!(0, core_react_1.isNavigationKey)(e.key) || !isIndividualSelection(processedNodeId)) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const isExpandable = (node) => !node.isLoading && node.numChildren !== 0;
|
|
35
|
+
const isEditing = (node) => node.editingInfo !== undefined;
|
|
36
|
+
const processedNode = this._getVisibleNodes()
|
|
37
|
+
.getModel()
|
|
38
|
+
.getNode(processedNodeId);
|
|
39
|
+
// istanbul ignore if
|
|
40
|
+
if (!processedNode || isEditing(processedNode))
|
|
41
|
+
return;
|
|
42
|
+
const handleKeyboardSelectItem = (index) => {
|
|
43
|
+
const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);
|
|
44
|
+
// istanbul ignore if
|
|
45
|
+
if (!node || isEditing(node))
|
|
34
46
|
return;
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (
|
|
40
|
-
|
|
41
|
-
.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if (processedNode && isEditing(processedNode))
|
|
45
|
-
return;
|
|
47
|
+
const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));
|
|
48
|
+
selectionFunc(e.shiftKey, e.ctrlKey);
|
|
49
|
+
};
|
|
50
|
+
const handleKeyboardActivateItem = (_index) => {
|
|
51
|
+
if (isExpandable(processedNode)) {
|
|
52
|
+
if (!processedNode.isExpanded)
|
|
53
|
+
actions.onNodeExpanded(processedNode.id);
|
|
54
|
+
else
|
|
55
|
+
actions.onNodeCollapsed(processedNode.id);
|
|
46
56
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (this._getVisibleNodes) {
|
|
50
|
-
const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);
|
|
51
|
-
// istanbul ignore else
|
|
52
|
-
if (node) {
|
|
53
|
-
// istanbul ignore next
|
|
54
|
-
if (isEditing(node))
|
|
55
|
-
return;
|
|
56
|
-
const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));
|
|
57
|
-
selectionFunc(e.shiftKey, e.ctrlKey);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
const handleKeyboardActivateItem = (_index) => {
|
|
62
|
-
// istanbul ignore else
|
|
63
|
-
if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
|
|
64
|
-
const node = this._getVisibleNodes()
|
|
65
|
-
.getModel()
|
|
66
|
-
.getNode(processedNodeId);
|
|
67
|
-
// istanbul ignore else
|
|
68
|
-
if (node) {
|
|
69
|
-
if (isExpandable(node)) {
|
|
70
|
-
if (!node.isExpanded)
|
|
71
|
-
actions.onNodeExpanded(node.id);
|
|
72
|
-
else
|
|
73
|
-
actions.onNodeCollapsed(node.id);
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
actions.onNodeEditorActivated(node.id);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
const handleCrossAxisArrowKey = (forward) => {
|
|
82
|
-
// istanbul ignore else
|
|
83
|
-
if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
|
|
84
|
-
const node = this._getVisibleNodes()
|
|
85
|
-
.getModel()
|
|
86
|
-
.getNode(processedNodeId);
|
|
87
|
-
// istanbul ignore else
|
|
88
|
-
if (node) {
|
|
89
|
-
if (isExpandable(node)) {
|
|
90
|
-
if (forward && !node.isExpanded)
|
|
91
|
-
actions.onNodeExpanded(node.id);
|
|
92
|
-
else if (!forward && node.isExpanded)
|
|
93
|
-
actions.onNodeCollapsed(node.id);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
// istanbul ignore else
|
|
99
|
-
if (isIndividualSelection(processedNodeId)) {
|
|
100
|
-
const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
|
|
101
|
-
itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
|
|
102
|
-
itemKeyboardNavigator.crossAxisArrowKeyHandler =
|
|
103
|
-
handleCrossAxisArrowKey;
|
|
104
|
-
itemKeyboardNavigator.allowWrap = false;
|
|
105
|
-
itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();
|
|
106
|
-
const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);
|
|
107
|
-
isKeyDown
|
|
108
|
-
? itemKeyboardNavigator.handleKeyDownEvent(e, index)
|
|
109
|
-
: itemKeyboardNavigator.handleKeyUpEvent(e, index);
|
|
57
|
+
else {
|
|
58
|
+
actions.onNodeEditorActivated(processedNode.id);
|
|
110
59
|
}
|
|
111
|
-
}
|
|
60
|
+
};
|
|
61
|
+
const handleCrossAxisArrowKey = (forward) => {
|
|
62
|
+
if (!isExpandable(processedNode))
|
|
63
|
+
return;
|
|
64
|
+
if (forward && !processedNode.isExpanded)
|
|
65
|
+
actions.onNodeExpanded(processedNode.id);
|
|
66
|
+
else if (!forward && processedNode.isExpanded)
|
|
67
|
+
actions.onNodeCollapsed(processedNode.id);
|
|
68
|
+
};
|
|
69
|
+
const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
|
|
70
|
+
itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
|
|
71
|
+
itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
|
|
72
|
+
itemKeyboardNavigator.allowWrap = false;
|
|
73
|
+
itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();
|
|
74
|
+
const processedNodeIndex = this._getVisibleNodes().getIndexOfNode(processedNodeId);
|
|
75
|
+
isKeyDown
|
|
76
|
+
? itemKeyboardNavigator.handleKeyDownEvent(e, processedNodeIndex)
|
|
77
|
+
: itemKeyboardNavigator.handleKeyUpEvent(e, processedNodeIndex);
|
|
112
78
|
};
|
|
113
79
|
this._getVisibleNodes = getVisibleNodes;
|
|
114
80
|
const onItemsSelected = (selections, replacement) => {
|
|
@@ -154,13 +120,8 @@ class TreeSelectionManager {
|
|
|
154
120
|
const itemHandlers = new Proxy({}, {
|
|
155
121
|
get(_target, prop) {
|
|
156
122
|
if (prop === "length") {
|
|
157
|
-
return _this._getVisibleNodes
|
|
158
|
-
? 0
|
|
159
|
-
: _this._getVisibleNodes().getNumNodes();
|
|
123
|
+
return _this._getVisibleNodes().getNumNodes();
|
|
160
124
|
}
|
|
161
|
-
// istanbul ignore next
|
|
162
|
-
if (_this._getVisibleNodes === undefined)
|
|
163
|
-
return undefined;
|
|
164
125
|
const index = +prop;
|
|
165
126
|
const node = _this.getVisibleNodeAtIndex(_this._getVisibleNodes(), index);
|
|
166
127
|
return new ItemHandler(node);
|
|
@@ -174,9 +135,6 @@ class TreeSelectionManager {
|
|
|
174
135
|
: /* istanbul ignore next */ undefined;
|
|
175
136
|
return (0, TreeModel_1.isTreeModelNode)(foundNode) ? foundNode : undefined;
|
|
176
137
|
}
|
|
177
|
-
setVisibleNodes(visibleNodes) {
|
|
178
|
-
this._getVisibleNodes = visibleNodes;
|
|
179
|
-
}
|
|
180
138
|
onNodeClicked(nodeId, event) {
|
|
181
139
|
const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(nodeId));
|
|
182
140
|
selectionFunc(event.shiftKey, event.ctrlKey);
|
|
@@ -191,12 +149,9 @@ class TreeSelectionManager {
|
|
|
191
149
|
this._dragSelectionOperation = undefined;
|
|
192
150
|
}
|
|
193
151
|
}, { once: true });
|
|
194
|
-
this._dragSelectionOperation = new
|
|
195
|
-
this.
|
|
196
|
-
this.
|
|
197
|
-
selectionChanges: this._dragSelectionOperation,
|
|
198
|
-
});
|
|
199
|
-
this._dragSelectionOperation.next(value);
|
|
152
|
+
this._dragSelectionOperation = new rxjs_1.Subject();
|
|
153
|
+
this.onDragSelection.emit({
|
|
154
|
+
selectionChanges: this._dragSelectionOperation,
|
|
200
155
|
});
|
|
201
156
|
}
|
|
202
157
|
onNodeMouseMove(nodeId) {
|
|
@@ -227,7 +182,7 @@ class TreeSelectionManager {
|
|
|
227
182
|
select: () => { },
|
|
228
183
|
deselect: () => { },
|
|
229
184
|
isSelected: () => {
|
|
230
|
-
if (deselectedAll
|
|
185
|
+
if (deselectedAll) {
|
|
231
186
|
return false;
|
|
232
187
|
}
|
|
233
188
|
const node = this._getVisibleNodes().getModel().getNode(nodeId);
|
|
@@ -260,13 +215,11 @@ class ItemHandler {
|
|
|
260
215
|
deselect() { }
|
|
261
216
|
// eslint-disable-next-line @itwin/prefer-get
|
|
262
217
|
isSelected() {
|
|
263
|
-
var _a;
|
|
264
218
|
// istanbul ignore next
|
|
265
|
-
return !!
|
|
219
|
+
return !!this._node?.isSelected;
|
|
266
220
|
}
|
|
267
221
|
item() {
|
|
268
|
-
|
|
269
|
-
return (_b = (_a = this._node) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "";
|
|
222
|
+
return this._node?.id ?? "";
|
|
270
223
|
}
|
|
271
224
|
}
|
|
272
225
|
//# sourceMappingURL=TreeSelectionManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeSelectionManager.js","sourceRoot":"","sources":["../../../../../../src/components-react/tree/controlled/internal/TreeSelectionManager.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAEH,uDAAoD;AACpD,mDAAgD;AAChD,sDAAgD;AAKhD,iFAA8E;AAK9E,4CAA+C;AAC/C,kDAI2B;AA2B3B,gBAAgB;AAChB,SAAgB,gBAAgB,CAAC,SAAc;IAC7C,OAAO,CACL,SAAS;QACT,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;QAClC,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,CACjC,CAAC;AACJ,CAAC;AAND,4CAMC;AAED,gBAAgB;AAChB,MAAa,oBAAoB;IAc/B,YACE,aAA4B,EAC5B,eAAwC;QANnC,uBAAkB,GAAG,IAAI,wBAAS,EAA8B,CAAC;QACjE,wBAAmB,GAAG,IAAI,wBAAS,EAA6B,CAAC;QACjE,oBAAe,GAAG,IAAI,wBAAS,EAA2B,CAAC;QAmL1D,qBAAgB,GAAG,CACzB,CAAsB,EACtB,OAAoB,EACpB,SAAkB,EAClB,EAAE;YACF,IAAI,IAAA,4BAAe,EAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBAC1B,uBAAuB;gBACvB,IAAI,CAAC,IAAI,CAAC,gBAAgB;oBAAE,OAAO;gBAEnC,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC;gBAE7D,MAAM,YAAY,GAAG,CAAC,IAAmB,EAAW,EAAE,CACpD,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC;gBAC5C,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAW,EAAE,CACjD,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC;gBAEjC,uBAAuB;gBACvB,IAAI,IAAI,CAAC,gBAAgB,IAAI,qBAAqB,CAAC,eAAe,CAAC,EAAE;oBACnE,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE;yBAC1C,QAAQ,EAAE;yBACV,OAAO,CAAC,eAAe,CAAC,CAAC;oBAC5B,uBAAuB;oBACvB,IAAI,aAAa,IAAI,SAAS,CAAC,aAAa,CAAC;wBAAE,OAAO;iBACvD;gBAED,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,EAAE;oBACjD,uBAAuB;oBACvB,IAAI,IAAI,CAAC,gBAAgB,EAAE;wBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CACrC,IAAI,CAAC,gBAAgB,EAAE,EACvB,KAAK,CACN,CAAC;wBACF,uBAAuB;wBACvB,IAAI,IAAI,EAAE;4BACR,uBAAuB;4BACvB,IAAI,SAAS,CAAC,IAAI,CAAC;gCAAE,OAAO;4BAE5B,MAAM,aAAa,GACjB,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAC5C,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC,CACzC,CAAC;4BACJ,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;yBACtC;qBACF;gBACH,CAAC,CAAC;gBACF,MAAM,0BAA0B,GAAG,CAAC,MAAc,EAAE,EAAE;oBACpD,uBAAuB;oBACvB,IAAI,IAAI,CAAC,gBAAgB,IAAI,qBAAqB,CAAC,eAAe,CAAC,EAAE;wBACnE,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE;6BACjC,QAAQ,EAAE;6BACV,OAAO,CAAC,eAAe,CAAC,CAAC;wBAC5B,uBAAuB;wBACvB,IAAI,IAAI,EAAE;4BACR,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE;gCACtB,IAAI,CAAC,IAAI,CAAC,UAAU;oCAAE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;oCACjD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;6BACvC;iCAAM;gCACL,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;6BACxC;yBACF;qBACF;gBACH,CAAC,CAAC;gBACF,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,EAAE;oBACnD,uBAAuB;oBACvB,IAAI,IAAI,CAAC,gBAAgB,IAAI,qBAAqB,CAAC,eAAe,CAAC,EAAE;wBACnE,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE;6BACjC,QAAQ,EAAE;6BACV,OAAO,CAAC,eAAe,CAAC,CAAC;wBAC5B,uBAAuB;wBACvB,IAAI,IAAI,EAAE;4BACR,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE;gCACtB,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU;oCAAE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;qCAC5D,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU;oCAClC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;6BACpC;yBACF;qBACF;gBACH,CAAC,CAAC;gBAEF,uBAAuB;gBACvB,IAAI,qBAAqB,CAAC,eAAe,CAAC,EAAE;oBAC1C,MAAM,qBAAqB,GAAG,IAAI,kCAAqB,CACrD,wBAAwB,EACxB,0BAA0B,CAC3B,CAAC;oBACF,qBAAqB,CAAC,WAAW,GAAG,wBAAW,CAAC,QAAQ,CAAC;oBACzD,qBAAqB,CAAC,wBAAwB;wBAC5C,uBAAuB,CAAC;oBAC1B,qBAAqB,CAAC,SAAS,GAAG,KAAK,CAAC;oBACxC,qBAAqB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;oBAExE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;oBACtE,SAAS;wBACP,CAAC,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,CAAC;wBACpD,CAAC,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;iBACtD;aACF;QACH,CAAC,CAAC;QA9QA,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAExC,MAAM,eAAe,GAAG,CAAC,UAAuB,EAAE,WAAoB,EAAE,EAAE;YACxE,+DAA+D;YAC/D,iEAAiE;YACjE,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gBACxC,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5B,eAAe,EAAE,UAAiC;qBACnD,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;wBAC3B,aAAa,EAAE,UAAiC;wBAChD,eAAe,EAAE,EAAE;qBACpB,CAAC,CAAC;iBACJ;aACF;iBAAM;gBACL,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5B,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;qBAC/B,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;wBAC3B,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;wBAC5B,eAAe,EAAE,EAAE;qBACpB,CAAC,CAAC;iBACJ;aACF;QACH,CAAC,CAAC;QAEF,MAAM,iBAAiB,GAAG,CAAC,YAAyB,EAAE,EAAE;YACtD,2EAA2E;YAC3E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;gBAC3B,aAAa,EAAE,EAAE;gBACjB,eAAe,EAAE,YAAmC;aACrD,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,IAAI,mCAAgB,CAC3C,aAAa,EACb,eAAe,EACf,iBAAiB,CAClB,CAAC;QAEF,4DAA4D;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,YAAY,GAAG,IAAI,KAAK,CAC5B,EAAE,EACF;YACE,GAAG,CAAC,OAAO,EAAE,IAAI;gBACf,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,KAAK,CAAC,gBAAgB,KAAK,SAAS;wBACzC,CAAC,CAAC,CAAC;wBACH,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;iBAC5C;gBAED,uBAAuB;gBACvB,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS;oBAAE,OAAO,SAAS,CAAC;gBAE3D,MAAM,KAAK,GAAW,CAAE,IAAe,CAAC;gBACxC,MAAM,IAAI,GAAG,KAAK,CAAC,qBAAqB,CACtC,KAAK,CAAC,gBAAgB,EAAE,EACxB,KAAK,CACN,CAAC;gBACF,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;SACF,CACuC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAEO,qBAAqB,CAC3B,KAAmC,EACnC,KAAa;QAEb,MAAM,SAAS,GACb,KAAK,KAAK,SAAS;YACjB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;YACzB,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QAC3C,OAAO,IAAA,2BAAe,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,CAAC;IAEM,eAAe,CAAC,YAAkD;QACvE,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC;IACvC,CAAC;IAEM,aAAa,CAAC,MAAc,EAAE,KAAuB;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAClE,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CACxC,CAAC;QACF,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EACvC,IAAI,CAAC,aAAa,EAClB,MAAM,CACP,CAAC;QACF,MAAM,CAAC,gBAAgB,CACrB,SAAS,EACT,GAAG,EAAE;YACH,0BAA0B;YAC1B,IAAI,IAAI,CAAC,uBAAuB,EAAE;gBAChC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;gBAC5C,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC;gBACxC,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC;aAC1C;QACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QACF,IAAI,CAAC,uBAAuB,GAAG,IAAI,iBAAO,EAAE,CAAC;QAC7C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAA,WAAI,EAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;gBACxB,gBAAgB,EAAE,IAAI,CAAC,uBAAwB;aAChD,CAAC,CAAC;YACH,IAAI,CAAC,uBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAEO,uBAAuB,CAC7B,MAAc;QAEd,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,MAAM,qBAAqB,GAAqC;YAC9D,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC/B,EAAE,IAAI,EAAE,KAAe,EAAE,EAAE,EAAE,KAAe,EAAE;aAC/C;YACD,eAAe,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE;gBAC5C,uEAAuE;gBACvE,MAAM,eAAe,GAAG,UAAsB,CAAC;gBAC/C,MAAM,iBAAiB,GAAG,YAAwB,CAAC;gBACnD,IAAI,CAAC,uBAAwB,CAAC,IAAI,CAAC;oBACjC,aAAa,EAAE,eAAe;oBAC9B,eAAe,EAAE,iBAAiB;iBACnC,CAAC,CAAC;YACL,CAAC;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK;SAC5C,CAAC;QAEF,MAAM,sBAAsB,GAAmC;YAC7D,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;YACnB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;YAChB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;YAClB,UAAU,EAAE,GAAG,EAAE;gBACf,IAAI,aAAa,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE;oBACxD,OAAO,KAAK,CAAC;iBACd;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChE,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC;YAC/C,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM;SACnB,CAAC;QAEF,OAAO,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;IACzD,CAAC;IAEM,aAAa,CAAC,KAA0B,EAAE,OAAoB;QACnE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,WAAW,CAAC,KAA0B,EAAE,OAAoB;QACjE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;CAoGF;AAjSD,oDAiSC;AAID,SAAS,qBAAqB,CAC5B,SAAgC;IAEhC,OAAO,OAAO,SAAS,KAAK,QAAQ,CAAC;AACvC,CAAC;AAED,MAAM,WAAW;IAGf,YAAY,IAA+B;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,gCAAgC;IACzB,SAAS,KAAI,CAAC;IAErB,gCAAgC;IACzB,MAAM,KAAI,CAAC;IAElB,gCAAgC;IACzB,QAAQ,KAAI,CAAC;IAEpB,6CAA6C;IACtC,UAAU;;QACf,uBAAuB;QACvB,OAAO,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAA,CAAC;IAClC,CAAC;IAEM,IAAI;;QACT,OAAO,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,EAAE,mCAAI,EAAE,CAAC;IAC9B,CAAC;CACF","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 { take } from \"rxjs/internal/operators/take\";\nimport { Subject } from \"rxjs/internal/Subject\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type {\n MultiSelectionHandler,\n SingleSelectionHandler,\n} from \"../../../common/selection/SelectionHandler\";\nimport { SelectionHandler } from \"../../../common/selection/SelectionHandler\";\nimport type { SelectionMode } from \"../../../common/selection/SelectionModes\";\nimport type { Observable } from \"../Observable\";\nimport type { TreeActions } from \"../TreeActions\";\nimport type { TreeModelNode, VisibleTreeNodes } from \"../TreeModel\";\nimport { isTreeModelNode } from \"../TreeModel\";\nimport {\n isNavigationKey,\n ItemKeyboardNavigator,\n Orientation,\n} from \"@itwin/core-react\";\n\n/** @internal */\nexport interface SelectionReplacementEvent {\n selectedNodeIds: IndividualSelection | RangeSelection;\n}\n\n/** @internal */\nexport interface SelectionModificationEvent {\n selectedNodes: IndividualSelection | RangeSelection;\n deselectedNodes: IndividualSelection;\n}\n\n/** @internal */\nexport interface DragSelectionStartEvent {\n selectionChanges: Observable<SelectionModificationEvent>;\n}\n\n/** @internal */\nexport type IndividualSelection = string[];\n\n/** @internal */\nexport interface RangeSelection {\n from: string;\n to: string;\n}\n\n/** @internal */\nexport function isRangeSelection(selection: any): selection is RangeSelection {\n return (\n selection &&\n typeof selection.from === \"string\" &&\n typeof selection.to === \"string\"\n );\n}\n\n/** @internal */\nexport class TreeSelectionManager\n implements\n Pick<TreeActions, \"onNodeClicked\" | \"onNodeMouseDown\" | \"onNodeMouseMove\">\n{\n private _selectionHandler: SelectionHandler<Selection>;\n private _dragSelectionOperation?: Subject<SelectionModificationEvent>;\n private _itemHandlers: Array<Array<SingleSelectionHandler<string>>>;\n\n private _getVisibleNodes: (() => VisibleTreeNodes) | undefined;\n\n public onSelectionChanged = new BeUiEvent<SelectionModificationEvent>();\n public onSelectionReplaced = new BeUiEvent<SelectionReplacementEvent>();\n public onDragSelection = new BeUiEvent<DragSelectionStartEvent>();\n\n constructor(\n selectionMode: SelectionMode,\n getVisibleNodes?: () => VisibleTreeNodes\n ) {\n this._getVisibleNodes = getVisibleNodes;\n\n const onItemsSelected = (selections: Selection[], replacement: boolean) => {\n // Assumes that `selections` will only contain either a list of\n // `IndividualSelection` items or a single `RangeSelection` item.\n if (isIndividualSelection(selections[0])) {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections as IndividualSelection,\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections as IndividualSelection,\n deselectedNodes: [],\n });\n }\n } else {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections[0],\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections[0],\n deselectedNodes: [],\n });\n }\n }\n };\n\n const onItemsDeselected = (deselections: Selection[]) => {\n // Assumes that this will be always called with `IndividualSelection` items\n this.onSelectionChanged.emit({\n selectedNodes: [],\n deselectedNodes: deselections as IndividualSelection,\n });\n };\n\n this._selectionHandler = new SelectionHandler(\n selectionMode,\n onItemsSelected,\n onItemsDeselected\n );\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const _this = this;\n const itemHandlers = new Proxy(\n {},\n {\n get(_target, prop) {\n if (prop === \"length\") {\n return _this._getVisibleNodes === undefined\n ? 0\n : _this._getVisibleNodes().getNumNodes();\n }\n\n // istanbul ignore next\n if (_this._getVisibleNodes === undefined) return undefined;\n\n const index: number = +(prop as string);\n const node = _this.getVisibleNodeAtIndex(\n _this._getVisibleNodes(),\n index\n );\n return new ItemHandler(node);\n },\n }\n ) as Array<SingleSelectionHandler<string>>;\n this._itemHandlers = [itemHandlers];\n }\n\n private getVisibleNodeAtIndex(\n nodes: VisibleTreeNodes | undefined,\n index: number\n ): TreeModelNode | undefined {\n const foundNode =\n nodes !== undefined\n ? nodes.getAtIndex(index)\n : /* istanbul ignore next */ undefined;\n return isTreeModelNode(foundNode) ? foundNode : undefined;\n }\n\n public setVisibleNodes(visibleNodes: (() => VisibleTreeNodes) | undefined) {\n this._getVisibleNodes = visibleNodes;\n }\n\n public onNodeClicked(nodeId: string, event: React.MouseEvent) {\n const selectionFunc = this._selectionHandler.createSelectionFunction(\n ...this.createSelectionHandlers(nodeId)\n );\n selectionFunc(event.shiftKey, event.ctrlKey);\n }\n\n public onNodeMouseDown(nodeId: string) {\n this._selectionHandler.createDragAction(\n this.createSelectionHandlers(nodeId)[0],\n this._itemHandlers,\n nodeId\n );\n window.addEventListener(\n \"mouseup\",\n () => {\n /* istanbul ignore else */\n if (this._dragSelectionOperation) {\n this._selectionHandler.completeDragAction();\n this._dragSelectionOperation.complete();\n this._dragSelectionOperation = undefined;\n }\n },\n { once: true }\n );\n this._dragSelectionOperation = new Subject();\n this._dragSelectionOperation.pipe(take(1)).subscribe((value) => {\n this.onDragSelection.emit({\n selectionChanges: this._dragSelectionOperation!,\n });\n this._dragSelectionOperation!.next(value);\n });\n }\n\n public onNodeMouseMove(nodeId: string) {\n this._selectionHandler.updateDragAction(nodeId);\n }\n\n private createSelectionHandlers(\n nodeId: string\n ): [MultiSelectionHandler<Selection>, SingleSelectionHandler<string>] {\n let deselectedAll = false;\n const multiSelectionHandler: MultiSelectionHandler<Selection> = {\n selectBetween: (item1, item2) => [\n { from: item1 as string, to: item2 as string },\n ],\n updateSelection: (selections, deselections) => {\n // Assumes `updateSelection` will never be called with selection ranges\n const selectedNodeIds = selections as string[];\n const deselectedNodeIds = deselections as string[];\n this._dragSelectionOperation!.next({\n selectedNodes: selectedNodeIds,\n deselectedNodes: deselectedNodeIds,\n });\n },\n deselectAll: () => {\n deselectedAll = true;\n },\n areEqual: (item1, item2) => item1 === item2,\n };\n\n const singleSelectionHandler: SingleSelectionHandler<string> = {\n preselect: () => {},\n select: () => {},\n deselect: () => {},\n isSelected: () => {\n if (deselectedAll || this._getVisibleNodes === undefined) {\n return false;\n }\n\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n return node !== undefined && node.isSelected;\n },\n item: () => nodeId,\n };\n\n return [multiSelectionHandler, singleSelectionHandler];\n }\n\n public onTreeKeyDown(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, true);\n }\n\n public onTreeKeyUp(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, false);\n }\n\n private _onKeyboardEvent = (\n e: React.KeyboardEvent,\n actions: TreeActions,\n isKeyDown: boolean\n ) => {\n if (isNavigationKey(e.key)) {\n // istanbul ignore next\n if (!this._getVisibleNodes) return;\n\n const processedNodeId = this._selectionHandler.processedItem;\n\n const isExpandable = (node: TreeModelNode): boolean =>\n !node.isLoading && node.numChildren !== 0;\n const isEditing = (node: TreeModelNode): boolean =>\n node.editingInfo !== undefined;\n\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const processedNode = this._getVisibleNodes()\n .getModel()\n .getNode(processedNodeId);\n // istanbul ignore next\n if (processedNode && isEditing(processedNode)) return;\n }\n\n const handleKeyboardSelectItem = (index: number) => {\n // istanbul ignore else\n if (this._getVisibleNodes) {\n const node = this.getVisibleNodeAtIndex(\n this._getVisibleNodes(),\n index\n );\n // istanbul ignore else\n if (node) {\n // istanbul ignore next\n if (isEditing(node)) return;\n\n const selectionFunc =\n this._selectionHandler.createSelectionFunction(\n ...this.createSelectionHandlers(node.id)\n );\n selectionFunc(e.shiftKey, e.ctrlKey);\n }\n }\n };\n const handleKeyboardActivateItem = (_index: number) => {\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const node = this._getVisibleNodes()\n .getModel()\n .getNode(processedNodeId);\n // istanbul ignore else\n if (node) {\n if (isExpandable(node)) {\n if (!node.isExpanded) actions.onNodeExpanded(node.id);\n else actions.onNodeCollapsed(node.id);\n } else {\n actions.onNodeEditorActivated(node.id);\n }\n }\n }\n };\n const handleCrossAxisArrowKey = (forward: boolean) => {\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const node = this._getVisibleNodes()\n .getModel()\n .getNode(processedNodeId);\n // istanbul ignore else\n if (node) {\n if (isExpandable(node)) {\n if (forward && !node.isExpanded) actions.onNodeExpanded(node.id);\n else if (!forward && node.isExpanded)\n actions.onNodeCollapsed(node.id);\n }\n }\n }\n };\n\n // istanbul ignore else\n if (isIndividualSelection(processedNodeId)) {\n const itemKeyboardNavigator = new ItemKeyboardNavigator(\n handleKeyboardSelectItem,\n handleKeyboardActivateItem\n );\n itemKeyboardNavigator.orientation = Orientation.Vertical;\n itemKeyboardNavigator.crossAxisArrowKeyHandler =\n handleCrossAxisArrowKey;\n itemKeyboardNavigator.allowWrap = false;\n itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();\n\n const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);\n isKeyDown\n ? itemKeyboardNavigator.handleKeyDownEvent(e, index)\n : itemKeyboardNavigator.handleKeyUpEvent(e, index);\n }\n }\n };\n}\n\ntype Selection = string | RangeSelection;\n\nfunction isIndividualSelection(\n selection: Selection | undefined\n): selection is string {\n return typeof selection === \"string\";\n}\n\nclass ItemHandler implements SingleSelectionHandler<string> {\n private _node: TreeModelNode | undefined;\n\n constructor(node: TreeModelNode | undefined) {\n this._node = node;\n }\n\n /* istanbul ignore next: noop */\n public preselect() {}\n\n /* istanbul ignore next: noop */\n public select() {}\n\n /* istanbul ignore next: noop */\n public deselect() {}\n\n // eslint-disable-next-line @itwin/prefer-get\n public isSelected(): boolean {\n // istanbul ignore next\n return !!this._node?.isSelected;\n }\n\n public item(): string {\n return this._node?.id ?? \"\";\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TreeSelectionManager.js","sourceRoot":"","sources":["../../../../../../src/components-react/tree/controlled/internal/TreeSelectionManager.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAGH,+BAA+B;AAC/B,sDAAgD;AAKhD,iFAA8E;AAI9E,4CAA+C;AAC/C,kDAI2B;AA2B3B,gBAAgB;AAChB,SAAgB,gBAAgB,CAAC,SAAc;IAC7C,OAAO,CACL,SAAS;QACT,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;QAClC,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,CACjC,CAAC;AACJ,CAAC;AAND,4CAMC;AAED,gBAAgB;AAChB,MAAa,oBAAoB;IAc/B,YACE,aAA4B,EAC5B,eAAuC;QANlC,uBAAkB,GAAG,IAAI,wBAAS,EAA8B,CAAC;QACjE,wBAAmB,GAAG,IAAI,wBAAS,EAA6B,CAAC;QACjE,oBAAe,GAAG,IAAI,wBAAS,EAA2B,CAAC;QAuK1D,qBAAgB,GAAG,CACzB,CAAsB,EACtB,OAAoB,EACpB,SAAkB,EAClB,EAAE;YACF,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC;YAC7D,IAAI,CAAC,IAAA,4BAAe,EAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,EAAE;gBACtE,OAAO;aACR;YAED,MAAM,YAAY,GAAG,CAAC,IAAmB,EAAW,EAAE,CACpD,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAW,EAAE,CACjD,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC;YAEjC,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE;iBAC1C,QAAQ,EAAE;iBACV,OAAO,CAAC,eAAe,CAAC,CAAC;YAE5B,qBAAqB;YACrB,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,aAAa,CAAC;gBAAE,OAAO;YAEvD,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,EAAE;gBACjD,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,CAAC,CAAC;gBACxE,qBAAqB;gBACrB,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC;oBAAE,OAAO;gBAErC,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAClE,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC,CACzC,CAAC;gBACF,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC,CAAC;YACF,MAAM,0BAA0B,GAAG,CAAC,MAAc,EAAE,EAAE;gBACpD,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE;oBAC/B,IAAI,CAAC,aAAa,CAAC,UAAU;wBAAE,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;;wBACnE,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;iBAChD;qBAAM;oBACL,OAAO,CAAC,qBAAqB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;iBACjD;YACH,CAAC,CAAC;YACF,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,EAAE;gBACnD,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;oBAAE,OAAO;gBAEzC,IAAI,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU;oBACtC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;qBACtC,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,UAAU;oBAC3C,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC9C,CAAC,CAAC;YAEF,MAAM,qBAAqB,GAAG,IAAI,kCAAqB,CACrD,wBAAwB,EACxB,0BAA0B,CAC3B,CAAC;YACF,qBAAqB,CAAC,WAAW,GAAG,wBAAW,CAAC,QAAQ,CAAC;YACzD,qBAAqB,CAAC,wBAAwB,GAAG,uBAAuB,CAAC;YACzE,qBAAqB,CAAC,SAAS,GAAG,KAAK,CAAC;YACxC,qBAAqB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;YAExE,MAAM,kBAAkB,GACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;YAC1D,SAAS;gBACP,CAAC,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,EAAE,kBAAkB,CAAC;gBACjE,CAAC,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACpE,CAAC,CAAC;QAhOA,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAExC,MAAM,eAAe,GAAG,CAAC,UAAuB,EAAE,WAAoB,EAAE,EAAE;YACxE,+DAA+D;YAC/D,iEAAiE;YACjE,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gBACxC,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5B,eAAe,EAAE,UAAiC;qBACnD,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;wBAC3B,aAAa,EAAE,UAAiC;wBAChD,eAAe,EAAE,EAAE;qBACpB,CAAC,CAAC;iBACJ;aACF;iBAAM;gBACL,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5B,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;qBAC/B,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;wBAC3B,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;wBAC5B,eAAe,EAAE,EAAE;qBACpB,CAAC,CAAC;iBACJ;aACF;QACH,CAAC,CAAC;QAEF,MAAM,iBAAiB,GAAG,CAAC,YAAyB,EAAE,EAAE;YACtD,2EAA2E;YAC3E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;gBAC3B,aAAa,EAAE,EAAE;gBACjB,eAAe,EAAE,YAAmC;aACrD,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,IAAI,mCAAgB,CAC3C,aAAa,EACb,eAAe,EACf,iBAAiB,CAClB,CAAC;QAEF,4DAA4D;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,YAAY,GAAG,IAAI,KAAK,CAC5B,EAAE,EACF;YACE,GAAG,CAAC,OAAO,EAAE,IAAI;gBACf,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,OAAO,KAAK,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;iBAC/C;gBAED,MAAM,KAAK,GAAW,CAAE,IAAe,CAAC;gBACxC,MAAM,IAAI,GAAG,KAAK,CAAC,qBAAqB,CACtC,KAAK,CAAC,gBAAgB,EAAE,EACxB,KAAK,CACN,CAAC;gBACF,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;SACF,CACuC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAEO,qBAAqB,CAC3B,KAAmC,EACnC,KAAa;QAEb,MAAM,SAAS,GACb,KAAK,KAAK,SAAS;YACjB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;YACzB,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QAC3C,OAAO,IAAA,2BAAe,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,CAAC;IAEM,aAAa,CAAC,MAAc,EAAE,KAAuB;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAClE,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CACxC,CAAC;QACF,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EACvC,IAAI,CAAC,aAAa,EAClB,MAAM,CACP,CAAC;QACF,MAAM,CAAC,gBAAgB,CACrB,SAAS,EACT,GAAG,EAAE;YACH,0BAA0B;YAC1B,IAAI,IAAI,CAAC,uBAAuB,EAAE;gBAChC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;gBAC5C,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC;gBACxC,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC;aAC1C;QACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QACF,IAAI,CAAC,uBAAuB,GAAG,IAAI,cAAO,EAAE,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YACxB,gBAAgB,EAAE,IAAI,CAAC,uBAAuB;SAC/C,CAAC,CAAC;IACL,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAEO,uBAAuB,CAC7B,MAAc;QAEd,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,MAAM,qBAAqB,GAAqC;YAC9D,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC/B,EAAE,IAAI,EAAE,KAAe,EAAE,EAAE,EAAE,KAAe,EAAE;aAC/C;YACD,eAAe,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE;gBAC5C,uEAAuE;gBACvE,MAAM,eAAe,GAAG,UAAsB,CAAC;gBAC/C,MAAM,iBAAiB,GAAG,YAAwB,CAAC;gBACnD,IAAI,CAAC,uBAAwB,CAAC,IAAI,CAAC;oBACjC,aAAa,EAAE,eAAe;oBAC9B,eAAe,EAAE,iBAAiB;iBACnC,CAAC,CAAC;YACL,CAAC;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK;SAC5C,CAAC;QAEF,MAAM,sBAAsB,GAAmC;YAC7D,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;YACnB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;YAChB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;YAClB,UAAU,EAAE,GAAG,EAAE;gBACf,IAAI,aAAa,EAAE;oBACjB,OAAO,KAAK,CAAC;iBACd;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChE,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC;YAC/C,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM;SACnB,CAAC;QAEF,OAAO,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;IACzD,CAAC;IAEM,aAAa,CAAC,KAA0B,EAAE,OAAoB;QACnE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,WAAW,CAAC,KAA0B,EAAE,OAAoB;QACjE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;CAkEF;AAnPD,oDAmPC;AAID,SAAS,qBAAqB,CAC5B,SAAgC;IAEhC,OAAO,OAAO,SAAS,KAAK,QAAQ,CAAC;AACvC,CAAC;AAED,MAAM,WAAW;IAGf,YAAY,IAA+B;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,gCAAgC;IACzB,SAAS,KAAI,CAAC;IAErB,gCAAgC;IACzB,MAAM,KAAI,CAAC;IAElB,gCAAgC;IACzB,QAAQ,KAAI,CAAC;IAEpB,6CAA6C;IACtC,UAAU;QACf,uBAAuB;QACvB,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC;IAClC,CAAC;IAEM,IAAI;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC;IAC9B,CAAC;CACF","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 { Subject } from \"rxjs\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type {\n MultiSelectionHandler,\n SingleSelectionHandler,\n} from \"../../../common/selection/SelectionHandler\";\nimport { SelectionHandler } from \"../../../common/selection/SelectionHandler\";\nimport type { SelectionMode } from \"../../../common/selection/SelectionModes\";\nimport type { TreeActions } from \"../TreeActions\";\nimport type { TreeModelNode, VisibleTreeNodes } from \"../TreeModel\";\nimport { isTreeModelNode } from \"../TreeModel\";\nimport {\n isNavigationKey,\n ItemKeyboardNavigator,\n Orientation,\n} from \"@itwin/core-react\";\n\n/** @internal */\nexport interface SelectionReplacementEvent {\n selectedNodeIds: IndividualSelection | RangeSelection;\n}\n\n/** @internal */\nexport interface SelectionModificationEvent {\n selectedNodes: IndividualSelection | RangeSelection;\n deselectedNodes: IndividualSelection;\n}\n\n/** @internal */\nexport interface DragSelectionStartEvent {\n selectionChanges: Observable<SelectionModificationEvent>;\n}\n\n/** @internal */\nexport type IndividualSelection = string[];\n\n/** @internal */\nexport interface RangeSelection {\n from: string;\n to: string;\n}\n\n/** @internal */\nexport function isRangeSelection(selection: any): selection is RangeSelection {\n return (\n selection &&\n typeof selection.from === \"string\" &&\n typeof selection.to === \"string\"\n );\n}\n\n/** @internal */\nexport class TreeSelectionManager\n implements\n Pick<TreeActions, \"onNodeClicked\" | \"onNodeMouseDown\" | \"onNodeMouseMove\">\n{\n private _selectionHandler: SelectionHandler<Selection>;\n private _dragSelectionOperation?: Subject<SelectionModificationEvent>;\n private _itemHandlers: Array<Array<SingleSelectionHandler<string>>>;\n\n private _getVisibleNodes: () => VisibleTreeNodes;\n\n public onSelectionChanged = new BeUiEvent<SelectionModificationEvent>();\n public onSelectionReplaced = new BeUiEvent<SelectionReplacementEvent>();\n public onDragSelection = new BeUiEvent<DragSelectionStartEvent>();\n\n constructor(\n selectionMode: SelectionMode,\n getVisibleNodes: () => VisibleTreeNodes\n ) {\n this._getVisibleNodes = getVisibleNodes;\n\n const onItemsSelected = (selections: Selection[], replacement: boolean) => {\n // Assumes that `selections` will only contain either a list of\n // `IndividualSelection` items or a single `RangeSelection` item.\n if (isIndividualSelection(selections[0])) {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections as IndividualSelection,\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections as IndividualSelection,\n deselectedNodes: [],\n });\n }\n } else {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections[0],\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections[0],\n deselectedNodes: [],\n });\n }\n }\n };\n\n const onItemsDeselected = (deselections: Selection[]) => {\n // Assumes that this will be always called with `IndividualSelection` items\n this.onSelectionChanged.emit({\n selectedNodes: [],\n deselectedNodes: deselections as IndividualSelection,\n });\n };\n\n this._selectionHandler = new SelectionHandler(\n selectionMode,\n onItemsSelected,\n onItemsDeselected\n );\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const _this = this;\n const itemHandlers = new Proxy(\n {},\n {\n get(_target, prop) {\n if (prop === \"length\") {\n return _this._getVisibleNodes().getNumNodes();\n }\n\n const index: number = +(prop as string);\n const node = _this.getVisibleNodeAtIndex(\n _this._getVisibleNodes(),\n index\n );\n return new ItemHandler(node);\n },\n }\n ) as Array<SingleSelectionHandler<string>>;\n this._itemHandlers = [itemHandlers];\n }\n\n private getVisibleNodeAtIndex(\n nodes: VisibleTreeNodes | undefined,\n index: number\n ): TreeModelNode | undefined {\n const foundNode =\n nodes !== undefined\n ? nodes.getAtIndex(index)\n : /* istanbul ignore next */ undefined;\n return isTreeModelNode(foundNode) ? foundNode : undefined;\n }\n\n public onNodeClicked(nodeId: string, event: React.MouseEvent) {\n const selectionFunc = this._selectionHandler.createSelectionFunction(\n ...this.createSelectionHandlers(nodeId)\n );\n selectionFunc(event.shiftKey, event.ctrlKey);\n }\n\n public onNodeMouseDown(nodeId: string) {\n this._selectionHandler.createDragAction(\n this.createSelectionHandlers(nodeId)[0],\n this._itemHandlers,\n nodeId\n );\n window.addEventListener(\n \"mouseup\",\n () => {\n /* istanbul ignore else */\n if (this._dragSelectionOperation) {\n this._selectionHandler.completeDragAction();\n this._dragSelectionOperation.complete();\n this._dragSelectionOperation = undefined;\n }\n },\n { once: true }\n );\n this._dragSelectionOperation = new Subject();\n this.onDragSelection.emit({\n selectionChanges: this._dragSelectionOperation,\n });\n }\n\n public onNodeMouseMove(nodeId: string) {\n this._selectionHandler.updateDragAction(nodeId);\n }\n\n private createSelectionHandlers(\n nodeId: string\n ): [MultiSelectionHandler<Selection>, SingleSelectionHandler<string>] {\n let deselectedAll = false;\n const multiSelectionHandler: MultiSelectionHandler<Selection> = {\n selectBetween: (item1, item2) => [\n { from: item1 as string, to: item2 as string },\n ],\n updateSelection: (selections, deselections) => {\n // Assumes `updateSelection` will never be called with selection ranges\n const selectedNodeIds = selections as string[];\n const deselectedNodeIds = deselections as string[];\n this._dragSelectionOperation!.next({\n selectedNodes: selectedNodeIds,\n deselectedNodes: deselectedNodeIds,\n });\n },\n deselectAll: () => {\n deselectedAll = true;\n },\n areEqual: (item1, item2) => item1 === item2,\n };\n\n const singleSelectionHandler: SingleSelectionHandler<string> = {\n preselect: () => {},\n select: () => {},\n deselect: () => {},\n isSelected: () => {\n if (deselectedAll) {\n return false;\n }\n\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n return node !== undefined && node.isSelected;\n },\n item: () => nodeId,\n };\n\n return [multiSelectionHandler, singleSelectionHandler];\n }\n\n public onTreeKeyDown(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, true);\n }\n\n public onTreeKeyUp(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, false);\n }\n\n private _onKeyboardEvent = (\n e: React.KeyboardEvent,\n actions: TreeActions,\n isKeyDown: boolean\n ) => {\n const processedNodeId = this._selectionHandler.processedItem;\n if (!isNavigationKey(e.key) || !isIndividualSelection(processedNodeId)) {\n return;\n }\n\n const isExpandable = (node: TreeModelNode): boolean =>\n !node.isLoading && node.numChildren !== 0;\n const isEditing = (node: TreeModelNode): boolean =>\n node.editingInfo !== undefined;\n\n const processedNode = this._getVisibleNodes()\n .getModel()\n .getNode(processedNodeId);\n\n // istanbul ignore if\n if (!processedNode || isEditing(processedNode)) return;\n\n const handleKeyboardSelectItem = (index: number) => {\n const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);\n // istanbul ignore if\n if (!node || isEditing(node)) return;\n\n const selectionFunc = this._selectionHandler.createSelectionFunction(\n ...this.createSelectionHandlers(node.id)\n );\n selectionFunc(e.shiftKey, e.ctrlKey);\n };\n const handleKeyboardActivateItem = (_index: number) => {\n if (isExpandable(processedNode)) {\n if (!processedNode.isExpanded) actions.onNodeExpanded(processedNode.id);\n else actions.onNodeCollapsed(processedNode.id);\n } else {\n actions.onNodeEditorActivated(processedNode.id);\n }\n };\n const handleCrossAxisArrowKey = (forward: boolean) => {\n if (!isExpandable(processedNode)) return;\n\n if (forward && !processedNode.isExpanded)\n actions.onNodeExpanded(processedNode.id);\n else if (!forward && processedNode.isExpanded)\n actions.onNodeCollapsed(processedNode.id);\n };\n\n const itemKeyboardNavigator = new ItemKeyboardNavigator(\n handleKeyboardSelectItem,\n handleKeyboardActivateItem\n );\n itemKeyboardNavigator.orientation = Orientation.Vertical;\n itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;\n itemKeyboardNavigator.allowWrap = false;\n itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();\n\n const processedNodeIndex =\n this._getVisibleNodes().getIndexOfNode(processedNodeId);\n isKeyDown\n ? itemKeyboardNavigator.handleKeyDownEvent(e, processedNodeIndex)\n : itemKeyboardNavigator.handleKeyUpEvent(e, processedNodeIndex);\n };\n}\n\ntype Selection = string | RangeSelection;\n\nfunction isIndividualSelection(\n selection: Selection | undefined\n): selection is string {\n return typeof selection === \"string\";\n}\n\nclass ItemHandler implements SingleSelectionHandler<string> {\n private _node: TreeModelNode | undefined;\n\n constructor(node: TreeModelNode | undefined) {\n this._node = node;\n }\n\n /* istanbul ignore next: noop */\n public preselect() {}\n\n /* istanbul ignore next: noop */\n public select() {}\n\n /* istanbul ignore next: noop */\n public deselect() {}\n\n // eslint-disable-next-line @itwin/prefer-get\n public isSelected(): boolean {\n // istanbul ignore next\n return !!this._node?.isSelected;\n }\n\n public item(): string {\n return this._node?.id ?? \"\";\n }\n}\n"]}
|
|
@@ -58,6 +58,9 @@ export * from "./components-react/properties/renderers/value/MultilineTextProper
|
|
|
58
58
|
export * from "./components-react/properties/renderers/value/UrlPropertyValueRenderer";
|
|
59
59
|
export * from "./components-react/properties/renderers/value/WithContextStyle";
|
|
60
60
|
export * from "./components-react/filter-builder/FilterBuilder";
|
|
61
|
+
export * from "./components-react/filter-builder/FilterBuilderRuleOperator";
|
|
62
|
+
export * from "./components-react/filter-builder/FilterBuilderState";
|
|
63
|
+
export * from "./components-react/filter-builder/FilterBuilderRuleValue";
|
|
61
64
|
export * from "./components-react/filter-builder/Operators";
|
|
62
65
|
export * from "./components-react/filter-builder/Types";
|
|
63
66
|
export * from "./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer";
|
|
@@ -105,10 +108,11 @@ export * from "./components-react/toolbar/groupPanel/Column";
|
|
|
105
108
|
export * from "./components-react/toolbar/groupPanel/Columns";
|
|
106
109
|
export * from "./components-react/toolbar/groupPanel/Panel";
|
|
107
110
|
export * from "./components-react/toolbar/groupPanel/Title";
|
|
108
|
-
export * from "./components-react/toolbar/
|
|
109
|
-
export * from "./components-react/toolbar/ToolbarWithOverflow";
|
|
111
|
+
export * from "./components-react/toolbar/InternalToolbarComponent";
|
|
110
112
|
export * from "./components-react/toolbar/PopupItem";
|
|
111
113
|
export * from "./components-react/toolbar/PopupItemWithDrag";
|
|
114
|
+
export * from "./components-react/toolbar/Toolbar";
|
|
115
|
+
export * from "./components-react/toolbar/ToolbarWithOverflow";
|
|
112
116
|
export * from "./components-react/toolbar/Item";
|
|
113
117
|
export * from "./components-react/toolbar/utilities/Direction";
|
|
114
118
|
export * from "./components-react/tree/TreeDataProvider";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-react.d.ts","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"components-react.d.ts","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,9 @@ __exportStar(require("./components-react/properties/renderers/value/MultilineTex
|
|
|
81
81
|
__exportStar(require("./components-react/properties/renderers/value/UrlPropertyValueRenderer"), exports);
|
|
82
82
|
__exportStar(require("./components-react/properties/renderers/value/WithContextStyle"), exports);
|
|
83
83
|
__exportStar(require("./components-react/filter-builder/FilterBuilder"), exports);
|
|
84
|
+
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleOperator"), exports);
|
|
85
|
+
__exportStar(require("./components-react/filter-builder/FilterBuilderState"), exports);
|
|
86
|
+
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleValue"), exports);
|
|
84
87
|
__exportStar(require("./components-react/filter-builder/Operators"), exports);
|
|
85
88
|
__exportStar(require("./components-react/filter-builder/Types"), exports);
|
|
86
89
|
__exportStar(require("./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer"), exports);
|
|
@@ -129,10 +132,11 @@ __exportStar(require("./components-react/toolbar/groupPanel/Column"), exports);
|
|
|
129
132
|
__exportStar(require("./components-react/toolbar/groupPanel/Columns"), exports);
|
|
130
133
|
__exportStar(require("./components-react/toolbar/groupPanel/Panel"), exports);
|
|
131
134
|
__exportStar(require("./components-react/toolbar/groupPanel/Title"), exports);
|
|
132
|
-
__exportStar(require("./components-react/toolbar/
|
|
133
|
-
__exportStar(require("./components-react/toolbar/ToolbarWithOverflow"), exports);
|
|
135
|
+
__exportStar(require("./components-react/toolbar/InternalToolbarComponent"), exports);
|
|
134
136
|
__exportStar(require("./components-react/toolbar/PopupItem"), exports);
|
|
135
137
|
__exportStar(require("./components-react/toolbar/PopupItemWithDrag"), exports);
|
|
138
|
+
__exportStar(require("./components-react/toolbar/Toolbar"), exports);
|
|
139
|
+
__exportStar(require("./components-react/toolbar/ToolbarWithOverflow"), exports);
|
|
136
140
|
__exportStar(require("./components-react/toolbar/Item"), exports);
|
|
137
141
|
__exportStar(require("./components-react/toolbar/utilities/Direction"), exports);
|
|
138
142
|
__exportStar(require("./components-react/tree/TreeDataProvider"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-react.js","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;;;;;;;;;;;;;;;AAEhG,qEAAqE;AAErE,gEAA+D;AAAtD,4GAAA,YAAY,OAAA;AAErB,kEAAgD;AAChD,wEAAsD;AACtD,qFAAmE;AACnE,uFAAqE;AACrE,4EAA0D;AAC1D,yEAAuD;AACvD,uFAAqE;AACrE,0EAAwD;AACxD,mFAAiE;AACjE,sEAAoD;AAEpD,8EAA4D;AAC5D,qFAAmE;AACnE,qFAAmE;AACnE,sFAAoE;AACpE,kFAAgE;AAChE,yFAAuE;AACvE,gGAA8E;AAC9E,qFAAmE;AACnE,mFAAiE;AACjE,oFAAkE;AAClE,uFAAqE;AAErE,0FAAwE;AAExE,0EAAwD;AACxD,2EAAyD;AACzD,sFAAoE;AACpE,8EAA4D;AAC5D,0EAAwD;AAExD,2EAAyD;AACzD,gFAA8D;AAC9D,4EAA0D;AAC1D,6EAA2D;AAC3D,mFAAiE;AACjE,wEAAsD;AACtD,wEAAsD;AACtD,iFAA+D;AAC/D,gFAA8D;AAC9D,mFAAiE;AACjE,0EAAwD;AACxD,wEAAsD;AACtD,4EAA0D;AAC1D,0EAAwD;AAExD,yFAAuE;AACvE,mFAAiE;AAEjE,8EAA4D;AAC5D,8EAA4D;AAE5D,wEAAsD;AAEtD,4EAA0D;AAC1D,qFAAmE;AACnE,uGAAqF;AACrF,oGAAkF;AAClF,2FAAyE;AACzE,uFAAqE;AACrE,2FAAyE;AACzE,+FAA6E;AAC7E,4GAA0F;AAC1F,mHAAiG;AACjG,yGAAuF;AACvF,iGAA+E;AAE/E,kFAAgE;AAChE,8EAA4D;AAC5D,0EAAwD;AAExD,kHAAgG;AAChG,+GAA6F;AAC7F,sGAAoF;AAEpF,+GAA6F;AAC7F,2GAAyF;AACzF,4GAA0F;AAC1F,4GAA0F;AAC1F,gHAA8F;AAC9F,yGAAuF;AACvF,0GAAwF;AACxF,gHAA8F;AAC9F,0EAAwD;AAExD,kGAAgF;AAChF,uFAAqE;AACrE,6FAA2E;AAC3E,oGAAkF;AAClF,oHAAkG;AAClG,kGAAgF;AAChF,mHAAiG;AACjG,gGAA8E;AAC9E,yFAAuE;AACvE,mGAAiF;AACjF,sHAAoG;AACpG,0HAAwG;AACxG,uHAAqG;AACrG,0GAAwF;AACxF,0GAAwF;AACxF,6GAA2F;AAC3F,oGAAkF;AAClF,6FAA2E;AAC3E,6FAA2E;AAC3E,wGAAsF;AACtF,mGAAiF;AACjF,sGAAoF;AACpF,wHAAsG;AACtG,wHAAsG;AACtG,2HAAyG;AACzG,oHAAkG;AAClG,mHAAiG;AAEjG,0FAAwE;AAExE,wDAAwD;AACxD,kFAAgE;AAEhE,+EAA6D;AAC7D,gFAA8D;AAC9D,8EAA4D;AAC5D,8EAA4D;AAE5D,qEAAmD;AACnD,iFAA+D;AAC/D,uEAAqD;AACrD,+EAA6D;AAC7D,kEAAgD;AAChD,iFAA+D;AAE/D,2EAAyD;AACzD,iFAA+D;AAC/D,6EAA2D;AAC3D,sEAAoD;AACpD,iFAA+D;AAC/D,yFAAuE;AACvE,sFAAoE;AACpE,gFAA8D;AAC9D,+EAA6D;AAC7D,qFAAmE;AACnE,oFAAkE;AAClE,gFAA8D;AAC9D,+EAA6D;AAC7D,8FAA4E;AAC5E,2FAAyE;AACzE,8FAA4E;AAC5E,gGAA8E;AAC9E,4FAA0E;AAC1E,yFAAuE;AAEvE;;;GAGG;AACH;;;GAGG;AACH;;;;GAIG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","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\n// cSpell:ignore iconpicker lineweight hocs datepicker quantityformat\n\nexport { UiComponents } from \"./components-react/UiComponents\";\n\nexport * from \"./components-react/common/Links\";\nexport * from \"./components-react/common/PageOptions\";\nexport * from \"./components-react/common/selection/SelectionModes\";\nexport * from \"./components-react/common/HighlightingComponentProps\";\nexport * from \"./components-react/common/HighlightedText\";\nexport * from \"./components-react/common/IImageLoader\";\nexport * from \"./components-react/common/selection/SelectionHandler\";\nexport * from \"./components-react/common/UseAsyncValue\";\nexport * from \"./components-react/common/UseDebouncedAsyncValue\";\nexport * from \"./components-react/common/DateUtils\";\n\nexport * from \"./components-react/converters/TypeConverter\";\nexport * from \"./components-react/converters/TypeConverterManager\";\nexport * from \"./components-react/converters/BooleanTypeConverter\";\nexport * from \"./components-react/converters/DateTimeTypeConverter\";\nexport * from \"./components-react/converters/EnumTypeConverter\";\nexport * from \"./components-react/converters/HexadecimalTypeConverter\";\nexport * from \"./components-react/converters/NavigationPropertyTypeConverter\";\nexport * from \"./components-react/converters/NumericTypeConverter\";\nexport * from \"./components-react/converters/PointTypeConverter\";\nexport * from \"./components-react/converters/StringTypeConverter\";\nexport * from \"./components-react/converters/CompositeTypeConverter\";\n\nexport * from \"./components-react/converters/valuetypes/ConvertedTypes\";\n\nexport * from \"./components-react/datepicker/DateField\";\nexport * from \"./components-react/datepicker/DatePicker\";\nexport * from \"./components-react/datepicker/DatePickerPopupButton\";\nexport * from \"./components-react/datepicker/IntlFormatter\";\nexport * from \"./components-react/datepicker/TimeField\";\n\nexport * from \"./components-react/editors/BooleanEditor\";\nexport * from \"./components-react/editors/CustomNumberEditor\";\nexport * from \"./components-react/editors/DateTimeEditor\";\nexport * from \"./components-react/editors/EditorContainer\";\nexport * from \"./components-react/editors/EnumButtonGroupEditor\";\nexport * from \"./components-react/editors/EnumEditor\";\nexport * from \"./components-react/editors/IconEditor\";\nexport * from \"./components-react/editors/ImageCheckBoxEditor\";\nexport * from \"./components-react/editors/NumericInputEditor\";\nexport * from \"./components-react/editors/PropertyEditorManager\";\nexport * from \"./components-react/editors/SliderEditor\";\nexport * from \"./components-react/editors/TextEditor\";\nexport * from \"./components-react/editors/TextareaEditor\";\nexport * from \"./components-react/editors/ToggleEditor\";\n\nexport * from \"./components-react/favorite/FavoritePropertiesRenderer\";\nexport * from \"./components-react/favorite/FavoritePropertyList\";\n\nexport * from \"./components-react/filtering/FilteringInput\";\nexport * from \"./components-react/filtering/ResultSelector\";\n\nexport * from \"./components-react/inputs/ParsedInput\";\n\nexport * from \"./components-react/properties/LinkHandler\";\nexport * from \"./components-react/properties/ValueRendererManager\";\nexport * from \"./components-react/properties/renderers/NonPrimitivePropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PrimitivePropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PropertyView\";\nexport * from \"./components-react/properties/renderers/ActionButtonList\";\nexport * from \"./components-react/properties/renderers/ActionButtonRenderer\";\nexport * from \"./components-react/properties/renderers/value/MergedPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/MultilineTextPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/UrlPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/WithContextStyle\";\n\nexport * from \"./components-react/filter-builder/FilterBuilder\";\nexport * from \"./components-react/filter-builder/Operators\";\nexport * from \"./components-react/filter-builder/Types\";\n\nexport * from \"./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer\";\nexport * from \"./components-react/properties/renderers/label/PrimitivePropertyLabelRenderer\";\nexport * from \"./components-react/properties/renderers/label/PropertyLabelRenderer\";\n\nexport * from \"./components-react/properties/renderers/value/PrimitivePropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/ArrayPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/StructPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/DoublePropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/NavigationPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/ArrayValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/StructValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/NonPrimitiveValueRenderer\";\nexport * from \"./components-react/properties/ItemStyle\";\n\nexport * from \"./components-react/propertygrid/PropertyCategoryRendererManager\";\nexport * from \"./components-react/propertygrid/PropertyDataProvider\";\nexport * from \"./components-react/propertygrid/SimplePropertyDataProvider\";\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGrid\";\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider\";\nexport * from \"./components-react/propertygrid/component/PropertyCategoryBlock\";\nexport * from \"./components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier\";\nexport * from \"./components-react/propertygrid/component/PropertyGridCommons\";\nexport * from \"./components-react/propertygrid/component/PropertyList\";\nexport * from \"./components-react/propertygrid/internal/flat-items/FlatGridItem\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableFlatGridItem\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridCategory\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridItemFactory\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridEventHandler\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridHooks\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModel\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelChangeEvent\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelSource\";\nexport * from \"./components-react/propertygrid/dataproviders/FilteringDataProvider\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase\";\n\nexport * from \"./components-react/selectable-content/SelectableContent\";\n\n// TODO: toolbar/groupPanel components needs a refactor.\nexport * from \"./components-react/toolbar/groupPanel/tool/Tool\";\n\nexport * from \"./components-react/toolbar/groupPanel/Column\";\nexport * from \"./components-react/toolbar/groupPanel/Columns\";\nexport * from \"./components-react/toolbar/groupPanel/Panel\";\nexport * from \"./components-react/toolbar/groupPanel/Title\";\n\nexport * from \"./components-react/toolbar/Toolbar\";\nexport * from \"./components-react/toolbar/ToolbarWithOverflow\";\nexport * from \"./components-react/toolbar/PopupItem\";\nexport * from \"./components-react/toolbar/PopupItemWithDrag\";\nexport * from \"./components-react/toolbar/Item\";\nexport * from \"./components-react/toolbar/utilities/Direction\";\n\nexport * from \"./components-react/tree/TreeDataProvider\";\nexport * from \"./components-react/tree/SimpleTreeDataProvider\";\nexport * from \"./components-react/tree/HighlightingEngine\";\nexport * from \"./components-react/tree/ImageLoader\";\nexport * from \"./components-react/tree/controlled/TreeActions\";\nexport * from \"./components-react/tree/controlled/TreeEventDispatcher\";\nexport * from \"./components-react/tree/controlled/TreeEventHandler\";\nexport * from \"./components-react/tree/controlled/TreeEvents\";\nexport * from \"./components-react/tree/controlled/TreeModel\";\nexport * from \"./components-react/tree/controlled/TreeModelSource\";\nexport * from \"./components-react/tree/controlled/TreeNodeLoader\";\nexport * from \"./components-react/tree/controlled/Observable\";\nexport * from \"./components-react/tree/controlled/TreeHooks\";\nexport * from \"./components-react/tree/controlled/component/ControlledTree\";\nexport * from \"./components-react/tree/controlled/component/NodeContent\";\nexport * from \"./components-react/tree/controlled/component/TreeNodeEditor\";\nexport * from \"./components-react/tree/controlled/component/TreeNodeRenderer\";\nexport * from \"./components-react/tree/controlled/component/TreeRenderer\";\nexport * from \"./components-react/tree/controlled/internal/SparseTree\";\n\n/** @docs-package-description\n * The components-react package contains React components that are data-oriented, such as PropertyGrid, Table and Tree.\n * For more information, see [learning about components-react]($docs/learning/ui/components/index.md).\n */\n/**\n * @docs-group-description Common\n * Common classes used across various UI components.\n */\n/**\n * @docs-group-description Breadcrumb\n * Classes and components for working with a Breadcrumb.\n * As of version 3.0, the Breadcrumb is deprecated.\n */\n/**\n * @docs-group-description Date\n * Classes, interfaces, and components for showing and setting date and time.\n */\n/**\n * @docs-group-description DragDrop\n * Classes and Higher Order Components for working with the DragDrop API.\n */\n/**\n * @docs-group-description Favorite\n * Classes and components for displaying favorite properties.\n */\n/**\n * @docs-group-description Filtering\n * Classes and components for working with filtering.\n */\n/**\n * @docs-group-description Inputs\n * Input Components that format and parse input.\n */\n/**\n * @docs-group-description SelectableContent\n * Classes and components for working with SelectableContent component.\n */\n/**\n * @docs-group-description Properties\n * Classes and components for working with Properties.\n */\n/**\n * @docs-group-description PropertyEditors\n * Classes and components for working with Property Editors.\n */\n/**\n * @docs-group-description PropertyGrid\n * Classes and components for working with a PropertyGrid.\n */\n/**\n * @docs-group-description Table\n * Classes and components for working with a Table.\n */\n/**\n * @docs-group-description Toolbar\n * Functions and components that provide a Toolbar.\n */\n/**\n * @docs-group-description Tree\n * Classes and components for working with a Tree.\n */\n/**\n * @docs-group-description TypeConverters\n * Classes for working with Type Converters.\n */\n/**\n * @docs-group-description PropertyFilterBuilder\n * Classes and components for working with PropertyFilterBuilder.\n */\n"]}
|
|
1
|
+
{"version":3,"file":"components-react.js","sourceRoot":"","sources":["../../src/components-react.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\n// cSpell:ignore iconpicker lineweight hocs datepicker quantityformat\n\nexport { UiComponents } from \"./components-react/UiComponents\";\n\nexport * from \"./components-react/common/Links\";\nexport * from \"./components-react/common/PageOptions\";\nexport * from \"./components-react/common/selection/SelectionModes\";\nexport * from \"./components-react/common/HighlightingComponentProps\";\nexport * from \"./components-react/common/HighlightedText\";\nexport * from \"./components-react/common/IImageLoader\";\nexport * from \"./components-react/common/selection/SelectionHandler\";\nexport * from \"./components-react/common/UseAsyncValue\";\nexport * from \"./components-react/common/UseDebouncedAsyncValue\";\nexport * from \"./components-react/common/DateUtils\";\n\nexport * from \"./components-react/converters/TypeConverter\";\nexport * from \"./components-react/converters/TypeConverterManager\";\nexport * from \"./components-react/converters/BooleanTypeConverter\";\nexport * from \"./components-react/converters/DateTimeTypeConverter\";\nexport * from \"./components-react/converters/EnumTypeConverter\";\nexport * from \"./components-react/converters/HexadecimalTypeConverter\";\nexport * from \"./components-react/converters/NavigationPropertyTypeConverter\";\nexport * from \"./components-react/converters/NumericTypeConverter\";\nexport * from \"./components-react/converters/PointTypeConverter\";\nexport * from \"./components-react/converters/StringTypeConverter\";\nexport * from \"./components-react/converters/CompositeTypeConverter\";\n\nexport * from \"./components-react/converters/valuetypes/ConvertedTypes\";\n\nexport * from \"./components-react/datepicker/DateField\";\nexport * from \"./components-react/datepicker/DatePicker\";\nexport * from \"./components-react/datepicker/DatePickerPopupButton\";\nexport * from \"./components-react/datepicker/IntlFormatter\";\nexport * from \"./components-react/datepicker/TimeField\";\n\nexport * from \"./components-react/editors/BooleanEditor\";\nexport * from \"./components-react/editors/CustomNumberEditor\";\nexport * from \"./components-react/editors/DateTimeEditor\";\nexport * from \"./components-react/editors/EditorContainer\";\nexport * from \"./components-react/editors/EnumButtonGroupEditor\";\nexport * from \"./components-react/editors/EnumEditor\";\nexport * from \"./components-react/editors/IconEditor\";\nexport * from \"./components-react/editors/ImageCheckBoxEditor\";\nexport * from \"./components-react/editors/NumericInputEditor\";\nexport * from \"./components-react/editors/PropertyEditorManager\";\nexport * from \"./components-react/editors/SliderEditor\";\nexport * from \"./components-react/editors/TextEditor\";\nexport * from \"./components-react/editors/TextareaEditor\";\nexport * from \"./components-react/editors/ToggleEditor\";\n\nexport * from \"./components-react/favorite/FavoritePropertiesRenderer\";\nexport * from \"./components-react/favorite/FavoritePropertyList\";\n\nexport * from \"./components-react/filtering/FilteringInput\";\nexport * from \"./components-react/filtering/ResultSelector\";\n\nexport * from \"./components-react/inputs/ParsedInput\";\n\nexport * from \"./components-react/properties/LinkHandler\";\nexport * from \"./components-react/properties/ValueRendererManager\";\nexport * from \"./components-react/properties/renderers/NonPrimitivePropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PrimitivePropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PropertyRenderer\";\nexport * from \"./components-react/properties/renderers/PropertyView\";\nexport * from \"./components-react/properties/renderers/ActionButtonList\";\nexport * from \"./components-react/properties/renderers/ActionButtonRenderer\";\nexport * from \"./components-react/properties/renderers/value/MergedPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/MultilineTextPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/UrlPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/WithContextStyle\";\n\nexport * from \"./components-react/filter-builder/FilterBuilder\";\nexport * from \"./components-react/filter-builder/FilterBuilderRuleOperator\";\nexport * from \"./components-react/filter-builder/FilterBuilderState\";\nexport * from \"./components-react/filter-builder/FilterBuilderRuleValue\";\nexport * from \"./components-react/filter-builder/Operators\";\nexport * from \"./components-react/filter-builder/Types\";\n\nexport * from \"./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer\";\nexport * from \"./components-react/properties/renderers/label/PrimitivePropertyLabelRenderer\";\nexport * from \"./components-react/properties/renderers/label/PropertyLabelRenderer\";\n\nexport * from \"./components-react/properties/renderers/value/PrimitivePropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/ArrayPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/StructPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/DoublePropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/NavigationPropertyValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/ArrayValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/StructValueRenderer\";\nexport * from \"./components-react/properties/renderers/value/table/NonPrimitiveValueRenderer\";\nexport * from \"./components-react/properties/ItemStyle\";\n\nexport * from \"./components-react/propertygrid/PropertyCategoryRendererManager\";\nexport * from \"./components-react/propertygrid/PropertyDataProvider\";\nexport * from \"./components-react/propertygrid/SimplePropertyDataProvider\";\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGrid\";\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider\";\nexport * from \"./components-react/propertygrid/component/PropertyCategoryBlock\";\nexport * from \"./components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier\";\nexport * from \"./components-react/propertygrid/component/PropertyGridCommons\";\nexport * from \"./components-react/propertygrid/component/PropertyList\";\nexport * from \"./components-react/propertygrid/internal/flat-items/FlatGridItem\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableFlatGridItem\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridCategory\";\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridItemFactory\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridEventHandler\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridHooks\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModel\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelChangeEvent\";\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelSource\";\nexport * from \"./components-react/propertygrid/dataproviders/FilteringDataProvider\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer\";\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase\";\n\nexport * from \"./components-react/selectable-content/SelectableContent\";\n\n// TODO: toolbar/groupPanel components needs a refactor.\nexport * from \"./components-react/toolbar/groupPanel/tool/Tool\";\n\nexport * from \"./components-react/toolbar/groupPanel/Column\";\nexport * from \"./components-react/toolbar/groupPanel/Columns\";\nexport * from \"./components-react/toolbar/groupPanel/Panel\";\nexport * from \"./components-react/toolbar/groupPanel/Title\";\n\nexport * from \"./components-react/toolbar/InternalToolbarComponent\";\nexport * from \"./components-react/toolbar/PopupItem\";\nexport * from \"./components-react/toolbar/PopupItemWithDrag\";\nexport * from \"./components-react/toolbar/Toolbar\";\nexport * from \"./components-react/toolbar/ToolbarWithOverflow\";\nexport * from \"./components-react/toolbar/Item\";\nexport * from \"./components-react/toolbar/utilities/Direction\";\n\nexport * from \"./components-react/tree/TreeDataProvider\";\nexport * from \"./components-react/tree/SimpleTreeDataProvider\";\nexport * from \"./components-react/tree/HighlightingEngine\";\nexport * from \"./components-react/tree/ImageLoader\";\nexport * from \"./components-react/tree/controlled/TreeActions\";\nexport * from \"./components-react/tree/controlled/TreeEventDispatcher\";\nexport * from \"./components-react/tree/controlled/TreeEventHandler\";\nexport * from \"./components-react/tree/controlled/TreeEvents\";\nexport * from \"./components-react/tree/controlled/TreeModel\";\nexport * from \"./components-react/tree/controlled/TreeModelSource\";\nexport * from \"./components-react/tree/controlled/TreeNodeLoader\";\nexport * from \"./components-react/tree/controlled/Observable\";\nexport * from \"./components-react/tree/controlled/TreeHooks\";\nexport * from \"./components-react/tree/controlled/component/ControlledTree\";\nexport * from \"./components-react/tree/controlled/component/NodeContent\";\nexport * from \"./components-react/tree/controlled/component/TreeNodeEditor\";\nexport * from \"./components-react/tree/controlled/component/TreeNodeRenderer\";\nexport * from \"./components-react/tree/controlled/component/TreeRenderer\";\nexport * from \"./components-react/tree/controlled/internal/SparseTree\";\n\n/** @docs-package-description\n * The components-react package contains React components that are data-oriented, such as PropertyGrid, Table and Tree.\n * For more information, see [learning about components-react]($docs/learning/ui/components/index.md).\n */\n/**\n * @docs-group-description Common\n * Common classes used across various UI components.\n */\n/**\n * @docs-group-description Breadcrumb\n * Classes and components for working with a Breadcrumb.\n * As of version 3.0, the Breadcrumb is deprecated.\n */\n/**\n * @docs-group-description Date\n * Classes, interfaces, and components for showing and setting date and time.\n */\n/**\n * @docs-group-description DragDrop\n * Classes and Higher Order Components for working with the DragDrop API.\n */\n/**\n * @docs-group-description Favorite\n * Classes and components for displaying favorite properties.\n */\n/**\n * @docs-group-description Filtering\n * Classes and components for working with filtering.\n */\n/**\n * @docs-group-description Inputs\n * Input Components that format and parse input.\n */\n/**\n * @docs-group-description SelectableContent\n * Classes and components for working with SelectableContent component.\n */\n/**\n * @docs-group-description Properties\n * Classes and components for working with Properties.\n */\n/**\n * @docs-group-description PropertyEditors\n * Classes and components for working with Property Editors.\n */\n/**\n * @docs-group-description PropertyGrid\n * Classes and components for working with a PropertyGrid.\n */\n/**\n * @docs-group-description Table\n * Classes and components for working with a Table.\n */\n/**\n * @docs-group-description Toolbar\n * Functions and components that provide a Toolbar.\n */\n/**\n * @docs-group-description Tree\n * Classes and components for working with a Tree.\n */\n/**\n * @docs-group-description TypeConverters\n * Classes for working with Type Converters.\n */\n/**\n * @docs-group-description PropertyFilterBuilder\n * Classes and components for working with PropertyFilterBuilder.\n */\n"]}
|
|
@@ -12,8 +12,7 @@ import { ProgressRadial } from "@itwin/itwinui-react";
|
|
|
12
12
|
* @internal
|
|
13
13
|
*/
|
|
14
14
|
export function DelayedSpinner(props) {
|
|
15
|
-
|
|
16
|
-
const delay = (_a = props.delay) !== null && _a !== void 0 ? _a : 500;
|
|
15
|
+
const delay = props.delay ?? 500;
|
|
17
16
|
const [loadStart] = React.useState(props.loadStart || new Date());
|
|
18
17
|
const currTime = new Date();
|
|
19
18
|
const diff = currTime.getTime() - loadStart.getTime();
|
|
@@ -26,7 +25,7 @@ export function DelayedSpinner(props) {
|
|
|
26
25
|
});
|
|
27
26
|
if (diff < delay)
|
|
28
27
|
return null;
|
|
29
|
-
return React.createElement(ProgressRadial, { indeterminate: true, size:
|
|
28
|
+
return React.createElement(ProgressRadial, { indeterminate: true, size: props.size ?? "large" });
|
|
30
29
|
}
|
|
31
30
|
const useForceUpdate = () => {
|
|
32
31
|
const [value, set] = React.useState(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DelayedSpinner.js","sourceRoot":"","sources":["../../../../src/components-react/common/DelayedSpinner.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAetD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B
|
|
1
|
+
{"version":3,"file":"DelayedSpinner.js","sourceRoot":"","sources":["../../../../src/components-react/common/DelayedSpinner.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAetD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC;IACjC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;IAEtD,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,IAAI,IAAI,KAAK;YAAE,OAAO;QAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;QAC/C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,KAAK;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,oBAAC,cAAc,IAAC,aAAa,QAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,OAAO,GAAI,CAAC;AACvE,CAAC;AAED,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC,CAAC","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 Common\n */\n\nimport * as React from \"react\";\nimport type { ProgressRadialProps } from \"@itwin/itwinui-react\";\nimport { ProgressRadial } from \"@itwin/itwinui-react\";\n\n/** Type for ProgressRadialProps.size */\ntype RadialSizeType = ProgressRadialProps[\"size\"];\n\n/**\n * Props for [[DelayedSpinner]] component.\n * @internal\n */\nexport interface DelayedSpinnerProps {\n loadStart?: Date;\n delay?: number;\n size?: RadialSizeType;\n}\n\n/**\n * Spinner that is rendered with delay.\n * @internal\n */\nexport function DelayedSpinner(props: DelayedSpinnerProps) {\n const delay = props.delay ?? 500;\n const [loadStart] = React.useState(props.loadStart || new Date());\n\n const currTime = new Date();\n const diff = currTime.getTime() - loadStart.getTime();\n\n const update = useForceUpdate();\n React.useEffect(() => {\n if (diff >= delay) return;\n const timer = setTimeout(update, delay - diff);\n return () => clearTimeout(timer);\n });\n\n if (diff < delay) return null;\n\n return <ProgressRadial indeterminate size={props.size ?? \"large\"} />;\n}\n\nconst useForceUpdate = () => {\n const [value, set] = React.useState(true);\n return () => set(!value);\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubscriptionScheduler.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"SubscriptionScheduler.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAe,UAAU,EAAE,MAAM,MAAM,CAAC;AAmBpD;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAiC;;IA6BnD;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;CAelE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAClC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAE1C"}
|
|
@@ -5,19 +5,7 @@
|
|
|
5
5
|
/** @packageDocumentation
|
|
6
6
|
* @module Common
|
|
7
7
|
*/
|
|
8
|
-
import { defer } from "rxjs
|
|
9
|
-
import { EMPTY } from "rxjs/internal/observable/empty";
|
|
10
|
-
import { iif } from "rxjs/internal/observable/iif";
|
|
11
|
-
import { finalize } from "rxjs/internal/operators/finalize";
|
|
12
|
-
import { mergeMap } from "rxjs/internal/operators/mergeMap";
|
|
13
|
-
import { observeOn } from "rxjs/internal/operators/observeOn";
|
|
14
|
-
import { onErrorResumeNext } from "rxjs/internal/operators/onErrorResumeNext";
|
|
15
|
-
import { publish } from "rxjs/internal/operators/publish";
|
|
16
|
-
import { refCount } from "rxjs/internal/operators/refCount";
|
|
17
|
-
import { subscribeOn } from "rxjs/internal/operators/subscribeOn";
|
|
18
|
-
import { asapScheduler } from "rxjs/internal/scheduler/asap";
|
|
19
|
-
import { queueScheduler } from "rxjs/internal/scheduler/queue";
|
|
20
|
-
import { Subject } from "rxjs/internal/Subject";
|
|
8
|
+
import { asapScheduler, connectable, defer, EMPTY, finalize, iif, mergeMap, observeOn, onErrorResumeNextWith, queueScheduler, Subject, subscribeOn, tap, } from "rxjs";
|
|
21
9
|
const MAX_CONCURRENT_SUBSCRIPTIONS = 1;
|
|
22
10
|
/**
|
|
23
11
|
* Limits concurrent observable subscriptions to one.
|
|
@@ -33,15 +21,19 @@ export class SubscriptionScheduler {
|
|
|
33
21
|
this._scheduler = new Subject();
|
|
34
22
|
this._scheduler
|
|
35
23
|
.pipe(mergeMap((sourceObservable) => sourceObservable.pipe(
|
|
36
|
-
//
|
|
37
|
-
|
|
24
|
+
// connect source observable when scheduler subscribes
|
|
25
|
+
tap({
|
|
26
|
+
subscribe: () => {
|
|
27
|
+
sourceObservable.connect();
|
|
28
|
+
},
|
|
29
|
+
}),
|
|
38
30
|
// Guard against stack overflow when a lot of observables are scheduled. Without this operation `mergeMap`
|
|
39
31
|
// will process each observable that is present in the pipeline recursively.
|
|
40
32
|
observeOn(queueScheduler),
|
|
41
33
|
// Delay the connection until another event loop task
|
|
42
34
|
subscribeOn(asapScheduler),
|
|
43
35
|
// Ignore errors in this pipeline without suppressing them for other subscribers
|
|
44
|
-
|
|
36
|
+
onErrorResumeNextWith()), MAX_CONCURRENT_SUBSCRIPTIONS))
|
|
45
37
|
// Start consuming scheduled observables
|
|
46
38
|
.subscribe();
|
|
47
39
|
}
|
|
@@ -58,7 +50,10 @@ export class SubscriptionScheduler {
|
|
|
58
50
|
return defer(() => {
|
|
59
51
|
let unsubscribed = false;
|
|
60
52
|
// Do not subscribe to source observable if it was unsubscribed from before being processed by the scheduler
|
|
61
|
-
const connectableObservable = iif(() => unsubscribed, EMPTY, source)
|
|
53
|
+
const connectableObservable = connectable(iif(() => unsubscribed, EMPTY, source), {
|
|
54
|
+
connector: () => new Subject(),
|
|
55
|
+
resetOnDisconnect: false,
|
|
56
|
+
});
|
|
62
57
|
this._scheduler.next(connectableObservable);
|
|
63
58
|
return connectableObservable.pipe(finalize(() => (unsubscribed = true)));
|
|
64
59
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;
|
|
1
|
+
{"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAGH,OAAO,EACL,aAAa,EACb,WAAW,EACX,KAAK,EACL,KAAK,EACL,QAAQ,EACR,GAAG,EACH,QAAQ,EACR,SAAS,EACT,qBAAqB,EACrB,cAAc,EACd,OAAO,EACP,WAAW,EACX,GAAG,GACJ,MAAM,MAAM,CAAC;AAEd,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,OAAO,qBAAqB;IAGhC;QAFQ,eAAU,GAAG,IAAI,OAAO,EAAkB,CAAC;QAGjD,IAAI,CAAC,UAAU;aACZ,IAAI,CACH,QAAQ,CACN,CAAC,gBAAgB,EAAE,EAAE,CACnB,gBAAgB,CAAC,IAAI;QACnB,sDAAsD;QACtD,GAAG,CAAC;YACF,SAAS,EAAE,GAAG,EAAE;gBACd,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,CAAC;SACF,CAAC;QACF,0GAA0G;QAC1G,4EAA4E;QAC5E,SAAS,CAAC,cAAc,CAAC;QACzB,qDAAqD;QACrD,WAAW,CAAC,aAAa,CAAC;QAC1B,gFAAgF;QAChF,qBAAqB,EAAE,CACxB,EACH,4BAA4B,CAC7B,CACF;YACD,wCAAwC;aACvC,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAqB;QAC/C,OAAO,KAAK,CAAC,GAAG,EAAE;YAChB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,4GAA4G;YAC5G,MAAM,qBAAqB,GAAG,WAAW,CACvC,GAAG,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,EACtC;gBACE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,OAAO,EAAK;gBACjC,iBAAiB,EAAE,KAAK;aACzB,CACF,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,OAAO,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAmC;IAEnC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC","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 Common\n */\n\nimport type { Connectable, Observable } from \"rxjs\";\nimport {\n asapScheduler,\n connectable,\n defer,\n EMPTY,\n finalize,\n iif,\n mergeMap,\n observeOn,\n onErrorResumeNextWith,\n queueScheduler,\n Subject,\n subscribeOn,\n tap,\n} from \"rxjs\";\n\nconst MAX_CONCURRENT_SUBSCRIPTIONS = 1;\n\n/**\n * Limits concurrent observable subscriptions to one.\n *\n * Scheduled observables are placed at the end of a queue. Each queued observable is subscribed to and awaited until the\n * completion.\n *\n * To schedule an observable, subscribe to the result of `scheduleSubscription()` call.\n * @internal\n */\nexport class SubscriptionScheduler<T> {\n private _scheduler = new Subject<Connectable<T>>();\n\n constructor() {\n this._scheduler\n .pipe(\n mergeMap(\n (sourceObservable) =>\n sourceObservable.pipe(\n // connect source observable when scheduler subscribes\n tap({\n subscribe: () => {\n sourceObservable.connect();\n },\n }),\n // Guard against stack overflow when a lot of observables are scheduled. Without this operation `mergeMap`\n // will process each observable that is present in the pipeline recursively.\n observeOn(queueScheduler),\n // Delay the connection until another event loop task\n subscribeOn(asapScheduler),\n // Ignore errors in this pipeline without suppressing them for other subscribers\n onErrorResumeNextWith()\n ),\n MAX_CONCURRENT_SUBSCRIPTIONS\n )\n )\n // Start consuming scheduled observables\n .subscribe();\n }\n\n /**\n * Schedules `source` for subscription in the current scheduler.\n *\n * The actual scheduling is performed when the returned observable is subscribed to. To cancel, remove all subscribers\n * from the returned observable.\n *\n * @param source Input observable for which to schedule a subscription.\n * @returns Hot observable which starts emitting `source` values after subscription.\n */\n public scheduleSubscription(source: Observable<T>): Observable<T> {\n return defer(() => {\n let unsubscribed = false;\n // Do not subscribe to source observable if it was unsubscribed from before being processed by the scheduler\n const connectableObservable = connectable(\n iif(() => unsubscribed, EMPTY, source),\n {\n connector: () => new Subject<T>(),\n resetOnDisconnect: false,\n }\n );\n this._scheduler.next(connectableObservable);\n return connectableObservable.pipe(finalize(() => (unsubscribed = true)));\n });\n }\n}\n\n/**\n * Helper function for use as a `pipe()` argument with `rxjs` observables.\n * @internal\n */\nexport function scheduleSubscription<T>(\n scheduler: SubscriptionScheduler<T>\n): (source: Observable<T>) => Observable<T> {\n return (source) => scheduler.scheduleSubscription(source);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":"AAIA;;GAEG;
|
|
1
|
+
{"version":3,"file":"UseAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAMH;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAiCzE"}
|