@itwin/components-react 4.0.0-dev.11 → 4.0.0-dev.13

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 (1186) hide show
  1. package/lib/cjs/components-react/UiComponents.d.ts +35 -35
  2. package/lib/cjs/components-react/UiComponents.js +79 -79
  3. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  4. package/lib/cjs/components-react/_target.scss +9 -9
  5. package/lib/cjs/components-react/common/DateUtils.d.ts +58 -58
  6. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  7. package/lib/cjs/components-react/common/DateUtils.js +74 -74
  8. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  9. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +22 -22
  10. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  11. package/lib/cjs/components-react/common/DelayedSpinner.js +60 -57
  12. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  13. package/lib/cjs/components-react/common/HighlightedText.d.ts +22 -22
  14. package/lib/cjs/components-react/common/HighlightedText.js +38 -38
  15. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  16. package/lib/cjs/components-react/common/HighlightingComponentProps.d.ts +19 -19
  17. package/lib/cjs/components-react/common/HighlightingComponentProps.js +9 -9
  18. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  19. package/lib/cjs/components-react/common/IImageLoader.d.ts +41 -41
  20. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  21. package/lib/cjs/components-react/common/IImageLoader.js +9 -9
  22. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  23. package/lib/cjs/components-react/common/ImageRenderer.d.ts +36 -36
  24. package/lib/cjs/components-react/common/ImageRenderer.js +146 -142
  25. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  26. package/lib/cjs/components-react/common/Links.d.ts +12 -12
  27. package/lib/cjs/components-react/common/Links.js +71 -71
  28. package/lib/cjs/components-react/common/Links.js.map +1 -1
  29. package/lib/cjs/components-react/common/PageOptions.d.ts +10 -10
  30. package/lib/cjs/components-react/common/PageOptions.js +9 -9
  31. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  32. package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts +32 -32
  33. package/lib/cjs/components-react/common/SubscriptionScheduler.js +78 -78
  34. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  35. package/lib/cjs/components-react/common/UseAsyncValue.d.ts +8 -8
  36. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  37. package/lib/cjs/components-react/common/UseAsyncValue.js +68 -64
  38. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  39. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts +7 -7
  40. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +27 -27
  41. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  42. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +15 -15
  43. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +48 -48
  44. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  45. package/lib/cjs/components-react/common/UseRerender.d.ts +21 -21
  46. package/lib/cjs/components-react/common/UseRerender.js +31 -31
  47. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  48. package/lib/cjs/components-react/common/countMatchesInString.d.ts +7 -7
  49. package/lib/cjs/components-react/common/countMatchesInString.js +31 -31
  50. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  51. package/lib/cjs/components-react/common/selection/SelectionHandler.d.ts +122 -122
  52. package/lib/cjs/components-react/common/selection/SelectionHandler.js +220 -220
  53. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  54. package/lib/cjs/components-react/common/selection/SelectionModes.d.ts +32 -32
  55. package/lib/cjs/components-react/common/selection/SelectionModes.js +44 -44
  56. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  57. package/lib/cjs/components-react/converters/BooleanTypeConverter.d.ts +20 -20
  58. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +54 -54
  59. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  60. package/lib/cjs/components-react/converters/CompositeTypeConverter.d.ts +13 -13
  61. package/lib/cjs/components-react/converters/CompositeTypeConverter.js +63 -63
  62. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  63. package/lib/cjs/components-react/converters/DateTimeTypeConverter.d.ts +48 -48
  64. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js +183 -183
  65. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  66. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts +15 -15
  67. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  68. package/lib/cjs/components-react/converters/EnumTypeConverter.js +55 -55
  69. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  70. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.d.ts +13 -13
  71. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +47 -47
  72. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  73. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.d.ts +14 -14
  74. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js +30 -30
  75. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  76. package/lib/cjs/components-react/converters/NumericTypeConverter.d.ts +35 -35
  77. package/lib/cjs/components-react/converters/NumericTypeConverter.js +111 -113
  78. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  79. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts +38 -38
  80. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  81. package/lib/cjs/components-react/converters/PointTypeConverter.js +116 -116
  82. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  83. package/lib/cjs/components-react/converters/StringTypeConverter.d.ts +45 -45
  84. package/lib/cjs/components-react/converters/StringTypeConverter.js +91 -91
  85. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  86. package/lib/cjs/components-react/converters/TypeConverter.d.ts +83 -83
  87. package/lib/cjs/components-react/converters/TypeConverter.js +76 -77
  88. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  89. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts +16 -16
  90. package/lib/cjs/components-react/converters/TypeConverterManager.js +50 -50
  91. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  92. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.d.ts +30 -30
  93. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js +9 -9
  94. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  95. package/lib/cjs/components-react/datepicker/DateField.d.ts +32 -32
  96. package/lib/cjs/components-react/datepicker/DateField.js +160 -156
  97. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  98. package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
  99. package/lib/cjs/components-react/datepicker/DatePicker.d.ts +21 -21
  100. package/lib/cjs/components-react/datepicker/DatePicker.js +212 -208
  101. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  102. package/lib/cjs/components-react/datepicker/DatePicker.scss +176 -177
  103. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts +29 -29
  104. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +103 -99
  105. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  106. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  107. package/lib/cjs/components-react/datepicker/IntlFormatter.d.ts +18 -18
  108. package/lib/cjs/components-react/datepicker/IntlFormatter.js +44 -44
  109. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  110. package/lib/cjs/components-react/datepicker/TimeField.d.ts +29 -29
  111. package/lib/cjs/components-react/datepicker/TimeField.js +252 -248
  112. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  113. package/lib/cjs/components-react/datepicker/TimeField.scss +76 -76
  114. package/lib/cjs/components-react/editors/BooleanEditor.d.ts +45 -45
  115. package/lib/cjs/components-react/editors/BooleanEditor.js +152 -148
  116. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  117. package/lib/cjs/components-react/editors/BooleanEditor.scss +22 -22
  118. package/lib/cjs/components-react/editors/CustomNumberEditor.d.ts +54 -54
  119. package/lib/cjs/components-react/editors/CustomNumberEditor.js +297 -295
  120. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  121. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +20 -21
  122. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts +69 -69
  123. package/lib/cjs/components-react/editors/DateTimeEditor.js +305 -302
  124. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  125. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
  126. package/lib/cjs/components-react/editors/EditorContainer.d.ts +92 -92
  127. package/lib/cjs/components-react/editors/EditorContainer.js +187 -183
  128. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  129. package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
  130. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +44 -44
  131. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +185 -181
  132. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  133. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +141 -141
  134. package/lib/cjs/components-react/editors/EnumEditor.d.ts +49 -49
  135. package/lib/cjs/components-react/editors/EnumEditor.js +192 -188
  136. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  137. package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
  138. package/lib/cjs/components-react/editors/IconEditor.d.ts +47 -47
  139. package/lib/cjs/components-react/editors/IconEditor.js +169 -165
  140. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  141. package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
  142. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts +47 -47
  143. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +151 -147
  144. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  145. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  146. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts +52 -52
  147. package/lib/cjs/components-react/editors/NumericInputEditor.js +175 -171
  148. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  149. package/lib/cjs/components-react/editors/NumericInputEditor.scss +16 -17
  150. package/lib/cjs/components-react/editors/PopupButton.d.ts +72 -72
  151. package/lib/cjs/components-react/editors/PopupButton.js +118 -115
  152. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  153. package/lib/cjs/components-react/editors/PopupButton.scss +116 -116
  154. package/lib/cjs/components-react/editors/PropertyEditorManager.d.ts +72 -72
  155. package/lib/cjs/components-react/editors/PropertyEditorManager.js +151 -147
  156. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  157. package/lib/cjs/components-react/editors/SliderEditor.d.ts +63 -63
  158. package/lib/cjs/components-react/editors/SliderEditor.js +252 -248
  159. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  160. package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
  161. package/lib/cjs/components-react/editors/TextEditor.d.ts +40 -40
  162. package/lib/cjs/components-react/editors/TextEditor.js +168 -166
  163. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  164. package/lib/cjs/components-react/editors/TextEditor.scss +20 -21
  165. package/lib/cjs/components-react/editors/TextareaEditor.d.ts +53 -53
  166. package/lib/cjs/components-react/editors/TextareaEditor.js +206 -202
  167. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  168. package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
  169. package/lib/cjs/components-react/editors/ToggleEditor.d.ts +44 -44
  170. package/lib/cjs/components-react/editors/ToggleEditor.js +152 -148
  171. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  172. package/lib/cjs/components-react/editors/ToggleEditor.scss +23 -23
  173. package/lib/cjs/components-react/editors/variables.scss +7 -6
  174. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +36 -36
  175. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  176. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +72 -68
  177. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  178. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts +19 -19
  179. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +54 -51
  180. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  181. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +37 -37
  182. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +62 -58
  183. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  184. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +79 -79
  185. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +86 -82
  186. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  187. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +21 -21
  188. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +89 -85
  189. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  190. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +38 -38
  191. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +37 -37
  192. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +90 -86
  193. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  194. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -68
  195. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +23 -23
  196. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +55 -52
  197. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  198. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +26 -26
  199. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +66 -62
  200. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  201. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +22 -22
  202. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +52 -48
  203. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  204. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +86 -86
  205. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  206. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +245 -241
  207. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  208. package/lib/cjs/components-react/filter-builder/Operators.d.ts +44 -44
  209. package/lib/cjs/components-react/filter-builder/Operators.js +130 -130
  210. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  211. package/lib/cjs/components-react/filter-builder/Types.d.ts +37 -37
  212. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  213. package/lib/cjs/components-react/filter-builder/Types.js +18 -18
  214. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  215. package/lib/cjs/components-react/filtering/FilteringInput.d.ts +76 -76
  216. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  217. package/lib/cjs/components-react/filtering/FilteringInput.js +150 -146
  218. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  219. package/lib/cjs/components-react/filtering/FilteringInput.scss +58 -59
  220. package/lib/cjs/components-react/filtering/ResultSelector.d.ts +48 -48
  221. package/lib/cjs/components-react/filtering/ResultSelector.js +129 -125
  222. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  223. package/lib/cjs/components-react/filtering/ResultSelector.scss +68 -68
  224. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +47 -47
  225. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +117 -113
  226. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  227. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +75 -75
  228. package/lib/cjs/components-react/inputs/ParsedInput.d.ts +28 -28
  229. package/lib/cjs/components-react/inputs/ParsedInput.js +114 -110
  230. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  231. package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
  232. package/lib/cjs/components-react/properties/ItemStyle.d.ts +48 -48
  233. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  234. package/lib/cjs/components-react/properties/ItemStyle.js +64 -64
  235. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  236. package/lib/cjs/components-react/properties/LinkHandler.d.ts +28 -28
  237. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  238. package/lib/cjs/components-react/properties/LinkHandler.js +108 -104
  239. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  240. package/lib/cjs/components-react/properties/ValueRendererManager.d.ts +89 -89
  241. package/lib/cjs/components-react/properties/ValueRendererManager.js +92 -92
  242. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  243. package/lib/cjs/components-react/properties/renderers/ActionButtonList.d.ts +29 -29
  244. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +60 -56
  245. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  246. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
  247. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +19 -19
  248. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  249. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js +9 -9
  250. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  251. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.d.ts +19 -19
  252. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +95 -92
  253. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  254. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +36 -36
  255. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +97 -93
  256. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  257. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  258. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +28 -28
  259. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +59 -56
  260. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  261. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.d.ts +29 -29
  262. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js +69 -69
  263. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  264. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts +97 -97
  265. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +112 -108
  266. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  267. package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts +36 -36
  268. package/lib/cjs/components-react/properties/renderers/PropertyView.js +105 -101
  269. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  270. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +104 -104
  271. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +23 -23
  272. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +61 -57
  273. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  274. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +21 -21
  275. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +47 -43
  276. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  277. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +22 -22
  278. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +53 -50
  279. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  280. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  281. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +15 -15
  282. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +62 -58
  283. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  284. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +15 -15
  285. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +58 -55
  286. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  287. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +15 -15
  288. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +27 -27
  289. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  290. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +24 -24
  291. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +96 -95
  292. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  293. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +15 -15
  294. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +58 -55
  295. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  296. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +44 -44
  297. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  298. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +89 -88
  299. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  300. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +15 -15
  301. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +59 -55
  302. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  303. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +18 -18
  304. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +70 -66
  305. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  306. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +9 -9
  307. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  308. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +43 -39
  309. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  310. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +14 -14
  311. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +54 -50
  312. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  313. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +44 -44
  314. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +91 -87
  315. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  316. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +14 -14
  317. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +52 -48
  318. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  319. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +38 -38
  320. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  321. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +42 -43
  322. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  323. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +55 -55
  324. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js +17 -17
  325. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  326. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts +24 -24
  327. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +69 -69
  328. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  329. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +45 -45
  330. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  331. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +106 -98
  332. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  333. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +17 -17
  334. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +53 -49
  335. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  336. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +32 -32
  337. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +63 -60
  338. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  339. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +61 -61
  340. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +187 -185
  341. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  342. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +73 -73
  343. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +99 -86
  344. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  345. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +55 -55
  346. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  347. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +43 -43
  348. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  349. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +125 -121
  350. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  351. package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts +64 -64
  352. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +72 -68
  353. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  354. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +119 -118
  355. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  356. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +266 -267
  357. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  358. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -101
  359. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +25 -24
  360. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  361. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +33 -33
  362. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  363. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +41 -41
  364. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +182 -184
  365. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  366. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts +28 -28
  367. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +73 -73
  368. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  369. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts +17 -17
  370. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +50 -51
  371. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  372. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts +17 -17
  373. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +48 -48
  374. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  375. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts +17 -17
  376. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +48 -48
  377. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  378. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts +89 -89
  379. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +60 -60
  380. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  381. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +24 -24
  382. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +27 -27
  383. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  384. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +38 -38
  385. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +74 -74
  386. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  387. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +65 -65
  388. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +79 -79
  389. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  390. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +15 -15
  391. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  392. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +18 -18
  393. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  394. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +36 -36
  395. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +65 -65
  396. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  397. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +51 -51
  398. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  399. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js +6 -6
  400. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  401. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +20 -20
  402. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +46 -46
  403. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  404. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +14 -14
  405. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +24 -24
  406. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  407. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +20 -20
  408. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +44 -44
  409. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  410. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +21 -21
  411. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +48 -49
  412. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  413. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +163 -163
  414. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  415. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +218 -218
  416. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  417. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +43 -43
  418. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +74 -75
  419. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  420. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +47 -47
  421. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +72 -72
  422. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  423. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +24 -24
  424. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  425. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +72 -68
  426. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  427. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +40 -40
  428. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +84 -82
  429. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  430. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +48 -48
  431. package/lib/cjs/components-react/selectable-content/SelectableContent.js +75 -72
  432. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  433. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +20 -20
  434. package/lib/cjs/components-react/table/TableDataProvider.d.ts +10 -9
  435. package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +1 -1
  436. package/lib/cjs/components-react/table/TableDataProvider.js +18 -17
  437. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  438. package/lib/cjs/components-react/toolbar/Item.d.ts +37 -37
  439. package/lib/cjs/components-react/toolbar/Item.js +50 -46
  440. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  441. package/lib/cjs/components-react/toolbar/Item.scss +91 -91
  442. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts +19 -19
  443. package/lib/cjs/components-react/toolbar/ItemWrapper.js +63 -59
  444. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  445. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
  446. package/lib/cjs/components-react/toolbar/Items.d.ts +20 -20
  447. package/lib/cjs/components-react/toolbar/Items.js +80 -76
  448. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  449. package/lib/cjs/components-react/toolbar/Items.scss +96 -96
  450. package/lib/cjs/components-react/toolbar/Overflow.d.ts +31 -31
  451. package/lib/cjs/components-react/toolbar/Overflow.js +76 -72
  452. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  453. package/lib/cjs/components-react/toolbar/Overflow.scss +57 -57
  454. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts +17 -17
  455. package/lib/cjs/components-react/toolbar/OverflowPanel.js +72 -68
  456. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  457. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
  458. package/lib/cjs/components-react/toolbar/PopupItem.d.ts +50 -50
  459. package/lib/cjs/components-react/toolbar/PopupItem.js +109 -105
  460. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  461. package/lib/cjs/components-react/toolbar/PopupItem.scss +88 -88
  462. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts +22 -22
  463. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +175 -171
  464. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  465. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts +14 -14
  466. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +146 -142
  467. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  468. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +32 -32
  469. package/lib/cjs/components-react/toolbar/Toolbar.js +98 -94
  470. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  471. package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
  472. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +133 -133
  473. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  474. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +477 -473
  475. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  476. package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
  477. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.d.ts +19 -19
  478. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +52 -48
  479. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  480. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  481. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts +17 -17
  482. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +47 -43
  483. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  484. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
  485. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts +17 -17
  486. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +47 -43
  487. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  488. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
  489. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts +18 -18
  490. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +49 -45
  491. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  492. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +15 -15
  493. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts +17 -17
  494. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +47 -43
  495. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  496. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +33 -33
  497. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
  498. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.d.ts +16 -16
  499. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +50 -46
  500. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  501. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  502. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts +38 -38
  503. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +66 -62
  504. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  505. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +117 -117
  506. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  507. package/lib/cjs/components-react/toolbar/useDragInteraction.d.ts +14 -14
  508. package/lib/cjs/components-react/toolbar/useDragInteraction.js +129 -125
  509. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  510. package/lib/cjs/components-react/toolbar/utilities/Direction.d.ts +49 -49
  511. package/lib/cjs/components-react/toolbar/utilities/Direction.js +94 -94
  512. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  513. package/lib/cjs/components-react/tree/HighlightingEngine.d.ts +51 -51
  514. package/lib/cjs/components-react/tree/HighlightingEngine.js +65 -61
  515. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  516. package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
  517. package/lib/cjs/components-react/tree/ImageLoader.d.ts +18 -18
  518. package/lib/cjs/components-react/tree/ImageLoader.js +25 -25
  519. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  520. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +23 -23
  521. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  522. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js +39 -39
  523. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  524. package/lib/cjs/components-react/tree/TreeComponentTestId.d.ts +15 -15
  525. package/lib/cjs/components-react/tree/TreeComponentTestId.js +23 -23
  526. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  527. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +97 -97
  528. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  529. package/lib/cjs/components-react/tree/TreeDataProvider.js +56 -56
  530. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  531. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +97 -97
  532. package/lib/cjs/components-react/tree/controlled/Observable.js +25 -25
  533. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  534. package/lib/cjs/components-react/tree/controlled/TreeActions.d.ts +20 -20
  535. package/lib/cjs/components-react/tree/controlled/TreeActions.js +9 -9
  536. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  537. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts +38 -38
  538. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +224 -224
  539. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  540. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts +61 -61
  541. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js +84 -84
  542. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  543. package/lib/cjs/components-react/tree/controlled/TreeEvents.d.ts +108 -108
  544. package/lib/cjs/components-react/tree/controlled/TreeEvents.js +9 -9
  545. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  546. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts +47 -47
  547. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +80 -80
  548. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  549. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +229 -229
  550. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  551. package/lib/cjs/components-react/tree/controlled/TreeModel.js +330 -336
  552. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  553. package/lib/cjs/components-react/tree/controlled/TreeModelSource.d.ts +33 -33
  554. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js +68 -68
  555. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  556. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts +147 -147
  557. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +312 -314
  558. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  559. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +57 -57
  560. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +110 -106
  561. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  562. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  563. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts +25 -25
  564. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  565. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +95 -90
  566. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  567. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +27 -27
  568. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +31 -31
  569. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  570. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +61 -57
  571. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  572. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +42 -42
  573. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  574. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +67 -63
  575. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  576. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +72 -72
  577. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  578. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +256 -252
  579. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  580. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.d.ts +71 -71
  581. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +243 -244
  582. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  583. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.d.ts +30 -30
  584. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +126 -126
  585. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  586. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +51 -51
  587. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  588. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +251 -253
  589. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  590. package/lib/cjs/components-react.d.ts +202 -202
  591. package/lib/cjs/components-react.js +226 -222
  592. package/lib/cjs/components-react.js.map +1 -1
  593. package/lib/esm/components-react/UiComponents.d.ts +35 -35
  594. package/lib/esm/components-react/UiComponents.js +76 -75
  595. package/lib/esm/components-react/UiComponents.js.map +1 -1
  596. package/lib/esm/components-react/_target.scss +9 -9
  597. package/lib/esm/components-react/common/DateUtils.d.ts +58 -58
  598. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  599. package/lib/esm/components-react/common/DateUtils.js +68 -68
  600. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  601. package/lib/esm/components-react/common/DelayedSpinner.d.ts +22 -22
  602. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  603. package/lib/esm/components-react/common/DelayedSpinner.js +33 -34
  604. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  605. package/lib/esm/components-react/common/HighlightedText.d.ts +22 -22
  606. package/lib/esm/components-react/common/HighlightedText.js +31 -31
  607. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  608. package/lib/esm/components-react/common/HighlightingComponentProps.d.ts +19 -19
  609. package/lib/esm/components-react/common/HighlightingComponentProps.js +8 -8
  610. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  611. package/lib/esm/components-react/common/IImageLoader.d.ts +41 -41
  612. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  613. package/lib/esm/components-react/common/IImageLoader.js +8 -8
  614. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  615. package/lib/esm/components-react/common/ImageRenderer.d.ts +36 -36
  616. package/lib/esm/components-react/common/ImageRenderer.js +120 -119
  617. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  618. package/lib/esm/components-react/common/Links.d.ts +12 -12
  619. package/lib/esm/components-react/common/Links.js +64 -64
  620. package/lib/esm/components-react/common/Links.js.map +1 -1
  621. package/lib/esm/components-react/common/PageOptions.d.ts +10 -10
  622. package/lib/esm/components-react/common/PageOptions.js +8 -8
  623. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  624. package/lib/esm/components-react/common/SubscriptionScheduler.d.ts +32 -32
  625. package/lib/esm/components-react/common/SubscriptionScheduler.js +73 -73
  626. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  627. package/lib/esm/components-react/common/UseAsyncValue.d.ts +8 -8
  628. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  629. package/lib/esm/components-react/common/UseAsyncValue.js +41 -41
  630. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  631. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts +7 -7
  632. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +20 -20
  633. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  634. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +15 -15
  635. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +44 -44
  636. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  637. package/lib/esm/components-react/common/UseRerender.d.ts +21 -21
  638. package/lib/esm/components-react/common/UseRerender.js +27 -27
  639. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  640. package/lib/esm/components-react/common/countMatchesInString.d.ts +7 -7
  641. package/lib/esm/components-react/common/countMatchesInString.js +27 -27
  642. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  643. package/lib/esm/components-react/common/selection/SelectionHandler.d.ts +122 -122
  644. package/lib/esm/components-react/common/selection/SelectionHandler.js +215 -215
  645. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  646. package/lib/esm/components-react/common/selection/SelectionModes.d.ts +32 -32
  647. package/lib/esm/components-react/common/selection/SelectionModes.js +40 -40
  648. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  649. package/lib/esm/components-react/converters/BooleanTypeConverter.d.ts +20 -20
  650. package/lib/esm/components-react/converters/BooleanTypeConverter.js +51 -50
  651. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  652. package/lib/esm/components-react/converters/CompositeTypeConverter.d.ts +13 -13
  653. package/lib/esm/components-react/converters/CompositeTypeConverter.js +59 -59
  654. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  655. package/lib/esm/components-react/converters/DateTimeTypeConverter.d.ts +48 -48
  656. package/lib/esm/components-react/converters/DateTimeTypeConverter.js +177 -177
  657. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  658. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts +15 -15
  659. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  660. package/lib/esm/components-react/converters/EnumTypeConverter.js +51 -51
  661. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  662. package/lib/esm/components-react/converters/HexadecimalTypeConverter.d.ts +13 -13
  663. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +43 -43
  664. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  665. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.d.ts +14 -14
  666. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js +26 -26
  667. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  668. package/lib/esm/components-react/converters/NumericTypeConverter.d.ts +35 -35
  669. package/lib/esm/components-react/converters/NumericTypeConverter.js +105 -107
  670. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  671. package/lib/esm/components-react/converters/PointTypeConverter.d.ts +38 -38
  672. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  673. package/lib/esm/components-react/converters/PointTypeConverter.js +110 -110
  674. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  675. package/lib/esm/components-react/converters/StringTypeConverter.d.ts +45 -45
  676. package/lib/esm/components-react/converters/StringTypeConverter.js +87 -87
  677. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  678. package/lib/esm/components-react/converters/TypeConverter.d.ts +83 -83
  679. package/lib/esm/components-react/converters/TypeConverter.js +72 -73
  680. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  681. package/lib/esm/components-react/converters/TypeConverterManager.d.ts +16 -16
  682. package/lib/esm/components-react/converters/TypeConverterManager.js +47 -46
  683. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  684. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.d.ts +30 -30
  685. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js +8 -8
  686. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  687. package/lib/esm/components-react/datepicker/DateField.d.ts +32 -32
  688. package/lib/esm/components-react/datepicker/DateField.js +129 -129
  689. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  690. package/lib/esm/components-react/datepicker/DateField.scss +22 -22
  691. package/lib/esm/components-react/datepicker/DatePicker.d.ts +21 -21
  692. package/lib/esm/components-react/datepicker/DatePicker.js +182 -182
  693. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  694. package/lib/esm/components-react/datepicker/DatePicker.scss +176 -177
  695. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts +29 -29
  696. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +76 -76
  697. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  698. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  699. package/lib/esm/components-react/datepicker/IntlFormatter.d.ts +18 -18
  700. package/lib/esm/components-react/datepicker/IntlFormatter.js +40 -40
  701. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  702. package/lib/esm/components-react/datepicker/TimeField.d.ts +29 -29
  703. package/lib/esm/components-react/datepicker/TimeField.js +225 -225
  704. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  705. package/lib/esm/components-react/datepicker/TimeField.scss +76 -76
  706. package/lib/esm/components-react/editors/BooleanEditor.d.ts +45 -45
  707. package/lib/esm/components-react/editors/BooleanEditor.js +121 -121
  708. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  709. package/lib/esm/components-react/editors/BooleanEditor.scss +22 -22
  710. package/lib/esm/components-react/editors/CustomNumberEditor.d.ts +54 -54
  711. package/lib/esm/components-react/editors/CustomNumberEditor.js +266 -268
  712. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  713. package/lib/esm/components-react/editors/CustomNumberEditor.scss +20 -21
  714. package/lib/esm/components-react/editors/DateTimeEditor.d.ts +69 -69
  715. package/lib/esm/components-react/editors/DateTimeEditor.js +273 -274
  716. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  717. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
  718. package/lib/esm/components-react/editors/EditorContainer.d.ts +92 -92
  719. package/lib/esm/components-react/editors/EditorContainer.js +160 -160
  720. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  721. package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
  722. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +44 -44
  723. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +154 -154
  724. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  725. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +141 -141
  726. package/lib/esm/components-react/editors/EnumEditor.d.ts +49 -49
  727. package/lib/esm/components-react/editors/EnumEditor.js +161 -161
  728. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  729. package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
  730. package/lib/esm/components-react/editors/IconEditor.d.ts +47 -47
  731. package/lib/esm/components-react/editors/IconEditor.js +138 -138
  732. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  733. package/lib/esm/components-react/editors/IconEditor.scss +16 -16
  734. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts +47 -47
  735. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js +120 -120
  736. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  737. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  738. package/lib/esm/components-react/editors/NumericInputEditor.d.ts +52 -52
  739. package/lib/esm/components-react/editors/NumericInputEditor.js +144 -144
  740. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  741. package/lib/esm/components-react/editors/NumericInputEditor.scss +16 -17
  742. package/lib/esm/components-react/editors/PopupButton.d.ts +72 -72
  743. package/lib/esm/components-react/editors/PopupButton.js +86 -87
  744. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  745. package/lib/esm/components-react/editors/PopupButton.scss +116 -116
  746. package/lib/esm/components-react/editors/PropertyEditorManager.d.ts +72 -72
  747. package/lib/esm/components-react/editors/PropertyEditorManager.js +122 -121
  748. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  749. package/lib/esm/components-react/editors/SliderEditor.d.ts +63 -63
  750. package/lib/esm/components-react/editors/SliderEditor.js +221 -221
  751. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  752. package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
  753. package/lib/esm/components-react/editors/TextEditor.d.ts +40 -40
  754. package/lib/esm/components-react/editors/TextEditor.js +138 -140
  755. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  756. package/lib/esm/components-react/editors/TextEditor.scss +20 -21
  757. package/lib/esm/components-react/editors/TextareaEditor.d.ts +53 -53
  758. package/lib/esm/components-react/editors/TextareaEditor.js +175 -175
  759. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  760. package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
  761. package/lib/esm/components-react/editors/ToggleEditor.d.ts +44 -44
  762. package/lib/esm/components-react/editors/ToggleEditor.js +121 -121
  763. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  764. package/lib/esm/components-react/editors/ToggleEditor.scss +23 -23
  765. package/lib/esm/components-react/editors/variables.scss +7 -6
  766. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +36 -36
  767. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  768. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +45 -45
  769. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  770. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts +19 -19
  771. package/lib/esm/components-react/favorite/FavoritePropertyList.js +27 -28
  772. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  773. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +37 -37
  774. package/lib/esm/components-react/filter-builder/FilterBuilder.js +35 -35
  775. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  776. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +79 -79
  777. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +59 -59
  778. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  779. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +21 -21
  780. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +62 -62
  781. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  782. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +38 -38
  783. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +37 -37
  784. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +62 -62
  785. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  786. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -68
  787. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +23 -23
  788. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +28 -29
  789. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  790. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +26 -26
  791. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +39 -39
  792. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  793. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +22 -22
  794. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +25 -25
  795. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  796. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +86 -86
  797. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  798. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +215 -215
  799. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  800. package/lib/esm/components-react/filter-builder/Operators.d.ts +44 -44
  801. package/lib/esm/components-react/filter-builder/Operators.js +124 -124
  802. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  803. package/lib/esm/components-react/filter-builder/Types.d.ts +37 -37
  804. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  805. package/lib/esm/components-react/filter-builder/Types.js +14 -14
  806. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  807. package/lib/esm/components-react/filtering/FilteringInput.d.ts +76 -76
  808. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  809. package/lib/esm/components-react/filtering/FilteringInput.js +120 -120
  810. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  811. package/lib/esm/components-react/filtering/FilteringInput.scss +58 -59
  812. package/lib/esm/components-react/filtering/ResultSelector.d.ts +48 -48
  813. package/lib/esm/components-react/filtering/ResultSelector.js +99 -99
  814. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  815. package/lib/esm/components-react/filtering/ResultSelector.scss +68 -68
  816. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +47 -47
  817. package/lib/esm/components-react/iconpicker/IconPickerButton.js +88 -87
  818. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  819. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +75 -75
  820. package/lib/esm/components-react/inputs/ParsedInput.d.ts +28 -28
  821. package/lib/esm/components-react/inputs/ParsedInput.js +85 -85
  822. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  823. package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
  824. package/lib/esm/components-react/properties/ItemStyle.d.ts +48 -48
  825. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  826. package/lib/esm/components-react/properties/ItemStyle.js +61 -61
  827. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  828. package/lib/esm/components-react/properties/LinkHandler.d.ts +28 -28
  829. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  830. package/lib/esm/components-react/properties/LinkHandler.js +79 -79
  831. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  832. package/lib/esm/components-react/properties/ValueRendererManager.d.ts +89 -89
  833. package/lib/esm/components-react/properties/ValueRendererManager.js +88 -88
  834. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  835. package/lib/esm/components-react/properties/renderers/ActionButtonList.d.ts +29 -29
  836. package/lib/esm/components-react/properties/renderers/ActionButtonList.js +33 -33
  837. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  838. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
  839. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +19 -19
  840. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  841. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js +8 -8
  842. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  843. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.d.ts +19 -19
  844. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +68 -69
  845. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  846. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +36 -36
  847. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +70 -70
  848. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  849. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  850. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +28 -28
  851. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +32 -33
  852. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  853. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.d.ts +29 -29
  854. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js +65 -65
  855. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  856. package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts +97 -97
  857. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +85 -85
  858. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  859. package/lib/esm/components-react/properties/renderers/PropertyView.d.ts +36 -36
  860. package/lib/esm/components-react/properties/renderers/PropertyView.js +78 -78
  861. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  862. package/lib/esm/components-react/properties/renderers/PropertyView.scss +104 -104
  863. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +23 -23
  864. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +34 -34
  865. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  866. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +21 -21
  867. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +20 -20
  868. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  869. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +22 -22
  870. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +26 -27
  871. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  872. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  873. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +15 -15
  874. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +35 -35
  875. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  876. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +15 -15
  877. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +31 -32
  878. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  879. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +15 -15
  880. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +23 -23
  881. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  882. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +24 -24
  883. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +68 -71
  884. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  885. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +15 -15
  886. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +31 -32
  887. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  888. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +44 -44
  889. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  890. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +59 -62
  891. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  892. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +15 -15
  893. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js +32 -32
  894. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  895. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +18 -18
  896. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +43 -43
  897. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  898. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +9 -9
  899. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  900. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js +16 -16
  901. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  902. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +14 -14
  903. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js +27 -27
  904. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  905. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +44 -44
  906. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +64 -64
  907. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  908. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +14 -14
  909. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js +25 -25
  910. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  911. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +38 -38
  912. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  913. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +39 -39
  914. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  915. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +55 -55
  916. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js +13 -13
  917. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  918. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts +24 -24
  919. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +65 -65
  920. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  921. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +45 -45
  922. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  923. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +80 -75
  924. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  925. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +17 -17
  926. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +23 -23
  927. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  928. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +32 -32
  929. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +36 -37
  930. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  931. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +61 -61
  932. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +157 -159
  933. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  934. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +73 -73
  935. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +99 -86
  936. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  937. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +52 -51
  938. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  939. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +43 -43
  940. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  941. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +98 -98
  942. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  943. package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts +64 -64
  944. package/lib/esm/components-react/propertygrid/component/PropertyList.js +41 -41
  945. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  946. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +119 -118
  947. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  948. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +236 -241
  949. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  950. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -101
  951. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +25 -24
  952. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  953. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +26 -26
  954. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  955. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +41 -41
  956. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +178 -180
  957. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  958. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts +28 -28
  959. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +69 -69
  960. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  961. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts +17 -17
  962. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +46 -47
  963. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  964. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts +17 -17
  965. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +44 -44
  966. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  967. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts +17 -17
  968. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +44 -44
  969. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  970. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts +89 -89
  971. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +53 -53
  972. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  973. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +24 -24
  974. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +23 -23
  975. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  976. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +38 -38
  977. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +67 -67
  978. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  979. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +65 -65
  980. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +75 -75
  981. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  982. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +15 -15
  983. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  984. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +14 -14
  985. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  986. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +36 -36
  987. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +61 -61
  988. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  989. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +51 -51
  990. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  991. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js +5 -5
  992. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  993. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +20 -20
  994. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +42 -42
  995. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  996. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +14 -14
  997. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +20 -20
  998. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  999. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +20 -20
  1000. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +40 -40
  1001. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  1002. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +21 -21
  1003. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +44 -45
  1004. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  1005. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +163 -163
  1006. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  1007. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +210 -210
  1008. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  1009. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +43 -43
  1010. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +70 -71
  1011. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  1012. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +47 -47
  1013. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +68 -68
  1014. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  1015. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +24 -24
  1016. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  1017. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +45 -45
  1018. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  1019. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +40 -40
  1020. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +57 -59
  1021. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  1022. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +48 -48
  1023. package/lib/esm/components-react/selectable-content/SelectableContent.js +47 -48
  1024. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  1025. package/lib/esm/components-react/selectable-content/SelectableContent.scss +20 -20
  1026. package/lib/esm/components-react/table/TableDataProvider.d.ts +10 -9
  1027. package/lib/esm/components-react/table/TableDataProvider.d.ts.map +1 -1
  1028. package/lib/esm/components-react/table/TableDataProvider.js +14 -13
  1029. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  1030. package/lib/esm/components-react/toolbar/Item.d.ts +37 -37
  1031. package/lib/esm/components-react/toolbar/Item.js +21 -21
  1032. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  1033. package/lib/esm/components-react/toolbar/Item.scss +91 -91
  1034. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts +19 -19
  1035. package/lib/esm/components-react/toolbar/ItemWrapper.js +32 -32
  1036. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  1037. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
  1038. package/lib/esm/components-react/toolbar/Items.d.ts +20 -20
  1039. package/lib/esm/components-react/toolbar/Items.js +50 -50
  1040. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  1041. package/lib/esm/components-react/toolbar/Items.scss +96 -96
  1042. package/lib/esm/components-react/toolbar/Overflow.d.ts +31 -31
  1043. package/lib/esm/components-react/toolbar/Overflow.js +45 -45
  1044. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  1045. package/lib/esm/components-react/toolbar/Overflow.scss +57 -57
  1046. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts +17 -17
  1047. package/lib/esm/components-react/toolbar/OverflowPanel.js +42 -42
  1048. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  1049. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
  1050. package/lib/esm/components-react/toolbar/PopupItem.d.ts +50 -50
  1051. package/lib/esm/components-react/toolbar/PopupItem.js +77 -77
  1052. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  1053. package/lib/esm/components-react/toolbar/PopupItem.scss +88 -88
  1054. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts +22 -22
  1055. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +144 -144
  1056. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  1057. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts +14 -14
  1058. package/lib/esm/components-react/toolbar/PopupItemsPanel.js +116 -116
  1059. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  1060. package/lib/esm/components-react/toolbar/Toolbar.d.ts +32 -32
  1061. package/lib/esm/components-react/toolbar/Toolbar.js +68 -68
  1062. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  1063. package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
  1064. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +133 -133
  1065. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  1066. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +441 -440
  1067. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  1068. package/lib/esm/components-react/toolbar/_variables.scss +34 -34
  1069. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.d.ts +19 -19
  1070. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js +23 -23
  1071. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  1072. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  1073. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts +17 -17
  1074. package/lib/esm/components-react/toolbar/groupPanel/Column.js +17 -17
  1075. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  1076. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
  1077. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts +17 -17
  1078. package/lib/esm/components-react/toolbar/groupPanel/Columns.js +17 -17
  1079. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  1080. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
  1081. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts +18 -18
  1082. package/lib/esm/components-react/toolbar/groupPanel/Panel.js +19 -19
  1083. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  1084. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +15 -15
  1085. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts +17 -17
  1086. package/lib/esm/components-react/toolbar/groupPanel/Title.js +17 -17
  1087. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  1088. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +33 -33
  1089. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
  1090. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.d.ts +16 -16
  1091. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js +21 -21
  1092. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  1093. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  1094. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts +38 -38
  1095. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js +36 -36
  1096. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  1097. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +117 -117
  1098. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  1099. package/lib/esm/components-react/toolbar/useDragInteraction.d.ts +14 -14
  1100. package/lib/esm/components-react/toolbar/useDragInteraction.js +102 -102
  1101. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  1102. package/lib/esm/components-react/toolbar/utilities/Direction.d.ts +49 -49
  1103. package/lib/esm/components-react/toolbar/utilities/Direction.js +91 -89
  1104. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  1105. package/lib/esm/components-react/tree/HighlightingEngine.d.ts +51 -51
  1106. package/lib/esm/components-react/tree/HighlightingEngine.js +39 -38
  1107. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  1108. package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
  1109. package/lib/esm/components-react/tree/ImageLoader.d.ts +18 -18
  1110. package/lib/esm/components-react/tree/ImageLoader.js +21 -21
  1111. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  1112. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +23 -23
  1113. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  1114. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js +35 -35
  1115. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  1116. package/lib/esm/components-react/tree/TreeComponentTestId.d.ts +15 -15
  1117. package/lib/esm/components-react/tree/TreeComponentTestId.js +20 -20
  1118. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  1119. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +97 -97
  1120. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  1121. package/lib/esm/components-react/tree/TreeDataProvider.js +48 -48
  1122. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  1123. package/lib/esm/components-react/tree/controlled/Observable.d.ts +97 -97
  1124. package/lib/esm/components-react/tree/controlled/Observable.js +20 -20
  1125. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  1126. package/lib/esm/components-react/tree/controlled/TreeActions.d.ts +20 -20
  1127. package/lib/esm/components-react/tree/controlled/TreeActions.js +8 -8
  1128. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  1129. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts +38 -38
  1130. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +220 -220
  1131. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  1132. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts +61 -61
  1133. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js +80 -80
  1134. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  1135. package/lib/esm/components-react/tree/controlled/TreeEvents.d.ts +108 -108
  1136. package/lib/esm/components-react/tree/controlled/TreeEvents.js +8 -8
  1137. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  1138. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts +47 -47
  1139. package/lib/esm/components-react/tree/controlled/TreeHooks.js +72 -72
  1140. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  1141. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +229 -229
  1142. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  1143. package/lib/esm/components-react/tree/controlled/TreeModel.js +321 -324
  1144. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  1145. package/lib/esm/components-react/tree/controlled/TreeModelSource.d.ts +33 -33
  1146. package/lib/esm/components-react/tree/controlled/TreeModelSource.js +64 -64
  1147. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  1148. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts +147 -147
  1149. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +303 -305
  1150. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  1151. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +57 -57
  1152. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +83 -83
  1153. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  1154. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  1155. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts +25 -25
  1156. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  1157. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +65 -64
  1158. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  1159. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +27 -27
  1160. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +31 -31
  1161. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  1162. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js +34 -34
  1163. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  1164. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +42 -42
  1165. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  1166. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +41 -41
  1167. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  1168. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +72 -72
  1169. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  1170. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +226 -226
  1171. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  1172. package/lib/esm/components-react/tree/controlled/internal/SparseTree.d.ts +71 -71
  1173. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +238 -239
  1174. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  1175. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.d.ts +30 -30
  1176. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +122 -122
  1177. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  1178. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +51 -51
  1179. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  1180. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +246 -248
  1181. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  1182. package/lib/esm/components-react.d.ts +202 -202
  1183. package/lib/esm/components-react.js +208 -208
  1184. package/lib/esm/components-react.js.map +1 -1
  1185. package/lib/public/locales/en/UiComponents.json +139 -139
  1186. package/package.json +17 -21
@@ -1,249 +1,247 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Tree
7
- */
8
- import { take } from "rxjs/internal/operators/take";
9
- import { Subject } from "rxjs/internal/Subject";
10
- import { BeUiEvent } from "@itwin/core-bentley";
11
- import { SelectionHandler } from "../../../common/selection/SelectionHandler";
12
- import { isTreeModelNode } from "../TreeModel";
13
- import { isNavigationKey, ItemKeyboardNavigator, Orientation } from "@itwin/core-react";
14
- /** @internal */
15
- export function isRangeSelection(selection) {
16
- return selection && typeof (selection.from) === "string" && typeof (selection.to) === "string";
17
- }
18
- /** @internal */
19
- export class TreeSelectionManager {
20
- constructor(selectionMode, getVisibleNodes) {
21
- this.onSelectionChanged = new BeUiEvent();
22
- this.onSelectionReplaced = new BeUiEvent();
23
- this.onDragSelection = new BeUiEvent();
24
- this._onKeyboardEvent = (e, actions, isKeyDown) => {
25
- if (isNavigationKey(e.key)) {
26
- // istanbul ignore next
27
- if (!this._getVisibleNodes)
28
- return;
29
- const processedNodeId = this._selectionHandler.processedItem;
30
- const isExpandable = (node) => !node.isLoading && node.numChildren !== 0;
31
- const isEditing = (node) => node.editingInfo !== undefined;
32
- // istanbul ignore else
33
- if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
34
- const processedNode = this._getVisibleNodes().getModel().getNode(processedNodeId);
35
- // istanbul ignore next
36
- if (processedNode && isEditing(processedNode))
37
- return;
38
- }
39
- const handleKeyboardSelectItem = (index) => {
40
- // istanbul ignore else
41
- if (this._getVisibleNodes) {
42
- const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);
43
- // istanbul ignore else
44
- if (node) {
45
- // istanbul ignore next
46
- if (isEditing(node))
47
- return;
48
- const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));
49
- selectionFunc(e.shiftKey, e.ctrlKey);
50
- }
51
- }
52
- };
53
- const handleKeyboardActivateItem = (_index) => {
54
- // istanbul ignore else
55
- if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
56
- const node = this._getVisibleNodes().getModel().getNode(processedNodeId);
57
- // istanbul ignore else
58
- if (node) {
59
- if (isExpandable(node)) {
60
- if (!node.isExpanded)
61
- actions.onNodeExpanded(node.id);
62
- else
63
- actions.onNodeCollapsed(node.id);
64
- }
65
- else {
66
- actions.onNodeEditorActivated(node.id);
67
- }
68
- }
69
- }
70
- };
71
- const handleCrossAxisArrowKey = (forward) => {
72
- // istanbul ignore else
73
- if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
74
- const node = this._getVisibleNodes().getModel().getNode(processedNodeId);
75
- // istanbul ignore else
76
- if (node) {
77
- if (isExpandable(node)) {
78
- if (forward && !node.isExpanded)
79
- actions.onNodeExpanded(node.id);
80
- else if (!forward && node.isExpanded)
81
- actions.onNodeCollapsed(node.id);
82
- }
83
- }
84
- }
85
- };
86
- // istanbul ignore else
87
- if (isIndividualSelection(processedNodeId)) {
88
- const itemKeyboardNavigator = new ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
89
- itemKeyboardNavigator.orientation = Orientation.Vertical;
90
- itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
91
- itemKeyboardNavigator.allowWrap = false;
92
- itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();
93
- const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);
94
- isKeyDown ?
95
- itemKeyboardNavigator.handleKeyDownEvent(e, index) :
96
- itemKeyboardNavigator.handleKeyUpEvent(e, index);
97
- }
98
- }
99
- };
100
- this._getVisibleNodes = getVisibleNodes;
101
- const onItemsSelected = (selections, replacement) => {
102
- // Assumes that `selections` will only contain either a list of
103
- // `IndividualSelection` items or a single `RangeSelection` item.
104
- if (isIndividualSelection(selections[0])) {
105
- if (replacement) {
106
- this.onSelectionReplaced.emit({
107
- selectedNodeIds: selections,
108
- });
109
- }
110
- else {
111
- this.onSelectionChanged.emit({
112
- selectedNodes: selections,
113
- deselectedNodes: [],
114
- });
115
- }
116
- }
117
- else {
118
- if (replacement) {
119
- this.onSelectionReplaced.emit({
120
- selectedNodeIds: selections[0],
121
- });
122
- }
123
- else {
124
- this.onSelectionChanged.emit({
125
- selectedNodes: selections[0],
126
- deselectedNodes: [],
127
- });
128
- }
129
- }
130
- };
131
- const onItemsDeselected = (deselections) => {
132
- // Assumes that this will be always called with `IndividualSelection` items
133
- this.onSelectionChanged.emit({
134
- selectedNodes: [],
135
- deselectedNodes: deselections,
136
- });
137
- };
138
- this._selectionHandler = new SelectionHandler(selectionMode, onItemsSelected, onItemsDeselected);
139
- // eslint-disable-next-line @typescript-eslint/no-this-alias
140
- const _this = this;
141
- const itemHandlers = new Proxy({}, {
142
- get(_target, prop) {
143
- if (prop === "length") {
144
- return _this._getVisibleNodes === undefined ? 0 : _this._getVisibleNodes().getNumNodes();
145
- }
146
- // istanbul ignore next
147
- if (_this._getVisibleNodes === undefined)
148
- return undefined;
149
- const index = +prop;
150
- const node = _this.getVisibleNodeAtIndex(_this._getVisibleNodes(), index);
151
- return new ItemHandler(node);
152
- },
153
- });
154
- this._itemHandlers = [itemHandlers];
155
- }
156
- getVisibleNodeAtIndex(nodes, index) {
157
- const foundNode = nodes !== undefined ? nodes.getAtIndex(index) : /* istanbul ignore next */ undefined;
158
- return isTreeModelNode(foundNode) ? foundNode : undefined;
159
- }
160
- setVisibleNodes(visibleNodes) {
161
- this._getVisibleNodes = visibleNodes;
162
- }
163
- onNodeClicked(nodeId, event) {
164
- const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(nodeId));
165
- selectionFunc(event.shiftKey, event.ctrlKey);
166
- }
167
- onNodeMouseDown(nodeId) {
168
- this._selectionHandler.createDragAction(this.createSelectionHandlers(nodeId)[0], this._itemHandlers, nodeId);
169
- window.addEventListener("mouseup", () => {
170
- /* istanbul ignore else */
171
- if (this._dragSelectionOperation) {
172
- this._selectionHandler.completeDragAction();
173
- this._dragSelectionOperation.complete();
174
- this._dragSelectionOperation = undefined;
175
- }
176
- }, { once: true });
177
- this._dragSelectionOperation = new Subject();
178
- this._dragSelectionOperation
179
- .pipe(take(1))
180
- .subscribe((value) => {
181
- this.onDragSelection.emit({ selectionChanges: this._dragSelectionOperation });
182
- this._dragSelectionOperation.next(value);
183
- });
184
- }
185
- onNodeMouseMove(nodeId) {
186
- this._selectionHandler.updateDragAction(nodeId);
187
- }
188
- createSelectionHandlers(nodeId) {
189
- let deselectedAll = false;
190
- const multiSelectionHandler = {
191
- selectBetween: (item1, item2) => [{ from: item1, to: item2 }],
192
- updateSelection: (selections, deselections) => {
193
- // Assumes `updateSelection` will never be called with selection ranges
194
- const selectedNodeIds = selections;
195
- const deselectedNodeIds = deselections;
196
- this._dragSelectionOperation.next({ selectedNodes: selectedNodeIds, deselectedNodes: deselectedNodeIds });
197
- },
198
- deselectAll: () => {
199
- deselectedAll = true;
200
- },
201
- areEqual: (item1, item2) => item1 === item2,
202
- };
203
- const singleSelectionHandler = {
204
- preselect: () => { },
205
- select: () => { },
206
- deselect: () => { },
207
- isSelected: () => {
208
- if (deselectedAll || this._getVisibleNodes === undefined) {
209
- return false;
210
- }
211
- const node = this._getVisibleNodes().getModel().getNode(nodeId);
212
- return node !== undefined && node.isSelected;
213
- },
214
- item: () => nodeId,
215
- };
216
- return [multiSelectionHandler, singleSelectionHandler];
217
- }
218
- onTreeKeyDown(event, actions) {
219
- this._onKeyboardEvent(event, actions, true);
220
- }
221
- onTreeKeyUp(event, actions) {
222
- this._onKeyboardEvent(event, actions, false);
223
- }
224
- }
225
- function isIndividualSelection(selection) {
226
- return typeof (selection) === "string";
227
- }
228
- class ItemHandler {
229
- constructor(node) {
230
- this._node = node;
231
- }
232
- /* istanbul ignore next: noop */
233
- preselect() { }
234
- /* istanbul ignore next: noop */
235
- select() { }
236
- /* istanbul ignore next: noop */
237
- deselect() { }
238
- // eslint-disable-next-line @itwin/prefer-get
239
- isSelected() {
240
- var _a;
241
- // istanbul ignore next
242
- return !!((_a = this._node) === null || _a === void 0 ? void 0 : _a.isSelected);
243
- }
244
- item() {
245
- var _a, _b;
246
- return (_b = (_a = this._node) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "";
247
- }
248
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Tree
7
+ */
8
+ import { take } from "rxjs/internal/operators/take";
9
+ import { Subject } from "rxjs/internal/Subject";
10
+ import { BeUiEvent } from "@itwin/core-bentley";
11
+ import { SelectionHandler } from "../../../common/selection/SelectionHandler";
12
+ import { isTreeModelNode } from "../TreeModel";
13
+ import { isNavigationKey, ItemKeyboardNavigator, Orientation } from "@itwin/core-react";
14
+ /** @internal */
15
+ export function isRangeSelection(selection) {
16
+ return selection && typeof (selection.from) === "string" && typeof (selection.to) === "string";
17
+ }
18
+ /** @internal */
19
+ export class TreeSelectionManager {
20
+ constructor(selectionMode, getVisibleNodes) {
21
+ this.onSelectionChanged = new BeUiEvent();
22
+ this.onSelectionReplaced = new BeUiEvent();
23
+ this.onDragSelection = new BeUiEvent();
24
+ this._onKeyboardEvent = (e, actions, isKeyDown) => {
25
+ if (isNavigationKey(e.key)) {
26
+ // istanbul ignore next
27
+ if (!this._getVisibleNodes)
28
+ return;
29
+ const processedNodeId = this._selectionHandler.processedItem;
30
+ const isExpandable = (node) => !node.isLoading && node.numChildren !== 0;
31
+ const isEditing = (node) => node.editingInfo !== undefined;
32
+ // istanbul ignore else
33
+ if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
34
+ const processedNode = this._getVisibleNodes().getModel().getNode(processedNodeId);
35
+ // istanbul ignore next
36
+ if (processedNode && isEditing(processedNode))
37
+ return;
38
+ }
39
+ const handleKeyboardSelectItem = (index) => {
40
+ // istanbul ignore else
41
+ if (this._getVisibleNodes) {
42
+ const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);
43
+ // istanbul ignore else
44
+ if (node) {
45
+ // istanbul ignore next
46
+ if (isEditing(node))
47
+ return;
48
+ const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));
49
+ selectionFunc(e.shiftKey, e.ctrlKey);
50
+ }
51
+ }
52
+ };
53
+ const handleKeyboardActivateItem = (_index) => {
54
+ // istanbul ignore else
55
+ if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
56
+ const node = this._getVisibleNodes().getModel().getNode(processedNodeId);
57
+ // istanbul ignore else
58
+ if (node) {
59
+ if (isExpandable(node)) {
60
+ if (!node.isExpanded)
61
+ actions.onNodeExpanded(node.id);
62
+ else
63
+ actions.onNodeCollapsed(node.id);
64
+ }
65
+ else {
66
+ actions.onNodeEditorActivated(node.id);
67
+ }
68
+ }
69
+ }
70
+ };
71
+ const handleCrossAxisArrowKey = (forward) => {
72
+ // istanbul ignore else
73
+ if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {
74
+ const node = this._getVisibleNodes().getModel().getNode(processedNodeId);
75
+ // istanbul ignore else
76
+ if (node) {
77
+ if (isExpandable(node)) {
78
+ if (forward && !node.isExpanded)
79
+ actions.onNodeExpanded(node.id);
80
+ else if (!forward && node.isExpanded)
81
+ actions.onNodeCollapsed(node.id);
82
+ }
83
+ }
84
+ }
85
+ };
86
+ // istanbul ignore else
87
+ if (isIndividualSelection(processedNodeId)) {
88
+ const itemKeyboardNavigator = new ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
89
+ itemKeyboardNavigator.orientation = Orientation.Vertical;
90
+ itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
91
+ itemKeyboardNavigator.allowWrap = false;
92
+ itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();
93
+ const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);
94
+ isKeyDown ?
95
+ itemKeyboardNavigator.handleKeyDownEvent(e, index) :
96
+ itemKeyboardNavigator.handleKeyUpEvent(e, index);
97
+ }
98
+ }
99
+ };
100
+ this._getVisibleNodes = getVisibleNodes;
101
+ const onItemsSelected = (selections, replacement) => {
102
+ // Assumes that `selections` will only contain either a list of
103
+ // `IndividualSelection` items or a single `RangeSelection` item.
104
+ if (isIndividualSelection(selections[0])) {
105
+ if (replacement) {
106
+ this.onSelectionReplaced.emit({
107
+ selectedNodeIds: selections,
108
+ });
109
+ }
110
+ else {
111
+ this.onSelectionChanged.emit({
112
+ selectedNodes: selections,
113
+ deselectedNodes: [],
114
+ });
115
+ }
116
+ }
117
+ else {
118
+ if (replacement) {
119
+ this.onSelectionReplaced.emit({
120
+ selectedNodeIds: selections[0],
121
+ });
122
+ }
123
+ else {
124
+ this.onSelectionChanged.emit({
125
+ selectedNodes: selections[0],
126
+ deselectedNodes: [],
127
+ });
128
+ }
129
+ }
130
+ };
131
+ const onItemsDeselected = (deselections) => {
132
+ // Assumes that this will be always called with `IndividualSelection` items
133
+ this.onSelectionChanged.emit({
134
+ selectedNodes: [],
135
+ deselectedNodes: deselections,
136
+ });
137
+ };
138
+ this._selectionHandler = new SelectionHandler(selectionMode, onItemsSelected, onItemsDeselected);
139
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
140
+ const _this = this;
141
+ const itemHandlers = new Proxy({}, {
142
+ get(_target, prop) {
143
+ if (prop === "length") {
144
+ return _this._getVisibleNodes === undefined ? 0 : _this._getVisibleNodes().getNumNodes();
145
+ }
146
+ // istanbul ignore next
147
+ if (_this._getVisibleNodes === undefined)
148
+ return undefined;
149
+ const index = +prop;
150
+ const node = _this.getVisibleNodeAtIndex(_this._getVisibleNodes(), index);
151
+ return new ItemHandler(node);
152
+ },
153
+ });
154
+ this._itemHandlers = [itemHandlers];
155
+ }
156
+ getVisibleNodeAtIndex(nodes, index) {
157
+ const foundNode = nodes !== undefined ? nodes.getAtIndex(index) : /* istanbul ignore next */ undefined;
158
+ return isTreeModelNode(foundNode) ? foundNode : undefined;
159
+ }
160
+ setVisibleNodes(visibleNodes) {
161
+ this._getVisibleNodes = visibleNodes;
162
+ }
163
+ onNodeClicked(nodeId, event) {
164
+ const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(nodeId));
165
+ selectionFunc(event.shiftKey, event.ctrlKey);
166
+ }
167
+ onNodeMouseDown(nodeId) {
168
+ this._selectionHandler.createDragAction(this.createSelectionHandlers(nodeId)[0], this._itemHandlers, nodeId);
169
+ window.addEventListener("mouseup", () => {
170
+ /* istanbul ignore else */
171
+ if (this._dragSelectionOperation) {
172
+ this._selectionHandler.completeDragAction();
173
+ this._dragSelectionOperation.complete();
174
+ this._dragSelectionOperation = undefined;
175
+ }
176
+ }, { once: true });
177
+ this._dragSelectionOperation = new Subject();
178
+ this._dragSelectionOperation
179
+ .pipe(take(1))
180
+ .subscribe((value) => {
181
+ this.onDragSelection.emit({ selectionChanges: this._dragSelectionOperation });
182
+ this._dragSelectionOperation.next(value);
183
+ });
184
+ }
185
+ onNodeMouseMove(nodeId) {
186
+ this._selectionHandler.updateDragAction(nodeId);
187
+ }
188
+ createSelectionHandlers(nodeId) {
189
+ let deselectedAll = false;
190
+ const multiSelectionHandler = {
191
+ selectBetween: (item1, item2) => [{ from: item1, to: item2 }],
192
+ updateSelection: (selections, deselections) => {
193
+ // Assumes `updateSelection` will never be called with selection ranges
194
+ const selectedNodeIds = selections;
195
+ const deselectedNodeIds = deselections;
196
+ this._dragSelectionOperation.next({ selectedNodes: selectedNodeIds, deselectedNodes: deselectedNodeIds });
197
+ },
198
+ deselectAll: () => {
199
+ deselectedAll = true;
200
+ },
201
+ areEqual: (item1, item2) => item1 === item2,
202
+ };
203
+ const singleSelectionHandler = {
204
+ preselect: () => { },
205
+ select: () => { },
206
+ deselect: () => { },
207
+ isSelected: () => {
208
+ if (deselectedAll || this._getVisibleNodes === undefined) {
209
+ return false;
210
+ }
211
+ const node = this._getVisibleNodes().getModel().getNode(nodeId);
212
+ return node !== undefined && node.isSelected;
213
+ },
214
+ item: () => nodeId,
215
+ };
216
+ return [multiSelectionHandler, singleSelectionHandler];
217
+ }
218
+ onTreeKeyDown(event, actions) {
219
+ this._onKeyboardEvent(event, actions, true);
220
+ }
221
+ onTreeKeyUp(event, actions) {
222
+ this._onKeyboardEvent(event, actions, false);
223
+ }
224
+ }
225
+ function isIndividualSelection(selection) {
226
+ return typeof (selection) === "string";
227
+ }
228
+ class ItemHandler {
229
+ constructor(node) {
230
+ this._node = node;
231
+ }
232
+ /* istanbul ignore next: noop */
233
+ preselect() { }
234
+ /* istanbul ignore next: noop */
235
+ select() { }
236
+ /* istanbul ignore next: noop */
237
+ deselect() { }
238
+ // eslint-disable-next-line @itwin/prefer-get
239
+ isSelected() {
240
+ // istanbul ignore next
241
+ return !!this._node?.isSelected;
242
+ }
243
+ item() {
244
+ return this._node?.id ?? "";
245
+ }
246
+ }
249
247
  //# sourceMappingURL=TreeSelectionManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeSelectionManager.js","sourceRoot":"","sources":["../../../../../../src/components-react/tree/controlled/internal/TreeSelectionManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tree\r\n */\r\n\r\nimport { take } from \"rxjs/internal/operators/take\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\nimport { BeUiEvent } from \"@itwin/core-bentley\";\r\nimport { MultiSelectionHandler, SelectionHandler, SingleSelectionHandler } from \"../../../common/selection/SelectionHandler\";\r\nimport { SelectionMode } from \"../../../common/selection/SelectionModes\";\r\nimport { Observable } from \"../Observable\";\r\nimport { TreeActions } from \"../TreeActions\";\r\nimport { isTreeModelNode, TreeModelNode, VisibleTreeNodes } from \"../TreeModel\";\r\nimport { isNavigationKey, ItemKeyboardNavigator, Orientation } from \"@itwin/core-react\";\r\n\r\n/** @internal */\r\nexport interface SelectionReplacementEvent {\r\n selectedNodeIds: IndividualSelection | RangeSelection;\r\n}\r\n\r\n/** @internal */\r\nexport interface SelectionModificationEvent {\r\n selectedNodes: IndividualSelection | RangeSelection;\r\n deselectedNodes: IndividualSelection;\r\n}\r\n\r\n/** @internal */\r\nexport interface DragSelectionStartEvent {\r\n selectionChanges: Observable<SelectionModificationEvent>;\r\n}\r\n\r\n/** @internal */\r\nexport type IndividualSelection = string[];\r\n\r\n/** @internal */\r\nexport interface RangeSelection {\r\n from: string;\r\n to: string;\r\n}\r\n\r\n/** @internal */\r\nexport function isRangeSelection(selection: any): selection is RangeSelection {\r\n return selection && typeof (selection.from) === \"string\" && typeof (selection.to) === \"string\";\r\n}\r\n\r\n/** @internal */\r\nexport class TreeSelectionManager implements Pick<TreeActions, \"onNodeClicked\" | \"onNodeMouseDown\" | \"onNodeMouseMove\"> {\r\n private _selectionHandler: SelectionHandler<Selection>;\r\n private _dragSelectionOperation?: Subject<SelectionModificationEvent>;\r\n private _itemHandlers: Array<Array<SingleSelectionHandler<string>>>;\r\n\r\n private _getVisibleNodes: (() => VisibleTreeNodes) | undefined;\r\n\r\n public onSelectionChanged = new BeUiEvent<SelectionModificationEvent>();\r\n public onSelectionReplaced = new BeUiEvent<SelectionReplacementEvent>();\r\n public onDragSelection = new BeUiEvent<DragSelectionStartEvent>();\r\n\r\n constructor(\r\n selectionMode: SelectionMode,\r\n getVisibleNodes?: () => VisibleTreeNodes,\r\n ) {\r\n this._getVisibleNodes = getVisibleNodes;\r\n\r\n const onItemsSelected = (selections: Selection[], replacement: boolean) => {\r\n // Assumes that `selections` will only contain either a list of\r\n // `IndividualSelection` items or a single `RangeSelection` item.\r\n if (isIndividualSelection(selections[0])) {\r\n if (replacement) {\r\n this.onSelectionReplaced.emit({\r\n selectedNodeIds: selections as IndividualSelection,\r\n });\r\n } else {\r\n this.onSelectionChanged.emit({\r\n selectedNodes: selections as IndividualSelection,\r\n deselectedNodes: [],\r\n });\r\n }\r\n } else {\r\n if (replacement) {\r\n this.onSelectionReplaced.emit({\r\n selectedNodeIds: selections[0],\r\n });\r\n } else {\r\n this.onSelectionChanged.emit({\r\n selectedNodes: selections[0],\r\n deselectedNodes: [],\r\n });\r\n }\r\n }\r\n };\r\n\r\n const onItemsDeselected = (deselections: Selection[]) => {\r\n // Assumes that this will be always called with `IndividualSelection` items\r\n this.onSelectionChanged.emit({\r\n selectedNodes: [],\r\n deselectedNodes: deselections as IndividualSelection,\r\n });\r\n };\r\n\r\n this._selectionHandler = new SelectionHandler(selectionMode, onItemsSelected, onItemsDeselected);\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-this-alias\r\n const _this = this;\r\n const itemHandlers = new Proxy({}, {\r\n get(_target, prop) {\r\n if (prop === \"length\") {\r\n return _this._getVisibleNodes === undefined ? 0 : _this._getVisibleNodes().getNumNodes();\r\n }\r\n\r\n // istanbul ignore next\r\n if (_this._getVisibleNodes === undefined)\r\n return undefined;\r\n\r\n const index: number = +(prop as string);\r\n const node = _this.getVisibleNodeAtIndex(_this._getVisibleNodes(), index);\r\n return new ItemHandler(node);\r\n },\r\n }) as Array<SingleSelectionHandler<string>>;\r\n this._itemHandlers = [itemHandlers];\r\n }\r\n\r\n private getVisibleNodeAtIndex(nodes: VisibleTreeNodes | undefined, index: number): TreeModelNode | undefined {\r\n const foundNode = nodes !== undefined ? nodes.getAtIndex(index) : /* istanbul ignore next */ undefined;\r\n return isTreeModelNode(foundNode) ? foundNode : undefined;\r\n }\r\n\r\n public setVisibleNodes(visibleNodes: (() => VisibleTreeNodes) | undefined) {\r\n this._getVisibleNodes = visibleNodes;\r\n }\r\n\r\n public onNodeClicked(nodeId: string, event: React.MouseEvent) {\r\n const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(nodeId));\r\n selectionFunc(event.shiftKey, event.ctrlKey);\r\n }\r\n\r\n public onNodeMouseDown(nodeId: string) {\r\n this._selectionHandler.createDragAction(this.createSelectionHandlers(nodeId)[0], this._itemHandlers, nodeId);\r\n window.addEventListener(\r\n \"mouseup\",\r\n () => {\r\n /* istanbul ignore else */\r\n if (this._dragSelectionOperation) {\r\n this._selectionHandler.completeDragAction();\r\n this._dragSelectionOperation.complete();\r\n this._dragSelectionOperation = undefined;\r\n }\r\n },\r\n { once: true },\r\n );\r\n this._dragSelectionOperation = new Subject();\r\n this._dragSelectionOperation\r\n .pipe(take(1))\r\n .subscribe((value) => {\r\n this.onDragSelection.emit({ selectionChanges: this._dragSelectionOperation! });\r\n this._dragSelectionOperation!.next(value);\r\n });\r\n }\r\n\r\n public onNodeMouseMove(nodeId: string) {\r\n this._selectionHandler.updateDragAction(nodeId);\r\n }\r\n\r\n private createSelectionHandlers(\r\n nodeId: string,\r\n ): [MultiSelectionHandler<Selection>, SingleSelectionHandler<string>] {\r\n let deselectedAll = false;\r\n const multiSelectionHandler: MultiSelectionHandler<Selection> = {\r\n selectBetween: (item1, item2) => [{ from: item1 as string, to: item2 as string }],\r\n updateSelection: (selections, deselections) => {\r\n // Assumes `updateSelection` will never be called with selection ranges\r\n const selectedNodeIds = selections as string[];\r\n const deselectedNodeIds = deselections as string[];\r\n this._dragSelectionOperation!.next({ selectedNodes: selectedNodeIds, deselectedNodes: deselectedNodeIds });\r\n },\r\n deselectAll: () => {\r\n deselectedAll = true;\r\n },\r\n areEqual: (item1, item2) => item1 === item2,\r\n };\r\n\r\n const singleSelectionHandler: SingleSelectionHandler<string> = {\r\n preselect: () => { },\r\n select: () => { },\r\n deselect: () => { },\r\n isSelected: () => {\r\n if (deselectedAll || this._getVisibleNodes === undefined) {\r\n return false;\r\n }\r\n\r\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\r\n return node !== undefined && node.isSelected;\r\n },\r\n item: () => nodeId,\r\n };\r\n\r\n return [multiSelectionHandler, singleSelectionHandler];\r\n }\r\n\r\n public onTreeKeyDown(event: React.KeyboardEvent, actions: TreeActions): void {\r\n this._onKeyboardEvent(event, actions, true);\r\n }\r\n\r\n public onTreeKeyUp(event: React.KeyboardEvent, actions: TreeActions): void {\r\n this._onKeyboardEvent(event, actions, false);\r\n }\r\n\r\n private _onKeyboardEvent = (e: React.KeyboardEvent, actions: TreeActions, isKeyDown: boolean) => {\r\n if (isNavigationKey(e.key)) {\r\n // istanbul ignore next\r\n if (!this._getVisibleNodes)\r\n return;\r\n\r\n const processedNodeId = this._selectionHandler.processedItem;\r\n\r\n const isExpandable = (node: TreeModelNode): boolean => !node.isLoading && node.numChildren !== 0;\r\n const isEditing = (node: TreeModelNode): boolean => node.editingInfo !== undefined;\r\n\r\n // istanbul ignore else\r\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\r\n const processedNode = this._getVisibleNodes().getModel().getNode(processedNodeId);\r\n // istanbul ignore next\r\n if (processedNode && isEditing(processedNode))\r\n return;\r\n }\r\n\r\n const handleKeyboardSelectItem = (index: number) => {\r\n // istanbul ignore else\r\n if (this._getVisibleNodes) {\r\n const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);\r\n // istanbul ignore else\r\n if (node) {\r\n // istanbul ignore next\r\n if (isEditing(node))\r\n return;\r\n\r\n const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));\r\n selectionFunc(e.shiftKey, e.ctrlKey);\r\n }\r\n }\r\n };\r\n const handleKeyboardActivateItem = (_index: number) => {\r\n // istanbul ignore else\r\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\r\n const node = this._getVisibleNodes().getModel().getNode(processedNodeId);\r\n // istanbul ignore else\r\n if (node) {\r\n if (isExpandable(node)) {\r\n if (!node.isExpanded)\r\n actions.onNodeExpanded(node.id);\r\n else\r\n actions.onNodeCollapsed(node.id);\r\n } else {\r\n actions.onNodeEditorActivated(node.id);\r\n }\r\n }\r\n }\r\n };\r\n const handleCrossAxisArrowKey = (forward: boolean) => {\r\n // istanbul ignore else\r\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\r\n const node = this._getVisibleNodes().getModel().getNode(processedNodeId);\r\n // istanbul ignore else\r\n if (node) {\r\n if (isExpandable(node)) {\r\n if (forward && !node.isExpanded)\r\n actions.onNodeExpanded(node.id);\r\n else if (!forward && node.isExpanded)\r\n actions.onNodeCollapsed(node.id);\r\n }\r\n }\r\n }\r\n };\r\n\r\n // istanbul ignore else\r\n if (isIndividualSelection(processedNodeId)) {\r\n const itemKeyboardNavigator = new ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);\r\n itemKeyboardNavigator.orientation = Orientation.Vertical;\r\n itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;\r\n itemKeyboardNavigator.allowWrap = false;\r\n itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();\r\n\r\n const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);\r\n isKeyDown ?\r\n itemKeyboardNavigator.handleKeyDownEvent(e, index) :\r\n itemKeyboardNavigator.handleKeyUpEvent(e, index);\r\n }\r\n }\r\n };\r\n}\r\n\r\ntype Selection = string | RangeSelection;\r\n\r\nfunction isIndividualSelection(selection: Selection | undefined): selection is string {\r\n return typeof (selection) === \"string\";\r\n}\r\n\r\nclass ItemHandler implements SingleSelectionHandler<string> {\r\n private _node: TreeModelNode | undefined;\r\n\r\n constructor(node: TreeModelNode | undefined) {\r\n this._node = node;\r\n }\r\n\r\n /* istanbul ignore next: noop */\r\n public preselect() { }\r\n\r\n /* istanbul ignore next: noop */\r\n public select() { }\r\n\r\n /* istanbul ignore next: noop */\r\n public deselect() { }\r\n\r\n // eslint-disable-next-line @itwin/prefer-get\r\n public isSelected(): boolean {\r\n // istanbul ignore next\r\n return !!this._node?.isSelected;\r\n }\r\n\r\n public item(): string {\r\n return this._node?.id ?? \"\";\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"TreeSelectionManager.js","sourceRoot":"","sources":["../../../../../../src/components-react/tree/controlled/internal/TreeSelectionManager.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 { take } from \"rxjs/internal/operators/take\";\nimport { Subject } from \"rxjs/internal/Subject\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport { MultiSelectionHandler, SelectionHandler, SingleSelectionHandler } from \"../../../common/selection/SelectionHandler\";\nimport { SelectionMode } from \"../../../common/selection/SelectionModes\";\nimport { Observable } from \"../Observable\";\nimport { TreeActions } from \"../TreeActions\";\nimport { isTreeModelNode, TreeModelNode, VisibleTreeNodes } from \"../TreeModel\";\nimport { isNavigationKey, ItemKeyboardNavigator, Orientation } from \"@itwin/core-react\";\n\n/** @internal */\nexport interface SelectionReplacementEvent {\n selectedNodeIds: IndividualSelection | RangeSelection;\n}\n\n/** @internal */\nexport interface SelectionModificationEvent {\n selectedNodes: IndividualSelection | RangeSelection;\n deselectedNodes: IndividualSelection;\n}\n\n/** @internal */\nexport interface DragSelectionStartEvent {\n selectionChanges: Observable<SelectionModificationEvent>;\n}\n\n/** @internal */\nexport type IndividualSelection = string[];\n\n/** @internal */\nexport interface RangeSelection {\n from: string;\n to: string;\n}\n\n/** @internal */\nexport function isRangeSelection(selection: any): selection is RangeSelection {\n return selection && typeof (selection.from) === \"string\" && typeof (selection.to) === \"string\";\n}\n\n/** @internal */\nexport class TreeSelectionManager implements Pick<TreeActions, \"onNodeClicked\" | \"onNodeMouseDown\" | \"onNodeMouseMove\"> {\n private _selectionHandler: SelectionHandler<Selection>;\n private _dragSelectionOperation?: Subject<SelectionModificationEvent>;\n private _itemHandlers: Array<Array<SingleSelectionHandler<string>>>;\n\n private _getVisibleNodes: (() => VisibleTreeNodes) | undefined;\n\n public onSelectionChanged = new BeUiEvent<SelectionModificationEvent>();\n public onSelectionReplaced = new BeUiEvent<SelectionReplacementEvent>();\n public onDragSelection = new BeUiEvent<DragSelectionStartEvent>();\n\n constructor(\n selectionMode: SelectionMode,\n getVisibleNodes?: () => VisibleTreeNodes,\n ) {\n this._getVisibleNodes = getVisibleNodes;\n\n const onItemsSelected = (selections: Selection[], replacement: boolean) => {\n // Assumes that `selections` will only contain either a list of\n // `IndividualSelection` items or a single `RangeSelection` item.\n if (isIndividualSelection(selections[0])) {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections as IndividualSelection,\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections as IndividualSelection,\n deselectedNodes: [],\n });\n }\n } else {\n if (replacement) {\n this.onSelectionReplaced.emit({\n selectedNodeIds: selections[0],\n });\n } else {\n this.onSelectionChanged.emit({\n selectedNodes: selections[0],\n deselectedNodes: [],\n });\n }\n }\n };\n\n const onItemsDeselected = (deselections: Selection[]) => {\n // Assumes that this will be always called with `IndividualSelection` items\n this.onSelectionChanged.emit({\n selectedNodes: [],\n deselectedNodes: deselections as IndividualSelection,\n });\n };\n\n this._selectionHandler = new SelectionHandler(selectionMode, onItemsSelected, onItemsDeselected);\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const _this = this;\n const itemHandlers = new Proxy({}, {\n get(_target, prop) {\n if (prop === \"length\") {\n return _this._getVisibleNodes === undefined ? 0 : _this._getVisibleNodes().getNumNodes();\n }\n\n // istanbul ignore next\n if (_this._getVisibleNodes === undefined)\n return undefined;\n\n const index: number = +(prop as string);\n const node = _this.getVisibleNodeAtIndex(_this._getVisibleNodes(), index);\n return new ItemHandler(node);\n },\n }) as Array<SingleSelectionHandler<string>>;\n this._itemHandlers = [itemHandlers];\n }\n\n private getVisibleNodeAtIndex(nodes: VisibleTreeNodes | undefined, index: number): TreeModelNode | undefined {\n const foundNode = nodes !== undefined ? nodes.getAtIndex(index) : /* istanbul ignore next */ undefined;\n return isTreeModelNode(foundNode) ? foundNode : undefined;\n }\n\n public setVisibleNodes(visibleNodes: (() => VisibleTreeNodes) | undefined) {\n this._getVisibleNodes = visibleNodes;\n }\n\n public onNodeClicked(nodeId: string, event: React.MouseEvent) {\n const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(nodeId));\n selectionFunc(event.shiftKey, event.ctrlKey);\n }\n\n public onNodeMouseDown(nodeId: string) {\n this._selectionHandler.createDragAction(this.createSelectionHandlers(nodeId)[0], this._itemHandlers, nodeId);\n window.addEventListener(\n \"mouseup\",\n () => {\n /* istanbul ignore else */\n if (this._dragSelectionOperation) {\n this._selectionHandler.completeDragAction();\n this._dragSelectionOperation.complete();\n this._dragSelectionOperation = undefined;\n }\n },\n { once: true },\n );\n this._dragSelectionOperation = new Subject();\n this._dragSelectionOperation\n .pipe(take(1))\n .subscribe((value) => {\n this.onDragSelection.emit({ selectionChanges: this._dragSelectionOperation! });\n this._dragSelectionOperation!.next(value);\n });\n }\n\n public onNodeMouseMove(nodeId: string) {\n this._selectionHandler.updateDragAction(nodeId);\n }\n\n private createSelectionHandlers(\n nodeId: string,\n ): [MultiSelectionHandler<Selection>, SingleSelectionHandler<string>] {\n let deselectedAll = false;\n const multiSelectionHandler: MultiSelectionHandler<Selection> = {\n selectBetween: (item1, item2) => [{ from: item1 as string, to: item2 as string }],\n updateSelection: (selections, deselections) => {\n // Assumes `updateSelection` will never be called with selection ranges\n const selectedNodeIds = selections as string[];\n const deselectedNodeIds = deselections as string[];\n this._dragSelectionOperation!.next({ selectedNodes: selectedNodeIds, deselectedNodes: deselectedNodeIds });\n },\n deselectAll: () => {\n deselectedAll = true;\n },\n areEqual: (item1, item2) => item1 === item2,\n };\n\n const singleSelectionHandler: SingleSelectionHandler<string> = {\n preselect: () => { },\n select: () => { },\n deselect: () => { },\n isSelected: () => {\n if (deselectedAll || this._getVisibleNodes === undefined) {\n return false;\n }\n\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\n return node !== undefined && node.isSelected;\n },\n item: () => nodeId,\n };\n\n return [multiSelectionHandler, singleSelectionHandler];\n }\n\n public onTreeKeyDown(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, true);\n }\n\n public onTreeKeyUp(event: React.KeyboardEvent, actions: TreeActions): void {\n this._onKeyboardEvent(event, actions, false);\n }\n\n private _onKeyboardEvent = (e: React.KeyboardEvent, actions: TreeActions, isKeyDown: boolean) => {\n if (isNavigationKey(e.key)) {\n // istanbul ignore next\n if (!this._getVisibleNodes)\n return;\n\n const processedNodeId = this._selectionHandler.processedItem;\n\n const isExpandable = (node: TreeModelNode): boolean => !node.isLoading && node.numChildren !== 0;\n const isEditing = (node: TreeModelNode): boolean => node.editingInfo !== undefined;\n\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const processedNode = this._getVisibleNodes().getModel().getNode(processedNodeId);\n // istanbul ignore next\n if (processedNode && isEditing(processedNode))\n return;\n }\n\n const handleKeyboardSelectItem = (index: number) => {\n // istanbul ignore else\n if (this._getVisibleNodes) {\n const node = this.getVisibleNodeAtIndex(this._getVisibleNodes(), index);\n // istanbul ignore else\n if (node) {\n // istanbul ignore next\n if (isEditing(node))\n return;\n\n const selectionFunc = this._selectionHandler.createSelectionFunction(...this.createSelectionHandlers(node.id));\n selectionFunc(e.shiftKey, e.ctrlKey);\n }\n }\n };\n const handleKeyboardActivateItem = (_index: number) => {\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const node = this._getVisibleNodes().getModel().getNode(processedNodeId);\n // istanbul ignore else\n if (node) {\n if (isExpandable(node)) {\n if (!node.isExpanded)\n actions.onNodeExpanded(node.id);\n else\n actions.onNodeCollapsed(node.id);\n } else {\n actions.onNodeEditorActivated(node.id);\n }\n }\n }\n };\n const handleCrossAxisArrowKey = (forward: boolean) => {\n // istanbul ignore else\n if (this._getVisibleNodes && isIndividualSelection(processedNodeId)) {\n const node = this._getVisibleNodes().getModel().getNode(processedNodeId);\n // istanbul ignore else\n if (node) {\n if (isExpandable(node)) {\n if (forward && !node.isExpanded)\n actions.onNodeExpanded(node.id);\n else if (!forward && node.isExpanded)\n actions.onNodeCollapsed(node.id);\n }\n }\n }\n };\n\n // istanbul ignore else\n if (isIndividualSelection(processedNodeId)) {\n const itemKeyboardNavigator = new ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);\n itemKeyboardNavigator.orientation = Orientation.Vertical;\n itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;\n itemKeyboardNavigator.allowWrap = false;\n itemKeyboardNavigator.itemCount = this._getVisibleNodes().getNumNodes();\n\n const index = this._getVisibleNodes().getIndexOfNode(processedNodeId);\n isKeyDown ?\n itemKeyboardNavigator.handleKeyDownEvent(e, index) :\n itemKeyboardNavigator.handleKeyUpEvent(e, index);\n }\n }\n };\n}\n\ntype Selection = string | RangeSelection;\n\nfunction isIndividualSelection(selection: Selection | undefined): selection is string {\n return typeof (selection) === \"string\";\n}\n\nclass ItemHandler implements SingleSelectionHandler<string> {\n private _node: TreeModelNode | undefined;\n\n constructor(node: TreeModelNode | undefined) {\n this._node = node;\n }\n\n /* istanbul ignore next: noop */\n public preselect() { }\n\n /* istanbul ignore next: noop */\n public select() { }\n\n /* istanbul ignore next: noop */\n public deselect() { }\n\n // eslint-disable-next-line @itwin/prefer-get\n public isSelected(): boolean {\n // istanbul ignore next\n return !!this._node?.isSelected;\n }\n\n public item(): string {\n return this._node?.id ?? \"\";\n }\n}\n"]}