@itwin/components-react 3.6.1 → 3.7.0-dev.2

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 (1319) hide show
  1. package/CHANGELOG.md +6 -13
  2. package/lib/cjs/components-react/UiComponents.d.ts +35 -35
  3. package/lib/cjs/components-react/UiComponents.js +79 -79
  4. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  5. package/lib/cjs/components-react/_target.scss +9 -9
  6. package/lib/cjs/components-react/breadcrumb/BeInspireTree.d.ts +262 -262
  7. package/lib/cjs/components-react/breadcrumb/BeInspireTree.js +901 -901
  8. package/lib/cjs/components-react/breadcrumb/BeInspireTree.js.map +1 -1
  9. package/lib/cjs/components-react/breadcrumb/Breadcrumb.d.ts +197 -197
  10. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js +651 -651
  11. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  12. package/lib/cjs/components-react/breadcrumb/Breadcrumb.scss +196 -196
  13. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.d.ts +65 -65
  14. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js +231 -231
  15. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  16. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.d.ts +35 -35
  17. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js +46 -46
  18. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  19. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +29 -29
  20. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js +135 -135
  21. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  22. package/lib/cjs/components-react/common/DateUtils.d.ts +58 -58
  23. package/lib/cjs/components-react/common/DateUtils.js +74 -74
  24. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  25. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +22 -22
  26. package/lib/cjs/components-react/common/DelayedSpinner.js +57 -57
  27. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  28. package/lib/cjs/components-react/common/HighlightedText.d.ts +22 -22
  29. package/lib/cjs/components-react/common/HighlightedText.js +38 -38
  30. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  31. package/lib/cjs/components-react/common/HighlightingComponentProps.d.ts +19 -19
  32. package/lib/cjs/components-react/common/HighlightingComponentProps.js +9 -9
  33. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  34. package/lib/cjs/components-react/common/IImageLoader.d.ts +41 -41
  35. package/lib/cjs/components-react/common/IImageLoader.js +9 -9
  36. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  37. package/lib/cjs/components-react/common/ImageRenderer.d.ts +36 -36
  38. package/lib/cjs/components-react/common/ImageRenderer.js +141 -141
  39. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  40. package/lib/cjs/components-react/common/Links.d.ts +12 -12
  41. package/lib/cjs/components-react/common/Links.js +71 -71
  42. package/lib/cjs/components-react/common/Links.js.map +1 -1
  43. package/lib/cjs/components-react/common/PageOptions.d.ts +10 -10
  44. package/lib/cjs/components-react/common/PageOptions.js +9 -9
  45. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  46. package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts +32 -32
  47. package/lib/cjs/components-react/common/SubscriptionScheduler.js +78 -78
  48. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  49. package/lib/cjs/components-react/common/UseAsyncValue.d.ts +8 -8
  50. package/lib/cjs/components-react/common/UseAsyncValue.js +64 -64
  51. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  52. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts +7 -7
  53. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +27 -27
  54. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  55. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +15 -15
  56. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +48 -48
  57. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  58. package/lib/cjs/components-react/common/UseRerender.d.ts +21 -21
  59. package/lib/cjs/components-react/common/UseRerender.js +31 -31
  60. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  61. package/lib/cjs/components-react/common/countMatchesInString.d.ts +7 -7
  62. package/lib/cjs/components-react/common/countMatchesInString.js +31 -31
  63. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  64. package/lib/cjs/components-react/common/selection/SelectionHandler.d.ts +122 -122
  65. package/lib/cjs/components-react/common/selection/SelectionHandler.js +220 -220
  66. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  67. package/lib/cjs/components-react/common/selection/SelectionModes.d.ts +32 -32
  68. package/lib/cjs/components-react/common/selection/SelectionModes.js +44 -44
  69. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  70. package/lib/cjs/components-react/common/showhide/ShowHideDialog.d.ts +38 -38
  71. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js +90 -90
  72. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  73. package/lib/cjs/components-react/common/showhide/ShowHideItem.d.ts +14 -14
  74. package/lib/cjs/components-react/common/showhide/ShowHideItem.js +9 -9
  75. package/lib/cjs/components-react/common/showhide/ShowHideItem.js.map +1 -1
  76. package/lib/cjs/components-react/common/showhide/ShowHideMenu.d.ts +53 -53
  77. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js +123 -123
  78. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  79. package/lib/cjs/components-react/converters/BooleanTypeConverter.d.ts +20 -20
  80. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +54 -54
  81. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  82. package/lib/cjs/components-react/converters/CompositeTypeConverter.d.ts +13 -13
  83. package/lib/cjs/components-react/converters/CompositeTypeConverter.js +63 -63
  84. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  85. package/lib/cjs/components-react/converters/DateTimeTypeConverter.d.ts +48 -48
  86. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js +183 -183
  87. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  88. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts +15 -15
  89. package/lib/cjs/components-react/converters/EnumTypeConverter.js +55 -55
  90. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  91. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.d.ts +13 -13
  92. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +47 -47
  93. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  94. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.d.ts +14 -14
  95. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js +30 -30
  96. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  97. package/lib/cjs/components-react/converters/NumericTypeConverter.d.ts +35 -35
  98. package/lib/cjs/components-react/converters/NumericTypeConverter.js +113 -113
  99. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  100. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts +38 -38
  101. package/lib/cjs/components-react/converters/PointTypeConverter.js +116 -116
  102. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  103. package/lib/cjs/components-react/converters/StringTypeConverter.d.ts +45 -45
  104. package/lib/cjs/components-react/converters/StringTypeConverter.js +91 -91
  105. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  106. package/lib/cjs/components-react/converters/TypeConverter.d.ts +83 -83
  107. package/lib/cjs/components-react/converters/TypeConverter.js +77 -77
  108. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  109. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts +16 -16
  110. package/lib/cjs/components-react/converters/TypeConverterManager.js +49 -49
  111. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  112. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.d.ts +30 -30
  113. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js +9 -9
  114. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  115. package/lib/cjs/components-react/datepicker/DateField.d.ts +32 -32
  116. package/lib/cjs/components-react/datepicker/DateField.js +156 -156
  117. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  118. package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
  119. package/lib/cjs/components-react/datepicker/DatePicker.d.ts +21 -21
  120. package/lib/cjs/components-react/datepicker/DatePicker.js +200 -200
  121. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  122. package/lib/cjs/components-react/datepicker/DatePicker.scss +170 -170
  123. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts +29 -29
  124. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +98 -98
  125. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  126. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  127. package/lib/cjs/components-react/datepicker/IntlFormatter.d.ts +18 -18
  128. package/lib/cjs/components-react/datepicker/IntlFormatter.js +44 -44
  129. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  130. package/lib/cjs/components-react/datepicker/TimeField.d.ts +29 -29
  131. package/lib/cjs/components-react/datepicker/TimeField.js +248 -248
  132. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  133. package/lib/cjs/components-react/datepicker/TimeField.scss +73 -73
  134. package/lib/cjs/components-react/editors/BooleanEditor.d.ts +44 -44
  135. package/lib/cjs/components-react/editors/BooleanEditor.js +153 -153
  136. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  137. package/lib/cjs/components-react/editors/BooleanEditor.scss +24 -24
  138. package/lib/cjs/components-react/editors/CustomNumberEditor.d.ts +54 -54
  139. package/lib/cjs/components-react/editors/CustomNumberEditor.js +295 -295
  140. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  141. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +21 -21
  142. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts +69 -69
  143. package/lib/cjs/components-react/editors/DateTimeEditor.js +302 -302
  144. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  145. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
  146. package/lib/cjs/components-react/editors/EditorContainer.d.ts +82 -82
  147. package/lib/cjs/components-react/editors/EditorContainer.js +182 -182
  148. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  149. package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
  150. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +43 -43
  151. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +179 -179
  152. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  153. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +182 -182
  154. package/lib/cjs/components-react/editors/EnumEditor.d.ts +49 -49
  155. package/lib/cjs/components-react/editors/EnumEditor.js +188 -188
  156. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  157. package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
  158. package/lib/cjs/components-react/editors/IconEditor.d.ts +47 -47
  159. package/lib/cjs/components-react/editors/IconEditor.js +165 -165
  160. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  161. package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
  162. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts +47 -47
  163. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +147 -147
  164. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  165. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +23 -23
  166. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts +52 -52
  167. package/lib/cjs/components-react/editors/NumericInputEditor.js +171 -171
  168. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  169. package/lib/cjs/components-react/editors/NumericInputEditor.scss +17 -17
  170. package/lib/cjs/components-react/editors/PopupButton.d.ts +72 -72
  171. package/lib/cjs/components-react/editors/PopupButton.js +113 -113
  172. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  173. package/lib/cjs/components-react/editors/PopupButton.scss +119 -119
  174. package/lib/cjs/components-react/editors/PropertyEditorManager.d.ts +72 -72
  175. package/lib/cjs/components-react/editors/PropertyEditorManager.js +147 -147
  176. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  177. package/lib/cjs/components-react/editors/SliderEditor.d.ts +63 -63
  178. package/lib/cjs/components-react/editors/SliderEditor.js +248 -248
  179. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  180. package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
  181. package/lib/cjs/components-react/editors/TextEditor.d.ts +40 -40
  182. package/lib/cjs/components-react/editors/TextEditor.js +159 -159
  183. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  184. package/lib/cjs/components-react/editors/TextEditor.scss +21 -21
  185. package/lib/cjs/components-react/editors/TextareaEditor.d.ts +53 -53
  186. package/lib/cjs/components-react/editors/TextareaEditor.js +202 -202
  187. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  188. package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
  189. package/lib/cjs/components-react/editors/ThemedEnumEditor.d.ts +62 -62
  190. package/lib/cjs/components-react/editors/ThemedEnumEditor.js +206 -206
  191. package/lib/cjs/components-react/editors/ThemedEnumEditor.js.map +1 -1
  192. package/lib/cjs/components-react/editors/ThemedEnumEditor.scss +82 -82
  193. package/lib/cjs/components-react/editors/ToggleEditor.d.ts +44 -44
  194. package/lib/cjs/components-react/editors/ToggleEditor.js +156 -156
  195. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  196. package/lib/cjs/components-react/editors/ToggleEditor.scss +25 -25
  197. package/lib/cjs/components-react/editors/variables.scss +6 -6
  198. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +12 -12
  199. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +46 -46
  200. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  201. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts +19 -19
  202. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +51 -51
  203. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  204. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +37 -37
  205. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +58 -58
  206. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  207. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +79 -79
  208. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +82 -82
  209. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  210. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +21 -21
  211. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +85 -85
  212. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  213. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +44 -44
  214. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +37 -37
  215. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +86 -86
  216. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  217. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +72 -72
  218. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +23 -23
  219. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +52 -52
  220. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  221. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +26 -26
  222. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +61 -61
  223. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  224. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +22 -22
  225. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +48 -48
  226. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  227. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +86 -86
  228. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +241 -241
  229. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  230. package/lib/cjs/components-react/filter-builder/Operators.d.ts +44 -44
  231. package/lib/cjs/components-react/filter-builder/Operators.js +130 -130
  232. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  233. package/lib/cjs/components-react/filter-builder/Types.d.ts +37 -37
  234. package/lib/cjs/components-react/filter-builder/Types.js +18 -18
  235. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  236. package/lib/cjs/components-react/filtering/FilteringInput.d.ts +76 -76
  237. package/lib/cjs/components-react/filtering/FilteringInput.js +139 -139
  238. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  239. package/lib/cjs/components-react/filtering/FilteringInput.scss +68 -68
  240. package/lib/cjs/components-react/filtering/ResultSelector.d.ts +48 -48
  241. package/lib/cjs/components-react/filtering/ResultSelector.js +121 -121
  242. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  243. package/lib/cjs/components-react/filtering/ResultSelector.scss +72 -72
  244. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +47 -47
  245. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +109 -109
  246. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  247. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +74 -74
  248. package/lib/cjs/components-react/inputs/ParsedInput.d.ts +28 -28
  249. package/lib/cjs/components-react/inputs/ParsedInput.js +110 -110
  250. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  251. package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
  252. package/lib/cjs/components-react/properties/ItemStyle.d.ts +48 -48
  253. package/lib/cjs/components-react/properties/ItemStyle.js +64 -64
  254. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  255. package/lib/cjs/components-react/properties/LinkHandler.d.ts +28 -28
  256. package/lib/cjs/components-react/properties/LinkHandler.js +104 -104
  257. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  258. package/lib/cjs/components-react/properties/ValueRendererManager.d.ts +89 -89
  259. package/lib/cjs/components-react/properties/ValueRendererManager.js +92 -92
  260. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  261. package/lib/cjs/components-react/properties/renderers/ActionButtonList.d.ts +29 -29
  262. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +56 -56
  263. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  264. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
  265. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +19 -19
  266. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js +9 -9
  267. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  268. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.d.ts +19 -19
  269. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +92 -92
  270. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  271. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +36 -36
  272. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +93 -93
  273. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  274. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +16 -16
  275. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +28 -28
  276. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +56 -56
  277. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  278. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.d.ts +29 -29
  279. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js +69 -69
  280. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  281. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts +97 -97
  282. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +108 -108
  283. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  284. package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts +36 -36
  285. package/lib/cjs/components-react/properties/renderers/PropertyView.js +101 -101
  286. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  287. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +104 -104
  288. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +23 -23
  289. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +55 -55
  290. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  291. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +21 -21
  292. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +43 -43
  293. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  294. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +22 -22
  295. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +50 -50
  296. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  297. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -87
  298. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +15 -15
  299. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +58 -58
  300. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  301. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +15 -15
  302. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +55 -55
  303. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  304. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +15 -15
  305. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +27 -27
  306. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  307. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +22 -22
  308. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +95 -95
  309. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  310. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +15 -15
  311. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +55 -55
  312. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  313. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +44 -44
  314. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +88 -88
  315. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  316. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +15 -15
  317. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +55 -55
  318. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  319. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +18 -18
  320. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +66 -66
  321. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  322. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +9 -9
  323. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +39 -39
  324. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  325. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +14 -14
  326. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +50 -50
  327. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  328. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +45 -45
  329. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +88 -88
  330. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  331. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +10 -10
  332. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +14 -14
  333. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +48 -48
  334. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  335. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +38 -38
  336. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +43 -43
  337. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  338. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +55 -55
  339. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js +17 -17
  340. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  341. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts +24 -24
  342. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +69 -69
  343. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  344. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +45 -45
  345. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +98 -98
  346. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  347. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +17 -17
  348. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +49 -49
  349. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  350. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +30 -30
  351. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +60 -60
  352. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  353. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +70 -70
  354. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +185 -185
  355. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  356. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +72 -72
  357. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +86 -86
  358. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +55 -55
  359. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  360. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +43 -43
  361. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +121 -121
  362. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  363. package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts +64 -64
  364. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +68 -68
  365. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  366. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +118 -118
  367. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +267 -267
  368. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  369. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +102 -102
  370. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +24 -24
  371. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +33 -33
  372. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  373. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +41 -41
  374. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +184 -184
  375. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  376. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts +28 -28
  377. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +73 -73
  378. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  379. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts +17 -17
  380. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +51 -51
  381. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  382. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts +17 -17
  383. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +48 -48
  384. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  385. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts +17 -17
  386. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +48 -48
  387. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  388. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts +89 -89
  389. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +60 -60
  390. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  391. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +24 -24
  392. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +27 -27
  393. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  394. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +38 -38
  395. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +74 -74
  396. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  397. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +65 -65
  398. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +79 -79
  399. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  400. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +15 -15
  401. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +18 -18
  402. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  403. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +36 -36
  404. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +65 -65
  405. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  406. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +55 -55
  407. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js +6 -6
  408. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  409. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +20 -20
  410. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +46 -46
  411. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  412. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +14 -14
  413. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +24 -24
  414. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  415. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +20 -20
  416. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +44 -44
  417. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  418. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +23 -23
  419. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +55 -55
  420. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  421. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +171 -171
  422. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +218 -218
  423. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  424. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +49 -49
  425. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +87 -87
  426. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  427. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +47 -47
  428. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +72 -72
  429. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  430. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +24 -24
  431. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +68 -68
  432. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  433. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +40 -40
  434. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +82 -82
  435. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  436. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +48 -48
  437. package/lib/cjs/components-react/selectable-content/SelectableContent.js +72 -72
  438. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  439. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +21 -21
  440. package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts +57 -57
  441. package/lib/cjs/components-react/table/SimpleTableDataProvider.js +254 -254
  442. package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +1 -1
  443. package/lib/cjs/components-react/table/TableDataProvider.d.ts +165 -165
  444. package/lib/cjs/components-react/table/TableDataProvider.js +32 -32
  445. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  446. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts +241 -241
  447. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js +114 -114
  448. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  449. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.scss +78 -78
  450. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts +13 -13
  451. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js +36 -36
  452. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
  453. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.d.ts +87 -87
  454. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js +192 -192
  455. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js.map +1 -1
  456. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.d.ts +57 -57
  457. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js +103 -103
  458. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
  459. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts +56 -56
  460. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +363 -363
  461. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
  462. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.d.ts +85 -85
  463. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js +403 -403
  464. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
  465. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts +28 -28
  466. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +87 -87
  467. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
  468. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts +28 -28
  469. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js +74 -74
  470. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +1 -1
  471. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts +4 -4
  472. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js +22 -22
  473. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +1 -1
  474. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts +21 -21
  475. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +87 -87
  476. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +1 -1
  477. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts +4 -4
  478. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js +22 -22
  479. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +1 -1
  480. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts +18 -18
  481. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +183 -183
  482. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +1 -1
  483. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +35 -35
  484. package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts +14 -14
  485. package/lib/cjs/components-react/table/component/ColumnDragLayer.js +65 -65
  486. package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +1 -1
  487. package/lib/cjs/components-react/table/component/DragDropHeaderCell.d.ts +26 -26
  488. package/lib/cjs/components-react/table/component/DragDropHeaderCell.js +101 -101
  489. package/lib/cjs/components-react/table/component/DragDropHeaderCell.js.map +1 -1
  490. package/lib/cjs/components-react/table/component/Table.d.ts +307 -307
  491. package/lib/cjs/components-react/table/component/Table.js +1334 -1334
  492. package/lib/cjs/components-react/table/component/Table.js.map +1 -1
  493. package/lib/cjs/components-react/table/component/Table.scss +200 -200
  494. package/lib/cjs/components-react/table/component/TableCell.d.ts +100 -100
  495. package/lib/cjs/components-react/table/component/TableCell.js +136 -136
  496. package/lib/cjs/components-react/table/component/TableCell.js.map +1 -1
  497. package/lib/cjs/components-react/table/component/TableCell.scss +48 -48
  498. package/lib/cjs/components-react/table/component/TableColumn.d.ts +30 -30
  499. package/lib/cjs/components-react/table/component/TableColumn.js +32 -32
  500. package/lib/cjs/components-react/table/component/TableColumn.js.map +1 -1
  501. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.d.ts +12 -12
  502. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js +41 -41
  503. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  504. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.d.ts +154 -154
  505. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js +32 -32
  506. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  507. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.d.ts +41 -41
  508. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js +188 -188
  509. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  510. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.d.ts +35 -35
  511. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js +149 -149
  512. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  513. package/lib/cjs/components-react/toolbar/Item.d.ts +37 -37
  514. package/lib/cjs/components-react/toolbar/Item.js +46 -46
  515. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  516. package/lib/cjs/components-react/toolbar/Item.scss +122 -122
  517. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts +19 -19
  518. package/lib/cjs/components-react/toolbar/ItemWrapper.js +59 -59
  519. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  520. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
  521. package/lib/cjs/components-react/toolbar/Items.d.ts +20 -20
  522. package/lib/cjs/components-react/toolbar/Items.js +76 -76
  523. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  524. package/lib/cjs/components-react/toolbar/Items.scss +94 -94
  525. package/lib/cjs/components-react/toolbar/Overflow.d.ts +31 -31
  526. package/lib/cjs/components-react/toolbar/Overflow.js +72 -72
  527. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  528. package/lib/cjs/components-react/toolbar/Overflow.scss +57 -57
  529. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts +17 -17
  530. package/lib/cjs/components-react/toolbar/OverflowPanel.js +68 -68
  531. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  532. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
  533. package/lib/cjs/components-react/toolbar/PopupItem.d.ts +50 -50
  534. package/lib/cjs/components-react/toolbar/PopupItem.js +105 -105
  535. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  536. package/lib/cjs/components-react/toolbar/PopupItem.scss +86 -86
  537. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts +22 -22
  538. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +171 -171
  539. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  540. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts +14 -14
  541. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +142 -142
  542. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  543. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +32 -32
  544. package/lib/cjs/components-react/toolbar/Toolbar.js +94 -94
  545. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  546. package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
  547. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +150 -150
  548. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +481 -481
  549. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  550. package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
  551. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.d.ts +19 -19
  552. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +48 -48
  553. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  554. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  555. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts +17 -17
  556. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +43 -43
  557. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  558. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
  559. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts +17 -17
  560. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +43 -43
  561. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  562. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
  563. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts +18 -18
  564. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +45 -45
  565. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  566. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +17 -17
  567. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts +17 -17
  568. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +43 -43
  569. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  570. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +34 -34
  571. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
  572. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.d.ts +16 -16
  573. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +46 -46
  574. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  575. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  576. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts +38 -38
  577. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +62 -62
  578. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  579. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +146 -146
  580. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  581. package/lib/cjs/components-react/toolbar/useDragInteraction.d.ts +14 -14
  582. package/lib/cjs/components-react/toolbar/useDragInteraction.js +125 -125
  583. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  584. package/lib/cjs/components-react/toolbar/utilities/Direction.d.ts +49 -49
  585. package/lib/cjs/components-react/toolbar/utilities/Direction.js +94 -94
  586. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  587. package/lib/cjs/components-react/tree/HighlightingEngine.d.ts +51 -51
  588. package/lib/cjs/components-react/tree/HighlightingEngine.js +61 -61
  589. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  590. package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
  591. package/lib/cjs/components-react/tree/ImageLoader.d.ts +18 -18
  592. package/lib/cjs/components-react/tree/ImageLoader.js +25 -25
  593. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  594. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +25 -25
  595. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js +41 -41
  596. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  597. package/lib/cjs/components-react/tree/TreeComponentTestId.d.ts +15 -15
  598. package/lib/cjs/components-react/tree/TreeComponentTestId.js +23 -23
  599. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  600. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +118 -118
  601. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  602. package/lib/cjs/components-react/tree/TreeDataProvider.js +55 -55
  603. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  604. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +87 -87
  605. package/lib/cjs/components-react/tree/controlled/Observable.js +25 -25
  606. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  607. package/lib/cjs/components-react/tree/controlled/TreeActions.d.ts +20 -20
  608. package/lib/cjs/components-react/tree/controlled/TreeActions.js +9 -9
  609. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  610. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts +38 -38
  611. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +224 -224
  612. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  613. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts +61 -61
  614. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js +84 -84
  615. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  616. package/lib/cjs/components-react/tree/controlled/TreeEvents.d.ts +108 -108
  617. package/lib/cjs/components-react/tree/controlled/TreeEvents.js +9 -9
  618. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  619. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts +47 -47
  620. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +82 -82
  621. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  622. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +229 -229
  623. package/lib/cjs/components-react/tree/controlled/TreeModel.js +336 -336
  624. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  625. package/lib/cjs/components-react/tree/controlled/TreeModelSource.d.ts +33 -33
  626. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js +68 -68
  627. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  628. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts +155 -155
  629. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +328 -328
  630. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  631. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +57 -57
  632. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +107 -107
  633. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  634. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  635. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts +25 -25
  636. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +89 -89
  637. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  638. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +28 -28
  639. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +31 -31
  640. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +57 -57
  641. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  642. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +42 -42
  643. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +63 -63
  644. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  645. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +72 -72
  646. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +252 -252
  647. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  648. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.d.ts +71 -71
  649. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +244 -244
  650. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  651. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.d.ts +30 -30
  652. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +126 -126
  653. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  654. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +51 -51
  655. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +253 -253
  656. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  657. package/lib/cjs/components-react.d.ts +213 -213
  658. package/lib/cjs/components-react.js +232 -232
  659. package/lib/cjs/components-react.js.map +1 -1
  660. package/lib/esm/components-react/UiComponents.d.ts +35 -35
  661. package/lib/esm/components-react/UiComponents.js +75 -75
  662. package/lib/esm/components-react/UiComponents.js.map +1 -1
  663. package/lib/esm/components-react/_target.scss +9 -9
  664. package/lib/esm/components-react/breadcrumb/BeInspireTree.d.ts +262 -262
  665. package/lib/esm/components-react/breadcrumb/BeInspireTree.js +891 -891
  666. package/lib/esm/components-react/breadcrumb/BeInspireTree.js.map +1 -1
  667. package/lib/esm/components-react/breadcrumb/Breadcrumb.d.ts +197 -197
  668. package/lib/esm/components-react/breadcrumb/Breadcrumb.js +622 -622
  669. package/lib/esm/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  670. package/lib/esm/components-react/breadcrumb/Breadcrumb.scss +196 -196
  671. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.d.ts +65 -65
  672. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js +205 -205
  673. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  674. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.d.ts +35 -35
  675. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js +41 -41
  676. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  677. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +29 -29
  678. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js +130 -130
  679. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  680. package/lib/esm/components-react/common/DateUtils.d.ts +58 -58
  681. package/lib/esm/components-react/common/DateUtils.js +68 -68
  682. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  683. package/lib/esm/components-react/common/DelayedSpinner.d.ts +22 -22
  684. package/lib/esm/components-react/common/DelayedSpinner.js +34 -34
  685. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  686. package/lib/esm/components-react/common/HighlightedText.d.ts +22 -22
  687. package/lib/esm/components-react/common/HighlightedText.js +31 -31
  688. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  689. package/lib/esm/components-react/common/HighlightingComponentProps.d.ts +19 -19
  690. package/lib/esm/components-react/common/HighlightingComponentProps.js +8 -8
  691. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  692. package/lib/esm/components-react/common/IImageLoader.d.ts +41 -41
  693. package/lib/esm/components-react/common/IImageLoader.js +8 -8
  694. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  695. package/lib/esm/components-react/common/ImageRenderer.d.ts +36 -36
  696. package/lib/esm/components-react/common/ImageRenderer.js +118 -118
  697. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  698. package/lib/esm/components-react/common/Links.d.ts +12 -12
  699. package/lib/esm/components-react/common/Links.js +64 -64
  700. package/lib/esm/components-react/common/Links.js.map +1 -1
  701. package/lib/esm/components-react/common/PageOptions.d.ts +10 -10
  702. package/lib/esm/components-react/common/PageOptions.js +8 -8
  703. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  704. package/lib/esm/components-react/common/SubscriptionScheduler.d.ts +32 -32
  705. package/lib/esm/components-react/common/SubscriptionScheduler.js +73 -73
  706. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  707. package/lib/esm/components-react/common/UseAsyncValue.d.ts +8 -8
  708. package/lib/esm/components-react/common/UseAsyncValue.js +41 -41
  709. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  710. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts +7 -7
  711. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +20 -20
  712. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  713. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +15 -15
  714. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +44 -44
  715. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  716. package/lib/esm/components-react/common/UseRerender.d.ts +21 -21
  717. package/lib/esm/components-react/common/UseRerender.js +27 -27
  718. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  719. package/lib/esm/components-react/common/countMatchesInString.d.ts +7 -7
  720. package/lib/esm/components-react/common/countMatchesInString.js +27 -27
  721. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  722. package/lib/esm/components-react/common/selection/SelectionHandler.d.ts +122 -122
  723. package/lib/esm/components-react/common/selection/SelectionHandler.js +215 -215
  724. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  725. package/lib/esm/components-react/common/selection/SelectionModes.d.ts +32 -32
  726. package/lib/esm/components-react/common/selection/SelectionModes.js +40 -40
  727. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  728. package/lib/esm/components-react/common/showhide/ShowHideDialog.d.ts +38 -38
  729. package/lib/esm/components-react/common/showhide/ShowHideDialog.js +67 -67
  730. package/lib/esm/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  731. package/lib/esm/components-react/common/showhide/ShowHideItem.d.ts +14 -14
  732. package/lib/esm/components-react/common/showhide/ShowHideItem.js +8 -8
  733. package/lib/esm/components-react/common/showhide/ShowHideItem.js.map +1 -1
  734. package/lib/esm/components-react/common/showhide/ShowHideMenu.d.ts +53 -53
  735. package/lib/esm/components-react/common/showhide/ShowHideMenu.js +100 -100
  736. package/lib/esm/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  737. package/lib/esm/components-react/converters/BooleanTypeConverter.d.ts +20 -20
  738. package/lib/esm/components-react/converters/BooleanTypeConverter.js +50 -50
  739. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  740. package/lib/esm/components-react/converters/CompositeTypeConverter.d.ts +13 -13
  741. package/lib/esm/components-react/converters/CompositeTypeConverter.js +59 -59
  742. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  743. package/lib/esm/components-react/converters/DateTimeTypeConverter.d.ts +48 -48
  744. package/lib/esm/components-react/converters/DateTimeTypeConverter.js +177 -177
  745. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  746. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts +15 -15
  747. package/lib/esm/components-react/converters/EnumTypeConverter.js +51 -51
  748. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  749. package/lib/esm/components-react/converters/HexadecimalTypeConverter.d.ts +13 -13
  750. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +43 -43
  751. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  752. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.d.ts +14 -14
  753. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js +26 -26
  754. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  755. package/lib/esm/components-react/converters/NumericTypeConverter.d.ts +35 -35
  756. package/lib/esm/components-react/converters/NumericTypeConverter.js +107 -107
  757. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  758. package/lib/esm/components-react/converters/PointTypeConverter.d.ts +38 -38
  759. package/lib/esm/components-react/converters/PointTypeConverter.js +110 -110
  760. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  761. package/lib/esm/components-react/converters/StringTypeConverter.d.ts +45 -45
  762. package/lib/esm/components-react/converters/StringTypeConverter.js +87 -87
  763. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  764. package/lib/esm/components-react/converters/TypeConverter.d.ts +83 -83
  765. package/lib/esm/components-react/converters/TypeConverter.js +73 -73
  766. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  767. package/lib/esm/components-react/converters/TypeConverterManager.d.ts +16 -16
  768. package/lib/esm/components-react/converters/TypeConverterManager.js +45 -45
  769. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  770. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.d.ts +30 -30
  771. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js +8 -8
  772. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  773. package/lib/esm/components-react/datepicker/DateField.d.ts +32 -32
  774. package/lib/esm/components-react/datepicker/DateField.js +129 -129
  775. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  776. package/lib/esm/components-react/datepicker/DateField.scss +22 -22
  777. package/lib/esm/components-react/datepicker/DatePicker.d.ts +21 -21
  778. package/lib/esm/components-react/datepicker/DatePicker.js +174 -174
  779. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  780. package/lib/esm/components-react/datepicker/DatePicker.scss +170 -170
  781. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts +29 -29
  782. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +75 -75
  783. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  784. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  785. package/lib/esm/components-react/datepicker/IntlFormatter.d.ts +18 -18
  786. package/lib/esm/components-react/datepicker/IntlFormatter.js +40 -40
  787. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  788. package/lib/esm/components-react/datepicker/TimeField.d.ts +29 -29
  789. package/lib/esm/components-react/datepicker/TimeField.js +225 -225
  790. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  791. package/lib/esm/components-react/datepicker/TimeField.scss +73 -73
  792. package/lib/esm/components-react/editors/BooleanEditor.d.ts +44 -44
  793. package/lib/esm/components-react/editors/BooleanEditor.js +126 -126
  794. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  795. package/lib/esm/components-react/editors/BooleanEditor.scss +24 -24
  796. package/lib/esm/components-react/editors/CustomNumberEditor.d.ts +54 -54
  797. package/lib/esm/components-react/editors/CustomNumberEditor.js +268 -268
  798. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  799. package/lib/esm/components-react/editors/CustomNumberEditor.scss +21 -21
  800. package/lib/esm/components-react/editors/DateTimeEditor.d.ts +69 -69
  801. package/lib/esm/components-react/editors/DateTimeEditor.js +274 -274
  802. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  803. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
  804. package/lib/esm/components-react/editors/EditorContainer.d.ts +82 -82
  805. package/lib/esm/components-react/editors/EditorContainer.js +159 -159
  806. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  807. package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
  808. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +43 -43
  809. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +152 -152
  810. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  811. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +182 -182
  812. package/lib/esm/components-react/editors/EnumEditor.d.ts +49 -49
  813. package/lib/esm/components-react/editors/EnumEditor.js +161 -161
  814. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  815. package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
  816. package/lib/esm/components-react/editors/IconEditor.d.ts +47 -47
  817. package/lib/esm/components-react/editors/IconEditor.js +138 -138
  818. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  819. package/lib/esm/components-react/editors/IconEditor.scss +16 -16
  820. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts +47 -47
  821. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js +120 -120
  822. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  823. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +23 -23
  824. package/lib/esm/components-react/editors/NumericInputEditor.d.ts +52 -52
  825. package/lib/esm/components-react/editors/NumericInputEditor.js +144 -144
  826. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  827. package/lib/esm/components-react/editors/NumericInputEditor.scss +17 -17
  828. package/lib/esm/components-react/editors/PopupButton.d.ts +72 -72
  829. package/lib/esm/components-react/editors/PopupButton.js +85 -85
  830. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  831. package/lib/esm/components-react/editors/PopupButton.scss +119 -119
  832. package/lib/esm/components-react/editors/PropertyEditorManager.d.ts +72 -72
  833. package/lib/esm/components-react/editors/PropertyEditorManager.js +121 -121
  834. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  835. package/lib/esm/components-react/editors/SliderEditor.d.ts +63 -63
  836. package/lib/esm/components-react/editors/SliderEditor.js +221 -221
  837. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  838. package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
  839. package/lib/esm/components-react/editors/TextEditor.d.ts +40 -40
  840. package/lib/esm/components-react/editors/TextEditor.js +133 -133
  841. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  842. package/lib/esm/components-react/editors/TextEditor.scss +21 -21
  843. package/lib/esm/components-react/editors/TextareaEditor.d.ts +53 -53
  844. package/lib/esm/components-react/editors/TextareaEditor.js +175 -175
  845. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  846. package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
  847. package/lib/esm/components-react/editors/ThemedEnumEditor.d.ts +62 -62
  848. package/lib/esm/components-react/editors/ThemedEnumEditor.js +179 -179
  849. package/lib/esm/components-react/editors/ThemedEnumEditor.js.map +1 -1
  850. package/lib/esm/components-react/editors/ThemedEnumEditor.scss +82 -82
  851. package/lib/esm/components-react/editors/ToggleEditor.d.ts +44 -44
  852. package/lib/esm/components-react/editors/ToggleEditor.js +129 -129
  853. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  854. package/lib/esm/components-react/editors/ToggleEditor.scss +25 -25
  855. package/lib/esm/components-react/editors/variables.scss +6 -6
  856. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +12 -12
  857. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +23 -23
  858. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  859. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts +19 -19
  860. package/lib/esm/components-react/favorite/FavoritePropertyList.js +28 -28
  861. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  862. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +37 -37
  863. package/lib/esm/components-react/filter-builder/FilterBuilder.js +35 -35
  864. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  865. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +79 -79
  866. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +59 -59
  867. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  868. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +21 -21
  869. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +62 -62
  870. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  871. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +44 -44
  872. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +37 -37
  873. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +62 -62
  874. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  875. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +72 -72
  876. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +23 -23
  877. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +29 -29
  878. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  879. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +26 -26
  880. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +38 -38
  881. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  882. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +22 -22
  883. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +25 -25
  884. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  885. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +86 -86
  886. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +215 -215
  887. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  888. package/lib/esm/components-react/filter-builder/Operators.d.ts +44 -44
  889. package/lib/esm/components-react/filter-builder/Operators.js +124 -124
  890. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  891. package/lib/esm/components-react/filter-builder/Types.d.ts +37 -37
  892. package/lib/esm/components-react/filter-builder/Types.js +14 -14
  893. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  894. package/lib/esm/components-react/filtering/FilteringInput.d.ts +76 -76
  895. package/lib/esm/components-react/filtering/FilteringInput.js +113 -113
  896. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  897. package/lib/esm/components-react/filtering/FilteringInput.scss +68 -68
  898. package/lib/esm/components-react/filtering/ResultSelector.d.ts +48 -48
  899. package/lib/esm/components-react/filtering/ResultSelector.js +95 -95
  900. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  901. package/lib/esm/components-react/filtering/ResultSelector.scss +72 -72
  902. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +47 -47
  903. package/lib/esm/components-react/iconpicker/IconPickerButton.js +83 -83
  904. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  905. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +74 -74
  906. package/lib/esm/components-react/inputs/ParsedInput.d.ts +28 -28
  907. package/lib/esm/components-react/inputs/ParsedInput.js +85 -85
  908. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  909. package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
  910. package/lib/esm/components-react/properties/ItemStyle.d.ts +48 -48
  911. package/lib/esm/components-react/properties/ItemStyle.js +61 -61
  912. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  913. package/lib/esm/components-react/properties/LinkHandler.d.ts +28 -28
  914. package/lib/esm/components-react/properties/LinkHandler.js +79 -79
  915. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  916. package/lib/esm/components-react/properties/ValueRendererManager.d.ts +89 -89
  917. package/lib/esm/components-react/properties/ValueRendererManager.js +88 -88
  918. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  919. package/lib/esm/components-react/properties/renderers/ActionButtonList.d.ts +29 -29
  920. package/lib/esm/components-react/properties/renderers/ActionButtonList.js +33 -33
  921. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  922. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
  923. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +19 -19
  924. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js +8 -8
  925. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  926. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.d.ts +19 -19
  927. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +69 -69
  928. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  929. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +36 -36
  930. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +70 -70
  931. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  932. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +16 -16
  933. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +28 -28
  934. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +33 -33
  935. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  936. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.d.ts +29 -29
  937. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js +65 -65
  938. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  939. package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts +97 -97
  940. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +85 -85
  941. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  942. package/lib/esm/components-react/properties/renderers/PropertyView.d.ts +36 -36
  943. package/lib/esm/components-react/properties/renderers/PropertyView.js +78 -78
  944. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  945. package/lib/esm/components-react/properties/renderers/PropertyView.scss +104 -104
  946. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +23 -23
  947. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +32 -32
  948. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  949. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +21 -21
  950. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +20 -20
  951. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  952. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +22 -22
  953. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +27 -27
  954. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  955. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -87
  956. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts +15 -15
  957. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +35 -35
  958. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  959. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +15 -15
  960. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +32 -32
  961. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  962. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts +15 -15
  963. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +23 -23
  964. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  965. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +22 -22
  966. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +71 -71
  967. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  968. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +15 -15
  969. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +32 -32
  970. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  971. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +44 -44
  972. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +62 -62
  973. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  974. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts +15 -15
  975. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js +32 -32
  976. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  977. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +18 -18
  978. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +43 -43
  979. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  980. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +9 -9
  981. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js +16 -16
  982. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  983. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +14 -14
  984. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js +27 -27
  985. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  986. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +45 -45
  987. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +65 -65
  988. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  989. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +10 -10
  990. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +14 -14
  991. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js +25 -25
  992. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  993. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +38 -38
  994. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +39 -39
  995. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  996. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +55 -55
  997. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js +13 -13
  998. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  999. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts +24 -24
  1000. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +65 -65
  1001. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  1002. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +45 -45
  1003. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +75 -75
  1004. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  1005. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +17 -17
  1006. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +23 -23
  1007. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  1008. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +30 -30
  1009. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +37 -37
  1010. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  1011. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +70 -70
  1012. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +159 -159
  1013. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  1014. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +72 -72
  1015. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +86 -86
  1016. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +51 -51
  1017. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  1018. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +43 -43
  1019. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +98 -98
  1020. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  1021. package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts +64 -64
  1022. package/lib/esm/components-react/propertygrid/component/PropertyList.js +41 -41
  1023. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  1024. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +118 -118
  1025. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +241 -241
  1026. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  1027. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +102 -102
  1028. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +24 -24
  1029. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +26 -26
  1030. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  1031. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +41 -41
  1032. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +180 -180
  1033. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  1034. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts +28 -28
  1035. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +69 -69
  1036. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  1037. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts +17 -17
  1038. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +47 -47
  1039. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  1040. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts +17 -17
  1041. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +44 -44
  1042. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  1043. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts +17 -17
  1044. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +44 -44
  1045. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  1046. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts +89 -89
  1047. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +53 -53
  1048. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  1049. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +24 -24
  1050. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +23 -23
  1051. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  1052. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +38 -38
  1053. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +67 -67
  1054. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  1055. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +65 -65
  1056. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +75 -75
  1057. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  1058. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +15 -15
  1059. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +14 -14
  1060. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  1061. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +36 -36
  1062. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +61 -61
  1063. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  1064. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +55 -55
  1065. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js +5 -5
  1066. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  1067. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +20 -20
  1068. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +42 -42
  1069. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  1070. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +14 -14
  1071. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +20 -20
  1072. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  1073. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +20 -20
  1074. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +40 -40
  1075. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  1076. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +23 -23
  1077. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +51 -51
  1078. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  1079. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +171 -171
  1080. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +210 -210
  1081. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  1082. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +49 -49
  1083. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +83 -83
  1084. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  1085. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +47 -47
  1086. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +68 -68
  1087. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  1088. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +24 -24
  1089. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +45 -45
  1090. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  1091. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +40 -40
  1092. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +59 -59
  1093. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  1094. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +48 -48
  1095. package/lib/esm/components-react/selectable-content/SelectableContent.js +48 -48
  1096. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  1097. package/lib/esm/components-react/selectable-content/SelectableContent.scss +21 -21
  1098. package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts +57 -57
  1099. package/lib/esm/components-react/table/SimpleTableDataProvider.js +250 -250
  1100. package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +1 -1
  1101. package/lib/esm/components-react/table/TableDataProvider.d.ts +165 -165
  1102. package/lib/esm/components-react/table/TableDataProvider.js +28 -28
  1103. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  1104. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts +241 -241
  1105. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js +107 -107
  1106. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  1107. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.scss +78 -78
  1108. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts +13 -13
  1109. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js +32 -32
  1110. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
  1111. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.d.ts +87 -87
  1112. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js +188 -188
  1113. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js.map +1 -1
  1114. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.d.ts +57 -57
  1115. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js +99 -99
  1116. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
  1117. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts +56 -56
  1118. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +359 -359
  1119. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
  1120. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.d.ts +85 -85
  1121. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js +399 -399
  1122. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
  1123. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts +28 -28
  1124. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +83 -83
  1125. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
  1126. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts +28 -28
  1127. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js +48 -48
  1128. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +1 -1
  1129. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts +4 -4
  1130. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js +15 -15
  1131. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +1 -1
  1132. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts +21 -21
  1133. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +80 -80
  1134. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +1 -1
  1135. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts +4 -4
  1136. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js +15 -15
  1137. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +1 -1
  1138. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts +18 -18
  1139. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +176 -176
  1140. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +1 -1
  1141. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +35 -35
  1142. package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts +14 -14
  1143. package/lib/esm/components-react/table/component/ColumnDragLayer.js +39 -39
  1144. package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +1 -1
  1145. package/lib/esm/components-react/table/component/DragDropHeaderCell.d.ts +26 -26
  1146. package/lib/esm/components-react/table/component/DragDropHeaderCell.js +75 -75
  1147. package/lib/esm/components-react/table/component/DragDropHeaderCell.js.map +1 -1
  1148. package/lib/esm/components-react/table/component/Table.d.ts +307 -307
  1149. package/lib/esm/components-react/table/component/Table.js +1307 -1307
  1150. package/lib/esm/components-react/table/component/Table.js.map +1 -1
  1151. package/lib/esm/components-react/table/component/Table.scss +200 -200
  1152. package/lib/esm/components-react/table/component/TableCell.d.ts +100 -100
  1153. package/lib/esm/components-react/table/component/TableCell.js +108 -108
  1154. package/lib/esm/components-react/table/component/TableCell.js.map +1 -1
  1155. package/lib/esm/components-react/table/component/TableCell.scss +48 -48
  1156. package/lib/esm/components-react/table/component/TableColumn.d.ts +30 -30
  1157. package/lib/esm/components-react/table/component/TableColumn.js +28 -28
  1158. package/lib/esm/components-react/table/component/TableColumn.js.map +1 -1
  1159. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.d.ts +12 -12
  1160. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js +18 -18
  1161. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  1162. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.d.ts +154 -154
  1163. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js +29 -29
  1164. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  1165. package/lib/esm/components-react/table/component/dragdrop/withDragSource.d.ts +41 -41
  1166. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js +165 -165
  1167. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  1168. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.d.ts +35 -35
  1169. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js +126 -126
  1170. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  1171. package/lib/esm/components-react/toolbar/Item.d.ts +37 -37
  1172. package/lib/esm/components-react/toolbar/Item.js +21 -21
  1173. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  1174. package/lib/esm/components-react/toolbar/Item.scss +122 -122
  1175. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts +19 -19
  1176. package/lib/esm/components-react/toolbar/ItemWrapper.js +32 -32
  1177. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  1178. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
  1179. package/lib/esm/components-react/toolbar/Items.d.ts +20 -20
  1180. package/lib/esm/components-react/toolbar/Items.js +50 -50
  1181. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  1182. package/lib/esm/components-react/toolbar/Items.scss +94 -94
  1183. package/lib/esm/components-react/toolbar/Overflow.d.ts +31 -31
  1184. package/lib/esm/components-react/toolbar/Overflow.js +45 -45
  1185. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  1186. package/lib/esm/components-react/toolbar/Overflow.scss +57 -57
  1187. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts +17 -17
  1188. package/lib/esm/components-react/toolbar/OverflowPanel.js +42 -42
  1189. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  1190. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
  1191. package/lib/esm/components-react/toolbar/PopupItem.d.ts +50 -50
  1192. package/lib/esm/components-react/toolbar/PopupItem.js +77 -77
  1193. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  1194. package/lib/esm/components-react/toolbar/PopupItem.scss +86 -86
  1195. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts +22 -22
  1196. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +144 -144
  1197. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  1198. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts +14 -14
  1199. package/lib/esm/components-react/toolbar/PopupItemsPanel.js +116 -116
  1200. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  1201. package/lib/esm/components-react/toolbar/Toolbar.d.ts +32 -32
  1202. package/lib/esm/components-react/toolbar/Toolbar.js +68 -68
  1203. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  1204. package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
  1205. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +150 -150
  1206. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +445 -445
  1207. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  1208. package/lib/esm/components-react/toolbar/_variables.scss +34 -34
  1209. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.d.ts +19 -19
  1210. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js +23 -23
  1211. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  1212. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  1213. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts +17 -17
  1214. package/lib/esm/components-react/toolbar/groupPanel/Column.js +17 -17
  1215. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  1216. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
  1217. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts +17 -17
  1218. package/lib/esm/components-react/toolbar/groupPanel/Columns.js +17 -17
  1219. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  1220. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
  1221. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts +18 -18
  1222. package/lib/esm/components-react/toolbar/groupPanel/Panel.js +19 -19
  1223. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  1224. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +17 -17
  1225. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts +17 -17
  1226. package/lib/esm/components-react/toolbar/groupPanel/Title.js +17 -17
  1227. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  1228. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +34 -34
  1229. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
  1230. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.d.ts +16 -16
  1231. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js +21 -21
  1232. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  1233. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  1234. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts +38 -38
  1235. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js +36 -36
  1236. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  1237. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +146 -146
  1238. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  1239. package/lib/esm/components-react/toolbar/useDragInteraction.d.ts +14 -14
  1240. package/lib/esm/components-react/toolbar/useDragInteraction.js +102 -102
  1241. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  1242. package/lib/esm/components-react/toolbar/utilities/Direction.d.ts +49 -49
  1243. package/lib/esm/components-react/toolbar/utilities/Direction.js +89 -89
  1244. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  1245. package/lib/esm/components-react/tree/HighlightingEngine.d.ts +51 -51
  1246. package/lib/esm/components-react/tree/HighlightingEngine.js +38 -38
  1247. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  1248. package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
  1249. package/lib/esm/components-react/tree/ImageLoader.d.ts +18 -18
  1250. package/lib/esm/components-react/tree/ImageLoader.js +21 -21
  1251. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  1252. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +25 -25
  1253. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js +37 -37
  1254. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  1255. package/lib/esm/components-react/tree/TreeComponentTestId.d.ts +15 -15
  1256. package/lib/esm/components-react/tree/TreeComponentTestId.js +20 -20
  1257. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  1258. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +118 -118
  1259. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  1260. package/lib/esm/components-react/tree/TreeDataProvider.js +47 -47
  1261. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  1262. package/lib/esm/components-react/tree/controlled/Observable.d.ts +87 -87
  1263. package/lib/esm/components-react/tree/controlled/Observable.js +20 -20
  1264. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  1265. package/lib/esm/components-react/tree/controlled/TreeActions.d.ts +20 -20
  1266. package/lib/esm/components-react/tree/controlled/TreeActions.js +8 -8
  1267. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  1268. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts +38 -38
  1269. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +220 -220
  1270. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  1271. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts +61 -61
  1272. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js +80 -80
  1273. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  1274. package/lib/esm/components-react/tree/controlled/TreeEvents.d.ts +108 -108
  1275. package/lib/esm/components-react/tree/controlled/TreeEvents.js +8 -8
  1276. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  1277. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts +47 -47
  1278. package/lib/esm/components-react/tree/controlled/TreeHooks.js +74 -74
  1279. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  1280. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +229 -229
  1281. package/lib/esm/components-react/tree/controlled/TreeModel.js +324 -324
  1282. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  1283. package/lib/esm/components-react/tree/controlled/TreeModelSource.d.ts +33 -33
  1284. package/lib/esm/components-react/tree/controlled/TreeModelSource.js +64 -64
  1285. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  1286. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts +155 -155
  1287. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +319 -319
  1288. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  1289. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +57 -57
  1290. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +84 -84
  1291. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  1292. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  1293. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts +25 -25
  1294. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +63 -63
  1295. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  1296. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +28 -28
  1297. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +31 -31
  1298. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js +34 -34
  1299. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  1300. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +42 -42
  1301. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +41 -41
  1302. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  1303. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +72 -72
  1304. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +226 -226
  1305. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  1306. package/lib/esm/components-react/tree/controlled/internal/SparseTree.d.ts +71 -71
  1307. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +239 -239
  1308. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  1309. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.d.ts +30 -30
  1310. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +122 -122
  1311. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  1312. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +51 -51
  1313. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +248 -248
  1314. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  1315. package/lib/esm/components-react.d.ts +213 -213
  1316. package/lib/esm/components-react.js +218 -218
  1317. package/lib/esm/components-react.js.map +1 -1
  1318. package/lib/public/locales/en/UiComponents.json +139 -139
  1319. package/package.json +11 -11
@@ -1,1335 +1,1335 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /* eslint-disable deprecation/deprecation */
7
- /** @packageDocumentation
8
- * @module Table
9
- */
10
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
13
- }) : (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- o[k2] = m[k];
16
- }));
17
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
- Object.defineProperty(o, "default", { enumerable: true, value: v });
19
- }) : function(o, v) {
20
- o["default"] = v;
21
- });
22
- var __importStar = (this && this.__importStar) || function (mod) {
23
- if (mod && mod.__esModule) return mod;
24
- var result = {};
25
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
- __setModuleDefault(result, mod);
27
- return result;
28
- };
29
- var __importDefault = (this && this.__importDefault) || function (mod) {
30
- return (mod && mod.__esModule) ? mod : { "default": mod };
31
- };
32
- Object.defineProperty(exports, "__esModule", { value: true });
33
- exports.TableRow = exports.Table = exports.TableSelectionTarget = void 0;
34
- require("./Table.scss");
35
- require("../columnfiltering/ColumnFiltering.scss");
36
- const classnames_1 = __importDefault(require("classnames"));
37
- const dedupe_1 = __importDefault(require("classnames/dedupe"));
38
- const lodash_1 = require("lodash");
39
- const React = __importStar(require("react"));
40
- const react_data_grid_1 = __importDefault(require("react-data-grid"));
41
- const core_bentley_1 = require("@itwin/core-bentley");
42
- const appui_abstract_1 = require("@itwin/appui-abstract");
43
- const core_react_1 = require("@itwin/core-react");
44
- const SelectionHandler_1 = require("../../common/selection/SelectionHandler");
45
- const SelectionModes_1 = require("../../common/selection/SelectionModes");
46
- const ShowHideMenu_1 = require("../../common/showhide/ShowHideMenu");
47
- const TypeConverterManager_1 = require("../../converters/TypeConverterManager");
48
- const ItemStyle_1 = require("../../properties/ItemStyle");
49
- const ValueRendererManager_1 = require("../../properties/ValueRendererManager");
50
- const ColumnFiltering_1 = require("../columnfiltering/ColumnFiltering");
51
- const MultiSelectFilter_1 = require("../columnfiltering/data-grid-addons/MultiSelectFilter");
52
- const NumericFilter_1 = require("../columnfiltering/data-grid-addons/NumericFilter");
53
- const SingleSelectFilter_1 = require("../columnfiltering/data-grid-addons/SingleSelectFilter");
54
- const DataGridFilterParser_1 = require("../columnfiltering/DataGridFilterParser");
55
- const MultiValueFilter_1 = require("../columnfiltering/multi-value-filter/MultiValueFilter");
56
- const TableFilterDescriptorCollection_1 = require("../columnfiltering/TableFilterDescriptorCollection");
57
- const TableDataProvider_1 = require("../TableDataProvider");
58
- const DragDropHeaderCell_1 = require("./DragDropHeaderCell");
59
- const TableCell_1 = require("./TableCell");
60
- const TableColumn_1 = require("./TableColumn");
61
- // cspell:ignore Overscan columnfiltering Dedupe popout
62
- const TABLE_ROW_HEIGHT = 27;
63
- const TABLE_FILTER_ROW_HEIGHT = 32;
64
- /**
65
- * Specifies table selection target.
66
- * @deprecated in 3.0. Use the Table component in @itwin/itwinui-react instead, which does not use this enum.
67
- * @public
68
- */
69
- var TableSelectionTarget;
70
- (function (TableSelectionTarget) {
71
- TableSelectionTarget[TableSelectionTarget["Row"] = 0] = "Row";
72
- TableSelectionTarget[TableSelectionTarget["Cell"] = 1] = "Cell";
73
- })(TableSelectionTarget = exports.TableSelectionTarget || (exports.TableSelectionTarget = {}));
74
- /** Scroll Direction */
75
- var SCROLL_DIRECTION;
76
- (function (SCROLL_DIRECTION) {
77
- SCROLL_DIRECTION["UP"] = "upwards";
78
- SCROLL_DIRECTION["DOWN"] = "downwards";
79
- SCROLL_DIRECTION["LEFT"] = "left";
80
- SCROLL_DIRECTION["RIGHT"] = "right";
81
- SCROLL_DIRECTION["NONE"] = "none";
82
- })(SCROLL_DIRECTION || (SCROLL_DIRECTION = {}));
83
- const initialState = {
84
- columns: [],
85
- hiddenColumns: [],
86
- rows: [],
87
- rowsCount: 0,
88
- cellEditorState: { active: false },
89
- menuVisible: false,
90
- menuX: 0,
91
- menuY: 0,
92
- gridContainer: null,
93
- };
94
- /** ReactDataGrid requires a class component for the RowRenderer because it sets a ref to it. */
95
- class TableRowRenderer extends React.Component {
96
- render() {
97
- const creatorFn = this.props.rowRendererCreator();
98
- return creatorFn(this.props);
99
- }
100
- }
101
- /**
102
- * Table React component that displays rows and columns in a grid along with a header
103
- * @deprecated in 3.0. Use the Table component in @itwin/itwinui-react instead, which does not use this class.
104
- * @public
105
- */
106
- class Table extends React.Component {
107
- /** @internal */
108
- constructor(props) {
109
- super(props);
110
- this._pageAmount = 100;
111
- this._disposableListeners = new core_bentley_1.DisposableList();
112
- this._isMounted = false;
113
- this._currentUpdate = 0 /* None */;
114
- this._pendingUpdate = 0 /* None */;
115
- this._rowLoadGuid = core_bentley_1.Guid.createValue();
116
- this._selectedRowIndices = new Set();
117
- this._selectedCellKeys = new Map(); // column keys -> rowIndices
118
- this._pressedItemSelected = false;
119
- this._tableRef = React.createRef();
120
- this._gridRef = React.createRef();
121
- this._gridContainerRef = React.createRef();
122
- this._filterRowShown = false;
123
- this._topRowIndex = 0;
124
- this._pokeScrollTimer = new core_react_1.Timer(100);
125
- /** @internal */
126
- this.state = initialState;
127
- this._onRowsSelected = (rowIndices, replace) => {
128
- if (this.props.onRowsSelected)
129
- this.props.onRowsSelected(this.createRowIterator(rowIndices), replace); // eslint-disable-line @typescript-eslint/no-floating-promises
130
- };
131
- this._onRowsDeselected = (rowIndices) => {
132
- if (this.props.onRowsDeselected)
133
- this.props.onRowsDeselected(this.createRowIterator(rowIndices)); // eslint-disable-line @typescript-eslint/no-floating-promises
134
- };
135
- this._onCellsSelected = (cellKeys, replace) => {
136
- if (this.props.onCellsSelected)
137
- this.props.onCellsSelected(this.createCellIterator(cellKeys), replace); // eslint-disable-line @typescript-eslint/no-floating-promises
138
- };
139
- this._onCellsDeselected = (cellKeys) => {
140
- if (this.props.onCellsDeselected)
141
- this.props.onCellsDeselected(this.createCellIterator(cellKeys)); // eslint-disable-line @typescript-eslint/no-floating-promises
142
- };
143
- this._onColumnsChanged = async () => {
144
- await this.updateColumns();
145
- this._cellItemSelectionHandlers = undefined;
146
- };
147
- // Workaround for react-data-grid bug that shows blank grid when updating after grid has been scrolled.
148
- // Force a re-render by scrolling up 1 then down 1
149
- this._pokeScrollAfterUpdate = () => {
150
- // istanbul ignore else
151
- if (this._gridRef.current && this._topRowIndex !== 0) {
152
- const grid = this._gridRef.current;
153
- // istanbul ignore else
154
- if (grid.getRowOffsetHeight && grid.getDataGridDOMNode) {
155
- const gridCanvas = grid.getDataGridDOMNode().querySelector(".react-grid-Canvas");
156
- // Scroll up 1
157
- let top = TABLE_ROW_HEIGHT * this._topRowIndex - 1;
158
- gridCanvas.scrollTop = top;
159
- // Scroll back down
160
- top = TABLE_ROW_HEIGHT * this._topRowIndex;
161
- gridCanvas.scrollTop = top;
162
- }
163
- }
164
- };
165
- this._queuePokeScroll = () => {
166
- this._unsetPokeScrollTimeout();
167
- this._pokeScrollTimer.setOnExecute(() => { this._pokeScrollAfterUpdate(); });
168
- this._pokeScrollTimer.start();
169
- };
170
- this._unsetPokeScrollTimeout = () => {
171
- this._pokeScrollTimer.stop();
172
- };
173
- this._onRowsChanged = async () => {
174
- await this.updateRows();
175
- this._queuePokeScroll();
176
- };
177
- this._columnDescriptionToReactDataGridColumn = (columnDescription) => {
178
- const isEditable = !!columnDescription.editable;
179
- const column = {
180
- key: columnDescription.key,
181
- name: columnDescription.label,
182
- icon: columnDescription.icon,
183
- width: columnDescription.width,
184
- resizable: !!columnDescription.resizable,
185
- sortable: !!columnDescription.sortable,
186
- draggable: !!this.props.reorderableColumns,
187
- filterable: !!columnDescription.filterable,
188
- };
189
- column.events = {};
190
- if (this.props.onCellContextMenu) {
191
- column.events.onContextMenu = this.cellContextMenu.bind(this, column);
192
- }
193
- if (isEditable) {
194
- column.events.onClick = this.cellEditOnClick.bind(this, column);
195
- }
196
- if (columnDescription.filterRenderer !== undefined) {
197
- switch (columnDescription.filterRenderer) {
198
- case TableDataProvider_1.FilterRenderer.Numeric:
199
- column.filterRenderer = NumericFilter_1.NumericFilter;
200
- break;
201
- case TableDataProvider_1.FilterRenderer.MultiSelect:
202
- column.filterRenderer = MultiSelectFilter_1.MultiSelectFilter;
203
- break;
204
- case TableDataProvider_1.FilterRenderer.MultiValue:
205
- column.filterRenderer = MultiValueFilter_1.MultiValueFilter;
206
- break;
207
- case TableDataProvider_1.FilterRenderer.SingleSelect:
208
- column.filterRenderer = SingleSelectFilter_1.SingleSelectFilter;
209
- break;
210
- case TableDataProvider_1.FilterRenderer.Text:
211
- // column.filterRenderer is not set for the Text input filter
212
- break;
213
- }
214
- }
215
- return column;
216
- };
217
- this._getCellItem = (row, columnKey) => {
218
- return row.cells.find((cell) => cell.key === columnKey) || /* istanbul ignore next */ { key: columnKey };
219
- };
220
- this._rowComponentSelectionHandler = {
221
- deselectAll: () => {
222
- this._selectedRowIndices = new Set();
223
- if (!this._pressedItemSelected) {
224
- this._deactivateCellEditor();
225
- this.forceUpdate();
226
- }
227
- },
228
- selectBetween: (rowIndex1, rowIndex2) => {
229
- const selections = [];
230
- const lowerNumber = rowIndex1 < rowIndex2 ? rowIndex1 : rowIndex2;
231
- const higherNumber = rowIndex1 > rowIndex2 ? rowIndex1 : rowIndex2;
232
- for (let i = lowerNumber; i <= higherNumber; i++) {
233
- // istanbul ignore else
234
- if (!this._selectedRowIndices.has(i)) {
235
- selections.push(i);
236
- this._selectedRowIndices.add(i);
237
- }
238
- }
239
- this.forceUpdate();
240
- return selections;
241
- },
242
- updateSelection: (selections, deselections) => {
243
- for (const rowIndex of selections) {
244
- // istanbul ignore else
245
- if (!this._selectedRowIndices.has(rowIndex))
246
- this._selectedRowIndices.add(rowIndex);
247
- }
248
- for (const rowIndex of deselections) {
249
- // istanbul ignore else
250
- if (this._selectedRowIndices.has(rowIndex))
251
- this._selectedRowIndices.delete(rowIndex);
252
- }
253
- this.forceUpdate();
254
- },
255
- areEqual: (item1, item2) => item1 === item2,
256
- };
257
- this._cellComponentSelectionHandler = {
258
- deselectAll: () => {
259
- this._selectedCellKeys = new Map();
260
- this.forceUpdate();
261
- },
262
- selectBetween: (item1, item2) => {
263
- const selections = [];
264
- const lowerIndex = item1.rowIndex < item2.rowIndex ? item1.rowIndex : item2.rowIndex;
265
- const higherIndex = item1.rowIndex > item2.rowIndex ? item1.rowIndex : item2.rowIndex;
266
- let secondItem;
267
- let firstItemFound = false;
268
- let secondItemFound = false;
269
- for (let rowIndex = lowerIndex; rowIndex <= higherIndex; rowIndex++) {
270
- for (const column of this.state.columns) {
271
- if (!firstItemFound) {
272
- if (rowIndex === item1.rowIndex && column.key === item1.columnKey) {
273
- firstItemFound = true;
274
- secondItem = item2;
275
- }
276
- else {
277
- // istanbul ignore else
278
- if (rowIndex === item2.rowIndex && column.key === item2.columnKey) {
279
- firstItemFound = true;
280
- secondItem = item1;
281
- }
282
- else
283
- continue;
284
- }
285
- }
286
- const cellKey = { rowIndex, columnKey: column.key };
287
- if (!this.isCellSelected(cellKey))
288
- selections.push(cellKey);
289
- if (rowIndex === secondItem.rowIndex && column.key === secondItem.columnKey) {
290
- secondItemFound = true;
291
- break;
292
- }
293
- }
294
- if (secondItemFound)
295
- break;
296
- }
297
- this.selectCells(selections);
298
- this.forceUpdate();
299
- return selections;
300
- },
301
- updateSelection: (selections, deselections) => {
302
- this.selectCells(selections);
303
- this.deselectCells(deselections);
304
- this.forceUpdate();
305
- },
306
- areEqual: (item1, item2) => item1.rowIndex === item2.rowIndex && item1.columnKey === item2.columnKey,
307
- };
308
- this._rowGetter = (i) => {
309
- if (this.state.rows[i])
310
- return this.state.rows[i];
311
- // get another page of rows
312
- // note: always start loading at the beginning of a page to avoid
313
- // requesting duplicate data (e.g. a page that starts at 0, at 1, at 2, ...)
314
- this._rowGetterAsync(i - (i % this._pageAmount)); // eslint-disable-line @typescript-eslint/no-floating-promises
315
- // Return placeholder object
316
- return { item: { key: "", cells: [] }, index: i, cells: {} };
317
- };
318
- this._rowGetterAsync = (0, lodash_1.memoize)(async (index) => {
319
- // istanbul ignore next
320
- if (index < 0)
321
- return;
322
- // load up to `this._pageAmount` more rows
323
- const maxIndex = Math.min(this.state.rowsCount, index + this._pageAmount);
324
- const loadResult = await this.loadRows(index, maxIndex);
325
- // istanbul ignore next
326
- if (!this._isMounted)
327
- return;
328
- // istanbul ignore next
329
- if (this._pendingUpdate !== 0 /* None */)
330
- return;
331
- const selectedRowIndices = this._selectedRowIndices;
332
- for (const rowIndex of loadResult.selectedRowIndices) {
333
- // istanbul ignore else
334
- if (!selectedRowIndices.has(rowIndex))
335
- selectedRowIndices.add(rowIndex);
336
- }
337
- this._selectedRowIndices = selectedRowIndices;
338
- this.selectCells(loadResult.selectedCellKeys);
339
- this.setState((prev) => {
340
- const rows = [...prev.rows];
341
- loadResult.rows.forEach((r, i) => { rows[index + i] = r; });
342
- return { rows };
343
- }, async () => {
344
- if (this.props.onRowsLoaded)
345
- this.props.onRowsLoaded(index, index + loadResult.rows.length - 1);
346
- const showFilter = this._isShowFilterRow();
347
- if (showFilter !== this._filterRowShown)
348
- this.toggleFilterRow(showFilter);
349
- });
350
- });
351
- this._handleGridSort = (columnKey, sortDirection) => {
352
- let directionEnum;
353
- switch (sortDirection) {
354
- case "ASC":
355
- directionEnum = core_react_1.SortDirection.Ascending;
356
- break;
357
- case "DESC":
358
- directionEnum = core_react_1.SortDirection.Descending;
359
- break;
360
- case "NONE":
361
- default:
362
- directionEnum = core_react_1.SortDirection.NoSort;
363
- break;
364
- }
365
- // Sort the column
366
- this.gridSortAsync(columnKey, directionEnum); // eslint-disable-line @typescript-eslint/no-floating-promises
367
- this._queuePokeScroll();
368
- };
369
- this._createRowRenderer = () => {
370
- return (props) => {
371
- // istanbul ignore next
372
- const renderRow = this.props.renderRow ? this.props.renderRow : this.renderRow;
373
- const { row: rowProps, ...reactDataGridRowProps } = props;
374
- if (this._tableSelectionTarget === TableSelectionTarget.Row) {
375
- const selectionFunction = this._rowSelectionHandler.createSelectionFunction(this._rowComponentSelectionHandler, this.createRowItemSelectionHandler(props.row.index));
376
- const onClick = (e) => selectionFunction(e.shiftKey, e.ctrlKey);
377
- const onMouseDown = () => {
378
- this._rowSelectionHandler.createDragAction(this._rowComponentSelectionHandler, [this.rowItemSelectionHandlers], props.row.index);
379
- };
380
- const onMouseMove = (e) => {
381
- // istanbul ignore else
382
- if (e.buttons === 1)
383
- this._rowSelectionHandler.updateDragAction(props.row.index);
384
- };
385
- const isSelected = this._selectedRowIndices.has(props.row.index);
386
- const cells = this.createRowCells(rowProps, isSelected);
387
- const row = renderRow(rowProps.item, { ...reactDataGridRowProps, cells, isSelected });
388
- return React.createElement("div", { className: (0, classnames_1.default)("components-table-row"), onClickCapture: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown, style: props.row.style, role: "presentation" }, row);
389
- }
390
- else {
391
- const cells = this.createRowCells(rowProps, false);
392
- return renderRow(rowProps.item, { ...reactDataGridRowProps, cells });
393
- }
394
- };
395
- };
396
- // eslint-disable-next-line @typescript-eslint/naming-convention
397
- this.renderRow = (item, props) => {
398
- return React.createElement(TableRow, { key: item.key, ...props });
399
- };
400
- this._onMouseUp = () => {
401
- if (this._tableSelectionTarget === TableSelectionTarget.Row)
402
- this._rowSelectionHandler.completeDragAction();
403
- else
404
- this._cellSelectionHandler.completeDragAction();
405
- };
406
- this._onMouseDown = () => {
407
- document.addEventListener("mouseup", this._onMouseUp, { capture: true, once: true });
408
- };
409
- this._onHeaderDrop = (source, target) => {
410
- const cols = [...this.state.columns];
411
- const columnSourceIndex = this.state.columns.findIndex((i) => i.key === source);
412
- const columnTargetIndex = this.state.columns.findIndex((i) => i.key === target);
413
- cols.splice(columnTargetIndex, 0, cols.splice(columnSourceIndex, 1)[0]);
414
- // istanbul ignore else
415
- if (this.props.settingsIdentifier) {
416
- const stateStorage = this.props.settingsStorage || /* istanbul ignore next */ new core_react_1.LocalStateStorage();
417
- const keys = cols.map((col) => col.key);
418
- stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnReorder", keys); // eslint-disable-line @typescript-eslint/no-floating-promises
419
- }
420
- this.setState({ columns: [] }, () => {
421
- this.setState({ columns: cols });
422
- });
423
- };
424
- this._deactivateCellEditor = () => {
425
- if (this.state.cellEditorState.active)
426
- this.setState({ cellEditorState: { active: false } }, () => setTimeout(() => this.setFocusToSelected()));
427
- };
428
- this._onCellCommit = async (args) => {
429
- // istanbul ignore else
430
- if (this.props.onPropertyUpdated) {
431
- const cellUpdatedArgs = {
432
- rowIndex: this.state.cellEditorState.rowIndex,
433
- colIndex: this.state.cellEditorState.colIndex,
434
- cellKey: this.state.cellEditorState.cellKey,
435
- };
436
- const allowed = await this.props.onPropertyUpdated(args, cellUpdatedArgs);
437
- // istanbul ignore else
438
- if (allowed && this.state.cellEditorState.rowIndex !== undefined && this.state.cellEditorState.rowIndex >= 0) {
439
- this._deactivateCellEditor();
440
- await this.updateRows();
441
- }
442
- else {
443
- this._deactivateCellEditor();
444
- }
445
- }
446
- };
447
- this._getVisibleColumns = () => {
448
- return this.state.columns
449
- .filter((tableColumn) => this.state.hiddenColumns.indexOf(tableColumn.key) === -1)
450
- .map((tableColumn) => tableColumn.reactDataGridColumn);
451
- };
452
- this._handleShowHideContextMenu = (e) => {
453
- const header = e.currentTarget.querySelector(".react-grid-Header");
454
- // istanbul ignore else
455
- if (header) {
456
- const headerRect = header.getBoundingClientRect();
457
- const offsetY = headerRect.top;
458
- const height = headerRect.height;
459
- const x = e.clientX, y = e.clientY;
460
- // istanbul ignore else
461
- if (y < offsetY + height) {
462
- e.preventDefault();
463
- this.setState({
464
- menuX: x, menuY: y,
465
- menuVisible: true,
466
- });
467
- }
468
- }
469
- };
470
- this._hideContextMenu = () => {
471
- // istanbul ignore else
472
- if (this.props.showHideColumns)
473
- this.setState({ menuVisible: false });
474
- };
475
- // istanbul ignore next
476
- this._handleShowHideChange = (cols) => {
477
- this.setState({ hiddenColumns: cols });
478
- if (this.props.settingsIdentifier) {
479
- const stateStorage = this.props.settingsStorage || new core_react_1.LocalStateStorage();
480
- stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnShowHideHiddenColumns", cols); // eslint-disable-line @typescript-eslint/no-floating-promises
481
- }
482
- return true;
483
- };
484
- // istanbul ignore next
485
- this._onDialogOpen = (dialogState) => this.setState({ dialog: dialogState });
486
- // istanbul ignore next
487
- this._onDialogClose = () => this.setState({ dialog: undefined });
488
- this._handleFilterChange = (filter) => {
489
- const columnKey = filter.column.key;
490
- const tableColumn = this.state.columns.find((column) => column.key === columnKey);
491
- // istanbul ignore else
492
- if (tableColumn) {
493
- setTimeout(async () => {
494
- await DataGridFilterParser_1.DataGridFilterParser.handleFilterChange(filter, tableColumn.columnFilterDescriptor, tableColumn.columnDescription, this._applyFilter);
495
- });
496
- }
497
- };
498
- // istanbul ignore next
499
- this._handleOnClearFilters = () => {
500
- this.filterDescriptors.clear();
501
- this._applyFilter(); // eslint-disable-line @typescript-eslint/no-floating-promises
502
- };
503
- this._applyFilter = async () => {
504
- // istanbul ignore else
505
- if (this.props.dataProvider.applyFilterDescriptors) {
506
- await this.props.dataProvider.applyFilterDescriptors(this.filterDescriptors);
507
- await this.updateRows();
508
- // istanbul ignore else
509
- if (this.props.onApplyFilter)
510
- this.props.onApplyFilter();
511
- }
512
- };
513
- // istanbul ignore next
514
- this._getValidFilterValues = (columnKey) => {
515
- const tableColumn = this.state.columns.find((column) => column.reactDataGridColumn.key === columnKey);
516
- if (tableColumn && tableColumn.distinctValueCollection) {
517
- return tableColumn.distinctValueCollection.values;
518
- }
519
- return [];
520
- };
521
- // TODO: Enable, when table gets refactored. Explanation in ./../table/NonPrimitiveValueRenderer
522
- // private _onPopupShow = (popupState: PropertyPopupState) => this.setState({ popup: popupState });
523
- // private _onPopupHide = () => this.setState({ popup: undefined });
524
- // istanbul ignore next
525
- this._onScroll = (scrollData) => {
526
- this._topRowIndex = scrollData.rowVisibleStartIdx;
527
- if (this.props.onScrollToRow)
528
- this.props.onScrollToRow(scrollData.rowVisibleStartIdx);
529
- };
530
- this._onKeyboardEvent = (e, keyDown) => {
531
- if ((0, core_react_1.isNavigationKey)(e.key) && !this.state.cellEditorState.active && !this.isFocusOnInputElement()) {
532
- if (this._tableSelectionTarget === TableSelectionTarget.Row) {
533
- const handleKeyboardSelectItem = (index) => {
534
- const selectionFunction = this._rowSelectionHandler.createSelectionFunction(this._rowComponentSelectionHandler, this.createRowItemSelectionHandler(index));
535
- selectionFunction(e.shiftKey, e.ctrlKey);
536
- };
537
- const handleKeyboardActivateItem = (index) => {
538
- // istanbul ignore else
539
- if (this.state.keyboardEditorCellKey) {
540
- const columnIndex = this.getColumnIndexFromKey(this.state.keyboardEditorCellKey);
541
- // istanbul ignore else
542
- if (0 <= columnIndex && columnIndex < this.state.columns.length) {
543
- const columnDescription = this.state.columns[columnIndex].columnDescription;
544
- // istanbul ignore else
545
- if (columnDescription && columnDescription.editable)
546
- this.activateCellEditor(index, columnIndex, this.state.keyboardEditorCellKey);
547
- }
548
- }
549
- };
550
- const handleCrossAxisArrowKey = (forward) => {
551
- // istanbul ignore else
552
- if (this.state.keyboardEditorCellKey) {
553
- let newEditorCellKey;
554
- const columnIndex = this.getColumnIndexFromKey(this.state.keyboardEditorCellKey);
555
- // istanbul ignore else
556
- if (columnIndex >= 0) {
557
- let newColIndex = columnIndex;
558
- while (!newEditorCellKey) {
559
- if (forward)
560
- newColIndex++;
561
- else
562
- newColIndex--;
563
- if (newColIndex < 0)
564
- newColIndex = this.state.columns.length - 1;
565
- else if (newColIndex >= this.state.columns.length)
566
- newColIndex = 0;
567
- // istanbul ignore next
568
- if (newColIndex === columnIndex)
569
- break;
570
- const isEditable = this.state.columns[newColIndex].columnDescription.editable;
571
- if (isEditable)
572
- newEditorCellKey = this.state.columns[newColIndex].key;
573
- }
574
- // istanbul ignore else
575
- if (newEditorCellKey)
576
- this.setState({ keyboardEditorCellKey: newEditorCellKey });
577
- }
578
- }
579
- };
580
- const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
581
- itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
582
- itemKeyboardNavigator.allowWrap = false;
583
- itemKeyboardNavigator.itemCount = this.state.rowsCount;
584
- itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
585
- const processedRow = this._rowSelectionHandler.processedItem ? this._rowSelectionHandler.processedItem /* istanbul ignore next */ : 0;
586
- keyDown ?
587
- itemKeyboardNavigator.handleKeyDownEvent(e, processedRow) :
588
- itemKeyboardNavigator.handleKeyUpEvent(e, processedRow);
589
- }
590
- else {
591
- const handleKeyboardSelectItem = (index) => {
592
- const processedCell = this._cellSelectionHandler.processedItem;
593
- // istanbul ignore else
594
- if (processedCell) {
595
- const cellKey = { rowIndex: index, columnKey: processedCell.columnKey };
596
- const selectionHandler = this.createCellItemSelectionHandler(cellKey);
597
- const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
598
- selectionFunction(e.shiftKey, e.ctrlKey);
599
- }
600
- };
601
- const handleKeyboardActivateItem = (index) => {
602
- const processedCell = this._cellSelectionHandler.processedItem;
603
- // istanbul ignore else
604
- if (processedCell) {
605
- const columnIndex = this.getColumnIndexFromKey(processedCell.columnKey);
606
- // istanbul ignore else
607
- if (0 <= columnIndex && columnIndex < this.state.columns.length) {
608
- const columnDescription = this.state.columns[columnIndex].columnDescription;
609
- // istanbul ignore else
610
- if (columnDescription && columnDescription.editable)
611
- this.activateCellEditor(index, columnIndex, processedCell.columnKey);
612
- }
613
- }
614
- };
615
- const handleCrossAxisArrowKey = (forward) => {
616
- const processedCell = this._cellSelectionHandler.processedItem;
617
- // istanbul ignore else
618
- if (processedCell) {
619
- const columnIndex = this.getColumnIndexFromKey(processedCell.columnKey);
620
- // istanbul ignore else
621
- if (columnIndex >= 0) {
622
- let newColIndex = columnIndex;
623
- if (forward)
624
- newColIndex++;
625
- else
626
- newColIndex--;
627
- if (newColIndex < 0)
628
- newColIndex = this.state.columns.length - 1;
629
- else if (newColIndex >= this.state.columns.length)
630
- newColIndex = 0;
631
- const columnKey = this.state.columns[newColIndex].key;
632
- const cellKey = { rowIndex: processedCell.rowIndex, columnKey };
633
- const selectionHandler = this.createCellItemSelectionHandler(cellKey);
634
- const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
635
- selectionFunction(e.shiftKey, e.ctrlKey);
636
- }
637
- }
638
- };
639
- const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
640
- itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
641
- itemKeyboardNavigator.allowWrap = false;
642
- itemKeyboardNavigator.itemCount = this.state.rowsCount;
643
- itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
644
- const processedRow = this._cellSelectionHandler.processedItem ? this._cellSelectionHandler.processedItem.rowIndex : /* istanbul ignore next */ 0;
645
- keyDown ?
646
- itemKeyboardNavigator.handleKeyDownEvent(e, processedRow) :
647
- itemKeyboardNavigator.handleKeyUpEvent(e, processedRow);
648
- }
649
- }
650
- };
651
- this._onKeyDown = (e) => this._onKeyboardEvent(e, true);
652
- this._onKeyUp = (e) => this._onKeyboardEvent(e, false);
653
- if (props.pageAmount)
654
- this._pageAmount = props.pageAmount;
655
- this._disposableListeners.add(props.dataProvider.onColumnsChanged.addListener(this._onColumnsChanged));
656
- this._disposableListeners.add(props.dataProvider.onRowsChanged.addListener(this._onRowsChanged));
657
- this._rowSelectionHandler = new SelectionHandler_1.SelectionHandler(props.selectionMode ? props.selectionMode : SelectionModes_1.SelectionMode.Single);
658
- this._cellSelectionHandler = new SelectionHandler_1.SelectionHandler(props.selectionMode ? props.selectionMode : SelectionModes_1.SelectionMode.Single);
659
- this._rowSelectionHandler.onItemsSelectedCallback = this._onRowsSelected;
660
- this._rowSelectionHandler.onItemsDeselectedCallback = this._onRowsDeselected;
661
- this._cellSelectionHandler.onItemsSelectedCallback = this._onCellsSelected;
662
- this._cellSelectionHandler.onItemsDeselectedCallback = this._onCellsDeselected;
663
- }
664
- // eslint-disable-next-line @typescript-eslint/naming-convention
665
- get rowItemSelectionHandlers() {
666
- // istanbul ignore else
667
- if (!this._rowItemSelectionHandlers) {
668
- this._rowItemSelectionHandlers = [];
669
- for (let i = 0; i < this.state.rowsCount; i++)
670
- this._rowItemSelectionHandlers.push(this.createRowItemSelectionHandler(i));
671
- }
672
- return this._rowItemSelectionHandlers;
673
- }
674
- // eslint-disable-next-line @typescript-eslint/naming-convention
675
- get cellItemSelectionHandlers() {
676
- // istanbul ignore else
677
- if (!this._cellItemSelectionHandlers) {
678
- this._cellItemSelectionHandlers = [];
679
- for (let rowIndex = 0; rowIndex < this.state.rowsCount; rowIndex++) {
680
- this._cellItemSelectionHandlers[rowIndex] = [];
681
- for (const column of this.state.columns) {
682
- this._cellItemSelectionHandlers[rowIndex].push(this.createCellItemSelectionHandler({ rowIndex, columnKey: column.key }));
683
- }
684
- }
685
- }
686
- return this._cellItemSelectionHandlers;
687
- }
688
- async *createRowIterator(rowIndices) {
689
- for (const index of rowIndices)
690
- yield await this.props.dataProvider.getRow(index);
691
- }
692
- async *createCellIterator(cellKeys) {
693
- for (const key of cellKeys) {
694
- const row = await this.props.dataProvider.getRow(key.rowIndex);
695
- yield [row, this._getCellItem(row, key.columnKey)];
696
- }
697
- }
698
- get _tableSelectionTarget() {
699
- return this.props.tableSelectionTarget ? this.props.tableSelectionTarget : TableSelectionTarget.Row;
700
- }
701
- /** @internal */
702
- componentDidUpdate(previousProps, previousState) {
703
- this._rowSelectionHandler.selectionMode = this.props.selectionMode ? this.props.selectionMode : SelectionModes_1.SelectionMode.Single;
704
- this._cellSelectionHandler.selectionMode = this.props.selectionMode ? this.props.selectionMode : SelectionModes_1.SelectionMode.Single;
705
- if (previousProps.dataProvider !== this.props.dataProvider) {
706
- this._disposableListeners.dispose();
707
- this._disposableListeners.add(this.props.dataProvider.onColumnsChanged.addListener(this._onColumnsChanged));
708
- this._disposableListeners.add(this.props.dataProvider.onRowsChanged.addListener(this._onRowsChanged));
709
- }
710
- if (this.props.dataProvider !== previousProps.dataProvider) {
711
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
712
- this.update();
713
- return;
714
- }
715
- // When hiddenColumns length is changed, we need to re-render component so that cell widths would be calculated appropriately.
716
- if (previousState.hiddenColumns.length !== this.state.hiddenColumns.length)
717
- this.forceUpdate();
718
- if (this.props.isCellSelected !== previousProps.isCellSelected
719
- || this.props.isRowSelected !== previousProps.isRowSelected
720
- || this.props.tableSelectionTarget !== previousProps.tableSelectionTarget) {
721
- this.updateSelectedRows();
722
- this.updateSelectedCells();
723
- }
724
- if (this.props.scrollToRow !== previousProps.scrollToRow) {
725
- // istanbul ignore else
726
- if (this.props.scrollToRow !== undefined)
727
- this.scrollToRow(this.props.scrollToRow);
728
- }
729
- /* istanbul ignore next */
730
- if (this.props.onRender)
731
- this.props.onRender();
732
- }
733
- /** @internal */
734
- componentDidMount() {
735
- let gridContainer = null;
736
- this._isMounted = true;
737
- // The previously used ReactResizeDetector, which does not work in popout/child windows, used deprecated React.findDomNode
738
- // which is now deprecated so, so new ElementResizeObserver requires you to pass the element to observe. So get the
739
- // same HTMLDivElement from grid as was used previously by ReactResizeDetector.
740
- if (this._gridRef.current) {
741
- const grid = this._gridRef.current;
742
- gridContainer = grid.getDataGridDOMNode();
743
- }
744
- this.setState({ gridContainer }, () => {
745
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
746
- this.update();
747
- });
748
- }
749
- /** @internal */
750
- componentWillUnmount() {
751
- this._isMounted = false;
752
- this._disposableListeners.dispose();
753
- this._unsetPokeScrollTimeout();
754
- }
755
- scrollToRow(rowIndex) {
756
- // istanbul ignore else
757
- if (this._gridRef.current) {
758
- const grid = this._gridRef.current;
759
- // istanbul ignore else
760
- if (grid.getRowOffsetHeight && grid.getDataGridDOMNode) {
761
- const top = TABLE_ROW_HEIGHT * rowIndex;
762
- const gridCanvas = grid.getDataGridDOMNode().querySelector(".react-grid-Canvas");
763
- gridCanvas.scrollTop = top;
764
- this._topRowIndex = rowIndex;
765
- // istanbul ignore else
766
- if (this.props.onScrollToRow)
767
- this.props.onScrollToRow(rowIndex);
768
- }
769
- }
770
- }
771
- setFocusToSelected() {
772
- // istanbul ignore next
773
- if (this._gridRef.current) {
774
- const grid = this._gridRef.current;
775
- // istanbul ignore else
776
- if (grid.getDataGridDOMNode) {
777
- const gridSelected = grid.getDataGridDOMNode().querySelector(".rdg-selected");
778
- // istanbul ignore else
779
- if (gridSelected) {
780
- gridSelected.focus();
781
- }
782
- }
783
- }
784
- }
785
- async handlePendingUpdate() {
786
- const update = this._pendingUpdate;
787
- this._pendingUpdate = 0 /* None */;
788
- let status = 0 /* Continue */;
789
- if (update === 2 /* Complete */)
790
- status = await this.updateColumns();
791
- // istanbul ignore else
792
- if (status === 0 /* Continue */ && update > 0 /* None */)
793
- status = await this.updateRows();
794
- return status;
795
- }
796
- async updateColumns() {
797
- if (this._currentUpdate !== 0 /* None */) {
798
- this._pendingUpdate = 2 /* Complete */;
799
- return 1 /* Abort */;
800
- }
801
- this._currentUpdate = 2 /* Complete */;
802
- const columnDescriptions = await this.props.dataProvider.getColumns();
803
- this._currentUpdate = 0 /* None */;
804
- // istanbul ignore next
805
- if (!this._isMounted)
806
- return 1 /* Abort */;
807
- if (this._pendingUpdate === 2 /* Complete */) {
808
- await this.handlePendingUpdate();
809
- return 1 /* Abort */;
810
- }
811
- let dataGridColumns = columnDescriptions.map(this._columnDescriptionToReactDataGridColumn);
812
- if (this.props.settingsIdentifier) {
813
- const stateStorage = this.props.settingsStorage || /* istanbul ignore next */ this.props.uiStateStorage || /* istanbul ignore next */ new core_react_1.LocalStateStorage();
814
- const reorderResult = await stateStorage.getSetting(this.props.settingsIdentifier, "ColumnReorder");
815
- // istanbul ignore next
816
- if (reorderResult.status === core_react_1.UiStateStorageStatus.Success) {
817
- const setting = reorderResult.setting;
818
- // map columns according to the keys in columns, in the order of the loaded array of keys
819
- dataGridColumns = setting.map((key) => dataGridColumns.filter((col) => col.key === key)[0]);
820
- }
821
- else if (reorderResult.status === core_react_1.UiStateStorageStatus.NotFound) {
822
- const keys = columnDescriptions.map((col) => col.key);
823
- await stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnReorder", keys);
824
- }
825
- const showhideResult = await stateStorage.getSetting(this.props.settingsIdentifier, "ColumnShowHideHiddenColumns");
826
- // istanbul ignore next
827
- if (showhideResult.status === core_react_1.UiStateStorageStatus.Success) {
828
- const hiddenColumns = showhideResult.setting;
829
- this.setState({ hiddenColumns });
830
- }
831
- }
832
- let keyboardEditorCellKey;
833
- const tableColumns = dataGridColumns.map((dataGridColumn, index) => {
834
- const tableColumn = new TableColumn_1.TableColumn(this, columnDescriptions[index], dataGridColumn);
835
- tableColumn.dataProvider = this.props.dataProvider;
836
- if (!keyboardEditorCellKey && tableColumn.columnDescription.editable)
837
- keyboardEditorCellKey = tableColumn.key;
838
- if (tableColumn.filterable)
839
- dataGridColumn.filterableColumn = tableColumn;
840
- return tableColumn;
841
- });
842
- for (const tableColumn of tableColumns) {
843
- if (tableColumn.filterable)
844
- tableColumn.distinctValueCollection = await tableColumn.getDistinctValues(this.props.maximumDistinctValues);
845
- }
846
- this.setState({ columns: tableColumns, keyboardEditorCellKey });
847
- if (this._pendingUpdate !== 0 /* None */) {
848
- return this.handlePendingUpdate();
849
- }
850
- return 0 /* Continue */;
851
- }
852
- async updateRows() {
853
- if (this._currentUpdate !== 0 /* None */) {
854
- if (this._pendingUpdate === 0 /* None */)
855
- this._pendingUpdate = 1 /* Rows */;
856
- return 1 /* Abort */;
857
- }
858
- this._currentUpdate = 1 /* Rows */;
859
- const rowsCount = await this.props.dataProvider.getRowsCount();
860
- this._currentUpdate = 0 /* None */;
861
- // istanbul ignore next
862
- if (!this._isMounted)
863
- return 1 /* Abort */;
864
- if (this._pendingUpdate !== 0 /* None */) {
865
- return this.handlePendingUpdate();
866
- }
867
- if (rowsCount !== this.state.rowsCount) {
868
- this._rowItemSelectionHandlers = undefined;
869
- this._cellItemSelectionHandlers = undefined;
870
- // when updating the rows with new data from dataProvider clear out existing selections
871
- this._selectedRowIndices.clear();
872
- this._selectedCellKeys.clear();
873
- }
874
- this._rowGetterAsync.cache.clear();
875
- this.setState({ rowsCount, rows: [] });
876
- return 0 /* Continue */;
877
- }
878
- /** @internal */
879
- async update() {
880
- let status = await this.updateColumns();
881
- if (status !== 1 /* Abort */)
882
- status = await this.updateRows();
883
- if (this.props.scrollToRow !== undefined)
884
- this.scrollToRow(this.props.scrollToRow);
885
- /* istanbul ignore next */
886
- if (this.props.onRender)
887
- this.props.onRender();
888
- return status;
889
- }
890
- /** @internal */
891
- updateSelectedRows() {
892
- const selectedRowIndices = new Set();
893
- if (this.props.isRowSelected) {
894
- for (let rowIndex = 0; rowIndex < this.state.rows.length; rowIndex++) {
895
- if (this.state.rows[rowIndex] && this.props.isRowSelected(this.state.rows[rowIndex].item))
896
- selectedRowIndices.add(rowIndex);
897
- }
898
- }
899
- this._selectedRowIndices = selectedRowIndices;
900
- this.forceUpdate();
901
- }
902
- /** @internal */
903
- updateSelectedCells() {
904
- const selectedCellKeys = new Map();
905
- if (this.props.isCellSelected) {
906
- for (const column of this.state.columns) {
907
- const set = new Set();
908
- for (let rowIndex = 0; rowIndex < this.state.rows.length; rowIndex++) {
909
- // istanbul ignore next
910
- if (!this.state.rows[rowIndex])
911
- continue;
912
- const cellItem = this._getCellItem(this.state.rows[rowIndex].item, column.key);
913
- if (this.props.isCellSelected(rowIndex, cellItem))
914
- set.add(rowIndex);
915
- }
916
- // istanbul ignore else
917
- if (set.size !== 0)
918
- selectedCellKeys.set(column.key, set);
919
- }
920
- }
921
- this._selectedCellKeys = selectedCellKeys;
922
- this.forceUpdate();
923
- }
924
- isCellSelected(key) {
925
- const set = this._selectedCellKeys.get(key.columnKey);
926
- if (set)
927
- return set.has(key.rowIndex);
928
- return false;
929
- }
930
- selectCells(cellKeys) {
931
- for (const key of cellKeys) {
932
- let set = this._selectedCellKeys.get(key.columnKey);
933
- if (!set) {
934
- set = new Set();
935
- this._selectedCellKeys.set(key.columnKey, set);
936
- }
937
- set.add(key.rowIndex);
938
- }
939
- }
940
- deselectCells(cellKeys) {
941
- for (const key of cellKeys) {
942
- // istanbul ignore else
943
- const set = this._selectedCellKeys.get(key.columnKey);
944
- // istanbul ignore else
945
- if (set)
946
- set.delete(key.rowIndex);
947
- }
948
- }
949
- createRowItemSelectionHandler(rowIndex) {
950
- return {
951
- preselect: () => {
952
- this._pressedItemSelected = this._selectedRowIndices.has(rowIndex);
953
- },
954
- select: () => {
955
- // istanbul ignore else
956
- if (!this._selectedRowIndices.has(rowIndex)) {
957
- this._selectedRowIndices.add(rowIndex);
958
- if (!this._pressedItemSelected)
959
- this.forceUpdate();
960
- }
961
- },
962
- deselect: () => {
963
- // istanbul ignore else
964
- if (this._selectedRowIndices.has(rowIndex)) {
965
- this._selectedRowIndices.delete(rowIndex);
966
- this.forceUpdate();
967
- }
968
- },
969
- isSelected: () => this._selectedRowIndices.has(rowIndex),
970
- item: () => rowIndex,
971
- };
972
- }
973
- createCellItemSelectionHandler(cellKey) {
974
- return {
975
- preselect: () => {
976
- this._pressedItemSelected = this.isCellSelected(cellKey);
977
- },
978
- select: () => {
979
- this.selectCells([cellKey]);
980
- this.forceUpdate();
981
- },
982
- deselect: () => {
983
- this.deselectCells([cellKey]);
984
- this.forceUpdate();
985
- },
986
- isSelected: () => this.isCellSelected(cellKey),
987
- item: () => cellKey,
988
- };
989
- }
990
- async renderCellContent(cellItem, column, displayValue) {
991
- if (column.icon)
992
- return () => React.createElement(TableCell_1.TableIconCellContent, { iconName: displayValue });
993
- return (props) => {
994
- var _a;
995
- return (React.createElement(TableCell_1.TableCellContent, { height: TABLE_ROW_HEIGHT, isSelected: props.isSelected, cellItem: cellItem, onDialogOpen: this._onDialogOpen, propertyValueRendererManager: this.props.propertyValueRendererManager
996
- ? this.props.propertyValueRendererManager
997
- : ValueRendererManager_1.PropertyValueRendererManager.defaultManager, style: { zIndex: (((_a = cellItem.mergedCellsCount) !== null && _a !== void 0 ? _a : 1) > 1) ? 1 : undefined } }));
998
- };
999
- }
1000
- async getCellDisplayValue(cellItem) {
1001
- var _a;
1002
- // istanbul ignore next
1003
- if (!cellItem.record || cellItem.record.value.valueFormat !== appui_abstract_1.PropertyValueFormat.Primitive)
1004
- return "";
1005
- const value = cellItem.record.value.value;
1006
- if (value === undefined)
1007
- return "";
1008
- const displayValue = await TypeConverterManager_1.TypeConverterManager
1009
- .getConverter(cellItem.record.property.typename, (_a = cellItem.record.property.converter) === null || _a === void 0 ? void 0 : _a.name)
1010
- .convertPropertyToString(cellItem.record.property, value);
1011
- return displayValue ? displayValue : /* istanbul ignore next */ "";
1012
- }
1013
- async createPropsForRowItem(item, index) {
1014
- const cellProps = {};
1015
- for (const column of this.state.columns) {
1016
- const cellItem = this._getCellItem(item, column.key);
1017
- const displayValue = await this.getCellDisplayValue(cellItem);
1018
- cellProps[column.key] = {
1019
- item: cellItem,
1020
- displayValue,
1021
- render: await this.renderCellContent(cellItem, column.reactDataGridColumn, displayValue),
1022
- };
1023
- }
1024
- const rowStyle = ItemStyle_1.TableRowStyleProvider.createStyle(item.colorOverrides ? item.colorOverrides : {});
1025
- return {
1026
- item,
1027
- index,
1028
- cells: cellProps,
1029
- render: undefined,
1030
- style: rowStyle,
1031
- };
1032
- }
1033
- async loadRows(beginIndex, endIndex) {
1034
- const result = {
1035
- rows: [],
1036
- selectedRowIndices: [],
1037
- selectedCellKeys: [],
1038
- };
1039
- this._rowLoadGuid = core_bentley_1.Guid.createValue();
1040
- const currentSelectedRowGuid = this._rowLoadGuid;
1041
- const promises = new Array();
1042
- for (let i = beginIndex; i < endIndex; ++i) {
1043
- promises.push(this.props.dataProvider.getRow(i).then(async (rowData) => this.createPropsForRowItem(rowData, i).then((rowProps) => (rowProps))));
1044
- }
1045
- try {
1046
- result.rows = await Promise.all(promises);
1047
- }
1048
- catch { }
1049
- // istanbul ignore else
1050
- // Check if another loadRows got called while this one was still going
1051
- if (currentSelectedRowGuid === this._rowLoadGuid) {
1052
- for (const rowProps of result.rows) {
1053
- if (this.props.isRowSelected && this.props.isRowSelected(rowProps.item))
1054
- result.selectedRowIndices.push(rowProps.index);
1055
- if (this.props.isCellSelected) {
1056
- for (const column of this.state.columns) {
1057
- const cellItem = this._getCellItem(rowProps.item, column.key);
1058
- if (this.props.isCellSelected(rowProps.index, cellItem))
1059
- result.selectedCellKeys.push({ rowIndex: rowProps.index, columnKey: column.key });
1060
- }
1061
- }
1062
- }
1063
- }
1064
- return result;
1065
- }
1066
- getColumnIndexFromKey(columnKey) {
1067
- return this.state.columns.findIndex((column) => column.key === columnKey);
1068
- }
1069
- async gridSortAsync(columnKey, directionEnum) {
1070
- const columnIndex = this.getColumnIndexFromKey(columnKey);
1071
- // istanbul ignore next
1072
- if (columnIndex < 0)
1073
- return;
1074
- await this.props.dataProvider.sort(columnIndex, directionEnum);
1075
- // istanbul ignore next
1076
- if (!this._isMounted)
1077
- return;
1078
- this.updateRows(); // eslint-disable-line @typescript-eslint/no-floating-promises
1079
- }
1080
- createRowCells(rowProps, isSelected) {
1081
- var _a;
1082
- const cells = {};
1083
- let gridColumns = [];
1084
- let foundHiddenColumns = 0;
1085
- // istanbul ignore else
1086
- if (this._gridRef.current && this._gridRef.current.getDataGridDOMNode)
1087
- gridColumns = this._gridRef.current.getDataGridDOMNode().querySelectorAll(".react-grid-HeaderCell");
1088
- for (let index = 0; index < this.state.columns.length; index++) {
1089
- const column = this.state.columns[index];
1090
- const cellProps = rowProps.cells[column.key];
1091
- if (!cellProps) {
1092
- continue;
1093
- }
1094
- // eslint-disable-next-line @typescript-eslint/naming-convention
1095
- const CellContent = cellProps.render;
1096
- const isEditorCell = this.state.cellEditorState.active
1097
- && this.state.cellEditorState.rowIndex === rowProps.index
1098
- && this.state.cellEditorState.colIndex === index
1099
- && cellProps.item.record;
1100
- let onClick;
1101
- let onMouseMove;
1102
- let onMouseDown;
1103
- let className;
1104
- const cellKey = { rowIndex: rowProps.index, columnKey: column.key };
1105
- if (this._tableSelectionTarget === TableSelectionTarget.Cell) {
1106
- const selectionHandler = this.createCellItemSelectionHandler(cellKey);
1107
- const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
1108
- onClick = (e) => selectionFunction(e.shiftKey, e.ctrlKey);
1109
- onMouseMove = (e) => {
1110
- // istanbul ignore else
1111
- if (e.buttons === 1)
1112
- this._cellSelectionHandler.updateDragAction(cellKey);
1113
- };
1114
- onMouseDown = () => {
1115
- this._cellSelectionHandler.createDragAction(this._cellComponentSelectionHandler, this.cellItemSelectionHandlers, cellKey);
1116
- };
1117
- className = (0, classnames_1.default)({ "is-selected": this.isCellSelected(cellKey) });
1118
- }
1119
- else {
1120
- if (this._selectedRowIndices.has(rowProps.index))
1121
- className = (0, classnames_1.default)({ "is-keyboard-editable": this.state.keyboardEditorCellKey === column.key });
1122
- }
1123
- className = (0, classnames_1.default)(className, this.getCellBorderStyle(cellKey));
1124
- const mergedAdjacentCellsCount = ((_a = cellProps.item.mergedCellsCount) !== null && _a !== void 0 ? _a : 1) - 1;
1125
- let cellWidth = 0;
1126
- for (let i = 0; i <= mergedAdjacentCellsCount; i++) {
1127
- const col = this.state.columns[index + i];
1128
- if (this.state.hiddenColumns.indexOf(col.key) === -1) {
1129
- const gridColumn = gridColumns[index + i - foundHiddenColumns];
1130
- const gridColumnWidth = gridColumn ? gridColumn.getBoundingClientRect().width : 0;
1131
- cellWidth += gridColumnWidth;
1132
- }
1133
- else {
1134
- foundHiddenColumns++;
1135
- }
1136
- if (i > 0) {
1137
- cells[col.key] = (React.createElement(TableCell_1.TableCell, { className: className.replace("border-bottom", ""), title: "empty-cell", onClick: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown }));
1138
- }
1139
- const mergedColumn = this.state.columns[index + i];
1140
- const emptyCellKey = { rowIndex: rowProps.index, columnKey: mergedColumn.key };
1141
- className = (0, dedupe_1.default)(className, this.getCellBorderStyle(emptyCellKey));
1142
- }
1143
- index += mergedAdjacentCellsCount;
1144
- cells[column.key] = (React.createElement(TableCell_1.TableCell, { className: className, title: cellProps.displayValue, onClick: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown, cellEditingProps: isEditorCell ? {
1145
- onCancel: this._deactivateCellEditor,
1146
- onCommit: this._onCellCommit,
1147
- propertyRecord: cellProps.item.record,
1148
- setFocus: true,
1149
- } : undefined, style: { width: (mergedAdjacentCellsCount > 0) ? cellWidth : undefined } },
1150
- React.createElement(CellContent, { isSelected: isSelected })));
1151
- }
1152
- return cells;
1153
- }
1154
- getCellBorderStyle(key) {
1155
- const isCellSelected = (cellKey) => {
1156
- if (this._tableSelectionTarget === TableSelectionTarget.Row) {
1157
- return this._selectedRowIndices.has(cellKey.rowIndex);
1158
- }
1159
- return this.isCellSelected(cellKey);
1160
- };
1161
- const cellIsSelected = isCellSelected(key);
1162
- const columnIndex = this.state.columns.findIndex((column) => key.columnKey === column.key);
1163
- const isTopBorderVisible = () => {
1164
- if (key.rowIndex === 0) {
1165
- return cellIsSelected;
1166
- }
1167
- if (cellIsSelected) {
1168
- return !isCellSelected({ rowIndex: key.rowIndex - 1, columnKey: key.columnKey });
1169
- }
1170
- // Bottom border is rendered by drawing the top border on the node below
1171
- // Check if the node above needs its bottom border drawn
1172
- return isCellSelected({ rowIndex: key.rowIndex - 1, columnKey: key.columnKey });
1173
- };
1174
- const isRightBorderVisible = () => {
1175
- if (!cellIsSelected) {
1176
- return false;
1177
- }
1178
- if (columnIndex === this.state.columns.length - 1) {
1179
- return true;
1180
- }
1181
- return !isCellSelected({ rowIndex: key.rowIndex, columnKey: this.state.columns[columnIndex + 1].key });
1182
- };
1183
- const isBottomBorderVisible = () => {
1184
- return cellIsSelected && key.rowIndex === this.state.rowsCount - 1;
1185
- };
1186
- const isLeftBorderVisible = () => {
1187
- if (!cellIsSelected) {
1188
- return false;
1189
- }
1190
- if (columnIndex === 0) {
1191
- return true;
1192
- }
1193
- return !isCellSelected({ rowIndex: key.rowIndex, columnKey: this.state.columns[columnIndex - 1].key });
1194
- };
1195
- return (0, classnames_1.default)({
1196
- "border-top": isTopBorderVisible(),
1197
- "border-right": isRightBorderVisible(),
1198
- "border-bottom": isBottomBorderVisible(),
1199
- "border-left": isLeftBorderVisible(),
1200
- });
1201
- }
1202
- cellEditOnClick(column, _ev, args) {
1203
- // Prevent editing when property record is not primitive
1204
- // istanbul ignore else
1205
- if (this.state.rows[args.rowIdx]) {
1206
- const record = this._getCellItem(this.state.rows[0].item, column.key).record;
1207
- // istanbul ignore next
1208
- if (record && record.value.valueFormat !== appui_abstract_1.PropertyValueFormat.Primitive)
1209
- return;
1210
- }
1211
- if (this.state.keyboardEditorCellKey !== column.key)
1212
- this.setState({ keyboardEditorCellKey: column.key });
1213
- let activate = false;
1214
- if (this._pressedItemSelected)
1215
- activate = true;
1216
- if (activate)
1217
- this.activateCellEditor(args.rowIdx, args.idx, column.key);
1218
- else
1219
- this._deactivateCellEditor();
1220
- }
1221
- cellContextMenu(column, e, args) {
1222
- // istanbul ignore else
1223
- if (this.props.onCellContextMenu) {
1224
- const contextMenuArgs = {
1225
- rowIndex: args.rowIdx,
1226
- colIndex: args.idx,
1227
- cellKey: column.key,
1228
- event: e,
1229
- };
1230
- // istanbul ignore else
1231
- if (this.state.rows[args.rowIdx])
1232
- contextMenuArgs.cellItem = this._getCellItem(this.state.rows[args.rowIdx].item, column.key);
1233
- e.preventDefault();
1234
- this.props.onCellContextMenu(contextMenuArgs);
1235
- }
1236
- }
1237
- activateCellEditor(rowIndex, colIndex, cellKey) {
1238
- const cellEditorState = { active: true, rowIndex, colIndex, cellKey };
1239
- // istanbul ignore else
1240
- if (cellEditorState !== this.state.cellEditorState) {
1241
- this.setState({ cellEditorState }, () => {
1242
- // istanbul ignore else
1243
- if (this.props.onPropertyEditing)
1244
- this.props.onPropertyEditing(cellEditorState);
1245
- });
1246
- }
1247
- }
1248
- /** @internal */
1249
- shouldComponentUpdate(_props) {
1250
- return true;
1251
- }
1252
- _isShowFilterRow() {
1253
- return this.state.columns.some((tableColumn) => tableColumn.filterable);
1254
- }
1255
- /** Turn on/off filter row */
1256
- toggleFilterRow(showFilter) {
1257
- // istanbul ignore else
1258
- if (this._gridRef.current) {
1259
- const grid = this._gridRef.current;
1260
- // istanbul ignore else
1261
- if (grid.onToggleFilter && showFilter !== this._filterRowShown) {
1262
- grid.onToggleFilter();
1263
- this._filterRowShown = showFilter;
1264
- }
1265
- }
1266
- }
1267
- /** Gets the filter descriptors for the table.
1268
- * @internal
1269
- */
1270
- get filterDescriptors() {
1271
- if (undefined === this._filterDescriptors) {
1272
- this._filterDescriptors = new TableFilterDescriptorCollection_1.TableFilterDescriptorCollection();
1273
- this._filterDescriptors.logicalOperator = ColumnFiltering_1.FilterCompositionLogicalOperator.And;
1274
- }
1275
- return this._filterDescriptors;
1276
- }
1277
- /** Gets ECExpression to get property display value.
1278
- * @internal
1279
- */
1280
- // istanbul ignore next
1281
- getPropertyDisplayValueExpression(property) {
1282
- if (this.props.dataProvider.getPropertyDisplayValueExpression !== undefined)
1283
- return this.props.dataProvider.getPropertyDisplayValueExpression(property);
1284
- return property;
1285
- }
1286
- /** Determines if focus is in an input element - for filter checking */
1287
- isFocusOnInputElement() {
1288
- const element = document.activeElement;
1289
- return element &&
1290
- (element instanceof HTMLInputElement ||
1291
- element instanceof HTMLSelectElement ||
1292
- element instanceof HTMLTextAreaElement);
1293
- }
1294
- /** @internal */
1295
- render() {
1296
- const rowRenderer = React.createElement(TableRowRenderer, { rowRendererCreator: () => this._createRowRenderer() });
1297
- const visibleColumns = this._getVisibleColumns();
1298
- const tableClassName = (0, classnames_1.default)("components-table", "components-smallEditor-host", this.props.className, {
1299
- "hide-header": this.props.hideHeader,
1300
- "striped-rows": this.props.stripedRows,
1301
- "row-selection": this._tableSelectionTarget === TableSelectionTarget.Row,
1302
- "cell-selection": this._tableSelectionTarget === TableSelectionTarget.Cell,
1303
- });
1304
- return (React.createElement(React.Fragment, null,
1305
- React.createElement("div", { className: tableClassName, style: this.props.style, onMouseDown: this._onMouseDown, onContextMenu: this.props.showHideColumns ? this._handleShowHideContextMenu : undefined, onKeyDown: this._onKeyDown, onKeyUp: this._onKeyUp, role: "presentation" },
1306
- this.props.showHideColumns &&
1307
- React.createElement(ShowHideMenu_1.ShowHideMenu, { opened: this.state.menuVisible, items: this.state.columns.map((column) => ({ id: column.key, label: column.reactDataGridColumn.name })), x: this.state.menuX, y: this.state.menuY, initialHidden: this.state.hiddenColumns, onClose: this._hideContextMenu, onShowHideChange: this._handleShowHideChange }),
1308
- React.createElement(core_react_1.ElementResizeObserver, { watchedElement: this.state.gridContainer, render: ({ width, height }) => {
1309
- setTimeout(() => this._queuePokeScroll());
1310
- return (React.createElement(react_data_grid_1.default, { ref: this._gridRef, columns: visibleColumns, rowGetter: this._rowGetter, rowRenderer: rowRenderer, rowsCount: this.state.rowsCount, ...(this.props.reorderableColumns ? {
1311
- draggableHeaderCell: DragDropHeaderCell_1.DragDropHeaderCell,
1312
- onHeaderDrop: this._onHeaderDrop,
1313
- } : {}), minHeight: height, minWidth: width, headerRowHeight: TABLE_ROW_HEIGHT, rowHeight: TABLE_ROW_HEIGHT, onGridSort: this._handleGridSort, enableRowSelect: null, onAddFilter: this._handleFilterChange, onClearFilters: this._handleOnClearFilters, headerFiltersHeight: TABLE_FILTER_ROW_HEIGHT, getValidFilterValues: this._getValidFilterValues, onScroll: this._onScroll }));
1314
- } })),
1315
- React.createElement("div", { ref: this._tableRef }, this.state.dialog
1316
- ?
1317
- // istanbul ignore next
1318
- React.createElement(core_react_1.Dialog, { opened: true, onClose: this._onDialogClose, title: this.state.dialog.title, height: "50vh" }, this.state.dialog.content)
1319
- : undefined)));
1320
- }
1321
- }
1322
- exports.Table = Table;
1323
- /**
1324
- * Default component for rendering a row for the Table
1325
- * @internal
1326
- */
1327
- class TableRow extends React.Component {
1328
- /** @internal */
1329
- render() {
1330
- const { cells, isSelected, ...props } = this.props;
1331
- return (React.createElement(react_data_grid_1.default.Row, { ...props, row: cells, isSelected: isSelected }));
1332
- }
1333
- }
1334
- exports.TableRow = TableRow;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /* eslint-disable deprecation/deprecation */
7
+ /** @packageDocumentation
8
+ * @module Table
9
+ */
10
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ var __importDefault = (this && this.__importDefault) || function (mod) {
30
+ return (mod && mod.__esModule) ? mod : { "default": mod };
31
+ };
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.TableRow = exports.Table = exports.TableSelectionTarget = void 0;
34
+ require("./Table.scss");
35
+ require("../columnfiltering/ColumnFiltering.scss");
36
+ const classnames_1 = __importDefault(require("classnames"));
37
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
38
+ const lodash_1 = require("lodash");
39
+ const React = __importStar(require("react"));
40
+ const react_data_grid_1 = __importDefault(require("react-data-grid"));
41
+ const core_bentley_1 = require("@itwin/core-bentley");
42
+ const appui_abstract_1 = require("@itwin/appui-abstract");
43
+ const core_react_1 = require("@itwin/core-react");
44
+ const SelectionHandler_1 = require("../../common/selection/SelectionHandler");
45
+ const SelectionModes_1 = require("../../common/selection/SelectionModes");
46
+ const ShowHideMenu_1 = require("../../common/showhide/ShowHideMenu");
47
+ const TypeConverterManager_1 = require("../../converters/TypeConverterManager");
48
+ const ItemStyle_1 = require("../../properties/ItemStyle");
49
+ const ValueRendererManager_1 = require("../../properties/ValueRendererManager");
50
+ const ColumnFiltering_1 = require("../columnfiltering/ColumnFiltering");
51
+ const MultiSelectFilter_1 = require("../columnfiltering/data-grid-addons/MultiSelectFilter");
52
+ const NumericFilter_1 = require("../columnfiltering/data-grid-addons/NumericFilter");
53
+ const SingleSelectFilter_1 = require("../columnfiltering/data-grid-addons/SingleSelectFilter");
54
+ const DataGridFilterParser_1 = require("../columnfiltering/DataGridFilterParser");
55
+ const MultiValueFilter_1 = require("../columnfiltering/multi-value-filter/MultiValueFilter");
56
+ const TableFilterDescriptorCollection_1 = require("../columnfiltering/TableFilterDescriptorCollection");
57
+ const TableDataProvider_1 = require("../TableDataProvider");
58
+ const DragDropHeaderCell_1 = require("./DragDropHeaderCell");
59
+ const TableCell_1 = require("./TableCell");
60
+ const TableColumn_1 = require("./TableColumn");
61
+ // cspell:ignore Overscan columnfiltering Dedupe popout
62
+ const TABLE_ROW_HEIGHT = 27;
63
+ const TABLE_FILTER_ROW_HEIGHT = 32;
64
+ /**
65
+ * Specifies table selection target.
66
+ * @deprecated in 3.0. Use the Table component in @itwin/itwinui-react instead, which does not use this enum.
67
+ * @public
68
+ */
69
+ var TableSelectionTarget;
70
+ (function (TableSelectionTarget) {
71
+ TableSelectionTarget[TableSelectionTarget["Row"] = 0] = "Row";
72
+ TableSelectionTarget[TableSelectionTarget["Cell"] = 1] = "Cell";
73
+ })(TableSelectionTarget = exports.TableSelectionTarget || (exports.TableSelectionTarget = {}));
74
+ /** Scroll Direction */
75
+ var SCROLL_DIRECTION;
76
+ (function (SCROLL_DIRECTION) {
77
+ SCROLL_DIRECTION["UP"] = "upwards";
78
+ SCROLL_DIRECTION["DOWN"] = "downwards";
79
+ SCROLL_DIRECTION["LEFT"] = "left";
80
+ SCROLL_DIRECTION["RIGHT"] = "right";
81
+ SCROLL_DIRECTION["NONE"] = "none";
82
+ })(SCROLL_DIRECTION || (SCROLL_DIRECTION = {}));
83
+ const initialState = {
84
+ columns: [],
85
+ hiddenColumns: [],
86
+ rows: [],
87
+ rowsCount: 0,
88
+ cellEditorState: { active: false },
89
+ menuVisible: false,
90
+ menuX: 0,
91
+ menuY: 0,
92
+ gridContainer: null,
93
+ };
94
+ /** ReactDataGrid requires a class component for the RowRenderer because it sets a ref to it. */
95
+ class TableRowRenderer extends React.Component {
96
+ render() {
97
+ const creatorFn = this.props.rowRendererCreator();
98
+ return creatorFn(this.props);
99
+ }
100
+ }
101
+ /**
102
+ * Table React component that displays rows and columns in a grid along with a header
103
+ * @deprecated in 3.0. Use the Table component in @itwin/itwinui-react instead, which does not use this class.
104
+ * @public
105
+ */
106
+ class Table extends React.Component {
107
+ /** @internal */
108
+ constructor(props) {
109
+ super(props);
110
+ this._pageAmount = 100;
111
+ this._disposableListeners = new core_bentley_1.DisposableList();
112
+ this._isMounted = false;
113
+ this._currentUpdate = 0 /* None */;
114
+ this._pendingUpdate = 0 /* None */;
115
+ this._rowLoadGuid = core_bentley_1.Guid.createValue();
116
+ this._selectedRowIndices = new Set();
117
+ this._selectedCellKeys = new Map(); // column keys -> rowIndices
118
+ this._pressedItemSelected = false;
119
+ this._tableRef = React.createRef();
120
+ this._gridRef = React.createRef();
121
+ this._gridContainerRef = React.createRef();
122
+ this._filterRowShown = false;
123
+ this._topRowIndex = 0;
124
+ this._pokeScrollTimer = new core_react_1.Timer(100);
125
+ /** @internal */
126
+ this.state = initialState;
127
+ this._onRowsSelected = (rowIndices, replace) => {
128
+ if (this.props.onRowsSelected)
129
+ this.props.onRowsSelected(this.createRowIterator(rowIndices), replace); // eslint-disable-line @typescript-eslint/no-floating-promises
130
+ };
131
+ this._onRowsDeselected = (rowIndices) => {
132
+ if (this.props.onRowsDeselected)
133
+ this.props.onRowsDeselected(this.createRowIterator(rowIndices)); // eslint-disable-line @typescript-eslint/no-floating-promises
134
+ };
135
+ this._onCellsSelected = (cellKeys, replace) => {
136
+ if (this.props.onCellsSelected)
137
+ this.props.onCellsSelected(this.createCellIterator(cellKeys), replace); // eslint-disable-line @typescript-eslint/no-floating-promises
138
+ };
139
+ this._onCellsDeselected = (cellKeys) => {
140
+ if (this.props.onCellsDeselected)
141
+ this.props.onCellsDeselected(this.createCellIterator(cellKeys)); // eslint-disable-line @typescript-eslint/no-floating-promises
142
+ };
143
+ this._onColumnsChanged = async () => {
144
+ await this.updateColumns();
145
+ this._cellItemSelectionHandlers = undefined;
146
+ };
147
+ // Workaround for react-data-grid bug that shows blank grid when updating after grid has been scrolled.
148
+ // Force a re-render by scrolling up 1 then down 1
149
+ this._pokeScrollAfterUpdate = () => {
150
+ // istanbul ignore else
151
+ if (this._gridRef.current && this._topRowIndex !== 0) {
152
+ const grid = this._gridRef.current;
153
+ // istanbul ignore else
154
+ if (grid.getRowOffsetHeight && grid.getDataGridDOMNode) {
155
+ const gridCanvas = grid.getDataGridDOMNode().querySelector(".react-grid-Canvas");
156
+ // Scroll up 1
157
+ let top = TABLE_ROW_HEIGHT * this._topRowIndex - 1;
158
+ gridCanvas.scrollTop = top;
159
+ // Scroll back down
160
+ top = TABLE_ROW_HEIGHT * this._topRowIndex;
161
+ gridCanvas.scrollTop = top;
162
+ }
163
+ }
164
+ };
165
+ this._queuePokeScroll = () => {
166
+ this._unsetPokeScrollTimeout();
167
+ this._pokeScrollTimer.setOnExecute(() => { this._pokeScrollAfterUpdate(); });
168
+ this._pokeScrollTimer.start();
169
+ };
170
+ this._unsetPokeScrollTimeout = () => {
171
+ this._pokeScrollTimer.stop();
172
+ };
173
+ this._onRowsChanged = async () => {
174
+ await this.updateRows();
175
+ this._queuePokeScroll();
176
+ };
177
+ this._columnDescriptionToReactDataGridColumn = (columnDescription) => {
178
+ const isEditable = !!columnDescription.editable;
179
+ const column = {
180
+ key: columnDescription.key,
181
+ name: columnDescription.label,
182
+ icon: columnDescription.icon,
183
+ width: columnDescription.width,
184
+ resizable: !!columnDescription.resizable,
185
+ sortable: !!columnDescription.sortable,
186
+ draggable: !!this.props.reorderableColumns,
187
+ filterable: !!columnDescription.filterable,
188
+ };
189
+ column.events = {};
190
+ if (this.props.onCellContextMenu) {
191
+ column.events.onContextMenu = this.cellContextMenu.bind(this, column);
192
+ }
193
+ if (isEditable) {
194
+ column.events.onClick = this.cellEditOnClick.bind(this, column);
195
+ }
196
+ if (columnDescription.filterRenderer !== undefined) {
197
+ switch (columnDescription.filterRenderer) {
198
+ case TableDataProvider_1.FilterRenderer.Numeric:
199
+ column.filterRenderer = NumericFilter_1.NumericFilter;
200
+ break;
201
+ case TableDataProvider_1.FilterRenderer.MultiSelect:
202
+ column.filterRenderer = MultiSelectFilter_1.MultiSelectFilter;
203
+ break;
204
+ case TableDataProvider_1.FilterRenderer.MultiValue:
205
+ column.filterRenderer = MultiValueFilter_1.MultiValueFilter;
206
+ break;
207
+ case TableDataProvider_1.FilterRenderer.SingleSelect:
208
+ column.filterRenderer = SingleSelectFilter_1.SingleSelectFilter;
209
+ break;
210
+ case TableDataProvider_1.FilterRenderer.Text:
211
+ // column.filterRenderer is not set for the Text input filter
212
+ break;
213
+ }
214
+ }
215
+ return column;
216
+ };
217
+ this._getCellItem = (row, columnKey) => {
218
+ return row.cells.find((cell) => cell.key === columnKey) || /* istanbul ignore next */ { key: columnKey };
219
+ };
220
+ this._rowComponentSelectionHandler = {
221
+ deselectAll: () => {
222
+ this._selectedRowIndices = new Set();
223
+ if (!this._pressedItemSelected) {
224
+ this._deactivateCellEditor();
225
+ this.forceUpdate();
226
+ }
227
+ },
228
+ selectBetween: (rowIndex1, rowIndex2) => {
229
+ const selections = [];
230
+ const lowerNumber = rowIndex1 < rowIndex2 ? rowIndex1 : rowIndex2;
231
+ const higherNumber = rowIndex1 > rowIndex2 ? rowIndex1 : rowIndex2;
232
+ for (let i = lowerNumber; i <= higherNumber; i++) {
233
+ // istanbul ignore else
234
+ if (!this._selectedRowIndices.has(i)) {
235
+ selections.push(i);
236
+ this._selectedRowIndices.add(i);
237
+ }
238
+ }
239
+ this.forceUpdate();
240
+ return selections;
241
+ },
242
+ updateSelection: (selections, deselections) => {
243
+ for (const rowIndex of selections) {
244
+ // istanbul ignore else
245
+ if (!this._selectedRowIndices.has(rowIndex))
246
+ this._selectedRowIndices.add(rowIndex);
247
+ }
248
+ for (const rowIndex of deselections) {
249
+ // istanbul ignore else
250
+ if (this._selectedRowIndices.has(rowIndex))
251
+ this._selectedRowIndices.delete(rowIndex);
252
+ }
253
+ this.forceUpdate();
254
+ },
255
+ areEqual: (item1, item2) => item1 === item2,
256
+ };
257
+ this._cellComponentSelectionHandler = {
258
+ deselectAll: () => {
259
+ this._selectedCellKeys = new Map();
260
+ this.forceUpdate();
261
+ },
262
+ selectBetween: (item1, item2) => {
263
+ const selections = [];
264
+ const lowerIndex = item1.rowIndex < item2.rowIndex ? item1.rowIndex : item2.rowIndex;
265
+ const higherIndex = item1.rowIndex > item2.rowIndex ? item1.rowIndex : item2.rowIndex;
266
+ let secondItem;
267
+ let firstItemFound = false;
268
+ let secondItemFound = false;
269
+ for (let rowIndex = lowerIndex; rowIndex <= higherIndex; rowIndex++) {
270
+ for (const column of this.state.columns) {
271
+ if (!firstItemFound) {
272
+ if (rowIndex === item1.rowIndex && column.key === item1.columnKey) {
273
+ firstItemFound = true;
274
+ secondItem = item2;
275
+ }
276
+ else {
277
+ // istanbul ignore else
278
+ if (rowIndex === item2.rowIndex && column.key === item2.columnKey) {
279
+ firstItemFound = true;
280
+ secondItem = item1;
281
+ }
282
+ else
283
+ continue;
284
+ }
285
+ }
286
+ const cellKey = { rowIndex, columnKey: column.key };
287
+ if (!this.isCellSelected(cellKey))
288
+ selections.push(cellKey);
289
+ if (rowIndex === secondItem.rowIndex && column.key === secondItem.columnKey) {
290
+ secondItemFound = true;
291
+ break;
292
+ }
293
+ }
294
+ if (secondItemFound)
295
+ break;
296
+ }
297
+ this.selectCells(selections);
298
+ this.forceUpdate();
299
+ return selections;
300
+ },
301
+ updateSelection: (selections, deselections) => {
302
+ this.selectCells(selections);
303
+ this.deselectCells(deselections);
304
+ this.forceUpdate();
305
+ },
306
+ areEqual: (item1, item2) => item1.rowIndex === item2.rowIndex && item1.columnKey === item2.columnKey,
307
+ };
308
+ this._rowGetter = (i) => {
309
+ if (this.state.rows[i])
310
+ return this.state.rows[i];
311
+ // get another page of rows
312
+ // note: always start loading at the beginning of a page to avoid
313
+ // requesting duplicate data (e.g. a page that starts at 0, at 1, at 2, ...)
314
+ this._rowGetterAsync(i - (i % this._pageAmount)); // eslint-disable-line @typescript-eslint/no-floating-promises
315
+ // Return placeholder object
316
+ return { item: { key: "", cells: [] }, index: i, cells: {} };
317
+ };
318
+ this._rowGetterAsync = (0, lodash_1.memoize)(async (index) => {
319
+ // istanbul ignore next
320
+ if (index < 0)
321
+ return;
322
+ // load up to `this._pageAmount` more rows
323
+ const maxIndex = Math.min(this.state.rowsCount, index + this._pageAmount);
324
+ const loadResult = await this.loadRows(index, maxIndex);
325
+ // istanbul ignore next
326
+ if (!this._isMounted)
327
+ return;
328
+ // istanbul ignore next
329
+ if (this._pendingUpdate !== 0 /* None */)
330
+ return;
331
+ const selectedRowIndices = this._selectedRowIndices;
332
+ for (const rowIndex of loadResult.selectedRowIndices) {
333
+ // istanbul ignore else
334
+ if (!selectedRowIndices.has(rowIndex))
335
+ selectedRowIndices.add(rowIndex);
336
+ }
337
+ this._selectedRowIndices = selectedRowIndices;
338
+ this.selectCells(loadResult.selectedCellKeys);
339
+ this.setState((prev) => {
340
+ const rows = [...prev.rows];
341
+ loadResult.rows.forEach((r, i) => { rows[index + i] = r; });
342
+ return { rows };
343
+ }, async () => {
344
+ if (this.props.onRowsLoaded)
345
+ this.props.onRowsLoaded(index, index + loadResult.rows.length - 1);
346
+ const showFilter = this._isShowFilterRow();
347
+ if (showFilter !== this._filterRowShown)
348
+ this.toggleFilterRow(showFilter);
349
+ });
350
+ });
351
+ this._handleGridSort = (columnKey, sortDirection) => {
352
+ let directionEnum;
353
+ switch (sortDirection) {
354
+ case "ASC":
355
+ directionEnum = core_react_1.SortDirection.Ascending;
356
+ break;
357
+ case "DESC":
358
+ directionEnum = core_react_1.SortDirection.Descending;
359
+ break;
360
+ case "NONE":
361
+ default:
362
+ directionEnum = core_react_1.SortDirection.NoSort;
363
+ break;
364
+ }
365
+ // Sort the column
366
+ this.gridSortAsync(columnKey, directionEnum); // eslint-disable-line @typescript-eslint/no-floating-promises
367
+ this._queuePokeScroll();
368
+ };
369
+ this._createRowRenderer = () => {
370
+ return (props) => {
371
+ // istanbul ignore next
372
+ const renderRow = this.props.renderRow ? this.props.renderRow : this.renderRow;
373
+ const { row: rowProps, ...reactDataGridRowProps } = props;
374
+ if (this._tableSelectionTarget === TableSelectionTarget.Row) {
375
+ const selectionFunction = this._rowSelectionHandler.createSelectionFunction(this._rowComponentSelectionHandler, this.createRowItemSelectionHandler(props.row.index));
376
+ const onClick = (e) => selectionFunction(e.shiftKey, e.ctrlKey);
377
+ const onMouseDown = () => {
378
+ this._rowSelectionHandler.createDragAction(this._rowComponentSelectionHandler, [this.rowItemSelectionHandlers], props.row.index);
379
+ };
380
+ const onMouseMove = (e) => {
381
+ // istanbul ignore else
382
+ if (e.buttons === 1)
383
+ this._rowSelectionHandler.updateDragAction(props.row.index);
384
+ };
385
+ const isSelected = this._selectedRowIndices.has(props.row.index);
386
+ const cells = this.createRowCells(rowProps, isSelected);
387
+ const row = renderRow(rowProps.item, { ...reactDataGridRowProps, cells, isSelected });
388
+ return React.createElement("div", { className: (0, classnames_1.default)("components-table-row"), onClickCapture: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown, style: props.row.style, role: "presentation" }, row);
389
+ }
390
+ else {
391
+ const cells = this.createRowCells(rowProps, false);
392
+ return renderRow(rowProps.item, { ...reactDataGridRowProps, cells });
393
+ }
394
+ };
395
+ };
396
+ // eslint-disable-next-line @typescript-eslint/naming-convention
397
+ this.renderRow = (item, props) => {
398
+ return React.createElement(TableRow, { key: item.key, ...props });
399
+ };
400
+ this._onMouseUp = () => {
401
+ if (this._tableSelectionTarget === TableSelectionTarget.Row)
402
+ this._rowSelectionHandler.completeDragAction();
403
+ else
404
+ this._cellSelectionHandler.completeDragAction();
405
+ };
406
+ this._onMouseDown = () => {
407
+ document.addEventListener("mouseup", this._onMouseUp, { capture: true, once: true });
408
+ };
409
+ this._onHeaderDrop = (source, target) => {
410
+ const cols = [...this.state.columns];
411
+ const columnSourceIndex = this.state.columns.findIndex((i) => i.key === source);
412
+ const columnTargetIndex = this.state.columns.findIndex((i) => i.key === target);
413
+ cols.splice(columnTargetIndex, 0, cols.splice(columnSourceIndex, 1)[0]);
414
+ // istanbul ignore else
415
+ if (this.props.settingsIdentifier) {
416
+ const stateStorage = this.props.settingsStorage || /* istanbul ignore next */ new core_react_1.LocalStateStorage();
417
+ const keys = cols.map((col) => col.key);
418
+ stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnReorder", keys); // eslint-disable-line @typescript-eslint/no-floating-promises
419
+ }
420
+ this.setState({ columns: [] }, () => {
421
+ this.setState({ columns: cols });
422
+ });
423
+ };
424
+ this._deactivateCellEditor = () => {
425
+ if (this.state.cellEditorState.active)
426
+ this.setState({ cellEditorState: { active: false } }, () => setTimeout(() => this.setFocusToSelected()));
427
+ };
428
+ this._onCellCommit = async (args) => {
429
+ // istanbul ignore else
430
+ if (this.props.onPropertyUpdated) {
431
+ const cellUpdatedArgs = {
432
+ rowIndex: this.state.cellEditorState.rowIndex,
433
+ colIndex: this.state.cellEditorState.colIndex,
434
+ cellKey: this.state.cellEditorState.cellKey,
435
+ };
436
+ const allowed = await this.props.onPropertyUpdated(args, cellUpdatedArgs);
437
+ // istanbul ignore else
438
+ if (allowed && this.state.cellEditorState.rowIndex !== undefined && this.state.cellEditorState.rowIndex >= 0) {
439
+ this._deactivateCellEditor();
440
+ await this.updateRows();
441
+ }
442
+ else {
443
+ this._deactivateCellEditor();
444
+ }
445
+ }
446
+ };
447
+ this._getVisibleColumns = () => {
448
+ return this.state.columns
449
+ .filter((tableColumn) => this.state.hiddenColumns.indexOf(tableColumn.key) === -1)
450
+ .map((tableColumn) => tableColumn.reactDataGridColumn);
451
+ };
452
+ this._handleShowHideContextMenu = (e) => {
453
+ const header = e.currentTarget.querySelector(".react-grid-Header");
454
+ // istanbul ignore else
455
+ if (header) {
456
+ const headerRect = header.getBoundingClientRect();
457
+ const offsetY = headerRect.top;
458
+ const height = headerRect.height;
459
+ const x = e.clientX, y = e.clientY;
460
+ // istanbul ignore else
461
+ if (y < offsetY + height) {
462
+ e.preventDefault();
463
+ this.setState({
464
+ menuX: x, menuY: y,
465
+ menuVisible: true,
466
+ });
467
+ }
468
+ }
469
+ };
470
+ this._hideContextMenu = () => {
471
+ // istanbul ignore else
472
+ if (this.props.showHideColumns)
473
+ this.setState({ menuVisible: false });
474
+ };
475
+ // istanbul ignore next
476
+ this._handleShowHideChange = (cols) => {
477
+ this.setState({ hiddenColumns: cols });
478
+ if (this.props.settingsIdentifier) {
479
+ const stateStorage = this.props.settingsStorage || new core_react_1.LocalStateStorage();
480
+ stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnShowHideHiddenColumns", cols); // eslint-disable-line @typescript-eslint/no-floating-promises
481
+ }
482
+ return true;
483
+ };
484
+ // istanbul ignore next
485
+ this._onDialogOpen = (dialogState) => this.setState({ dialog: dialogState });
486
+ // istanbul ignore next
487
+ this._onDialogClose = () => this.setState({ dialog: undefined });
488
+ this._handleFilterChange = (filter) => {
489
+ const columnKey = filter.column.key;
490
+ const tableColumn = this.state.columns.find((column) => column.key === columnKey);
491
+ // istanbul ignore else
492
+ if (tableColumn) {
493
+ setTimeout(async () => {
494
+ await DataGridFilterParser_1.DataGridFilterParser.handleFilterChange(filter, tableColumn.columnFilterDescriptor, tableColumn.columnDescription, this._applyFilter);
495
+ });
496
+ }
497
+ };
498
+ // istanbul ignore next
499
+ this._handleOnClearFilters = () => {
500
+ this.filterDescriptors.clear();
501
+ this._applyFilter(); // eslint-disable-line @typescript-eslint/no-floating-promises
502
+ };
503
+ this._applyFilter = async () => {
504
+ // istanbul ignore else
505
+ if (this.props.dataProvider.applyFilterDescriptors) {
506
+ await this.props.dataProvider.applyFilterDescriptors(this.filterDescriptors);
507
+ await this.updateRows();
508
+ // istanbul ignore else
509
+ if (this.props.onApplyFilter)
510
+ this.props.onApplyFilter();
511
+ }
512
+ };
513
+ // istanbul ignore next
514
+ this._getValidFilterValues = (columnKey) => {
515
+ const tableColumn = this.state.columns.find((column) => column.reactDataGridColumn.key === columnKey);
516
+ if (tableColumn && tableColumn.distinctValueCollection) {
517
+ return tableColumn.distinctValueCollection.values;
518
+ }
519
+ return [];
520
+ };
521
+ // TODO: Enable, when table gets refactored. Explanation in ./../table/NonPrimitiveValueRenderer
522
+ // private _onPopupShow = (popupState: PropertyPopupState) => this.setState({ popup: popupState });
523
+ // private _onPopupHide = () => this.setState({ popup: undefined });
524
+ // istanbul ignore next
525
+ this._onScroll = (scrollData) => {
526
+ this._topRowIndex = scrollData.rowVisibleStartIdx;
527
+ if (this.props.onScrollToRow)
528
+ this.props.onScrollToRow(scrollData.rowVisibleStartIdx);
529
+ };
530
+ this._onKeyboardEvent = (e, keyDown) => {
531
+ if ((0, core_react_1.isNavigationKey)(e.key) && !this.state.cellEditorState.active && !this.isFocusOnInputElement()) {
532
+ if (this._tableSelectionTarget === TableSelectionTarget.Row) {
533
+ const handleKeyboardSelectItem = (index) => {
534
+ const selectionFunction = this._rowSelectionHandler.createSelectionFunction(this._rowComponentSelectionHandler, this.createRowItemSelectionHandler(index));
535
+ selectionFunction(e.shiftKey, e.ctrlKey);
536
+ };
537
+ const handleKeyboardActivateItem = (index) => {
538
+ // istanbul ignore else
539
+ if (this.state.keyboardEditorCellKey) {
540
+ const columnIndex = this.getColumnIndexFromKey(this.state.keyboardEditorCellKey);
541
+ // istanbul ignore else
542
+ if (0 <= columnIndex && columnIndex < this.state.columns.length) {
543
+ const columnDescription = this.state.columns[columnIndex].columnDescription;
544
+ // istanbul ignore else
545
+ if (columnDescription && columnDescription.editable)
546
+ this.activateCellEditor(index, columnIndex, this.state.keyboardEditorCellKey);
547
+ }
548
+ }
549
+ };
550
+ const handleCrossAxisArrowKey = (forward) => {
551
+ // istanbul ignore else
552
+ if (this.state.keyboardEditorCellKey) {
553
+ let newEditorCellKey;
554
+ const columnIndex = this.getColumnIndexFromKey(this.state.keyboardEditorCellKey);
555
+ // istanbul ignore else
556
+ if (columnIndex >= 0) {
557
+ let newColIndex = columnIndex;
558
+ while (!newEditorCellKey) {
559
+ if (forward)
560
+ newColIndex++;
561
+ else
562
+ newColIndex--;
563
+ if (newColIndex < 0)
564
+ newColIndex = this.state.columns.length - 1;
565
+ else if (newColIndex >= this.state.columns.length)
566
+ newColIndex = 0;
567
+ // istanbul ignore next
568
+ if (newColIndex === columnIndex)
569
+ break;
570
+ const isEditable = this.state.columns[newColIndex].columnDescription.editable;
571
+ if (isEditable)
572
+ newEditorCellKey = this.state.columns[newColIndex].key;
573
+ }
574
+ // istanbul ignore else
575
+ if (newEditorCellKey)
576
+ this.setState({ keyboardEditorCellKey: newEditorCellKey });
577
+ }
578
+ }
579
+ };
580
+ const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
581
+ itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
582
+ itemKeyboardNavigator.allowWrap = false;
583
+ itemKeyboardNavigator.itemCount = this.state.rowsCount;
584
+ itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
585
+ const processedRow = this._rowSelectionHandler.processedItem ? this._rowSelectionHandler.processedItem /* istanbul ignore next */ : 0;
586
+ keyDown ?
587
+ itemKeyboardNavigator.handleKeyDownEvent(e, processedRow) :
588
+ itemKeyboardNavigator.handleKeyUpEvent(e, processedRow);
589
+ }
590
+ else {
591
+ const handleKeyboardSelectItem = (index) => {
592
+ const processedCell = this._cellSelectionHandler.processedItem;
593
+ // istanbul ignore else
594
+ if (processedCell) {
595
+ const cellKey = { rowIndex: index, columnKey: processedCell.columnKey };
596
+ const selectionHandler = this.createCellItemSelectionHandler(cellKey);
597
+ const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
598
+ selectionFunction(e.shiftKey, e.ctrlKey);
599
+ }
600
+ };
601
+ const handleKeyboardActivateItem = (index) => {
602
+ const processedCell = this._cellSelectionHandler.processedItem;
603
+ // istanbul ignore else
604
+ if (processedCell) {
605
+ const columnIndex = this.getColumnIndexFromKey(processedCell.columnKey);
606
+ // istanbul ignore else
607
+ if (0 <= columnIndex && columnIndex < this.state.columns.length) {
608
+ const columnDescription = this.state.columns[columnIndex].columnDescription;
609
+ // istanbul ignore else
610
+ if (columnDescription && columnDescription.editable)
611
+ this.activateCellEditor(index, columnIndex, processedCell.columnKey);
612
+ }
613
+ }
614
+ };
615
+ const handleCrossAxisArrowKey = (forward) => {
616
+ const processedCell = this._cellSelectionHandler.processedItem;
617
+ // istanbul ignore else
618
+ if (processedCell) {
619
+ const columnIndex = this.getColumnIndexFromKey(processedCell.columnKey);
620
+ // istanbul ignore else
621
+ if (columnIndex >= 0) {
622
+ let newColIndex = columnIndex;
623
+ if (forward)
624
+ newColIndex++;
625
+ else
626
+ newColIndex--;
627
+ if (newColIndex < 0)
628
+ newColIndex = this.state.columns.length - 1;
629
+ else if (newColIndex >= this.state.columns.length)
630
+ newColIndex = 0;
631
+ const columnKey = this.state.columns[newColIndex].key;
632
+ const cellKey = { rowIndex: processedCell.rowIndex, columnKey };
633
+ const selectionHandler = this.createCellItemSelectionHandler(cellKey);
634
+ const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
635
+ selectionFunction(e.shiftKey, e.ctrlKey);
636
+ }
637
+ }
638
+ };
639
+ const itemKeyboardNavigator = new core_react_1.ItemKeyboardNavigator(handleKeyboardSelectItem, handleKeyboardActivateItem);
640
+ itemKeyboardNavigator.orientation = core_react_1.Orientation.Vertical;
641
+ itemKeyboardNavigator.allowWrap = false;
642
+ itemKeyboardNavigator.itemCount = this.state.rowsCount;
643
+ itemKeyboardNavigator.crossAxisArrowKeyHandler = handleCrossAxisArrowKey;
644
+ const processedRow = this._cellSelectionHandler.processedItem ? this._cellSelectionHandler.processedItem.rowIndex : /* istanbul ignore next */ 0;
645
+ keyDown ?
646
+ itemKeyboardNavigator.handleKeyDownEvent(e, processedRow) :
647
+ itemKeyboardNavigator.handleKeyUpEvent(e, processedRow);
648
+ }
649
+ }
650
+ };
651
+ this._onKeyDown = (e) => this._onKeyboardEvent(e, true);
652
+ this._onKeyUp = (e) => this._onKeyboardEvent(e, false);
653
+ if (props.pageAmount)
654
+ this._pageAmount = props.pageAmount;
655
+ this._disposableListeners.add(props.dataProvider.onColumnsChanged.addListener(this._onColumnsChanged));
656
+ this._disposableListeners.add(props.dataProvider.onRowsChanged.addListener(this._onRowsChanged));
657
+ this._rowSelectionHandler = new SelectionHandler_1.SelectionHandler(props.selectionMode ? props.selectionMode : SelectionModes_1.SelectionMode.Single);
658
+ this._cellSelectionHandler = new SelectionHandler_1.SelectionHandler(props.selectionMode ? props.selectionMode : SelectionModes_1.SelectionMode.Single);
659
+ this._rowSelectionHandler.onItemsSelectedCallback = this._onRowsSelected;
660
+ this._rowSelectionHandler.onItemsDeselectedCallback = this._onRowsDeselected;
661
+ this._cellSelectionHandler.onItemsSelectedCallback = this._onCellsSelected;
662
+ this._cellSelectionHandler.onItemsDeselectedCallback = this._onCellsDeselected;
663
+ }
664
+ // eslint-disable-next-line @typescript-eslint/naming-convention
665
+ get rowItemSelectionHandlers() {
666
+ // istanbul ignore else
667
+ if (!this._rowItemSelectionHandlers) {
668
+ this._rowItemSelectionHandlers = [];
669
+ for (let i = 0; i < this.state.rowsCount; i++)
670
+ this._rowItemSelectionHandlers.push(this.createRowItemSelectionHandler(i));
671
+ }
672
+ return this._rowItemSelectionHandlers;
673
+ }
674
+ // eslint-disable-next-line @typescript-eslint/naming-convention
675
+ get cellItemSelectionHandlers() {
676
+ // istanbul ignore else
677
+ if (!this._cellItemSelectionHandlers) {
678
+ this._cellItemSelectionHandlers = [];
679
+ for (let rowIndex = 0; rowIndex < this.state.rowsCount; rowIndex++) {
680
+ this._cellItemSelectionHandlers[rowIndex] = [];
681
+ for (const column of this.state.columns) {
682
+ this._cellItemSelectionHandlers[rowIndex].push(this.createCellItemSelectionHandler({ rowIndex, columnKey: column.key }));
683
+ }
684
+ }
685
+ }
686
+ return this._cellItemSelectionHandlers;
687
+ }
688
+ async *createRowIterator(rowIndices) {
689
+ for (const index of rowIndices)
690
+ yield await this.props.dataProvider.getRow(index);
691
+ }
692
+ async *createCellIterator(cellKeys) {
693
+ for (const key of cellKeys) {
694
+ const row = await this.props.dataProvider.getRow(key.rowIndex);
695
+ yield [row, this._getCellItem(row, key.columnKey)];
696
+ }
697
+ }
698
+ get _tableSelectionTarget() {
699
+ return this.props.tableSelectionTarget ? this.props.tableSelectionTarget : TableSelectionTarget.Row;
700
+ }
701
+ /** @internal */
702
+ componentDidUpdate(previousProps, previousState) {
703
+ this._rowSelectionHandler.selectionMode = this.props.selectionMode ? this.props.selectionMode : SelectionModes_1.SelectionMode.Single;
704
+ this._cellSelectionHandler.selectionMode = this.props.selectionMode ? this.props.selectionMode : SelectionModes_1.SelectionMode.Single;
705
+ if (previousProps.dataProvider !== this.props.dataProvider) {
706
+ this._disposableListeners.dispose();
707
+ this._disposableListeners.add(this.props.dataProvider.onColumnsChanged.addListener(this._onColumnsChanged));
708
+ this._disposableListeners.add(this.props.dataProvider.onRowsChanged.addListener(this._onRowsChanged));
709
+ }
710
+ if (this.props.dataProvider !== previousProps.dataProvider) {
711
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
712
+ this.update();
713
+ return;
714
+ }
715
+ // When hiddenColumns length is changed, we need to re-render component so that cell widths would be calculated appropriately.
716
+ if (previousState.hiddenColumns.length !== this.state.hiddenColumns.length)
717
+ this.forceUpdate();
718
+ if (this.props.isCellSelected !== previousProps.isCellSelected
719
+ || this.props.isRowSelected !== previousProps.isRowSelected
720
+ || this.props.tableSelectionTarget !== previousProps.tableSelectionTarget) {
721
+ this.updateSelectedRows();
722
+ this.updateSelectedCells();
723
+ }
724
+ if (this.props.scrollToRow !== previousProps.scrollToRow) {
725
+ // istanbul ignore else
726
+ if (this.props.scrollToRow !== undefined)
727
+ this.scrollToRow(this.props.scrollToRow);
728
+ }
729
+ /* istanbul ignore next */
730
+ if (this.props.onRender)
731
+ this.props.onRender();
732
+ }
733
+ /** @internal */
734
+ componentDidMount() {
735
+ let gridContainer = null;
736
+ this._isMounted = true;
737
+ // The previously used ReactResizeDetector, which does not work in popout/child windows, used deprecated React.findDomNode
738
+ // which is now deprecated so, so new ElementResizeObserver requires you to pass the element to observe. So get the
739
+ // same HTMLDivElement from grid as was used previously by ReactResizeDetector.
740
+ if (this._gridRef.current) {
741
+ const grid = this._gridRef.current;
742
+ gridContainer = grid.getDataGridDOMNode();
743
+ }
744
+ this.setState({ gridContainer }, () => {
745
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
746
+ this.update();
747
+ });
748
+ }
749
+ /** @internal */
750
+ componentWillUnmount() {
751
+ this._isMounted = false;
752
+ this._disposableListeners.dispose();
753
+ this._unsetPokeScrollTimeout();
754
+ }
755
+ scrollToRow(rowIndex) {
756
+ // istanbul ignore else
757
+ if (this._gridRef.current) {
758
+ const grid = this._gridRef.current;
759
+ // istanbul ignore else
760
+ if (grid.getRowOffsetHeight && grid.getDataGridDOMNode) {
761
+ const top = TABLE_ROW_HEIGHT * rowIndex;
762
+ const gridCanvas = grid.getDataGridDOMNode().querySelector(".react-grid-Canvas");
763
+ gridCanvas.scrollTop = top;
764
+ this._topRowIndex = rowIndex;
765
+ // istanbul ignore else
766
+ if (this.props.onScrollToRow)
767
+ this.props.onScrollToRow(rowIndex);
768
+ }
769
+ }
770
+ }
771
+ setFocusToSelected() {
772
+ // istanbul ignore next
773
+ if (this._gridRef.current) {
774
+ const grid = this._gridRef.current;
775
+ // istanbul ignore else
776
+ if (grid.getDataGridDOMNode) {
777
+ const gridSelected = grid.getDataGridDOMNode().querySelector(".rdg-selected");
778
+ // istanbul ignore else
779
+ if (gridSelected) {
780
+ gridSelected.focus();
781
+ }
782
+ }
783
+ }
784
+ }
785
+ async handlePendingUpdate() {
786
+ const update = this._pendingUpdate;
787
+ this._pendingUpdate = 0 /* None */;
788
+ let status = 0 /* Continue */;
789
+ if (update === 2 /* Complete */)
790
+ status = await this.updateColumns();
791
+ // istanbul ignore else
792
+ if (status === 0 /* Continue */ && update > 0 /* None */)
793
+ status = await this.updateRows();
794
+ return status;
795
+ }
796
+ async updateColumns() {
797
+ if (this._currentUpdate !== 0 /* None */) {
798
+ this._pendingUpdate = 2 /* Complete */;
799
+ return 1 /* Abort */;
800
+ }
801
+ this._currentUpdate = 2 /* Complete */;
802
+ const columnDescriptions = await this.props.dataProvider.getColumns();
803
+ this._currentUpdate = 0 /* None */;
804
+ // istanbul ignore next
805
+ if (!this._isMounted)
806
+ return 1 /* Abort */;
807
+ if (this._pendingUpdate === 2 /* Complete */) {
808
+ await this.handlePendingUpdate();
809
+ return 1 /* Abort */;
810
+ }
811
+ let dataGridColumns = columnDescriptions.map(this._columnDescriptionToReactDataGridColumn);
812
+ if (this.props.settingsIdentifier) {
813
+ const stateStorage = this.props.settingsStorage || /* istanbul ignore next */ this.props.uiStateStorage || /* istanbul ignore next */ new core_react_1.LocalStateStorage();
814
+ const reorderResult = await stateStorage.getSetting(this.props.settingsIdentifier, "ColumnReorder");
815
+ // istanbul ignore next
816
+ if (reorderResult.status === core_react_1.UiStateStorageStatus.Success) {
817
+ const setting = reorderResult.setting;
818
+ // map columns according to the keys in columns, in the order of the loaded array of keys
819
+ dataGridColumns = setting.map((key) => dataGridColumns.filter((col) => col.key === key)[0]);
820
+ }
821
+ else if (reorderResult.status === core_react_1.UiStateStorageStatus.NotFound) {
822
+ const keys = columnDescriptions.map((col) => col.key);
823
+ await stateStorage.saveSetting(this.props.settingsIdentifier, "ColumnReorder", keys);
824
+ }
825
+ const showhideResult = await stateStorage.getSetting(this.props.settingsIdentifier, "ColumnShowHideHiddenColumns");
826
+ // istanbul ignore next
827
+ if (showhideResult.status === core_react_1.UiStateStorageStatus.Success) {
828
+ const hiddenColumns = showhideResult.setting;
829
+ this.setState({ hiddenColumns });
830
+ }
831
+ }
832
+ let keyboardEditorCellKey;
833
+ const tableColumns = dataGridColumns.map((dataGridColumn, index) => {
834
+ const tableColumn = new TableColumn_1.TableColumn(this, columnDescriptions[index], dataGridColumn);
835
+ tableColumn.dataProvider = this.props.dataProvider;
836
+ if (!keyboardEditorCellKey && tableColumn.columnDescription.editable)
837
+ keyboardEditorCellKey = tableColumn.key;
838
+ if (tableColumn.filterable)
839
+ dataGridColumn.filterableColumn = tableColumn;
840
+ return tableColumn;
841
+ });
842
+ for (const tableColumn of tableColumns) {
843
+ if (tableColumn.filterable)
844
+ tableColumn.distinctValueCollection = await tableColumn.getDistinctValues(this.props.maximumDistinctValues);
845
+ }
846
+ this.setState({ columns: tableColumns, keyboardEditorCellKey });
847
+ if (this._pendingUpdate !== 0 /* None */) {
848
+ return this.handlePendingUpdate();
849
+ }
850
+ return 0 /* Continue */;
851
+ }
852
+ async updateRows() {
853
+ if (this._currentUpdate !== 0 /* None */) {
854
+ if (this._pendingUpdate === 0 /* None */)
855
+ this._pendingUpdate = 1 /* Rows */;
856
+ return 1 /* Abort */;
857
+ }
858
+ this._currentUpdate = 1 /* Rows */;
859
+ const rowsCount = await this.props.dataProvider.getRowsCount();
860
+ this._currentUpdate = 0 /* None */;
861
+ // istanbul ignore next
862
+ if (!this._isMounted)
863
+ return 1 /* Abort */;
864
+ if (this._pendingUpdate !== 0 /* None */) {
865
+ return this.handlePendingUpdate();
866
+ }
867
+ if (rowsCount !== this.state.rowsCount) {
868
+ this._rowItemSelectionHandlers = undefined;
869
+ this._cellItemSelectionHandlers = undefined;
870
+ // when updating the rows with new data from dataProvider clear out existing selections
871
+ this._selectedRowIndices.clear();
872
+ this._selectedCellKeys.clear();
873
+ }
874
+ this._rowGetterAsync.cache.clear();
875
+ this.setState({ rowsCount, rows: [] });
876
+ return 0 /* Continue */;
877
+ }
878
+ /** @internal */
879
+ async update() {
880
+ let status = await this.updateColumns();
881
+ if (status !== 1 /* Abort */)
882
+ status = await this.updateRows();
883
+ if (this.props.scrollToRow !== undefined)
884
+ this.scrollToRow(this.props.scrollToRow);
885
+ /* istanbul ignore next */
886
+ if (this.props.onRender)
887
+ this.props.onRender();
888
+ return status;
889
+ }
890
+ /** @internal */
891
+ updateSelectedRows() {
892
+ const selectedRowIndices = new Set();
893
+ if (this.props.isRowSelected) {
894
+ for (let rowIndex = 0; rowIndex < this.state.rows.length; rowIndex++) {
895
+ if (this.state.rows[rowIndex] && this.props.isRowSelected(this.state.rows[rowIndex].item))
896
+ selectedRowIndices.add(rowIndex);
897
+ }
898
+ }
899
+ this._selectedRowIndices = selectedRowIndices;
900
+ this.forceUpdate();
901
+ }
902
+ /** @internal */
903
+ updateSelectedCells() {
904
+ const selectedCellKeys = new Map();
905
+ if (this.props.isCellSelected) {
906
+ for (const column of this.state.columns) {
907
+ const set = new Set();
908
+ for (let rowIndex = 0; rowIndex < this.state.rows.length; rowIndex++) {
909
+ // istanbul ignore next
910
+ if (!this.state.rows[rowIndex])
911
+ continue;
912
+ const cellItem = this._getCellItem(this.state.rows[rowIndex].item, column.key);
913
+ if (this.props.isCellSelected(rowIndex, cellItem))
914
+ set.add(rowIndex);
915
+ }
916
+ // istanbul ignore else
917
+ if (set.size !== 0)
918
+ selectedCellKeys.set(column.key, set);
919
+ }
920
+ }
921
+ this._selectedCellKeys = selectedCellKeys;
922
+ this.forceUpdate();
923
+ }
924
+ isCellSelected(key) {
925
+ const set = this._selectedCellKeys.get(key.columnKey);
926
+ if (set)
927
+ return set.has(key.rowIndex);
928
+ return false;
929
+ }
930
+ selectCells(cellKeys) {
931
+ for (const key of cellKeys) {
932
+ let set = this._selectedCellKeys.get(key.columnKey);
933
+ if (!set) {
934
+ set = new Set();
935
+ this._selectedCellKeys.set(key.columnKey, set);
936
+ }
937
+ set.add(key.rowIndex);
938
+ }
939
+ }
940
+ deselectCells(cellKeys) {
941
+ for (const key of cellKeys) {
942
+ // istanbul ignore else
943
+ const set = this._selectedCellKeys.get(key.columnKey);
944
+ // istanbul ignore else
945
+ if (set)
946
+ set.delete(key.rowIndex);
947
+ }
948
+ }
949
+ createRowItemSelectionHandler(rowIndex) {
950
+ return {
951
+ preselect: () => {
952
+ this._pressedItemSelected = this._selectedRowIndices.has(rowIndex);
953
+ },
954
+ select: () => {
955
+ // istanbul ignore else
956
+ if (!this._selectedRowIndices.has(rowIndex)) {
957
+ this._selectedRowIndices.add(rowIndex);
958
+ if (!this._pressedItemSelected)
959
+ this.forceUpdate();
960
+ }
961
+ },
962
+ deselect: () => {
963
+ // istanbul ignore else
964
+ if (this._selectedRowIndices.has(rowIndex)) {
965
+ this._selectedRowIndices.delete(rowIndex);
966
+ this.forceUpdate();
967
+ }
968
+ },
969
+ isSelected: () => this._selectedRowIndices.has(rowIndex),
970
+ item: () => rowIndex,
971
+ };
972
+ }
973
+ createCellItemSelectionHandler(cellKey) {
974
+ return {
975
+ preselect: () => {
976
+ this._pressedItemSelected = this.isCellSelected(cellKey);
977
+ },
978
+ select: () => {
979
+ this.selectCells([cellKey]);
980
+ this.forceUpdate();
981
+ },
982
+ deselect: () => {
983
+ this.deselectCells([cellKey]);
984
+ this.forceUpdate();
985
+ },
986
+ isSelected: () => this.isCellSelected(cellKey),
987
+ item: () => cellKey,
988
+ };
989
+ }
990
+ async renderCellContent(cellItem, column, displayValue) {
991
+ if (column.icon)
992
+ return () => React.createElement(TableCell_1.TableIconCellContent, { iconName: displayValue });
993
+ return (props) => {
994
+ var _a;
995
+ return (React.createElement(TableCell_1.TableCellContent, { height: TABLE_ROW_HEIGHT, isSelected: props.isSelected, cellItem: cellItem, onDialogOpen: this._onDialogOpen, propertyValueRendererManager: this.props.propertyValueRendererManager
996
+ ? this.props.propertyValueRendererManager
997
+ : ValueRendererManager_1.PropertyValueRendererManager.defaultManager, style: { zIndex: (((_a = cellItem.mergedCellsCount) !== null && _a !== void 0 ? _a : 1) > 1) ? 1 : undefined } }));
998
+ };
999
+ }
1000
+ async getCellDisplayValue(cellItem) {
1001
+ var _a;
1002
+ // istanbul ignore next
1003
+ if (!cellItem.record || cellItem.record.value.valueFormat !== appui_abstract_1.PropertyValueFormat.Primitive)
1004
+ return "";
1005
+ const value = cellItem.record.value.value;
1006
+ if (value === undefined)
1007
+ return "";
1008
+ const displayValue = await TypeConverterManager_1.TypeConverterManager
1009
+ .getConverter(cellItem.record.property.typename, (_a = cellItem.record.property.converter) === null || _a === void 0 ? void 0 : _a.name)
1010
+ .convertPropertyToString(cellItem.record.property, value);
1011
+ return displayValue ? displayValue : /* istanbul ignore next */ "";
1012
+ }
1013
+ async createPropsForRowItem(item, index) {
1014
+ const cellProps = {};
1015
+ for (const column of this.state.columns) {
1016
+ const cellItem = this._getCellItem(item, column.key);
1017
+ const displayValue = await this.getCellDisplayValue(cellItem);
1018
+ cellProps[column.key] = {
1019
+ item: cellItem,
1020
+ displayValue,
1021
+ render: await this.renderCellContent(cellItem, column.reactDataGridColumn, displayValue),
1022
+ };
1023
+ }
1024
+ const rowStyle = ItemStyle_1.TableRowStyleProvider.createStyle(item.colorOverrides ? item.colorOverrides : {});
1025
+ return {
1026
+ item,
1027
+ index,
1028
+ cells: cellProps,
1029
+ render: undefined,
1030
+ style: rowStyle,
1031
+ };
1032
+ }
1033
+ async loadRows(beginIndex, endIndex) {
1034
+ const result = {
1035
+ rows: [],
1036
+ selectedRowIndices: [],
1037
+ selectedCellKeys: [],
1038
+ };
1039
+ this._rowLoadGuid = core_bentley_1.Guid.createValue();
1040
+ const currentSelectedRowGuid = this._rowLoadGuid;
1041
+ const promises = new Array();
1042
+ for (let i = beginIndex; i < endIndex; ++i) {
1043
+ promises.push(this.props.dataProvider.getRow(i).then(async (rowData) => this.createPropsForRowItem(rowData, i).then((rowProps) => (rowProps))));
1044
+ }
1045
+ try {
1046
+ result.rows = await Promise.all(promises);
1047
+ }
1048
+ catch { }
1049
+ // istanbul ignore else
1050
+ // Check if another loadRows got called while this one was still going
1051
+ if (currentSelectedRowGuid === this._rowLoadGuid) {
1052
+ for (const rowProps of result.rows) {
1053
+ if (this.props.isRowSelected && this.props.isRowSelected(rowProps.item))
1054
+ result.selectedRowIndices.push(rowProps.index);
1055
+ if (this.props.isCellSelected) {
1056
+ for (const column of this.state.columns) {
1057
+ const cellItem = this._getCellItem(rowProps.item, column.key);
1058
+ if (this.props.isCellSelected(rowProps.index, cellItem))
1059
+ result.selectedCellKeys.push({ rowIndex: rowProps.index, columnKey: column.key });
1060
+ }
1061
+ }
1062
+ }
1063
+ }
1064
+ return result;
1065
+ }
1066
+ getColumnIndexFromKey(columnKey) {
1067
+ return this.state.columns.findIndex((column) => column.key === columnKey);
1068
+ }
1069
+ async gridSortAsync(columnKey, directionEnum) {
1070
+ const columnIndex = this.getColumnIndexFromKey(columnKey);
1071
+ // istanbul ignore next
1072
+ if (columnIndex < 0)
1073
+ return;
1074
+ await this.props.dataProvider.sort(columnIndex, directionEnum);
1075
+ // istanbul ignore next
1076
+ if (!this._isMounted)
1077
+ return;
1078
+ this.updateRows(); // eslint-disable-line @typescript-eslint/no-floating-promises
1079
+ }
1080
+ createRowCells(rowProps, isSelected) {
1081
+ var _a;
1082
+ const cells = {};
1083
+ let gridColumns = [];
1084
+ let foundHiddenColumns = 0;
1085
+ // istanbul ignore else
1086
+ if (this._gridRef.current && this._gridRef.current.getDataGridDOMNode)
1087
+ gridColumns = this._gridRef.current.getDataGridDOMNode().querySelectorAll(".react-grid-HeaderCell");
1088
+ for (let index = 0; index < this.state.columns.length; index++) {
1089
+ const column = this.state.columns[index];
1090
+ const cellProps = rowProps.cells[column.key];
1091
+ if (!cellProps) {
1092
+ continue;
1093
+ }
1094
+ // eslint-disable-next-line @typescript-eslint/naming-convention
1095
+ const CellContent = cellProps.render;
1096
+ const isEditorCell = this.state.cellEditorState.active
1097
+ && this.state.cellEditorState.rowIndex === rowProps.index
1098
+ && this.state.cellEditorState.colIndex === index
1099
+ && cellProps.item.record;
1100
+ let onClick;
1101
+ let onMouseMove;
1102
+ let onMouseDown;
1103
+ let className;
1104
+ const cellKey = { rowIndex: rowProps.index, columnKey: column.key };
1105
+ if (this._tableSelectionTarget === TableSelectionTarget.Cell) {
1106
+ const selectionHandler = this.createCellItemSelectionHandler(cellKey);
1107
+ const selectionFunction = this._cellSelectionHandler.createSelectionFunction(this._cellComponentSelectionHandler, selectionHandler);
1108
+ onClick = (e) => selectionFunction(e.shiftKey, e.ctrlKey);
1109
+ onMouseMove = (e) => {
1110
+ // istanbul ignore else
1111
+ if (e.buttons === 1)
1112
+ this._cellSelectionHandler.updateDragAction(cellKey);
1113
+ };
1114
+ onMouseDown = () => {
1115
+ this._cellSelectionHandler.createDragAction(this._cellComponentSelectionHandler, this.cellItemSelectionHandlers, cellKey);
1116
+ };
1117
+ className = (0, classnames_1.default)({ "is-selected": this.isCellSelected(cellKey) });
1118
+ }
1119
+ else {
1120
+ if (this._selectedRowIndices.has(rowProps.index))
1121
+ className = (0, classnames_1.default)({ "is-keyboard-editable": this.state.keyboardEditorCellKey === column.key });
1122
+ }
1123
+ className = (0, classnames_1.default)(className, this.getCellBorderStyle(cellKey));
1124
+ const mergedAdjacentCellsCount = ((_a = cellProps.item.mergedCellsCount) !== null && _a !== void 0 ? _a : 1) - 1;
1125
+ let cellWidth = 0;
1126
+ for (let i = 0; i <= mergedAdjacentCellsCount; i++) {
1127
+ const col = this.state.columns[index + i];
1128
+ if (this.state.hiddenColumns.indexOf(col.key) === -1) {
1129
+ const gridColumn = gridColumns[index + i - foundHiddenColumns];
1130
+ const gridColumnWidth = gridColumn ? gridColumn.getBoundingClientRect().width : 0;
1131
+ cellWidth += gridColumnWidth;
1132
+ }
1133
+ else {
1134
+ foundHiddenColumns++;
1135
+ }
1136
+ if (i > 0) {
1137
+ cells[col.key] = (React.createElement(TableCell_1.TableCell, { className: className.replace("border-bottom", ""), title: "empty-cell", onClick: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown }));
1138
+ }
1139
+ const mergedColumn = this.state.columns[index + i];
1140
+ const emptyCellKey = { rowIndex: rowProps.index, columnKey: mergedColumn.key };
1141
+ className = (0, dedupe_1.default)(className, this.getCellBorderStyle(emptyCellKey));
1142
+ }
1143
+ index += mergedAdjacentCellsCount;
1144
+ cells[column.key] = (React.createElement(TableCell_1.TableCell, { className: className, title: cellProps.displayValue, onClick: onClick, onMouseMove: onMouseMove, onMouseDown: onMouseDown, cellEditingProps: isEditorCell ? {
1145
+ onCancel: this._deactivateCellEditor,
1146
+ onCommit: this._onCellCommit,
1147
+ propertyRecord: cellProps.item.record,
1148
+ setFocus: true,
1149
+ } : undefined, style: { width: (mergedAdjacentCellsCount > 0) ? cellWidth : undefined } },
1150
+ React.createElement(CellContent, { isSelected: isSelected })));
1151
+ }
1152
+ return cells;
1153
+ }
1154
+ getCellBorderStyle(key) {
1155
+ const isCellSelected = (cellKey) => {
1156
+ if (this._tableSelectionTarget === TableSelectionTarget.Row) {
1157
+ return this._selectedRowIndices.has(cellKey.rowIndex);
1158
+ }
1159
+ return this.isCellSelected(cellKey);
1160
+ };
1161
+ const cellIsSelected = isCellSelected(key);
1162
+ const columnIndex = this.state.columns.findIndex((column) => key.columnKey === column.key);
1163
+ const isTopBorderVisible = () => {
1164
+ if (key.rowIndex === 0) {
1165
+ return cellIsSelected;
1166
+ }
1167
+ if (cellIsSelected) {
1168
+ return !isCellSelected({ rowIndex: key.rowIndex - 1, columnKey: key.columnKey });
1169
+ }
1170
+ // Bottom border is rendered by drawing the top border on the node below
1171
+ // Check if the node above needs its bottom border drawn
1172
+ return isCellSelected({ rowIndex: key.rowIndex - 1, columnKey: key.columnKey });
1173
+ };
1174
+ const isRightBorderVisible = () => {
1175
+ if (!cellIsSelected) {
1176
+ return false;
1177
+ }
1178
+ if (columnIndex === this.state.columns.length - 1) {
1179
+ return true;
1180
+ }
1181
+ return !isCellSelected({ rowIndex: key.rowIndex, columnKey: this.state.columns[columnIndex + 1].key });
1182
+ };
1183
+ const isBottomBorderVisible = () => {
1184
+ return cellIsSelected && key.rowIndex === this.state.rowsCount - 1;
1185
+ };
1186
+ const isLeftBorderVisible = () => {
1187
+ if (!cellIsSelected) {
1188
+ return false;
1189
+ }
1190
+ if (columnIndex === 0) {
1191
+ return true;
1192
+ }
1193
+ return !isCellSelected({ rowIndex: key.rowIndex, columnKey: this.state.columns[columnIndex - 1].key });
1194
+ };
1195
+ return (0, classnames_1.default)({
1196
+ "border-top": isTopBorderVisible(),
1197
+ "border-right": isRightBorderVisible(),
1198
+ "border-bottom": isBottomBorderVisible(),
1199
+ "border-left": isLeftBorderVisible(),
1200
+ });
1201
+ }
1202
+ cellEditOnClick(column, _ev, args) {
1203
+ // Prevent editing when property record is not primitive
1204
+ // istanbul ignore else
1205
+ if (this.state.rows[args.rowIdx]) {
1206
+ const record = this._getCellItem(this.state.rows[0].item, column.key).record;
1207
+ // istanbul ignore next
1208
+ if (record && record.value.valueFormat !== appui_abstract_1.PropertyValueFormat.Primitive)
1209
+ return;
1210
+ }
1211
+ if (this.state.keyboardEditorCellKey !== column.key)
1212
+ this.setState({ keyboardEditorCellKey: column.key });
1213
+ let activate = false;
1214
+ if (this._pressedItemSelected)
1215
+ activate = true;
1216
+ if (activate)
1217
+ this.activateCellEditor(args.rowIdx, args.idx, column.key);
1218
+ else
1219
+ this._deactivateCellEditor();
1220
+ }
1221
+ cellContextMenu(column, e, args) {
1222
+ // istanbul ignore else
1223
+ if (this.props.onCellContextMenu) {
1224
+ const contextMenuArgs = {
1225
+ rowIndex: args.rowIdx,
1226
+ colIndex: args.idx,
1227
+ cellKey: column.key,
1228
+ event: e,
1229
+ };
1230
+ // istanbul ignore else
1231
+ if (this.state.rows[args.rowIdx])
1232
+ contextMenuArgs.cellItem = this._getCellItem(this.state.rows[args.rowIdx].item, column.key);
1233
+ e.preventDefault();
1234
+ this.props.onCellContextMenu(contextMenuArgs);
1235
+ }
1236
+ }
1237
+ activateCellEditor(rowIndex, colIndex, cellKey) {
1238
+ const cellEditorState = { active: true, rowIndex, colIndex, cellKey };
1239
+ // istanbul ignore else
1240
+ if (cellEditorState !== this.state.cellEditorState) {
1241
+ this.setState({ cellEditorState }, () => {
1242
+ // istanbul ignore else
1243
+ if (this.props.onPropertyEditing)
1244
+ this.props.onPropertyEditing(cellEditorState);
1245
+ });
1246
+ }
1247
+ }
1248
+ /** @internal */
1249
+ shouldComponentUpdate(_props) {
1250
+ return true;
1251
+ }
1252
+ _isShowFilterRow() {
1253
+ return this.state.columns.some((tableColumn) => tableColumn.filterable);
1254
+ }
1255
+ /** Turn on/off filter row */
1256
+ toggleFilterRow(showFilter) {
1257
+ // istanbul ignore else
1258
+ if (this._gridRef.current) {
1259
+ const grid = this._gridRef.current;
1260
+ // istanbul ignore else
1261
+ if (grid.onToggleFilter && showFilter !== this._filterRowShown) {
1262
+ grid.onToggleFilter();
1263
+ this._filterRowShown = showFilter;
1264
+ }
1265
+ }
1266
+ }
1267
+ /** Gets the filter descriptors for the table.
1268
+ * @internal
1269
+ */
1270
+ get filterDescriptors() {
1271
+ if (undefined === this._filterDescriptors) {
1272
+ this._filterDescriptors = new TableFilterDescriptorCollection_1.TableFilterDescriptorCollection();
1273
+ this._filterDescriptors.logicalOperator = ColumnFiltering_1.FilterCompositionLogicalOperator.And;
1274
+ }
1275
+ return this._filterDescriptors;
1276
+ }
1277
+ /** Gets ECExpression to get property display value.
1278
+ * @internal
1279
+ */
1280
+ // istanbul ignore next
1281
+ getPropertyDisplayValueExpression(property) {
1282
+ if (this.props.dataProvider.getPropertyDisplayValueExpression !== undefined)
1283
+ return this.props.dataProvider.getPropertyDisplayValueExpression(property);
1284
+ return property;
1285
+ }
1286
+ /** Determines if focus is in an input element - for filter checking */
1287
+ isFocusOnInputElement() {
1288
+ const element = document.activeElement;
1289
+ return element &&
1290
+ (element instanceof HTMLInputElement ||
1291
+ element instanceof HTMLSelectElement ||
1292
+ element instanceof HTMLTextAreaElement);
1293
+ }
1294
+ /** @internal */
1295
+ render() {
1296
+ const rowRenderer = React.createElement(TableRowRenderer, { rowRendererCreator: () => this._createRowRenderer() });
1297
+ const visibleColumns = this._getVisibleColumns();
1298
+ const tableClassName = (0, classnames_1.default)("components-table", "components-smallEditor-host", this.props.className, {
1299
+ "hide-header": this.props.hideHeader,
1300
+ "striped-rows": this.props.stripedRows,
1301
+ "row-selection": this._tableSelectionTarget === TableSelectionTarget.Row,
1302
+ "cell-selection": this._tableSelectionTarget === TableSelectionTarget.Cell,
1303
+ });
1304
+ return (React.createElement(React.Fragment, null,
1305
+ React.createElement("div", { className: tableClassName, style: this.props.style, onMouseDown: this._onMouseDown, onContextMenu: this.props.showHideColumns ? this._handleShowHideContextMenu : undefined, onKeyDown: this._onKeyDown, onKeyUp: this._onKeyUp, role: "presentation" },
1306
+ this.props.showHideColumns &&
1307
+ React.createElement(ShowHideMenu_1.ShowHideMenu, { opened: this.state.menuVisible, items: this.state.columns.map((column) => ({ id: column.key, label: column.reactDataGridColumn.name })), x: this.state.menuX, y: this.state.menuY, initialHidden: this.state.hiddenColumns, onClose: this._hideContextMenu, onShowHideChange: this._handleShowHideChange }),
1308
+ React.createElement(core_react_1.ElementResizeObserver, { watchedElement: this.state.gridContainer, render: ({ width, height }) => {
1309
+ setTimeout(() => this._queuePokeScroll());
1310
+ return (React.createElement(react_data_grid_1.default, { ref: this._gridRef, columns: visibleColumns, rowGetter: this._rowGetter, rowRenderer: rowRenderer, rowsCount: this.state.rowsCount, ...(this.props.reorderableColumns ? {
1311
+ draggableHeaderCell: DragDropHeaderCell_1.DragDropHeaderCell,
1312
+ onHeaderDrop: this._onHeaderDrop,
1313
+ } : {}), minHeight: height, minWidth: width, headerRowHeight: TABLE_ROW_HEIGHT, rowHeight: TABLE_ROW_HEIGHT, onGridSort: this._handleGridSort, enableRowSelect: null, onAddFilter: this._handleFilterChange, onClearFilters: this._handleOnClearFilters, headerFiltersHeight: TABLE_FILTER_ROW_HEIGHT, getValidFilterValues: this._getValidFilterValues, onScroll: this._onScroll }));
1314
+ } })),
1315
+ React.createElement("div", { ref: this._tableRef }, this.state.dialog
1316
+ ?
1317
+ // istanbul ignore next
1318
+ React.createElement(core_react_1.Dialog, { opened: true, onClose: this._onDialogClose, title: this.state.dialog.title, height: "50vh" }, this.state.dialog.content)
1319
+ : undefined)));
1320
+ }
1321
+ }
1322
+ exports.Table = Table;
1323
+ /**
1324
+ * Default component for rendering a row for the Table
1325
+ * @internal
1326
+ */
1327
+ class TableRow extends React.Component {
1328
+ /** @internal */
1329
+ render() {
1330
+ const { cells, isSelected, ...props } = this.props;
1331
+ return (React.createElement(react_data_grid_1.default.Row, { ...props, row: cells, isSelected: isSelected }));
1332
+ }
1333
+ }
1334
+ exports.TableRow = TableRow;
1335
1335
  //# sourceMappingURL=Table.js.map