@itwin/components-react 4.0.0-dev.2 → 4.0.0-dev.21
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 +156 -6
- package/LICENSE.md +1 -1
- package/README.md +2 -2
- package/lib/cjs/components-react/UiComponents.js +1 -1
- package/lib/cjs/components-react/UiComponents.js.map +1 -1
- package/lib/cjs/components-react/_target.scss +9 -9
- package/lib/cjs/components-react/common/DateUtils.d.ts +2 -2
- package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
- package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
- package/lib/cjs/components-react/common/DelayedSpinner.d.ts +1 -1
- package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
- package/lib/cjs/components-react/common/DelayedSpinner.js +7 -4
- package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
- package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
- package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
- package/lib/cjs/components-react/common/IImageLoader.d.ts +3 -3
- package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
- package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
- package/lib/cjs/components-react/common/ImageRenderer.js +6 -2
- package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
- package/lib/cjs/components-react/common/Links.js.map +1 -1
- package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
- package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
- package/lib/cjs/components-react/common/UseAsyncValue.d.ts +1 -1
- package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseAsyncValue.js +7 -3
- package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
- package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +16 -2
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
- package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
- package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
- package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
- package/lib/cjs/components-react/converters/BooleanTypeConverter.js +1 -1
- package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +1 -1
- package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.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/PointTypeConverter.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
- package/lib/cjs/components-react/converters/StringTypeConverter.js +2 -2
- 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.js +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DateField.js +5 -1
- package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
- package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePicker.js +9 -4
- package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePicker.scss +176 -177
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +7 -2
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
- package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
- package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
- package/lib/cjs/components-react/datepicker/TimeField.js +5 -1
- package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
- package/lib/cjs/components-react/datepicker/TimeField.scss +76 -76
- package/lib/cjs/components-react/editors/BooleanEditor.js +5 -1
- package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/BooleanEditor.scss +22 -22
- package/lib/cjs/components-react/editors/CustomNumberEditor.js +7 -5
- package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/CustomNumberEditor.scss +20 -21
- package/lib/cjs/components-react/editors/DateTimeEditor.js +9 -6
- package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
- package/lib/cjs/components-react/editors/EditorContainer.d.ts +10 -0
- package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/EditorContainer.js +6 -1
- package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
- package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +8 -2
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +141 -182
- package/lib/cjs/components-react/editors/EnumEditor.js +5 -1
- package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
- package/lib/cjs/components-react/editors/IconEditor.js +5 -1
- package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +5 -1
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +24 -24
- package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/NumericInputEditor.js +6 -2
- package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/NumericInputEditor.scss +16 -17
- package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/PopupButton.js +13 -8
- package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
- package/lib/cjs/components-react/editors/PopupButton.scss +116 -116
- package/lib/cjs/components-react/editors/PropertyEditorManager.js +6 -2
- package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
- package/lib/cjs/components-react/editors/SliderEditor.js +5 -1
- package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
- package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/editors/TextEditor.js +14 -5
- package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/TextEditor.scss +20 -21
- package/lib/cjs/components-react/editors/TextareaEditor.d.ts +1 -1
- package/lib/cjs/components-react/editors/TextareaEditor.js +6 -2
- package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
- package/lib/cjs/components-react/editors/ToggleEditor.js +5 -1
- package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
- package/lib/cjs/components-react/editors/ToggleEditor.scss +23 -23
- package/lib/cjs/components-react/editors/variables.scss +7 -6
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +29 -3
- package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
- package/lib/cjs/components-react/favorite/FavoritePropertyList.js +7 -4
- package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -25
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -82
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +87 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +27 -13
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +38 -40
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +27 -15
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -76
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +17 -8
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +20 -9
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +18 -8
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +65 -9
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
- package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
- package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/Types.d.ts +25 -5
- package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/Types.js +11 -1
- package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.js +17 -6
- package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.scss +58 -68
- package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
- package/lib/cjs/components-react/filtering/ResultSelector.js +11 -3
- package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
- package/lib/cjs/components-react/filtering/ResultSelector.scss +68 -73
- package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js +13 -5
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +75 -75
- package/lib/cjs/components-react/inputs/ParsedInput.js +5 -1
- package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
- package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
- package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
- package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
- package/lib/cjs/components-react/properties/LinkHandler.d.ts +3 -3
- package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/LinkHandler.js +6 -2
- package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
- package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -1
- package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
- package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +8 -5
- package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +6 -2
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
- package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +7 -4
- package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.js +5 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.scss +106 -104
- package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +8 -3
- package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +6 -3
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
- package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -3
- package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +8 -7
- package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -3
- package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +9 -8
- package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +5 -1
- package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -4
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts +4 -0
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +17 -4
- package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +10 -2
- package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +5 -1
- package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +6 -3
- package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +73 -72
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +5 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyList.js +5 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +53 -54
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -92
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.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/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.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.d.ts +10 -10
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +6 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +10 -8
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +2 -0
- package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
- package/lib/cjs/components-react/selectable-content/SelectableContent.js +10 -7
- package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
- package/lib/cjs/components-react/selectable-content/SelectableContent.scss +20 -20
- package/lib/cjs/components-react/toolbar/Item.js +5 -1
- package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Item.scss +91 -122
- package/lib/cjs/components-react/toolbar/ItemWrapper.js +5 -1
- package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
- package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
- package/lib/cjs/components-react/toolbar/Items.js +5 -1
- package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Items.scss +96 -97
- package/lib/cjs/components-react/toolbar/Overflow.js +5 -1
- package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Overflow.scss +57 -57
- package/lib/cjs/components-react/toolbar/OverflowPanel.js +5 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
- package/lib/cjs/components-react/toolbar/PopupItem.js +5 -1
- package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItem.scss +88 -88
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +5 -1
- package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +5 -1
- package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts +4 -2
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.js +7 -2
- package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +13 -6
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
- package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
- package/lib/cjs/components-react/toolbar/groupPanel/Column.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
- package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
- package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +15 -17
- package/lib/cjs/components-react/toolbar/groupPanel/Title.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +33 -34
- package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +5 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
- package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +117 -146
- package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
- package/lib/cjs/components-react/toolbar/useDragInteraction.js +5 -1
- package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
- package/lib/cjs/components-react/toolbar/utilities/Direction.js +2 -2
- package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
- package/lib/cjs/components-react/tree/HighlightingEngine.js +6 -2
- package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
- package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
- package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
- package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
- package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
- package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +4 -4
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/Observable.d.ts +12 -2
- package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +3 -3
- package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.js +7 -13
- package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +6 -8
- package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
- 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 -3
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
- package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +6 -1
- package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +27 -28
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +5 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +6 -2
- package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +7 -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.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
- package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/lib/cjs/components-react.d.ts +4 -8
- package/lib/cjs/components-react.d.ts.map +1 -1
- package/lib/cjs/components-react.js +9 -9
- package/lib/cjs/components-react.js.map +1 -1
- package/lib/esm/components-react/UiComponents.js +2 -1
- package/lib/esm/components-react/UiComponents.js.map +1 -1
- package/lib/esm/components-react/_target.scss +9 -9
- package/lib/esm/components-react/common/DateUtils.d.ts +2 -2
- package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
- package/lib/esm/components-react/common/DateUtils.js.map +1 -1
- package/lib/esm/components-react/common/DelayedSpinner.d.ts +1 -1
- package/lib/esm/components-react/common/DelayedSpinner.d.ts.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/HighlightedText.js.map +1 -1
- package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
- package/lib/esm/components-react/common/IImageLoader.d.ts +3 -3
- package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
- package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
- package/lib/esm/components-react/common/ImageRenderer.js +2 -1
- package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
- package/lib/esm/components-react/common/Links.js.map +1 -1
- package/lib/esm/components-react/common/PageOptions.js.map +1 -1
- package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
- package/lib/esm/components-react/common/UseAsyncValue.d.ts +1 -1
- package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseAsyncValue.js +2 -2
- package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
- package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +16 -2
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/esm/components-react/common/UseRerender.js.map +1 -1
- package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
- package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
- package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
- package/lib/esm/components-react/converters/BooleanTypeConverter.js +2 -1
- package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
- package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +1 -1
- package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.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/PointTypeConverter.d.ts.map +1 -1
- package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
- package/lib/esm/components-react/converters/StringTypeConverter.js +2 -2
- 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.js +2 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
- package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
- package/lib/esm/components-react/datepicker/DateField.scss +22 -22
- package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/DatePicker.js +4 -3
- package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
- package/lib/esm/components-react/datepicker/DatePicker.scss +176 -177
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +3 -2
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
- package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
- package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
- package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
- package/lib/esm/components-react/datepicker/TimeField.scss +76 -76
- package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
- package/lib/esm/components-react/editors/BooleanEditor.scss +22 -22
- package/lib/esm/components-react/editors/CustomNumberEditor.js +2 -4
- package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
- package/lib/esm/components-react/editors/CustomNumberEditor.scss +20 -21
- package/lib/esm/components-react/editors/DateTimeEditor.js +4 -5
- package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
- package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
- package/lib/esm/components-react/editors/EditorContainer.d.ts +10 -0
- package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
- package/lib/esm/components-react/editors/EditorContainer.js +1 -0
- package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
- package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +4 -2
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
- package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +141 -182
- package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
- package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
- package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
- package/lib/esm/components-react/editors/IconEditor.scss +16 -16
- package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
- package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +24 -24
- package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/NumericInputEditor.js +1 -1
- package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
- package/lib/esm/components-react/editors/NumericInputEditor.scss +16 -17
- package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
- package/lib/esm/components-react/editors/PopupButton.js +8 -7
- package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
- package/lib/esm/components-react/editors/PopupButton.scss +116 -116
- package/lib/esm/components-react/editors/PropertyEditorManager.js +2 -1
- package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
- package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
- package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
- package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
- package/lib/esm/components-react/editors/TextEditor.js +9 -4
- package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
- package/lib/esm/components-react/editors/TextEditor.scss +20 -21
- package/lib/esm/components-react/editors/TextareaEditor.d.ts +1 -1
- package/lib/esm/components-react/editors/TextareaEditor.js +1 -1
- package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
- package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
- package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
- package/lib/esm/components-react/editors/ToggleEditor.scss +23 -23
- package/lib/esm/components-react/editors/variables.scss +7 -6
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
- package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
- package/lib/esm/components-react/favorite/FavoritePropertyList.js +2 -3
- package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -25
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.js +12 -73
- package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +38 -40
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -76
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +8 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -4
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +9 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
- package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js +54 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
- package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/Operators.js +23 -5
- package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
- package/lib/esm/components-react/filter-builder/Types.d.ts +25 -5
- package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/Types.js +11 -1
- package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.js +13 -6
- package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.scss +58 -68
- package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
- package/lib/esm/components-react/filtering/ResultSelector.js +6 -2
- package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
- package/lib/esm/components-react/filtering/ResultSelector.scss +68 -73
- package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
- package/lib/esm/components-react/iconpicker/IconPickerButton.js +10 -5
- package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/esm/components-react/iconpicker/IconPickerButton.scss +75 -75
- package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
- package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
- package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
- package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
- package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
- package/lib/esm/components-react/properties/LinkHandler.d.ts +3 -3
- package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
- package/lib/esm/components-react/properties/LinkHandler.js +1 -1
- package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
- package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
- package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.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/NonPrimitivePropertyRenderer.scss +17 -17
- 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/PropertyGridColumns.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyView.scss +106 -104
- package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +3 -2
- package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +1 -2
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
- package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.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/MergedPropertyValueRenderer.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.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +4 -7
- package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
- package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +4 -4
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts +4 -0
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +17 -4
- package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +6 -1
- package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.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/PropertyGrid.scss +73 -72
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +4 -3
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -53
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -92
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.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/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
- package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.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.d.ts +10 -10
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +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.d.ts +3 -6
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.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.d.ts +2 -0
- package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
- package/lib/esm/components-react/selectable-content/SelectableContent.js +5 -6
- package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
- package/lib/esm/components-react/selectable-content/SelectableContent.scss +20 -20
- package/lib/esm/components-react/toolbar/Item.js.map +1 -1
- package/lib/esm/components-react/toolbar/Item.scss +91 -122
- package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
- package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
- package/lib/esm/components-react/toolbar/Items.js.map +1 -1
- package/lib/esm/components-react/toolbar/Items.scss +96 -97
- package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
- package/lib/esm/components-react/toolbar/Overflow.scss +57 -57
- package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
- package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItem.scss +88 -88
- package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
- package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.d.ts +4 -2
- package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.js +2 -1
- package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +10 -6
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/esm/components-react/toolbar/_variables.scss +34 -34
- package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
- package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
- package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
- package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +15 -17
- package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/Title.scss +33 -34
- package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
- package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
- package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
- package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +117 -146
- package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
- package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
- package/lib/esm/components-react/toolbar/utilities/Direction.js +4 -2
- package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
- package/lib/esm/components-react/tree/HighlightingEngine.js +2 -1
- package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
- package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
- package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
- package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
- package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
- package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts +4 -4
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/Observable.d.ts +12 -2
- package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +3 -3
- package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.js +7 -10
- package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +6 -8
- package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +1 -2
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
- package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/NodeContent.js +1 -0
- package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +27 -28
- package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +2 -2
- 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.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
- package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
- package/lib/esm/components-react.d.ts +4 -8
- package/lib/esm/components-react.d.ts.map +1 -1
- package/lib/esm/components-react.js +4 -8
- package/lib/esm/components-react.js.map +1 -1
- package/lib/public/locales/en/UiComponents.json +139 -139
- package/package.json +30 -32
- package/ThirdPartyNotices.md +0 -31
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +0 -185
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
- package/lib/cjs/components-react/table/TableDataProvider.d.ts +0 -10
- package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +0 -1
- package/lib/cjs/components-react/table/TableDataProvider.js +0 -18
- package/lib/cjs/components-react/table/TableDataProvider.js.map +0 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +0 -159
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
- package/lib/esm/components-react/table/TableDataProvider.d.ts +0 -10
- package/lib/esm/components-react/table/TableDataProvider.d.ts.map +0 -1
- package/lib/esm/components-react/table/TableDataProvider.js +0 -14
- package/lib/esm/components-react/table/TableDataProvider.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,0DAAuD;AACvD,0DAAuD;AACvD,sDAAmD;AACnD,+DAA4D;AAC5D,+DAA4D;AAC5D,iEAA8D;AAC9D,iFAA8E;AAC9E,6DAA0D;AAC1D,+DAA4D;AAC5D,qEAAkE;AAClE,uDAA6D;AAC7D,yDAA+D;AAC/D,mDAAgD;AAEhD,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAa,qBAAqB;IAGhC;QAFQ,eAAU,GAAG,IAAI,iBAAO,EAA4B,CAAC;QAG3D,IAAI,CAAC,UAAU;aACZ,IAAI,CACH,IAAA,mBAAQ,EACN,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI;QACzC,yBAAyB;QACzB,IAAA,mBAAQ,GAAE;QACV,0GAA0G;QAC1G,4EAA4E;QAC5E,IAAA,qBAAS,EAAC,sBAAc,CAAC;QACzB,qDAAqD;QACrD,IAAA,yBAAW,EAAC,oBAAa,CAAC;QAC1B,gFAAgF;QAChF,IAAA,qCAAiB,GAAE,CACpB,EACD,4BAA4B,CAC7B,CACF;YACD,wCAAwC;aACvC,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAqB;QAC/C,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE;YAChB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,4GAA4G;YAC5G,MAAM,qBAAqB,GAAG,IAAA,SAAG,EAAC,GAAG,EAAE,CAAC,YAAY,EAAE,aAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAO,GAAE,CAA6B,CAAC;YACjH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3CD,sDA2CC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAI,SAAmC;IACzE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAFD,oDAEC","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 { Observable } from \"rxjs/internal/Observable\";\nimport { ConnectableObservable } from \"rxjs/internal/observable/ConnectableObservable\";\nimport { defer } from \"rxjs/internal/observable/defer\";\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\nimport { iif } from \"rxjs/internal/observable/iif\";\nimport { finalize } from \"rxjs/internal/operators/finalize\";\nimport { mergeMap } from \"rxjs/internal/operators/mergeMap\";\nimport { observeOn } from \"rxjs/internal/operators/observeOn\";\nimport { onErrorResumeNext } from \"rxjs/internal/operators/onErrorResumeNext\";\nimport { publish } from \"rxjs/internal/operators/publish\";\nimport { refCount } from \"rxjs/internal/operators/refCount\";\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\nimport { queueScheduler } from \"rxjs/internal/scheduler/queue\";\nimport { Subject } from \"rxjs/internal/Subject\";\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<ConnectableObservable<T>>();\n\n constructor() {\n this._scheduler\n .pipe(\n mergeMap(\n (sourceObservable) => sourceObservable.pipe(\n // Connect the observable\n refCount(),\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 onErrorResumeNext(),\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 = iif(() => unsubscribed, EMPTY, source).pipe(publish()) as ConnectableObservable<T>;\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>(scheduler: SubscriptionScheduler<T>): (source: Observable<T>) => Observable<T> {\n return (source) => scheduler.scheduleSubscription(source);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,0DAAuD;AACvD,0DAAuD;AACvD,sDAAmD;AACnD,+DAA4D;AAC5D,+DAA4D;AAC5D,iEAA8D;AAC9D,iFAA8E;AAC9E,6DAA0D;AAC1D,+DAA4D;AAC5D,qEAAkE;AAClE,uDAA6D;AAC7D,yDAA+D;AAC/D,mDAAgD;AAEhD,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAa,qBAAqB;IAGhC;QAFQ,eAAU,GAAG,IAAI,iBAAO,EAA4B,CAAC;QAG3D,IAAI,CAAC,UAAU;aACZ,IAAI,CACH,IAAA,mBAAQ,EACN,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI;QACzC,yBAAyB;QACzB,IAAA,mBAAQ,GAAE;QACV,0GAA0G;QAC1G,4EAA4E;QAC5E,IAAA,qBAAS,EAAC,sBAAc,CAAC;QACzB,qDAAqD;QACrD,IAAA,yBAAW,EAAC,oBAAa,CAAC;QAC1B,gFAAgF;QAChF,IAAA,qCAAiB,GAAE,CACpB,EACD,4BAA4B,CAC7B,CACF;YACD,wCAAwC;aACvC,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAqB;QAC/C,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE;YAChB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,4GAA4G;YAC5G,MAAM,qBAAqB,GAAG,IAAA,SAAG,EAAC,GAAG,EAAE,CAAC,YAAY,EAAE,aAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAO,GAAE,CAA6B,CAAC;YACjH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3CD,sDA2CC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAI,SAAmC;IACzE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAFD,oDAEC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { Observable } from \"rxjs/internal/Observable\";\r\nimport { ConnectableObservable } from \"rxjs/internal/observable/ConnectableObservable\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\r\nimport { iif } from \"rxjs/internal/observable/iif\";\r\nimport { finalize } from \"rxjs/internal/operators/finalize\";\r\nimport { mergeMap } from \"rxjs/internal/operators/mergeMap\";\r\nimport { observeOn } from \"rxjs/internal/operators/observeOn\";\r\nimport { onErrorResumeNext } from \"rxjs/internal/operators/onErrorResumeNext\";\r\nimport { publish } from \"rxjs/internal/operators/publish\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\r\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\r\nimport { queueScheduler } from \"rxjs/internal/scheduler/queue\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\n\r\nconst MAX_CONCURRENT_SUBSCRIPTIONS = 1;\r\n\r\n/**\r\n * Limits concurrent observable subscriptions to one.\r\n *\r\n * Scheduled observables are placed at the end of a queue. Each queued observable is subscribed to and awaited until the\r\n * completion.\r\n *\r\n * To schedule an observable, subscribe to the result of `scheduleSubscription()` call.\r\n * @internal\r\n */\r\nexport class SubscriptionScheduler<T> {\r\n private _scheduler = new Subject<ConnectableObservable<T>>();\r\n\r\n constructor() {\r\n this._scheduler\r\n .pipe(\r\n mergeMap(\r\n (sourceObservable) => sourceObservable.pipe(\r\n // Connect the observable\r\n refCount(),\r\n // Guard against stack overflow when a lot of observables are scheduled. Without this operation `mergeMap`\r\n // will process each observable that is present in the pipeline recursively.\r\n observeOn(queueScheduler),\r\n // Delay the connection until another event loop task\r\n subscribeOn(asapScheduler),\r\n // Ignore errors in this pipeline without suppressing them for other subscribers\r\n onErrorResumeNext(),\r\n ),\r\n MAX_CONCURRENT_SUBSCRIPTIONS,\r\n ),\r\n )\r\n // Start consuming scheduled observables\r\n .subscribe();\r\n }\r\n\r\n /**\r\n * Schedules `source` for subscription in the current scheduler.\r\n *\r\n * The actual scheduling is performed when the returned observable is subscribed to. To cancel, remove all subscribers\r\n * from the returned observable.\r\n *\r\n * @param source Input observable for which to schedule a subscription.\r\n * @returns Hot observable which starts emitting `source` values after subscription.\r\n */\r\n public scheduleSubscription(source: Observable<T>): Observable<T> {\r\n return defer(() => {\r\n let unsubscribed = false;\r\n // Do not subscribe to source observable if it was unsubscribed from before being processed by the scheduler\r\n const connectableObservable = iif(() => unsubscribed, EMPTY, source).pipe(publish()) as ConnectableObservable<T>;\r\n this._scheduler.next(connectableObservable);\r\n return connectableObservable.pipe(finalize(() => unsubscribed = true));\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Helper function for use as a `pipe()` argument with `rxjs` observables.\r\n * @internal\r\n */\r\nexport function scheduleSubscription<T>(scheduler: SubscriptionScheduler<T>): (source: Observable<T>) => Observable<T> {\r\n return (source) => scheduler.scheduleSubscription(source);\r\n}\r\n"]}
|
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* Custom hook for working with possibly async values.
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
8
|
-
export declare
|
|
8
|
+
export declare function useAsyncValue<T>(value: T | PromiseLike<T>): T | undefined;
|
|
9
9
|
//# sourceMappingURL=UseAsyncValue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAQH;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"UseAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAQH;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CA6BzE"}
|
|
@@ -8,7 +8,11 @@
|
|
|
8
8
|
*/
|
|
9
9
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
|
-
Object.
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
12
16
|
}) : (function(o, m, k, k2) {
|
|
13
17
|
if (k2 === undefined) k2 = k;
|
|
14
18
|
o[k2] = m[k];
|
|
@@ -36,7 +40,7 @@ const core_react_1 = require("@itwin/core-react");
|
|
|
36
40
|
* Custom hook for working with possibly async values.
|
|
37
41
|
* @public
|
|
38
42
|
*/
|
|
39
|
-
|
|
43
|
+
function useAsyncValue(value) {
|
|
40
44
|
const cancelled = React.useMemo(() => new Subject_1.Subject(), []);
|
|
41
45
|
// cancel any pending promises on unmount
|
|
42
46
|
React.useEffect(() => () => cancelled.next(), [cancelled]);
|
|
@@ -60,6 +64,6 @@ const useAsyncValue = (value) => {
|
|
|
60
64
|
return undefined;
|
|
61
65
|
}, [value, cancelled]);
|
|
62
66
|
return result;
|
|
63
|
-
}
|
|
67
|
+
}
|
|
64
68
|
exports.useAsyncValue = useAsyncValue;
|
|
65
69
|
//# sourceMappingURL=UseAsyncValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG
|
|
1
|
+
{"version":3,"file":"UseAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,wDAAqD;AACrD,iEAA8D;AAC9D,mDAAgD;AAChD,kDAAsE;AAEtE;;;GAGG;AACH,SAAgB,aAAa,CAAI,KAAyB;IACxD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAO,EAAQ,EAAE,EAAE,CAAC,CAAC;IAC/D,yCAAyC;IACzC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC9C,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACxG,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAA,+BAAkB,EAAC,GAAG,EAAE;QACtB,MAAM,WAAW,GAAG,CAAC,QAAW,EAAE,EAAE;YAClC,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC/H,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACzC;QAED,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AAChB,CAAC;AA7BD,sCA6BC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { from } from \"rxjs/internal/observable/from\";\r\nimport { takeUntil } from \"rxjs/internal/operators/takeUntil\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\nimport { isPromiseLike, useEffectSkipFirst } from \"@itwin/core-react\";\r\n\r\n/**\r\n * Custom hook for working with possibly async values.\r\n * @public\r\n */\r\nexport function useAsyncValue<T>(value: T | PromiseLike<T>): T | undefined {\r\n const cancelled = React.useMemo(() => new Subject<void>(), []);\r\n // cancel any pending promises on unmount\r\n React.useEffect(() => () => cancelled.next(), [cancelled]);\r\n\r\n const [result, setResult] = React.useState(() => {\r\n if (isPromiseLike(value)) {\r\n from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => setResult(resolvedValue) });\r\n return undefined;\r\n }\r\n return value;\r\n });\r\n\r\n useEffectSkipFirst(() => {\r\n const updateValue = (newValue: T) => {\r\n cancelled.next();\r\n setResult(newValue);\r\n };\r\n\r\n if (isPromiseLike(value)) {\r\n const subscription = from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => updateValue(resolvedValue) });\r\n return () => subscription.unsubscribe();\r\n }\r\n\r\n updateValue(value);\r\n return undefined;\r\n }, [value, cancelled]);\r\n\r\n return result;\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F,0DAA8D;AAC9D,kDAA+C;AAC/C,kDAA0B;AAE1B,gBAAgB;AAChB,SAAgB,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CAAI,kBAA0C;QAClF,MAAM,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,IAAI,wBAAO,CACf,2BAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,IAAA,6BAAY,EAAC,kBAAkB,CAAC,iCAAiC,WAAW,aAAa,CAC9F,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC;AApBD,gFAoBC","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\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\nimport { UiComponents } from \"../UiComponents\";\nimport React from \"react\";\n\n/** @internal */\nexport function createContextWithMandatoryProvider<T>(\n contextName: string,\n): [\n React.ProviderExoticComponent<React.ProviderProps<T>>,\n React.ExoticComponent<React.ConsumerProps<T>>,\n <P>(component: React.ComponentType<P>) => T,\n ] {\n const context = React.createContext<T>(undefined as any as T);\n function useContextWithoutDefaultValue<P>(ConsumingComponent: React.ComponentType<P>) {\n const value = React.useContext(context);\n /* istanbul ignore if */\n if (value === undefined) {\n throw new UiError(\n UiComponents.loggerCategory(ConsumingComponent),\n `'${getClassName(ConsumingComponent)}' expects to be wrapped by a '${contextName}' provider.`,\n );\n }\n return value;\n }\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F,0DAA8D;AAC9D,kDAA+C;AAC/C,kDAA0B;AAE1B,gBAAgB;AAChB,SAAgB,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CAAI,kBAA0C;QAClF,MAAM,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,IAAI,wBAAO,CACf,2BAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,IAAA,6BAAY,EAAC,kBAAkB,CAAC,iCAAiC,WAAW,aAAa,CAC9F,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC;AApBD,gFAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport React from \"react\";\r\n\r\n/** @internal */\r\nexport function createContextWithMandatoryProvider<T>(\r\n contextName: string,\r\n): [\r\n React.ProviderExoticComponent<React.ProviderProps<T>>,\r\n React.ExoticComponent<React.ConsumerProps<T>>,\r\n <P>(component: React.ComponentType<P>) => T,\r\n ] {\r\n const context = React.createContext<T>(undefined as any as T);\r\n function useContextWithoutDefaultValue<P>(ConsumingComponent: React.ComponentType<P>) {\r\n const value = React.useContext(context);\r\n /* istanbul ignore if */\r\n if (value === undefined) {\r\n throw new UiError(\r\n UiComponents.loggerCategory(ConsumingComponent),\r\n `'${getClassName(ConsumingComponent)}' expects to be wrapped by a '${contextName}' provider.`,\r\n );\r\n }\r\n return value;\r\n }\r\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\r\n}\r\n"]}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Common
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* Custom hook for working with promise values.
|
|
3
6
|
* Promises are debounced using trailing and leading edge.
|
|
4
7
|
* The first promise will always be executed.
|
|
5
8
|
* Any promises following the first while it is executing will be scheduled (and unscheduled), leaving only the last promise to be resolved.
|
|
6
9
|
* Once the first promise finishes resolving, the last passed promise starts resolving.
|
|
7
|
-
* @
|
|
10
|
+
* @throws if/when `valueToBeResolved` promise is rejected. The error is thrown in the React's render loop, so it can be caught using an error boundary.
|
|
11
|
+
* @beta
|
|
8
12
|
*/
|
|
9
13
|
export declare function useDebouncedAsyncValue<TReturn>(valueToBeResolved: undefined | (() => Promise<TReturn>)): {
|
|
10
14
|
value: TReturn | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseDebouncedAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"UseDebouncedAsyncValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":"AAIA;;GAEG;AAQH;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;;;EA8CtG"}
|
|
@@ -3,12 +3,15 @@
|
|
|
3
3
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
4
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
5
|
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
/** @packageDocumentation
|
|
7
|
+
* @module Common
|
|
8
|
+
*/
|
|
6
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
10
|
exports.useDebouncedAsyncValue = void 0;
|
|
8
11
|
const react_1 = require("react");
|
|
12
|
+
const defer_1 = require("rxjs/internal/observable/defer");
|
|
9
13
|
const publish_1 = require("rxjs/internal/operators/publish");
|
|
10
14
|
const refCount_1 = require("rxjs/internal/operators/refCount");
|
|
11
|
-
const defer_1 = require("rxjs/internal/observable/defer");
|
|
12
15
|
const SubscriptionScheduler_1 = require("./SubscriptionScheduler");
|
|
13
16
|
/**
|
|
14
17
|
* Custom hook for working with promise values.
|
|
@@ -16,12 +19,17 @@ const SubscriptionScheduler_1 = require("./SubscriptionScheduler");
|
|
|
16
19
|
* The first promise will always be executed.
|
|
17
20
|
* Any promises following the first while it is executing will be scheduled (and unscheduled), leaving only the last promise to be resolved.
|
|
18
21
|
* Once the first promise finishes resolving, the last passed promise starts resolving.
|
|
19
|
-
* @
|
|
22
|
+
* @throws if/when `valueToBeResolved` promise is rejected. The error is thrown in the React's render loop, so it can be caught using an error boundary.
|
|
23
|
+
* @beta
|
|
20
24
|
*/
|
|
21
25
|
function useDebouncedAsyncValue(valueToBeResolved) {
|
|
22
26
|
const scheduler = (0, react_1.useMemo)(() => new SubscriptionScheduler_1.SubscriptionScheduler(), []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
23
27
|
const [value, setValue] = (0, react_1.useState)();
|
|
24
28
|
const [inProgress, setInProgress] = (0, react_1.useState)(false);
|
|
29
|
+
const [errorState, setErrorState] = (0, react_1.useState)({
|
|
30
|
+
error: undefined,
|
|
31
|
+
hasError: false,
|
|
32
|
+
});
|
|
25
33
|
(0, react_1.useEffect)(() => {
|
|
26
34
|
if (!valueToBeResolved) {
|
|
27
35
|
setValue(undefined);
|
|
@@ -37,9 +45,15 @@ function useDebouncedAsyncValue(valueToBeResolved) {
|
|
|
37
45
|
setValue(data);
|
|
38
46
|
setInProgress(false);
|
|
39
47
|
},
|
|
48
|
+
error: (err) => {
|
|
49
|
+
setErrorState({ error: err, hasError: true });
|
|
50
|
+
setInProgress(false);
|
|
51
|
+
},
|
|
40
52
|
});
|
|
41
53
|
return () => { subscription.unsubscribe(); };
|
|
42
54
|
}, [valueToBeResolved, scheduler]);
|
|
55
|
+
if (errorState.hasError)
|
|
56
|
+
throw errorState.error ?? new Error("Exception in `useDebouncedAsyncValue`");
|
|
43
57
|
return { value, inProgress };
|
|
44
58
|
}
|
|
45
59
|
exports.useDebouncedAsyncValue = useDebouncedAsyncValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseDebouncedAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F
|
|
1
|
+
{"version":3,"file":"UseDebouncedAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAqD;AACrD,0DAAuD;AACvD,6DAA0D;AAC1D,+DAA4D;AAC5D,mEAAsF;AAEtF;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CAAU,iBAAuD;IACrG,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,6CAAqB,EAAW,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE7H,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAW,CAAC;IAC9C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAGzC;QACD,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,iBAAiB,EAAE;YACtB,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;SACR;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC;aAC1C,IAAI,CACH,IAAA,iBAAO,GAAE,EACT,IAAA,mBAAQ,GAAE,EACV,IAAA,4CAAoB,EAAC,SAAS,CAAC,CAChC;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBACb,aAAa,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9C,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;QAEL,OAAO,GAAG,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnC,IAAI,UAAU,CAAC,QAAQ;QACrB,MAAM,UAAU,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAE/E,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/B,CAAC;AA9CD,wDA8CC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { useEffect, useMemo, useState } from \"react\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { publish } from \"rxjs/internal/operators/publish\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { scheduleSubscription, SubscriptionScheduler } from \"./SubscriptionScheduler\";\r\n\r\n/**\r\n * Custom hook for working with promise values.\r\n * Promises are debounced using trailing and leading edge.\r\n * The first promise will always be executed.\r\n * Any promises following the first while it is executing will be scheduled (and unscheduled), leaving only the last promise to be resolved.\r\n * Once the first promise finishes resolving, the last passed promise starts resolving.\r\n * @throws if/when `valueToBeResolved` promise is rejected. The error is thrown in the React's render loop, so it can be caught using an error boundary.\r\n * @beta\r\n */\r\nexport function useDebouncedAsyncValue<TReturn>(valueToBeResolved: undefined | (() => Promise<TReturn>)) {\r\n const scheduler = useMemo(() => new SubscriptionScheduler<TReturn>(), []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const [value, setValue] = useState<TReturn>();\r\n const [inProgress, setInProgress] = useState(false);\r\n const [errorState, setErrorState] = useState<{\r\n error: Error | undefined;\r\n hasError: boolean;\r\n }>({\r\n error: undefined,\r\n hasError: false,\r\n });\r\n\r\n useEffect(() => {\r\n if (!valueToBeResolved) {\r\n setValue(undefined);\r\n setInProgress(false);\r\n return;\r\n }\r\n\r\n setInProgress(true);\r\n // schedule and subscribe to the observable emitting value from valueToBeResolved promise\r\n const subscription = defer(valueToBeResolved)\r\n .pipe(\r\n publish(),\r\n refCount(),\r\n scheduleSubscription(scheduler),\r\n )\r\n .subscribe({\r\n next: (data) => {\r\n setValue(data);\r\n setInProgress(false);\r\n },\r\n error: (err) => {\r\n setErrorState({ error: err, hasError: true });\r\n setInProgress(false);\r\n },\r\n });\r\n\r\n return () => { subscription.unsubscribe(); };\r\n }, [valueToBeResolved, scheduler]);\r\n\r\n if (errorState.hasError)\r\n throw errorState.error ?? new Error(\"Exception in `useDebouncedAsyncValue`\");\r\n\r\n return { value, inProgress };\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UseRerender.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseRerender.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F,iCAAyC;AAuBzC,gBAAgB;AAChB,SAAgB,WAAW,CAAI,cAAkB;IAC/C,MAAM,IAAI,GAAG,IAAA,cAAM,EAAC,EAAE,YAAY,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC;IACpG,IAAI,IAAI,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;KAChC;SAAM;QACL,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;KACvB;IAED,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACnC,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,QAAQ,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AApBD,kCAoBC","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\nimport { useRef, useState } from \"react\";\n\n/** @internal */\ninterface RerenderData<T extends (arg: any) => void> {\n /** Data specific to the current rerender cycle. */\n rerenderContext: Parameters<T>[0];\n /** Identifies the current rerender cycle. Starts at 0. */\n numRerenders: number;\n /** Rerenders component with new `rerenderContext`, if one is provided. */\n rerender: T;\n}\n\n/**\n * @internal\n * Makes component able to rerender itself.\n */\nexport function useRerender(): RerenderData<() => void>;\n/**\n * @internal\n * Makes component able to rerender itself while preserving some data between rerenders.\n * @param initialContext Data that component receives on first render cycle.\n */\nexport function useRerender<T>(initialContext: T): RerenderData<(newContext: T) => void>;\n/** @internal */\nexport function useRerender<T>(initialContext?: T): RerenderData<(newContext?: T) => void> {\n const data = useRef({ numRerenders: 0, rerenderRequested: false, context: initialContext }).current;\n if (data.rerenderRequested) {\n data.numRerenders += 1;\n data.rerenderRequested = false;\n } else {\n data.context = initialContext;\n data.numRerenders = 0;\n }\n\n const [_, setState] = useState({});\n return {\n rerenderContext: data.context,\n numRerenders: data.numRerenders,\n rerender: (newContext) => {\n data.rerenderRequested = true;\n data.context = newContext;\n setState({});\n },\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"UseRerender.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseRerender.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F,iCAAyC;AAuBzC,gBAAgB;AAChB,SAAgB,WAAW,CAAI,cAAkB;IAC/C,MAAM,IAAI,GAAG,IAAA,cAAM,EAAC,EAAE,YAAY,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC;IACpG,IAAI,IAAI,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;KAChC;SAAM;QACL,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;KACvB;IAED,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACnC,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,QAAQ,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AApBD,kCAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { useRef, useState } from \"react\";\r\n\r\n/** @internal */\r\ninterface RerenderData<T extends (arg: any) => void> {\r\n /** Data specific to the current rerender cycle. */\r\n rerenderContext: Parameters<T>[0];\r\n /** Identifies the current rerender cycle. Starts at 0. */\r\n numRerenders: number;\r\n /** Rerenders component with new `rerenderContext`, if one is provided. */\r\n rerender: T;\r\n}\r\n\r\n/**\r\n * @internal\r\n * Makes component able to rerender itself.\r\n */\r\nexport function useRerender(): RerenderData<() => void>;\r\n/**\r\n * @internal\r\n * Makes component able to rerender itself while preserving some data between rerenders.\r\n * @param initialContext Data that component receives on first render cycle.\r\n */\r\nexport function useRerender<T>(initialContext: T): RerenderData<(newContext: T) => void>;\r\n/** @internal */\r\nexport function useRerender<T>(initialContext?: T): RerenderData<(newContext?: T) => void> {\r\n const data = useRef({ numRerenders: 0, rerenderRequested: false, context: initialContext }).current;\r\n if (data.rerenderRequested) {\r\n data.numRerenders += 1;\r\n data.rerenderRequested = false;\r\n } else {\r\n data.context = initialContext;\r\n data.numRerenders = 0;\r\n }\r\n\r\n const [_, setState] = useState({});\r\n return {\r\n rerenderContext: data.context,\r\n numRerenders: data.numRerenders,\r\n rerender: (newContext) => {\r\n data.rerenderRequested = true;\r\n data.context = newContext;\r\n setState({});\r\n },\r\n };\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"countMatchesInString.js","sourceRoot":"","sources":["../../../../src/components-react/common/countMatchesInString.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F,gEAAgE;;;AAEhE;;GAEG;AAEH;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAc;IAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;QAC/B,OAAO,CAAC,CAAC;IAEX,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IAE3B,OAAO,IAAI,EAAE;QACX,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAC,EAAE;YACZ,EAAE,CAAC,CAAC;YACJ,GAAG,IAAI,IAAI,CAAC;SACb;;YACC,MAAM;KACT;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAhBD,oDAgBC","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/* @author Vitim.us https://gist.github.com/victornpb/7736865 */\n\n/** @packageDocumentation\n * @module Common\n */\n\n/** Counts how many times string 'lookup' is repeated in string 'str'.\n * @internal\n */\nexport function countMatchesInString(str: string, lookup: string) {\n if (!str.length || !lookup.length)\n return 0;\n\n let n = 0, pos = 0;\n const step = lookup.length;\n\n while (true) {\n pos = str.indexOf(lookup, pos);\n if (pos >= 0) {\n ++n;\n pos += step;\n } else\n break;\n }\n return n;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"countMatchesInString.js","sourceRoot":"","sources":["../../../../src/components-react/common/countMatchesInString.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F,gEAAgE;;;AAEhE;;GAEG;AAEH;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAc;IAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;QAC/B,OAAO,CAAC,CAAC;IAEX,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IAE3B,OAAO,IAAI,EAAE;QACX,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAC,EAAE;YACZ,EAAE,CAAC,CAAC;YACJ,GAAG,IAAI,IAAI,CAAC;SACb;;YACC,MAAM;KACT;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAhBD,oDAgBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/* @author Vitim.us https://gist.github.com/victornpb/7736865 */\r\n\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/** Counts how many times string 'lookup' is repeated in string 'str'.\r\n * @internal\r\n */\r\nexport function countMatchesInString(str: string, lookup: string) {\r\n if (!str.length || !lookup.length)\r\n return 0;\r\n\r\n let n = 0, pos = 0;\r\n const step = lookup.length;\r\n\r\n while (true) {\r\n pos = str.indexOf(lookup, pos);\r\n if (pos >= 0) {\r\n ++n;\r\n pos += step;\r\n } else\r\n break;\r\n }\r\n return n;\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/common/selection/SelectionHandler.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Common\n */\n\nimport { Rectangle } from \"@itwin/core-react\";\nimport { hasSelectionModeFlag, SelectionMode, SelectionModeFlags } from \"./SelectionModes\";\n\n/** Prototype for a Selection Changed handler\n * @public\n */\nexport declare type OnSelectionChanged = (shiftDown?: boolean, ctrlDown?: boolean) => void;\n\n/**\n * Contains single item specific methods required by selection handler.\n * @internal\n */\nexport interface SingleSelectionHandler<TItem> {\n /**\n * Callback for before an item is selected.\n */\n preselect: () => void;\n\n /**\n * Selects the item.\n */\n select: () => void;\n\n /**\n * Deselects the item.\n */\n deselect: () => void;\n\n /**\n * Returns true if item is selected.\n */\n isSelected: () => boolean;\n\n /**\n * Returns the item.\n */\n item: () => TItem;\n}\n\n/**\n * Contains multi-selection methods required by selection handler.\n * @internal\n */\nexport interface MultiSelectionHandler<TItem> {\n /**\n * Shift selects between two items.\n * Returns items that were selected.\n */\n selectBetween: (item1: TItem, item2: TItem) => TItem[];\n\n /**\n * Updates selection.\n * @param selections Items to be added to selection.\n * @param deselections Items to be removed from selection.\n */\n updateSelection: (selections: TItem[], deselections: TItem[]) => void;\n\n /**\n * Deselects all items.\n */\n deselectAll: () => void;\n\n /**\n * Returns true if items are equal.\n */\n areEqual: (item1: TItem, item2: TItem) => boolean;\n}\n\n/**\n * Called after items were selected.\n * @param items Items that were selected.\n * @param replace Should replace current selection.\n * @public\n */\nexport declare type OnItemsSelectedCallback<TItem> = (items: TItem[], replace: boolean) => void | boolean;\n\n/**\n * Called after items were deselected.\n * @param items Items that were deselected.\n * @public\n */\nexport declare type OnItemsDeselectedCallback<Item> = (items: Item[]) => void | boolean;\n\nclass BatchSelectionOperation<Item> {\n public readonly selections = new Array<Item>();\n public readonly deselections = new Array<Item>();\n public readonly shouldReplace: boolean;\n\n private _componentSelectionHandler: MultiSelectionHandler<Item>;\n\n public constructor(componentSelectionHandler: MultiSelectionHandler<Item>, shouldReplace: boolean) {\n this.shouldReplace = shouldReplace;\n this._componentSelectionHandler = componentSelectionHandler;\n }\n\n public select(node: Item | Item[]) {\n this.addNodes(node, this.selections, this.shouldReplace ? undefined : this.deselections);\n }\n\n public deselect(node: Item | Item[]) {\n this.addNodes(node, this.deselections, this.shouldReplace ? undefined : this.selections);\n }\n\n private addNodes(node: Item | Item[], addTo: Item[], removeFrom?: Item[]) {\n if (Array.isArray(node)) {\n for (const n of node) {\n if (removeFrom) {\n const index = removeFrom.findIndex((x) => this._componentSelectionHandler.areEqual(x, n));\n if (index > -1) {\n removeFrom.splice(index, 1);\n continue;\n }\n }\n addTo.push(n);\n }\n } else {\n this.addNodes([node], addTo, removeFrom);\n }\n }\n}\n\n/** @internal */\nexport class DragAction<Item> {\n private _itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>;\n private _componentSelectionHandler: MultiSelectionHandler<Item>;\n private _previousRow: number;\n private _previousColumn: number;\n private _firstItemRow: number;\n private _firstItemColumn: number;\n private _firstItemSelected: boolean;\n\n public constructor(componentSelectionHandler: MultiSelectionHandler<Item>, itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>, firstItem: Item) {\n this._itemSelectionHandlers = itemSelectionHandlers;\n this._componentSelectionHandler = componentSelectionHandler;\n const itemPos = this.findItem(this._itemSelectionHandlers, firstItem);\n this._previousRow = itemPos.y;\n this._previousColumn = itemPos.x;\n this._firstItemRow = itemPos.y;\n this._firstItemColumn = itemPos.x;\n this._firstItemSelected = false;\n }\n\n public updateDragAction(latestItem: Item): { selections: Item[], deselections: Item[] } {\n const currentPos = this.findItem(this._itemSelectionHandlers, latestItem);\n if (currentPos.y === this._previousRow && currentPos.x === this._previousColumn || currentPos.x < 0 || currentPos.y < 0)\n return { selections: [], deselections: [] };\n\n const currentRange = Rectangle.createXYXY(this._firstItemColumn, this._firstItemRow, currentPos.x, currentPos.y);\n const previousRange = Rectangle.createXYXY(this._firstItemColumn, this._firstItemRow, this._previousColumn, this._previousRow);\n const wholeRange = Rectangle.createXYXY(\n currentRange.right > previousRange.right ? currentRange.right : previousRange.right,\n currentRange.bottom > previousRange.bottom ? currentRange.bottom : previousRange.bottom,\n currentRange.left < previousRange.left ? currentRange.left : previousRange.left,\n currentRange.top < previousRange.top ? currentRange.top : previousRange.top,\n );\n const selections = [];\n const deselections = [];\n\n // have to select first item separately since it is will always be in both previous and current ranges.\n if (!this._firstItemSelected) {\n const handler = this._itemSelectionHandlers[this._firstItemRow][this._firstItemColumn];\n if (handler.isSelected())\n deselections.push(handler.item());\n else\n selections.push(handler.item());\n this._firstItemSelected = true;\n }\n\n for (let r = wholeRange.top; r <= wholeRange.bottom; r++) {\n for (let c = wholeRange.left; c <= wholeRange.right; c++) {\n const insidePrevious = previousRange.containsXY(c, r);\n const insideCurrent = currentRange.containsXY(c, r);\n // If item is in only one of the ranges that means it's selection needs to be toggled.\n if ((insidePrevious || insideCurrent) && insideCurrent !== insidePrevious) {\n const itemHandler = this._itemSelectionHandlers[r][c];\n if (itemHandler.isSelected())\n deselections.push(itemHandler.item());\n else\n selections.push(itemHandler.item());\n }\n }\n }\n\n this._previousRow = currentPos.y;\n this._previousColumn = currentPos.x;\n return { selections, deselections };\n }\n\n private findItem(itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>, item: Item): { x: number, y: number } {\n if (this._previousRow !== undefined && this._previousRow !== -1 && this._previousColumn !== undefined && this._previousColumn !== -1 &&\n this._componentSelectionHandler.areEqual(itemSelectionHandlers[this._previousRow][this._previousColumn].item(), item)) {\n return { y: this._previousRow, x: this._previousColumn };\n }\n for (let row = 0; row < itemSelectionHandlers.length; row++) {\n for (let column = 0; column < itemSelectionHandlers[row].length; column++) {\n if (this._componentSelectionHandler.areEqual(itemSelectionHandlers[row][column].item(), item))\n return { x: column, y: row };\n }\n }\n return { x: -1, y: -1 };\n }\n\n}\n\n/** @internal */\nexport class SelectionHandler<Item> {\n\n /** Selection mode. */\n public selectionMode: SelectionMode;\n public onItemsSelectedCallback?: OnItemsSelectedCallback<Item>;\n public onItemsDeselectedCallback?: OnItemsDeselectedCallback<Item>;\n\n private _currentOperation?: BatchSelectionOperation<Item>;\n private _lastItem?: Item; // keeps track of last item interacted with for shift selection\n private _processedItem?: Item; // last item interacted with\n private _dragAction?: DragAction<Item>;\n private _componentSelectionHandler?: MultiSelectionHandler<Item>; // needed for drag selection\n\n constructor(selectionMode: SelectionMode, onItemsSelectedCallback?: OnItemsSelectedCallback<Item>, onItemsDeselectedCallback?: OnItemsDeselectedCallback<Item>) {\n this.selectionMode = selectionMode;\n this.onItemsSelectedCallback = onItemsSelectedCallback;\n this.onItemsDeselectedCallback = onItemsDeselectedCallback;\n }\n\n /** Get the onSelectionChange processed item */\n public get processedItem(): Item | undefined { return this._processedItem; }\n\n /** Creates a function that should be called when selection changes. */\n public createSelectionFunction(componentHandler: MultiSelectionHandler<Item>, itemHandler: SingleSelectionHandler<Item>): OnSelectionChanged {\n const onSelectionChange: OnSelectionChanged = (shiftDown, ctrlDown) => {\n this._processedItem = itemHandler.item();\n\n if (this.selectionMode === SelectionMode.None) {\n return;\n }\n\n let operationCreated = false;\n let shiftSelected = false;\n if (!this._currentOperation) {\n // will replace selection if it is limited to one or keys are enabled but ctrl is not down\n const shouldReplace = (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.KeysEnabled) && !ctrlDown)\n || hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.SelectionLimitOne);\n this._currentOperation = new BatchSelectionOperation<Item>(componentHandler, shouldReplace);\n operationCreated = true;\n }\n\n if (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.KeysEnabled)) {\n if (!ctrlDown)\n componentHandler.deselectAll();\n if (shiftDown && this._lastItem !== undefined) {\n const selected = componentHandler.selectBetween(this._lastItem, itemHandler.item());\n this._currentOperation.select(selected);\n shiftSelected = true;\n }\n }\n\n if (!shiftSelected) {\n itemHandler.preselect();\n\n if (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.SelectionLimitOne)\n && !(hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.ToggleEnabled) && itemHandler.isSelected())) {\n componentHandler.deselectAll();\n }\n\n if (itemHandler.isSelected()) {\n itemHandler.deselect();\n this._currentOperation.deselect(itemHandler.item());\n } else {\n itemHandler.select();\n this._currentOperation.select(itemHandler.item());\n }\n this._lastItem = itemHandler.item();\n }\n\n if (operationCreated)\n this.completeOperation();\n };\n return onSelectionChange.bind(this);\n }\n\n private completeOperation(): void {\n if (!this._currentOperation)\n return;\n\n if (0 !== this._currentOperation.selections.length) {\n if (this.onItemsSelectedCallback) {\n this.onItemsSelectedCallback(this._currentOperation.selections, this._currentOperation.shouldReplace);\n if (this._currentOperation.shouldReplace) {\n this._currentOperation = undefined;\n return;\n }\n }\n }\n if (0 !== this._currentOperation.deselections.length) {\n if (this.onItemsDeselectedCallback)\n this.onItemsDeselectedCallback(this._currentOperation.deselections);\n }\n this._currentOperation = undefined;\n }\n\n /**\n * Creates drag action.\n * @param componentSelectionHandler Component selection handler.\n * @param items Ordered item selection handlers separated into arrays by rows.\n * @param firstItem Item on which drag action was started.\n */\n public createDragAction(componentSelectionHandler: MultiSelectionHandler<Item>, items: Array<Array<SingleSelectionHandler<Item>>>, firstItem: Item): void {\n if (!hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.DragEnabled))\n return;\n\n this._dragAction = new DragAction(componentSelectionHandler, items, firstItem);\n this._componentSelectionHandler = componentSelectionHandler;\n }\n\n /**\n * Updates existing drag action.\n * @param latestItem Latest item in drag action.\n */\n public updateDragAction(latestItem: Item): void {\n if (!hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.DragEnabled))\n return;\n\n if (!this._dragAction || !this._componentSelectionHandler)\n return;\n\n this._lastItem = latestItem;\n const selectionChanges = this._dragAction.updateDragAction(latestItem);\n\n if (selectionChanges.deselections.length !== 0 || selectionChanges.selections.length !== 0) {\n if (!this._currentOperation)\n this._currentOperation = new BatchSelectionOperation(this._componentSelectionHandler, false);\n this._currentOperation.select(selectionChanges.selections);\n this._currentOperation.deselect(selectionChanges.deselections);\n this._componentSelectionHandler.updateSelection(selectionChanges.selections, selectionChanges.deselections);\n }\n }\n\n /**\n * Completes drag action.\n */\n public completeDragAction() {\n this._dragAction = undefined;\n this._componentSelectionHandler = undefined;\n this.completeOperation();\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SelectionHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/common/selection/SelectionHandler.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { Rectangle } from \"@itwin/core-react\";\r\nimport { hasSelectionModeFlag, SelectionMode, SelectionModeFlags } from \"./SelectionModes\";\r\n\r\n/** Prototype for a Selection Changed handler\r\n * @public\r\n */\r\nexport declare type OnSelectionChanged = (shiftDown?: boolean, ctrlDown?: boolean) => void;\r\n\r\n/**\r\n * Contains single item specific methods required by selection handler.\r\n * @internal\r\n */\r\nexport interface SingleSelectionHandler<TItem> {\r\n /**\r\n * Callback for before an item is selected.\r\n */\r\n preselect: () => void;\r\n\r\n /**\r\n * Selects the item.\r\n */\r\n select: () => void;\r\n\r\n /**\r\n * Deselects the item.\r\n */\r\n deselect: () => void;\r\n\r\n /**\r\n * Returns true if item is selected.\r\n */\r\n isSelected: () => boolean;\r\n\r\n /**\r\n * Returns the item.\r\n */\r\n item: () => TItem;\r\n}\r\n\r\n/**\r\n * Contains multi-selection methods required by selection handler.\r\n * @internal\r\n */\r\nexport interface MultiSelectionHandler<TItem> {\r\n /**\r\n * Shift selects between two items.\r\n * Returns items that were selected.\r\n */\r\n selectBetween: (item1: TItem, item2: TItem) => TItem[];\r\n\r\n /**\r\n * Updates selection.\r\n * @param selections Items to be added to selection.\r\n * @param deselections Items to be removed from selection.\r\n */\r\n updateSelection: (selections: TItem[], deselections: TItem[]) => void;\r\n\r\n /**\r\n * Deselects all items.\r\n */\r\n deselectAll: () => void;\r\n\r\n /**\r\n * Returns true if items are equal.\r\n */\r\n areEqual: (item1: TItem, item2: TItem) => boolean;\r\n}\r\n\r\n/**\r\n * Called after items were selected.\r\n * @param items Items that were selected.\r\n * @param replace Should replace current selection.\r\n * @public\r\n */\r\nexport declare type OnItemsSelectedCallback<TItem> = (items: TItem[], replace: boolean) => void | boolean;\r\n\r\n/**\r\n * Called after items were deselected.\r\n * @param items Items that were deselected.\r\n * @public\r\n */\r\nexport declare type OnItemsDeselectedCallback<Item> = (items: Item[]) => void | boolean;\r\n\r\nclass BatchSelectionOperation<Item> {\r\n public readonly selections = new Array<Item>();\r\n public readonly deselections = new Array<Item>();\r\n public readonly shouldReplace: boolean;\r\n\r\n private _componentSelectionHandler: MultiSelectionHandler<Item>;\r\n\r\n public constructor(componentSelectionHandler: MultiSelectionHandler<Item>, shouldReplace: boolean) {\r\n this.shouldReplace = shouldReplace;\r\n this._componentSelectionHandler = componentSelectionHandler;\r\n }\r\n\r\n public select(node: Item | Item[]) {\r\n this.addNodes(node, this.selections, this.shouldReplace ? undefined : this.deselections);\r\n }\r\n\r\n public deselect(node: Item | Item[]) {\r\n this.addNodes(node, this.deselections, this.shouldReplace ? undefined : this.selections);\r\n }\r\n\r\n private addNodes(node: Item | Item[], addTo: Item[], removeFrom?: Item[]) {\r\n if (Array.isArray(node)) {\r\n for (const n of node) {\r\n if (removeFrom) {\r\n const index = removeFrom.findIndex((x) => this._componentSelectionHandler.areEqual(x, n));\r\n if (index > -1) {\r\n removeFrom.splice(index, 1);\r\n continue;\r\n }\r\n }\r\n addTo.push(n);\r\n }\r\n } else {\r\n this.addNodes([node], addTo, removeFrom);\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class DragAction<Item> {\r\n private _itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>;\r\n private _componentSelectionHandler: MultiSelectionHandler<Item>;\r\n private _previousRow: number;\r\n private _previousColumn: number;\r\n private _firstItemRow: number;\r\n private _firstItemColumn: number;\r\n private _firstItemSelected: boolean;\r\n\r\n public constructor(componentSelectionHandler: MultiSelectionHandler<Item>, itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>, firstItem: Item) {\r\n this._itemSelectionHandlers = itemSelectionHandlers;\r\n this._componentSelectionHandler = componentSelectionHandler;\r\n const itemPos = this.findItem(this._itemSelectionHandlers, firstItem);\r\n this._previousRow = itemPos.y;\r\n this._previousColumn = itemPos.x;\r\n this._firstItemRow = itemPos.y;\r\n this._firstItemColumn = itemPos.x;\r\n this._firstItemSelected = false;\r\n }\r\n\r\n public updateDragAction(latestItem: Item): { selections: Item[], deselections: Item[] } {\r\n const currentPos = this.findItem(this._itemSelectionHandlers, latestItem);\r\n if (currentPos.y === this._previousRow && currentPos.x === this._previousColumn || currentPos.x < 0 || currentPos.y < 0)\r\n return { selections: [], deselections: [] };\r\n\r\n const currentRange = Rectangle.createXYXY(this._firstItemColumn, this._firstItemRow, currentPos.x, currentPos.y);\r\n const previousRange = Rectangle.createXYXY(this._firstItemColumn, this._firstItemRow, this._previousColumn, this._previousRow);\r\n const wholeRange = Rectangle.createXYXY(\r\n currentRange.right > previousRange.right ? currentRange.right : previousRange.right,\r\n currentRange.bottom > previousRange.bottom ? currentRange.bottom : previousRange.bottom,\r\n currentRange.left < previousRange.left ? currentRange.left : previousRange.left,\r\n currentRange.top < previousRange.top ? currentRange.top : previousRange.top,\r\n );\r\n const selections = [];\r\n const deselections = [];\r\n\r\n // have to select first item separately since it is will always be in both previous and current ranges.\r\n if (!this._firstItemSelected) {\r\n const handler = this._itemSelectionHandlers[this._firstItemRow][this._firstItemColumn];\r\n if (handler.isSelected())\r\n deselections.push(handler.item());\r\n else\r\n selections.push(handler.item());\r\n this._firstItemSelected = true;\r\n }\r\n\r\n for (let r = wholeRange.top; r <= wholeRange.bottom; r++) {\r\n for (let c = wholeRange.left; c <= wholeRange.right; c++) {\r\n const insidePrevious = previousRange.containsXY(c, r);\r\n const insideCurrent = currentRange.containsXY(c, r);\r\n // If item is in only one of the ranges that means it's selection needs to be toggled.\r\n if ((insidePrevious || insideCurrent) && insideCurrent !== insidePrevious) {\r\n const itemHandler = this._itemSelectionHandlers[r][c];\r\n if (itemHandler.isSelected())\r\n deselections.push(itemHandler.item());\r\n else\r\n selections.push(itemHandler.item());\r\n }\r\n }\r\n }\r\n\r\n this._previousRow = currentPos.y;\r\n this._previousColumn = currentPos.x;\r\n return { selections, deselections };\r\n }\r\n\r\n private findItem(itemSelectionHandlers: Array<Array<SingleSelectionHandler<Item>>>, item: Item): { x: number, y: number } {\r\n if (this._previousRow !== undefined && this._previousRow !== -1 && this._previousColumn !== undefined && this._previousColumn !== -1 &&\r\n this._componentSelectionHandler.areEqual(itemSelectionHandlers[this._previousRow][this._previousColumn].item(), item)) {\r\n return { y: this._previousRow, x: this._previousColumn };\r\n }\r\n for (let row = 0; row < itemSelectionHandlers.length; row++) {\r\n for (let column = 0; column < itemSelectionHandlers[row].length; column++) {\r\n if (this._componentSelectionHandler.areEqual(itemSelectionHandlers[row][column].item(), item))\r\n return { x: column, y: row };\r\n }\r\n }\r\n return { x: -1, y: -1 };\r\n }\r\n\r\n}\r\n\r\n/** @internal */\r\nexport class SelectionHandler<Item> {\r\n\r\n /** Selection mode. */\r\n public selectionMode: SelectionMode;\r\n public onItemsSelectedCallback?: OnItemsSelectedCallback<Item>;\r\n public onItemsDeselectedCallback?: OnItemsDeselectedCallback<Item>;\r\n\r\n private _currentOperation?: BatchSelectionOperation<Item>;\r\n private _lastItem?: Item; // keeps track of last item interacted with for shift selection\r\n private _processedItem?: Item; // last item interacted with\r\n private _dragAction?: DragAction<Item>;\r\n private _componentSelectionHandler?: MultiSelectionHandler<Item>; // needed for drag selection\r\n\r\n constructor(selectionMode: SelectionMode, onItemsSelectedCallback?: OnItemsSelectedCallback<Item>, onItemsDeselectedCallback?: OnItemsDeselectedCallback<Item>) {\r\n this.selectionMode = selectionMode;\r\n this.onItemsSelectedCallback = onItemsSelectedCallback;\r\n this.onItemsDeselectedCallback = onItemsDeselectedCallback;\r\n }\r\n\r\n /** Get the onSelectionChange processed item */\r\n public get processedItem(): Item | undefined { return this._processedItem; }\r\n\r\n /** Creates a function that should be called when selection changes. */\r\n public createSelectionFunction(componentHandler: MultiSelectionHandler<Item>, itemHandler: SingleSelectionHandler<Item>): OnSelectionChanged {\r\n const onSelectionChange: OnSelectionChanged = (shiftDown, ctrlDown) => {\r\n this._processedItem = itemHandler.item();\r\n\r\n if (this.selectionMode === SelectionMode.None) {\r\n return;\r\n }\r\n\r\n let operationCreated = false;\r\n let shiftSelected = false;\r\n if (!this._currentOperation) {\r\n // will replace selection if it is limited to one or keys are enabled but ctrl is not down\r\n const shouldReplace = (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.KeysEnabled) && !ctrlDown)\r\n || hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.SelectionLimitOne);\r\n this._currentOperation = new BatchSelectionOperation<Item>(componentHandler, shouldReplace);\r\n operationCreated = true;\r\n }\r\n\r\n if (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.KeysEnabled)) {\r\n if (!ctrlDown)\r\n componentHandler.deselectAll();\r\n if (shiftDown && this._lastItem !== undefined) {\r\n const selected = componentHandler.selectBetween(this._lastItem, itemHandler.item());\r\n this._currentOperation.select(selected);\r\n shiftSelected = true;\r\n }\r\n }\r\n\r\n if (!shiftSelected) {\r\n itemHandler.preselect();\r\n\r\n if (hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.SelectionLimitOne)\r\n && !(hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.ToggleEnabled) && itemHandler.isSelected())) {\r\n componentHandler.deselectAll();\r\n }\r\n\r\n if (itemHandler.isSelected()) {\r\n itemHandler.deselect();\r\n this._currentOperation.deselect(itemHandler.item());\r\n } else {\r\n itemHandler.select();\r\n this._currentOperation.select(itemHandler.item());\r\n }\r\n this._lastItem = itemHandler.item();\r\n }\r\n\r\n if (operationCreated)\r\n this.completeOperation();\r\n };\r\n return onSelectionChange.bind(this);\r\n }\r\n\r\n private completeOperation(): void {\r\n if (!this._currentOperation)\r\n return;\r\n\r\n if (0 !== this._currentOperation.selections.length) {\r\n if (this.onItemsSelectedCallback) {\r\n this.onItemsSelectedCallback(this._currentOperation.selections, this._currentOperation.shouldReplace);\r\n if (this._currentOperation.shouldReplace) {\r\n this._currentOperation = undefined;\r\n return;\r\n }\r\n }\r\n }\r\n if (0 !== this._currentOperation.deselections.length) {\r\n if (this.onItemsDeselectedCallback)\r\n this.onItemsDeselectedCallback(this._currentOperation.deselections);\r\n }\r\n this._currentOperation = undefined;\r\n }\r\n\r\n /**\r\n * Creates drag action.\r\n * @param componentSelectionHandler Component selection handler.\r\n * @param items Ordered item selection handlers separated into arrays by rows.\r\n * @param firstItem Item on which drag action was started.\r\n */\r\n public createDragAction(componentSelectionHandler: MultiSelectionHandler<Item>, items: Array<Array<SingleSelectionHandler<Item>>>, firstItem: Item): void {\r\n if (!hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.DragEnabled))\r\n return;\r\n\r\n this._dragAction = new DragAction(componentSelectionHandler, items, firstItem);\r\n this._componentSelectionHandler = componentSelectionHandler;\r\n }\r\n\r\n /**\r\n * Updates existing drag action.\r\n * @param latestItem Latest item in drag action.\r\n */\r\n public updateDragAction(latestItem: Item): void {\r\n if (!hasSelectionModeFlag(this.selectionMode, SelectionModeFlags.DragEnabled))\r\n return;\r\n\r\n if (!this._dragAction || !this._componentSelectionHandler)\r\n return;\r\n\r\n this._lastItem = latestItem;\r\n const selectionChanges = this._dragAction.updateDragAction(latestItem);\r\n\r\n if (selectionChanges.deselections.length !== 0 || selectionChanges.selections.length !== 0) {\r\n if (!this._currentOperation)\r\n this._currentOperation = new BatchSelectionOperation(this._componentSelectionHandler, false);\r\n this._currentOperation.select(selectionChanges.selections);\r\n this._currentOperation.deselect(selectionChanges.deselections);\r\n this._componentSelectionHandler.updateSelection(selectionChanges.selections, selectionChanges.deselections);\r\n }\r\n }\r\n\r\n /**\r\n * Completes drag action.\r\n */\r\n public completeDragAction() {\r\n this._dragAction = undefined;\r\n this._componentSelectionHandler = undefined;\r\n this.completeOperation();\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionModes.js","sourceRoot":"","sources":["../../../../../src/components-react/common/selection/SelectionModes.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,qFAA0B,CAAA;IAC1B,yEAAoB,CAAA;IACpB,6EAAsB,CAAA;IACtB,yEAAoB,CAAA;IACpB,4DAAa,CAAA;AACf,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B;AAED;;GAEG;AACH,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,wCAAwC;IACxC,qDAA6C,CAAA;IAC7C,mDAAmD;IACnD,yDAA4E,CAAA;IAC5E,oEAAoE;IACpE,0DAA4E,CAAA;IAC5E,iEAAiE;IACjE,+EAA6F,CAAA;IAC7F,uCAAuC;IACvC,kDAA8B,CAAA;AAChC,CAAC,EAXW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAWxB;AAED;;GAEG;AACI,MAAM,oBAAoB,GAAG,CAAC,aAA4B,EAAE,IAAwB,EAAW,EAAE;IACtG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B","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\n/** Selection mode flags for Tree row selection\n * @public\n */\nexport enum SelectionModeFlags {\n SelectionLimitOne = 1 << 0,\n DragEnabled = 1 << 1,\n ToggleEnabled = 1 << 2,\n KeysEnabled = 1 << 3,\n None = 1 << 4,\n}\n\n/** Selection modes for Tree row selection\n * @public\n */\nexport enum SelectionMode {\n /** Only one item selected at a time. */\n Single = SelectionModeFlags.SelectionLimitOne,\n /** Toggles items; drag only applies to desktop. */\n Multiple = SelectionModeFlags.DragEnabled | SelectionModeFlags.ToggleEnabled,\n /** Allows the use of Ctrl & Shift Keys in a desktop environment. */\n Extended = SelectionModeFlags.KeysEnabled | SelectionModeFlags.ToggleEnabled,\n /** Only one item selected at a time; also allows deselecting. */\n SingleAllowDeselect = SelectionModeFlags.SelectionLimitOne | SelectionModeFlags.ToggleEnabled,\n /** Do not allow (disable) selection */\n None = SelectionModeFlags.None,\n}\n\n/** Determines if a SelectionMode is active\n * @public\n */\nexport const hasSelectionModeFlag = (selectionMode: SelectionMode, flag: SelectionModeFlags): boolean => {\n return (selectionMode & flag) !== 0;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SelectionModes.js","sourceRoot":"","sources":["../../../../../src/components-react/common/selection/SelectionModes.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,qFAA0B,CAAA;IAC1B,yEAAoB,CAAA;IACpB,6EAAsB,CAAA;IACtB,yEAAoB,CAAA;IACpB,4DAAa,CAAA;AACf,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B;AAED;;GAEG;AACH,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,wCAAwC;IACxC,qDAA6C,CAAA;IAC7C,mDAAmD;IACnD,yDAA4E,CAAA;IAC5E,oEAAoE;IACpE,0DAA4E,CAAA;IAC5E,iEAAiE;IACjE,+EAA6F,CAAA;IAC7F,uCAAuC;IACvC,kDAA8B,CAAA;AAChC,CAAC,EAXW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAWxB;AAED;;GAEG;AACI,MAAM,oBAAoB,GAAG,CAAC,aAA4B,EAAE,IAAwB,EAAW,EAAE;IACtG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/** Selection mode flags for Tree row selection\r\n * @public\r\n */\r\nexport enum SelectionModeFlags {\r\n SelectionLimitOne = 1 << 0,\r\n DragEnabled = 1 << 1,\r\n ToggleEnabled = 1 << 2,\r\n KeysEnabled = 1 << 3,\r\n None = 1 << 4,\r\n}\r\n\r\n/** Selection modes for Tree row selection\r\n * @public\r\n */\r\nexport enum SelectionMode {\r\n /** Only one item selected at a time. */\r\n Single = SelectionModeFlags.SelectionLimitOne,\r\n /** Toggles items; drag only applies to desktop. */\r\n Multiple = SelectionModeFlags.DragEnabled | SelectionModeFlags.ToggleEnabled,\r\n /** Allows the use of Ctrl & Shift Keys in a desktop environment. */\r\n Extended = SelectionModeFlags.KeysEnabled | SelectionModeFlags.ToggleEnabled,\r\n /** Only one item selected at a time; also allows deselecting. */\r\n SingleAllowDeselect = SelectionModeFlags.SelectionLimitOne | SelectionModeFlags.ToggleEnabled,\r\n /** Do not allow (disable) selection */\r\n None = SelectionModeFlags.None,\r\n}\r\n\r\n/** Determines if a SelectionMode is active\r\n * @public\r\n */\r\nexport const hasSelectionModeFlag = (selectionMode: SelectionMode, flag: SelectionModeFlags): boolean => {\r\n return (selectionMode & flag) !== 0;\r\n};\r\n"]}
|
|
@@ -45,11 +45,11 @@ class BooleanTypeConverter extends TypeConverter_1.TypeConverter {
|
|
|
45
45
|
}
|
|
46
46
|
get isBooleanType() { return true; }
|
|
47
47
|
}
|
|
48
|
-
exports.BooleanTypeConverter = BooleanTypeConverter;
|
|
49
48
|
/** @internal */
|
|
50
49
|
BooleanTypeConverter.sl10nTrue = "";
|
|
51
50
|
/** @internal */
|
|
52
51
|
BooleanTypeConverter.sl10nFalse = "";
|
|
52
|
+
exports.BooleanTypeConverter = BooleanTypeConverter;
|
|
53
53
|
TypeConverterManager_1.TypeConverterManager.registerConverter(appui_abstract_1.StandardTypeNames.Boolean, BooleanTypeConverter);
|
|
54
54
|
TypeConverterManager_1.TypeConverterManager.registerConverter(appui_abstract_1.StandardTypeNames.Bool, BooleanTypeConverter);
|
|
55
55
|
//# sourceMappingURL=BooleanTypeConverter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BooleanTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/BooleanTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsE;AACtE,kDAA+C;AAC/C,mDAAgD;AAChD,iEAA8D;AAE9D;;GAEG;AACH,MAAa,oBAAqB,SAAQ,6BAAa;IAMrD,gBAAgB;IACT,MAAM,CAAC,qBAAqB;QACjC,IAAI,CAAC,oBAAoB,CAAC,SAAS;YACjC,oBAAoB,CAAC,SAAS,GAAG,2BAAY,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC1E,IAAI,CAAC,oBAAoB,CAAC,UAAU;YAClC,oBAAoB,CAAC,UAAU,GAAG,2BAAY,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAC9E,CAAC;IAEe,eAAe,CAAC,KAA0B;QACxD,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,oBAAoB,CAAC,qBAAqB,EAAE,CAAC;QAE7C,IAAI,KAAK,KAAK,oBAAoB,CAAC,SAAS,IAAI,KAAK,KAAK,oBAAoB,CAAC,UAAU;YACvF,OAAO,
|
|
1
|
+
{"version":3,"file":"BooleanTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/BooleanTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsE;AACtE,kDAA+C;AAC/C,mDAAgD;AAChD,iEAA8D;AAE9D;;GAEG;AACH,MAAa,oBAAqB,SAAQ,6BAAa;IAMrD,gBAAgB;IACT,MAAM,CAAC,qBAAqB;QACjC,IAAI,CAAC,oBAAoB,CAAC,SAAS;YACjC,oBAAoB,CAAC,SAAS,GAAG,2BAAY,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC1E,IAAI,CAAC,oBAAoB,CAAC,UAAU;YAClC,oBAAoB,CAAC,UAAU,GAAG,2BAAY,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAC9E,CAAC;IAEe,eAAe,CAAC,KAA0B;QACxD,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,oBAAoB,CAAC,qBAAqB,EAAE,CAAC;QAE7C,IAAI,KAAK,KAAK,oBAAoB,CAAC,SAAS,IAAI,KAAK,KAAK,oBAAoB,CAAC,UAAU;YACvF,OAAO,KAAK,CAAC;QAEf,OAAO,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC;IAClF,CAAC;IAEe,iBAAiB,CAAC,KAAa;QAC7C,oBAAoB,CAAC,qBAAqB,EAAE,CAAC;QAE7C,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;QACzH,OAAO,YAAY,CAAC;IACtB,CAAC;IAEM,WAAW,CAAC,CAAqB,EAAE,CAAqB,EAAE,WAAqB;QACpF,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACb,OAAO,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACX,OAAO,CAAC,CAAC;QACX,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAED,IAAoB,aAAa,KAAc,OAAO,IAAI,CAAC,CAAC,CAAC;;AAxC7D,gBAAgB;AACF,8BAAS,GAAW,EAAE,CAAC;AACrC,gBAAgB;AACF,+BAAU,GAAW,EAAE,CAAC;AAJ3B,oDAAoB;AA4CjC,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;AACxF,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { Primitives, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport { TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\n\r\n/** Boolean Type Converter.\r\n * @public\r\n */\r\nexport class BooleanTypeConverter extends TypeConverter {\r\n /** @internal */\r\n public static sl10nTrue: string = \"\";\r\n /** @internal */\r\n public static sl10nFalse: string = \"\";\r\n\r\n /** @internal */\r\n public static getLocalizedTrueFalse() {\r\n if (!BooleanTypeConverter.sl10nTrue)\r\n BooleanTypeConverter.sl10nTrue = UiComponents.translate(\"general.true\");\r\n if (!BooleanTypeConverter.sl10nFalse)\r\n BooleanTypeConverter.sl10nFalse = UiComponents.translate(\"general.false\");\r\n }\r\n\r\n public override convertToString(value?: Primitives.Boolean) {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n BooleanTypeConverter.getLocalizedTrueFalse();\r\n\r\n if (value === BooleanTypeConverter.sl10nTrue || value === BooleanTypeConverter.sl10nFalse)\r\n return value;\r\n\r\n return value ? BooleanTypeConverter.sl10nTrue : BooleanTypeConverter.sl10nFalse;\r\n }\r\n\r\n public override convertFromString(value: string) {\r\n BooleanTypeConverter.getLocalizedTrueFalse();\r\n\r\n const booleanValue = (0 === value.toLocaleLowerCase().localeCompare(BooleanTypeConverter.sl10nTrue.toLocaleLowerCase()));\r\n return booleanValue;\r\n }\r\n\r\n public sortCompare(a: Primitives.Boolean, b: Primitives.Boolean, _ignoreCase?: boolean): number {\r\n if (!!a === !!b)\r\n return 0;\r\n if (!!a && !b)\r\n return 1;\r\n return -1;\r\n }\r\n\r\n public override get isBooleanType(): boolean { return true; }\r\n}\r\n\r\nTypeConverterManager.registerConverter(StandardTypeNames.Boolean, BooleanTypeConverter);\r\nTypeConverterManager.registerConverter(StandardTypeNames.Bool, BooleanTypeConverter);\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompositeTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/CompositeTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsE;AACtE,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,6BAAa;IACvC,eAAe,CAAC,KAA4B;QAC1D,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QACZ,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAEM,WAAW,CAAC,MAA4B,EAAE,MAA4B,EAAE,UAAgC;QAC7G,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC3F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;gBAClH,CAAC,CAAC,2CAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACxG,IAAI,aAAa,KAAK,CAAC;gBACrB,OAAO,aAAa,CAAC;YAEvB,IAAI,CAAC,KAAK,CAAC,IAAI,mBAAmB,KAAK,CAAC;gBACtC,OAAO,mBAAmB,CAAC;SAC9B;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM;YAC7C,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAEnD,OAAO,CAAC,CAAC;IACX,CAAC;CACF;AA3BD,wDA2BC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;AAE5F,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,UAAoB,EAAE,EAAE;IACxE,IAAI,UAAU;QACZ,OAAO,GAAG,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;;QAEtE,OAAO,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,KAAK,EAAE,cAAoC,EAAmB,EAAE;IACzF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE;QACvC,IAAI,WAAmB,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;YACjC,WAAW,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,QAAgC,CAAC,CAAC;SAC/E;aAAM;YACL,WAAW,GAAG,MAAM,2CAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrG;QAED,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACzB;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AAC9C,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 TypeConverters\n */\n\nimport { Primitives, StandardTypeNames } from \"@itwin/appui-abstract\";\nimport { TypeConverter } from \"./TypeConverter\";\nimport { TypeConverterManager } from \"./TypeConverterManager\";\n\n/**\n * Composite type converter\n * @public\n */\nexport class CompositeTypeConverter extends TypeConverter {\n public override convertToString(value?: Primitives.Composite): string | Promise<string> {\n if (value === undefined)\n return \"\";\n return createDisplayValue(value);\n }\n\n public sortCompare(valueA: Primitives.Composite, valueB: Primitives.Composite, ignoreCase?: boolean | undefined): number {\n const length = Math.min(valueA.parts.length, valueB.parts.length);\n const separatorComparison = compareStrings(valueA.separator, valueB.separator, ignoreCase);\n for (let i = 0; i < length; i++) {\n const lhs = valueA.parts[i];\n const rhs = valueB.parts[i];\n const compareResult = lhs.typeName !== rhs.typeName ? compareStrings(lhs.displayValue, rhs.displayValue, ignoreCase)\n : TypeConverterManager.getConverter(lhs.typeName).sortCompare(lhs.rawValue, rhs.rawValue, ignoreCase);\n if (compareResult !== 0)\n return compareResult;\n\n if (i === 0 && separatorComparison !== 0)\n return separatorComparison;\n }\n\n if (valueA.parts.length !== valueB.parts.length)\n return valueA.parts.length - valueB.parts.length;\n\n return 0;\n }\n}\n\nTypeConverterManager.registerConverter(StandardTypeNames.Composite, CompositeTypeConverter);\n\nconst compareStrings = (lhs: string, rhs: string, ignoreCase?: boolean) => {\n if (ignoreCase)\n return lhs.toLocaleLowerCase().localeCompare(rhs.toLocaleLowerCase());\n else\n return lhs.localeCompare(rhs);\n};\n\nconst createDisplayValue = async (compositeValue: Primitives.Composite): Promise<string> => {\n const parts: string[] = [];\n for (const part of compositeValue.parts) {\n let valueString: string;\n if (part.typeName === \"composite\") {\n valueString = await createDisplayValue(part.rawValue as Primitives.Composite);\n } else {\n valueString = await TypeConverterManager.getConverter(part.typeName).convertToString(part.rawValue);\n }\n\n parts.push(valueString);\n }\n\n return parts.join(compositeValue.separator);\n};\n"]}
|
|
1
|
+
{"version":3,"file":"CompositeTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/CompositeTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsE;AACtE,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,6BAAa;IACvC,eAAe,CAAC,KAA4B;QAC1D,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QACZ,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAEM,WAAW,CAAC,MAA4B,EAAE,MAA4B,EAAE,UAAgC;QAC7G,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC3F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;gBAClH,CAAC,CAAC,2CAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACxG,IAAI,aAAa,KAAK,CAAC;gBACrB,OAAO,aAAa,CAAC;YAEvB,IAAI,CAAC,KAAK,CAAC,IAAI,mBAAmB,KAAK,CAAC;gBACtC,OAAO,mBAAmB,CAAC;SAC9B;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM;YAC7C,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAEnD,OAAO,CAAC,CAAC;IACX,CAAC;CACF;AA3BD,wDA2BC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;AAE5F,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,UAAoB,EAAE,EAAE;IACxE,IAAI,UAAU;QACZ,OAAO,GAAG,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;;QAEtE,OAAO,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,KAAK,EAAE,cAAoC,EAAmB,EAAE;IACzF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE;QACvC,IAAI,WAAmB,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;YACjC,WAAW,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,QAAgC,CAAC,CAAC;SAC/E;aAAM;YACL,WAAW,GAAG,MAAM,2CAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrG;QAED,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACzB;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AAC9C,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { Primitives, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\n\r\n/**\r\n * Composite type converter\r\n * @public\r\n */\r\nexport class CompositeTypeConverter extends TypeConverter {\r\n public override convertToString(value?: Primitives.Composite): string | Promise<string> {\r\n if (value === undefined)\r\n return \"\";\r\n return createDisplayValue(value);\r\n }\r\n\r\n public sortCompare(valueA: Primitives.Composite, valueB: Primitives.Composite, ignoreCase?: boolean | undefined): number {\r\n const length = Math.min(valueA.parts.length, valueB.parts.length);\r\n const separatorComparison = compareStrings(valueA.separator, valueB.separator, ignoreCase);\r\n for (let i = 0; i < length; i++) {\r\n const lhs = valueA.parts[i];\r\n const rhs = valueB.parts[i];\r\n const compareResult = lhs.typeName !== rhs.typeName ? compareStrings(lhs.displayValue, rhs.displayValue, ignoreCase)\r\n : TypeConverterManager.getConverter(lhs.typeName).sortCompare(lhs.rawValue, rhs.rawValue, ignoreCase);\r\n if (compareResult !== 0)\r\n return compareResult;\r\n\r\n if (i === 0 && separatorComparison !== 0)\r\n return separatorComparison;\r\n }\r\n\r\n if (valueA.parts.length !== valueB.parts.length)\r\n return valueA.parts.length - valueB.parts.length;\r\n\r\n return 0;\r\n }\r\n}\r\n\r\nTypeConverterManager.registerConverter(StandardTypeNames.Composite, CompositeTypeConverter);\r\n\r\nconst compareStrings = (lhs: string, rhs: string, ignoreCase?: boolean) => {\r\n if (ignoreCase)\r\n return lhs.toLocaleLowerCase().localeCompare(rhs.toLocaleLowerCase());\r\n else\r\n return lhs.localeCompare(rhs);\r\n};\r\n\r\nconst createDisplayValue = async (compositeValue: Primitives.Composite): Promise<string> => {\r\n const parts: string[] = [];\r\n for (const part of compositeValue.parts) {\r\n let valueString: string;\r\n if (part.typeName === \"composite\") {\r\n valueString = await createDisplayValue(part.rawValue as Primitives.Composite);\r\n } else {\r\n valueString = await TypeConverterManager.getConverter(part.typeName).convertToString(part.rawValue);\r\n }\r\n\r\n parts.push(valueString);\r\n }\r\n\r\n return parts.join(compositeValue.separator);\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/DateTimeTypeConverter.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module TypeConverters\n */\n\nimport { Logger } from \"@itwin/core-bentley\";\nimport { AlternateDateFormats, Primitives, StandardTypeNames, TimeDisplay } from \"@itwin/appui-abstract\";\nimport { TimeFormat } from \"@itwin/core-react\";\nimport { formatInputDate } from \"../datepicker/DateField\";\nimport { adjustDateToTimezone } from \"../common/DateUtils\";\nimport { UiComponents } from \"../UiComponents\";\nimport { LessGreaterOperatorProcessor, TypeConverter } from \"./TypeConverter\";\nimport { TypeConverterManager } from \"./TypeConverterManager\";\nimport { ConvertedPrimitives } from \"./valuetypes/ConvertedTypes\";\n\n// cSpell:ignore datepicker valuetypes\n\n/**\n * DateTime Type Converter.\n * @public\n */\nexport abstract class DateTimeTypeConverterBase extends TypeConverter implements LessGreaterOperatorProcessor {\n public override convertToString(value?: Primitives.Value) {\n if (value === undefined)\n return \"\";\n\n if (typeof value === \"string\")\n value = new Date(value);\n\n // istanbul ignore else\n if (value instanceof Date) {\n switch (this.getTimeFormat()) {\n case TimeFormat.Short: return value.toLocaleDateString();\n case TimeFormat.Long: return value.toLocaleString();\n }\n return value.toISOString();\n }\n\n // istanbul ignore next\n return value.toString();\n }\n\n public static isValidTimeDisplay(type: TimeDisplay): boolean {\n return Object.keys(TimeDisplay).some((key) => (TimeDisplay as any)[key] === type);\n }\n\n public static isAlternateDateFormats(type: AlternateDateFormats): boolean {\n return Object.keys(AlternateDateFormats).some((key) => (AlternateDateFormats as any)[key] === type);\n }\n\n // supported options:\n // timeDisplay?: TimeDisplay\n // alternateDateFormat?: AlternateDateFormats\n public override convertToStringWithOptions(value?: Primitives.Value, options?: { [key: string]: any }): string | Promise<string> {\n if (value === undefined)\n return \"\";\n\n if (options) {\n let timeDisplay: TimeDisplay | undefined = (this.getTimeFormat() === TimeFormat.Long) ? TimeDisplay.H12MC : undefined;\n let alternateDateFormat = AlternateDateFormats.None;\n\n // istanbul ignore else\n if (\"alternateDateFormat\" in options && DateTimeTypeConverterBase.isAlternateDateFormats(options.alternateDateFormat)) {\n alternateDateFormat = options.alternateDateFormat;\n }\n\n if (this.getTimeFormat() === TimeFormat.Long) {\n // istanbul ignore else\n if (\"timeDisplay\" in options) {\n // istanbul ignore if\n if (alternateDateFormat) {\n Logger.logInfo(UiComponents.loggerCategory(this), `Invalid specification of timeDisplay with alternateDateFormat specification`);\n } else {\n // istanbul ignore else\n if (DateTimeTypeConverterBase.isValidTimeDisplay(options.timeDisplay))\n timeDisplay = options.timeDisplay;\n }\n }\n }\n\n // istanbul ignore else\n if (typeof value === \"string\") {\n value = new Date(value); // this value will be based on local time zone\n // istanbul ignore else\n if (value instanceof Date && alternateDateFormat) {\n // alternateDateFormat displays UTC time, so assume string is specifying UTC Date and Time\n value = adjustDateToTimezone(value, value.getTimezoneOffset() * -1);\n }\n }\n\n // istanbul ignore else\n if (value instanceof Date) {\n // Ensure if alternateDateFormat is specified make sure it matches proper Long/Short format.\n if (this.getTimeFormat() === TimeFormat.Long) {\n if (alternateDateFormat === AlternateDateFormats.IsoShort)\n alternateDateFormat = AlternateDateFormats.IsoDateTime;\n if (alternateDateFormat === AlternateDateFormats.UtcShort)\n alternateDateFormat = AlternateDateFormats.UtcDateTime;\n if (alternateDateFormat === AlternateDateFormats.UtcShortWithDay)\n alternateDateFormat = AlternateDateFormats.UtcDateTimeWithDay;\n } else {\n // short time format\n if (alternateDateFormat === AlternateDateFormats.IsoDateTime)\n alternateDateFormat = AlternateDateFormats.IsoShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTime)\n alternateDateFormat = AlternateDateFormats.UtcShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTimeWithDay)\n alternateDateFormat = AlternateDateFormats.UtcShortWithDay;\n }\n\n const formattedDateTime = formatInputDate(value, timeDisplay, undefined, alternateDateFormat);\n // istanbul ignore else\n if (formattedDateTime)\n return formattedDateTime;\n }\n }\n\n return this.convertToString(value);\n }\n\n /** Default implementation just calls convertFromString with no options */\n public override convertFromStringWithOptions(value: string, options?: { [key: string]: any }): ConvertedPrimitives.Value | undefined | Promise<ConvertedPrimitives.Value | undefined> {\n if (!value)\n return undefined;\n\n if (options) {\n let alternateDateFormat = AlternateDateFormats.None;\n\n // istanbul ignore else\n if (\"alternateDateFormat\" in options && DateTimeTypeConverterBase.isAlternateDateFormats(options.alternateDateFormat)) {\n alternateDateFormat = options.alternateDateFormat;\n }\n\n // istanbul ignore else\n let date = new Date(value); // this value will be based on local time zone\n // istanbul ignore else\n if (date instanceof Date && alternateDateFormat) {\n // alternateDateFormat displays UTC time, so assume string is specifying UTC Date and Time\n date = adjustDateToTimezone(date, date.getTimezoneOffset() * -1);\n }\n }\n\n return this.convertFromString(value);\n }\n\n private isDateValid(date: Date) {\n return date instanceof Date && !isNaN(+date);\n }\n\n public override convertFromString(value: string) {\n if (!value)\n return undefined;\n\n const dateValue = new Date(value);\n\n if (!this.isDateValid(dateValue))\n return undefined;\n\n return dateValue;\n }\n\n protected abstract getTimeFormat(): TimeFormat;\n\n public override get isLessGreaterType(): boolean { return true; }\n\n public sortCompare(valueA: Date, valueB: Date, _ignoreCase?: boolean): number {\n return valueA.valueOf() - valueB.valueOf();\n }\n\n public override isEqualTo(valueA: Date, valueB: Date): boolean {\n return valueA.valueOf() === valueB.valueOf();\n }\n\n public override isNotEqualTo(valueA: Date, valueB: Date): boolean {\n return valueA.valueOf() !== valueB.valueOf();\n }\n\n public isLessThan(a: Date, b: Date): boolean {\n return a.valueOf() < b.valueOf();\n }\n\n public isLessThanOrEqualTo(a: Date, b: Date): boolean {\n return a.valueOf() <= b.valueOf();\n }\n\n public isGreaterThan(a: Date, b: Date): boolean {\n return a.valueOf() > b.valueOf();\n }\n\n public isGreaterThanOrEqualTo(a: Date, b: Date): boolean {\n return a.valueOf() >= b.valueOf();\n }\n}\n\n/**\n * Short Date Type Converter.\n * @public\n */\nexport class ShortDateTypeConverter extends DateTimeTypeConverterBase {\n protected getTimeFormat(): TimeFormat { return TimeFormat.Short; }\n}\nTypeConverterManager.registerConverter(StandardTypeNames.ShortDate, ShortDateTypeConverter);\n\n/**\n * Date Time Type Converter.\n * @public\n */\nexport class DateTimeTypeConverter extends DateTimeTypeConverterBase {\n protected getTimeFormat(): TimeFormat { return TimeFormat.Long; }\n}\nTypeConverterManager.registerConverter(StandardTypeNames.DateTime, DateTimeTypeConverter);\n"]}
|
|
1
|
+
{"version":3,"file":"DateTimeTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/DateTimeTypeConverter.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { AlternateDateFormats, Primitives, StandardTypeNames, TimeDisplay } from \"@itwin/appui-abstract\";\r\nimport { TimeFormat } from \"@itwin/core-react\";\r\nimport { formatInputDate } from \"../datepicker/DateField\";\r\nimport { adjustDateToTimezone } from \"../common/DateUtils\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport { LessGreaterOperatorProcessor, TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\nimport { ConvertedPrimitives } from \"./valuetypes/ConvertedTypes\";\r\n\r\n// cSpell:ignore datepicker valuetypes\r\n\r\n/**\r\n * DateTime Type Converter.\r\n * @public\r\n */\r\nexport abstract class DateTimeTypeConverterBase extends TypeConverter implements LessGreaterOperatorProcessor {\r\n public override convertToString(value?: Primitives.Value) {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n if (typeof value === \"string\")\r\n value = new Date(value);\r\n\r\n // istanbul ignore else\r\n if (value instanceof Date) {\r\n switch (this.getTimeFormat()) {\r\n case TimeFormat.Short: return value.toLocaleDateString();\r\n case TimeFormat.Long: return value.toLocaleString();\r\n }\r\n return value.toISOString();\r\n }\r\n\r\n // istanbul ignore next\r\n return value.toString();\r\n }\r\n\r\n public static isValidTimeDisplay(type: TimeDisplay): boolean {\r\n return Object.keys(TimeDisplay).some((key) => (TimeDisplay as any)[key] === type);\r\n }\r\n\r\n public static isAlternateDateFormats(type: AlternateDateFormats): boolean {\r\n return Object.keys(AlternateDateFormats).some((key) => (AlternateDateFormats as any)[key] === type);\r\n }\r\n\r\n // supported options:\r\n // timeDisplay?: TimeDisplay\r\n // alternateDateFormat?: AlternateDateFormats\r\n public override convertToStringWithOptions(value?: Primitives.Value, options?: { [key: string]: any }): string | Promise<string> {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n if (options) {\r\n let timeDisplay: TimeDisplay | undefined = (this.getTimeFormat() === TimeFormat.Long) ? TimeDisplay.H12MC : undefined;\r\n let alternateDateFormat = AlternateDateFormats.None;\r\n\r\n // istanbul ignore else\r\n if (\"alternateDateFormat\" in options && DateTimeTypeConverterBase.isAlternateDateFormats(options.alternateDateFormat)) {\r\n alternateDateFormat = options.alternateDateFormat;\r\n }\r\n\r\n if (this.getTimeFormat() === TimeFormat.Long) {\r\n // istanbul ignore else\r\n if (\"timeDisplay\" in options) {\r\n // istanbul ignore if\r\n if (alternateDateFormat) {\r\n Logger.logInfo(UiComponents.loggerCategory(this), `Invalid specification of timeDisplay with alternateDateFormat specification`);\r\n } else {\r\n // istanbul ignore else\r\n if (DateTimeTypeConverterBase.isValidTimeDisplay(options.timeDisplay))\r\n timeDisplay = options.timeDisplay;\r\n }\r\n }\r\n }\r\n\r\n // istanbul ignore else\r\n if (typeof value === \"string\") {\r\n value = new Date(value); // this value will be based on local time zone\r\n // istanbul ignore else\r\n if (value instanceof Date && alternateDateFormat) {\r\n // alternateDateFormat displays UTC time, so assume string is specifying UTC Date and Time\r\n value = adjustDateToTimezone(value, value.getTimezoneOffset() * -1);\r\n }\r\n }\r\n\r\n // istanbul ignore else\r\n if (value instanceof Date) {\r\n // Ensure if alternateDateFormat is specified make sure it matches proper Long/Short format.\r\n if (this.getTimeFormat() === TimeFormat.Long) {\r\n if (alternateDateFormat === AlternateDateFormats.IsoShort)\r\n alternateDateFormat = AlternateDateFormats.IsoDateTime;\r\n if (alternateDateFormat === AlternateDateFormats.UtcShort)\r\n alternateDateFormat = AlternateDateFormats.UtcDateTime;\r\n if (alternateDateFormat === AlternateDateFormats.UtcShortWithDay)\r\n alternateDateFormat = AlternateDateFormats.UtcDateTimeWithDay;\r\n } else {\r\n // short time format\r\n if (alternateDateFormat === AlternateDateFormats.IsoDateTime)\r\n alternateDateFormat = AlternateDateFormats.IsoShort;\r\n if (alternateDateFormat === AlternateDateFormats.UtcDateTime)\r\n alternateDateFormat = AlternateDateFormats.UtcShort;\r\n if (alternateDateFormat === AlternateDateFormats.UtcDateTimeWithDay)\r\n alternateDateFormat = AlternateDateFormats.UtcShortWithDay;\r\n }\r\n\r\n const formattedDateTime = formatInputDate(value, timeDisplay, undefined, alternateDateFormat);\r\n // istanbul ignore else\r\n if (formattedDateTime)\r\n return formattedDateTime;\r\n }\r\n }\r\n\r\n return this.convertToString(value);\r\n }\r\n\r\n /** Default implementation just calls convertFromString with no options */\r\n public override convertFromStringWithOptions(value: string, options?: { [key: string]: any }): ConvertedPrimitives.Value | undefined | Promise<ConvertedPrimitives.Value | undefined> {\r\n if (!value)\r\n return undefined;\r\n\r\n if (options) {\r\n let alternateDateFormat = AlternateDateFormats.None;\r\n\r\n // istanbul ignore else\r\n if (\"alternateDateFormat\" in options && DateTimeTypeConverterBase.isAlternateDateFormats(options.alternateDateFormat)) {\r\n alternateDateFormat = options.alternateDateFormat;\r\n }\r\n\r\n // istanbul ignore else\r\n let date = new Date(value); // this value will be based on local time zone\r\n // istanbul ignore else\r\n if (date instanceof Date && alternateDateFormat) {\r\n // alternateDateFormat displays UTC time, so assume string is specifying UTC Date and Time\r\n date = adjustDateToTimezone(date, date.getTimezoneOffset() * -1);\r\n }\r\n }\r\n\r\n return this.convertFromString(value);\r\n }\r\n\r\n private isDateValid(date: Date) {\r\n return date instanceof Date && !isNaN(+date);\r\n }\r\n\r\n public override convertFromString(value: string) {\r\n if (!value)\r\n return undefined;\r\n\r\n const dateValue = new Date(value);\r\n\r\n if (!this.isDateValid(dateValue))\r\n return undefined;\r\n\r\n return dateValue;\r\n }\r\n\r\n protected abstract getTimeFormat(): TimeFormat;\r\n\r\n public override get isLessGreaterType(): boolean { return true; }\r\n\r\n public sortCompare(valueA: Date, valueB: Date, _ignoreCase?: boolean): number {\r\n return valueA.valueOf() - valueB.valueOf();\r\n }\r\n\r\n public override isEqualTo(valueA: Date, valueB: Date): boolean {\r\n return valueA.valueOf() === valueB.valueOf();\r\n }\r\n\r\n public override isNotEqualTo(valueA: Date, valueB: Date): boolean {\r\n return valueA.valueOf() !== valueB.valueOf();\r\n }\r\n\r\n public isLessThan(a: Date, b: Date): boolean {\r\n return a.valueOf() < b.valueOf();\r\n }\r\n\r\n public isLessThanOrEqualTo(a: Date, b: Date): boolean {\r\n return a.valueOf() <= b.valueOf();\r\n }\r\n\r\n public isGreaterThan(a: Date, b: Date): boolean {\r\n return a.valueOf() > b.valueOf();\r\n }\r\n\r\n public isGreaterThanOrEqualTo(a: Date, b: Date): boolean {\r\n return a.valueOf() >= b.valueOf();\r\n }\r\n}\r\n\r\n/**\r\n * Short Date Type Converter.\r\n * @public\r\n */\r\nexport class ShortDateTypeConverter extends DateTimeTypeConverterBase {\r\n protected getTimeFormat(): TimeFormat { return TimeFormat.Short; }\r\n}\r\nTypeConverterManager.registerConverter(StandardTypeNames.ShortDate, ShortDateTypeConverter);\r\n\r\n/**\r\n * Date Time Type Converter.\r\n * @public\r\n */\r\nexport class DateTimeTypeConverter extends DateTimeTypeConverterBase {\r\n protected getTimeFormat(): TimeFormat { return TimeFormat.Long; }\r\n}\r\nTypeConverterManager.registerConverter(StandardTypeNames.DateTime, DateTimeTypeConverter);\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnumTypeConverter.d.ts","sourceRoot":"","sources":["../../../../src/components-react/converters/EnumTypeConverter.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAA6C,UAAU,EAAE,mBAAmB,EAAqB,MAAM,uBAAuB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IAClC,uBAAuB,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"EnumTypeConverter.d.ts","sourceRoot":"","sources":["../../../../src/components-react/converters/EnumTypeConverter.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAA6C,UAAU,EAAE,mBAAmB,EAAqB,MAAM,uBAAuB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IAClC,uBAAuB,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAWtH,sBAAsB;IAgBpC,OAAO,CAAC,WAAW;IAQZ,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM;CAOzF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnumTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/EnumTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsI;AACtI,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,6BAAa;IAClC,uBAAuB,CAAC,mBAAwC,EAAE,KAAuB;QACvG,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,IAAI,mBAAmB,CAAC,IAAI,EAAE;YAC5B,OAAO,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACrE;QAED,OAAO,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,OAA+B,EAAE,KAAsB;QAC1F,IAAI,OAAO,GAAwB,EAAE,CAAC;QAEtC,IAAI,OAAO,CAAC,OAAO,YAAY,OAAO,EAAE;YACtC,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;SACjC;aAAM;YACL,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;SAC3B;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,KAAK,GAAG;YACZ,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAE5B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAEO,WAAW,CAAC,OAA4B,EAAE,KAAsB;QACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACvC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK;gBAC5B,OAAO,CAAC,CAAC;SACZ;QACD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAEM,WAAW,CAAC,CAAkB,EAAE,CAAkB,EAAE,UAAoB;QAC7E,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1B,OAAO,2CAAoB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;SAClF;QAED,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;CACF;AA3CD,8CA2CC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,IAAI,EAAE,iBAAiB,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 TypeConverters\n */\n\nimport { EnumerationChoice, EnumerationChoicesInfo, Primitives, PropertyDescription, StandardTypeNames } from \"@itwin/appui-abstract\";\nimport { TypeConverter } from \"./TypeConverter\";\nimport { TypeConverterManager } from \"./TypeConverterManager\";\n\n/**\n * Enum Type Converter.\n * @public\n */\nexport class EnumTypeConverter extends TypeConverter {\n public override convertPropertyToString(propertyDescription: PropertyDescription, value?: Primitives.Enum) {\n if (value === undefined)\n return \"\";\n\n if (propertyDescription.enum) {\n return this.getMatchingStringValue(propertyDescription.enum, value);\n }\n\n return super.convertToString(value);\n }\n\n private async getMatchingStringValue(enumVal: EnumerationChoicesInfo, value: Primitives.Enum) {\n let choices: EnumerationChoice[] = [];\n\n if (enumVal.choices instanceof Promise) {\n choices = await enumVal.choices;\n } else {\n choices = enumVal.choices;\n }\n\n const pos = this.getPosition(choices, value);\n if (-1 !== pos)\n return choices[pos].label;\n\n return this.convertToString(value);\n }\n\n private getPosition(choices: EnumerationChoice[], value: Primitives.Enum): number {\n for (let i = 0; i < choices.length; ++i) {\n if (choices[i].value === value)\n return i;\n }\n return -1;\n }\n\n public sortCompare(a: Primitives.Enum, b: Primitives.Enum, ignoreCase?: boolean): number {\n if (isNaN(+a) || isNaN(+b)) {\n return TypeConverterManager.getConverter(\"string\").sortCompare(a, b, ignoreCase);\n }\n\n return (+a) - (+b);\n }\n}\n\nTypeConverterManager.registerConverter(StandardTypeNames.Enum, EnumTypeConverter);\n"]}
|
|
1
|
+
{"version":3,"file":"EnumTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/EnumTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAsI;AACtI,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,6BAAa;IAClC,uBAAuB,CAAC,mBAAwC,EAAE,KAAuB;QACvG,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,IAAI,mBAAmB,CAAC,IAAI,EAAE;YAC5B,OAAO,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACrE;QAED,OAAO,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,OAA+B,EAAE,KAAsB;QAC1F,IAAI,OAAO,GAAwB,EAAE,CAAC;QAEtC,IAAI,OAAO,CAAC,OAAO,YAAY,OAAO,EAAE;YACtC,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;SACjC;aAAM;YACL,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;SAC3B;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,KAAK,GAAG;YACZ,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAE5B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAEO,WAAW,CAAC,OAA4B,EAAE,KAAsB;QACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACvC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK;gBAC5B,OAAO,CAAC,CAAC;SACZ;QACD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAEM,WAAW,CAAC,CAAkB,EAAE,CAAkB,EAAE,UAAoB;QAC7E,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1B,OAAO,2CAAoB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;SAClF;QAED,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;CACF;AA3CD,8CA2CC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { EnumerationChoice, EnumerationChoicesInfo, Primitives, PropertyDescription, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\n\r\n/**\r\n * Enum Type Converter.\r\n * @public\r\n */\r\nexport class EnumTypeConverter extends TypeConverter {\r\n public override convertPropertyToString(propertyDescription: PropertyDescription, value?: Primitives.Enum): string | Promise<string> {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n if (propertyDescription.enum) {\r\n return this.getMatchingStringValue(propertyDescription.enum, value);\r\n }\r\n\r\n return super.convertToString(value);\r\n }\r\n\r\n private async getMatchingStringValue(enumVal: EnumerationChoicesInfo, value: Primitives.Enum) {\r\n let choices: EnumerationChoice[] = [];\r\n\r\n if (enumVal.choices instanceof Promise) {\r\n choices = await enumVal.choices;\r\n } else {\r\n choices = enumVal.choices;\r\n }\r\n\r\n const pos = this.getPosition(choices, value);\r\n if (-1 !== pos)\r\n return choices[pos].label;\r\n\r\n return this.convertToString(value);\r\n }\r\n\r\n private getPosition(choices: EnumerationChoice[], value: Primitives.Enum): number {\r\n for (let i = 0; i < choices.length; ++i) {\r\n if (choices[i].value === value)\r\n return i;\r\n }\r\n return -1;\r\n }\r\n\r\n public sortCompare(a: Primitives.Enum, b: Primitives.Enum, ignoreCase?: boolean): number {\r\n if (isNaN(+a) || isNaN(+b)) {\r\n return TypeConverterManager.getConverter(\"string\").sortCompare(a, b, ignoreCase);\r\n }\r\n\r\n return (+a) - (+b);\r\n }\r\n}\r\n\r\nTypeConverterManager.registerConverter(StandardTypeNames.Enum, EnumTypeConverter);\r\n"]}
|
|
@@ -24,7 +24,7 @@ class HexadecimalTypeConverter extends TypeConverter_1.TypeConverter {
|
|
|
24
24
|
return `0x${hexString.substring(2, hexString.length).toUpperCase()}`;
|
|
25
25
|
}
|
|
26
26
|
convertFromString(value) {
|
|
27
|
-
if (value.
|
|
27
|
+
if (value.substring(0, 2) !== "0x")
|
|
28
28
|
value = `0x${value}`;
|
|
29
29
|
value = core_bentley_1.Id64.fromString(value);
|
|
30
30
|
if (core_bentley_1.Id64.isValidId64(value))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HexadecimalTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/HexadecimalTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAA2C;AAC3C,0DAAsE;AACtE,mDAAgD;AAChD,iEAA8D;AAE9D;;GAEG;AACH,MAAa,wBAAyB,SAAQ,6BAAa;IACzC,eAAe,CAAC,KAA8B;QAC5D,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,6CAA6C;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;IACvE,CAAC;IAEe,iBAAiB,CAAC,KAAa;QAC7C,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"HexadecimalTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/HexadecimalTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAA2C;AAC3C,0DAAsE;AACtE,mDAAgD;AAChD,iEAA8D;AAE9D;;GAEG;AACH,MAAa,wBAAyB,SAAQ,6BAAa;IACzC,eAAe,CAAC,KAA8B;QAC5D,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO,EAAE,CAAC;QAEZ,6CAA6C;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;IACvE,CAAC;IAEe,iBAAiB,CAAC,KAAa;QAC7C,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI;YAChC,KAAK,GAAG,KAAK,KAAK,EAAE,CAAC;QAEvB,KAAK,GAAG,mBAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,mBAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACzB,OAAO,KAAK,CAAC;QAEf,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,WAAW,CAAC,CAAyB,EAAE,CAAyB;QACrE,wBAAwB;QACxB,CAAC,GAAG,mBAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,GAAG,mBAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAEvB,IAAI,CAAC,KAAK,CAAC;YACT,OAAO,CAAC,CAAC;QACX,IAAI,CAAC,GAAG,CAAC;YACP,OAAO,CAAC,CAAC;QACX,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;CACF;AAhCD,4DAgCC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;AACxF,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { Id64 } from \"@itwin/core-bentley\";\r\nimport { Primitives, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\n\r\n/** Hexadecimal Type Converter.\r\n * @public\r\n */\r\nexport class HexadecimalTypeConverter extends TypeConverter {\r\n public override convertToString(value?: Primitives.Hexadecimal) {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n // Need to Uppercase without changing 0x part\r\n const hexString = value.toString();\r\n return `0x${hexString.substring(2, hexString.length).toUpperCase()}`;\r\n }\r\n\r\n public override convertFromString(value: string) {\r\n if (value.substring(0, 2) !== \"0x\")\r\n value = `0x${value}`;\r\n\r\n value = Id64.fromString(value);\r\n if (Id64.isValidId64(value))\r\n return value;\r\n\r\n return undefined;\r\n }\r\n\r\n public sortCompare(a: Primitives.Hexadecimal, b: Primitives.Hexadecimal): number {\r\n // Normalize the strings\r\n a = Id64.fromString(a);\r\n b = Id64.fromString(b);\r\n\r\n if (a === b)\r\n return 0;\r\n if (a > b)\r\n return 1;\r\n return -1;\r\n }\r\n}\r\n\r\nTypeConverterManager.registerConverter(StandardTypeNames.Hex, HexadecimalTypeConverter);\r\nTypeConverterManager.registerConverter(StandardTypeNames.Hexadecimal, HexadecimalTypeConverter);\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationPropertyTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/NavigationPropertyTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;;GAGG;;;AAEH,0DAA2F;AAC3F,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,+BAAgC,SAAQ,6BAAa;IAChD,uBAAuB,CAAC,mBAAwC,EAAE,KAAwB;QACxG,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,YAAY,CAAC;IACrE,CAAC;IAEM,WAAW,CAAC,CAAmB,EAAE,CAAmB,EAAE,UAAoB;QAC/E,OAAO,2CAAoB;aACxB,YAAY,CAAC,kCAAiB,CAAC,WAAW,CAAC;aAC3C,WAAW,CAAE,CAA4B,CAAC,EAAE,EAAG,CAA4B,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACjG,CAAC;CACF;AAVD,0EAUC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,UAAU,EAAE,+BAA+B,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/**\n * @packageDocumentation\n * @module TypeConverters\n */\n\nimport { Primitives, PropertyDescription, StandardTypeNames } from \"@itwin/appui-abstract\";\nimport { TypeConverter } from \"./TypeConverter\";\nimport { TypeConverterManager } from \"./TypeConverterManager\";\n\n/**\n * Navigation property type converter.\n * @public\n */\nexport class NavigationPropertyTypeConverter extends TypeConverter {\n public override convertPropertyToString(propertyDescription: PropertyDescription, value?: Primitives.Value) {\n return value === undefined ? \"\" : propertyDescription.displayLabel;\n }\n\n public sortCompare(a: Primitives.Value, b: Primitives.Value, ignoreCase?: boolean): number {\n return TypeConverterManager\n .getConverter(StandardTypeNames.Hexadecimal)\n .sortCompare((a as Primitives.InstanceKey).id, (b as Primitives.InstanceKey).id, ignoreCase);\n }\n}\n\nTypeConverterManager.registerConverter(StandardTypeNames.Navigation, NavigationPropertyTypeConverter);\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationPropertyTypeConverter.js","sourceRoot":"","sources":["../../../../src/components-react/converters/NavigationPropertyTypeConverter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;;GAGG;;;AAEH,0DAA2F;AAC3F,mDAAgD;AAChD,iEAA8D;AAE9D;;;GAGG;AACH,MAAa,+BAAgC,SAAQ,6BAAa;IAChD,uBAAuB,CAAC,mBAAwC,EAAE,KAAwB;QACxG,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,YAAY,CAAC;IACrE,CAAC;IAEM,WAAW,CAAC,CAAmB,EAAE,CAAmB,EAAE,UAAoB;QAC/E,OAAO,2CAAoB;aACxB,YAAY,CAAC,kCAAiB,CAAC,WAAW,CAAC;aAC3C,WAAW,CAAE,CAA4B,CAAC,EAAE,EAAG,CAA4B,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACjG,CAAC;CACF;AAVD,0EAUC;AAED,2CAAoB,CAAC,iBAAiB,CAAC,kCAAiB,CAAC,UAAU,EAAE,+BAA+B,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/**\r\n * @packageDocumentation\r\n * @module TypeConverters\r\n */\r\n\r\nimport { Primitives, PropertyDescription, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { TypeConverter } from \"./TypeConverter\";\r\nimport { TypeConverterManager } from \"./TypeConverterManager\";\r\n\r\n/**\r\n * Navigation property type converter.\r\n * @public\r\n */\r\nexport class NavigationPropertyTypeConverter extends TypeConverter {\r\n public override convertPropertyToString(propertyDescription: PropertyDescription, value?: Primitives.Value) {\r\n return value === undefined ? \"\" : propertyDescription.displayLabel;\r\n }\r\n\r\n public sortCompare(a: Primitives.Value, b: Primitives.Value, ignoreCase?: boolean): number {\r\n return TypeConverterManager\r\n .getConverter(StandardTypeNames.Hexadecimal)\r\n .sortCompare((a as Primitives.InstanceKey).id, (b as Primitives.InstanceKey).id, ignoreCase);\r\n }\r\n}\r\n\r\nTypeConverterManager.registerConverter(StandardTypeNames.Navigation, NavigationPropertyTypeConverter);\r\n"]}
|