@itwin/components-react 4.1.0-dev.1 → 4.2.0-dev.1

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 (1078) hide show
  1. package/CHANGELOG.md +1805 -1797
  2. package/LICENSE.md +9 -9
  3. package/README.md +11 -11
  4. package/lib/cjs/components-react/UiComponents.d.ts.map +1 -1
  5. package/lib/cjs/components-react/UiComponents.js +9 -5
  6. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  7. package/lib/cjs/components-react/_target.scss +5 -4
  8. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  9. package/lib/cjs/components-react/common/DateUtils.js +15 -9
  10. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  11. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  12. package/lib/cjs/components-react/common/DelayedSpinner.js +5 -5
  13. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  14. package/lib/cjs/components-react/common/HighlightedText.js +9 -5
  15. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  16. package/lib/cjs/components-react/common/HighlightingComponentProps.js +3 -3
  17. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  18. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  19. package/lib/cjs/components-react/common/IImageLoader.js +3 -3
  20. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  21. package/lib/cjs/components-react/common/ImageRenderer.d.ts.map +1 -1
  22. package/lib/cjs/components-react/common/ImageRenderer.js +12 -9
  23. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  24. package/lib/cjs/components-react/common/Links.d.ts.map +1 -1
  25. package/lib/cjs/components-react/common/Links.js +12 -5
  26. package/lib/cjs/components-react/common/Links.js.map +1 -1
  27. package/lib/cjs/components-react/common/PageOptions.js +3 -3
  28. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  29. package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
  30. package/lib/cjs/components-react/common/SubscriptionScheduler.js +4 -4
  31. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  32. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  33. package/lib/cjs/components-react/common/UseAsyncValue.js +9 -5
  34. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  35. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  36. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +3 -3
  37. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  38. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  39. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +8 -6
  40. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  41. package/lib/cjs/components-react/common/UseRerender.d.ts.map +1 -1
  42. package/lib/cjs/components-react/common/UseRerender.js +8 -4
  43. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  44. package/lib/cjs/components-react/common/countMatchesInString.d.ts.map +1 -1
  45. package/lib/cjs/components-react/common/countMatchesInString.js +3 -3
  46. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  47. package/lib/cjs/components-react/common/selection/SelectionHandler.d.ts.map +1 -1
  48. package/lib/cjs/components-react/common/selection/SelectionHandler.js +32 -13
  49. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  50. package/lib/cjs/components-react/common/selection/SelectionModes.d.ts.map +1 -1
  51. package/lib/cjs/components-react/common/selection/SelectionModes.js +3 -3
  52. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  53. package/lib/cjs/components-react/converters/BooleanTypeConverter.d.ts.map +1 -1
  54. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +15 -7
  55. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  56. package/lib/cjs/components-react/converters/CompositeTypeConverter.d.ts.map +1 -1
  57. package/lib/cjs/components-react/converters/CompositeTypeConverter.js +5 -4
  58. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  59. package/lib/cjs/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
  60. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js +23 -11
  61. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  62. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  63. package/lib/cjs/components-react/converters/EnumTypeConverter.js +4 -4
  64. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  65. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.d.ts.map +1 -1
  66. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +3 -3
  67. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  68. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.d.ts.map +1 -1
  69. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js +4 -6
  70. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  71. package/lib/cjs/components-react/converters/NumericTypeConverter.d.ts.map +1 -1
  72. package/lib/cjs/components-react/converters/NumericTypeConverter.js +7 -5
  73. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  74. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  75. package/lib/cjs/components-react/converters/PointTypeConverter.js +11 -6
  76. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  77. package/lib/cjs/components-react/converters/StringTypeConverter.d.ts.map +1 -1
  78. package/lib/cjs/components-react/converters/StringTypeConverter.js +16 -9
  79. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  80. package/lib/cjs/components-react/converters/TypeConverter.d.ts.map +1 -1
  81. package/lib/cjs/components-react/converters/TypeConverter.js +18 -8
  82. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  83. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  84. package/lib/cjs/components-react/converters/TypeConverterManager.js +4 -4
  85. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  86. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.d.ts.map +1 -1
  87. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js +3 -3
  88. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  89. package/lib/cjs/components-react/datepicker/DateField.d.ts +1 -1
  90. package/lib/cjs/components-react/datepicker/DateField.d.ts.map +1 -1
  91. package/lib/cjs/components-react/datepicker/DateField.js +32 -10
  92. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  93. package/lib/cjs/components-react/datepicker/DateField.scss +4 -4
  94. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  95. package/lib/cjs/components-react/datepicker/DatePicker.js +15 -11
  96. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  97. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  98. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  99. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +14 -11
  100. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  101. package/lib/cjs/components-react/datepicker/IntlFormatter.d.ts.map +1 -1
  102. package/lib/cjs/components-react/datepicker/IntlFormatter.js +11 -11
  103. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  104. package/lib/cjs/components-react/datepicker/TimeField.d.ts +1 -1
  105. package/lib/cjs/components-react/datepicker/TimeField.d.ts.map +1 -1
  106. package/lib/cjs/components-react/datepicker/TimeField.js +72 -31
  107. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  108. package/lib/cjs/components-react/editors/BooleanEditor.d.ts.map +1 -1
  109. package/lib/cjs/components-react/editors/BooleanEditor.js +9 -5
  110. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  111. package/lib/cjs/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
  112. package/lib/cjs/components-react/editors/CustomNumberEditor.js +48 -28
  113. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  114. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +4 -4
  115. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts +6 -6
  116. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts.map +1 -1
  117. package/lib/cjs/components-react/editors/DateTimeEditor.js +25 -20
  118. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  119. package/lib/cjs/components-react/editors/DateTimeEditor.scss +4 -4
  120. package/lib/cjs/components-react/editors/EditorContainer.d.ts +3 -3
  121. package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
  122. package/lib/cjs/components-react/editors/EditorContainer.js +21 -13
  123. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  124. package/lib/cjs/components-react/editors/EditorContainer.scss +4 -4
  125. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  126. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +20 -11
  127. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  128. package/lib/cjs/components-react/editors/EnumEditor.d.ts +5 -5
  129. package/lib/cjs/components-react/editors/EnumEditor.d.ts.map +1 -1
  130. package/lib/cjs/components-react/editors/EnumEditor.js +25 -14
  131. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  132. package/lib/cjs/components-react/editors/EnumEditor.scss +5 -5
  133. package/lib/cjs/components-react/editors/IconEditor.d.ts.map +1 -1
  134. package/lib/cjs/components-react/editors/IconEditor.js +10 -8
  135. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  136. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  137. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +13 -6
  138. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  139. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  140. package/lib/cjs/components-react/editors/NumericInputEditor.js +25 -8
  141. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  142. package/lib/cjs/components-react/editors/NumericInputEditor.scss +4 -6
  143. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  144. package/lib/cjs/components-react/editors/PopupButton.js +7 -4
  145. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  146. package/lib/cjs/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
  147. package/lib/cjs/components-react/editors/PropertyEditorManager.js +7 -5
  148. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  149. package/lib/cjs/components-react/editors/SliderEditor.d.ts.map +1 -1
  150. package/lib/cjs/components-react/editors/SliderEditor.js +46 -19
  151. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  152. package/lib/cjs/components-react/editors/SliderEditor.scss +4 -4
  153. package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
  154. package/lib/cjs/components-react/editors/TextEditor.js +24 -9
  155. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  156. package/lib/cjs/components-react/editors/TextEditor.scss +4 -4
  157. package/lib/cjs/components-react/editors/TextareaEditor.d.ts.map +1 -1
  158. package/lib/cjs/components-react/editors/TextareaEditor.js +21 -8
  159. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  160. package/lib/cjs/components-react/editors/TextareaEditor.scss +4 -4
  161. package/lib/cjs/components-react/editors/ToggleEditor.d.ts.map +1 -1
  162. package/lib/cjs/components-react/editors/ToggleEditor.js +11 -7
  163. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  164. package/lib/cjs/components-react/editors/variables.scss +4 -4
  165. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  166. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +3 -3
  167. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  168. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  169. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +4 -5
  170. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  171. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  172. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +16 -6
  173. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  174. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  175. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +6 -4
  176. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  177. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +1 -0
  178. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  179. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +25 -18
  180. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  181. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  182. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +46 -22
  183. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  184. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  185. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +5 -5
  186. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  187. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  188. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +9 -7
  189. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  190. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  191. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +5 -5
  192. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  193. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  194. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +21 -13
  195. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  196. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  197. package/lib/cjs/components-react/filter-builder/Operators.js +17 -18
  198. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  199. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  200. package/lib/cjs/components-react/filter-builder/Types.js +3 -3
  201. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  202. package/lib/cjs/components-react/filtering/FilteringInput.d.ts +1 -1
  203. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  204. package/lib/cjs/components-react/filtering/FilteringInput.js +23 -21
  205. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  206. package/lib/cjs/components-react/filtering/FilteringInput.scss +4 -4
  207. package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
  208. package/lib/cjs/components-react/filtering/ResultSelector.js +16 -9
  209. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  210. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  211. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +9 -10
  212. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  213. package/lib/cjs/components-react/inputs/ParsedInput.d.ts +1 -1
  214. package/lib/cjs/components-react/inputs/ParsedInput.d.ts.map +1 -1
  215. package/lib/cjs/components-react/inputs/ParsedInput.js +8 -7
  216. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  217. package/lib/cjs/components-react/inputs/ParsedInput.scss +4 -4
  218. package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
  219. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  220. package/lib/cjs/components-react/properties/ItemStyle.js +7 -7
  221. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  222. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  223. package/lib/cjs/components-react/properties/LinkHandler.js +4 -4
  224. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  225. package/lib/cjs/components-react/properties/ValueRendererManager.d.ts.map +1 -1
  226. package/lib/cjs/components-react/properties/ValueRendererManager.js +5 -4
  227. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  228. package/lib/cjs/components-react/properties/renderers/ActionButtonList.d.ts.map +1 -1
  229. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -5
  230. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  231. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  232. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js +3 -3
  233. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  234. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.d.ts.map +1 -1
  235. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +21 -10
  236. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  237. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
  238. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +11 -10
  239. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  240. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  241. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts.map +1 -1
  242. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +15 -8
  243. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  244. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.d.ts.map +1 -1
  245. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js +24 -7
  246. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  247. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
  248. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +10 -9
  249. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  250. package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
  251. package/lib/cjs/components-react/properties/renderers/PropertyView.js +12 -16
  252. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  253. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  254. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +4 -4
  255. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  256. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts.map +1 -1
  257. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +3 -3
  258. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  259. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  260. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
  261. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +7 -5
  262. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  263. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts.map +1 -1
  264. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +6 -5
  265. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  266. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  267. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -6
  268. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  269. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts.map +1 -1
  270. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +5 -4
  271. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  272. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -2
  273. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  274. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +7 -10
  275. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  276. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  277. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -6
  278. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  279. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  280. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +6 -8
  281. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  282. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts.map +1 -1
  283. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -4
  284. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  285. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  286. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +10 -6
  287. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  288. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  289. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +4 -4
  290. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  291. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts.map +1 -1
  292. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +8 -5
  293. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  294. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  295. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +7 -4
  296. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  297. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.d.ts.map +1 -1
  298. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +3 -3
  299. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  300. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  301. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -3
  302. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  303. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +1 -1
  304. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts.map +1 -1
  305. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js +3 -3
  306. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  307. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  308. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +3 -3
  309. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  310. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +2 -0
  311. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  312. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +38 -7
  313. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  314. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  315. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +6 -5
  316. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  317. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  318. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +8 -8
  319. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  320. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +4 -5
  321. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  322. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  323. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  324. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  325. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +13 -7
  326. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  327. package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
  328. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +16 -6
  329. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  330. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -0
  331. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  332. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +65 -27
  333. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  334. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  335. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +6 -4
  336. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  337. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +6 -6
  338. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts.map +1 -1
  339. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +56 -20
  340. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  341. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts.map +1 -1
  342. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +11 -7
  343. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  344. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts.map +1 -1
  345. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +9 -5
  346. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  347. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts.map +1 -1
  348. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +9 -5
  349. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  350. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts.map +1 -1
  351. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +9 -5
  352. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  353. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts.map +1 -1
  354. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +3 -3
  355. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  356. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts.map +1 -1
  357. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +3 -3
  358. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  359. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  360. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +7 -5
  361. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  362. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts.map +1 -1
  363. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +3 -3
  364. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  365. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  366. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +3 -3
  367. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  368. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  369. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +3 -3
  370. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  371. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  372. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js +3 -3
  373. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  374. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts.map +1 -1
  375. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +9 -5
  376. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  377. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts.map +1 -1
  378. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +3 -3
  379. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  380. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts.map +1 -1
  381. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +9 -5
  382. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  383. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  384. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +4 -1
  385. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  386. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +3 -3
  387. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  388. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +6 -7
  389. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  390. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  391. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +8 -4
  392. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  393. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts.map +1 -1
  394. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  395. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  396. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +4 -5
  397. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  398. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  399. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +4 -4
  400. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  401. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  402. package/lib/cjs/components-react/selectable-content/SelectableContent.js +4 -6
  403. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  404. package/lib/cjs/components-react/toolbar/Item.d.ts.map +1 -1
  405. package/lib/cjs/components-react/toolbar/Item.js +4 -5
  406. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  407. package/lib/cjs/components-react/toolbar/Item.scss +7 -5
  408. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  409. package/lib/cjs/components-react/toolbar/ItemWrapper.js +3 -3
  410. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  411. package/lib/cjs/components-react/toolbar/Items.d.ts.map +1 -1
  412. package/lib/cjs/components-react/toolbar/Items.js +16 -8
  413. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  414. package/lib/cjs/components-react/toolbar/Overflow.d.ts.map +1 -1
  415. package/lib/cjs/components-react/toolbar/Overflow.js +3 -3
  416. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  417. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  418. package/lib/cjs/components-react/toolbar/OverflowPanel.js +14 -9
  419. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  420. package/lib/cjs/components-react/toolbar/PopupItem.d.ts.map +1 -1
  421. package/lib/cjs/components-react/toolbar/PopupItem.js +7 -9
  422. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  423. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  424. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +20 -11
  425. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  426. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  427. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +23 -22
  428. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  429. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  430. package/lib/cjs/components-react/toolbar/Toolbar.js +29 -16
  431. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  432. package/lib/cjs/components-react/toolbar/Toolbar.scss +6 -6
  433. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  434. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  435. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +97 -57
  436. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  437. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.d.ts.map +1 -1
  438. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +3 -3
  439. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  440. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  441. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +3 -3
  442. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  443. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  444. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +3 -3
  445. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  446. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  447. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +3 -3
  448. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  449. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  450. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +3 -3
  451. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  452. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +4 -4
  453. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.d.ts.map +1 -1
  454. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +3 -3
  455. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  456. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +5 -4
  457. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  458. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +4 -5
  459. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  460. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +4 -4
  461. package/lib/cjs/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
  462. package/lib/cjs/components-react/toolbar/useDragInteraction.js +6 -5
  463. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  464. package/lib/cjs/components-react/toolbar/utilities/Direction.d.ts.map +1 -1
  465. package/lib/cjs/components-react/toolbar/utilities/Direction.js +3 -3
  466. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  467. package/lib/cjs/components-react/tree/HighlightingEngine.d.ts.map +1 -1
  468. package/lib/cjs/components-react/tree/HighlightingEngine.js +4 -4
  469. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  470. package/lib/cjs/components-react/tree/HighlightingEngine.scss +4 -4
  471. package/lib/cjs/components-react/tree/ImageLoader.d.ts.map +1 -1
  472. package/lib/cjs/components-react/tree/ImageLoader.js +3 -3
  473. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  474. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  475. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js +3 -3
  476. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  477. package/lib/cjs/components-react/tree/TreeComponentTestId.d.ts.map +1 -1
  478. package/lib/cjs/components-react/tree/TreeComponentTestId.js +3 -3
  479. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  480. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  481. package/lib/cjs/components-react/tree/TreeDataProvider.js +9 -7
  482. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  483. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  484. package/lib/cjs/components-react/tree/controlled/Observable.js +6 -4
  485. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  486. package/lib/cjs/components-react/tree/controlled/TreeActions.js +3 -3
  487. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  488. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
  489. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +41 -23
  490. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  491. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts +3 -3
  492. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
  493. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js +12 -8
  494. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  495. package/lib/cjs/components-react/tree/controlled/TreeEvents.d.ts.map +1 -1
  496. package/lib/cjs/components-react/tree/controlled/TreeEvents.js +3 -3
  497. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  498. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  499. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +3 -3
  500. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  501. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  502. package/lib/cjs/components-react/tree/controlled/TreeModel.js +39 -14
  503. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  504. package/lib/cjs/components-react/tree/controlled/TreeModelSource.d.ts.map +1 -1
  505. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js +22 -8
  506. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  507. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  508. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +48 -30
  509. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  510. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  511. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +14 -14
  512. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  513. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +5 -6
  514. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts +11 -6
  515. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  516. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +16 -15
  517. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  518. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  519. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +3 -3
  520. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  521. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +17 -0
  522. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  523. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +17 -7
  524. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  525. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  526. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +49 -19
  527. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  528. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.d.ts.map +1 -1
  529. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +3 -3
  530. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  531. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
  532. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +9 -5
  533. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  534. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  535. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +38 -20
  536. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  537. package/lib/cjs/components-react.d.ts +1 -0
  538. package/lib/cjs/components-react.d.ts.map +1 -1
  539. package/lib/cjs/components-react.js +4 -3
  540. package/lib/cjs/components-react.js.map +1 -1
  541. package/lib/esm/components-react/UiComponents.d.ts.map +1 -1
  542. package/lib/esm/components-react/UiComponents.js +9 -5
  543. package/lib/esm/components-react/UiComponents.js.map +1 -1
  544. package/lib/esm/components-react/_target.scss +5 -4
  545. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  546. package/lib/esm/components-react/common/DateUtils.js +15 -9
  547. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  548. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  549. package/lib/esm/components-react/common/DelayedSpinner.js +5 -5
  550. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  551. package/lib/esm/components-react/common/HighlightedText.js +9 -5
  552. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  553. package/lib/esm/components-react/common/HighlightingComponentProps.js +3 -3
  554. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  555. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  556. package/lib/esm/components-react/common/IImageLoader.js +3 -3
  557. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  558. package/lib/esm/components-react/common/ImageRenderer.d.ts.map +1 -1
  559. package/lib/esm/components-react/common/ImageRenderer.js +12 -9
  560. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  561. package/lib/esm/components-react/common/Links.d.ts.map +1 -1
  562. package/lib/esm/components-react/common/Links.js +12 -5
  563. package/lib/esm/components-react/common/Links.js.map +1 -1
  564. package/lib/esm/components-react/common/PageOptions.js +3 -3
  565. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  566. package/lib/esm/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
  567. package/lib/esm/components-react/common/SubscriptionScheduler.js +4 -4
  568. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  569. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  570. package/lib/esm/components-react/common/UseAsyncValue.js +9 -5
  571. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  572. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  573. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +3 -3
  574. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  575. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  576. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +9 -7
  577. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  578. package/lib/esm/components-react/common/UseRerender.d.ts.map +1 -1
  579. package/lib/esm/components-react/common/UseRerender.js +8 -4
  580. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  581. package/lib/esm/components-react/common/countMatchesInString.d.ts.map +1 -1
  582. package/lib/esm/components-react/common/countMatchesInString.js +3 -3
  583. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  584. package/lib/esm/components-react/common/selection/SelectionHandler.d.ts.map +1 -1
  585. package/lib/esm/components-react/common/selection/SelectionHandler.js +33 -14
  586. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  587. package/lib/esm/components-react/common/selection/SelectionModes.d.ts.map +1 -1
  588. package/lib/esm/components-react/common/selection/SelectionModes.js +3 -3
  589. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  590. package/lib/esm/components-react/converters/BooleanTypeConverter.d.ts.map +1 -1
  591. package/lib/esm/components-react/converters/BooleanTypeConverter.js +15 -7
  592. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  593. package/lib/esm/components-react/converters/CompositeTypeConverter.d.ts.map +1 -1
  594. package/lib/esm/components-react/converters/CompositeTypeConverter.js +5 -4
  595. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  596. package/lib/esm/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
  597. package/lib/esm/components-react/converters/DateTimeTypeConverter.js +24 -12
  598. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  599. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  600. package/lib/esm/components-react/converters/EnumTypeConverter.js +4 -4
  601. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  602. package/lib/esm/components-react/converters/HexadecimalTypeConverter.d.ts.map +1 -1
  603. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +3 -3
  604. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  605. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.d.ts.map +1 -1
  606. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js +4 -6
  607. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  608. package/lib/esm/components-react/converters/NumericTypeConverter.d.ts.map +1 -1
  609. package/lib/esm/components-react/converters/NumericTypeConverter.js +7 -5
  610. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  611. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  612. package/lib/esm/components-react/converters/PointTypeConverter.js +11 -6
  613. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  614. package/lib/esm/components-react/converters/StringTypeConverter.d.ts.map +1 -1
  615. package/lib/esm/components-react/converters/StringTypeConverter.js +16 -9
  616. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  617. package/lib/esm/components-react/converters/TypeConverter.d.ts.map +1 -1
  618. package/lib/esm/components-react/converters/TypeConverter.js +18 -8
  619. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  620. package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  621. package/lib/esm/components-react/converters/TypeConverterManager.js +4 -4
  622. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  623. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.d.ts.map +1 -1
  624. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js +3 -3
  625. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  626. package/lib/esm/components-react/datepicker/DateField.d.ts +1 -1
  627. package/lib/esm/components-react/datepicker/DateField.d.ts.map +1 -1
  628. package/lib/esm/components-react/datepicker/DateField.js +32 -10
  629. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  630. package/lib/esm/components-react/datepicker/DateField.scss +4 -4
  631. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  632. package/lib/esm/components-react/datepicker/DatePicker.js +15 -11
  633. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  634. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  635. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  636. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +14 -11
  637. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  638. package/lib/esm/components-react/datepicker/IntlFormatter.d.ts.map +1 -1
  639. package/lib/esm/components-react/datepicker/IntlFormatter.js +11 -11
  640. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  641. package/lib/esm/components-react/datepicker/TimeField.d.ts +1 -1
  642. package/lib/esm/components-react/datepicker/TimeField.d.ts.map +1 -1
  643. package/lib/esm/components-react/datepicker/TimeField.js +72 -31
  644. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  645. package/lib/esm/components-react/editors/BooleanEditor.d.ts.map +1 -1
  646. package/lib/esm/components-react/editors/BooleanEditor.js +10 -6
  647. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  648. package/lib/esm/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
  649. package/lib/esm/components-react/editors/CustomNumberEditor.js +49 -29
  650. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  651. package/lib/esm/components-react/editors/CustomNumberEditor.scss +4 -4
  652. package/lib/esm/components-react/editors/DateTimeEditor.d.ts +6 -6
  653. package/lib/esm/components-react/editors/DateTimeEditor.d.ts.map +1 -1
  654. package/lib/esm/components-react/editors/DateTimeEditor.js +26 -21
  655. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  656. package/lib/esm/components-react/editors/DateTimeEditor.scss +4 -4
  657. package/lib/esm/components-react/editors/EditorContainer.d.ts +3 -3
  658. package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
  659. package/lib/esm/components-react/editors/EditorContainer.js +21 -13
  660. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  661. package/lib/esm/components-react/editors/EditorContainer.scss +4 -4
  662. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  663. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +21 -12
  664. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  665. package/lib/esm/components-react/editors/EnumEditor.d.ts +5 -5
  666. package/lib/esm/components-react/editors/EnumEditor.d.ts.map +1 -1
  667. package/lib/esm/components-react/editors/EnumEditor.js +26 -15
  668. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  669. package/lib/esm/components-react/editors/EnumEditor.scss +5 -5
  670. package/lib/esm/components-react/editors/IconEditor.d.ts.map +1 -1
  671. package/lib/esm/components-react/editors/IconEditor.js +11 -9
  672. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  673. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  674. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js +14 -7
  675. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  676. package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  677. package/lib/esm/components-react/editors/NumericInputEditor.js +26 -9
  678. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  679. package/lib/esm/components-react/editors/NumericInputEditor.scss +4 -6
  680. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  681. package/lib/esm/components-react/editors/PopupButton.js +8 -5
  682. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  683. package/lib/esm/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
  684. package/lib/esm/components-react/editors/PropertyEditorManager.js +7 -5
  685. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  686. package/lib/esm/components-react/editors/SliderEditor.d.ts.map +1 -1
  687. package/lib/esm/components-react/editors/SliderEditor.js +47 -20
  688. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  689. package/lib/esm/components-react/editors/SliderEditor.scss +4 -4
  690. package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
  691. package/lib/esm/components-react/editors/TextEditor.js +24 -9
  692. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  693. package/lib/esm/components-react/editors/TextEditor.scss +4 -4
  694. package/lib/esm/components-react/editors/TextareaEditor.d.ts.map +1 -1
  695. package/lib/esm/components-react/editors/TextareaEditor.js +22 -9
  696. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  697. package/lib/esm/components-react/editors/TextareaEditor.scss +4 -4
  698. package/lib/esm/components-react/editors/ToggleEditor.d.ts.map +1 -1
  699. package/lib/esm/components-react/editors/ToggleEditor.js +13 -9
  700. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  701. package/lib/esm/components-react/editors/variables.scss +4 -4
  702. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  703. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +3 -3
  704. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  705. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  706. package/lib/esm/components-react/favorite/FavoritePropertyList.js +4 -5
  707. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  708. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  709. package/lib/esm/components-react/filter-builder/FilterBuilder.js +17 -7
  710. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  711. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  712. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +6 -4
  713. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  714. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +1 -0
  715. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  716. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +26 -19
  717. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  718. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  719. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +47 -23
  720. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  721. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  722. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +6 -6
  723. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  724. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  725. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +9 -7
  726. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  727. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  728. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +5 -5
  729. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  730. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  731. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +22 -14
  732. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  733. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  734. package/lib/esm/components-react/filter-builder/Operators.js +17 -18
  735. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  736. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  737. package/lib/esm/components-react/filter-builder/Types.js +3 -3
  738. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  739. package/lib/esm/components-react/filtering/FilteringInput.d.ts +1 -1
  740. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  741. package/lib/esm/components-react/filtering/FilteringInput.js +23 -21
  742. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  743. package/lib/esm/components-react/filtering/FilteringInput.scss +4 -4
  744. package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
  745. package/lib/esm/components-react/filtering/ResultSelector.js +16 -9
  746. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  747. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  748. package/lib/esm/components-react/iconpicker/IconPickerButton.js +9 -10
  749. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  750. package/lib/esm/components-react/inputs/ParsedInput.d.ts +1 -1
  751. package/lib/esm/components-react/inputs/ParsedInput.d.ts.map +1 -1
  752. package/lib/esm/components-react/inputs/ParsedInput.js +8 -7
  753. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  754. package/lib/esm/components-react/inputs/ParsedInput.scss +4 -4
  755. package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
  756. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  757. package/lib/esm/components-react/properties/ItemStyle.js +7 -7
  758. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  759. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  760. package/lib/esm/components-react/properties/LinkHandler.js +4 -4
  761. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  762. package/lib/esm/components-react/properties/ValueRendererManager.d.ts.map +1 -1
  763. package/lib/esm/components-react/properties/ValueRendererManager.js +5 -4
  764. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  765. package/lib/esm/components-react/properties/renderers/ActionButtonList.d.ts.map +1 -1
  766. package/lib/esm/components-react/properties/renderers/ActionButtonList.js +5 -5
  767. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  768. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  769. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js +3 -3
  770. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  771. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.d.ts.map +1 -1
  772. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +22 -11
  773. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  774. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
  775. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +11 -10
  776. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  777. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  778. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts.map +1 -1
  779. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +15 -8
  780. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  781. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.d.ts.map +1 -1
  782. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js +24 -7
  783. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  784. package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
  785. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +10 -9
  786. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  787. package/lib/esm/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
  788. package/lib/esm/components-react/properties/renderers/PropertyView.js +12 -16
  789. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  790. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  791. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +4 -4
  792. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  793. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts.map +1 -1
  794. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +3 -3
  795. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  796. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  797. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
  798. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +7 -5
  799. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  800. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts.map +1 -1
  801. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +6 -5
  802. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  803. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  804. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -6
  805. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  806. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts.map +1 -1
  807. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +5 -4
  808. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  809. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -2
  810. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  811. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +7 -10
  812. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  813. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  814. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -6
  815. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  816. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  817. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +6 -8
  818. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  819. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts.map +1 -1
  820. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -4
  821. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  822. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  823. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +11 -7
  824. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  825. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  826. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js +4 -4
  827. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  828. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts.map +1 -1
  829. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js +8 -5
  830. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  831. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  832. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +7 -4
  833. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  834. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.d.ts.map +1 -1
  835. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js +3 -3
  836. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  837. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  838. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -3
  839. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  840. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +1 -1
  841. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts.map +1 -1
  842. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js +3 -3
  843. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  844. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  845. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +3 -3
  846. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  847. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +2 -0
  848. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  849. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +38 -7
  850. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  851. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  852. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +6 -5
  853. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  854. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  855. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +8 -8
  856. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  857. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +4 -5
  858. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  859. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  860. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  861. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  862. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +13 -7
  863. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  864. package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
  865. package/lib/esm/components-react/propertygrid/component/PropertyList.js +16 -6
  866. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  867. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -0
  868. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  869. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +65 -27
  870. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  871. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  872. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +7 -5
  873. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  874. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +6 -6
  875. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts.map +1 -1
  876. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +56 -20
  877. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  878. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts.map +1 -1
  879. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +11 -7
  880. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  881. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts.map +1 -1
  882. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +10 -6
  883. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  884. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts.map +1 -1
  885. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +10 -6
  886. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  887. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts.map +1 -1
  888. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +10 -6
  889. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  890. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts.map +1 -1
  891. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +3 -3
  892. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  893. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts.map +1 -1
  894. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +3 -3
  895. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  896. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  897. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +7 -5
  898. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  899. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts.map +1 -1
  900. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +3 -3
  901. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  902. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  903. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +3 -3
  904. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  905. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  906. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +3 -3
  907. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  908. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  909. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js +3 -3
  910. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  911. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts.map +1 -1
  912. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +10 -6
  913. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  914. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts.map +1 -1
  915. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +4 -4
  916. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  917. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts.map +1 -1
  918. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +10 -6
  919. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  920. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  921. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +4 -1
  922. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  923. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +3 -3
  924. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  925. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +6 -7
  926. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  927. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  928. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +9 -5
  929. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  930. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts.map +1 -1
  931. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  932. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  933. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +4 -5
  934. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  935. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  936. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +4 -4
  937. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  938. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  939. package/lib/esm/components-react/selectable-content/SelectableContent.js +4 -6
  940. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  941. package/lib/esm/components-react/toolbar/Item.d.ts.map +1 -1
  942. package/lib/esm/components-react/toolbar/Item.js +4 -5
  943. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  944. package/lib/esm/components-react/toolbar/Item.scss +7 -5
  945. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  946. package/lib/esm/components-react/toolbar/ItemWrapper.js +5 -5
  947. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  948. package/lib/esm/components-react/toolbar/Items.d.ts.map +1 -1
  949. package/lib/esm/components-react/toolbar/Items.js +17 -9
  950. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  951. package/lib/esm/components-react/toolbar/Overflow.d.ts.map +1 -1
  952. package/lib/esm/components-react/toolbar/Overflow.js +4 -4
  953. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  954. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  955. package/lib/esm/components-react/toolbar/OverflowPanel.js +16 -11
  956. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  957. package/lib/esm/components-react/toolbar/PopupItem.d.ts.map +1 -1
  958. package/lib/esm/components-react/toolbar/PopupItem.js +8 -10
  959. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  960. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  961. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +22 -13
  962. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  963. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  964. package/lib/esm/components-react/toolbar/PopupItemsPanel.js +24 -23
  965. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  966. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  967. package/lib/esm/components-react/toolbar/Toolbar.js +31 -18
  968. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  969. package/lib/esm/components-react/toolbar/Toolbar.scss +6 -6
  970. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  971. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  972. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +98 -58
  973. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  974. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.d.ts.map +1 -1
  975. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js +3 -3
  976. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  977. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  978. package/lib/esm/components-react/toolbar/groupPanel/Column.js +3 -3
  979. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  980. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  981. package/lib/esm/components-react/toolbar/groupPanel/Columns.js +3 -3
  982. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  983. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  984. package/lib/esm/components-react/toolbar/groupPanel/Panel.js +3 -3
  985. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  986. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  987. package/lib/esm/components-react/toolbar/groupPanel/Title.js +3 -3
  988. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  989. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +4 -4
  990. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.d.ts.map +1 -1
  991. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js +3 -3
  992. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  993. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +5 -4
  994. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  995. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js +4 -5
  996. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  997. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +4 -4
  998. package/lib/esm/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
  999. package/lib/esm/components-react/toolbar/useDragInteraction.js +6 -5
  1000. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  1001. package/lib/esm/components-react/toolbar/utilities/Direction.d.ts.map +1 -1
  1002. package/lib/esm/components-react/toolbar/utilities/Direction.js +3 -3
  1003. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  1004. package/lib/esm/components-react/tree/HighlightingEngine.d.ts.map +1 -1
  1005. package/lib/esm/components-react/tree/HighlightingEngine.js +4 -4
  1006. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  1007. package/lib/esm/components-react/tree/HighlightingEngine.scss +4 -4
  1008. package/lib/esm/components-react/tree/ImageLoader.d.ts.map +1 -1
  1009. package/lib/esm/components-react/tree/ImageLoader.js +3 -3
  1010. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  1011. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  1012. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js +3 -3
  1013. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  1014. package/lib/esm/components-react/tree/TreeComponentTestId.d.ts.map +1 -1
  1015. package/lib/esm/components-react/tree/TreeComponentTestId.js +3 -3
  1016. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  1017. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  1018. package/lib/esm/components-react/tree/TreeDataProvider.js +9 -7
  1019. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  1020. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  1021. package/lib/esm/components-react/tree/controlled/Observable.js +6 -4
  1022. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  1023. package/lib/esm/components-react/tree/controlled/TreeActions.js +3 -3
  1024. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  1025. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
  1026. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +42 -24
  1027. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  1028. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts +3 -3
  1029. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
  1030. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js +12 -8
  1031. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  1032. package/lib/esm/components-react/tree/controlled/TreeEvents.d.ts.map +1 -1
  1033. package/lib/esm/components-react/tree/controlled/TreeEvents.js +3 -3
  1034. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  1035. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  1036. package/lib/esm/components-react/tree/controlled/TreeHooks.js +3 -3
  1037. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  1038. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  1039. package/lib/esm/components-react/tree/controlled/TreeModel.js +39 -14
  1040. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  1041. package/lib/esm/components-react/tree/controlled/TreeModelSource.d.ts.map +1 -1
  1042. package/lib/esm/components-react/tree/controlled/TreeModelSource.js +22 -8
  1043. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  1044. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  1045. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +49 -31
  1046. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  1047. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  1048. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +14 -14
  1049. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  1050. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +5 -6
  1051. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts +11 -6
  1052. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  1053. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +15 -14
  1054. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  1055. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  1056. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js +3 -3
  1057. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  1058. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +17 -0
  1059. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  1060. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +16 -7
  1061. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  1062. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  1063. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +49 -19
  1064. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  1065. package/lib/esm/components-react/tree/controlled/internal/SparseTree.d.ts.map +1 -1
  1066. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +3 -3
  1067. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  1068. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
  1069. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +9 -5
  1070. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  1071. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  1072. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +39 -21
  1073. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  1074. package/lib/esm/components-react.d.ts +1 -0
  1075. package/lib/esm/components-react.d.ts.map +1 -1
  1076. package/lib/esm/components-react.js +4 -3
  1077. package/lib/esm/components-react.js.map +1 -1
  1078. package/package.json +12 -21
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module Tree
8
8
  */
@@ -19,7 +19,9 @@ const SparseTree_1 = require("./internal/SparseTree");
19
19
  * @public
20
20
  */
21
21
  function isTreeModelNode(obj) {
22
- return obj !== undefined && !isTreeModelNodePlaceholder(obj) && !isTreeModelRootNode(obj);
22
+ return (obj !== undefined &&
23
+ !isTreeModelNodePlaceholder(obj) &&
24
+ !isTreeModelRootNode(obj));
23
25
  }
24
26
  exports.isTreeModelNode = isTreeModelNode;
25
27
  /**
@@ -35,7 +37,9 @@ exports.isTreeModelNodePlaceholder = isTreeModelNodePlaceholder;
35
37
  * @public
36
38
  */
37
39
  function isTreeModelRootNode(obj) {
38
- return obj !== undefined && obj.id === undefined && !("childIndex" in obj);
40
+ return (obj !== undefined &&
41
+ obj.id === undefined &&
42
+ !("childIndex" in obj));
39
43
  }
40
44
  exports.isTreeModelRootNode = isTreeModelRootNode;
41
45
  /**
@@ -46,7 +50,11 @@ class MutableTreeModel {
46
50
  constructor(seed) {
47
51
  this[_a] = true;
48
52
  this._tree = new SparseTree_1.SparseTree();
49
- this._rootNode = { depth: -1, id: undefined, numChildren: undefined };
53
+ this._rootNode = {
54
+ depth: -1,
55
+ id: undefined,
56
+ numChildren: undefined,
57
+ };
50
58
  if (!seed) {
51
59
  return;
52
60
  }
@@ -152,15 +160,20 @@ class MutableTreeModel {
152
160
  if (sourceNode === undefined) {
153
161
  return false;
154
162
  }
155
- const targetParent = targetParentId === undefined ? this._rootNode : this.getNode(targetParentId);
163
+ const targetParent = targetParentId === undefined
164
+ ? this._rootNode
165
+ : this.getNode(targetParentId);
156
166
  if (targetParent === undefined || targetParent.numChildren === undefined) {
157
167
  return false;
158
168
  }
159
- if (targetParentId !== undefined && this.areNodesRelated(sourceNodeId, targetParentId)) {
169
+ if (targetParentId !== undefined &&
170
+ this.areNodesRelated(sourceNodeId, targetParentId)) {
160
171
  return false;
161
172
  }
162
173
  this._tree.moveNode(sourceNode.parentId, sourceNodeId, targetParentId, targetIndex);
163
- const sourceParent = sourceNode.parentId === undefined ? this._rootNode : this.getNode(sourceNode.parentId);
174
+ const sourceParent = sourceNode.parentId === undefined
175
+ ? this._rootNode
176
+ : this.getNode(sourceNode.parentId);
164
177
  (0, core_bentley_1.assert)(sourceParent !== undefined);
165
178
  MutableTreeModel.setNumChildrenForNode(sourceParent, this._tree.getChildren(sourceNode.parentId));
166
179
  MutableTreeModel.setNumChildrenForNode(targetParent, this._tree.getChildren(targetParentId));
@@ -184,7 +197,9 @@ class MutableTreeModel {
184
197
  if (node === undefined || node.parentId === undefined) {
185
198
  return false;
186
199
  }
187
- return node.parentId === ancestorNodeId ? true : this.areNodesRelated(ancestorNodeId, node.parentId);
200
+ return node.parentId === ancestorNodeId
201
+ ? true
202
+ : this.areNodesRelated(ancestorNodeId, node.parentId);
188
203
  }
189
204
  /**
190
205
  * Sets the number of child nodes a parent is expected to contain. All child nodes of this parent will be subsequently
@@ -302,13 +317,21 @@ function getVisibleDescendants(model, parentNode, result = []) {
302
317
  let index = 0;
303
318
  for (const childId of children) {
304
319
  if (childId === undefined) {
305
- result.push({ parentId: parentNode.id, depth: parentNode.depth + 1, childIndex: index });
320
+ result.push({
321
+ parentId: parentNode.id,
322
+ depth: parentNode.depth + 1,
323
+ childIndex: index,
324
+ });
306
325
  }
307
326
  else {
308
327
  const childNode = model.getNode(childId);
309
328
  if (childNode === undefined) {
310
329
  // node was disposed
311
- result.push({ parentId: parentNode.id, depth: parentNode.depth + 1, childIndex: index });
330
+ result.push({
331
+ parentId: parentNode.id,
332
+ depth: parentNode.depth + 1,
333
+ childIndex: index,
334
+ });
312
335
  }
313
336
  else {
314
337
  result.push(childNode);
@@ -324,8 +347,10 @@ function getVisibleDescendants(model, parentNode, result = []) {
324
347
  exports.getVisibleDescendants = getVisibleDescendants;
325
348
  function cloneSubree(source, target, parentId) {
326
349
  var _b, _c;
327
- target.setNumChildren(parentId, (parentId === undefined ? source.getRootNode() : source.getNode(parentId)).numChildren);
328
- for (const [childId, index] of (_c = (_b = source.getChildren(parentId)) === null || _b === void 0 ? void 0 : _b.iterateValues()) !== null && _c !== void 0 ? _c : []) {
350
+ target.setNumChildren(parentId, (parentId === undefined ? source.getRootNode() : source.getNode(parentId))
351
+ .numChildren);
352
+ for (const [childId, index] of (_c = (_b = source
353
+ .getChildren(parentId)) === null || _b === void 0 ? void 0 : _b.iterateValues()) !== null && _c !== void 0 ? _c : []) {
329
354
  const node = source.getNode(childId);
330
355
  target.setChildren(parentId, [{ ...node, isLoading: !!node.isLoading }], index);
331
356
  cloneSubree(source, target, childId);
@@ -1 +1 @@
1
- {"version":3,"file":"TreeModel.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport { immerable } from \"immer\";\nimport { cloneDeep } from \"lodash\";\nimport { assert } from \"@itwin/core-bentley\";\nimport type { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { CheckBoxState } from \"@itwin/core-react\";\nimport type { DelayLoadedTreeNodeItem, ImmediatelyLoadedTreeNodeItem, TreeNodeItem } from \"../TreeDataProvider\";\nimport type { SparseArray} from \"./internal/SparseTree\";\nimport { SparseTree } from \"./internal/SparseTree\";\n\n/**\n * Immutable data structure that describes tree node.\n * @public\n */\nexport interface TreeModelNode {\n readonly id: string;\n readonly parentId: string | undefined;\n readonly depth: number;\n\n readonly isLoading?: boolean;\n readonly numChildren: number | undefined;\n\n readonly description: string | undefined;\n readonly isExpanded: boolean;\n readonly label: PropertyRecord;\n readonly isSelected: boolean;\n readonly isSelectionDisabled?: boolean;\n\n /** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */\n readonly editingInfo?: TreeModelNodeEditingInfo;\n\n readonly checkbox: CheckBoxInfo;\n\n readonly item: TreeNodeItem;\n}\n\n/**\n * Immutable data structure that describes checkbox info.\n * @public\n */\nexport interface CheckBoxInfo {\n readonly state: CheckBoxState;\n readonly tooltip?: string;\n readonly isDisabled: boolean;\n readonly isVisible: boolean;\n}\n\n/**\n * Mutable data structure that describes tree node.\n * @public\n */\nexport interface MutableTreeModelNode extends TreeModelNode {\n isLoading: boolean;\n\n description: string;\n isExpanded: boolean;\n label: PropertyRecord;\n isSelected: boolean;\n isSelectionDisabled?: boolean;\n\n /** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */\n editingInfo?: TreeModelNodeEditingInfo;\n\n checkbox: MutableCheckBoxInfo;\n\n item: TreeNodeItem;\n}\n\n/**\n * Data structure that holds callbacks used for tree node editing.\n * @public\n */\nexport interface TreeModelNodeEditingInfo {\n onCommit: (node: TreeModelNode, newValue: string) => void;\n onCancel: () => void;\n}\n\n/**\n * Mutable data structure that describes checkbox info.\n * @public\n */\nexport interface MutableCheckBoxInfo extends CheckBoxInfo {\n state: CheckBoxState;\n tooltip?: string;\n isDisabled: boolean;\n isVisible: boolean;\n}\n\n/**\n * Data structure that describes tree node placeholder.\n * @public\n */\nexport interface TreeModelNodePlaceholder {\n readonly childIndex: number;\n readonly depth: number;\n readonly parentId?: string;\n}\n\n/**\n * Data structure that describes tree root node.\n * @public\n */\nexport interface TreeModelRootNode {\n readonly depth: -1;\n readonly id: undefined;\n readonly numChildren: number | undefined;\n}\n\n/**\n * Data structure that describes input used to create tree node.\n * @public\n */\nexport interface TreeModelNodeInput {\n readonly description?: string;\n readonly isExpanded: boolean;\n readonly id: string;\n readonly item: TreeNodeItem;\n readonly label: PropertyRecord;\n readonly isLoading: boolean;\n readonly numChildren?: number;\n readonly isSelected: boolean;\n}\n\n/**\n * Type definition of all tree model nodes.\n * @public\n */\nexport type TreeModelNodeType = TreeModelNode | TreeModelNodePlaceholder | TreeModelRootNode;\n\n/**\n * Checks if object is [[TreeModelNode]]\n * @public\n */\nexport function isTreeModelNode(obj: TreeModelNodeType | undefined): obj is TreeModelNode {\n return obj !== undefined && !isTreeModelNodePlaceholder(obj) && !isTreeModelRootNode(obj);\n}\n\n/**\n * Checks if object is [[TreeModelNodePlaceholder]]\n * @public\n */\nexport function isTreeModelNodePlaceholder(obj: TreeModelNodeType | undefined): obj is TreeModelNodePlaceholder {\n return obj !== undefined && \"childIndex\" in obj;\n}\n\n/**\n * Checks if object is [[TreeModelRootNode]]\n * @public\n */\nexport function isTreeModelRootNode(obj: TreeModelNodeType | undefined): obj is TreeModelRootNode {\n return obj !== undefined && (obj as TreeModelRootNode).id === undefined && !(\"childIndex\" in obj);\n}\n\n/**\n * Type definition of tree node item data.\n * @public\n */\nexport type TreeNodeItemData = ImmediatelyLoadedTreeNodeItem & DelayLoadedTreeNodeItem;\n\n/**\n * Data structure that describes set of visible tree nodes as a flat list.\n * @public\n */\nexport interface VisibleTreeNodes extends Iterable<TreeModelNode | TreeModelNodePlaceholder> {\n getNumNodes(): number;\n getAtIndex(index: number): TreeModelNode | TreeModelNodePlaceholder | undefined;\n getModel(): TreeModel;\n getNumRootNodes(): number | undefined;\n getIndexOfNode(nodeId: string): number;\n}\n\n/**\n * Data structure that describes tree model.\n * @public\n */\nexport interface TreeModel {\n getRootNode(): TreeModelRootNode;\n\n getNode(id: string): TreeModelNode | undefined;\n getNode(parentId: string | undefined, childIndex: number): TreeModelNode | TreeModelNodePlaceholder | undefined;\n getNode(nodeId: string | undefined, childIndex?: number): TreeModelNode | TreeModelNodePlaceholder | TreeModelRootNode | undefined;\n\n getChildren(parentId: string | undefined): SparseArray<string> | undefined;\n getChildOffset(parentId: string | undefined, childId: string): number | undefined;\n\n iterateTreeModelNodes(parentId?: string): IterableIterator<TreeModelNode>;\n}\n\n/**\n * Mutable tree model which holds nodes and allows adding or removing them.\n * @public\n */\nexport class MutableTreeModel implements TreeModel {\n public [immerable] = true;\n\n private _tree = new SparseTree<MutableTreeModelNode>();\n private _rootNode: TreeModelRootNode = { depth: -1, id: undefined, numChildren: undefined };\n\n public constructor(seed?: TreeModel) {\n if (!seed) {\n return;\n }\n\n cloneSubree(seed, this, undefined);\n }\n\n /** Returns root node of a tree. This node is not visible and is there to allow having multiple visible root nodes. */\n public getRootNode(): TreeModelRootNode {\n return this._rootNode;\n }\n\n /** Returns tree node or placeholder for node that is not loaded yet.\n * @returns node, node placeholder or undefined if node is not found in model.\n */\n public getNode(id: string): MutableTreeModelNode | undefined;\n public getNode(parentId: string | undefined, childIndex: number): MutableTreeModelNode | TreeModelNodePlaceholder | undefined;\n public getNode(nodeId: string | undefined, childIndex?: number): MutableTreeModelNode | TreeModelNodePlaceholder | undefined {\n if (childIndex === undefined) {\n return this._tree.getNode(nodeId!);\n }\n\n const children = this._tree.getChildren(nodeId);\n const childId = children !== undefined ? children.get(childIndex) : undefined;\n if (childId !== undefined) {\n return this._tree.getNode(childId);\n }\n\n const parentNode = nodeId === undefined ? this._rootNode : this._tree.getNode(nodeId);\n if (parentNode !== undefined) {\n return {\n childIndex,\n depth: parentNode.depth + 1,\n parentId: nodeId,\n };\n }\n\n return undefined;\n }\n\n /** Returns children for specific parent.\n * @param parentId id of parent node.\n * @returns children of parent node or root nodes if undefined is passed as parent id.\n */\n public getChildren(parentId: string | undefined): SparseArray<string> | undefined {\n return this._tree.getChildren(parentId);\n }\n\n /** Returns children offset in children array for specific parent. */\n public getChildOffset(parentId: string | undefined, childId: string): number | undefined {\n return this._tree.getChildOffset(parentId, childId);\n }\n\n /**\n * Sets children for parent node starting from the specific offset.\n * If offset overlaps with already added nodes, the overlapping nodes are overwritten.\n */\n public setChildren(parentId: string | undefined, nodeInputs: TreeModelNodeInput[], offset: number): void {\n const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined)\n return;\n\n const children: MutableTreeModelNode[] = [];\n for (const input of nodeInputs) {\n const child = MutableTreeModel.createTreeModelNode(parentNode, input);\n children.push(child);\n }\n\n this._tree.setChildren(parentNode.id, children, offset);\n MutableTreeModel.setNumChildrenForNode(parentNode, this._tree.getChildren(parentNode.id));\n }\n\n /**\n * Inserts child in the specified position.\n * If offset is higher then current length of children array, the length is increased.\n */\n public insertChild(parentId: string | undefined, childNodeInput: TreeModelNodeInput, offset: number): void {\n const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined)\n return;\n\n const child = MutableTreeModel.createTreeModelNode(parentNode, childNodeInput);\n\n this._tree.insertChild(parentNode.id, child, offset);\n MutableTreeModel.setNumChildrenForNode(parentNode, this._tree.getChildren(parentNode.id));\n }\n\n /**\n * Changes the id of target node.\n * @returns `true` on success, `false` otherwise.\n */\n public changeNodeId(currentId: string, newId: string): boolean {\n const node = this.getNode(currentId);\n if (node === undefined) {\n return false;\n }\n\n if (currentId === newId) {\n return true;\n }\n\n const index = this.getChildOffset(node.parentId, currentId);\n assert(index !== undefined);\n\n if (!this._tree.setNodeId(node.parentId, index, newId)) {\n return false;\n }\n\n (node.id as string) = newId; // eslint-disable-line @typescript-eslint/no-unnecessary-type-assertion\n for (const [childId] of this.getChildren(newId)?.iterateValues() ?? []) {\n const child = this.getNode(childId);\n assert(child !== undefined);\n (child.parentId as string) = newId;\n }\n\n return true;\n }\n\n /**\n * Transfers node along with its children to a new location. Fails if destination has undefined child count.\n * @param sourceNodeId Node that is being moved.\n * @param targetParentId Node that will receive a new child.\n * @param targetIndex Insertion location among target's *current* children.\n * @returns `true` on success, `false` otherwise.\n */\n public moveNode(sourceNodeId: string, targetParentId: string | undefined, targetIndex: number): boolean {\n const sourceNode = this.getNode(sourceNodeId);\n if (sourceNode === undefined) {\n return false;\n }\n\n const targetParent = targetParentId === undefined ? this._rootNode : this.getNode(targetParentId);\n if (targetParent === undefined || targetParent.numChildren === undefined) {\n return false;\n }\n\n if (targetParentId !== undefined && this.areNodesRelated(sourceNodeId, targetParentId)) {\n return false;\n }\n\n this._tree.moveNode(sourceNode.parentId, sourceNodeId, targetParentId, targetIndex);\n\n const sourceParent = sourceNode.parentId === undefined ? this._rootNode : this.getNode(sourceNode.parentId);\n assert(sourceParent !== undefined);\n MutableTreeModel.setNumChildrenForNode(sourceParent, this._tree.getChildren(sourceNode.parentId));\n MutableTreeModel.setNumChildrenForNode(targetParent, this._tree.getChildren(targetParentId));\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (sourceNode.parentId as string | undefined) = targetParentId;\n\n const updateDepths = (parentId: string, depth: number) => {\n const node = this.getNode(parentId);\n assert(node !== undefined);\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (node.depth as number) = depth;\n for (const [nodeId] of this.getChildren(parentId)?.iterateValues() ?? []) {\n updateDepths(nodeId, depth + 1);\n }\n };\n\n updateDepths(sourceNodeId, targetParent.depth + 1);\n return true;\n }\n\n private areNodesRelated(ancestorNodeId: string, descendantNodeId: string): boolean {\n const node = this.getNode(descendantNodeId);\n if (node === undefined || node.parentId === undefined) {\n return false;\n }\n\n return node.parentId === ancestorNodeId ? true : this.areNodesRelated(ancestorNodeId, node.parentId);\n }\n\n /**\n * Sets the number of child nodes a parent is expected to contain. All child nodes of this parent will be subsequently\n * removed.\n */\n public setNumChildren(parentId: string | undefined, numChildren: number | undefined): void {\n const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined) {\n return;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (parentNode.numChildren as number | undefined) = numChildren;\n this._tree.setNumChildren(parentId, numChildren ?? 0);\n }\n\n /** Removes children specified by id.\n * @param parentId id of the parent node.\n * @param child child node id or index that should be removed.\n */\n public removeChild(parentId: string | undefined, child: string | number): void {\n const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n this._tree.removeChild(parentId, child);\n\n // istanbul ignore else\n if (parentNode)\n MutableTreeModel.setNumChildrenForNode(parentNode, this._tree.getChildren(parentNode.id));\n }\n\n /** Removes all children for parent specified by id.\n * @param parentId id of parent node or undefined to remove root nodes.\n */\n public clearChildren(parentId: string | undefined) {\n const parentNode = parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (parentNode.numChildren as number | undefined) = undefined;\n }\n this._tree.deleteSubtree(parentId, false);\n }\n\n /** Iterates over all nodes present in the tree model. */\n public * iterateTreeModelNodes(parentId?: string): IterableIterator<MutableTreeModelNode> {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const _this = this;\n function* iterateDescendants(subParentId: string | undefined): IterableIterator<MutableTreeModelNode> {\n const children = _this.getChildren(subParentId);\n if (children === undefined) {\n return;\n }\n\n for (const [nodeId] of children.iterateValues()) {\n const node = _this.getNode(nodeId);\n if (node !== undefined) {\n yield node;\n yield* iterateDescendants(nodeId);\n }\n }\n }\n\n yield* iterateDescendants(parentId);\n }\n\n private static setNumChildrenForNode(node: TreeModelRootNode | MutableTreeModelNode, children: SparseArray<string> | undefined) {\n const numChildren = children ? children.getLength() : undefined;\n if (node.numChildren === numChildren)\n return;\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (node.numChildren as number | undefined) = numChildren;\n }\n\n private static createTreeModelNode(parentNode: TreeModelNode | TreeModelRootNode, input: TreeModelNodeInput): MutableTreeModelNode {\n return {\n id: input.id,\n parentId: parentNode.id,\n depth: parentNode.depth + 1,\n\n isLoading: input.isLoading,\n numChildren: input.numChildren,\n\n description: input.description || \"\",\n isExpanded: input.isExpanded,\n label: input.label,\n isSelected: input.isSelected,\n isSelectionDisabled: input.item.isSelectionDisabled,\n\n checkbox: {\n state: input.item.checkBoxState || CheckBoxState.Off,\n isDisabled: !!input.item.isCheckboxDisabled,\n isVisible: !!input.item.isCheckboxVisible,\n },\n\n item: cloneDeep(input.item),\n };\n }\n}\n\n/**\n * Generates flat list of visible nodes in the tree model.\n * @public\n */\nexport function computeVisibleNodes(model: TreeModel): VisibleTreeNodes {\n const result = getVisibleDescendants(model, model.getRootNode());\n return {\n getNumNodes: () => result.length,\n getAtIndex: (index: number): TreeModelNode | TreeModelNodePlaceholder | undefined => {\n return result[index];\n },\n getModel: () => model,\n getNumRootNodes: () => model.getRootNode().numChildren,\n [Symbol.iterator]: () => result[Symbol.iterator](),\n getIndexOfNode: (nodeId: string): number => {\n return result.findIndex((visibleNode) => (visibleNode as TreeModelNode).id === nodeId);\n },\n };\n}\n\n/**\n * Traverses the tree and collects visible descendants.\n * @public\n */\nexport function getVisibleDescendants(\n model: TreeModel,\n parentNode: TreeModelNode | TreeModelRootNode,\n result: Array<TreeModelNode | TreeModelNodePlaceholder> = [],\n): Array<TreeModelNode | TreeModelNodePlaceholder> {\n const children = model.getChildren(parentNode.id);\n if (!children) {\n return result;\n }\n\n let index = 0;\n for (const childId of children) {\n if (childId === undefined) {\n result.push({ parentId: parentNode.id, depth: parentNode.depth + 1, childIndex: index });\n } else {\n const childNode = model.getNode(childId);\n if (childNode === undefined) {\n // node was disposed\n result.push({ parentId: parentNode.id, depth: parentNode.depth + 1, childIndex: index });\n } else {\n result.push(childNode);\n if (childNode.isExpanded && childNode.numChildren !== undefined) {\n getVisibleDescendants(model, childNode, result);\n }\n }\n }\n ++index;\n }\n\n return result;\n}\n\nfunction cloneSubree(source: TreeModel, target: MutableTreeModel, parentId: string | undefined): void {\n target.setNumChildren(\n parentId,\n (parentId === undefined ? source.getRootNode() : source.getNode(parentId)!).numChildren,\n );\n for (const [childId, index] of source.getChildren(parentId)?.iterateValues() ?? []) {\n const node = source.getNode(childId)!;\n target.setChildren(parentId, [{ ...node, isLoading: !!node.isLoading }], index);\n cloneSubree(source, target, childId);\n }\n}\n"]}
1
+ {"version":3,"file":"TreeModel.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport { immerable } from \"immer\";\nimport { cloneDeep } from \"lodash\";\nimport { assert } from \"@itwin/core-bentley\";\nimport type { PropertyRecord } from \"@itwin/appui-abstract\";\nimport { CheckBoxState } from \"@itwin/core-react\";\nimport type {\n DelayLoadedTreeNodeItem,\n ImmediatelyLoadedTreeNodeItem,\n TreeNodeItem,\n} from \"../TreeDataProvider\";\nimport type { SparseArray } from \"./internal/SparseTree\";\nimport { SparseTree } from \"./internal/SparseTree\";\n\n/**\n * Immutable data structure that describes tree node.\n * @public\n */\nexport interface TreeModelNode {\n readonly id: string;\n readonly parentId: string | undefined;\n readonly depth: number;\n\n readonly isLoading?: boolean;\n readonly numChildren: number | undefined;\n\n readonly description: string | undefined;\n readonly isExpanded: boolean;\n readonly label: PropertyRecord;\n readonly isSelected: boolean;\n readonly isSelectionDisabled?: boolean;\n\n /** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */\n readonly editingInfo?: TreeModelNodeEditingInfo;\n\n readonly checkbox: CheckBoxInfo;\n\n readonly item: TreeNodeItem;\n}\n\n/**\n * Immutable data structure that describes checkbox info.\n * @public\n */\nexport interface CheckBoxInfo {\n readonly state: CheckBoxState;\n readonly tooltip?: string;\n readonly isDisabled: boolean;\n readonly isVisible: boolean;\n}\n\n/**\n * Mutable data structure that describes tree node.\n * @public\n */\nexport interface MutableTreeModelNode extends TreeModelNode {\n isLoading: boolean;\n\n description: string;\n isExpanded: boolean;\n label: PropertyRecord;\n isSelected: boolean;\n isSelectionDisabled?: boolean;\n\n /** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */\n editingInfo?: TreeModelNodeEditingInfo;\n\n checkbox: MutableCheckBoxInfo;\n\n item: TreeNodeItem;\n}\n\n/**\n * Data structure that holds callbacks used for tree node editing.\n * @public\n */\nexport interface TreeModelNodeEditingInfo {\n onCommit: (node: TreeModelNode, newValue: string) => void;\n onCancel: () => void;\n}\n\n/**\n * Mutable data structure that describes checkbox info.\n * @public\n */\nexport interface MutableCheckBoxInfo extends CheckBoxInfo {\n state: CheckBoxState;\n tooltip?: string;\n isDisabled: boolean;\n isVisible: boolean;\n}\n\n/**\n * Data structure that describes tree node placeholder.\n * @public\n */\nexport interface TreeModelNodePlaceholder {\n readonly childIndex: number;\n readonly depth: number;\n readonly parentId?: string;\n}\n\n/**\n * Data structure that describes tree root node.\n * @public\n */\nexport interface TreeModelRootNode {\n readonly depth: -1;\n readonly id: undefined;\n readonly numChildren: number | undefined;\n}\n\n/**\n * Data structure that describes input used to create tree node.\n * @public\n */\nexport interface TreeModelNodeInput {\n readonly description?: string;\n readonly isExpanded: boolean;\n readonly id: string;\n readonly item: TreeNodeItem;\n readonly label: PropertyRecord;\n readonly isLoading: boolean;\n readonly numChildren?: number;\n readonly isSelected: boolean;\n}\n\n/**\n * Type definition of all tree model nodes.\n * @public\n */\nexport type TreeModelNodeType =\n | TreeModelNode\n | TreeModelNodePlaceholder\n | TreeModelRootNode;\n\n/**\n * Checks if object is [[TreeModelNode]]\n * @public\n */\nexport function isTreeModelNode(\n obj: TreeModelNodeType | undefined\n): obj is TreeModelNode {\n return (\n obj !== undefined &&\n !isTreeModelNodePlaceholder(obj) &&\n !isTreeModelRootNode(obj)\n );\n}\n\n/**\n * Checks if object is [[TreeModelNodePlaceholder]]\n * @public\n */\nexport function isTreeModelNodePlaceholder(\n obj: TreeModelNodeType | undefined\n): obj is TreeModelNodePlaceholder {\n return obj !== undefined && \"childIndex\" in obj;\n}\n\n/**\n * Checks if object is [[TreeModelRootNode]]\n * @public\n */\nexport function isTreeModelRootNode(\n obj: TreeModelNodeType | undefined\n): obj is TreeModelRootNode {\n return (\n obj !== undefined &&\n (obj as TreeModelRootNode).id === undefined &&\n !(\"childIndex\" in obj)\n );\n}\n\n/**\n * Type definition of tree node item data.\n * @public\n */\nexport type TreeNodeItemData = ImmediatelyLoadedTreeNodeItem &\n DelayLoadedTreeNodeItem;\n\n/**\n * Data structure that describes set of visible tree nodes as a flat list.\n * @public\n */\nexport interface VisibleTreeNodes\n extends Iterable<TreeModelNode | TreeModelNodePlaceholder> {\n getNumNodes(): number;\n getAtIndex(\n index: number\n ): TreeModelNode | TreeModelNodePlaceholder | undefined;\n getModel(): TreeModel;\n getNumRootNodes(): number | undefined;\n getIndexOfNode(nodeId: string): number;\n}\n\n/**\n * Data structure that describes tree model.\n * @public\n */\nexport interface TreeModel {\n getRootNode(): TreeModelRootNode;\n\n getNode(id: string): TreeModelNode | undefined;\n getNode(\n parentId: string | undefined,\n childIndex: number\n ): TreeModelNode | TreeModelNodePlaceholder | undefined;\n getNode(\n nodeId: string | undefined,\n childIndex?: number\n ): TreeModelNode | TreeModelNodePlaceholder | TreeModelRootNode | undefined;\n\n getChildren(parentId: string | undefined): SparseArray<string> | undefined;\n getChildOffset(\n parentId: string | undefined,\n childId: string\n ): number | undefined;\n\n iterateTreeModelNodes(parentId?: string): IterableIterator<TreeModelNode>;\n}\n\n/**\n * Mutable tree model which holds nodes and allows adding or removing them.\n * @public\n */\nexport class MutableTreeModel implements TreeModel {\n public [immerable] = true;\n\n private _tree = new SparseTree<MutableTreeModelNode>();\n private _rootNode: TreeModelRootNode = {\n depth: -1,\n id: undefined,\n numChildren: undefined,\n };\n\n public constructor(seed?: TreeModel) {\n if (!seed) {\n return;\n }\n\n cloneSubree(seed, this, undefined);\n }\n\n /** Returns root node of a tree. This node is not visible and is there to allow having multiple visible root nodes. */\n public getRootNode(): TreeModelRootNode {\n return this._rootNode;\n }\n\n /** Returns tree node or placeholder for node that is not loaded yet.\n * @returns node, node placeholder or undefined if node is not found in model.\n */\n public getNode(id: string): MutableTreeModelNode | undefined;\n public getNode(\n parentId: string | undefined,\n childIndex: number\n ): MutableTreeModelNode | TreeModelNodePlaceholder | undefined;\n public getNode(\n nodeId: string | undefined,\n childIndex?: number\n ): MutableTreeModelNode | TreeModelNodePlaceholder | undefined {\n if (childIndex === undefined) {\n return this._tree.getNode(nodeId!);\n }\n\n const children = this._tree.getChildren(nodeId);\n const childId =\n children !== undefined ? children.get(childIndex) : undefined;\n if (childId !== undefined) {\n return this._tree.getNode(childId);\n }\n\n const parentNode =\n nodeId === undefined ? this._rootNode : this._tree.getNode(nodeId);\n if (parentNode !== undefined) {\n return {\n childIndex,\n depth: parentNode.depth + 1,\n parentId: nodeId,\n };\n }\n\n return undefined;\n }\n\n /** Returns children for specific parent.\n * @param parentId id of parent node.\n * @returns children of parent node or root nodes if undefined is passed as parent id.\n */\n public getChildren(\n parentId: string | undefined\n ): SparseArray<string> | undefined {\n return this._tree.getChildren(parentId);\n }\n\n /** Returns children offset in children array for specific parent. */\n public getChildOffset(\n parentId: string | undefined,\n childId: string\n ): number | undefined {\n return this._tree.getChildOffset(parentId, childId);\n }\n\n /**\n * Sets children for parent node starting from the specific offset.\n * If offset overlaps with already added nodes, the overlapping nodes are overwritten.\n */\n public setChildren(\n parentId: string | undefined,\n nodeInputs: TreeModelNodeInput[],\n offset: number\n ): void {\n const parentNode =\n parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined) return;\n\n const children: MutableTreeModelNode[] = [];\n for (const input of nodeInputs) {\n const child = MutableTreeModel.createTreeModelNode(parentNode, input);\n children.push(child);\n }\n\n this._tree.setChildren(parentNode.id, children, offset);\n MutableTreeModel.setNumChildrenForNode(\n parentNode,\n this._tree.getChildren(parentNode.id)\n );\n }\n\n /**\n * Inserts child in the specified position.\n * If offset is higher then current length of children array, the length is increased.\n */\n public insertChild(\n parentId: string | undefined,\n childNodeInput: TreeModelNodeInput,\n offset: number\n ): void {\n const parentNode =\n parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined) return;\n\n const child = MutableTreeModel.createTreeModelNode(\n parentNode,\n childNodeInput\n );\n\n this._tree.insertChild(parentNode.id, child, offset);\n MutableTreeModel.setNumChildrenForNode(\n parentNode,\n this._tree.getChildren(parentNode.id)\n );\n }\n\n /**\n * Changes the id of target node.\n * @returns `true` on success, `false` otherwise.\n */\n public changeNodeId(currentId: string, newId: string): boolean {\n const node = this.getNode(currentId);\n if (node === undefined) {\n return false;\n }\n\n if (currentId === newId) {\n return true;\n }\n\n const index = this.getChildOffset(node.parentId, currentId);\n assert(index !== undefined);\n\n if (!this._tree.setNodeId(node.parentId, index, newId)) {\n return false;\n }\n\n (node.id as string) = newId; // eslint-disable-line @typescript-eslint/no-unnecessary-type-assertion\n for (const [childId] of this.getChildren(newId)?.iterateValues() ?? []) {\n const child = this.getNode(childId);\n assert(child !== undefined);\n (child.parentId as string) = newId;\n }\n\n return true;\n }\n\n /**\n * Transfers node along with its children to a new location. Fails if destination has undefined child count.\n * @param sourceNodeId Node that is being moved.\n * @param targetParentId Node that will receive a new child.\n * @param targetIndex Insertion location among target's *current* children.\n * @returns `true` on success, `false` otherwise.\n */\n public moveNode(\n sourceNodeId: string,\n targetParentId: string | undefined,\n targetIndex: number\n ): boolean {\n const sourceNode = this.getNode(sourceNodeId);\n if (sourceNode === undefined) {\n return false;\n }\n\n const targetParent =\n targetParentId === undefined\n ? this._rootNode\n : this.getNode(targetParentId);\n if (targetParent === undefined || targetParent.numChildren === undefined) {\n return false;\n }\n\n if (\n targetParentId !== undefined &&\n this.areNodesRelated(sourceNodeId, targetParentId)\n ) {\n return false;\n }\n\n this._tree.moveNode(\n sourceNode.parentId,\n sourceNodeId,\n targetParentId,\n targetIndex\n );\n\n const sourceParent =\n sourceNode.parentId === undefined\n ? this._rootNode\n : this.getNode(sourceNode.parentId);\n assert(sourceParent !== undefined);\n MutableTreeModel.setNumChildrenForNode(\n sourceParent,\n this._tree.getChildren(sourceNode.parentId)\n );\n MutableTreeModel.setNumChildrenForNode(\n targetParent,\n this._tree.getChildren(targetParentId)\n );\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (sourceNode.parentId as string | undefined) = targetParentId;\n\n const updateDepths = (parentId: string, depth: number) => {\n const node = this.getNode(parentId);\n assert(node !== undefined);\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (node.depth as number) = depth;\n for (const [nodeId] of this.getChildren(parentId)?.iterateValues() ??\n []) {\n updateDepths(nodeId, depth + 1);\n }\n };\n\n updateDepths(sourceNodeId, targetParent.depth + 1);\n return true;\n }\n\n private areNodesRelated(\n ancestorNodeId: string,\n descendantNodeId: string\n ): boolean {\n const node = this.getNode(descendantNodeId);\n if (node === undefined || node.parentId === undefined) {\n return false;\n }\n\n return node.parentId === ancestorNodeId\n ? true\n : this.areNodesRelated(ancestorNodeId, node.parentId);\n }\n\n /**\n * Sets the number of child nodes a parent is expected to contain. All child nodes of this parent will be subsequently\n * removed.\n */\n public setNumChildren(\n parentId: string | undefined,\n numChildren: number | undefined\n ): void {\n const parentNode =\n parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode === undefined) {\n return;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (parentNode.numChildren as number | undefined) = numChildren;\n this._tree.setNumChildren(parentId, numChildren ?? 0);\n }\n\n /** Removes children specified by id.\n * @param parentId id of the parent node.\n * @param child child node id or index that should be removed.\n */\n public removeChild(\n parentId: string | undefined,\n child: string | number\n ): void {\n const parentNode =\n parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n this._tree.removeChild(parentId, child);\n\n // istanbul ignore else\n if (parentNode)\n MutableTreeModel.setNumChildrenForNode(\n parentNode,\n this._tree.getChildren(parentNode.id)\n );\n }\n\n /** Removes all children for parent specified by id.\n * @param parentId id of parent node or undefined to remove root nodes.\n */\n public clearChildren(parentId: string | undefined) {\n const parentNode =\n parentId === undefined ? this._rootNode : this._tree.getNode(parentId);\n if (parentNode !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (parentNode.numChildren as number | undefined) = undefined;\n }\n this._tree.deleteSubtree(parentId, false);\n }\n\n /** Iterates over all nodes present in the tree model. */\n public *iterateTreeModelNodes(\n parentId?: string\n ): IterableIterator<MutableTreeModelNode> {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const _this = this;\n function* iterateDescendants(\n subParentId: string | undefined\n ): IterableIterator<MutableTreeModelNode> {\n const children = _this.getChildren(subParentId);\n if (children === undefined) {\n return;\n }\n\n for (const [nodeId] of children.iterateValues()) {\n const node = _this.getNode(nodeId);\n if (node !== undefined) {\n yield node;\n yield* iterateDescendants(nodeId);\n }\n }\n }\n\n yield* iterateDescendants(parentId);\n }\n\n private static setNumChildrenForNode(\n node: TreeModelRootNode | MutableTreeModelNode,\n children: SparseArray<string> | undefined\n ) {\n const numChildren = children ? children.getLength() : undefined;\n if (node.numChildren === numChildren) return;\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n (node.numChildren as number | undefined) = numChildren;\n }\n\n private static createTreeModelNode(\n parentNode: TreeModelNode | TreeModelRootNode,\n input: TreeModelNodeInput\n ): MutableTreeModelNode {\n return {\n id: input.id,\n parentId: parentNode.id,\n depth: parentNode.depth + 1,\n\n isLoading: input.isLoading,\n numChildren: input.numChildren,\n\n description: input.description || \"\",\n isExpanded: input.isExpanded,\n label: input.label,\n isSelected: input.isSelected,\n isSelectionDisabled: input.item.isSelectionDisabled,\n\n checkbox: {\n state: input.item.checkBoxState || CheckBoxState.Off,\n isDisabled: !!input.item.isCheckboxDisabled,\n isVisible: !!input.item.isCheckboxVisible,\n },\n\n item: cloneDeep(input.item),\n };\n }\n}\n\n/**\n * Generates flat list of visible nodes in the tree model.\n * @public\n */\nexport function computeVisibleNodes(model: TreeModel): VisibleTreeNodes {\n const result = getVisibleDescendants(model, model.getRootNode());\n return {\n getNumNodes: () => result.length,\n getAtIndex: (\n index: number\n ): TreeModelNode | TreeModelNodePlaceholder | undefined => {\n return result[index];\n },\n getModel: () => model,\n getNumRootNodes: () => model.getRootNode().numChildren,\n [Symbol.iterator]: () => result[Symbol.iterator](),\n getIndexOfNode: (nodeId: string): number => {\n return result.findIndex(\n (visibleNode) => (visibleNode as TreeModelNode).id === nodeId\n );\n },\n };\n}\n\n/**\n * Traverses the tree and collects visible descendants.\n * @public\n */\nexport function getVisibleDescendants(\n model: TreeModel,\n parentNode: TreeModelNode | TreeModelRootNode,\n result: Array<TreeModelNode | TreeModelNodePlaceholder> = []\n): Array<TreeModelNode | TreeModelNodePlaceholder> {\n const children = model.getChildren(parentNode.id);\n if (!children) {\n return result;\n }\n\n let index = 0;\n for (const childId of children) {\n if (childId === undefined) {\n result.push({\n parentId: parentNode.id,\n depth: parentNode.depth + 1,\n childIndex: index,\n });\n } else {\n const childNode = model.getNode(childId);\n if (childNode === undefined) {\n // node was disposed\n result.push({\n parentId: parentNode.id,\n depth: parentNode.depth + 1,\n childIndex: index,\n });\n } else {\n result.push(childNode);\n if (childNode.isExpanded && childNode.numChildren !== undefined) {\n getVisibleDescendants(model, childNode, result);\n }\n }\n }\n ++index;\n }\n\n return result;\n}\n\nfunction cloneSubree(\n source: TreeModel,\n target: MutableTreeModel,\n parentId: string | undefined\n): void {\n target.setNumChildren(\n parentId,\n (parentId === undefined ? source.getRootNode() : source.getNode(parentId)!)\n .numChildren\n );\n for (const [childId, index] of source\n .getChildren(parentId)\n ?.iterateValues() ?? []) {\n const node = source.getNode(childId)!;\n target.setChildren(\n parentId,\n [{ ...node, isLoading: !!node.isLoading }],\n index\n );\n cloneSubree(source, target, childId);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeModelSource.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModelSource.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,eAAe;IAKd,OAAO,CAAC,MAAM;IAH1B,8DAA8D;IACvD,cAAc,2CAAkD;gBAEnD,MAAM,GAAE,gBAAyC;IAGrE;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,GAAG,IAAI;IAUrE,0BAA0B;IACnB,QAAQ,IAAI,SAAS;IAE5B,OAAO,CAAC,mBAAmB;CAiC5B"}
1
+ {"version":3,"file":"TreeModelSource.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModelSource.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,eAAe;IAId,OAAO,CAAC,MAAM;IAH1B,8DAA8D;IACvD,cAAc,2CAAkD;gBAEnD,MAAM,GAAE,gBAAyC;IAErE;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,GAAG,IAAI;IAoBrE,0BAA0B;IACnB,QAAQ,IAAI,SAAS;IAI5B,OAAO,CAAC,mBAAmB;CAyC5B"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module Tree
8
8
  */
@@ -27,21 +27,31 @@ class TreeModelSource {
27
27
  * If changes to tree model is detected then onModelChanged event is emitted.
28
28
  */
29
29
  modifyModel(callback) {
30
- let changes = { addedNodeIds: [], modifiedNodeIds: [], removedNodeIds: [] };
31
- const newModel = (0, immer_1.produce)(this._model, (draft) => callback(draft), (patches) => { changes = this.collectModelChanges(patches); });
30
+ let changes = {
31
+ addedNodeIds: [],
32
+ modifiedNodeIds: [],
33
+ removedNodeIds: [],
34
+ };
35
+ const newModel = (0, immer_1.produce)(this._model, (draft) => callback(draft), (patches) => {
36
+ changes = this.collectModelChanges(patches);
37
+ });
32
38
  if (newModel !== this._model) {
33
39
  this._model = newModel;
34
40
  this.onModelChanged.emit([this._model, changes]);
35
41
  }
36
42
  }
37
43
  /** Returns tree model. */
38
- getModel() { return this._model; }
44
+ getModel() {
45
+ return this._model;
46
+ }
39
47
  collectModelChanges(modelPatches) {
40
48
  const addedNodeIds = [];
41
49
  const modifiedNodeIds = new Set();
42
50
  const removedNodeIds = [];
43
51
  for (const patch of modelPatches) {
44
- if (patch.path.length >= 3 && patch.path[0] === "_tree" && patch.path[1] === "_idToNode") {
52
+ if (patch.path.length >= 3 &&
53
+ patch.path[0] === "_tree" &&
54
+ patch.path[1] === "_idToNode") {
45
55
  const nodeId = patch.path[2];
46
56
  if (patch.path.length > 3) {
47
57
  // Modification occured somewhere inside a node
@@ -62,7 +72,11 @@ class TreeModelSource {
62
72
  }
63
73
  }
64
74
  }
65
- return { addedNodeIds, modifiedNodeIds: [...modifiedNodeIds], removedNodeIds };
75
+ return {
76
+ addedNodeIds,
77
+ modifiedNodeIds: [...modifiedNodeIds],
78
+ removedNodeIds,
79
+ };
66
80
  }
67
81
  }
68
82
  exports.TreeModelSource = TreeModelSource;
@@ -1 +1 @@
1
- {"version":3,"file":"TreeModelSource.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModelSource.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,iCAAgC;AAChC,sDAAgD;AAEhD,2CAA+C;AAY/C;;;;GAIG;AACH,MAAa,eAAe;IAK1B,YAAoB,SAA2B,IAAI,4BAAgB,EAAE;QAAjD,WAAM,GAAN,MAAM,CAA2C;QAHrE,8DAA8D;QACvD,mBAAc,GAAG,IAAI,wBAAS,EAAiC,CAAC;IAGvE,CAAC;IAED;;;OAGG;IACI,WAAW,CAAC,QAA2C;QAC5D,IAAI,OAAO,GAAqB,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;QAC9F,MAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,OAAgB,EAAE,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5J,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;SAClD;IACH,CAAC;IAED,0BAA0B;IACnB,QAAQ,KAAgB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAE5C,mBAAmB,CAAC,YAAqB;QAC/C,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE;YAChC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE;gBACxF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC;gBAEvC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzB,+CAA+C;oBAC/C,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC5B,SAAS;iBACV;gBAED,oDAAoD;gBACpD,QAAQ,KAAK,CAAC,EAAE,EAAE;oBAChB,KAAK,KAAK;wBACR,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC1B,MAAM;oBAER,KAAK,QAAQ;wBACX,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC5B,MAAM;oBAER,KAAK,SAAS;wBACZ,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;wBAC5B,MAAM;iBACT;aACF;SACF;QAED,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACjF,CAAC;CACF;AA1DD,0CA0DC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport type { Patch} from \"immer\";\nimport { produce } from \"immer\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type { TreeModel } from \"./TreeModel\";\nimport { MutableTreeModel } from \"./TreeModel\";\n\n/**\n * Data structure that describes changes which happened to the tree model\n * @public\n */\nexport interface TreeModelChanges {\n addedNodeIds: string[];\n modifiedNodeIds: string[];\n removedNodeIds: string[];\n}\n\n/**\n * Controls tree model.\n * It is used to modify model and inform when tree model changes.\n * @public\n */\nexport class TreeModelSource {\n\n /** Event that is emitted every time tree model is changed. */\n public onModelChanged = new BeUiEvent<[TreeModel, TreeModelChanges]>();\n\n constructor(private _model: MutableTreeModel = new MutableTreeModel()) {\n }\n\n /**\n * Modifies tree model using provided callback.\n * If changes to tree model is detected then onModelChanged event is emitted.\n */\n public modifyModel(callback: (model: MutableTreeModel) => void): void {\n let changes: TreeModelChanges = { addedNodeIds: [], modifiedNodeIds: [], removedNodeIds: [] };\n const newModel = produce(this._model, (draft: MutableTreeModel) => callback(draft), (patches: Patch[]) => { changes = this.collectModelChanges(patches); });\n\n if (newModel !== this._model) {\n this._model = newModel;\n this.onModelChanged.emit([this._model, changes]);\n }\n }\n\n /** Returns tree model. */\n public getModel(): TreeModel { return this._model; }\n\n private collectModelChanges(modelPatches: Patch[]): TreeModelChanges {\n const addedNodeIds: string[] = [];\n const modifiedNodeIds = new Set<string>();\n const removedNodeIds: string[] = [];\n for (const patch of modelPatches) {\n if (patch.path.length >= 3 && patch.path[0] === \"_tree\" && patch.path[1] === \"_idToNode\") {\n const nodeId = patch.path[2] as string;\n\n if (patch.path.length > 3) {\n // Modification occured somewhere inside a node\n modifiedNodeIds.add(nodeId);\n continue;\n }\n\n // Modification occured directly on _idToNode object\n switch (patch.op) {\n case \"add\":\n addedNodeIds.push(nodeId);\n break;\n\n case \"remove\":\n removedNodeIds.push(nodeId);\n break;\n\n case \"replace\":\n modifiedNodeIds.add(nodeId);\n break;\n }\n }\n }\n\n return { addedNodeIds, modifiedNodeIds: [...modifiedNodeIds], removedNodeIds };\n }\n}\n"]}
1
+ {"version":3,"file":"TreeModelSource.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModelSource.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAGH,iCAAgC;AAChC,sDAAgD;AAEhD,2CAA+C;AAY/C;;;;GAIG;AACH,MAAa,eAAe;IAI1B,YAAoB,SAA2B,IAAI,4BAAgB,EAAE;QAAjD,WAAM,GAAN,MAAM,CAA2C;QAHrE,8DAA8D;QACvD,mBAAc,GAAG,IAAI,wBAAS,EAAiC,CAAC;IAEC,CAAC;IAEzE;;;OAGG;IACI,WAAW,CAAC,QAA2C;QAC5D,IAAI,OAAO,GAAqB;YAC9B,YAAY,EAAE,EAAE;YAChB,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,EAAE;SACnB,CAAC;QACF,MAAM,QAAQ,GAAG,IAAA,eAAO,EACtB,IAAI,CAAC,MAAM,EACX,CAAC,KAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC5C,CAAC,OAAgB,EAAE,EAAE;YACnB,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;QAEF,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;SAClD;IACH,CAAC;IAED,0BAA0B;IACnB,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,mBAAmB,CAAC,YAAqB;QAC/C,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE;YAChC,IACE,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO;gBACzB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAC7B;gBACA,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC;gBAEvC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzB,+CAA+C;oBAC/C,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC5B,SAAS;iBACV;gBAED,oDAAoD;gBACpD,QAAQ,KAAK,CAAC,EAAE,EAAE;oBAChB,KAAK,KAAK;wBACR,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC1B,MAAM;oBAER,KAAK,QAAQ;wBACX,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC5B,MAAM;oBAER,KAAK,SAAS;wBACZ,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;wBAC5B,MAAM;iBACT;aACF;SACF;QAED,OAAO;YACL,YAAY;YACZ,eAAe,EAAE,CAAC,GAAG,eAAe,CAAC;YACrC,cAAc;SACf,CAAC;IACJ,CAAC;CACF;AA5ED,0CA4EC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport type { Patch } from \"immer\";\nimport { produce } from \"immer\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type { TreeModel } from \"./TreeModel\";\nimport { MutableTreeModel } from \"./TreeModel\";\n\n/**\n * Data structure that describes changes which happened to the tree model\n * @public\n */\nexport interface TreeModelChanges {\n addedNodeIds: string[];\n modifiedNodeIds: string[];\n removedNodeIds: string[];\n}\n\n/**\n * Controls tree model.\n * It is used to modify model and inform when tree model changes.\n * @public\n */\nexport class TreeModelSource {\n /** Event that is emitted every time tree model is changed. */\n public onModelChanged = new BeUiEvent<[TreeModel, TreeModelChanges]>();\n\n constructor(private _model: MutableTreeModel = new MutableTreeModel()) {}\n\n /**\n * Modifies tree model using provided callback.\n * If changes to tree model is detected then onModelChanged event is emitted.\n */\n public modifyModel(callback: (model: MutableTreeModel) => void): void {\n let changes: TreeModelChanges = {\n addedNodeIds: [],\n modifiedNodeIds: [],\n removedNodeIds: [],\n };\n const newModel = produce(\n this._model,\n (draft: MutableTreeModel) => callback(draft),\n (patches: Patch[]) => {\n changes = this.collectModelChanges(patches);\n }\n );\n\n if (newModel !== this._model) {\n this._model = newModel;\n this.onModelChanged.emit([this._model, changes]);\n }\n }\n\n /** Returns tree model. */\n public getModel(): TreeModel {\n return this._model;\n }\n\n private collectModelChanges(modelPatches: Patch[]): TreeModelChanges {\n const addedNodeIds: string[] = [];\n const modifiedNodeIds = new Set<string>();\n const removedNodeIds: string[] = [];\n for (const patch of modelPatches) {\n if (\n patch.path.length >= 3 &&\n patch.path[0] === \"_tree\" &&\n patch.path[1] === \"_idToNode\"\n ) {\n const nodeId = patch.path[2] as string;\n\n if (patch.path.length > 3) {\n // Modification occured somewhere inside a node\n modifiedNodeIds.add(nodeId);\n continue;\n }\n\n // Modification occured directly on _idToNode object\n switch (patch.op) {\n case \"add\":\n addedNodeIds.push(nodeId);\n break;\n\n case \"remove\":\n removedNodeIds.push(nodeId);\n break;\n\n case \"replace\":\n modifiedNodeIds.add(nodeId);\n break;\n }\n }\n }\n\n return {\n addedNodeIds,\n modifiedNodeIds: [...modifiedNodeIds],\n removedNodeIds,\n };\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeNodeLoader.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeNodeLoader.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAc7E,OAAO,KAAK,EAEV,gBAAgB,EAAuB,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAGlF,OAAO,KAAK,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAoB,aAAa,EAAsB,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE5H,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;CAC3G;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B,CAAC,aAAa,SAAS,gBAAgB,CAAE,SAAQ,eAAe;IAC1G,qDAAqD;IACrD,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;CACtC;AAED;;;GAGG;AACH,8BAAsB,sBAAuB,YAAW,eAAe;IACrE,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAmD;IAEzE,SAAS,aAAa,WAAW,EAAE,eAAe;IAIlD,IAAW,WAAW,oBAAoC;IAE1D,+CAA+C;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAU9G;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE,mBAAmB,GAAG,IAAI;IAIjE,wFAAwF;IACxF,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,mBAAmB,CAAC;CACxH;AAED;;;GAGG;AACH,8BAAsB,kCAAkC,CAAC,aAAa,SAAS,gBAAgB,CAAE,SAAQ,sBAAuB,YAAW,2BAA2B,CAAC,aAAa,CAAC;IACnL,OAAO,CAAC,aAAa,CAAgB;IAErC,SAAS,aAAa,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa;IAK/E,IAAW,YAAY,kBAAiC;CACzD;AAED;;;GAGG;AACH,qBAAa,cAAc,CAAC,aAAa,SAAS,gBAAgB,CAAE,SAAQ,kCAAkC,CAAC,aAAa,CAAC;IAC3H,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,eAAe,CAAqE;IAC5F,OAAO,CAAC,UAAU,CAAmD;gBAEzD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe;IAKrE;;;OAGG;IACa,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAwBzH,SAAS,CAAC,IAAI,IAAI,UAAU,CAAC,mBAAmB,CAAC;CAGlD;AAED;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,aAAa,SAAS,gBAAgB,CAAE,SAAQ,kCAAkC,CAAC,aAAa,CAAC;IAChI,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAuE;IAClG,OAAO,CAAC,UAAU,CAA4C;gBAElD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM;IAQvF,kDAAkD;IAClD,IAAW,QAAQ,IAAI,MAAM,CAA2B;IAExD;;;OAGG;IACa,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAwCvH,SAAS,CAAC,IAAI,IAAI,UAAU,CAAC,mBAAmB,CAAC;CAGlD;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,uDAAuD;IACvD,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,cAAc,EAAE,uBAAuB,EAAE,CAAC;IAC1C,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,6BAA6B;IAC7B,IAAI,EAAE,gBAAgB,CAAC;IACvB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACrC,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAgED,gBAAgB;AAChB,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,QAkB3G;AA4DD,UAAU,oBAAoB;IAC5B,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,aAAa,CAAmB;gBAE5B,YAAY,EAAE,gBAAgB;IAInC,YAAY,CACjB,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,OAAO,GAC1B,cAAc,CAAC,oBAAoB,CAAC;YAiCzB,QAAQ;IAiBtB,OAAO,CAAC,WAAW;CAMpB"}
1
+ {"version":3,"file":"TreeNodeLoader.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeNodeLoader.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module Tree
8
8
  */
@@ -33,12 +33,16 @@ class AbstractTreeNodeLoader {
33
33
  this._loadScheduler = new SubscriptionScheduler_1.SubscriptionScheduler();
34
34
  this._treeModelSource = modelSource;
35
35
  }
36
- get modelSource() { return this._treeModelSource; }
36
+ get modelSource() {
37
+ return this._treeModelSource;
38
+ }
37
39
  /** Do not override this method. @see `load` */
38
40
  loadNode(parent, childIndex) {
39
41
  return (0, Observable_1.toRxjsObservable)(this.load(parent, childIndex)).pipe((0, map_1.map)((loadedHierarchy) => {
40
42
  this.updateModel(loadedHierarchy);
41
- return { loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems) };
43
+ return {
44
+ loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems),
45
+ };
42
46
  }), (0, SubscriptionScheduler_1.scheduleSubscription)(this._loadScheduler));
43
47
  }
44
48
  /**
@@ -61,7 +65,9 @@ class AbstractTreeNodeLoaderWithProvider extends AbstractTreeNodeLoader {
61
65
  super(modelSource);
62
66
  this._dataProvider = dataProvider;
63
67
  }
64
- get dataProvider() { return this._dataProvider; }
68
+ get dataProvider() {
69
+ return this._dataProvider;
70
+ }
65
71
  }
66
72
  exports.AbstractTreeNodeLoaderWithProvider = AbstractTreeNodeLoaderWithProvider;
67
73
  /**
@@ -87,10 +93,11 @@ class TreeNodeLoader extends AbstractTreeNodeLoaderWithProvider {
87
93
  if (activeRequest) {
88
94
  return activeRequest;
89
95
  }
90
- const newRequest = requestLoadedHierarchy(parentItem, this._treeDataSource, 0, 0, parent.numChildren === undefined)
91
- .pipe((0, map_1.map)((loadedHierarchy) => {
96
+ const newRequest = requestLoadedHierarchy(parentItem, this._treeDataSource, 0, 0, parent.numChildren === undefined).pipe((0, map_1.map)((loadedHierarchy) => {
92
97
  this.updateModel(loadedHierarchy);
93
- return { loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems) };
98
+ return {
99
+ loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems),
100
+ };
94
101
  }), (0, SubscriptionScheduler_1.scheduleSubscription)(this._scheduler), (0, finalize_1.finalize)(() => this._activeRequests.delete(parentId)));
95
102
  this._activeRequests.set(parentId, newRequest);
96
103
  return newRequest;
@@ -115,7 +122,9 @@ class PagedTreeNodeLoader extends AbstractTreeNodeLoaderWithProvider {
115
122
  this._scheduler = new SubscriptionScheduler_1.SubscriptionScheduler();
116
123
  }
117
124
  /** Returns page size used by tree node loader. */
118
- get pageSize() { return this._pageSize; }
125
+ get pageSize() {
126
+ return this._pageSize;
127
+ }
119
128
  /**
120
129
  * Schedules to load one page of node children and returns an Observable.
121
130
  * @note It does not start loading node page until '.subscribe()' is called on returned Observable.
@@ -134,7 +143,9 @@ class PagedTreeNodeLoader extends AbstractTreeNodeLoaderWithProvider {
134
143
  const startIndex = page * this._pageSize;
135
144
  const newRequest = requestLoadedHierarchy(parentItem, this._treeDataSource, startIndex, this._pageSize, parent.numChildren === undefined).pipe((0, map_1.map)((loadedHierarchy) => {
136
145
  this.updateModel(loadedHierarchy);
137
- return { loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems) };
146
+ return {
147
+ loadedNodes: collectTreeNodeItems(loadedHierarchy.hierarchyItems),
148
+ };
138
149
  }), (0, SubscriptionScheduler_1.scheduleSubscription)(this._scheduler), (0, finalize_1.finalize)(() => {
139
150
  parentPageRequests.delete(page);
140
151
  if (parentPageRequests.size === 0) {
@@ -154,9 +165,9 @@ class PagedTreeNodeLoader extends AbstractTreeNodeLoaderWithProvider {
154
165
  exports.PagedTreeNodeLoader = PagedTreeNodeLoader;
155
166
  function requestLoadedHierarchy(parentItem, dataSource, start, take, requestNumChildren) {
156
167
  const parentId = parentItem && parentItem.id;
157
- return dataSource.requestItems(parentItem, start, take, requestNumChildren)
158
- .pipe((0, concatMap_1.concatMap)(({ numChildren, loadedItems }) => loadHierarchy(loadedItems, dataSource, take)
159
- .pipe((0, map_1.map)((hierarchyItems) => ({
168
+ return dataSource
169
+ .requestItems(parentItem, start, take, requestNumChildren)
170
+ .pipe((0, concatMap_1.concatMap)(({ numChildren, loadedItems }) => loadHierarchy(loadedItems, dataSource, take).pipe((0, map_1.map)((hierarchyItems) => ({
160
171
  parentId,
161
172
  offset: start,
162
173
  hierarchyItems,
@@ -164,20 +175,21 @@ function requestLoadedHierarchy(parentItem, dataSource, start, take, requestNumC
164
175
  })))));
165
176
  }
166
177
  function loadHierarchy(rootItems, dataSource, take) {
167
- return (0, from_1.from)(rootItems)
168
- .pipe((0, concatMap_1.concatMap)((item) => {
178
+ return (0, from_1.from)(rootItems).pipe((0, concatMap_1.concatMap)((item) => {
169
179
  if (!item.autoExpand || item.children) {
170
180
  return (0, of_1.of)(convertToLoadedNodeHierarchyItem(item));
171
181
  }
172
- return dataSource.requestItems(item, 0, take, true)
173
- .pipe((0, concatMap_1.concatMap)(({ numChildren, loadedItems }) => loadHierarchy(loadedItems, dataSource, take)
174
- .pipe((0, map_1.map)((children) => ({ item, children, numChildren })))));
182
+ return dataSource
183
+ .requestItems(item, 0, take, true)
184
+ .pipe((0, concatMap_1.concatMap)(({ numChildren, loadedItems }) => loadHierarchy(loadedItems, dataSource, take).pipe((0, map_1.map)((children) => ({ item, children, numChildren })))));
175
185
  }), (0, toArray_1.toArray)());
176
186
  }
177
187
  function convertToLoadedNodeHierarchyItem(item) {
178
188
  return {
179
189
  item,
180
- children: item.children ? item.children.map((child) => convertToLoadedNodeHierarchyItem(child)) : undefined,
190
+ children: item.children
191
+ ? item.children.map((child) => convertToLoadedNodeHierarchyItem(child))
192
+ : undefined,
181
193
  numChildren: item.children ? item.children.length : undefined,
182
194
  };
183
195
  }
@@ -202,7 +214,9 @@ function handleLoadedNodeHierarchy(modelSource, loadedHierarchy) {
202
214
  if (loadedHierarchy.parentId !== undefined) {
203
215
  const parentNode = model.getNode(loadedHierarchy.parentId);
204
216
  /* istanbul ignore else */
205
- if (parentNode && parentNode.isLoading && parentNode.numChildren !== undefined) {
217
+ if (parentNode &&
218
+ parentNode.isLoading &&
219
+ parentNode.numChildren !== undefined) {
206
220
  parentNode.isLoading = false;
207
221
  }
208
222
  }
@@ -224,7 +238,10 @@ function updateChildren(model, parentId, hierarchyItems, startIndex, numChildren
224
238
  const nodeInput = convertToTreeModelNodeInput(hierarchyItem.item);
225
239
  const existingNode = model.getNode(hierarchyItem.item.id);
226
240
  // if same item exists in the same position and is expanded update it without removing it's subtree
227
- if (!existingNode || !existingNode.isExpanded || model.getChildOffset(parentId, existingNode.id) !== offset || nodeInput.numChildren === 0) {
241
+ if (!existingNode ||
242
+ !existingNode.isExpanded ||
243
+ model.getChildOffset(parentId, existingNode.id) !== offset ||
244
+ nodeInput.numChildren === 0) {
228
245
  model.setChildren(parentId, [nodeInput], offset);
229
246
  }
230
247
  else {
@@ -274,22 +291,23 @@ class TreeDataSource {
274
291
  return (0, defer_1.defer)(async () => {
275
292
  if ((0, TreeDataProvider_1.isTreeDataProviderInterface)(this._dataProvider)) {
276
293
  const dataProvider = this._dataProvider;
277
- return (0, from_1.from)(requestNumChildren ? dataProvider.getNodesCount(parent) : [undefined])
278
- .pipe((0, concatMap_1.concatMap)(async (numChildren) => {
279
- const pageOptions = numItems !== 0 ? { size: numItems, start: firstItemIndex } : undefined;
294
+ return (0, from_1.from)(requestNumChildren ? dataProvider.getNodesCount(parent) : [undefined]).pipe((0, concatMap_1.concatMap)(async (numChildren) => {
295
+ const pageOptions = numItems !== 0
296
+ ? { size: numItems, start: firstItemIndex }
297
+ : undefined;
280
298
  return {
281
299
  loadedItems: await dataProvider.getNodes(parent, pageOptions),
282
300
  numChildren,
283
301
  };
284
302
  }));
285
303
  }
286
- return (0, from_1.from)(this.getItems(parent))
287
- .pipe((0, map_1.map)((loadedItems) => ({
288
- loadedItems: numItems !== 0 ? loadedItems.slice(firstItemIndex, firstItemIndex + numItems) : loadedItems,
304
+ return (0, from_1.from)(this.getItems(parent)).pipe((0, map_1.map)((loadedItems) => ({
305
+ loadedItems: numItems !== 0
306
+ ? loadedItems.slice(firstItemIndex, firstItemIndex + numItems)
307
+ : loadedItems,
289
308
  numChildren: loadedItems.length,
290
309
  })));
291
- })
292
- .pipe((0, concatAll_1.concatAll)(), (0, publish_1.publish)(), (0, refCount_1.refCount)());
310
+ }).pipe((0, concatAll_1.concatAll)(), (0, publish_1.publish)(), (0, refCount_1.refCount)());
293
311
  }
294
312
  async getItems(parent) {
295
313
  if ((0, TreeDataProvider_1.isTreeDataProviderRaw)(this._dataProvider)) {