@itwin/components-react 3.4.0-dev.55 → 3.4.0-dev.57

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