@itwin/components-react 4.0.0-dev.2 → 4.0.0-dev.20

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.
Files changed (747) hide show
  1. package/CHANGELOG.md +156 -6
  2. package/LICENSE.md +1 -1
  3. package/README.md +2 -2
  4. package/lib/cjs/components-react/UiComponents.js +1 -1
  5. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  6. package/lib/cjs/components-react/common/DateUtils.d.ts +2 -2
  7. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  8. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +1 -1
  9. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  10. package/lib/cjs/components-react/common/DelayedSpinner.js +7 -4
  11. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  12. package/lib/cjs/components-react/common/IImageLoader.d.ts +3 -3
  13. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  14. package/lib/cjs/components-react/common/ImageRenderer.js +6 -2
  15. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  16. package/lib/cjs/components-react/common/UseAsyncValue.d.ts +1 -1
  17. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  18. package/lib/cjs/components-react/common/UseAsyncValue.js +7 -3
  19. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  20. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  21. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  22. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +16 -2
  23. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  24. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +1 -1
  25. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  26. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  27. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  28. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +1 -1
  29. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  30. package/lib/cjs/components-react/converters/NumericTypeConverter.js +2 -4
  31. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  32. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  33. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  34. package/lib/cjs/components-react/converters/StringTypeConverter.js +2 -2
  35. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  36. package/lib/cjs/components-react/converters/TypeConverter.js +1 -2
  37. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  38. package/lib/cjs/components-react/converters/TypeConverterManager.js +1 -1
  39. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  40. package/lib/cjs/components-react/datepicker/DateField.js +5 -1
  41. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  42. package/lib/cjs/components-react/datepicker/DateField.scss +1 -1
  43. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  44. package/lib/cjs/components-react/datepicker/DatePicker.js +9 -4
  45. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  46. package/lib/cjs/components-react/datepicker/DatePicker.scss +9 -10
  47. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  48. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +7 -2
  49. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  50. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +5 -5
  51. package/lib/cjs/components-react/datepicker/TimeField.js +5 -1
  52. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  53. package/lib/cjs/components-react/datepicker/TimeField.scss +4 -4
  54. package/lib/cjs/components-react/editors/BooleanEditor.js +5 -1
  55. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  56. package/lib/cjs/components-react/editors/CustomNumberEditor.js +7 -5
  57. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  58. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +1 -2
  59. package/lib/cjs/components-react/editors/DateTimeEditor.js +9 -6
  60. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  61. package/lib/cjs/components-react/editors/EditorContainer.d.ts +10 -0
  62. package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
  63. package/lib/cjs/components-react/editors/EditorContainer.js +6 -1
  64. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  65. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  66. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  67. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +8 -2
  68. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  69. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +16 -57
  70. package/lib/cjs/components-react/editors/EnumEditor.js +5 -1
  71. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  72. package/lib/cjs/components-react/editors/EnumEditor.scss +2 -2
  73. package/lib/cjs/components-react/editors/IconEditor.js +5 -1
  74. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  75. package/lib/cjs/components-react/editors/IconEditor.scss +1 -1
  76. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +5 -1
  77. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  78. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  79. package/lib/cjs/components-react/editors/NumericInputEditor.js +6 -2
  80. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  81. package/lib/cjs/components-react/editors/NumericInputEditor.scss +1 -2
  82. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  83. package/lib/cjs/components-react/editors/PopupButton.js +13 -8
  84. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  85. package/lib/cjs/components-react/editors/PopupButton.scss +13 -13
  86. package/lib/cjs/components-react/editors/PropertyEditorManager.js +6 -2
  87. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  88. package/lib/cjs/components-react/editors/SliderEditor.js +5 -1
  89. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  90. package/lib/cjs/components-react/editors/SliderEditor.scss +2 -2
  91. package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
  92. package/lib/cjs/components-react/editors/TextEditor.js +14 -5
  93. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  94. package/lib/cjs/components-react/editors/TextEditor.scss +1 -2
  95. package/lib/cjs/components-react/editors/TextareaEditor.d.ts +1 -1
  96. package/lib/cjs/components-react/editors/TextareaEditor.js +6 -2
  97. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  98. package/lib/cjs/components-react/editors/ToggleEditor.js +5 -1
  99. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  100. package/lib/cjs/components-react/editors/variables.scss +1 -0
  101. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  102. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  103. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +29 -3
  104. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  105. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +7 -4
  106. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  107. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  108. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  109. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -82
  110. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  111. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  112. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  113. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +87 -0
  114. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  115. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  116. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  117. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +27 -13
  118. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  119. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +4 -6
  120. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  121. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  122. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +27 -15
  123. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  124. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +3 -11
  125. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  126. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  127. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +17 -8
  128. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  129. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  130. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  131. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +20 -9
  132. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  133. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  134. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  135. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +18 -8
  136. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  137. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  138. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  139. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +65 -9
  140. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  141. package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
  142. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  143. package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
  144. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  145. package/lib/cjs/components-react/filter-builder/Types.d.ts +25 -5
  146. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  147. package/lib/cjs/components-react/filter-builder/Types.js +11 -1
  148. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  149. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  150. package/lib/cjs/components-react/filtering/FilteringInput.js +17 -6
  151. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  152. package/lib/cjs/components-react/filtering/FilteringInput.scss +3 -13
  153. package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
  154. package/lib/cjs/components-react/filtering/ResultSelector.js +11 -3
  155. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  156. package/lib/cjs/components-react/filtering/ResultSelector.scss +3 -8
  157. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  158. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +13 -5
  159. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  160. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +5 -5
  161. package/lib/cjs/components-react/inputs/ParsedInput.js +5 -1
  162. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  163. package/lib/cjs/components-react/inputs/ParsedInput.scss +2 -2
  164. package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
  165. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  166. package/lib/cjs/components-react/properties/LinkHandler.d.ts +3 -3
  167. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  168. package/lib/cjs/components-react/properties/LinkHandler.js +6 -2
  169. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  170. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -1
  171. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  172. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  173. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  174. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +8 -5
  175. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  176. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +6 -2
  177. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  178. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +7 -4
  179. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  180. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +5 -1
  181. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  182. package/lib/cjs/components-react/properties/renderers/PropertyView.js +5 -1
  183. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  184. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +5 -3
  185. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  186. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +8 -3
  187. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  188. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +5 -1
  189. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  190. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +6 -3
  191. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  192. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +10 -10
  193. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +5 -1
  194. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  195. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -3
  196. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  197. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +8 -7
  198. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  199. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -3
  200. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  201. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  202. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +9 -8
  203. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  204. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -1
  205. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  206. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -1
  207. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  208. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  209. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  210. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +5 -1
  211. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  212. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +5 -1
  213. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  214. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +5 -1
  215. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  216. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +5 -1
  217. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  218. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  219. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  220. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -4
  221. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  222. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  223. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  224. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  225. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  226. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +10 -2
  227. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  228. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +5 -1
  229. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  230. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +6 -3
  231. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  232. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +8 -7
  233. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  234. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  235. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  236. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  237. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  238. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  239. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +5 -1
  240. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  241. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +5 -1
  242. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  243. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  244. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  245. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +53 -54
  246. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  247. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +17 -8
  248. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  249. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  250. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  251. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  252. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  253. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  254. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  255. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  256. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  257. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  258. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  259. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  260. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  261. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  262. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  263. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  264. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  265. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  266. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  267. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  268. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  269. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  270. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  271. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  272. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  273. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  274. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  275. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  276. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  277. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  278. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  279. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  280. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  281. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  282. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  283. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  284. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  285. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  286. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  287. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  288. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  289. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  290. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  291. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  292. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  293. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  294. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  295. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  296. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  297. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  298. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  299. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  300. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  301. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +6 -2
  302. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  303. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  304. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  305. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +10 -8
  306. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  307. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +2 -0
  308. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  309. package/lib/cjs/components-react/selectable-content/SelectableContent.js +10 -7
  310. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  311. package/lib/cjs/components-react/toolbar/Item.js +5 -1
  312. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  313. package/lib/cjs/components-react/toolbar/Item.scss +20 -51
  314. package/lib/cjs/components-react/toolbar/ItemWrapper.js +5 -1
  315. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  316. package/lib/cjs/components-react/toolbar/Items.js +5 -1
  317. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  318. package/lib/cjs/components-react/toolbar/Items.scss +2 -3
  319. package/lib/cjs/components-react/toolbar/Overflow.js +5 -1
  320. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  321. package/lib/cjs/components-react/toolbar/OverflowPanel.js +5 -1
  322. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  323. package/lib/cjs/components-react/toolbar/PopupItem.js +5 -1
  324. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  325. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +5 -1
  326. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  327. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +5 -1
  328. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  329. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +4 -2
  330. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  331. package/lib/cjs/components-react/toolbar/Toolbar.js +7 -2
  332. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  333. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  334. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  335. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +13 -6
  336. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  337. package/lib/cjs/components-react/toolbar/_variables.scss +4 -4
  338. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +5 -1
  339. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  340. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +2 -2
  341. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +5 -1
  342. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  343. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +5 -1
  344. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  345. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +5 -1
  346. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  347. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +2 -4
  348. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +5 -1
  349. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  350. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +1 -2
  351. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +1 -1
  352. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +5 -1
  353. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  354. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +5 -1
  355. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  356. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +9 -38
  357. package/lib/cjs/components-react/toolbar/useDragInteraction.js +5 -1
  358. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  359. package/lib/cjs/components-react/toolbar/utilities/Direction.js +2 -2
  360. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  361. package/lib/cjs/components-react/tree/HighlightingEngine.js +6 -2
  362. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  363. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  364. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  365. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +4 -4
  366. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  367. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +12 -2
  368. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  369. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  370. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +3 -3
  371. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  372. package/lib/cjs/components-react/tree/controlled/TreeModel.js +7 -13
  373. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  374. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  375. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  376. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  377. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  378. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +6 -3
  379. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  380. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +7 -7
  381. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  382. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +6 -1
  383. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  384. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +1 -2
  385. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  386. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  387. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +5 -1
  388. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  389. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  390. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  391. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +6 -2
  392. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  393. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  394. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  395. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +7 -3
  396. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  397. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +1 -2
  398. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  399. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  400. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  401. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  402. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  403. package/lib/cjs/components-react.d.ts +4 -8
  404. package/lib/cjs/components-react.d.ts.map +1 -1
  405. package/lib/cjs/components-react.js +9 -9
  406. package/lib/cjs/components-react.js.map +1 -1
  407. package/lib/esm/components-react/UiComponents.js +2 -1
  408. package/lib/esm/components-react/UiComponents.js.map +1 -1
  409. package/lib/esm/components-react/common/DateUtils.d.ts +2 -2
  410. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  411. package/lib/esm/components-react/common/DelayedSpinner.d.ts +1 -1
  412. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  413. package/lib/esm/components-react/common/DelayedSpinner.js +2 -3
  414. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  415. package/lib/esm/components-react/common/IImageLoader.d.ts +3 -3
  416. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  417. package/lib/esm/components-react/common/ImageRenderer.js +2 -1
  418. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  419. package/lib/esm/components-react/common/UseAsyncValue.d.ts +1 -1
  420. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  421. package/lib/esm/components-react/common/UseAsyncValue.js +2 -2
  422. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  423. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  424. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  425. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +16 -2
  426. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  427. package/lib/esm/components-react/converters/BooleanTypeConverter.js +2 -1
  428. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  429. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  430. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  431. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +1 -1
  432. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  433. package/lib/esm/components-react/converters/NumericTypeConverter.js +2 -4
  434. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  435. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  436. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  437. package/lib/esm/components-react/converters/StringTypeConverter.js +2 -2
  438. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  439. package/lib/esm/components-react/converters/TypeConverter.js +1 -2
  440. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  441. package/lib/esm/components-react/converters/TypeConverterManager.js +2 -1
  442. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  443. package/lib/esm/components-react/datepicker/DateField.scss +1 -1
  444. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  445. package/lib/esm/components-react/datepicker/DatePicker.js +4 -3
  446. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  447. package/lib/esm/components-react/datepicker/DatePicker.scss +9 -10
  448. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  449. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +3 -2
  450. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  451. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +5 -5
  452. package/lib/esm/components-react/datepicker/TimeField.scss +4 -4
  453. package/lib/esm/components-react/editors/CustomNumberEditor.js +2 -4
  454. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  455. package/lib/esm/components-react/editors/CustomNumberEditor.scss +1 -2
  456. package/lib/esm/components-react/editors/DateTimeEditor.js +4 -5
  457. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  458. package/lib/esm/components-react/editors/EditorContainer.d.ts +10 -0
  459. package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
  460. package/lib/esm/components-react/editors/EditorContainer.js +1 -0
  461. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  462. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  463. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  464. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +4 -2
  465. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  466. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +16 -57
  467. package/lib/esm/components-react/editors/EnumEditor.scss +2 -2
  468. package/lib/esm/components-react/editors/IconEditor.scss +1 -1
  469. package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  470. package/lib/esm/components-react/editors/NumericInputEditor.js +1 -1
  471. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  472. package/lib/esm/components-react/editors/NumericInputEditor.scss +1 -2
  473. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  474. package/lib/esm/components-react/editors/PopupButton.js +8 -7
  475. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  476. package/lib/esm/components-react/editors/PopupButton.scss +13 -13
  477. package/lib/esm/components-react/editors/PropertyEditorManager.js +2 -1
  478. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  479. package/lib/esm/components-react/editors/SliderEditor.scss +2 -2
  480. package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
  481. package/lib/esm/components-react/editors/TextEditor.js +9 -4
  482. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  483. package/lib/esm/components-react/editors/TextEditor.scss +1 -2
  484. package/lib/esm/components-react/editors/TextareaEditor.d.ts +1 -1
  485. package/lib/esm/components-react/editors/TextareaEditor.js +1 -1
  486. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  487. package/lib/esm/components-react/editors/variables.scss +1 -0
  488. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  489. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  490. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
  491. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  492. package/lib/esm/components-react/favorite/FavoritePropertyList.js +2 -3
  493. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  494. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  495. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  496. package/lib/esm/components-react/filter-builder/FilterBuilder.js +12 -73
  497. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  498. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  499. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  500. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
  501. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  502. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  503. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  504. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
  505. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  506. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +4 -6
  507. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  508. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  509. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
  510. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  511. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +3 -11
  512. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  513. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  514. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +8 -3
  515. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  516. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  517. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  518. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -4
  519. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  520. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  521. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  522. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +9 -3
  523. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  524. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  525. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  526. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +54 -3
  527. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  528. package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
  529. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  530. package/lib/esm/components-react/filter-builder/Operators.js +23 -5
  531. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  532. package/lib/esm/components-react/filter-builder/Types.d.ts +25 -5
  533. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  534. package/lib/esm/components-react/filter-builder/Types.js +11 -1
  535. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  536. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  537. package/lib/esm/components-react/filtering/FilteringInput.js +13 -6
  538. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  539. package/lib/esm/components-react/filtering/FilteringInput.scss +3 -13
  540. package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
  541. package/lib/esm/components-react/filtering/ResultSelector.js +6 -2
  542. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  543. package/lib/esm/components-react/filtering/ResultSelector.scss +3 -8
  544. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  545. package/lib/esm/components-react/iconpicker/IconPickerButton.js +10 -5
  546. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  547. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +5 -5
  548. package/lib/esm/components-react/inputs/ParsedInput.scss +2 -2
  549. package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
  550. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  551. package/lib/esm/components-react/properties/LinkHandler.d.ts +3 -3
  552. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  553. package/lib/esm/components-react/properties/LinkHandler.js +1 -1
  554. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  555. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  556. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  557. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +3 -4
  558. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  559. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
  560. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  561. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +2 -3
  562. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  563. package/lib/esm/components-react/properties/renderers/PropertyView.scss +5 -3
  564. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  565. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +3 -2
  566. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  567. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +1 -2
  568. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  569. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +10 -10
  570. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -2
  571. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  572. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +3 -6
  573. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  574. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -2
  575. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  576. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  577. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +4 -7
  578. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  579. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  580. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  581. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  582. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  583. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +4 -4
  584. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  585. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  586. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  587. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  588. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  589. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +6 -1
  590. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  591. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +1 -2
  592. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  593. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +8 -7
  594. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  595. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  596. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +4 -3
  597. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  598. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  599. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  600. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  601. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  602. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -53
  603. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  604. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +17 -8
  605. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  606. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  607. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  608. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  609. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  610. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  611. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  612. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  613. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  614. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  615. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  616. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  617. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  618. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  619. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  620. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  621. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  622. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  623. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  624. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  625. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  626. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  627. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  628. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  629. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  630. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  631. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  632. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  633. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  634. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  635. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  636. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  637. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  638. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  639. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  640. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  641. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  642. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  643. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  644. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  645. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  646. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  647. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  648. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  649. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  650. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  651. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  652. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  653. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  654. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  655. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  656. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  657. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  658. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +1 -1
  659. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  660. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  661. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  662. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +5 -7
  663. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  664. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +2 -0
  665. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  666. package/lib/esm/components-react/selectable-content/SelectableContent.js +5 -6
  667. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  668. package/lib/esm/components-react/toolbar/Item.scss +20 -51
  669. package/lib/esm/components-react/toolbar/Items.scss +2 -3
  670. package/lib/esm/components-react/toolbar/Toolbar.d.ts +4 -2
  671. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  672. package/lib/esm/components-react/toolbar/Toolbar.js +2 -1
  673. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  674. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  675. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  676. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +10 -6
  677. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  678. package/lib/esm/components-react/toolbar/_variables.scss +4 -4
  679. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +2 -2
  680. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +2 -4
  681. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +1 -2
  682. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +1 -1
  683. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +9 -38
  684. package/lib/esm/components-react/toolbar/utilities/Direction.js +4 -2
  685. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  686. package/lib/esm/components-react/tree/HighlightingEngine.js +2 -1
  687. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  688. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  689. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  690. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +4 -4
  691. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  692. package/lib/esm/components-react/tree/controlled/Observable.d.ts +12 -2
  693. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  694. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  695. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +3 -3
  696. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  697. package/lib/esm/components-react/tree/controlled/TreeModel.js +7 -10
  698. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  699. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  700. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  701. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  702. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  703. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +1 -2
  704. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  705. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +7 -7
  706. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  707. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +1 -0
  708. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  709. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +1 -2
  710. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  711. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  712. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  713. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  714. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +1 -1
  715. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  716. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  717. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  718. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +2 -2
  719. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  720. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +1 -2
  721. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  722. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  723. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  724. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  725. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  726. package/lib/esm/components-react.d.ts +4 -8
  727. package/lib/esm/components-react.d.ts.map +1 -1
  728. package/lib/esm/components-react.js +4 -8
  729. package/lib/esm/components-react.js.map +1 -1
  730. package/package.json +30 -32
  731. package/ThirdPartyNotices.md +0 -31
  732. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  733. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  734. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +0 -185
  735. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  736. package/lib/cjs/components-react/table/TableDataProvider.d.ts +0 -10
  737. package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +0 -1
  738. package/lib/cjs/components-react/table/TableDataProvider.js +0 -18
  739. package/lib/cjs/components-react/table/TableDataProvider.js.map +0 -1
  740. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  741. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  742. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +0 -159
  743. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  744. package/lib/esm/components-react/table/TableDataProvider.d.ts +0 -10
  745. package/lib/esm/components-react/table/TableDataProvider.d.ts.map +0 -1
  746. package/lib/esm/components-react/table/TableDataProvider.js +0 -14
  747. package/lib/esm/components-react/table/TableDataProvider.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedPropertyGrid.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGrid.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n\n/** @packageDocumentation\n * @module PropertyGrid\n */\nimport \"./VirtualizedPropertyGrid.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { areEqual, ListChildComponentProps, VariableSizeList } from \"react-window\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { Orientation, RatioChangeResult } from \"@itwin/core-react\";\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\nimport { createContextWithMandatoryProvider } from \"../../common/UseContextWithMandatoryProvider\";\nimport { PropertyUpdatedArgs } from \"../../editors/EditorContainer\";\nimport { ActionButtonRenderer } from \"../../properties/renderers/ActionButtonRenderer\";\nimport { PropertyGridColumnInfo } from \"../../properties/renderers/PropertyGridColumns\";\nimport { PropertyValueRendererManager } from \"../../properties/ValueRendererManager\";\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\nimport { FlatGridItem, GridCategoryItem } from \"../internal/flat-items/FlatGridItem\";\nimport { MutableCategorizedPrimitiveProperty } from \"../internal/flat-items/MutableCategorizedPrimitiveProperty\";\nimport { MutableCustomGridCategory } from \"../internal/flat-items/MutableCustomGridCategory\";\nimport { FlatGridItemType } from \"../internal/flat-items/MutableFlatGridItem\";\nimport { MutableGridCategory } from \"../internal/flat-items/MutableGridCategory\";\nimport { FlatPropertyRenderer } from \"../internal/flat-properties/FlatPropertyRenderer\";\nimport { IPropertyGridEventHandler } from \"../internal/PropertyGridEventHandler\";\nimport { IPropertyGridModel } from \"../internal/PropertyGridModel\";\nimport { PropertyCategoryRendererManager, PropertyCategoryRendererProps } from \"../PropertyCategoryRendererManager\";\nimport { IPropertyDataProvider, PropertyCategory } from \"../PropertyDataProvider\";\nimport { ColumnResizingPropertyListPropsSupplier } from \"./ColumnResizingPropertyListPropsSupplier\";\nimport { FlatItemNestedBorderWrapper } from \"./FlatItemNestedBorderWrapper\";\nimport { PropertyCategoryBlock } from \"./PropertyCategoryBlock\";\nimport { CommonPropertyGridProps, PropertyGridCommons } from \"./PropertyGridCommons\";\nimport { PropertyGridEventsRelatedPropsSupplier } from \"./PropertyGridEventsRelatedPropsSupplier\";\n\n/** Properties for [[VirtualizedPropertyGrid]] React component\n * @beta\n */\nexport interface VirtualizedPropertyGridProps extends CommonPropertyGridProps {\n model: IPropertyGridModel;\n eventHandler: IPropertyGridEventHandler;\n dataProvider: IPropertyDataProvider;\n highlight?: HighlightingComponentProps & {\n filteredTypes?: FilteredType[];\n };\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n width: number;\n height: number;\n}\n\n/** State of [[VirtualizedPropertyGrid]] React component\n * @internal\n */\ninterface VirtualizedPropertyGridState {\n /** List of PropertyGrid categories */\n gridItems: FlatGridItem[];\n /** Actual orientation used by the property grid */\n orientation: Orientation;\n /** Keeps record of dynamic node heights */\n dynamicNodeHeights: Map<string, number>;\n /** When resetting node height cache, marks the point at which heights have become stale */\n resetIndex: number;\n}\n\n/**\n * Context of [[VirtualizedPropertyGrid]] component.\n * @internal\n */\nexport interface PropertyGridInternalContext {\n gridItems: FlatGridItem[];\n gridEventHandler: IPropertyGridEventHandler;\n gridModel: IPropertyGridModel;\n\n style?: React.CSSProperties;\n className?: string;\n gridContext: VirtualizedPropertyGridContext;\n onItemHeightChanged: (index: number, key: string, height: number) => void;\n}\n\n/**\n * Context of the surrounding [VirtualizedPropertyGrid]($components-react) component.\n * @beta\n */\nexport interface VirtualizedPropertyGridContext {\n orientation: Orientation;\n gridWidth: number;\n\n isPropertyHoverEnabled: boolean;\n isPropertySelectionEnabled: boolean;\n selectedPropertyKey?: string;\n\n onPropertyClicked?: (property: PropertyRecord, key?: string) => void;\n onPropertyRightClicked?: (property: PropertyRecord, key?: string) => void;\n onPropertyContextMenu?: (property: PropertyRecord, e: React.MouseEvent) => void;\n\n editingPropertyKey?: string;\n onEditCommit?: (args: PropertyUpdatedArgs, category: PropertyCategory) => void;\n onEditCancel?: () => void;\n\n eventHandler: IPropertyGridEventHandler;\n dataProvider: IPropertyDataProvider;\n\n actionButtonRenderers?: ActionButtonRenderer[];\n propertyValueRendererManager?: PropertyValueRendererManager;\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n\n columnRatio: number;\n columnInfo: PropertyGridColumnInfo;\n isResizeHandleBeingDragged: boolean;\n isResizeHandleHovered: boolean;\n onColumnRatioChanged: (ratio: number) => void | RatioChangeResult;\n onResizeHandleDragChanged: (newValue: boolean) => void;\n onResizeHandleHoverChanged: (newValue: boolean) => void;\n\n highlight?: HighlightingComponentProps & {\n filteredTypes?: FilteredType[];\n };\n}\n\nconst [\n PropertyGridInternalContextProvider,\n _PropertyGridInternalContextConsumer,\n usePropertyGridInternalContext,\n] = createContextWithMandatoryProvider<PropertyGridInternalContext>(\"PropertyGridInternalContext\");\n\n/**\n * VirtualizedPropertyGrid React component.\n * @beta\n */\nexport class VirtualizedPropertyGrid extends React.Component<VirtualizedPropertyGridProps, VirtualizedPropertyGridState> {\n private _listRef = React.createRef<VariableSizeList>();\n\n /** @internal */\n constructor(props: VirtualizedPropertyGridProps) {\n super(props);\n this.state = {\n gridItems: [],\n orientation: props.orientation ?? Orientation.Horizontal,\n dynamicNodeHeights: new Map(),\n resetIndex: 0,\n };\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: VirtualizedPropertyGridProps, prevState: VirtualizedPropertyGridState) {\n if (this.props.orientation !== prevProps.orientation\n || this.props.isOrientationFixed !== prevProps.isOrientationFixed\n || this.props.horizontalOrientationMinWidth !== prevProps.horizontalOrientationMinWidth\n || this.props.width !== prevProps.width)\n this.updateOrientation(this.props.width);\n\n if (this.props.model !== prevProps.model) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(0);\n }\n\n if (this.props.highlight !== prevProps.highlight && this.props.highlight?.activeHighlight && this.state.gridItems.length !== 0) {\n let index = 0;\n let foundMatchingItem = false;\n for (const item of this.state.gridItems) {\n if (item instanceof MutableCategorizedPrimitiveProperty && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.derivedRecord.property.name\n || item instanceof MutableGridCategory && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.name) {\n foundMatchingItem = true;\n break;\n }\n index++;\n }\n if (foundMatchingItem) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.scrollToItem(index);\n }\n }\n\n if (this.state.dynamicNodeHeights !== prevState.dynamicNodeHeights) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(this.state.resetIndex);\n }\n }\n\n /** @internal */\n public static getDerivedStateFromProps(props: VirtualizedPropertyGridProps, state: VirtualizedPropertyGridState): VirtualizedPropertyGridState | null {\n return {\n ...state,\n gridItems: props.model.getVisibleFlatGrid(),\n };\n }\n\n private updateOrientation(width: number) {\n const { orientation, isOrientationFixed, horizontalOrientationMinWidth } = { ...this.props };\n const currentOrientation = PropertyGridCommons.getCurrentOrientation(width, orientation, isOrientationFixed, horizontalOrientationMinWidth);\n\n if (currentOrientation !== this.state.orientation) {\n this.setState({ orientation: currentOrientation });\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(0);\n }\n }\n\n /**\n * Calculate given node height depending on it's type, position in category, parent category depth and current orientation.\n * @param node FlatGridItem node for which to calculate height\n * @returns current height of node.\n */\n private calculateNodeHeight(node: FlatGridItem) {\n const categoryHeaderHeight = 35;\n const categoryHeaderPadding = 4;\n const categoryPropertyHeight = 27;\n const bottomBorderPadding = 5;\n const verticalPrimitivePropertyHeight = 55;\n\n return getPropertyHeight(this.state) + node.lastInNumberOfCategories * bottomBorderPadding;\n\n function getPropertyHeight(state: VirtualizedPropertyGridState) {\n const dynamicHeight = state.dynamicNodeHeights.get(node.key);\n if (dynamicHeight !== undefined) {\n if (node instanceof MutableCustomGridCategory) {\n return categoryHeaderHeight + categoryHeaderPadding\n + (node.isExpanded ? dynamicHeight + bottomBorderPadding : 0);\n }\n\n return dynamicHeight + (state.orientation === Orientation.Vertical ? 28 : 0);\n }\n\n if (node.type === FlatGridItemType.Category) {\n return categoryHeaderHeight + categoryHeaderPadding;\n }\n\n if (state.orientation === Orientation.Vertical && node.type === FlatGridItemType.Primitive) {\n return verticalPrimitivePropertyHeight;\n }\n\n return categoryPropertyHeight;\n }\n }\n\n private _handleNodeHeightChange = (index: number, key: string, newHeight: number) => {\n if (this.state.dynamicNodeHeights.get(key) === newHeight) {\n return;\n }\n\n this.setState((state) => {\n return {\n ...state,\n dynamicNodeHeights: new Map(state.dynamicNodeHeights).set(key, newHeight),\n resetIndex: index,\n };\n });\n };\n\n private _calculateNodeHeightByIndex = (index: number) => {\n const node = this.state.gridItems[index];\n return this.calculateNodeHeight(node);\n };\n\n private calculateEstimatedHeight() {\n let sum = 0;\n for (const node of this.state.gridItems)\n sum += this.calculateNodeHeight(node);\n\n return Math.ceil(sum / this.state.gridItems.length);\n }\n\n private _getNodeKey = (index: number) => {\n const node = this.state.gridItems[index];\n return node.key;\n };\n\n /** @internal */\n public override render() {\n return <ColumnResizingPropertyListPropsSupplier\n orientation={this.state.orientation}\n width={this.props.width}\n minLabelWidth={this.props.minLabelWidth}\n minValueWidth={this.props.minValueWidth}\n actionButtonWidth={this.props.actionButtonWidth}\n >\n {(columnResizeContext) => (\n <PropertyGridEventsRelatedPropsSupplier\n isPropertySelectionEnabled={this.props.isPropertySelectionEnabled ?? false}\n isPropertySelectionOnRightClickEnabled={this.props.isPropertySelectionOnRightClickEnabled}\n isPropertyEditingEnabled={this.props.isPropertyEditingEnabled}\n onPropertyContextMenu={this.props.onPropertyContextMenu}\n onPropertyUpdated={this.props.onPropertyUpdated}\n onPropertySelectionChanged={this.props.onPropertySelectionChanged}\n isPropertyHoverEnabled={this.props.isPropertyHoverEnabled ?? false}\n >\n {(selectionContext) => {\n const gridContext: VirtualizedPropertyGridContext = {\n orientation: columnResizeContext.orientation,\n gridWidth: this.props.width,\n\n isPropertyHoverEnabled: selectionContext.isPropertyHoverEnabled,\n isPropertySelectionEnabled: selectionContext.isPropertySelectionEnabled,\n selectedPropertyKey: selectionContext.selectedPropertyKey,\n\n onPropertyClicked: selectionContext.onPropertyClicked,\n onPropertyRightClicked: selectionContext.onPropertyRightClicked,\n onPropertyContextMenu: selectionContext.onPropertyContextMenu,\n\n editingPropertyKey: selectionContext.editingPropertyKey,\n onEditCommit: selectionContext.onEditCommit,\n onEditCancel: selectionContext.onEditCancel,\n\n eventHandler: this.props.eventHandler,\n dataProvider: this.props.dataProvider,\n\n actionButtonRenderers: this.props.actionButtonRenderers,\n propertyValueRendererManager: this.props.propertyValueRendererManager,\n propertyCategoryRendererManager: this.props.propertyCategoryRendererManager,\n\n columnRatio: columnResizeContext.columnRatio,\n columnInfo: columnResizeContext.columnInfo,\n isResizeHandleBeingDragged: columnResizeContext.isResizeHandleBeingDragged,\n isResizeHandleHovered: columnResizeContext.isResizeHandleHovered,\n onColumnRatioChanged: columnResizeContext.onColumnChanged,\n onResizeHandleDragChanged: columnResizeContext.onResizeHandleDragChanged,\n onResizeHandleHoverChanged: columnResizeContext.onResizeHandleHoverChanged,\n\n highlight: this.props.highlight,\n };\n\n const renderContext: PropertyGridInternalContext = {\n gridItems: this.state.gridItems,\n gridEventHandler: this.props.eventHandler,\n gridModel: this.props.model,\n style: this.props.style,\n className: this.props.className,\n onItemHeightChanged: this._handleNodeHeightChange,\n gridContext,\n };\n\n return (\n <PropertyGridInternalContextProvider value={renderContext}>\n <div className={classnames(\"components-virtualized-property-grid\", \"components-smallEditor-host\")}>\n <VariableSizeList\n className={classnames(\"components-property-grid-wrapper\", \"ReactWindow__VariableSizeList\", this.props.className)}\n width={this.props.width}\n height={this.props.height}\n itemCount={this.state.gridItems.length}\n itemSize={this._calculateNodeHeightByIndex}\n estimatedItemSize={this.calculateEstimatedHeight()}\n overscanCount={10}\n layout=\"vertical\"\n style={this.props.style}\n itemKey={this._getNodeKey}\n ref={this._listRef}\n >\n {FlatGridItemNode}\n </VariableSizeList>\n </div>\n </PropertyGridInternalContextProvider>\n );\n }}\n </PropertyGridEventsRelatedPropsSupplier >\n )}\n </ColumnResizingPropertyListPropsSupplier>;\n }\n}\n\nconst FlatGridItemNode = React.memo(\n ({ index, style: virtualizedListStyle }: ListChildComponentProps) => {\n const { gridItems, gridEventHandler, gridModel, gridContext, className, style, onItemHeightChanged } = usePropertyGridInternalContext(FlatGridItemNode);\n const node = gridItems[index];\n\n const onExpansionToggled = React.useCallback(\n () => gridEventHandler.onExpansionToggled(node.selectionKey),\n [gridEventHandler, node.selectionKey],\n );\n const onHeightChanged = React.useCallback(\n (newHeight: number) => onItemHeightChanged(index, node.key, newHeight),\n [onItemHeightChanged, index, node.key],\n );\n\n function getDisplayNode() {\n const lastInNumberOfCategories = node.lastInNumberOfCategories;\n switch (node.type) {\n case FlatGridItemType.Category:\n const categoryRendererManager = gridContext.propertyCategoryRendererManager\n ?? PropertyCategoryRendererManager.defaultManager;\n const customRenderer = categoryRendererManager.getCategoryComponent(node);\n const wrapperClassName = classnames(\n \"virtualized-grid-node-content\",\n customRenderer !== undefined ? \"virtualized-grid-node-custom-category\" : \"virtualized-grid-node-category\",\n );\n return (\n <FlatItemNestedBorderWrapper\n borderCount={node.depth}\n bottomBorderCount={lastInNumberOfCategories}\n className={wrapperClassName}\n >\n <PropertyCategoryBlock\n className={className}\n style={style}\n category={node.derivedCategory}\n onExpansionToggled={onExpansionToggled}\n highlight={gridContext.highlight?.filteredTypes?.includes(FilteredType.Category) ?\n gridContext.highlight :\n undefined\n }\n >\n {customRenderer !== undefined && (\n <CustomCategoryContent\n renderer={customRenderer}\n categoryItem={node}\n gridContext={gridContext}\n onHeightChanged={onHeightChanged}\n />\n )}\n </PropertyCategoryBlock>\n </FlatItemNestedBorderWrapper>\n );\n case FlatGridItemType.Array:\n case FlatGridItemType.Struct:\n case FlatGridItemType.Primitive:\n const selectionKey = node.selectionKey;\n const parentCategoryItem = gridModel.getItem(node.parentCategorySelectionKey) as GridCategoryItem;\n\n return (\n <FlatItemNestedBorderWrapper\n borderCount={parentCategoryItem.depth + 1}\n bottomBorderCount={lastInNumberOfCategories}\n className=\"virtualized-grid-node-content\"\n >\n <FlatPropertyRenderer\n key={node.key}\n uniqueKey={selectionKey}\n propertyRecord={node.derivedRecord}\n orientation={gridContext.orientation}\n indentation={node.depth}\n width={gridContext.gridWidth}\n\n isHoverable={gridContext.isPropertyHoverEnabled}\n isSelectable={gridContext.isPropertySelectionEnabled}\n isSelected={selectionKey === gridContext.selectedPropertyKey}\n\n onClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyClicked : undefined}\n onRightClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyRightClicked : undefined}\n onContextMenu={gridContext.onPropertyContextMenu}\n\n category={parentCategoryItem.derivedCategory}\n isEditing={selectionKey === gridContext.editingPropertyKey}\n onEditCommit={gridContext.onEditCommit}\n onEditCancel={gridContext.onEditCancel}\n\n isExpanded={node.isExpanded}\n onExpansionToggled={onExpansionToggled}\n onHeightChanged={onHeightChanged}\n\n actionButtonRenderers={gridContext.actionButtonRenderers}\n propertyValueRendererManager={gridContext.propertyValueRendererManager}\n\n columnRatio={gridContext.columnRatio}\n columnInfo={gridContext.columnInfo}\n isResizeHandleBeingDragged={gridContext.isResizeHandleBeingDragged}\n isResizeHandleHovered={gridContext.isResizeHandleHovered}\n onColumnRatioChanged={gridContext.onColumnRatioChanged}\n onResizeHandleDragChanged={gridContext.onResizeHandleDragChanged}\n onResizeHandleHoverChanged={gridContext.onResizeHandleHoverChanged}\n\n highlight={gridContext.highlight ?\n { applyOnLabel: (gridContext.highlight.filteredTypes?.includes(FilteredType.Label)) ?? false, applyOnValue: (gridContext.highlight.filteredTypes?.includes(FilteredType.Value)) ?? false, ...gridContext.highlight } :\n undefined\n }\n />\n </FlatItemNestedBorderWrapper>\n );\n }\n }\n\n return (\n <div className=\"virtualized-grid-node\" style={virtualizedListStyle}>\n {getDisplayNode()}\n </div>\n );\n },\n areEqual,\n);\n\nFlatGridItemNode.displayName = \"FlatGridItemNode\";\n\ninterface CustomCategoryContentProps {\n categoryItem: GridCategoryItem;\n renderer: React.ComponentType<PropertyCategoryRendererProps>;\n gridContext: VirtualizedPropertyGridContext;\n onHeightChanged: (newHeight: number) => void;\n}\n\nconst CustomCategoryContent: React.FC<CustomCategoryContentProps> = (props) => {\n const { onHeightChanged } = props;\n const divRef = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(\n () => {\n assert(divRef.current !== null);\n const contentHeight = divRef.current.getBoundingClientRect().height;\n onHeightChanged(contentHeight);\n },\n [props.gridContext.orientation, onHeightChanged],\n );\n\n return (\n <div ref={divRef}>\n {React.createElement(props.renderer, props)}\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"VirtualizedPropertyGrid.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGrid.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n\n/** @packageDocumentation\n * @module PropertyGrid\n */\nimport \"./VirtualizedPropertyGrid.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { areEqual, ListChildComponentProps, VariableSizeList } from \"react-window\";\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { Orientation, RatioChangeResult } from \"@itwin/core-react\";\nimport { createContextWithMandatoryProvider } from \"../../common/UseContextWithMandatoryProvider\";\nimport { PropertyUpdatedArgs } from \"../../editors/EditorContainer\";\nimport { ActionButtonRenderer } from \"../../properties/renderers/ActionButtonRenderer\";\nimport { PropertyGridColumnInfo } from \"../../properties/renderers/PropertyGridColumns\";\nimport { PropertyValueRendererManager } from \"../../properties/ValueRendererManager\";\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\nimport { FlatGridItem, GridCategoryItem } from \"../internal/flat-items/FlatGridItem\";\nimport { MutableCategorizedPrimitiveProperty } from \"../internal/flat-items/MutableCategorizedPrimitiveProperty\";\nimport { MutableCustomGridCategory } from \"../internal/flat-items/MutableCustomGridCategory\";\nimport { FlatGridItemType } from \"../internal/flat-items/MutableFlatGridItem\";\nimport { MutableGridCategory } from \"../internal/flat-items/MutableGridCategory\";\nimport { FlatPropertyRenderer } from \"../internal/flat-properties/FlatPropertyRenderer\";\nimport { IPropertyGridEventHandler } from \"../internal/PropertyGridEventHandler\";\nimport { IPropertyGridModel } from \"../internal/PropertyGridModel\";\nimport { PropertyCategoryRendererManager, PropertyCategoryRendererProps } from \"../PropertyCategoryRendererManager\";\nimport { IPropertyDataProvider, PropertyCategory } from \"../PropertyDataProvider\";\nimport { ColumnResizingPropertyListPropsSupplier } from \"./ColumnResizingPropertyListPropsSupplier\";\nimport { FlatItemNestedBorderWrapper } from \"./FlatItemNestedBorderWrapper\";\nimport { PropertyCategoryBlock } from \"./PropertyCategoryBlock\";\nimport { CommonPropertyGridProps, PropertyGridCommons, PropertyGridContentHighlightProps } from \"./PropertyGridCommons\";\nimport { PropertyGridEventsRelatedPropsSupplier } from \"./PropertyGridEventsRelatedPropsSupplier\";\n\n/** Properties for [[VirtualizedPropertyGrid]] React component\n * @public\n */\nexport interface VirtualizedPropertyGridProps extends CommonPropertyGridProps {\n /** Property grid view model that defines what needs to be rendered */\n model: IPropertyGridModel;\n /** Handler of the events raised from the property grid */\n eventHandler: IPropertyGridEventHandler;\n /** Property data provider used by the property grid */\n dataProvider: IPropertyDataProvider;\n /** Properties for highlighting property data in the grid. */\n highlight?: PropertyGridContentHighlightProps;\n /** Custom property category renderer manager. Defaults to [[PropertyCategoryRendererManager.defaultManager]]. */\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n /** Width of the property grid component. */\n width: number;\n /** Height of the property grid component. */\n height: number;\n}\n\n/** State of [[VirtualizedPropertyGrid]] React component\n * @internal\n */\ninterface VirtualizedPropertyGridState {\n /** List of PropertyGrid categories */\n gridItems: FlatGridItem[];\n /** Actual orientation used by the property grid */\n orientation: Orientation;\n /** Keeps record of dynamic node heights */\n dynamicNodeHeights: Map<string, number>;\n /** When resetting node height cache, marks the point at which heights have become stale */\n resetIndex: number;\n}\n\n/**\n * Context of [[VirtualizedPropertyGrid]] component.\n * @internal\n */\nexport interface PropertyGridInternalContext {\n gridItems: FlatGridItem[];\n gridEventHandler: IPropertyGridEventHandler;\n gridModel: IPropertyGridModel;\n\n style?: React.CSSProperties;\n className?: string;\n gridContext: VirtualizedPropertyGridContext;\n onItemHeightChanged: (index: number, key: string, height: number) => void;\n}\n\n/**\n * Context of the surrounding [VirtualizedPropertyGrid]($components-react) component.\n * @public\n */\nexport interface VirtualizedPropertyGridContext {\n orientation: Orientation;\n gridWidth: number;\n\n isPropertyHoverEnabled: boolean;\n isPropertySelectionEnabled: boolean;\n selectedPropertyKey?: string;\n\n onPropertyClicked?: (property: PropertyRecord, key?: string) => void;\n onPropertyRightClicked?: (property: PropertyRecord, key?: string) => void;\n onPropertyContextMenu?: (property: PropertyRecord, e: React.MouseEvent) => void;\n\n editingPropertyKey?: string;\n onEditCommit?: (args: PropertyUpdatedArgs, category: PropertyCategory) => void;\n onEditCancel?: () => void;\n\n eventHandler: IPropertyGridEventHandler;\n dataProvider: IPropertyDataProvider;\n\n actionButtonRenderers?: ActionButtonRenderer[];\n propertyValueRendererManager?: PropertyValueRendererManager;\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n\n columnRatio: number;\n columnInfo: PropertyGridColumnInfo;\n isResizeHandleBeingDragged: boolean;\n isResizeHandleHovered: boolean;\n onColumnRatioChanged: (ratio: number) => void | RatioChangeResult;\n onResizeHandleDragChanged: (newValue: boolean) => void;\n onResizeHandleHoverChanged: (newValue: boolean) => void;\n\n highlight?: PropertyGridContentHighlightProps;\n}\n\nconst [\n PropertyGridInternalContextProvider,\n _PropertyGridInternalContextConsumer,\n usePropertyGridInternalContext,\n] = createContextWithMandatoryProvider<PropertyGridInternalContext>(\"PropertyGridInternalContext\");\n\n/**\n * VirtualizedPropertyGrid React component.\n * @public\n */\nexport class VirtualizedPropertyGrid extends React.Component<VirtualizedPropertyGridProps, VirtualizedPropertyGridState> {\n private _listRef = React.createRef<VariableSizeList>();\n\n /** @internal */\n constructor(props: VirtualizedPropertyGridProps) {\n super(props);\n this.state = {\n gridItems: [],\n orientation: props.orientation ?? Orientation.Horizontal,\n dynamicNodeHeights: new Map(),\n resetIndex: 0,\n };\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: VirtualizedPropertyGridProps, prevState: VirtualizedPropertyGridState) {\n if (this.props.orientation !== prevProps.orientation\n || this.props.isOrientationFixed !== prevProps.isOrientationFixed\n || this.props.horizontalOrientationMinWidth !== prevProps.horizontalOrientationMinWidth\n || this.props.width !== prevProps.width)\n this.updateOrientation(this.props.width);\n\n if (this.props.model !== prevProps.model) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(0);\n }\n\n if (this.props.highlight !== prevProps.highlight && this.props.highlight?.activeHighlight && this.state.gridItems.length !== 0) {\n let index = 0;\n let foundMatchingItem = false;\n for (const item of this.state.gridItems) {\n if (item instanceof MutableCategorizedPrimitiveProperty && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.derivedRecord.property.name\n || item instanceof MutableGridCategory && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.name) {\n foundMatchingItem = true;\n break;\n }\n index++;\n }\n if (foundMatchingItem) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.scrollToItem(index);\n }\n }\n\n if (this.state.dynamicNodeHeights !== prevState.dynamicNodeHeights) {\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(this.state.resetIndex);\n }\n }\n\n /** @internal */\n public static getDerivedStateFromProps(props: VirtualizedPropertyGridProps, state: VirtualizedPropertyGridState): VirtualizedPropertyGridState | null {\n return {\n ...state,\n gridItems: props.model.getVisibleFlatGrid(),\n };\n }\n\n private updateOrientation(width: number) {\n const { orientation, isOrientationFixed, horizontalOrientationMinWidth } = { ...this.props };\n const currentOrientation = PropertyGridCommons.getCurrentOrientation(width, orientation, isOrientationFixed, horizontalOrientationMinWidth);\n\n if (currentOrientation !== this.state.orientation) {\n this.setState({ orientation: currentOrientation });\n // istanbul ignore else\n if (this._listRef.current)\n this._listRef.current.resetAfterIndex(0);\n }\n }\n\n /**\n * Calculate given node height depending on it's type, position in category, parent category depth and current orientation.\n * @param node FlatGridItem node for which to calculate height\n * @returns current height of node.\n */\n private calculateNodeHeight(node: FlatGridItem) {\n const categoryHeaderHeight = 38;\n const categoryHeaderPadding = 4;\n const categoryPropertyHeight = 27;\n const bottomBorderPadding = 5;\n const verticalPrimitivePropertyHeight = 55;\n\n return getPropertyHeight(this.state) + node.lastInNumberOfCategories * bottomBorderPadding;\n\n function getPropertyHeight(state: VirtualizedPropertyGridState) {\n const dynamicHeight = state.dynamicNodeHeights.get(node.key);\n if (dynamicHeight !== undefined) {\n if (node instanceof MutableCustomGridCategory) {\n return categoryHeaderHeight + categoryHeaderPadding\n + (node.isExpanded ? dynamicHeight + bottomBorderPadding : 0);\n }\n\n return dynamicHeight + (state.orientation === Orientation.Vertical ? 28 : 0);\n }\n\n if (node.type === FlatGridItemType.Category) {\n return categoryHeaderHeight + categoryHeaderPadding;\n }\n\n if (state.orientation === Orientation.Vertical && node.type === FlatGridItemType.Primitive) {\n return verticalPrimitivePropertyHeight;\n }\n\n return categoryPropertyHeight;\n }\n }\n\n private _handleNodeHeightChange = (index: number, key: string, newHeight: number) => {\n if (this.state.dynamicNodeHeights.get(key) === newHeight) {\n return;\n }\n\n this.setState((state) => {\n return {\n ...state,\n dynamicNodeHeights: new Map(state.dynamicNodeHeights).set(key, newHeight),\n resetIndex: index,\n };\n });\n };\n\n private _calculateNodeHeightByIndex = (index: number) => {\n const node = this.state.gridItems[index];\n return this.calculateNodeHeight(node);\n };\n\n private calculateEstimatedHeight() {\n let sum = 0;\n for (const node of this.state.gridItems)\n sum += this.calculateNodeHeight(node);\n\n return Math.ceil(sum / this.state.gridItems.length);\n }\n\n private _getNodeKey = (index: number) => {\n const node = this.state.gridItems[index];\n return node.key;\n };\n\n /** @internal */\n public override render() {\n return <ColumnResizingPropertyListPropsSupplier\n orientation={this.state.orientation}\n width={this.props.width}\n minLabelWidth={this.props.minLabelWidth}\n minValueWidth={this.props.minValueWidth}\n actionButtonWidth={this.props.actionButtonWidth}\n >\n {(columnResizeContext) => (\n <PropertyGridEventsRelatedPropsSupplier\n isPropertySelectionEnabled={this.props.isPropertySelectionEnabled ?? false}\n isPropertySelectionOnRightClickEnabled={this.props.isPropertySelectionOnRightClickEnabled}\n isPropertyEditingEnabled={this.props.isPropertyEditingEnabled}\n onPropertyContextMenu={this.props.onPropertyContextMenu}\n onPropertyUpdated={this.props.onPropertyUpdated}\n onPropertySelectionChanged={this.props.onPropertySelectionChanged}\n isPropertyHoverEnabled={this.props.isPropertyHoverEnabled ?? false}\n >\n {(selectionContext) => {\n const gridContext: VirtualizedPropertyGridContext = {\n orientation: columnResizeContext.orientation,\n gridWidth: this.props.width,\n\n isPropertyHoverEnabled: selectionContext.isPropertyHoverEnabled,\n isPropertySelectionEnabled: selectionContext.isPropertySelectionEnabled,\n selectedPropertyKey: selectionContext.selectedPropertyKey,\n\n onPropertyClicked: selectionContext.onPropertyClicked,\n onPropertyRightClicked: selectionContext.onPropertyRightClicked,\n onPropertyContextMenu: selectionContext.onPropertyContextMenu,\n\n editingPropertyKey: selectionContext.editingPropertyKey,\n onEditCommit: selectionContext.onEditCommit,\n onEditCancel: selectionContext.onEditCancel,\n\n eventHandler: this.props.eventHandler,\n dataProvider: this.props.dataProvider,\n\n actionButtonRenderers: this.props.actionButtonRenderers,\n propertyValueRendererManager: this.props.propertyValueRendererManager,\n propertyCategoryRendererManager: this.props.propertyCategoryRendererManager,\n\n columnRatio: columnResizeContext.columnRatio,\n columnInfo: columnResizeContext.columnInfo,\n isResizeHandleBeingDragged: columnResizeContext.isResizeHandleBeingDragged,\n isResizeHandleHovered: columnResizeContext.isResizeHandleHovered,\n onColumnRatioChanged: columnResizeContext.onColumnChanged,\n onResizeHandleDragChanged: columnResizeContext.onResizeHandleDragChanged,\n onResizeHandleHoverChanged: columnResizeContext.onResizeHandleHoverChanged,\n\n highlight: this.props.highlight,\n };\n\n const renderContext: PropertyGridInternalContext = {\n gridItems: this.state.gridItems,\n gridEventHandler: this.props.eventHandler,\n gridModel: this.props.model,\n style: this.props.style,\n className: this.props.className,\n onItemHeightChanged: this._handleNodeHeightChange,\n gridContext,\n };\n\n return (\n <PropertyGridInternalContextProvider value={renderContext}>\n <div className={classnames(\"components-virtualized-property-grid\", \"components-smallEditor-host\")}>\n <VariableSizeList\n className={classnames(\"components-property-grid-wrapper\", \"ReactWindow__VariableSizeList\", this.props.className)}\n width={this.props.width}\n height={this.props.height}\n itemCount={this.state.gridItems.length}\n itemSize={this._calculateNodeHeightByIndex}\n estimatedItemSize={this.calculateEstimatedHeight()}\n overscanCount={10}\n layout=\"vertical\"\n style={this.props.style}\n itemKey={this._getNodeKey}\n ref={this._listRef}\n >\n {FlatGridItemNode}\n </VariableSizeList>\n </div>\n </PropertyGridInternalContextProvider>\n );\n }}\n </PropertyGridEventsRelatedPropsSupplier >\n )}\n </ColumnResizingPropertyListPropsSupplier>;\n }\n}\n\nconst FlatGridItemNode = React.memo(\n ({ index, style: virtualizedListStyle }: ListChildComponentProps) => {\n const { gridItems, gridEventHandler, gridModel, gridContext, className, style, onItemHeightChanged } = usePropertyGridInternalContext(FlatGridItemNode);\n const node = gridItems[index];\n\n const onExpansionToggled = React.useCallback(\n () => gridEventHandler.onExpansionToggled(node.selectionKey),\n [gridEventHandler, node.selectionKey],\n );\n const onHeightChanged = React.useCallback(\n (newHeight: number) => onItemHeightChanged(index, node.key, newHeight),\n [onItemHeightChanged, index, node.key],\n );\n\n function getDisplayNode() {\n const lastInNumberOfCategories = node.lastInNumberOfCategories;\n switch (node.type) {\n case FlatGridItemType.Category:\n const categoryRendererManager = gridContext.propertyCategoryRendererManager\n ?? PropertyCategoryRendererManager.defaultManager;\n const customRenderer = categoryRendererManager.getCategoryComponent(node);\n const wrapperClassName = classnames(\n \"virtualized-grid-node-content\",\n customRenderer !== undefined ? \"virtualized-grid-node-custom-category\" : \"virtualized-grid-node-category\",\n );\n return (\n <FlatItemNestedBorderWrapper\n borderCount={node.depth}\n bottomBorderCount={lastInNumberOfCategories}\n className={wrapperClassName}\n >\n <PropertyCategoryBlock\n className={className}\n style={style}\n category={node.derivedCategory}\n onExpansionToggled={onExpansionToggled}\n highlight={gridContext.highlight?.filteredTypes?.includes(FilteredType.Category) ?\n gridContext.highlight :\n undefined\n }\n >\n {customRenderer !== undefined && (\n <CustomCategoryContent\n renderer={customRenderer}\n categoryItem={node}\n gridContext={gridContext}\n onHeightChanged={onHeightChanged}\n />\n )}\n </PropertyCategoryBlock>\n </FlatItemNestedBorderWrapper>\n );\n case FlatGridItemType.Array:\n case FlatGridItemType.Struct:\n case FlatGridItemType.Primitive:\n const selectionKey = node.selectionKey;\n const parentCategoryItem = gridModel.getItem(node.parentCategorySelectionKey) as GridCategoryItem;\n\n return (\n <FlatItemNestedBorderWrapper\n borderCount={parentCategoryItem.depth + 1}\n bottomBorderCount={lastInNumberOfCategories}\n className=\"virtualized-grid-node-content\"\n >\n <FlatPropertyRenderer\n key={node.key}\n uniqueKey={selectionKey}\n propertyRecord={node.derivedRecord}\n orientation={gridContext.orientation}\n indentation={node.depth}\n width={gridContext.gridWidth}\n\n isHoverable={gridContext.isPropertyHoverEnabled}\n isSelectable={gridContext.isPropertySelectionEnabled}\n isSelected={selectionKey === gridContext.selectedPropertyKey}\n\n onClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyClicked : undefined}\n onRightClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyRightClicked : undefined}\n onContextMenu={gridContext.onPropertyContextMenu}\n\n category={parentCategoryItem.derivedCategory}\n isEditing={selectionKey === gridContext.editingPropertyKey}\n onEditCommit={gridContext.onEditCommit}\n onEditCancel={gridContext.onEditCancel}\n\n isExpanded={node.isExpanded}\n onExpansionToggled={onExpansionToggled}\n onHeightChanged={onHeightChanged}\n\n actionButtonRenderers={gridContext.actionButtonRenderers}\n propertyValueRendererManager={gridContext.propertyValueRendererManager}\n\n columnRatio={gridContext.columnRatio}\n columnInfo={gridContext.columnInfo}\n isResizeHandleBeingDragged={gridContext.isResizeHandleBeingDragged}\n isResizeHandleHovered={gridContext.isResizeHandleHovered}\n onColumnRatioChanged={gridContext.onColumnRatioChanged}\n onResizeHandleDragChanged={gridContext.onResizeHandleDragChanged}\n onResizeHandleHoverChanged={gridContext.onResizeHandleHoverChanged}\n\n highlight={gridContext.highlight ?\n { applyOnLabel: (gridContext.highlight.filteredTypes?.includes(FilteredType.Label)) ?? false, applyOnValue: (gridContext.highlight.filteredTypes?.includes(FilteredType.Value)) ?? false, ...gridContext.highlight } :\n undefined\n }\n />\n </FlatItemNestedBorderWrapper>\n );\n }\n }\n\n return (\n <div className=\"virtualized-grid-node\" style={virtualizedListStyle}>\n {getDisplayNode()}\n </div>\n );\n },\n areEqual,\n);\n\nFlatGridItemNode.displayName = \"FlatGridItemNode\";\n\ninterface CustomCategoryContentProps {\n categoryItem: GridCategoryItem;\n renderer: React.ComponentType<PropertyCategoryRendererProps>;\n gridContext: VirtualizedPropertyGridContext;\n onHeightChanged: (newHeight: number) => void;\n}\n\nconst CustomCategoryContent: React.FC<CustomCategoryContentProps> = (props) => {\n const { onHeightChanged } = props;\n const divRef = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(\n () => {\n assert(divRef.current !== null);\n const contentHeight = divRef.current.getBoundingClientRect().height;\n onHeightChanged(contentHeight);\n },\n [props.gridContext.orientation, onHeightChanged],\n );\n\n return (\n <div ref={divRef}>\n {React.createElement(props.renderer, props)}\n </div>\n );\n};\n"]}
@@ -23,19 +23,19 @@
23
23
 
24
24
  .virtualized-grid-node {
25
25
  > :not(.virtualized-grid-node-category) {
26
- background: var(--iui-color-background-1);
26
+ background: var(--iui-color-background);
27
27
  }
28
28
 
29
29
  .nested-border-middle {
30
30
  height: 100%;
31
31
  padding: 0 4px;
32
32
  box-sizing: border-box;
33
- border-left: 1px solid var(--iui-color-background-4);
34
- border-right: 1px solid var(--iui-color-background-4);
33
+ border-left: 1px solid var(--iui-color-border);
34
+ border-right: 1px solid var(--iui-color-border);
35
35
  }
36
36
 
37
37
  .nested-border-bottom {
38
- border-bottom: 1px solid var(--iui-color-background-4);
38
+ border-bottom: 1px solid var(--iui-color-border);
39
39
  padding-bottom: 4px;
40
40
  }
41
41
 
@@ -50,7 +50,7 @@
50
50
  // Compensate the negative margin by adding padding
51
51
  padding: 0 12px;
52
52
 
53
- background: $buic-row-hover;
53
+ background: var(--iui-color-background-hover);
54
54
  }
55
55
  }
56
56
  }
@@ -61,11 +61,20 @@
61
61
  // Compensate the negative margin by adding padding (minus one for border)
62
62
  padding: 0px 11px;
63
63
 
64
- background-color: $buic-row-selection;
65
- border: 1px solid $buic-foreground-primary;
64
+ background-color: var(--iui-color-background-accent-muted);
65
+ border: 1px solid var(--iui-color-border-accent);
66
+ }
66
67
 
68
+ .components--hoverable {
67
69
  &:hover {
68
- background: $buic-row-hover;
70
+ background: var(--iui-color-background-hover);
71
+
72
+ &:not(.components--selected) {
73
+ // Highlight the whole row of inner-most expandable block
74
+ margin: 0 -4px;
75
+ // Compensate the negative margin by adding padding
76
+ padding: 0 12px;
77
+ }
69
78
  }
70
79
  }
71
80
  }
@@ -1,25 +1,26 @@
1
1
  /// <reference types="react" />
2
- import { HighlightingComponentProps } from "../../common/HighlightingComponentProps";
3
- import { FilteredType } from "../dataproviders/filterers/PropertyDataFiltererBase";
4
2
  import { PropertyCategoryRendererManager } from "../PropertyCategoryRendererManager";
5
3
  import { IPropertyDataProvider } from "../PropertyDataProvider";
6
- import { CommonPropertyGridProps } from "./PropertyGridCommons";
4
+ import { CommonPropertyGridProps, PropertyGridContentHighlightProps } from "./PropertyGridCommons";
7
5
  /** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component
8
- * @beta
6
+ * @public
9
7
  */
10
8
  export interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {
9
+ /** Property data provider used by the property grid */
11
10
  dataProvider: IPropertyDataProvider;
12
- highlight?: HighlightingComponentProps & {
13
- filteredTypes?: FilteredType[];
14
- };
11
+ /** Properties for highlighting property data in the grid. */
12
+ highlight?: PropertyGridContentHighlightProps;
13
+ /** Custom property category renderer manager. Defaults to [[PropertyCategoryRendererManager.defaultManager]]. */
15
14
  propertyCategoryRendererManager?: PropertyCategoryRendererManager;
15
+ /** Width of the property grid component. */
16
16
  width: number;
17
+ /** Height of the property grid component. */
17
18
  height: number;
18
19
  }
19
20
  /**
20
- * VirtualizedPropertyGrid React Component which takes dataProvider and
21
- * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler
22
- * @beta
21
+ * [[VirtualizedPropertyGrid]] React Component which takes a data provider and
22
+ * sets up default implementations for [[IPropertyGridModelSource]] and [[IPropertyGridEventHandler]]
23
+ * @public
23
24
  */
24
25
  export declare function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps): JSX.Element;
25
26
  //# sourceMappingURL=VirtualizedPropertyGridWithDataProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AAEnF,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,MAAM,WAAW,4CAA6C,SAAQ,uBAAuB;IAC3F,YAAY,EAAE,qBAAqB,CAAC;IACpC,SAAS,CAAC,EAAE,0BAA0B,GAAG;QACvC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;KAChC,CAAC;IACF,+BAA+B,CAAC,EAAE,+BAA+B,CAAC;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,uCAAuC,CAAC,KAAK,EAAE,4CAA4C,eAc1G"}
1
+ {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":";AAYA,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAGnG;;GAEG;AACH,MAAM,WAAW,4CAA6C,SAAQ,uBAAuB;IAC3F,uDAAuD;IACvD,YAAY,EAAE,qBAAqB,CAAC;IACpC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,iCAAiC,CAAC;IAC9C,iHAAiH;IACjH,+BAA+B,CAAC,EAAE,+BAA+B,CAAC;IAClE,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,uCAAuC,CAAC,KAAK,EAAE,4CAA4C,eAc1G"}
@@ -10,9 +10,9 @@ import { DelayedSpinner } from "../../common/DelayedSpinner";
10
10
  import { usePropertyGridEventHandler, usePropertyGridModel, usePropertyGridModelSource } from "../internal/PropertyGridHooks";
11
11
  import { VirtualizedPropertyGrid } from "./VirtualizedPropertyGrid";
12
12
  /**
13
- * VirtualizedPropertyGrid React Component which takes dataProvider and
14
- * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler
15
- * @beta
13
+ * [[VirtualizedPropertyGrid]] React Component which takes a data provider and
14
+ * sets up default implementations for [[IPropertyGridModelSource]] and [[IPropertyGridEventHandler]]
15
+ * @public
16
16
  */
17
17
  export function VirtualizedPropertyGridWithDataProvider(props) {
18
18
  const modelSource = usePropertyGridModelSource({ dataProvider: props.dataProvider });
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F;;GAEG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAI9H,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAepE;;;;GAIG;AACH,MAAM,UAAU,uCAAuC,CAAC,KAAmD;IACzG,MAAM,WAAW,GAAG,0BAA0B,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,2BAA2B,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CACL,6BAAK,SAAS,EAAC,6CAA6C;YAC1D,oBAAC,cAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAC3B,CACP,CAAC;KACH;IAED,OAAO,CAAC,oBAAC,uBAAuB,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC,CAAC;AAC5F,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 PropertyGrid\n */\n\nimport React from \"react\";\nimport { DelayedSpinner } from \"../../common/DelayedSpinner\";\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\nimport { usePropertyGridEventHandler, usePropertyGridModel, usePropertyGridModelSource } from \"../internal/PropertyGridHooks\";\nimport { PropertyCategoryRendererManager } from \"../PropertyCategoryRendererManager\";\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\nimport { CommonPropertyGridProps } from \"./PropertyGridCommons\";\nimport { VirtualizedPropertyGrid } from \"./VirtualizedPropertyGrid\";\n\n/** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component\n * @beta\n */\nexport interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {\n dataProvider: IPropertyDataProvider;\n highlight?: HighlightingComponentProps & {\n filteredTypes?: FilteredType[];\n };\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n width: number;\n height: number;\n}\n\n/**\n * VirtualizedPropertyGrid React Component which takes dataProvider and\n * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler\n * @beta\n */\nexport function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps) {\n const modelSource = usePropertyGridModelSource({ dataProvider: props.dataProvider });\n const model = usePropertyGridModel({ modelSource });\n const eventHandler = usePropertyGridEventHandler({ modelSource });\n\n if (!model) {\n return (\n <div className=\"components-virtualized-property-grid-loader\">\n <DelayedSpinner size=\"large\" />\n </div>\n );\n }\n\n return (<VirtualizedPropertyGrid {...props} model={model} eventHandler={eventHandler} />);\n}\n"]}
1
+ {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F;;GAEG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAI9H,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAkBpE;;;;GAIG;AACH,MAAM,UAAU,uCAAuC,CAAC,KAAmD;IACzG,MAAM,WAAW,GAAG,0BAA0B,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,2BAA2B,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CACL,6BAAK,SAAS,EAAC,6CAA6C;YAC1D,oBAAC,cAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAC3B,CACP,CAAC;KACH;IAED,OAAO,CAAC,oBAAC,uBAAuB,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC,CAAC;AAC5F,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 PropertyGrid\n */\n\nimport React from \"react\";\nimport { DelayedSpinner } from \"../../common/DelayedSpinner\";\nimport { usePropertyGridEventHandler, usePropertyGridModel, usePropertyGridModelSource } from \"../internal/PropertyGridHooks\";\nimport { PropertyCategoryRendererManager } from \"../PropertyCategoryRendererManager\";\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\nimport { CommonPropertyGridProps, PropertyGridContentHighlightProps } from \"./PropertyGridCommons\";\nimport { VirtualizedPropertyGrid } from \"./VirtualizedPropertyGrid\";\n\n/** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component\n * @public\n */\nexport interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {\n /** Property data provider used by the property grid */\n dataProvider: IPropertyDataProvider;\n /** Properties for highlighting property data in the grid. */\n highlight?: PropertyGridContentHighlightProps;\n /** Custom property category renderer manager. Defaults to [[PropertyCategoryRendererManager.defaultManager]]. */\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\n /** Width of the property grid component. */\n width: number;\n /** Height of the property grid component. */\n height: number;\n}\n\n/**\n * [[VirtualizedPropertyGrid]] React Component which takes a data provider and\n * sets up default implementations for [[IPropertyGridModelSource]] and [[IPropertyGridEventHandler]]\n * @public\n */\nexport function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps) {\n const modelSource = usePropertyGridModelSource({ dataProvider: props.dataProvider });\n const model = usePropertyGridModel({ modelSource });\n const eventHandler = usePropertyGridEventHandler({ modelSource });\n\n if (!model) {\n return (\n <div className=\"components-virtualized-property-grid-loader\">\n <DelayedSpinner size=\"large\" />\n </div>\n );\n }\n\n return (<VirtualizedPropertyGrid {...props} model={model} eventHandler={eventHandler} />);\n}\n"]}
@@ -69,32 +69,31 @@ export class FilteringPropertyDataProvider {
69
69
  }
70
70
  }
71
71
  async function matchHierarchy(filterer, categories, records, newRecords, parentMatchInfo) {
72
- var _a, _b, _c, _d, _e;
73
72
  const newCategories = [];
74
- newRecords = newRecords !== null && newRecords !== void 0 ? newRecords : {};
73
+ newRecords = newRecords ?? {};
75
74
  let matchesCount = 0;
76
75
  let allFilteredResultMatches = [];
77
76
  let allFilteredTypes = [];
78
77
  for (const category of categories) {
79
78
  const matchInfo = await filterer.categoryMatchesFilter(category, []);
80
79
  if (matchInfo.matchesFilter) {
81
- allFilteredResultMatches.push({ id: category.name, matchesCount: (_a = matchInfo.matchesCount) !== null && _a !== void 0 ? _a : 0 });
82
- allFilteredTypes = allFilteredTypes.concat((_b = matchInfo.filteredTypes) !== null && _b !== void 0 ? _b : []);
83
- matchesCount += (_c = matchInfo.matchesCount) !== null && _c !== void 0 ? _c : 0;
80
+ allFilteredResultMatches.push({ id: category.name, matchesCount: matchInfo.matchesCount ?? 0 });
81
+ allFilteredTypes = allFilteredTypes.concat(matchInfo.filteredTypes ?? []);
82
+ matchesCount += matchInfo.matchesCount ?? 0;
84
83
  }
85
- const childRecords = (_d = records[category.name]) !== null && _d !== void 0 ? _d : [];
84
+ const childRecords = records[category.name] ?? [];
86
85
  const { filteredRecords, matchesCount: count, filteredResultMatches, filteredTypes } = await matchRecordHierarchy(filterer, childRecords, []);
87
86
  allFilteredResultMatches = allFilteredResultMatches.concat(filteredResultMatches);
88
87
  allFilteredTypes = allFilteredTypes.concat(filteredTypes);
89
88
  matchesCount += count;
90
- const parentInfo = (parentMatchInfo === null || parentMatchInfo === void 0 ? void 0 : parentMatchInfo.matchesFilter) ? parentMatchInfo : matchInfo;
91
- const childCategories = (_e = category.childCategories) !== null && _e !== void 0 ? _e : [];
89
+ const parentInfo = parentMatchInfo?.matchesFilter ? parentMatchInfo : matchInfo;
90
+ const childCategories = category.childCategories ?? [];
92
91
  const { filteredCategories, matchesCount: childCount, filteredResultMatches: childFilteredResultMatches, filteredTypes: childFilteredTypes } = await matchHierarchy(filterer, childCategories, records, newRecords, parentInfo);
93
92
  allFilteredResultMatches = allFilteredResultMatches.concat(childFilteredResultMatches);
94
93
  allFilteredTypes = allFilteredTypes.concat(childFilteredTypes);
95
94
  matchesCount += childCount;
96
95
  let expand = !(count === 0 && childCount === 0);
97
- if (matchInfo.matchesFilter || ((parentMatchInfo === null || parentMatchInfo === void 0 ? void 0 : parentMatchInfo.matchesFilter) && parentMatchInfo.shouldForceIncludeDescendants)) {
96
+ if (matchInfo.matchesFilter || (parentMatchInfo?.matchesFilter && parentMatchInfo.shouldForceIncludeDescendants)) {
98
97
  newRecords[category.name] = records[category.name];
99
98
  if (matchInfo.matchesFilter) {
100
99
  expand = true;
@@ -102,7 +101,7 @@ async function matchHierarchy(filterer, categories, records, newRecords, parentM
102
101
  const newCategory = copyPropertyCategory(category, filteredCategories, expand);
103
102
  newCategories.push(newCategory);
104
103
  }
105
- if ((filteredRecords.length !== 0 || filteredCategories.length !== 0) && !matchInfo.matchesFilter && !((parentMatchInfo === null || parentMatchInfo === void 0 ? void 0 : parentMatchInfo.shouldExpandNodeParents) && parentMatchInfo.matchesFilter)) {
104
+ if ((filteredRecords.length !== 0 || filteredCategories.length !== 0) && !matchInfo.matchesFilter && !(parentMatchInfo?.shouldExpandNodeParents && parentMatchInfo.matchesFilter)) {
106
105
  const newCategory = copyPropertyCategory(category, filteredCategories, expand);
107
106
  newRecords[newCategory.name] = filteredRecords;
108
107
  newCategories.push(newCategory);
@@ -111,7 +110,6 @@ async function matchHierarchy(filterer, categories, records, newRecords, parentM
111
110
  return { filteredCategories: newCategories, filteredRecords: newRecords, matchesCount, filteredResultMatches: allFilteredResultMatches, filteredTypes: allFilteredTypes };
112
111
  }
113
112
  async function matchRecordHierarchy(filterer, records, parents, forceIncludeItem = false) {
114
- var _a, _b;
115
113
  const newMatchedRecords = [];
116
114
  let expandParent = false; // property passed back to parent to indicate whether it should be expanded
117
115
  let matchesCount = 0;
@@ -128,8 +126,8 @@ async function matchRecordHierarchy(filterer, records, parents, forceIncludeItem
128
126
  expandParent = expandParent || shouldExpandNodeParents;
129
127
  let newRecord;
130
128
  if (matchInfo.matchesFilter) {
131
- filteredTypes = [...filteredTypes, ...((_a = matchInfo.filteredTypes) !== null && _a !== void 0 ? _a : [])];
132
- const recordMatchesCount = (_b = matchInfo.matchesCount) !== null && _b !== void 0 ? _b : 0;
129
+ filteredTypes = [...filteredTypes, ...(matchInfo.filteredTypes ?? [])];
130
+ const recordMatchesCount = matchInfo.matchesCount ?? 0;
133
131
  matchesCount += recordMatchesCount;
134
132
  // Item is included if it matches filter
135
133
  // If at least one matched record from records list needs its parent expanded,
@@ -1 +1 @@
1
- {"version":3,"file":"FilteringDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/dataproviders/FilteringDataProvider.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 PropertyGrid\n */\n\nimport { PropertyRecord, PropertyValue, PropertyValueFormat } from \"@itwin/appui-abstract\";\nimport { IDisposable } from \"@itwin/core-bentley\";\nimport { HighlightInfo } from \"../../common/HighlightingComponentProps\";\nimport { CategoryRecordsDict } from \"../internal/flat-items/MutableGridCategory\";\nimport { IPropertyDataProvider, PropertyCategory, PropertyData, PropertyDataChangeEvent } from \"../PropertyDataProvider\";\nimport { FilteredType, IPropertyDataFilterer, PropertyDataFilterResult } from \"./filterers/PropertyDataFiltererBase\";\n\ninterface FilteredRecords {\n filteredRecords: PropertyRecord[];\n shouldExpandNodeParents: boolean;\n matchesCount: number;\n activeMatch?: HighlightInfo;\n filteredResultMatches: { id: string, matchesCount: number }[];\n filteredTypes: FilteredType[];\n}\n\n/**\n * Data returned by [[FilteringPropertyDataProvider]]\n * @public\n */\nexport interface FilteredPropertyData extends PropertyData {\n /**\n * Shows how many matches were found when filtering data.\n * `undefined` when filterer is not active\n */\n matchesCount?: number;\n\n /**\n * Function used for getting [[HighlightInfo]] by index from all the filtered matches.\n * `undefined` when filterer is not active\n */\n getMatchByIndex?: (index: number) => HighlightInfo | undefined;\n\n /** Types of objects that were used for filtering. */\n filteredTypes?: FilteredType[];\n}\n\n/**\n * [[IPropertyDataProvider]] implementation which filters wrapped provider [[PropertyData]] using passed [[IPropertyDataFilterer]].\n * @public\n */\nexport class FilteringPropertyDataProvider implements IPropertyDataProvider, IDisposable {\n public onDataChanged = new PropertyDataChangeEvent();\n private _filteredPropertyData: Promise<FilteredPropertyData> | undefined = undefined;\n private _disposeFilterChangedListener: Function;\n private _disposeDataChangedListener: Function;\n\n public constructor(private _dataProvider: IPropertyDataProvider, private _filterer: IPropertyDataFilterer) {\n this._disposeFilterChangedListener = this._filterer.onFilterChanged.addListener(() => { this._filteredPropertyData = undefined; this.onDataChanged.raiseEvent(); });\n this._disposeDataChangedListener = this._dataProvider.onDataChanged.addListener(() => { this._filteredPropertyData = undefined; this.onDataChanged.raiseEvent(); });\n }\n\n public dispose(): void {\n this._disposeDataChangedListener();\n this._disposeFilterChangedListener();\n }\n\n public async getData(): Promise<FilteredPropertyData> {\n if (this._filteredPropertyData) {\n return this._filteredPropertyData;\n }\n\n this._filteredPropertyData = this._dataProvider.getData().then(async (propertyData) => {\n return ((this._filterer.isActive) ?\n this.filterPropertyData(propertyData) : propertyData);\n });\n\n return this._filteredPropertyData;\n }\n\n private async filterPropertyData(propertyData: PropertyData) {\n const { categories, records, label, description } = { ...propertyData };\n const { filteredCategories, filteredRecords, matchesCount, filteredResultMatches, filteredTypes } = await matchHierarchy(this._filterer, categories, records, undefined);\n\n const uniqueTypes = [...new Set(filteredTypes)];\n const getMatchByIndex = (index: number) => {\n let activeMatch: HighlightInfo | undefined;\n if (index <= 0)\n return undefined;\n\n let i = 1;\n for (const record of filteredResultMatches) {\n const fullMatchesCount = record.matchesCount;\n if (index < i + fullMatchesCount) {\n activeMatch = {\n highlightedItemIdentifier: record.id,\n highlightIndex: index - i,\n };\n break;\n }\n\n i += fullMatchesCount;\n }\n return activeMatch;\n };\n\n return {\n label,\n description,\n categories: filteredCategories,\n records: filteredRecords,\n reusePropertyDataState: false,\n matchesCount,\n getMatchByIndex,\n filteredTypes: uniqueTypes,\n };\n }\n}\n\nasync function matchHierarchy(filterer: IPropertyDataFilterer, categories: PropertyCategory[], records: CategoryRecordsDict, newRecords?: CategoryRecordsDict, parentMatchInfo?: PropertyDataFilterResult) {\n const newCategories: PropertyCategory[] = [];\n newRecords = newRecords ?? {};\n let matchesCount = 0;\n let allFilteredResultMatches: { id: string, matchesCount: number }[] = [];\n let allFilteredTypes: FilteredType[] = [];\n\n for (const category of categories) {\n const matchInfo = await filterer.categoryMatchesFilter(category, []);\n\n if (matchInfo.matchesFilter) {\n allFilteredResultMatches.push({ id: category.name, matchesCount: matchInfo.matchesCount ?? 0 });\n allFilteredTypes = allFilteredTypes.concat(matchInfo.filteredTypes ?? []);\n matchesCount += matchInfo.matchesCount ?? 0;\n }\n\n const childRecords = records[category.name] ?? [];\n const { filteredRecords, matchesCount: count, filteredResultMatches, filteredTypes } = await matchRecordHierarchy(filterer, childRecords, []);\n allFilteredResultMatches = allFilteredResultMatches.concat(filteredResultMatches);\n allFilteredTypes = allFilteredTypes.concat(filteredTypes);\n matchesCount += count;\n\n const parentInfo = parentMatchInfo?.matchesFilter ? parentMatchInfo : matchInfo;\n\n const childCategories = category.childCategories ?? [];\n const { filteredCategories, matchesCount: childCount, filteredResultMatches: childFilteredResultMatches, filteredTypes: childFilteredTypes } = await matchHierarchy(filterer, childCategories, records, newRecords, parentInfo);\n allFilteredResultMatches = allFilteredResultMatches.concat(childFilteredResultMatches);\n allFilteredTypes = allFilteredTypes.concat(childFilteredTypes);\n matchesCount += childCount;\n\n let expand = !(count === 0 && childCount === 0);\n if (matchInfo.matchesFilter || (parentMatchInfo?.matchesFilter && parentMatchInfo.shouldForceIncludeDescendants)) {\n newRecords[category.name] = records[category.name];\n if (matchInfo.matchesFilter) {\n expand = true;\n }\n const newCategory = copyPropertyCategory(category, filteredCategories, expand);\n newCategories.push(newCategory);\n }\n\n if ((filteredRecords.length !== 0 || filteredCategories.length !== 0) && !matchInfo.matchesFilter && !(parentMatchInfo?.shouldExpandNodeParents && parentMatchInfo.matchesFilter)) {\n const newCategory = copyPropertyCategory(category, filteredCategories, expand);\n newRecords[newCategory.name] = filteredRecords;\n newCategories.push(newCategory);\n }\n }\n\n return { filteredCategories: newCategories, filteredRecords: newRecords, matchesCount, filteredResultMatches: allFilteredResultMatches, filteredTypes: allFilteredTypes };\n}\n\nasync function matchRecordHierarchy(filterer: IPropertyDataFilterer, records: PropertyRecord[], parents: PropertyRecord[], forceIncludeItem: boolean = false): Promise<FilteredRecords> {\n const newMatchedRecords: PropertyRecord[] = [];\n let expandParent = false; // property passed back to parent to indicate whether it should be expanded\n let matchesCount = 0;\n let filteredResultMatches: { id: string, matchesCount: number }[] = [];\n let filteredTypes: FilteredType[] = [];\n\n for (const record of records) {\n const matchInfo = await filterer.recordMatchesFilter(record, parents);\n const shouldForceIncludeDescendants = forceIncludeItem || matchInfo.shouldForceIncludeDescendants;\n const { filteredRecords: filteredChildren, shouldExpandNodeParents, matchesCount: childrenMatchesCount, filteredResultMatches: childrenResultMatches, filteredTypes: childrenFilteredTypes } = await matchRecordHierarchy(filterer, record.getChildrenRecords(), [...parents, record], shouldForceIncludeDescendants);\n filteredResultMatches = filteredResultMatches.concat(childrenResultMatches);\n filteredTypes = [...filteredTypes, ...childrenFilteredTypes];\n matchesCount += childrenMatchesCount;\n // if child hierarchy indicates parents should be expanded, then it should be passed back up to the top parent\n expandParent = expandParent || shouldExpandNodeParents;\n\n let newRecord: PropertyRecord | undefined;\n if (matchInfo.matchesFilter) {\n filteredTypes = [...filteredTypes, ...(matchInfo.filteredTypes ?? [])];\n const recordMatchesCount = matchInfo.matchesCount ?? 0;\n matchesCount += recordMatchesCount;\n // Item is included if it matches filter\n // If at least one matched record from records list needs its parent expanded,\n // then `expandParent` should be set to true\n expandParent = expandParent || !!matchInfo.shouldExpandNodeParents;\n newRecord = copyPropertyRecord(record, filteredChildren, shouldExpandNodeParents);\n filteredResultMatches.push({ id: newRecord.property.name, matchesCount: recordMatchesCount });\n } else if (filteredChildren.length !== 0 || forceIncludeItem) {\n // Item is also included if it has at least one matched child or is forcefully included by its parent\n newRecord = copyPropertyRecord(record, filteredChildren, shouldExpandNodeParents);\n }\n\n if (newRecord)\n newMatchedRecords.push(newRecord);\n }\n\n return { filteredRecords: newMatchedRecords, shouldExpandNodeParents: expandParent, matchesCount, filteredResultMatches, filteredTypes };\n}\n\nfunction copyPropertyCategory(\n propertyCategory: PropertyCategory,\n newChildren: PropertyCategory[],\n expand: boolean,\n): PropertyCategory {\n return {\n ...propertyCategory,\n childCategories: newChildren,\n expand,\n };\n}\n\nfunction copyPropertyRecord(record: PropertyRecord, newChildren: PropertyRecord[], autoExpand: boolean) {\n const r = record.copyWithNewValue(createNewPropertyValue(record.value, newChildren));\n r.autoExpand = autoExpand;\n return r;\n}\n\nfunction createNewPropertyValue(value: PropertyValue, newChildren: PropertyRecord[]): PropertyValue {\n switch (value.valueFormat) {\n case PropertyValueFormat.Primitive:\n return { ...value };\n case PropertyValueFormat.Array:\n return {\n valueFormat: PropertyValueFormat.Array,\n itemsTypeName: value.itemsTypeName,\n items: newChildren,\n };\n case PropertyValueFormat.Struct:\n const members: { [name: string]: PropertyRecord } = {};\n newChildren.forEach((child) => members[child.property.name] = child);\n return {\n valueFormat: PropertyValueFormat.Struct,\n members,\n };\n }\n}\n"]}
1
+ {"version":3,"file":"FilteringDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/dataproviders/FilteringDataProvider.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 PropertyGrid\n */\n\nimport { PropertyRecord, PropertyValue, PropertyValueFormat } from \"@itwin/appui-abstract\";\nimport { IDisposable } from \"@itwin/core-bentley\";\nimport { HighlightInfo } from \"../../common/HighlightingComponentProps\";\nimport { CategoryRecordsDict } from \"../internal/flat-items/MutableGridCategory\";\nimport { IPropertyDataProvider, PropertyCategory, PropertyData, PropertyDataChangeEvent } from \"../PropertyDataProvider\";\nimport { FilteredType, IPropertyDataFilterer, PropertyDataFilterResult } from \"./filterers/PropertyDataFiltererBase\";\n\ninterface FilteredRecords {\n filteredRecords: PropertyRecord[];\n shouldExpandNodeParents: boolean;\n matchesCount: number;\n activeMatch?: HighlightInfo;\n filteredResultMatches: { id: string, matchesCount: number }[];\n filteredTypes: FilteredType[];\n}\n\n/**\n * Data returned by [[FilteringPropertyDataProvider]]\n * @public\n */\nexport interface FilteredPropertyData extends PropertyData {\n /**\n * Shows how many matches were found when filtering data.\n * `undefined` when filterer is not active\n */\n matchesCount?: number;\n\n /**\n * Function used for getting [[HighlightInfo]] by index from all the filtered matches.\n * `undefined` when filterer is not active\n */\n getMatchByIndex?: (index: number) => HighlightInfo | undefined;\n\n /** Types of objects that were used for filtering. */\n filteredTypes?: FilteredType[];\n}\n\n/**\n * [[IPropertyDataProvider]] implementation which filters wrapped provider [[PropertyData]] using passed [[IPropertyDataFilterer]].\n * @public\n */\nexport class FilteringPropertyDataProvider implements IPropertyDataProvider, IDisposable {\n public onDataChanged = new PropertyDataChangeEvent();\n private _filteredPropertyData: Promise<FilteredPropertyData> | undefined = undefined;\n private _disposeFilterChangedListener: Function;\n private _disposeDataChangedListener: Function;\n\n public constructor(private _dataProvider: IPropertyDataProvider, private _filterer: IPropertyDataFilterer) {\n this._disposeFilterChangedListener = this._filterer.onFilterChanged.addListener(() => { this._filteredPropertyData = undefined; this.onDataChanged.raiseEvent(); });\n this._disposeDataChangedListener = this._dataProvider.onDataChanged.addListener(() => { this._filteredPropertyData = undefined; this.onDataChanged.raiseEvent(); });\n }\n\n public dispose(): void {\n this._disposeDataChangedListener();\n this._disposeFilterChangedListener();\n }\n\n public async getData(): Promise<FilteredPropertyData> {\n if (this._filteredPropertyData) {\n return this._filteredPropertyData;\n }\n\n this._filteredPropertyData = this._dataProvider.getData().then(async (propertyData) => {\n return ((this._filterer.isActive) ?\n this.filterPropertyData(propertyData) : propertyData);\n });\n\n return this._filteredPropertyData;\n }\n\n private async filterPropertyData(propertyData: PropertyData) {\n const { categories, records, label, description } = { ...propertyData };\n const { filteredCategories, filteredRecords, matchesCount, filteredResultMatches, filteredTypes } = await matchHierarchy(this._filterer, categories, records, undefined);\n\n const uniqueTypes = [...new Set(filteredTypes)];\n const getMatchByIndex = (index: number) => {\n let activeMatch: HighlightInfo | undefined;\n if (index <= 0)\n return undefined;\n\n let i = 1;\n for (const record of filteredResultMatches) {\n const fullMatchesCount = record.matchesCount;\n if (index < i + fullMatchesCount) {\n activeMatch = {\n highlightedItemIdentifier: record.id,\n highlightIndex: index - i,\n };\n break;\n }\n\n i += fullMatchesCount;\n }\n return activeMatch;\n };\n\n return {\n label,\n description,\n categories: filteredCategories,\n records: filteredRecords,\n reusePropertyDataState: false,\n matchesCount,\n getMatchByIndex,\n filteredTypes: uniqueTypes,\n };\n }\n}\n\nasync function matchHierarchy(filterer: IPropertyDataFilterer, categories: PropertyCategory[], records: CategoryRecordsDict, newRecords?: CategoryRecordsDict, parentMatchInfo?: PropertyDataFilterResult) {\n const newCategories: PropertyCategory[] = [];\n newRecords = newRecords ?? {};\n let matchesCount = 0;\n let allFilteredResultMatches: { id: string, matchesCount: number }[] = [];\n let allFilteredTypes: FilteredType[] = [];\n\n for (const category of categories) {\n const matchInfo = await filterer.categoryMatchesFilter(category, []);\n\n if (matchInfo.matchesFilter) {\n allFilteredResultMatches.push({ id: category.name, matchesCount: matchInfo.matchesCount ?? 0 });\n allFilteredTypes = allFilteredTypes.concat(matchInfo.filteredTypes ?? []);\n matchesCount += matchInfo.matchesCount ?? 0;\n }\n\n const childRecords = records[category.name] ?? [];\n const { filteredRecords, matchesCount: count, filteredResultMatches, filteredTypes } = await matchRecordHierarchy(filterer, childRecords, []);\n allFilteredResultMatches = allFilteredResultMatches.concat(filteredResultMatches);\n allFilteredTypes = allFilteredTypes.concat(filteredTypes);\n matchesCount += count;\n\n const parentInfo = parentMatchInfo?.matchesFilter ? parentMatchInfo : matchInfo;\n\n const childCategories = category.childCategories ?? [];\n const { filteredCategories, matchesCount: childCount, filteredResultMatches: childFilteredResultMatches, filteredTypes: childFilteredTypes } = await matchHierarchy(filterer, childCategories, records, newRecords, parentInfo);\n allFilteredResultMatches = allFilteredResultMatches.concat(childFilteredResultMatches);\n allFilteredTypes = allFilteredTypes.concat(childFilteredTypes);\n matchesCount += childCount;\n\n let expand = !(count === 0 && childCount === 0);\n if (matchInfo.matchesFilter || (parentMatchInfo?.matchesFilter && parentMatchInfo.shouldForceIncludeDescendants)) {\n newRecords[category.name] = records[category.name];\n if (matchInfo.matchesFilter) {\n expand = true;\n }\n const newCategory = copyPropertyCategory(category, filteredCategories, expand);\n newCategories.push(newCategory);\n }\n\n if ((filteredRecords.length !== 0 || filteredCategories.length !== 0) && !matchInfo.matchesFilter && !(parentMatchInfo?.shouldExpandNodeParents && parentMatchInfo.matchesFilter)) {\n const newCategory = copyPropertyCategory(category, filteredCategories, expand);\n newRecords[newCategory.name] = filteredRecords;\n newCategories.push(newCategory);\n }\n }\n\n return { filteredCategories: newCategories, filteredRecords: newRecords, matchesCount, filteredResultMatches: allFilteredResultMatches, filteredTypes: allFilteredTypes };\n}\n\nasync function matchRecordHierarchy(filterer: IPropertyDataFilterer, records: PropertyRecord[], parents: PropertyRecord[], forceIncludeItem: boolean = false): Promise<FilteredRecords> {\n const newMatchedRecords: PropertyRecord[] = [];\n let expandParent = false; // property passed back to parent to indicate whether it should be expanded\n let matchesCount = 0;\n let filteredResultMatches: { id: string, matchesCount: number }[] = [];\n let filteredTypes: FilteredType[] = [];\n\n for (const record of records) {\n const matchInfo = await filterer.recordMatchesFilter(record, parents);\n const shouldForceIncludeDescendants = forceIncludeItem || matchInfo.shouldForceIncludeDescendants;\n const { filteredRecords: filteredChildren, shouldExpandNodeParents, matchesCount: childrenMatchesCount, filteredResultMatches: childrenResultMatches, filteredTypes: childrenFilteredTypes } = await matchRecordHierarchy(filterer, record.getChildrenRecords(), [...parents, record], shouldForceIncludeDescendants);\n filteredResultMatches = filteredResultMatches.concat(childrenResultMatches);\n filteredTypes = [...filteredTypes, ...childrenFilteredTypes];\n matchesCount += childrenMatchesCount;\n // if child hierarchy indicates parents should be expanded, then it should be passed back up to the top parent\n expandParent = expandParent || shouldExpandNodeParents;\n\n let newRecord: PropertyRecord | undefined;\n if (matchInfo.matchesFilter) {\n filteredTypes = [...filteredTypes, ...(matchInfo.filteredTypes ?? [])];\n const recordMatchesCount = matchInfo.matchesCount ?? 0;\n matchesCount += recordMatchesCount;\n // Item is included if it matches filter\n // If at least one matched record from records list needs its parent expanded,\n // then `expandParent` should be set to true\n expandParent = expandParent || !!matchInfo.shouldExpandNodeParents;\n newRecord = copyPropertyRecord(record, filteredChildren, shouldExpandNodeParents);\n filteredResultMatches.push({ id: newRecord.property.name, matchesCount: recordMatchesCount });\n } else if (filteredChildren.length !== 0 || forceIncludeItem) {\n // Item is also included if it has at least one matched child or is forcefully included by its parent\n newRecord = copyPropertyRecord(record, filteredChildren, shouldExpandNodeParents);\n }\n\n if (newRecord)\n newMatchedRecords.push(newRecord);\n }\n\n return { filteredRecords: newMatchedRecords, shouldExpandNodeParents: expandParent, matchesCount, filteredResultMatches, filteredTypes };\n}\n\nfunction copyPropertyCategory(\n propertyCategory: PropertyCategory,\n newChildren: PropertyCategory[],\n expand: boolean,\n): PropertyCategory {\n return {\n ...propertyCategory,\n childCategories: newChildren,\n expand,\n };\n}\n\nfunction copyPropertyRecord(record: PropertyRecord, newChildren: PropertyRecord[], autoExpand: boolean) {\n const r = record.copyWithNewValue(createNewPropertyValue(record.value, newChildren));\n r.autoExpand = autoExpand;\n return r;\n}\n\nfunction createNewPropertyValue(value: PropertyValue, newChildren: PropertyRecord[]): PropertyValue {\n switch (value.valueFormat) {\n case PropertyValueFormat.Primitive:\n return { ...value };\n case PropertyValueFormat.Array:\n return {\n valueFormat: PropertyValueFormat.Array,\n itemsTypeName: value.itemsTypeName,\n items: newChildren,\n };\n case PropertyValueFormat.Struct:\n const members: { [name: string]: PropertyRecord } = {};\n newChildren.forEach((child) => members[child.property.name] = child);\n return {\n valueFormat: PropertyValueFormat.Struct,\n members,\n };\n }\n}\n"]}
@@ -60,11 +60,11 @@ export class CompositePropertyDataFilterer extends PropertyDataFiltererBase {
60
60
  function sumNullableNumbers(lhs, rhs) {
61
61
  if (undefined === lhs && undefined === rhs)
62
62
  return undefined;
63
- return (lhs !== null && lhs !== void 0 ? lhs : 0) + (rhs !== null && rhs !== void 0 ? rhs : 0);
63
+ return (lhs ?? 0) + (rhs ?? 0);
64
64
  }
65
65
  function joinNullableArrays(lhs, rhs) {
66
66
  if (undefined === lhs && undefined === rhs)
67
67
  return undefined;
68
- return [...lhs !== null && lhs !== void 0 ? lhs : [], ...rhs !== null && rhs !== void 0 ? rhs : []];
68
+ return [...lhs ?? [], ...rhs ?? []];
69
69
  }
70
70
  //# sourceMappingURL=CompositePropertyDataFilterer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompositePropertyDataFilterer.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.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 PropertyGrid\n */\n\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { PropertyCategory } from \"../../PropertyDataProvider\";\nimport { FilteredType, IPropertyDataFilterer, PropertyDataFiltererBase, PropertyDataFilterResult } from \"./PropertyDataFiltererBase\";\n\n/**\n * Logical operator for composite filterer.\n * @public\n */\nexport enum CompositeFilterType {\n And,\n Or,\n}\n\n/**\n * Composite PropertyData filter which can join two filters using logic operators\n * @public\n */\nexport class CompositePropertyDataFilterer extends PropertyDataFiltererBase {\n public constructor(private _leftFilterer: IPropertyDataFilterer, private _operator: CompositeFilterType, private _rightFilterer: IPropertyDataFilterer) {\n super();\n this._leftFilterer.onFilterChanged.addListener(() => this.onFilterChanged.raiseEvent());\n this._rightFilterer.onFilterChanged.addListener(() => this.onFilterChanged.raiseEvent());\n }\n\n public get isActive() { return this._leftFilterer.isActive || this._rightFilterer.isActive; }\n\n public async recordMatchesFilter(node: PropertyRecord, parents: PropertyRecord[]): Promise<PropertyDataFilterResult> {\n const [lhs, rhs] = await Promise.all([\n this._leftFilterer.recordMatchesFilter(node, parents),\n this._rightFilterer.recordMatchesFilter(node, parents),\n ]);\n\n return this.getFiltererResult(lhs, rhs);\n }\n\n public async categoryMatchesFilter(node: PropertyCategory, parents: PropertyCategory[]): Promise<PropertyDataFilterResult> {\n const [lhs, rhs] = await Promise.all([\n this._leftFilterer.categoryMatchesFilter(node, parents),\n this._rightFilterer.categoryMatchesFilter(node, parents),\n ]);\n\n return this.getFiltererResult(lhs, rhs);\n }\n\n private getFiltererResult(lhs: PropertyDataFilterResult, rhs: PropertyDataFilterResult) {\n const matchesFilter = (this._operator === CompositeFilterType.And) ? (lhs.matchesFilter && rhs.matchesFilter) : (lhs.matchesFilter || rhs.matchesFilter);\n if (!matchesFilter)\n return { matchesFilter: false };\n\n const filteredTypes = joinNullableArrays(lhs.matchesFilter ? lhs.filteredTypes : undefined, rhs.matchesFilter ? rhs.filteredTypes : undefined);\n\n return {\n matchesFilter: true,\n shouldExpandNodeParents: lhs.shouldExpandNodeParents || rhs.shouldExpandNodeParents,\n shouldForceIncludeDescendants: lhs.shouldForceIncludeDescendants || rhs.shouldForceIncludeDescendants,\n matchesCount: (sumNullableNumbers(lhs.matchesCount, rhs.matchesCount)),\n filteredTypes,\n };\n }\n}\n\nfunction sumNullableNumbers(lhs: number | undefined, rhs: number | undefined) {\n if (undefined === lhs && undefined === rhs)\n return undefined;\n return (lhs ?? 0) + (rhs ?? 0);\n}\n\nfunction joinNullableArrays(lhs: FilteredType[] | undefined, rhs: FilteredType[] | undefined) {\n if (undefined === lhs && undefined === rhs)\n return undefined;\n return [...lhs ?? [], ...rhs ?? []];\n}\n"]}
1
+ {"version":3,"file":"CompositePropertyDataFilterer.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.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 PropertyGrid\n */\n\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { PropertyCategory } from \"../../PropertyDataProvider\";\nimport { FilteredType, IPropertyDataFilterer, PropertyDataFiltererBase, PropertyDataFilterResult } from \"./PropertyDataFiltererBase\";\n\n/**\n * Logical operator for composite filterer.\n * @public\n */\nexport enum CompositeFilterType {\n And,\n Or,\n}\n\n/**\n * Composite PropertyData filter which can join two filters using logic operators\n * @public\n */\nexport class CompositePropertyDataFilterer extends PropertyDataFiltererBase {\n public constructor(private _leftFilterer: IPropertyDataFilterer, private _operator: CompositeFilterType, private _rightFilterer: IPropertyDataFilterer) {\n super();\n this._leftFilterer.onFilterChanged.addListener(() => this.onFilterChanged.raiseEvent());\n this._rightFilterer.onFilterChanged.addListener(() => this.onFilterChanged.raiseEvent());\n }\n\n public get isActive() { return this._leftFilterer.isActive || this._rightFilterer.isActive; }\n\n public async recordMatchesFilter(node: PropertyRecord, parents: PropertyRecord[]): Promise<PropertyDataFilterResult> {\n const [lhs, rhs] = await Promise.all([\n this._leftFilterer.recordMatchesFilter(node, parents),\n this._rightFilterer.recordMatchesFilter(node, parents),\n ]);\n\n return this.getFiltererResult(lhs, rhs);\n }\n\n public async categoryMatchesFilter(node: PropertyCategory, parents: PropertyCategory[]): Promise<PropertyDataFilterResult> {\n const [lhs, rhs] = await Promise.all([\n this._leftFilterer.categoryMatchesFilter(node, parents),\n this._rightFilterer.categoryMatchesFilter(node, parents),\n ]);\n\n return this.getFiltererResult(lhs, rhs);\n }\n\n private getFiltererResult(lhs: PropertyDataFilterResult, rhs: PropertyDataFilterResult) {\n const matchesFilter = (this._operator === CompositeFilterType.And) ? (lhs.matchesFilter && rhs.matchesFilter) : (lhs.matchesFilter || rhs.matchesFilter);\n if (!matchesFilter)\n return { matchesFilter: false };\n\n const filteredTypes = joinNullableArrays(lhs.matchesFilter ? lhs.filteredTypes : undefined, rhs.matchesFilter ? rhs.filteredTypes : undefined);\n\n return {\n matchesFilter: true,\n shouldExpandNodeParents: lhs.shouldExpandNodeParents || rhs.shouldExpandNodeParents,\n shouldForceIncludeDescendants: lhs.shouldForceIncludeDescendants || rhs.shouldForceIncludeDescendants,\n matchesCount: (sumNullableNumbers(lhs.matchesCount, rhs.matchesCount)),\n filteredTypes,\n };\n }\n}\n\nfunction sumNullableNumbers(lhs: number | undefined, rhs: number | undefined) {\n if (undefined === lhs && undefined === rhs)\n return undefined;\n return (lhs ?? 0) + (rhs ?? 0);\n}\n\nfunction joinNullableArrays(lhs: FilteredType[] | undefined, rhs: FilteredType[] | undefined) {\n if (undefined === lhs && undefined === rhs)\n return undefined;\n return [...lhs ?? [], ...rhs ?? []];\n}\n"]}
@@ -28,12 +28,11 @@ export class DisplayValuePropertyDataFilterer extends PropertyRecordDataFilterer
28
28
  }
29
29
  get isActive() { return this.filterText !== ""; }
30
30
  async recordMatchesFilter(node) {
31
- var _a, _b;
32
31
  if (!this.isActive)
33
32
  return { matchesFilter: true };
34
33
  if (node.value.valueFormat !== PropertyValueFormat.Primitive)
35
34
  return { matchesFilter: false };
36
- const displayValue = (_b = (_a = node.value.displayValue) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : "";
35
+ const displayValue = node.value.displayValue?.toLowerCase() ?? "";
37
36
  const matchesCount = countMatchesInString(displayValue, this.filterText);
38
37
  if (matchesCount === 0)
39
38
  return { matchesFilter: false };
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayValuePropertyDataFilterer.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAkB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAA4B,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAEpH;;;GAGG;AACH,MAAM,OAAO,gCAAiC,SAAQ,8BAA8B;IAGlF,YAAmB,aAAqB,EAAE;QACxC,KAAK,EAAE,CAAC;QAHF,gBAAW,GAAW,EAAE,CAAC;QAI/B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5D,IAAW,UAAU,CAAC,KAAa;QACjC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;SACnC;IACH,CAAC;IAED,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;IAEjD,KAAK,CAAC,mBAAmB,CAAC,IAAoB;;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QAEjC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,mBAAmB,CAAC,SAAS;YAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAElC,MAAM,YAAY,GAAG,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,WAAW,EAAE,mCAAI,EAAE,CAAC;QAClE,MAAM,YAAY,GAAG,oBAAoB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAEzE,IAAI,YAAY,KAAK,CAAC;YACpB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAElC,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,uBAAuB,EAAE,IAAI;YAC7B,YAAY;YACZ,aAAa,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;SACpC,CAAC;IACJ,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyGrid\n */\n\nimport { PropertyRecord, PropertyValueFormat } from \"@itwin/appui-abstract\";\nimport { countMatchesInString } from \"../../../common/countMatchesInString\";\nimport { FilteredType, PropertyDataFilterResult, PropertyRecordDataFiltererBase } from \"./PropertyDataFiltererBase\";\n\n/**\n * Property data filterer which matches on Primitive Property Record display value text.\n * @public\n */\nexport class DisplayValuePropertyDataFilterer extends PropertyRecordDataFiltererBase {\n private _filterText: string = \"\";\n\n public constructor(filterText: string = \"\") {\n super();\n this._filterText = filterText;\n }\n\n public get filterText(): string { return this._filterText; }\n public set filterText(value: string) {\n const lowerValue = value.toLowerCase().trim();\n if (lowerValue !== this.filterText) {\n this._filterText = lowerValue;\n this.onFilterChanged.raiseEvent();\n }\n }\n\n public get isActive() { return this.filterText !== \"\"; }\n\n public async recordMatchesFilter(node: PropertyRecord): Promise<PropertyDataFilterResult> {\n if (!this.isActive)\n return { matchesFilter: true };\n\n if (node.value.valueFormat !== PropertyValueFormat.Primitive)\n return { matchesFilter: false };\n\n const displayValue = node.value.displayValue?.toLowerCase() ?? \"\";\n const matchesCount = countMatchesInString(displayValue, this.filterText);\n\n if (matchesCount === 0)\n return { matchesFilter: false };\n\n return {\n matchesFilter: true,\n shouldExpandNodeParents: true,\n matchesCount,\n filteredTypes: [FilteredType.Value],\n };\n }\n}\n"]}
1
+ {"version":3,"file":"DisplayValuePropertyDataFilterer.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAkB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAA4B,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAEpH;;;GAGG;AACH,MAAM,OAAO,gCAAiC,SAAQ,8BAA8B;IAGlF,YAAmB,aAAqB,EAAE;QACxC,KAAK,EAAE,CAAC;QAHF,gBAAW,GAAW,EAAE,CAAC;QAI/B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5D,IAAW,UAAU,CAAC,KAAa;QACjC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;SACnC;IACH,CAAC;IAED,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;IAEjD,KAAK,CAAC,mBAAmB,CAAC,IAAoB;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QAEjC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,mBAAmB,CAAC,SAAS;YAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAElC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAClE,MAAM,YAAY,GAAG,oBAAoB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAEzE,IAAI,YAAY,KAAK,CAAC;YACpB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAElC,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,uBAAuB,EAAE,IAAI;YAC7B,YAAY;YACZ,aAAa,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;SACpC,CAAC;IACJ,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyGrid\n */\n\nimport { PropertyRecord, PropertyValueFormat } from \"@itwin/appui-abstract\";\nimport { countMatchesInString } from \"../../../common/countMatchesInString\";\nimport { FilteredType, PropertyDataFilterResult, PropertyRecordDataFiltererBase } from \"./PropertyDataFiltererBase\";\n\n/**\n * Property data filterer which matches on Primitive Property Record display value text.\n * @public\n */\nexport class DisplayValuePropertyDataFilterer extends PropertyRecordDataFiltererBase {\n private _filterText: string = \"\";\n\n public constructor(filterText: string = \"\") {\n super();\n this._filterText = filterText;\n }\n\n public get filterText(): string { return this._filterText; }\n public set filterText(value: string) {\n const lowerValue = value.toLowerCase().trim();\n if (lowerValue !== this.filterText) {\n this._filterText = lowerValue;\n this.onFilterChanged.raiseEvent();\n }\n }\n\n public get isActive() { return this.filterText !== \"\"; }\n\n public async recordMatchesFilter(node: PropertyRecord): Promise<PropertyDataFilterResult> {\n if (!this.isActive)\n return { matchesFilter: true };\n\n if (node.value.valueFormat !== PropertyValueFormat.Primitive)\n return { matchesFilter: false };\n\n const displayValue = node.value.displayValue?.toLowerCase() ?? \"\";\n const matchesCount = countMatchesInString(displayValue, this.filterText);\n\n if (matchesCount === 0)\n return { matchesFilter: false };\n\n return {\n matchesFilter: true,\n shouldExpandNodeParents: true,\n matchesCount,\n filteredTypes: [FilteredType.Value],\n };\n }\n}\n"]}
@@ -4,14 +4,14 @@
4
4
  import { IPropertyGridModelSource } from "./PropertyGridModelSource";
5
5
  /**
6
6
  * Handles events and changes on PropertyGridModel data.
7
- * @beta
7
+ * @public
8
8
  */
9
9
  export interface IPropertyGridEventHandler {
10
10
  onExpansionToggled: (selectionKey: string) => void;
11
11
  }
12
12
  /**
13
13
  * Handles events and changes on PropertyGridModel data.
14
- * @beta
14
+ * @public
15
15
  */
16
16
  export declare class PropertyGridEventHandler {
17
17
  private _modelSource;
@@ -4,7 +4,7 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  /**
6
6
  * Handles events and changes on PropertyGridModel data.
7
- * @beta
7
+ * @public
8
8
  */
9
9
  export class PropertyGridEventHandler {
10
10
  constructor(_modelSource) {
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridEventHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridEventHandler.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAe/F;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,YAA2B,YAAsC;QAAtC,iBAAY,GAAZ,YAAY,CAA0B;QAGjE;;;WAGG;QACI,uBAAkB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACnD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IAXF,CAAC;CAYF","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 PropertyGrid\n */\nimport { IPropertyGridModelSource } from \"./PropertyGridModelSource\";\n\n/**\n * Handles events and changes on PropertyGridModel data.\n * @beta\n */\nexport interface IPropertyGridEventHandler {\n onExpansionToggled: (selectionKey: string) => void;\n}\n\n/**\n * Handles events and changes on PropertyGridModel data.\n * @beta\n */\nexport class PropertyGridEventHandler {\n public constructor(private _modelSource: IPropertyGridModelSource) {\n }\n\n /**\n * Flips isExpand on item by given selectionKey\n * @param selectionKey item to be modified\n */\n public onExpansionToggled = (selectionKey: string) => {\n this._modelSource.modifyModel((draftModel) => {\n const item = draftModel.getItem(selectionKey);\n item.isExpanded = !item.isExpanded;\n });\n };\n}\n"]}
1
+ {"version":3,"file":"PropertyGridEventHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridEventHandler.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAe/F;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,YAA2B,YAAsC;QAAtC,iBAAY,GAAZ,YAAY,CAA0B;QAGjE;;;WAGG;QACI,uBAAkB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACnD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IAXF,CAAC;CAYF","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 PropertyGrid\n */\nimport { IPropertyGridModelSource } from \"./PropertyGridModelSource\";\n\n/**\n * Handles events and changes on PropertyGridModel data.\n * @public\n */\nexport interface IPropertyGridEventHandler {\n onExpansionToggled: (selectionKey: string) => void;\n}\n\n/**\n * Handles events and changes on PropertyGridModel data.\n * @public\n */\nexport class PropertyGridEventHandler {\n public constructor(private _modelSource: IPropertyGridModelSource) {\n }\n\n /**\n * Flips isExpand on item by given selectionKey\n * @param selectionKey item to be modified\n */\n public onExpansionToggled = (selectionKey: string) => {\n this._modelSource.modifyModel((draftModel) => {\n const item = draftModel.getItem(selectionKey);\n item.isExpanded = !item.isExpanded;\n });\n };\n}\n"]}