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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1078) hide show
  1. package/CHANGELOG.md +1805 -1797
  2. package/LICENSE.md +9 -9
  3. package/README.md +11 -11
  4. package/lib/cjs/components-react/UiComponents.d.ts.map +1 -1
  5. package/lib/cjs/components-react/UiComponents.js +9 -5
  6. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  7. package/lib/cjs/components-react/_target.scss +5 -4
  8. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  9. package/lib/cjs/components-react/common/DateUtils.js +15 -9
  10. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  11. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  12. package/lib/cjs/components-react/common/DelayedSpinner.js +5 -5
  13. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  14. package/lib/cjs/components-react/common/HighlightedText.js +9 -5
  15. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  16. package/lib/cjs/components-react/common/HighlightingComponentProps.js +3 -3
  17. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  18. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  19. package/lib/cjs/components-react/common/IImageLoader.js +3 -3
  20. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  21. package/lib/cjs/components-react/common/ImageRenderer.d.ts.map +1 -1
  22. package/lib/cjs/components-react/common/ImageRenderer.js +12 -9
  23. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  24. package/lib/cjs/components-react/common/Links.d.ts.map +1 -1
  25. package/lib/cjs/components-react/common/Links.js +12 -5
  26. package/lib/cjs/components-react/common/Links.js.map +1 -1
  27. package/lib/cjs/components-react/common/PageOptions.js +3 -3
  28. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  29. package/lib/cjs/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
  30. package/lib/cjs/components-react/common/SubscriptionScheduler.js +4 -4
  31. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  32. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  33. package/lib/cjs/components-react/common/UseAsyncValue.js +9 -5
  34. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  35. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  36. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +3 -3
  37. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  38. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  39. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +8 -6
  40. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  41. package/lib/cjs/components-react/common/UseRerender.d.ts.map +1 -1
  42. package/lib/cjs/components-react/common/UseRerender.js +8 -4
  43. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  44. package/lib/cjs/components-react/common/countMatchesInString.d.ts.map +1 -1
  45. package/lib/cjs/components-react/common/countMatchesInString.js +3 -3
  46. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  47. package/lib/cjs/components-react/common/selection/SelectionHandler.d.ts.map +1 -1
  48. package/lib/cjs/components-react/common/selection/SelectionHandler.js +32 -13
  49. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  50. package/lib/cjs/components-react/common/selection/SelectionModes.d.ts.map +1 -1
  51. package/lib/cjs/components-react/common/selection/SelectionModes.js +3 -3
  52. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  53. package/lib/cjs/components-react/converters/BooleanTypeConverter.d.ts.map +1 -1
  54. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +15 -7
  55. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  56. package/lib/cjs/components-react/converters/CompositeTypeConverter.d.ts.map +1 -1
  57. package/lib/cjs/components-react/converters/CompositeTypeConverter.js +5 -4
  58. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  59. package/lib/cjs/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
  60. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js +23 -11
  61. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  62. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  63. package/lib/cjs/components-react/converters/EnumTypeConverter.js +4 -4
  64. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  65. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.d.ts.map +1 -1
  66. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +3 -3
  67. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  68. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.d.ts.map +1 -1
  69. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js +4 -6
  70. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  71. package/lib/cjs/components-react/converters/NumericTypeConverter.d.ts.map +1 -1
  72. package/lib/cjs/components-react/converters/NumericTypeConverter.js +7 -5
  73. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  74. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  75. package/lib/cjs/components-react/converters/PointTypeConverter.js +11 -6
  76. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  77. package/lib/cjs/components-react/converters/StringTypeConverter.d.ts.map +1 -1
  78. package/lib/cjs/components-react/converters/StringTypeConverter.js +16 -9
  79. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  80. package/lib/cjs/components-react/converters/TypeConverter.d.ts.map +1 -1
  81. package/lib/cjs/components-react/converters/TypeConverter.js +18 -8
  82. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  83. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  84. package/lib/cjs/components-react/converters/TypeConverterManager.js +4 -4
  85. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  86. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.d.ts.map +1 -1
  87. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js +3 -3
  88. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  89. package/lib/cjs/components-react/datepicker/DateField.d.ts +1 -1
  90. package/lib/cjs/components-react/datepicker/DateField.d.ts.map +1 -1
  91. package/lib/cjs/components-react/datepicker/DateField.js +32 -10
  92. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  93. package/lib/cjs/components-react/datepicker/DateField.scss +4 -4
  94. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  95. package/lib/cjs/components-react/datepicker/DatePicker.js +15 -11
  96. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  97. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  98. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  99. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +14 -11
  100. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  101. package/lib/cjs/components-react/datepicker/IntlFormatter.d.ts.map +1 -1
  102. package/lib/cjs/components-react/datepicker/IntlFormatter.js +11 -11
  103. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  104. package/lib/cjs/components-react/datepicker/TimeField.d.ts +1 -1
  105. package/lib/cjs/components-react/datepicker/TimeField.d.ts.map +1 -1
  106. package/lib/cjs/components-react/datepicker/TimeField.js +72 -31
  107. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  108. package/lib/cjs/components-react/editors/BooleanEditor.d.ts.map +1 -1
  109. package/lib/cjs/components-react/editors/BooleanEditor.js +9 -5
  110. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  111. package/lib/cjs/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
  112. package/lib/cjs/components-react/editors/CustomNumberEditor.js +48 -28
  113. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  114. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +4 -4
  115. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts +6 -6
  116. package/lib/cjs/components-react/editors/DateTimeEditor.d.ts.map +1 -1
  117. package/lib/cjs/components-react/editors/DateTimeEditor.js +25 -20
  118. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  119. package/lib/cjs/components-react/editors/DateTimeEditor.scss +4 -4
  120. package/lib/cjs/components-react/editors/EditorContainer.d.ts +3 -3
  121. package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
  122. package/lib/cjs/components-react/editors/EditorContainer.js +21 -13
  123. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  124. package/lib/cjs/components-react/editors/EditorContainer.scss +4 -4
  125. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  126. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +20 -11
  127. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  128. package/lib/cjs/components-react/editors/EnumEditor.d.ts +5 -5
  129. package/lib/cjs/components-react/editors/EnumEditor.d.ts.map +1 -1
  130. package/lib/cjs/components-react/editors/EnumEditor.js +25 -14
  131. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  132. package/lib/cjs/components-react/editors/EnumEditor.scss +5 -5
  133. package/lib/cjs/components-react/editors/IconEditor.d.ts.map +1 -1
  134. package/lib/cjs/components-react/editors/IconEditor.js +10 -8
  135. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  136. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  137. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +13 -6
  138. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  139. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  140. package/lib/cjs/components-react/editors/NumericInputEditor.js +25 -8
  141. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  142. package/lib/cjs/components-react/editors/NumericInputEditor.scss +4 -6
  143. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  144. package/lib/cjs/components-react/editors/PopupButton.js +7 -4
  145. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  146. package/lib/cjs/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
  147. package/lib/cjs/components-react/editors/PropertyEditorManager.js +7 -5
  148. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  149. package/lib/cjs/components-react/editors/SliderEditor.d.ts.map +1 -1
  150. package/lib/cjs/components-react/editors/SliderEditor.js +46 -19
  151. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  152. package/lib/cjs/components-react/editors/SliderEditor.scss +4 -4
  153. package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
  154. package/lib/cjs/components-react/editors/TextEditor.js +24 -9
  155. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  156. package/lib/cjs/components-react/editors/TextEditor.scss +4 -4
  157. package/lib/cjs/components-react/editors/TextareaEditor.d.ts.map +1 -1
  158. package/lib/cjs/components-react/editors/TextareaEditor.js +21 -8
  159. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  160. package/lib/cjs/components-react/editors/TextareaEditor.scss +4 -4
  161. package/lib/cjs/components-react/editors/ToggleEditor.d.ts.map +1 -1
  162. package/lib/cjs/components-react/editors/ToggleEditor.js +11 -7
  163. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  164. package/lib/cjs/components-react/editors/variables.scss +4 -4
  165. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  166. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +3 -3
  167. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  168. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  169. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +4 -5
  170. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  171. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  172. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +16 -6
  173. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  174. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  175. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +6 -4
  176. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  177. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +1 -0
  178. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  179. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +25 -18
  180. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  181. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  182. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +46 -22
  183. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  184. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  185. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +5 -5
  186. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  187. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  188. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +9 -7
  189. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  190. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  191. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +5 -5
  192. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  193. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  194. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +21 -13
  195. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  196. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  197. package/lib/cjs/components-react/filter-builder/Operators.js +17 -18
  198. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  199. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  200. package/lib/cjs/components-react/filter-builder/Types.js +3 -3
  201. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  202. package/lib/cjs/components-react/filtering/FilteringInput.d.ts +1 -1
  203. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  204. package/lib/cjs/components-react/filtering/FilteringInput.js +23 -21
  205. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  206. package/lib/cjs/components-react/filtering/FilteringInput.scss +4 -4
  207. package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
  208. package/lib/cjs/components-react/filtering/ResultSelector.js +16 -9
  209. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  210. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  211. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +9 -10
  212. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  213. package/lib/cjs/components-react/inputs/ParsedInput.d.ts +1 -1
  214. package/lib/cjs/components-react/inputs/ParsedInput.d.ts.map +1 -1
  215. package/lib/cjs/components-react/inputs/ParsedInput.js +8 -7
  216. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  217. package/lib/cjs/components-react/inputs/ParsedInput.scss +4 -4
  218. package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
  219. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  220. package/lib/cjs/components-react/properties/ItemStyle.js +7 -7
  221. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  222. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  223. package/lib/cjs/components-react/properties/LinkHandler.js +4 -4
  224. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  225. package/lib/cjs/components-react/properties/ValueRendererManager.d.ts.map +1 -1
  226. package/lib/cjs/components-react/properties/ValueRendererManager.js +5 -4
  227. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  228. package/lib/cjs/components-react/properties/renderers/ActionButtonList.d.ts.map +1 -1
  229. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -5
  230. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  231. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  232. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js +3 -3
  233. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  234. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.d.ts.map +1 -1
  235. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +21 -10
  236. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  237. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
  238. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +11 -10
  239. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  240. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  241. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts.map +1 -1
  242. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +15 -8
  243. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  244. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.d.ts.map +1 -1
  245. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js +24 -7
  246. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  247. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
  248. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +10 -9
  249. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  250. package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
  251. package/lib/cjs/components-react/properties/renderers/PropertyView.js +12 -16
  252. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  253. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  254. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +4 -4
  255. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  256. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts.map +1 -1
  257. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +3 -3
  258. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  259. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  260. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
  261. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +7 -5
  262. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  263. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts.map +1 -1
  264. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +6 -5
  265. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  266. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  267. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -6
  268. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  269. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts.map +1 -1
  270. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +5 -4
  271. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  272. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -2
  273. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  274. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +7 -10
  275. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  276. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  277. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -6
  278. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  279. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  280. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +6 -8
  281. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  282. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts.map +1 -1
  283. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -4
  284. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  285. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  286. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +10 -6
  287. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  288. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  289. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +4 -4
  290. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  291. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts.map +1 -1
  292. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +8 -5
  293. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  294. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  295. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +7 -4
  296. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  297. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.d.ts.map +1 -1
  298. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +3 -3
  299. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  300. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  301. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -3
  302. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  303. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +1 -1
  304. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts.map +1 -1
  305. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js +3 -3
  306. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  307. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  308. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +3 -3
  309. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  310. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +2 -0
  311. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  312. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +38 -7
  313. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  314. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  315. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +6 -5
  316. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  317. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  318. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +8 -8
  319. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  320. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +4 -5
  321. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  322. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  323. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  324. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  325. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +13 -7
  326. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  327. package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
  328. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +16 -6
  329. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  330. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -0
  331. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  332. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +65 -27
  333. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  334. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  335. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +6 -4
  336. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  337. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +6 -6
  338. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts.map +1 -1
  339. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +56 -20
  340. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  341. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts.map +1 -1
  342. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +11 -7
  343. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  344. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts.map +1 -1
  345. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +9 -5
  346. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  347. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts.map +1 -1
  348. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +9 -5
  349. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  350. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts.map +1 -1
  351. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +9 -5
  352. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  353. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts.map +1 -1
  354. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +3 -3
  355. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  356. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts.map +1 -1
  357. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +3 -3
  358. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  359. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  360. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +7 -5
  361. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  362. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts.map +1 -1
  363. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +3 -3
  364. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  365. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  366. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +3 -3
  367. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  368. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  369. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +3 -3
  370. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  371. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  372. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js +3 -3
  373. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  374. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts.map +1 -1
  375. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +9 -5
  376. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  377. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts.map +1 -1
  378. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +3 -3
  379. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  380. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts.map +1 -1
  381. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +9 -5
  382. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  383. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  384. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +4 -1
  385. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  386. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +3 -3
  387. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  388. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +6 -7
  389. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  390. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  391. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +8 -4
  392. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  393. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts.map +1 -1
  394. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  395. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  396. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +4 -5
  397. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  398. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  399. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +4 -4
  400. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  401. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  402. package/lib/cjs/components-react/selectable-content/SelectableContent.js +4 -6
  403. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  404. package/lib/cjs/components-react/toolbar/Item.d.ts.map +1 -1
  405. package/lib/cjs/components-react/toolbar/Item.js +4 -5
  406. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  407. package/lib/cjs/components-react/toolbar/Item.scss +7 -5
  408. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  409. package/lib/cjs/components-react/toolbar/ItemWrapper.js +3 -3
  410. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  411. package/lib/cjs/components-react/toolbar/Items.d.ts.map +1 -1
  412. package/lib/cjs/components-react/toolbar/Items.js +16 -8
  413. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  414. package/lib/cjs/components-react/toolbar/Overflow.d.ts.map +1 -1
  415. package/lib/cjs/components-react/toolbar/Overflow.js +3 -3
  416. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  417. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  418. package/lib/cjs/components-react/toolbar/OverflowPanel.js +14 -9
  419. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  420. package/lib/cjs/components-react/toolbar/PopupItem.d.ts.map +1 -1
  421. package/lib/cjs/components-react/toolbar/PopupItem.js +7 -9
  422. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  423. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  424. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +20 -11
  425. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  426. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  427. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +23 -22
  428. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  429. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  430. package/lib/cjs/components-react/toolbar/Toolbar.js +29 -16
  431. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  432. package/lib/cjs/components-react/toolbar/Toolbar.scss +6 -6
  433. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  434. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  435. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +97 -57
  436. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  437. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.d.ts.map +1 -1
  438. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +3 -3
  439. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  440. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  441. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +3 -3
  442. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  443. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  444. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +3 -3
  445. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  446. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  447. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +3 -3
  448. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  449. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  450. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +3 -3
  451. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  452. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +4 -4
  453. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.d.ts.map +1 -1
  454. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +3 -3
  455. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  456. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +5 -4
  457. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  458. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +4 -5
  459. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  460. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +4 -4
  461. package/lib/cjs/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
  462. package/lib/cjs/components-react/toolbar/useDragInteraction.js +6 -5
  463. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  464. package/lib/cjs/components-react/toolbar/utilities/Direction.d.ts.map +1 -1
  465. package/lib/cjs/components-react/toolbar/utilities/Direction.js +3 -3
  466. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  467. package/lib/cjs/components-react/tree/HighlightingEngine.d.ts.map +1 -1
  468. package/lib/cjs/components-react/tree/HighlightingEngine.js +4 -4
  469. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  470. package/lib/cjs/components-react/tree/HighlightingEngine.scss +4 -4
  471. package/lib/cjs/components-react/tree/ImageLoader.d.ts.map +1 -1
  472. package/lib/cjs/components-react/tree/ImageLoader.js +3 -3
  473. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  474. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  475. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js +3 -3
  476. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  477. package/lib/cjs/components-react/tree/TreeComponentTestId.d.ts.map +1 -1
  478. package/lib/cjs/components-react/tree/TreeComponentTestId.js +3 -3
  479. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  480. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  481. package/lib/cjs/components-react/tree/TreeDataProvider.js +9 -7
  482. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  483. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  484. package/lib/cjs/components-react/tree/controlled/Observable.js +6 -4
  485. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  486. package/lib/cjs/components-react/tree/controlled/TreeActions.js +3 -3
  487. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  488. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
  489. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +41 -23
  490. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  491. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts +3 -3
  492. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
  493. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js +12 -8
  494. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  495. package/lib/cjs/components-react/tree/controlled/TreeEvents.d.ts.map +1 -1
  496. package/lib/cjs/components-react/tree/controlled/TreeEvents.js +3 -3
  497. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  498. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  499. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +3 -3
  500. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  501. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  502. package/lib/cjs/components-react/tree/controlled/TreeModel.js +39 -14
  503. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  504. package/lib/cjs/components-react/tree/controlled/TreeModelSource.d.ts.map +1 -1
  505. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js +22 -8
  506. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  507. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  508. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +48 -30
  509. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  510. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  511. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +14 -14
  512. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  513. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +5 -6
  514. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts +11 -6
  515. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  516. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +16 -15
  517. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  518. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  519. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +3 -3
  520. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  521. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +17 -0
  522. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  523. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +17 -7
  524. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  525. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  526. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +49 -19
  527. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  528. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.d.ts.map +1 -1
  529. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +3 -3
  530. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  531. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
  532. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js +9 -5
  533. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  534. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  535. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +38 -20
  536. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  537. package/lib/cjs/components-react.d.ts +1 -0
  538. package/lib/cjs/components-react.d.ts.map +1 -1
  539. package/lib/cjs/components-react.js +4 -3
  540. package/lib/cjs/components-react.js.map +1 -1
  541. package/lib/esm/components-react/UiComponents.d.ts.map +1 -1
  542. package/lib/esm/components-react/UiComponents.js +9 -5
  543. package/lib/esm/components-react/UiComponents.js.map +1 -1
  544. package/lib/esm/components-react/_target.scss +5 -4
  545. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  546. package/lib/esm/components-react/common/DateUtils.js +15 -9
  547. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  548. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  549. package/lib/esm/components-react/common/DelayedSpinner.js +5 -5
  550. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  551. package/lib/esm/components-react/common/HighlightedText.js +9 -5
  552. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  553. package/lib/esm/components-react/common/HighlightingComponentProps.js +3 -3
  554. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  555. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  556. package/lib/esm/components-react/common/IImageLoader.js +3 -3
  557. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  558. package/lib/esm/components-react/common/ImageRenderer.d.ts.map +1 -1
  559. package/lib/esm/components-react/common/ImageRenderer.js +12 -9
  560. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  561. package/lib/esm/components-react/common/Links.d.ts.map +1 -1
  562. package/lib/esm/components-react/common/Links.js +12 -5
  563. package/lib/esm/components-react/common/Links.js.map +1 -1
  564. package/lib/esm/components-react/common/PageOptions.js +3 -3
  565. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  566. package/lib/esm/components-react/common/SubscriptionScheduler.d.ts.map +1 -1
  567. package/lib/esm/components-react/common/SubscriptionScheduler.js +4 -4
  568. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  569. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  570. package/lib/esm/components-react/common/UseAsyncValue.js +9 -5
  571. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  572. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  573. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +3 -3
  574. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  575. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  576. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +9 -7
  577. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  578. package/lib/esm/components-react/common/UseRerender.d.ts.map +1 -1
  579. package/lib/esm/components-react/common/UseRerender.js +8 -4
  580. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  581. package/lib/esm/components-react/common/countMatchesInString.d.ts.map +1 -1
  582. package/lib/esm/components-react/common/countMatchesInString.js +3 -3
  583. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  584. package/lib/esm/components-react/common/selection/SelectionHandler.d.ts.map +1 -1
  585. package/lib/esm/components-react/common/selection/SelectionHandler.js +33 -14
  586. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  587. package/lib/esm/components-react/common/selection/SelectionModes.d.ts.map +1 -1
  588. package/lib/esm/components-react/common/selection/SelectionModes.js +3 -3
  589. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  590. package/lib/esm/components-react/converters/BooleanTypeConverter.d.ts.map +1 -1
  591. package/lib/esm/components-react/converters/BooleanTypeConverter.js +15 -7
  592. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  593. package/lib/esm/components-react/converters/CompositeTypeConverter.d.ts.map +1 -1
  594. package/lib/esm/components-react/converters/CompositeTypeConverter.js +5 -4
  595. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  596. package/lib/esm/components-react/converters/DateTimeTypeConverter.d.ts.map +1 -1
  597. package/lib/esm/components-react/converters/DateTimeTypeConverter.js +24 -12
  598. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  599. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  600. package/lib/esm/components-react/converters/EnumTypeConverter.js +4 -4
  601. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  602. package/lib/esm/components-react/converters/HexadecimalTypeConverter.d.ts.map +1 -1
  603. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +3 -3
  604. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  605. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.d.ts.map +1 -1
  606. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js +4 -6
  607. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  608. package/lib/esm/components-react/converters/NumericTypeConverter.d.ts.map +1 -1
  609. package/lib/esm/components-react/converters/NumericTypeConverter.js +7 -5
  610. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  611. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  612. package/lib/esm/components-react/converters/PointTypeConverter.js +11 -6
  613. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  614. package/lib/esm/components-react/converters/StringTypeConverter.d.ts.map +1 -1
  615. package/lib/esm/components-react/converters/StringTypeConverter.js +16 -9
  616. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  617. package/lib/esm/components-react/converters/TypeConverter.d.ts.map +1 -1
  618. package/lib/esm/components-react/converters/TypeConverter.js +18 -8
  619. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  620. package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  621. package/lib/esm/components-react/converters/TypeConverterManager.js +4 -4
  622. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  623. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.d.ts.map +1 -1
  624. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js +3 -3
  625. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  626. package/lib/esm/components-react/datepicker/DateField.d.ts +1 -1
  627. package/lib/esm/components-react/datepicker/DateField.d.ts.map +1 -1
  628. package/lib/esm/components-react/datepicker/DateField.js +32 -10
  629. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  630. package/lib/esm/components-react/datepicker/DateField.scss +4 -4
  631. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  632. package/lib/esm/components-react/datepicker/DatePicker.js +15 -11
  633. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  634. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  635. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  636. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +14 -11
  637. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  638. package/lib/esm/components-react/datepicker/IntlFormatter.d.ts.map +1 -1
  639. package/lib/esm/components-react/datepicker/IntlFormatter.js +11 -11
  640. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  641. package/lib/esm/components-react/datepicker/TimeField.d.ts +1 -1
  642. package/lib/esm/components-react/datepicker/TimeField.d.ts.map +1 -1
  643. package/lib/esm/components-react/datepicker/TimeField.js +72 -31
  644. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  645. package/lib/esm/components-react/editors/BooleanEditor.d.ts.map +1 -1
  646. package/lib/esm/components-react/editors/BooleanEditor.js +10 -6
  647. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  648. package/lib/esm/components-react/editors/CustomNumberEditor.d.ts.map +1 -1
  649. package/lib/esm/components-react/editors/CustomNumberEditor.js +49 -29
  650. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  651. package/lib/esm/components-react/editors/CustomNumberEditor.scss +4 -4
  652. package/lib/esm/components-react/editors/DateTimeEditor.d.ts +6 -6
  653. package/lib/esm/components-react/editors/DateTimeEditor.d.ts.map +1 -1
  654. package/lib/esm/components-react/editors/DateTimeEditor.js +26 -21
  655. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  656. package/lib/esm/components-react/editors/DateTimeEditor.scss +4 -4
  657. package/lib/esm/components-react/editors/EditorContainer.d.ts +3 -3
  658. package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
  659. package/lib/esm/components-react/editors/EditorContainer.js +21 -13
  660. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  661. package/lib/esm/components-react/editors/EditorContainer.scss +4 -4
  662. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  663. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +21 -12
  664. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  665. package/lib/esm/components-react/editors/EnumEditor.d.ts +5 -5
  666. package/lib/esm/components-react/editors/EnumEditor.d.ts.map +1 -1
  667. package/lib/esm/components-react/editors/EnumEditor.js +26 -15
  668. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  669. package/lib/esm/components-react/editors/EnumEditor.scss +5 -5
  670. package/lib/esm/components-react/editors/IconEditor.d.ts.map +1 -1
  671. package/lib/esm/components-react/editors/IconEditor.js +11 -9
  672. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  673. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  674. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js +14 -7
  675. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  676. package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  677. package/lib/esm/components-react/editors/NumericInputEditor.js +26 -9
  678. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  679. package/lib/esm/components-react/editors/NumericInputEditor.scss +4 -6
  680. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  681. package/lib/esm/components-react/editors/PopupButton.js +8 -5
  682. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  683. package/lib/esm/components-react/editors/PropertyEditorManager.d.ts.map +1 -1
  684. package/lib/esm/components-react/editors/PropertyEditorManager.js +7 -5
  685. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  686. package/lib/esm/components-react/editors/SliderEditor.d.ts.map +1 -1
  687. package/lib/esm/components-react/editors/SliderEditor.js +47 -20
  688. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  689. package/lib/esm/components-react/editors/SliderEditor.scss +4 -4
  690. package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
  691. package/lib/esm/components-react/editors/TextEditor.js +24 -9
  692. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  693. package/lib/esm/components-react/editors/TextEditor.scss +4 -4
  694. package/lib/esm/components-react/editors/TextareaEditor.d.ts.map +1 -1
  695. package/lib/esm/components-react/editors/TextareaEditor.js +22 -9
  696. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  697. package/lib/esm/components-react/editors/TextareaEditor.scss +4 -4
  698. package/lib/esm/components-react/editors/ToggleEditor.d.ts.map +1 -1
  699. package/lib/esm/components-react/editors/ToggleEditor.js +13 -9
  700. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  701. package/lib/esm/components-react/editors/variables.scss +4 -4
  702. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  703. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +3 -3
  704. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  705. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  706. package/lib/esm/components-react/favorite/FavoritePropertyList.js +4 -5
  707. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  708. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  709. package/lib/esm/components-react/filter-builder/FilterBuilder.js +17 -7
  710. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  711. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  712. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +6 -4
  713. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  714. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +1 -0
  715. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  716. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +26 -19
  717. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  718. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  719. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +47 -23
  720. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  721. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  722. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +6 -6
  723. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  724. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  725. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +9 -7
  726. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  727. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  728. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +5 -5
  729. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  730. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  731. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +22 -14
  732. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  733. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  734. package/lib/esm/components-react/filter-builder/Operators.js +17 -18
  735. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  736. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  737. package/lib/esm/components-react/filter-builder/Types.js +3 -3
  738. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  739. package/lib/esm/components-react/filtering/FilteringInput.d.ts +1 -1
  740. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  741. package/lib/esm/components-react/filtering/FilteringInput.js +23 -21
  742. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  743. package/lib/esm/components-react/filtering/FilteringInput.scss +4 -4
  744. package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
  745. package/lib/esm/components-react/filtering/ResultSelector.js +16 -9
  746. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  747. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  748. package/lib/esm/components-react/iconpicker/IconPickerButton.js +9 -10
  749. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  750. package/lib/esm/components-react/inputs/ParsedInput.d.ts +1 -1
  751. package/lib/esm/components-react/inputs/ParsedInput.d.ts.map +1 -1
  752. package/lib/esm/components-react/inputs/ParsedInput.js +8 -7
  753. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  754. package/lib/esm/components-react/inputs/ParsedInput.scss +4 -4
  755. package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
  756. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  757. package/lib/esm/components-react/properties/ItemStyle.js +7 -7
  758. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  759. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  760. package/lib/esm/components-react/properties/LinkHandler.js +4 -4
  761. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  762. package/lib/esm/components-react/properties/ValueRendererManager.d.ts.map +1 -1
  763. package/lib/esm/components-react/properties/ValueRendererManager.js +5 -4
  764. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  765. package/lib/esm/components-react/properties/renderers/ActionButtonList.d.ts.map +1 -1
  766. package/lib/esm/components-react/properties/renderers/ActionButtonList.js +5 -5
  767. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  768. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  769. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js +3 -3
  770. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  771. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.d.ts.map +1 -1
  772. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +22 -11
  773. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  774. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts.map +1 -1
  775. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +11 -10
  776. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  777. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  778. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts.map +1 -1
  779. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +15 -8
  780. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  781. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.d.ts.map +1 -1
  782. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js +24 -7
  783. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  784. package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts.map +1 -1
  785. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +10 -9
  786. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  787. package/lib/esm/components-react/properties/renderers/PropertyView.d.ts.map +1 -1
  788. package/lib/esm/components-react/properties/renderers/PropertyView.js +12 -16
  789. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  790. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  791. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +4 -4
  792. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  793. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts.map +1 -1
  794. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +3 -3
  795. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  796. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  797. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts.map +1 -1
  798. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +7 -5
  799. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  800. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.d.ts.map +1 -1
  801. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +6 -5
  802. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  803. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  804. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -6
  805. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  806. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.d.ts.map +1 -1
  807. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js +5 -4
  808. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  809. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -2
  810. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  811. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +7 -10
  812. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  813. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  814. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -6
  815. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  816. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  817. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +6 -8
  818. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  819. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.d.ts.map +1 -1
  820. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -4
  821. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  822. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  823. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +11 -7
  824. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  825. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  826. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js +4 -4
  827. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  828. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts.map +1 -1
  829. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js +8 -5
  830. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  831. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  832. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +7 -4
  833. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  834. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.d.ts.map +1 -1
  835. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js +3 -3
  836. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  837. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  838. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -3
  839. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  840. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +1 -1
  841. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts.map +1 -1
  842. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js +3 -3
  843. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  844. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  845. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +3 -3
  846. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  847. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +2 -0
  848. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  849. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +38 -7
  850. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  851. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  852. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +6 -5
  853. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  854. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  855. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +8 -8
  856. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  857. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +4 -5
  858. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  859. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  860. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  861. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  862. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +13 -7
  863. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  864. package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts.map +1 -1
  865. package/lib/esm/components-react/propertygrid/component/PropertyList.js +16 -6
  866. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  867. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -0
  868. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  869. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +65 -27
  870. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  871. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  872. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +7 -5
  873. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  874. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +6 -6
  875. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts.map +1 -1
  876. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +56 -20
  877. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  878. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.d.ts.map +1 -1
  879. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +11 -7
  880. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  881. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.d.ts.map +1 -1
  882. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +10 -6
  883. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  884. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.d.ts.map +1 -1
  885. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js +10 -6
  886. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  887. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.d.ts.map +1 -1
  888. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js +10 -6
  889. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  890. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.d.ts.map +1 -1
  891. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js +3 -3
  892. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  893. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts.map +1 -1
  894. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +3 -3
  895. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  896. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  897. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +7 -5
  898. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  899. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts.map +1 -1
  900. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +3 -3
  901. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  902. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  903. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +3 -3
  904. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  905. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  906. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +3 -3
  907. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  908. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  909. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js +3 -3
  910. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  911. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts.map +1 -1
  912. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +10 -6
  913. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  914. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts.map +1 -1
  915. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +4 -4
  916. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  917. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts.map +1 -1
  918. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +10 -6
  919. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  920. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  921. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +4 -1
  922. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  923. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +3 -3
  924. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  925. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +6 -7
  926. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  927. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  928. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +9 -5
  929. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  930. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts.map +1 -1
  931. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  932. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  933. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +4 -5
  934. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  935. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  936. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +4 -4
  937. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  938. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  939. package/lib/esm/components-react/selectable-content/SelectableContent.js +4 -6
  940. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  941. package/lib/esm/components-react/toolbar/Item.d.ts.map +1 -1
  942. package/lib/esm/components-react/toolbar/Item.js +4 -5
  943. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  944. package/lib/esm/components-react/toolbar/Item.scss +7 -5
  945. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  946. package/lib/esm/components-react/toolbar/ItemWrapper.js +5 -5
  947. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  948. package/lib/esm/components-react/toolbar/Items.d.ts.map +1 -1
  949. package/lib/esm/components-react/toolbar/Items.js +17 -9
  950. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  951. package/lib/esm/components-react/toolbar/Overflow.d.ts.map +1 -1
  952. package/lib/esm/components-react/toolbar/Overflow.js +4 -4
  953. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  954. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  955. package/lib/esm/components-react/toolbar/OverflowPanel.js +16 -11
  956. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  957. package/lib/esm/components-react/toolbar/PopupItem.d.ts.map +1 -1
  958. package/lib/esm/components-react/toolbar/PopupItem.js +8 -10
  959. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  960. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  961. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js +22 -13
  962. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  963. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  964. package/lib/esm/components-react/toolbar/PopupItemsPanel.js +24 -23
  965. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  966. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  967. package/lib/esm/components-react/toolbar/Toolbar.js +31 -18
  968. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  969. package/lib/esm/components-react/toolbar/Toolbar.scss +6 -6
  970. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  971. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  972. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +98 -58
  973. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  974. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.d.ts.map +1 -1
  975. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js +3 -3
  976. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  977. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  978. package/lib/esm/components-react/toolbar/groupPanel/Column.js +3 -3
  979. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  980. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  981. package/lib/esm/components-react/toolbar/groupPanel/Columns.js +3 -3
  982. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  983. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  984. package/lib/esm/components-react/toolbar/groupPanel/Panel.js +3 -3
  985. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  986. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  987. package/lib/esm/components-react/toolbar/groupPanel/Title.js +3 -3
  988. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  989. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +4 -4
  990. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.d.ts.map +1 -1
  991. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js +3 -3
  992. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  993. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +5 -4
  994. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  995. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js +4 -5
  996. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  997. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +4 -4
  998. package/lib/esm/components-react/toolbar/useDragInteraction.d.ts.map +1 -1
  999. package/lib/esm/components-react/toolbar/useDragInteraction.js +6 -5
  1000. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  1001. package/lib/esm/components-react/toolbar/utilities/Direction.d.ts.map +1 -1
  1002. package/lib/esm/components-react/toolbar/utilities/Direction.js +3 -3
  1003. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  1004. package/lib/esm/components-react/tree/HighlightingEngine.d.ts.map +1 -1
  1005. package/lib/esm/components-react/tree/HighlightingEngine.js +4 -4
  1006. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  1007. package/lib/esm/components-react/tree/HighlightingEngine.scss +4 -4
  1008. package/lib/esm/components-react/tree/ImageLoader.d.ts.map +1 -1
  1009. package/lib/esm/components-react/tree/ImageLoader.js +3 -3
  1010. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  1011. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  1012. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js +3 -3
  1013. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  1014. package/lib/esm/components-react/tree/TreeComponentTestId.d.ts.map +1 -1
  1015. package/lib/esm/components-react/tree/TreeComponentTestId.js +3 -3
  1016. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  1017. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  1018. package/lib/esm/components-react/tree/TreeDataProvider.js +9 -7
  1019. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  1020. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  1021. package/lib/esm/components-react/tree/controlled/Observable.js +6 -4
  1022. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  1023. package/lib/esm/components-react/tree/controlled/TreeActions.js +3 -3
  1024. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  1025. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
  1026. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +42 -24
  1027. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  1028. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts +3 -3
  1029. package/lib/esm/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
  1030. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js +12 -8
  1031. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  1032. package/lib/esm/components-react/tree/controlled/TreeEvents.d.ts.map +1 -1
  1033. package/lib/esm/components-react/tree/controlled/TreeEvents.js +3 -3
  1034. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  1035. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  1036. package/lib/esm/components-react/tree/controlled/TreeHooks.js +3 -3
  1037. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  1038. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  1039. package/lib/esm/components-react/tree/controlled/TreeModel.js +39 -14
  1040. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  1041. package/lib/esm/components-react/tree/controlled/TreeModelSource.d.ts.map +1 -1
  1042. package/lib/esm/components-react/tree/controlled/TreeModelSource.js +22 -8
  1043. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  1044. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  1045. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +49 -31
  1046. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  1047. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  1048. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +14 -14
  1049. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  1050. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +5 -6
  1051. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts +11 -6
  1052. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  1053. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +15 -14
  1054. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  1055. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  1056. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js +3 -3
  1057. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  1058. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +17 -0
  1059. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  1060. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +16 -7
  1061. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  1062. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  1063. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +49 -19
  1064. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  1065. package/lib/esm/components-react/tree/controlled/internal/SparseTree.d.ts.map +1 -1
  1066. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +3 -3
  1067. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  1068. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.d.ts.map +1 -1
  1069. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js +9 -5
  1070. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  1071. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  1072. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +39 -21
  1073. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  1074. package/lib/esm/components-react.d.ts +1 -0
  1075. package/lib/esm/components-react.d.ts.map +1 -1
  1076. package/lib/esm/components-react.js +4 -3
  1077. package/lib/esm/components-react.js.map +1 -1
  1078. package/package.json +12 -21
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module PropertyEditors
8
8
  */
@@ -67,8 +67,7 @@ class DateTimeEditor extends React.PureComponent {
67
67
  if (this.state.editInUtc) {
68
68
  newValue = (0, DateUtils_1.adjustDateToTimezone)(newValue, newValue.getTimezoneOffset() * -1);
69
69
  }
70
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
71
- this.processDateChange(this.state.typeConverter, newValue);
70
+ void this.processDateChange(this.state.typeConverter, newValue);
72
71
  }
73
72
  };
74
73
  this._handleTimeChange = (time) => {
@@ -113,7 +112,10 @@ class DateTimeEditor extends React.PureComponent {
113
112
  const propertyValue = await this.getPropertyValue();
114
113
  // istanbul ignore else
115
114
  if (propertyValue !== undefined) {
116
- this.props.onCommit({ propertyRecord: this.props.propertyRecord, newValue: propertyValue });
115
+ this.props.onCommit({
116
+ propertyRecord: this.props.propertyRecord,
117
+ newValue: propertyValue,
118
+ });
117
119
  }
118
120
  }
119
121
  };
@@ -154,7 +156,7 @@ class DateTimeEditor extends React.PureComponent {
154
156
  /** @internal */
155
157
  componentDidMount() {
156
158
  this._isMounted = true;
157
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
159
+ void this.setStateFromProps();
158
160
  }
159
161
  /** @internal */
160
162
  componentWillUnmount() {
@@ -163,7 +165,7 @@ class DateTimeEditor extends React.PureComponent {
163
165
  /** @internal */
164
166
  componentDidUpdate(prevProps) {
165
167
  if (this.props.propertyRecord !== prevProps.propertyRecord) {
166
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
168
+ void this.setStateFromProps();
167
169
  }
168
170
  }
169
171
  async setStateFromProps() {
@@ -201,7 +203,9 @@ class DateTimeEditor extends React.PureComponent {
201
203
  timeDisplay = options.timeDisplay;
202
204
  // use 24 hr time display if alternateDateFormat is defined
203
205
  // istanbul ignore next
204
- if (alternateDateFormat && timeDisplay !== appui_abstract_1.TimeDisplay.H24MS && timeDisplay !== appui_abstract_1.TimeDisplay.H24M)
206
+ if (alternateDateFormat &&
207
+ timeDisplay !== appui_abstract_1.TimeDisplay.H24MS &&
208
+ timeDisplay !== appui_abstract_1.TimeDisplay.H24M)
205
209
  timeDisplay = appui_abstract_1.TimeDisplay.H24MS;
206
210
  }
207
211
  // istanbul ignore else
@@ -253,7 +257,9 @@ class DateTimeEditor extends React.PureComponent {
253
257
  }
254
258
  /** @internal */
255
259
  render() {
256
- const date = this.state.editInUtc ? (0, DateUtils_1.adjustDateToTimezone)(this.state.value, 0) : this.state.value;
260
+ const date = this.state.editInUtc
261
+ ? (0, DateUtils_1.adjustDateToTimezone)(this.state.value, 0)
262
+ : this.state.value;
257
263
  const timeSpec = {
258
264
  hours: date.getHours(),
259
265
  minutes: date.getMinutes(),
@@ -266,18 +272,17 @@ class DateTimeEditor extends React.PureComponent {
266
272
  React.createElement(React.Fragment, null,
267
273
  React.createElement("div", { className: "components-date-picker-calendar-popup-panel", "data-testid": "components-date-picker-calendar-popup-panel" },
268
274
  React.createElement(DatePicker_1.DatePicker, { selected: date, onDateChange: this._handleChange, showFocusOutline: false }),
269
- this.state.timeDisplay &&
270
- React.createElement("div", { className: "time-container" },
271
- React.createElement(itwinui_react_1.Text, { variant: "body", className: "time-label" }, "Time"),
272
- React.createElement(TimeField_1.TimeField, { time: timeSpec, timeDisplay: this.state.timeDisplay, onTimeChange: this._handleTimeChange })))),
275
+ this.state.timeDisplay && (React.createElement("div", { className: "time-container" },
276
+ React.createElement(itwinui_react_1.Text, { variant: "body", className: "time-label" }, "Time"),
277
+ React.createElement(TimeField_1.TimeField, { time: timeSpec, timeDisplay: this.state.timeDisplay, onTimeChange: this._handleTimeChange }))))),
273
278
  React.createElement(PopupButton_1.PopupOkCancelButtons, { onOk: this._handleOk, onCancel: this._handleCancel })))));
274
279
  }
275
280
  }
276
281
  exports.DateTimeEditor = DateTimeEditor;
277
282
  /** DateTime Property Editor registered for the "number" type name and "DateTime" editor name.
278
- * It uses the [[DateTimeEditor]] React component.
279
- * @internal
280
- */
283
+ * It uses the [[DateTimeEditor]] React component.
284
+ * @internal
285
+ */
281
286
  class ShortDateTimePropertyEditor extends PropertyEditorManager_1.PropertyEditorBase {
282
287
  get reactNode() {
283
288
  return React.createElement(DateTimeEditor, { showTime: false });
@@ -289,9 +294,9 @@ class ShortDateTimePropertyEditor extends PropertyEditorManager_1.PropertyEditor
289
294
  }
290
295
  exports.ShortDateTimePropertyEditor = ShortDateTimePropertyEditor;
291
296
  /** DateTime Property Editor registered for the "number" type name and "DateTime" editor name.
292
- * It uses the [[DateTimeEditor]] React component.
293
- * @internal
294
- */
297
+ * It uses the [[DateTimeEditor]] React component.
298
+ * @internal
299
+ */
295
300
  class DateTimePropertyEditor extends PropertyEditorManager_1.PropertyEditorBase {
296
301
  get reactNode() {
297
302
  return React.createElement(DateTimeEditor, { showTime: true });
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimeEditor.js","sourceRoot":"","sources":["../../../../src/components-react/editors/DateTimeEditor.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./DateTimeEditor.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { PropertyValue} from \"@itwin/appui-abstract\";\nimport {\n AlternateDateFormats, PropertyValueFormat, StandardTypeNames, TimeDisplay,\n} from \"@itwin/appui-abstract\";\nimport type { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport { PropertyEditorBase, PropertyEditorManager } from \"./PropertyEditorManager\";\nimport { PopupButton, PopupContent, PopupOkCancelButtons } from \"./PopupButton\";\nimport type { TimeSpec } from \"../datepicker/TimeField\";\nimport { TimeField } from \"../datepicker/TimeField\";\nimport type { TypeConverter } from \"../converters/TypeConverter\";\nimport { DatePicker } from \"../datepicker/DatePicker\";\nimport { TypeConverterManager } from \"../converters/TypeConverterManager\";\nimport { DateTimeTypeConverterBase } from \"../converters/DateTimeTypeConverter\";\nimport { Text } from \"@itwin/itwinui-react\";\nimport { adjustDateToTimezone } from \"../common/DateUtils\";\n\n// cSpell:ignore datepicker\n\n/** @internal */\ninterface DateTimeEditorState {\n value: Date;\n displayValue?: string;\n timeDisplay?: TimeDisplay;\n isDisabled?: boolean;\n typeConverter?: TypeConverter;\n editInUtc: boolean;\n}\n\n/** @internal */\ninterface DateTimeEditorProps extends PropertyEditorProps {\n showTime?: boolean;\n}\n\n/** DateTimeEditor React component that is a property editor for selection of date and time.\n * @internal\n */\nexport class DateTimeEditor extends React.PureComponent<DateTimeEditorProps, DateTimeEditorState> implements TypeEditor {\n private _isMounted = false;\n private _enterKey = false;\n private _divElement = React.createRef<HTMLDivElement>();\n\n /** @internal */\n public override readonly state: Readonly<DateTimeEditorState> = {\n value: new Date(),\n editInUtc: false,\n };\n\n public async getPropertyValue(): Promise<PropertyValue | undefined> {\n const record = this.props.propertyRecord;\n let propertyValue: PropertyValue | undefined;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n propertyValue = {\n valueFormat: PropertyValueFormat.Primitive,\n value: this.state.value,\n displayValue: this.state.displayValue,\n };\n }\n\n return propertyValue;\n }\n\n public get htmlElement(): HTMLElement | null {\n return this._divElement.current;\n }\n\n public get hasFocus(): boolean {\n let containsFocus = false;\n // istanbul ignore else\n if (this.htmlElement)\n containsFocus = this.htmlElement.contains(document.activeElement);\n return containsFocus;\n }\n\n public async processDateChange(typeConverter: TypeConverter, newValue: Date): Promise<void> {\n // istanbul ignore else\n if (this.props.propertyRecord) {\n const displayValue = await typeConverter.convertPropertyToString(this.props.propertyRecord.property, newValue);\n this.setState({\n value: newValue,\n displayValue,\n });\n }\n }\n\n private _handleChange = (newValue: Date): void => {\n // istanbul ignore else\n if (this._isMounted && this.state.typeConverter) {\n // istanbul ignore else\n if (this.state.editInUtc) {\n newValue = adjustDateToTimezone(newValue, newValue.getTimezoneOffset() * -1);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n this.processDateChange(this.state.typeConverter, newValue);\n }\n };\n\n private _handleTimeChange = (time: TimeSpec): void => {\n // Combine new time into selected Date\n if (this.state.editInUtc) {\n const newWorkingDate = adjustDateToTimezone(this.state.value, 0);\n newWorkingDate.setUTCHours(time.hours, time.minutes, time.seconds);\n this._handleChange(newWorkingDate);\n } else {\n const newWorkingDate = new Date(this.state.value.getTime());\n newWorkingDate.setHours(time.hours, time.minutes, time.seconds);\n this._handleChange(newWorkingDate);\n }\n };\n\n /** @internal */\n public override componentDidMount() {\n this._isMounted = true;\n this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n\n /** @internal */\n public override componentWillUnmount() {\n this._isMounted = false;\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: PropertyEditorProps) {\n if (this.props.propertyRecord !== prevProps.propertyRecord) {\n this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n\n private async setStateFromProps() {\n const record = this.props.propertyRecord;\n let initialValue: Date | undefined;\n let typeConverter: TypeConverter | undefined;\n let timeDisplay: TimeDisplay | undefined;\n let alternateDateFormat = AlternateDateFormats.None;\n let editInUtc = false;\n\n // istanbul ignore else\n if (this.props.showTime)\n timeDisplay = TimeDisplay.H12MC;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n // istanbul ignore else\n if (record.value.value instanceof Date)\n initialValue = new Date(record.value.value);\n else if (typeof record.value.value === \"string\")\n initialValue = new Date(record.value.value);\n else if (record.value.value === undefined)\n initialValue = new Date();\n\n typeConverter = TypeConverterManager.getConverter(record.property.typename, record.property.converter?.name);\n\n const options = record.property.converter?.options;\n if (options) {\n // istanbul ignore else\n if (\"alternateDateFormat\" in options) {\n // istanbul ignore else\n if (DateTimeTypeConverterBase.isAlternateDateFormats(options.alternateDateFormat)) {\n timeDisplay = TimeDisplay.H24MS;\n alternateDateFormat = options.alternateDateFormat;\n }\n }\n\n if (\"timeDisplay\" in options && this.props.showTime) {\n timeDisplay = options.timeDisplay;\n // use 24 hr time display if alternateDateFormat is defined\n // istanbul ignore next\n if (alternateDateFormat && timeDisplay !== TimeDisplay.H24MS && timeDisplay !== TimeDisplay.H24M)\n timeDisplay = TimeDisplay.H24MS;\n }\n\n // istanbul ignore else\n if (alternateDateFormat) {\n editInUtc = true;\n\n if (this.props.showTime) {\n if (alternateDateFormat === AlternateDateFormats.IsoShort) {\n alternateDateFormat = AlternateDateFormats.IsoDateTime;\n }\n if (alternateDateFormat === AlternateDateFormats.UtcShort) {\n alternateDateFormat = AlternateDateFormats.UtcDateTime;\n }\n if (alternateDateFormat === AlternateDateFormats.UtcShortWithDay) {\n alternateDateFormat = AlternateDateFormats.UtcDateTimeWithDay;\n }\n } else {\n timeDisplay = undefined;\n if (alternateDateFormat === AlternateDateFormats.IsoDateTime)\n alternateDateFormat = AlternateDateFormats.IsoShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTime)\n alternateDateFormat = AlternateDateFormats.UtcShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTimeWithDay)\n alternateDateFormat = AlternateDateFormats.UtcShortWithDay;\n }\n }\n }\n }\n\n // istanbul ignore next\n if (!initialValue) {\n throw new Error(\"Bad Value\");\n }\n\n // istanbul ignore next\n if (!typeConverter) {\n throw new Error(\"Unable to determine TypeConverter\");\n }\n\n const isDisabled = record && !!record.isDisabled;\n const displayValue = await typeConverter.convertPropertyToString(record!.property, initialValue);\n\n // istanbul ignore else\n if (this._isMounted)\n this.setState({\n value: initialValue,\n isDisabled,\n timeDisplay,\n typeConverter,\n displayValue,\n editInUtc,\n });\n }\n\n private _handleEnter = async (): Promise<void> => {\n this._enterKey = true;\n await this._handleCommit();\n };\n\n private _handleClose = async (): Promise<void> => {\n if (this._enterKey) {\n this._enterKey = false;\n } else {\n // istanbul ignore next\n if (this.props.onCancel)\n this.props.onCancel();\n }\n };\n\n private _handleOk = async (_event: React.MouseEvent): Promise<void> => {\n await this._handleCommit();\n };\n\n private _handleCancel = (_event: React.MouseEvent): void => {\n // istanbul ignore else\n if (this.props.onCancel) {\n this.props.onCancel();\n }\n };\n\n private _handleCommit = async (): Promise<void> => {\n // istanbul ignore else\n if (this.props.propertyRecord && this.props.onCommit) {\n const propertyValue = await this.getPropertyValue();\n // istanbul ignore else\n if (propertyValue !== undefined) {\n this.props.onCommit({ propertyRecord: this.props.propertyRecord, newValue: propertyValue });\n }\n }\n };\n\n /** @internal */\n public override render(): React.ReactNode {\n const date = this.state.editInUtc ? adjustDateToTimezone(this.state.value, 0) : this.state.value;\n const timeSpec: TimeSpec = {\n hours: date.getHours(),\n minutes: date.getMinutes(),\n seconds: date.getSeconds(),\n };\n\n const className = classnames(\"components-cell-editor\", \"components-datetime-editor\", this.props.className);\n\n return (\n <div className={className} ref={this._divElement}>\n <PopupButton label={this.state.displayValue} onClose={this._handleClose} onEnter={this._handleEnter}\n setFocus={this.props.setFocus}>\n <PopupContent>\n <>\n <div className=\"components-date-picker-calendar-popup-panel\" data-testid=\"components-date-picker-calendar-popup-panel\">\n <DatePicker selected={date} onDateChange={this._handleChange} showFocusOutline={false} />\n {this.state.timeDisplay &&\n <div className=\"time-container\">\n <Text variant=\"body\" className=\"time-label\">{\"Time\"}</Text>\n <TimeField time={timeSpec} timeDisplay={this.state.timeDisplay} onTimeChange={this._handleTimeChange} />\n </div>\n }\n </div>\n </>\n <PopupOkCancelButtons onOk={this._handleOk} onCancel={this._handleCancel} />\n </PopupContent>\n </PopupButton>\n </div>\n );\n }\n}\n\n/** DateTime Property Editor registered for the \"number\" type name and \"DateTime\" editor name.\n * It uses the [[DateTimeEditor]] React component.\n * @internal\n */\nexport class ShortDateTimePropertyEditor extends PropertyEditorBase {\n public get reactNode(): React.ReactNode {\n return <DateTimeEditor showTime={false} />;\n }\n // istanbul ignore next\n public override get containerHandlesTab(): boolean {\n return false;\n }\n}\n\n/** DateTime Property Editor registered for the \"number\" type name and \"DateTime\" editor name.\n * It uses the [[DateTimeEditor]] React component.\n * @internal\n */\nexport class DateTimePropertyEditor extends PropertyEditorBase {\n public get reactNode(): React.ReactNode {\n return <DateTimeEditor showTime={true} />;\n }\n // istanbul ignore next\n public override get containerHandlesTab(): boolean {\n return false;\n }\n}\n\nPropertyEditorManager.registerEditor(StandardTypeNames.ShortDate, ShortDateTimePropertyEditor);\nPropertyEditorManager.registerEditor(StandardTypeNames.DateTime, DateTimePropertyEditor);\n"]}
1
+ {"version":3,"file":"DateTimeEditor.js","sourceRoot":"","sources":["../../../../src/components-react/editors/DateTimeEditor.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./DateTimeEditor.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { PropertyValue } from \"@itwin/appui-abstract\";\nimport {\n AlternateDateFormats,\n PropertyValueFormat,\n StandardTypeNames,\n TimeDisplay,\n} from \"@itwin/appui-abstract\";\nimport type { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport {\n PropertyEditorBase,\n PropertyEditorManager,\n} from \"./PropertyEditorManager\";\nimport { PopupButton, PopupContent, PopupOkCancelButtons } from \"./PopupButton\";\nimport type { TimeSpec } from \"../datepicker/TimeField\";\nimport { TimeField } from \"../datepicker/TimeField\";\nimport type { TypeConverter } from \"../converters/TypeConverter\";\nimport { DatePicker } from \"../datepicker/DatePicker\";\nimport { TypeConverterManager } from \"../converters/TypeConverterManager\";\nimport { DateTimeTypeConverterBase } from \"../converters/DateTimeTypeConverter\";\nimport { Text } from \"@itwin/itwinui-react\";\nimport { adjustDateToTimezone } from \"../common/DateUtils\";\n\n// cSpell:ignore datepicker\n\n/** @internal */\ninterface DateTimeEditorState {\n value: Date;\n displayValue?: string;\n timeDisplay?: TimeDisplay;\n isDisabled?: boolean;\n typeConverter?: TypeConverter;\n editInUtc: boolean;\n}\n\n/** @internal */\ninterface DateTimeEditorProps extends PropertyEditorProps {\n showTime?: boolean;\n}\n\n/** DateTimeEditor React component that is a property editor for selection of date and time.\n * @internal\n */\nexport class DateTimeEditor\n extends React.PureComponent<DateTimeEditorProps, DateTimeEditorState>\n implements TypeEditor\n{\n private _isMounted = false;\n private _enterKey = false;\n private _divElement = React.createRef<HTMLDivElement>();\n\n /** @internal */\n public override readonly state: Readonly<DateTimeEditorState> = {\n value: new Date(),\n editInUtc: false,\n };\n\n public async getPropertyValue(): Promise<PropertyValue | undefined> {\n const record = this.props.propertyRecord;\n let propertyValue: PropertyValue | undefined;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n propertyValue = {\n valueFormat: PropertyValueFormat.Primitive,\n value: this.state.value,\n displayValue: this.state.displayValue,\n };\n }\n\n return propertyValue;\n }\n\n public get htmlElement(): HTMLElement | null {\n return this._divElement.current;\n }\n\n public get hasFocus(): boolean {\n let containsFocus = false;\n // istanbul ignore else\n if (this.htmlElement)\n containsFocus = this.htmlElement.contains(document.activeElement);\n return containsFocus;\n }\n\n public async processDateChange(\n typeConverter: TypeConverter,\n newValue: Date\n ): Promise<void> {\n // istanbul ignore else\n if (this.props.propertyRecord) {\n const displayValue = await typeConverter.convertPropertyToString(\n this.props.propertyRecord.property,\n newValue\n );\n this.setState({\n value: newValue,\n displayValue,\n });\n }\n }\n\n private _handleChange = (newValue: Date): void => {\n // istanbul ignore else\n if (this._isMounted && this.state.typeConverter) {\n // istanbul ignore else\n if (this.state.editInUtc) {\n newValue = adjustDateToTimezone(\n newValue,\n newValue.getTimezoneOffset() * -1\n );\n }\n\n void this.processDateChange(this.state.typeConverter, newValue);\n }\n };\n\n private _handleTimeChange = (time: TimeSpec): void => {\n // Combine new time into selected Date\n if (this.state.editInUtc) {\n const newWorkingDate = adjustDateToTimezone(this.state.value, 0);\n newWorkingDate.setUTCHours(time.hours, time.minutes, time.seconds);\n this._handleChange(newWorkingDate);\n } else {\n const newWorkingDate = new Date(this.state.value.getTime());\n newWorkingDate.setHours(time.hours, time.minutes, time.seconds);\n this._handleChange(newWorkingDate);\n }\n };\n\n /** @internal */\n public override componentDidMount() {\n this._isMounted = true;\n void this.setStateFromProps();\n }\n\n /** @internal */\n public override componentWillUnmount() {\n this._isMounted = false;\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: PropertyEditorProps) {\n if (this.props.propertyRecord !== prevProps.propertyRecord) {\n void this.setStateFromProps();\n }\n }\n\n private async setStateFromProps() {\n const record = this.props.propertyRecord;\n let initialValue: Date | undefined;\n let typeConverter: TypeConverter | undefined;\n let timeDisplay: TimeDisplay | undefined;\n let alternateDateFormat = AlternateDateFormats.None;\n let editInUtc = false;\n\n // istanbul ignore else\n if (this.props.showTime) timeDisplay = TimeDisplay.H12MC;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n // istanbul ignore else\n if (record.value.value instanceof Date)\n initialValue = new Date(record.value.value);\n else if (typeof record.value.value === \"string\")\n initialValue = new Date(record.value.value);\n else if (record.value.value === undefined) initialValue = new Date();\n\n typeConverter = TypeConverterManager.getConverter(\n record.property.typename,\n record.property.converter?.name\n );\n\n const options = record.property.converter?.options;\n if (options) {\n // istanbul ignore else\n if (\"alternateDateFormat\" in options) {\n // istanbul ignore else\n if (\n DateTimeTypeConverterBase.isAlternateDateFormats(\n options.alternateDateFormat\n )\n ) {\n timeDisplay = TimeDisplay.H24MS;\n alternateDateFormat = options.alternateDateFormat;\n }\n }\n\n if (\"timeDisplay\" in options && this.props.showTime) {\n timeDisplay = options.timeDisplay;\n // use 24 hr time display if alternateDateFormat is defined\n // istanbul ignore next\n if (\n alternateDateFormat &&\n timeDisplay !== TimeDisplay.H24MS &&\n timeDisplay !== TimeDisplay.H24M\n )\n timeDisplay = TimeDisplay.H24MS;\n }\n\n // istanbul ignore else\n if (alternateDateFormat) {\n editInUtc = true;\n\n if (this.props.showTime) {\n if (alternateDateFormat === AlternateDateFormats.IsoShort) {\n alternateDateFormat = AlternateDateFormats.IsoDateTime;\n }\n if (alternateDateFormat === AlternateDateFormats.UtcShort) {\n alternateDateFormat = AlternateDateFormats.UtcDateTime;\n }\n if (alternateDateFormat === AlternateDateFormats.UtcShortWithDay) {\n alternateDateFormat = AlternateDateFormats.UtcDateTimeWithDay;\n }\n } else {\n timeDisplay = undefined;\n if (alternateDateFormat === AlternateDateFormats.IsoDateTime)\n alternateDateFormat = AlternateDateFormats.IsoShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTime)\n alternateDateFormat = AlternateDateFormats.UtcShort;\n if (alternateDateFormat === AlternateDateFormats.UtcDateTimeWithDay)\n alternateDateFormat = AlternateDateFormats.UtcShortWithDay;\n }\n }\n }\n }\n\n // istanbul ignore next\n if (!initialValue) {\n throw new Error(\"Bad Value\");\n }\n\n // istanbul ignore next\n if (!typeConverter) {\n throw new Error(\"Unable to determine TypeConverter\");\n }\n\n const isDisabled = record && !!record.isDisabled;\n const displayValue = await typeConverter.convertPropertyToString(\n record!.property,\n initialValue\n );\n\n // istanbul ignore else\n if (this._isMounted)\n this.setState({\n value: initialValue,\n isDisabled,\n timeDisplay,\n typeConverter,\n displayValue,\n editInUtc,\n });\n }\n\n private _handleEnter = async (): Promise<void> => {\n this._enterKey = true;\n await this._handleCommit();\n };\n\n private _handleClose = async (): Promise<void> => {\n if (this._enterKey) {\n this._enterKey = false;\n } else {\n // istanbul ignore next\n if (this.props.onCancel) this.props.onCancel();\n }\n };\n\n private _handleOk = async (_event: React.MouseEvent): Promise<void> => {\n await this._handleCommit();\n };\n\n private _handleCancel = (_event: React.MouseEvent): void => {\n // istanbul ignore else\n if (this.props.onCancel) {\n this.props.onCancel();\n }\n };\n\n private _handleCommit = async (): Promise<void> => {\n // istanbul ignore else\n if (this.props.propertyRecord && this.props.onCommit) {\n const propertyValue = await this.getPropertyValue();\n // istanbul ignore else\n if (propertyValue !== undefined) {\n this.props.onCommit({\n propertyRecord: this.props.propertyRecord,\n newValue: propertyValue,\n });\n }\n }\n };\n\n /** @internal */\n public override render(): React.ReactNode {\n const date = this.state.editInUtc\n ? adjustDateToTimezone(this.state.value, 0)\n : this.state.value;\n const timeSpec: TimeSpec = {\n hours: date.getHours(),\n minutes: date.getMinutes(),\n seconds: date.getSeconds(),\n };\n\n const className = classnames(\n \"components-cell-editor\",\n \"components-datetime-editor\",\n this.props.className\n );\n\n return (\n <div className={className} ref={this._divElement}>\n <PopupButton\n label={this.state.displayValue}\n onClose={this._handleClose}\n onEnter={this._handleEnter}\n setFocus={this.props.setFocus}\n >\n <PopupContent>\n <>\n <div\n className=\"components-date-picker-calendar-popup-panel\"\n data-testid=\"components-date-picker-calendar-popup-panel\"\n >\n <DatePicker\n selected={date}\n onDateChange={this._handleChange}\n showFocusOutline={false}\n />\n {this.state.timeDisplay && (\n <div className=\"time-container\">\n <Text variant=\"body\" className=\"time-label\">\n {\"Time\"}\n </Text>\n <TimeField\n time={timeSpec}\n timeDisplay={this.state.timeDisplay}\n onTimeChange={this._handleTimeChange}\n />\n </div>\n )}\n </div>\n </>\n <PopupOkCancelButtons\n onOk={this._handleOk}\n onCancel={this._handleCancel}\n />\n </PopupContent>\n </PopupButton>\n </div>\n );\n }\n}\n\n/** DateTime Property Editor registered for the \"number\" type name and \"DateTime\" editor name.\n * It uses the [[DateTimeEditor]] React component.\n * @internal\n */\nexport class ShortDateTimePropertyEditor extends PropertyEditorBase {\n public get reactNode(): React.ReactNode {\n return <DateTimeEditor showTime={false} />;\n }\n // istanbul ignore next\n public override get containerHandlesTab(): boolean {\n return false;\n }\n}\n\n/** DateTime Property Editor registered for the \"number\" type name and \"DateTime\" editor name.\n * It uses the [[DateTimeEditor]] React component.\n * @internal\n */\nexport class DateTimePropertyEditor extends PropertyEditorBase {\n public get reactNode(): React.ReactNode {\n return <DateTimeEditor showTime={true} />;\n }\n // istanbul ignore next\n public override get containerHandlesTab(): boolean {\n return false;\n }\n}\n\nPropertyEditorManager.registerEditor(\n StandardTypeNames.ShortDate,\n ShortDateTimePropertyEditor\n);\nPropertyEditorManager.registerEditor(\n StandardTypeNames.DateTime,\n DateTimePropertyEditor\n);\n"]}
@@ -1,9 +1,9 @@
1
1
  /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
5
  // cSpell:ignore datetime
6
6
 
7
7
  .components-datetime-editor {
8
- min-width: 100%;
8
+ min-width: 100%;
9
9
  }
@@ -51,9 +51,9 @@ export interface EditorContainerProps extends CommonProps {
51
51
  /** @internal */
52
52
  ignoreEditorBlur?: boolean;
53
53
  /**
54
- * Indicates whether value change should call onCommit().
55
- * @internal
56
- */
54
+ * Indicates whether value change should call onCommit().
55
+ * @internal
56
+ */
57
57
  shouldCommitOnChange?: boolean;
58
58
  }
59
59
  /** Interface implemented by React based type editors
@@ -1 +1 @@
1
- {"version":3,"file":"EditorContainer.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/EditorContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAE1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,sCAAsC;IACtC,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,kCAAkC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,yBAAyB;IACzB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/C,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB;IACvB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,kCAAkC;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC9C,yBAAyB;IACzB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,gBAAgB;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;MAGE;IACF,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAOD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAC3D,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC;IAE5E,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,eAAe,CAAiC;IAExD,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,iBAAiB,CAIvB;IAEF,OAAO,CAAC,oBAAoB,CAE1B;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,cAAc,CAepB;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,oBAAoB;YAYd,eAAe;IAkB7B,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,sBAAsB,CAM5B;IAEF,OAAO,CAAC,OAAO,CAkBb;IAEF,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,aAAa,CAEnB;IAEF,gBAAgB;IACA,MAAM;CAevB"}
1
+ {"version":3,"file":"EditorContainer.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/EditorContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOrD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,sCAAsC;IACtC,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,kCAAkC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,yBAAyB;IACzB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/C,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB;IACvB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,kCAAkC;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC9C,yBAAyB;IACzB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,gBAAgB;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAOD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAC3D,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC;IAC5E,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,eAAe,CAAiC;IAExD,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,iBAAiB,CAQvB;IAEF,OAAO,CAAC,oBAAoB,CAE1B;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,cAAc,CAkBpB;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,oBAAoB;YAsBd,eAAe;IAqB7B,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,sBAAsB,CAU5B;IAEF,OAAO,CAAC,OAAO,CAqBb;IAEF,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,aAAa,CAEnB;IAEF,gBAAgB;IACA,MAAM;CAgBvB"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module PropertyEditors
8
8
  */
@@ -44,8 +44,10 @@ class EditorContainer extends React.PureComponent {
44
44
  super(...arguments);
45
45
  this._handleEditorBlur = (_e) => {
46
46
  // istanbul ignore else
47
- if (!this.props.ignoreEditorBlur && this._propertyEditor && this._propertyEditor.containerHandlesBlur)
48
- this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises
47
+ if (!this.props.ignoreEditorBlur &&
48
+ this._propertyEditor &&
49
+ this._propertyEditor.containerHandlesBlur)
50
+ void this._handleContainerCommit();
49
51
  };
50
52
  this._handleContainerBlur = (e) => {
51
53
  e.stopPropagation();
@@ -65,7 +67,8 @@ class EditorContainer extends React.PureComponent {
65
67
  this.onPressTab(e);
66
68
  break;
67
69
  default:
68
- if (this._propertyEditor && this._propertyEditor.containerStopsKeydownPropagation)
70
+ if (this._propertyEditor &&
71
+ this._propertyEditor.containerStopsKeydownPropagation)
69
72
  e.stopPropagation();
70
73
  }
71
74
  };
@@ -73,13 +76,16 @@ class EditorContainer extends React.PureComponent {
73
76
  e.stopPropagation();
74
77
  };
75
78
  this._handleEditorCommit = (args) => {
76
- this._commit(args); // eslint-disable-line @typescript-eslint/no-floating-promises
79
+ void this._commit(args);
77
80
  };
78
81
  this._handleContainerCommit = async () => {
79
- const newValue = this._editorRef && await this._editorRef.getPropertyValue();
82
+ const newValue = this._editorRef && (await this._editorRef.getPropertyValue());
80
83
  // istanbul ignore else
81
84
  if (newValue !== undefined) {
82
- this._commit({ propertyRecord: this.props.propertyRecord, newValue }); // eslint-disable-line @typescript-eslint/no-floating-promises
85
+ void this._commit({
86
+ propertyRecord: this.props.propertyRecord,
87
+ newValue,
88
+ });
83
89
  }
84
90
  };
85
91
  this._commit = async (args) => {
@@ -108,7 +114,7 @@ class EditorContainer extends React.PureComponent {
108
114
  };
109
115
  }
110
116
  createEditor() {
111
- const editorRef = (ref) => this._editorRef = ref;
117
+ const editorRef = (ref) => (this._editorRef = ref);
112
118
  const editorProps = {
113
119
  ref: editorRef,
114
120
  onCommit: this._handleEditorCommit,
@@ -121,7 +127,9 @@ class EditorContainer extends React.PureComponent {
121
127
  shouldCommitOnChange: this.props.shouldCommitOnChange,
122
128
  };
123
129
  const propDescription = this.props.propertyRecord.property;
124
- const editorName = propDescription.editor !== undefined ? propDescription.editor.name : undefined;
130
+ const editorName = propDescription.editor !== undefined
131
+ ? propDescription.editor.name
132
+ : undefined;
125
133
  this._propertyEditor = PropertyEditorManager_1.PropertyEditorManager.createEditor(propDescription.typename, editorName, propDescription.dataController);
126
134
  const editorNode = this._propertyEditor.reactNode;
127
135
  let clonedNode = null;
@@ -143,14 +151,14 @@ class EditorContainer extends React.PureComponent {
143
151
  // istanbul ignore else
144
152
  if (this._editorRef && this._editorRef.hasFocus)
145
153
  e.stopPropagation();
146
- this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises
154
+ void this._handleContainerCommit();
147
155
  }
148
156
  }
149
157
  onPressTab(e) {
150
158
  // istanbul ignore else
151
159
  if (this._propertyEditor && this._propertyEditor.containerHandlesTab) {
152
160
  e.stopPropagation();
153
- this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises
161
+ void this._handleContainerCommit();
154
162
  }
155
163
  }
156
164
  displayOutputMessage(errorMessage) {
@@ -1 +1 @@
1
- {"version":3,"file":"EditorContainer.js","sourceRoot":"","sources":["../../../../src/components-react/editors/EditorContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./EditorContainer.scss\";\nimport * as React from \"react\";\nimport type { PropertyRecord, PropertyValue} from \"@itwin/appui-abstract\";\nimport { SpecialKey, UiAdmin } from \"@itwin/appui-abstract\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type { AsyncErrorMessage, PropertyEditorBase} from \"./PropertyEditorManager\";\nimport { PropertyEditorManager } from \"./PropertyEditorManager\";\n\n/** Arguments for the Property Updated event callback\n * @public\n */\nexport interface PropertyUpdatedArgs {\n /** The property being updated. */\n propertyRecord: PropertyRecord;\n /** The new value for the property. */\n newValue: PropertyValue;\n}\n\n/** Properties for a property editor component\n * @public\n */\nexport interface PropertyEditorProps extends CommonProps {\n /** The property being updated. */\n propertyRecord?: PropertyRecord;\n /** Handler for commit */\n onCommit?: (args: PropertyUpdatedArgs) => void;\n /** Handler for cancel */\n onCancel?: () => void;\n /** Handler for blur */\n onBlur?: (event: React.FocusEvent) => void;\n /** Indicates whether the Property Editor should set focus */\n setFocus?: boolean;\n /**\n * Indicates whether value change should call onCommit().\n * @internal\n */\n shouldCommitOnChange?: boolean;\n}\n\n/** [[EditorContainer]] React component properties\n * @public\n */\nexport interface EditorContainerProps extends CommonProps {\n /** The property being updated. */\n propertyRecord: PropertyRecord;\n /** Tooltip text */\n title?: string;\n /** Handler for commit */\n onCommit: (args: PropertyUpdatedArgs) => void;\n /** Handler for cancel */\n onCancel: () => void;\n /** Indicates whether the Property Editor should set focus */\n setFocus?: boolean;\n\n /** @internal */\n ignoreEditorBlur?: boolean;\n /**\n * Indicates whether value change should call onCommit().\n * @internal\n */\n shouldCommitOnChange?: boolean;\n}\n\n/** @internal */\ninterface CloneProps extends PropertyEditorProps {\n ref: (ref: any) => void;\n}\n\n/** Interface implemented by React based type editors\n * @public\n */\nexport interface TypeEditor {\n getPropertyValue: () => Promise<PropertyValue | undefined>;\n htmlElement: HTMLElement | null;\n hasFocus: boolean;\n}\n\n/**\n * EditorContainer React component used by the Tree and PropertyGrid for cell editing.\n * @public\n */\nexport class EditorContainer extends React.PureComponent<EditorContainerProps> {\n\n private _editorRef: TypeEditor | undefined;\n private _propertyEditor: PropertyEditorBase | undefined;\n\n private createEditor(): React.ReactNode {\n const editorRef = (ref: TypeEditor | undefined) => this._editorRef = ref;\n\n const editorProps: CloneProps = {\n ref: editorRef,\n onCommit: this._handleEditorCommit,\n onCancel: this._handleEditorCancel,\n onBlur: this._handleEditorBlur,\n propertyRecord: this.props.propertyRecord,\n setFocus: this.props.setFocus !== undefined ? this.props.setFocus : true,\n className: this.props.className,\n style: this.props.style,\n shouldCommitOnChange: this.props.shouldCommitOnChange,\n };\n\n const propDescription = this.props.propertyRecord.property;\n\n const editorName = propDescription.editor !== undefined ? propDescription.editor.name : undefined;\n this._propertyEditor = PropertyEditorManager.createEditor(propDescription.typename, editorName, propDescription.dataController);\n const editorNode: React.ReactNode = this._propertyEditor.reactNode;\n\n let clonedNode: React.ReactNode = null;\n // istanbul ignore else\n if (React.isValidElement(editorNode)) {\n clonedNode = React.cloneElement(editorNode, editorProps);\n }\n\n return clonedNode;\n }\n\n private _handleEditorBlur = (_e: React.FocusEvent) => {\n // istanbul ignore else\n if (!this.props.ignoreEditorBlur && this._propertyEditor && this._propertyEditor.containerHandlesBlur)\n this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises\n };\n\n private _handleContainerBlur = (e: React.FocusEvent) => {\n e.stopPropagation();\n };\n\n private _handleClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n };\n\n private _handleKeyDown = (e: React.KeyboardEvent) => {\n switch (e.key) {\n case SpecialKey.Escape:\n this.onPressEscape(e);\n break;\n case SpecialKey.Enter:\n this.onPressEnter(e);\n break;\n case SpecialKey.Tab:\n this.onPressTab(e);\n break;\n default:\n if (this._propertyEditor && this._propertyEditor.containerStopsKeydownPropagation)\n e.stopPropagation();\n }\n };\n\n private _handleRightClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n };\n\n private onPressEscape(_e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesEscape) {\n this._commitCancel();\n }\n }\n\n private onPressEnter(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesEnter) {\n // istanbul ignore else\n if (this._editorRef && this._editorRef.hasFocus)\n e.stopPropagation();\n this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n\n private onPressTab(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesTab) {\n e.stopPropagation();\n this._handleContainerCommit(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n\n private displayOutputMessage(errorMessage: AsyncErrorMessage | undefined) {\n // istanbul ignore else\n if (errorMessage && this._editorRef) {\n const htmlElement = this._editorRef && this._editorRef.htmlElement;\n // istanbul ignore else\n if (htmlElement)\n UiAdmin.messagePresenter.displayInputFieldMessage(htmlElement, errorMessage.severity, errorMessage.briefMessage, errorMessage.detailedMessage);\n else\n UiAdmin.messagePresenter.displayMessage(errorMessage.severity, errorMessage.briefMessage, errorMessage.detailedMessage, errorMessage.messageType);\n }\n }\n\n private async isNewValueValid(value: PropertyValue): Promise<boolean> {\n let isValid = true;\n\n // istanbul ignore else\n if (this._propertyEditor && this.props.propertyRecord) {\n const validateResult = await this._propertyEditor.validateValue(value, this.props.propertyRecord);\n\n if (validateResult.encounteredError) {\n this.displayOutputMessage(validateResult.errorMessage);\n isValid = false;\n }\n } else {\n isValid = false;\n }\n\n return isValid;\n }\n\n private _handleEditorCommit = (args: PropertyUpdatedArgs): void => {\n this._commit(args); // eslint-disable-line @typescript-eslint/no-floating-promises\n };\n\n private _handleContainerCommit = async (): Promise<void> => {\n const newValue = this._editorRef && await this._editorRef.getPropertyValue();\n // istanbul ignore else\n if (newValue !== undefined) {\n this._commit({ propertyRecord: this.props.propertyRecord, newValue }); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n };\n\n private _commit = async (args: PropertyUpdatedArgs) => {\n const newValue = args.newValue;\n const isValid = await this.isNewValueValid(newValue);\n if (isValid) {\n let doCommit = true;\n // istanbul ignore else\n if (this._propertyEditor && args.propertyRecord) {\n const commitResult = await this._propertyEditor.commitValue(newValue, args.propertyRecord);\n if (commitResult.encounteredError) {\n this.displayOutputMessage(commitResult.errorMessage);\n doCommit = false;\n }\n }\n\n if (doCommit) {\n this.props.onCommit(args);\n }\n }\n };\n\n private _handleEditorCancel = () => {\n this._commitCancel();\n };\n\n private _commitCancel = () => {\n this.props.onCancel();\n };\n\n /** @internal */\n public override render() {\n return (\n <span className=\"components-editor-container\"\n onBlur={this._handleContainerBlur}\n onKeyDown={this._handleKeyDown}\n onClick={this._handleClick}\n onContextMenu={this._handleRightClick}\n title={this.props.title}\n data-testid=\"editor-container\"\n role=\"presentation\"\n >\n {this.createEditor()}\n </span>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"EditorContainer.js","sourceRoot":"","sources":["../../../../src/components-react/editors/EditorContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./EditorContainer.scss\";\nimport * as React from \"react\";\nimport type { PropertyRecord, PropertyValue } from \"@itwin/appui-abstract\";\nimport { SpecialKey, UiAdmin } from \"@itwin/appui-abstract\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type {\n AsyncErrorMessage,\n PropertyEditorBase,\n} from \"./PropertyEditorManager\";\nimport { PropertyEditorManager } from \"./PropertyEditorManager\";\n\n/** Arguments for the Property Updated event callback\n * @public\n */\nexport interface PropertyUpdatedArgs {\n /** The property being updated. */\n propertyRecord: PropertyRecord;\n /** The new value for the property. */\n newValue: PropertyValue;\n}\n\n/** Properties for a property editor component\n * @public\n */\nexport interface PropertyEditorProps extends CommonProps {\n /** The property being updated. */\n propertyRecord?: PropertyRecord;\n /** Handler for commit */\n onCommit?: (args: PropertyUpdatedArgs) => void;\n /** Handler for cancel */\n onCancel?: () => void;\n /** Handler for blur */\n onBlur?: (event: React.FocusEvent) => void;\n /** Indicates whether the Property Editor should set focus */\n setFocus?: boolean;\n /**\n * Indicates whether value change should call onCommit().\n * @internal\n */\n shouldCommitOnChange?: boolean;\n}\n\n/** [[EditorContainer]] React component properties\n * @public\n */\nexport interface EditorContainerProps extends CommonProps {\n /** The property being updated. */\n propertyRecord: PropertyRecord;\n /** Tooltip text */\n title?: string;\n /** Handler for commit */\n onCommit: (args: PropertyUpdatedArgs) => void;\n /** Handler for cancel */\n onCancel: () => void;\n /** Indicates whether the Property Editor should set focus */\n setFocus?: boolean;\n\n /** @internal */\n ignoreEditorBlur?: boolean;\n /**\n * Indicates whether value change should call onCommit().\n * @internal\n */\n shouldCommitOnChange?: boolean;\n}\n\n/** @internal */\ninterface CloneProps extends PropertyEditorProps {\n ref: (ref: any) => void;\n}\n\n/** Interface implemented by React based type editors\n * @public\n */\nexport interface TypeEditor {\n getPropertyValue: () => Promise<PropertyValue | undefined>;\n htmlElement: HTMLElement | null;\n hasFocus: boolean;\n}\n\n/**\n * EditorContainer React component used by the Tree and PropertyGrid for cell editing.\n * @public\n */\nexport class EditorContainer extends React.PureComponent<EditorContainerProps> {\n private _editorRef: TypeEditor | undefined;\n private _propertyEditor: PropertyEditorBase | undefined;\n\n private createEditor(): React.ReactNode {\n const editorRef = (ref: TypeEditor | undefined) => (this._editorRef = ref);\n\n const editorProps: CloneProps = {\n ref: editorRef,\n onCommit: this._handleEditorCommit,\n onCancel: this._handleEditorCancel,\n onBlur: this._handleEditorBlur,\n propertyRecord: this.props.propertyRecord,\n setFocus: this.props.setFocus !== undefined ? this.props.setFocus : true,\n className: this.props.className,\n style: this.props.style,\n shouldCommitOnChange: this.props.shouldCommitOnChange,\n };\n\n const propDescription = this.props.propertyRecord.property;\n\n const editorName =\n propDescription.editor !== undefined\n ? propDescription.editor.name\n : undefined;\n this._propertyEditor = PropertyEditorManager.createEditor(\n propDescription.typename,\n editorName,\n propDescription.dataController\n );\n const editorNode: React.ReactNode = this._propertyEditor.reactNode;\n\n let clonedNode: React.ReactNode = null;\n // istanbul ignore else\n if (React.isValidElement(editorNode)) {\n clonedNode = React.cloneElement(editorNode, editorProps);\n }\n\n return clonedNode;\n }\n\n private _handleEditorBlur = (_e: React.FocusEvent) => {\n // istanbul ignore else\n if (\n !this.props.ignoreEditorBlur &&\n this._propertyEditor &&\n this._propertyEditor.containerHandlesBlur\n )\n void this._handleContainerCommit();\n };\n\n private _handleContainerBlur = (e: React.FocusEvent) => {\n e.stopPropagation();\n };\n\n private _handleClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n };\n\n private _handleKeyDown = (e: React.KeyboardEvent) => {\n switch (e.key) {\n case SpecialKey.Escape:\n this.onPressEscape(e);\n break;\n case SpecialKey.Enter:\n this.onPressEnter(e);\n break;\n case SpecialKey.Tab:\n this.onPressTab(e);\n break;\n default:\n if (\n this._propertyEditor &&\n this._propertyEditor.containerStopsKeydownPropagation\n )\n e.stopPropagation();\n }\n };\n\n private _handleRightClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n };\n\n private onPressEscape(_e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesEscape) {\n this._commitCancel();\n }\n }\n\n private onPressEnter(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesEnter) {\n // istanbul ignore else\n if (this._editorRef && this._editorRef.hasFocus) e.stopPropagation();\n void this._handleContainerCommit();\n }\n }\n\n private onPressTab(e: React.KeyboardEvent): void {\n // istanbul ignore else\n if (this._propertyEditor && this._propertyEditor.containerHandlesTab) {\n e.stopPropagation();\n void this._handleContainerCommit();\n }\n }\n\n private displayOutputMessage(errorMessage: AsyncErrorMessage | undefined) {\n // istanbul ignore else\n if (errorMessage && this._editorRef) {\n const htmlElement = this._editorRef && this._editorRef.htmlElement;\n // istanbul ignore else\n if (htmlElement)\n UiAdmin.messagePresenter.displayInputFieldMessage(\n htmlElement,\n errorMessage.severity,\n errorMessage.briefMessage,\n errorMessage.detailedMessage\n );\n else\n UiAdmin.messagePresenter.displayMessage(\n errorMessage.severity,\n errorMessage.briefMessage,\n errorMessage.detailedMessage,\n errorMessage.messageType\n );\n }\n }\n\n private async isNewValueValid(value: PropertyValue): Promise<boolean> {\n let isValid = true;\n\n // istanbul ignore else\n if (this._propertyEditor && this.props.propertyRecord) {\n const validateResult = await this._propertyEditor.validateValue(\n value,\n this.props.propertyRecord\n );\n\n if (validateResult.encounteredError) {\n this.displayOutputMessage(validateResult.errorMessage);\n isValid = false;\n }\n } else {\n isValid = false;\n }\n\n return isValid;\n }\n\n private _handleEditorCommit = (args: PropertyUpdatedArgs): void => {\n void this._commit(args);\n };\n\n private _handleContainerCommit = async (): Promise<void> => {\n const newValue =\n this._editorRef && (await this._editorRef.getPropertyValue());\n // istanbul ignore else\n if (newValue !== undefined) {\n void this._commit({\n propertyRecord: this.props.propertyRecord,\n newValue,\n });\n }\n };\n\n private _commit = async (args: PropertyUpdatedArgs) => {\n const newValue = args.newValue;\n const isValid = await this.isNewValueValid(newValue);\n if (isValid) {\n let doCommit = true;\n // istanbul ignore else\n if (this._propertyEditor && args.propertyRecord) {\n const commitResult = await this._propertyEditor.commitValue(\n newValue,\n args.propertyRecord\n );\n if (commitResult.encounteredError) {\n this.displayOutputMessage(commitResult.errorMessage);\n doCommit = false;\n }\n }\n\n if (doCommit) {\n this.props.onCommit(args);\n }\n }\n };\n\n private _handleEditorCancel = () => {\n this._commitCancel();\n };\n\n private _commitCancel = () => {\n this.props.onCancel();\n };\n\n /** @internal */\n public override render() {\n return (\n <span\n className=\"components-editor-container\"\n onBlur={this._handleContainerBlur}\n onKeyDown={this._handleKeyDown}\n onClick={this._handleClick}\n onContextMenu={this._handleRightClick}\n title={this.props.title}\n data-testid=\"editor-container\"\n role=\"presentation\"\n >\n {this.createEditor()}\n </span>\n );\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
5
  .components-editor-container {
6
6
  width: 100%;
7
- }
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"EnumButtonGroupEditor.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/EnumButtonGroupEditor.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EACe,iBAAiB,EAAE,cAAc,EAC1D,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAI9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yBAAyB,CAAC;AAKpF,gBAAgB;AAChB,UAAU,0BAA0B;IAClC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK,CAAC,SAAS,CAAC,mBAAmB,EAAE,0BAA0B,CAAE,YAAW,UAAU;IAC/H,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,oBAAoB,CAAgE;IAE5F,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,0BAA0B,CAAC,CAIlE;IAEW,gBAAgB,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAgBnE,IAAW,WAAW,IAAI,WAAW,GAAG,IAAI,CAE3C;IAED,IAAW,QAAQ,IAAI,OAAO,CAM7B;IAED,gBAAgB;IACA,iBAAiB;IAIjC,gBAAgB;IACA,kBAAkB,CAAC,SAAS,EAAE,mBAAmB;YAMnD,iBAAiB;IAiD/B,OAAO,CAAC,kBAAkB,CAoBxB;IAEF,OAAO,CAAC,SAAS;IA8BjB,gBAAgB;IACA,MAAM;CAMvB;AAED;;;GAGG;AACH,qBAAa,6BAA8B,SAAQ,kBAAkB;IACnE,IAAW,SAAS,IAAI,KAAK,CAAC,SAAS,CAEtC;CACF"}
1
+ {"version":3,"file":"EnumButtonGroupEditor.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/EnumButtonGroupEditor.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAEV,iBAAiB,EACjB,cAAc,EAGd,aAAa,EACd,MAAM,uBAAuB,CAAC;AAS/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EACL,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AAKjC,gBAAgB;AAChB,UAAU,0BAA0B;IAClC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,qBACX,SAAQ,KAAK,CAAC,SAAS,CAAC,mBAAmB,EAAE,0BAA0B,CACvE,YAAW,UAAU;IAErB,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,oBAAoB,CACmC;IAE/D,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,0BAA0B,CAAC,CAIlE;IAEW,gBAAgB,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAgBnE,IAAW,WAAW,IAAI,WAAW,GAAG,IAAI,CAE3C;IAED,IAAW,QAAQ,IAAI,OAAO,CAM7B;IAED,gBAAgB;IACA,iBAAiB;IAIjC,gBAAgB;IACA,kBAAkB,CAAC,SAAS,EAAE,mBAAmB;YAMnD,iBAAiB;IAgE/B,OAAO,CAAC,kBAAkB,CAuBxB;IAEF,OAAO,CAAC,SAAS;IAkCjB,gBAAgB;IACA,MAAM;CAkBvB;AAED;;;GAGG;AACH,qBAAa,6BAA8B,SAAQ,kBAAkB;IAEnE,IAAW,SAAS,IAAI,KAAK,CAAC,SAAS,CAEtC;CACF"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
6
  /** @packageDocumentation
7
7
  * @module PropertyEditors
8
8
  */
@@ -101,18 +101,20 @@ class EnumButtonGroupEditor extends React.Component {
101
101
  }
102
102
  /** @internal */
103
103
  componentDidMount() {
104
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
104
+ void this.setStateFromProps();
105
105
  }
106
106
  /** @internal */
107
107
  componentDidUpdate(prevProps) {
108
108
  if (this.props.propertyRecord !== prevProps.propertyRecord) {
109
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
109
+ void this.setStateFromProps();
110
110
  }
111
111
  }
112
112
  async setStateFromProps() {
113
113
  const { propertyRecord } = this.props;
114
114
  // istanbul ignore else
115
- if (propertyRecord && propertyRecord.property.enum && propertyRecord.value.valueFormat === appui_abstract_1.PropertyValueFormat.Primitive) {
115
+ if (propertyRecord &&
116
+ propertyRecord.property.enum &&
117
+ propertyRecord.value.valueFormat === appui_abstract_1.PropertyValueFormat.Primitive) {
116
118
  const primitiveValue = propertyRecord.value.value;
117
119
  let selectValue;
118
120
  if (typeof primitiveValue === "string") {
@@ -135,9 +137,11 @@ class EnumButtonGroupEditor extends React.Component {
135
137
  const enumIcons = new Array(numChoices);
136
138
  enumIcons.fill({ iconSpec: this._placeholderIconSpec });
137
139
  // istanbul ignore else
138
- if (propertyRecord.property.editor && propertyRecord.property.editor.params) {
140
+ if (propertyRecord.property.editor &&
141
+ propertyRecord.property.editor.params) {
139
142
  // istanbul ignore else
140
- if (propertyRecord.property.editor && propertyRecord.property.editor.params) {
143
+ if (propertyRecord.property.editor &&
144
+ propertyRecord.property.editor.params) {
141
145
  const bgParams = propertyRecord.property.editor.params.find((param) => param.type === appui_abstract_1.PropertyEditorParamTypes.ButtonGroupData);
142
146
  // istanbul ignore else
143
147
  if (bgParams) {
@@ -154,8 +158,10 @@ class EnumButtonGroupEditor extends React.Component {
154
158
  }
155
159
  }
156
160
  getButton(choice, index) {
157
- const choiceValue = this.state.choices ? this.state.choices[index].value : /* istanbul ignore next */ 0;
158
- const isActive = (choiceValue === this.state.selectValue) ? true : false;
161
+ const choiceValue = this.state.choices
162
+ ? this.state.choices[index].value
163
+ : /* istanbul ignore next */ 0;
164
+ const isActive = choiceValue === this.state.selectValue ? true : false;
159
165
  let isDisabled = false;
160
166
  const isEnabledFunction = this.state.enumIcons[index].isEnabledFunction;
161
167
  // istanbul ignore else
@@ -168,7 +174,9 @@ class EnumButtonGroupEditor extends React.Component {
168
174
  }
169
175
  /** @internal */
170
176
  render() {
171
- return (React.createElement("div", { className: (0, classnames_1.default)("components-enumbuttongroup-editor", this.props.className), style: this.props.style, ref: this._divElement }, this.state.choices && this.state.enumIcons.length && this.state.choices.map((choice, index) => this.getButton(choice, index))));
177
+ return (React.createElement("div", { className: (0, classnames_1.default)("components-enumbuttongroup-editor", this.props.className), style: this.props.style, ref: this._divElement }, this.state.choices &&
178
+ this.state.enumIcons.length &&
179
+ this.state.choices.map((choice, index) => this.getButton(choice, index))));
172
180
  }
173
181
  }
174
182
  exports.EnumButtonGroupEditor = EnumButtonGroupEditor;
@@ -177,6 +185,7 @@ exports.EnumButtonGroupEditor = EnumButtonGroupEditor;
177
185
  * @public
178
186
  */
179
187
  class EnumPropertyButtonGroupEditor extends PropertyEditorManager_1.PropertyEditorBase {
188
+ // istanbul ignore next
180
189
  get reactNode() {
181
190
  return React.createElement(EnumButtonGroupEditor, null);
182
191
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EnumButtonGroupEditor.js","sourceRoot":"","sources":["../../../../src/components-react/editors/EnumButtonGroupEditor.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wCAAsC;AACtC,4DAAoC;AACpC,6CAA+B;AAI/B,0DAC+B;AAC/B,kDAAyC;AAEzC,mEAAoF;AACpF,mGAA0E;AAW1E;;GAEG;AACH,MAAa,qBAAsB,SAAQ,KAAK,CAAC,SAA0D;IAA3G;;QACU,aAAQ,GAAG,IAAI,GAAG,EAAsC,CAAC;QACzD,gBAAW,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;QAChD,yBAAoB,GAAG,kCAAiB,CAAC,0BAA0B,CAAC,yBAAc,CAAC,CAAC;QAE5F,gBAAgB;QACS,UAAK,GAAyC;YACrE,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,EAAE;SACZ,CAAC;QA2FM,uBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;YAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAgC,CAAC;YAEnE,uBAAuB;YACvB,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,EAAE;gBAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;gBAEpD,IAAI,CAAC,QAAQ,CAAC;oBACZ,WAAW;iBACZ,EAAE,KAAK,IAAI,EAAE;oBACZ,uBAAuB;oBACvB,IAAI,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;wBACzC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACpD,uBAAuB;wBACvB,IAAI,aAAa,KAAK,SAAS,EAAE;4BAC/B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;yBAClE;qBACF;gBACH,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;IAuCJ,CAAC;IApJQ,KAAK,CAAC,gBAAgB;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACzC,IAAI,aAAwC,CAAC;QAE7C,uBAAuB;QACvB,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,oCAAmB,CAAC,SAAS,EAAE;YACxE,aAAa,GAAG;gBACd,WAAW,EAAE,oCAAmB,CAAC,SAAS;gBAC1C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;gBAC7B,YAAY,EAAE,EAAE;aACjB,CAAC;SACH;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,IAAW,QAAQ;QACjB,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,uBAAuB;QACvB,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO;YAC1B,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC5E,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,gBAAgB;IACA,iBAAiB;QAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,8DAA8D;IAC1F,CAAC;IAED,gBAAgB;IACA,kBAAkB,CAAC,SAA8B;QAC/D,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,cAAc,EAAE;YAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,8DAA8D;SACzF;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAEtC,uBAAuB;QACvB,IAAI,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,WAAW,KAAK,oCAAmB,CAAC,SAAS,EAAE;YACxH,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;YAClD,IAAI,WAA4B,CAAC;YAEjC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;gBACtC,WAAW,GAAG,cAAc,CAAC;aAC9B;iBAAM;gBACL,WAAW,GAAG,cAAwB,CAAC;aACxC;YAED,IAAI,OAAO,GAAwB,EAAE,CAAC;YACtC,uBAAuB;YACvB,IAAI,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAClD,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,YAAY,OAAO,EAAE;oBAC3D,OAAO,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;iBACtD;qBAAM;oBACL,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;iBAChD;aACF;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;YAClC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAiB,UAAU,CAAC,CAAC;YACxD,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;YAExD,uBAAuB;YACvB,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3E,uBAAuB;gBACvB,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC3E,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAA2B,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,yCAAwB,CAAC,eAAe,CAA4B,CAAC;oBACjL,uBAAuB;oBACvB,IAAI,QAAQ,EAAE;wBACZ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAuB,EAAE,KAAa,EAAE,EAAE;4BAClE,uBAAuB;4BACvB,IAAI,KAAK,GAAG,UAAU,EAAE;gCACtB,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;6BAC5B;wBACH,CAAC,CAAC,CAAC;qBACJ;iBACF;aACF;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;SACpD;IACH,CAAC;IAwBO,SAAS,CAAC,MAAyB,EAAE,KAAa;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACxG,MAAM,QAAQ,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACzE,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC;QACxE,uBAAuB;QACvB,IAAI,iBAAiB,EAAE;YACrB,UAAU,GAAG,CAAC,iBAAiB,EAAE,CAAC;SACnC;QAED,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,mCAAmC,EACnC,UAAU,IAAI,gBAAgB,EAC9B,QAAQ,IAAI,cAAc,CAC3B,CAAC;QAEF,OAAO,CACL,gCACE,GAAG,EAAE,CAAC,GAA2B,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,iBACnE,MAAM,CAAC,KAAK,EACzB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,GAAG,EAAE,MAAM,CAAC,KAAK,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;YAE7C,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAI,CAChD,CACX,CAAC;IACJ,CAAC;IAED,gBAAgB;IACA,MAAM;QACpB,OAAO,CACL,6BAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,mCAAmC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,IAClI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAyB,EAAE,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CACrJ,CAAC,CAAC;IACZ,CAAC;CACF;AAhKD,sDAgKC;AAED;;;GAGG;AACH,MAAa,6BAA8B,SAAQ,0CAAkB;IACnE,IAAW,SAAS;QAClB,OAAO,oBAAC,qBAAqB,OAAG,CAAC;IACnC,CAAC;CACF;AAJD,sEAIC;AAED,6CAAqB,CAAC,cAAc,CAAC,kCAAiB,CAAC,IAAI,EAAE,6BAA6B,EAAE,oCAAmB,CAAC,eAAe,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./EnumButtonGroupEditor.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n ButtonGroupEditorParams, EnumerationChoice, IconDefinition, PropertyEditorParams, PropertyRecord,\n PropertyValue} from \"@itwin/appui-abstract\";\nimport { IconSpecUtilities, PropertyEditorParamTypes, PropertyValueFormat, StandardEditorNames, StandardTypeNames,\n} from \"@itwin/appui-abstract\";\nimport { Icon } from \"@itwin/core-react\";\nimport type { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport { PropertyEditorBase, PropertyEditorManager } from \"./PropertyEditorManager\";\nimport svgPlaceholder from \"@bentley/icons-generic/icons/placeholder.svg\";\n\n// cspell:ignore buttongroup enumbuttongroup\n\n/** @internal */\ninterface EnumButtonGroupEditorState {\n selectValue: string | number;\n enumIcons: IconDefinition[];\n choices: EnumerationChoice[];\n}\n\n/** EnumButtonGroupEditor React component that is a property editor with select input\n * @public\n */\nexport class EnumButtonGroupEditor extends React.Component<PropertyEditorProps, EnumButtonGroupEditorState> implements TypeEditor {\n private _btnRefs = new Map<string | number, HTMLButtonElement>();\n private _divElement = React.createRef<HTMLDivElement>();\n private _placeholderIconSpec = IconSpecUtilities.createWebComponentIconSpec(svgPlaceholder);\n\n /** @internal */\n public override readonly state: Readonly<EnumButtonGroupEditorState> = {\n selectValue: \"\",\n enumIcons: [],\n choices: [],\n };\n\n public async getPropertyValue(): Promise<PropertyValue | undefined> {\n const record = this.props.propertyRecord;\n let propertyValue: PropertyValue | undefined;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n propertyValue = {\n valueFormat: PropertyValueFormat.Primitive,\n value: this.state.selectValue,\n displayValue: \"\",\n };\n }\n\n return propertyValue;\n }\n\n public get htmlElement(): HTMLElement | null {\n return this._divElement.current;\n }\n\n public get hasFocus(): boolean {\n let containsFocus = false;\n // istanbul ignore else\n if (this._divElement.current)\n containsFocus = this._divElement.current.contains(document.activeElement);\n return containsFocus;\n }\n\n /** @internal */\n public override componentDidMount() {\n this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: PropertyEditorProps) {\n if (this.props.propertyRecord !== prevProps.propertyRecord) {\n this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n\n private async setStateFromProps() {\n const { propertyRecord } = this.props;\n\n // istanbul ignore else\n if (propertyRecord && propertyRecord.property.enum && propertyRecord.value.valueFormat === PropertyValueFormat.Primitive) {\n const primitiveValue = propertyRecord.value.value;\n let selectValue: string | number;\n\n if (typeof primitiveValue === \"string\") {\n selectValue = primitiveValue;\n } else {\n selectValue = primitiveValue as number;\n }\n\n let choices: EnumerationChoice[] = [];\n // istanbul ignore else\n if (propertyRecord && propertyRecord.property.enum) {\n if (propertyRecord.property.enum.choices instanceof Promise) {\n choices = await propertyRecord.property.enum.choices;\n } else {\n choices = propertyRecord.property.enum.choices;\n }\n }\n\n const numChoices = choices.length;\n const enumIcons = new Array<IconDefinition>(numChoices);\n enumIcons.fill({ iconSpec: this._placeholderIconSpec });\n\n // istanbul ignore else\n if (propertyRecord.property.editor && propertyRecord.property.editor.params) {\n // istanbul ignore else\n if (propertyRecord.property.editor && propertyRecord.property.editor.params) {\n const bgParams = propertyRecord.property.editor.params.find((param: PropertyEditorParams) => param.type === PropertyEditorParamTypes.ButtonGroupData) as ButtonGroupEditorParams;\n // istanbul ignore else\n if (bgParams) {\n bgParams.buttons.forEach((iconDef: IconDefinition, index: number) => {\n // istanbul ignore else\n if (index < numChoices) {\n enumIcons[index] = iconDef;\n }\n });\n }\n }\n }\n\n this.setState({ selectValue, enumIcons, choices });\n }\n }\n\n private _handleButtonClick = (index: number) => {\n const propertyRecord = this.props.propertyRecord as PropertyRecord;\n\n // istanbul ignore else\n if (this.state.choices && this.state.choices.length > index) {\n const selectValue = this.state.choices[index].value;\n\n this.setState({\n selectValue,\n }, async () => {\n // istanbul ignore else\n if (propertyRecord && this.props.onCommit) {\n const propertyValue = await this.getPropertyValue();\n // istanbul ignore else\n if (propertyValue !== undefined) {\n this.props.onCommit({ propertyRecord, newValue: propertyValue });\n }\n }\n });\n }\n };\n\n private getButton(choice: EnumerationChoice, index: number) {\n const choiceValue = this.state.choices ? this.state.choices[index].value : /* istanbul ignore next */ 0;\n const isActive = (choiceValue === this.state.selectValue) ? true : false;\n let isDisabled = false;\n const isEnabledFunction = this.state.enumIcons[index].isEnabledFunction;\n // istanbul ignore else\n if (isEnabledFunction) {\n isDisabled = !isEnabledFunction();\n }\n\n const className = classnames(\n \"components-enumbuttongroup-button\",\n isDisabled && \"nz-is-disabled\",\n isActive && \"nz-is-active\",\n );\n\n return (\n <button\n ref={(ref: HTMLButtonElement|null) => ref && this._btnRefs.set(choiceValue, ref)}\n data-testid={choice.label}\n className={className}\n title={choice.label}\n key={choice.label}\n onClick={() => this._handleButtonClick(index)}\n >\n <Icon iconSpec={this.state.enumIcons[index].iconSpec} />\n </button >\n );\n }\n\n /** @internal */\n public override render() {\n return (\n <div className={classnames(\"components-enumbuttongroup-editor\", this.props.className)} style={this.props.style} ref={this._divElement}>\n {this.state.choices && this.state.enumIcons.length && this.state.choices.map((choice: EnumerationChoice, index: number) => this.getButton(choice, index))}\n </div>);\n }\n}\n\n/** Enum Property Button Group Editor registered for the \"enum\" type name and the \"enum-buttongroup\" editor name.\n * It uses the [[EnumButtonGroupEditor]] React component.\n * @public\n */\nexport class EnumPropertyButtonGroupEditor extends PropertyEditorBase { // istanbul ignore next\n public get reactNode(): React.ReactNode {\n return <EnumButtonGroupEditor />;\n }\n}\n\nPropertyEditorManager.registerEditor(StandardTypeNames.Enum, EnumPropertyButtonGroupEditor, StandardEditorNames.EnumButtonGroup);\n"]}
1
+ {"version":3,"file":"EnumButtonGroupEditor.js","sourceRoot":"","sources":["../../../../src/components-react/editors/EnumButtonGroupEditor.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyEditors\n */\n\nimport \"./EnumButtonGroupEditor.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n ButtonGroupEditorParams,\n EnumerationChoice,\n IconDefinition,\n PropertyEditorParams,\n PropertyRecord,\n PropertyValue,\n} from \"@itwin/appui-abstract\";\nimport {\n IconSpecUtilities,\n PropertyEditorParamTypes,\n PropertyValueFormat,\n StandardEditorNames,\n StandardTypeNames,\n} from \"@itwin/appui-abstract\";\nimport { Icon } from \"@itwin/core-react\";\nimport type { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport {\n PropertyEditorBase,\n PropertyEditorManager,\n} from \"./PropertyEditorManager\";\nimport svgPlaceholder from \"@bentley/icons-generic/icons/placeholder.svg\";\n\n// cspell:ignore buttongroup enumbuttongroup\n\n/** @internal */\ninterface EnumButtonGroupEditorState {\n selectValue: string | number;\n enumIcons: IconDefinition[];\n choices: EnumerationChoice[];\n}\n\n/** EnumButtonGroupEditor React component that is a property editor with select input\n * @public\n */\nexport class EnumButtonGroupEditor\n extends React.Component<PropertyEditorProps, EnumButtonGroupEditorState>\n implements TypeEditor\n{\n private _btnRefs = new Map<string | number, HTMLButtonElement>();\n private _divElement = React.createRef<HTMLDivElement>();\n private _placeholderIconSpec =\n IconSpecUtilities.createWebComponentIconSpec(svgPlaceholder);\n\n /** @internal */\n public override readonly state: Readonly<EnumButtonGroupEditorState> = {\n selectValue: \"\",\n enumIcons: [],\n choices: [],\n };\n\n public async getPropertyValue(): Promise<PropertyValue | undefined> {\n const record = this.props.propertyRecord;\n let propertyValue: PropertyValue | undefined;\n\n // istanbul ignore else\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n propertyValue = {\n valueFormat: PropertyValueFormat.Primitive,\n value: this.state.selectValue,\n displayValue: \"\",\n };\n }\n\n return propertyValue;\n }\n\n public get htmlElement(): HTMLElement | null {\n return this._divElement.current;\n }\n\n public get hasFocus(): boolean {\n let containsFocus = false;\n // istanbul ignore else\n if (this._divElement.current)\n containsFocus = this._divElement.current.contains(document.activeElement);\n return containsFocus;\n }\n\n /** @internal */\n public override componentDidMount() {\n void this.setStateFromProps();\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: PropertyEditorProps) {\n if (this.props.propertyRecord !== prevProps.propertyRecord) {\n void this.setStateFromProps();\n }\n }\n\n private async setStateFromProps() {\n const { propertyRecord } = this.props;\n\n // istanbul ignore else\n if (\n propertyRecord &&\n propertyRecord.property.enum &&\n propertyRecord.value.valueFormat === PropertyValueFormat.Primitive\n ) {\n const primitiveValue = propertyRecord.value.value;\n let selectValue: string | number;\n\n if (typeof primitiveValue === \"string\") {\n selectValue = primitiveValue;\n } else {\n selectValue = primitiveValue as number;\n }\n\n let choices: EnumerationChoice[] = [];\n // istanbul ignore else\n if (propertyRecord && propertyRecord.property.enum) {\n if (propertyRecord.property.enum.choices instanceof Promise) {\n choices = await propertyRecord.property.enum.choices;\n } else {\n choices = propertyRecord.property.enum.choices;\n }\n }\n\n const numChoices = choices.length;\n const enumIcons = new Array<IconDefinition>(numChoices);\n enumIcons.fill({ iconSpec: this._placeholderIconSpec });\n\n // istanbul ignore else\n if (\n propertyRecord.property.editor &&\n propertyRecord.property.editor.params\n ) {\n // istanbul ignore else\n if (\n propertyRecord.property.editor &&\n propertyRecord.property.editor.params\n ) {\n const bgParams = propertyRecord.property.editor.params.find(\n (param: PropertyEditorParams) =>\n param.type === PropertyEditorParamTypes.ButtonGroupData\n ) as ButtonGroupEditorParams;\n // istanbul ignore else\n if (bgParams) {\n bgParams.buttons.forEach(\n (iconDef: IconDefinition, index: number) => {\n // istanbul ignore else\n if (index < numChoices) {\n enumIcons[index] = iconDef;\n }\n }\n );\n }\n }\n }\n\n this.setState({ selectValue, enumIcons, choices });\n }\n }\n\n private _handleButtonClick = (index: number) => {\n const propertyRecord = this.props.propertyRecord as PropertyRecord;\n\n // istanbul ignore else\n if (this.state.choices && this.state.choices.length > index) {\n const selectValue = this.state.choices[index].value;\n\n this.setState(\n {\n selectValue,\n },\n async () => {\n // istanbul ignore else\n if (propertyRecord && this.props.onCommit) {\n const propertyValue = await this.getPropertyValue();\n // istanbul ignore else\n if (propertyValue !== undefined) {\n this.props.onCommit({ propertyRecord, newValue: propertyValue });\n }\n }\n }\n );\n }\n };\n\n private getButton(choice: EnumerationChoice, index: number) {\n const choiceValue = this.state.choices\n ? this.state.choices[index].value\n : /* istanbul ignore next */ 0;\n const isActive = choiceValue === this.state.selectValue ? true : false;\n let isDisabled = false;\n const isEnabledFunction = this.state.enumIcons[index].isEnabledFunction;\n // istanbul ignore else\n if (isEnabledFunction) {\n isDisabled = !isEnabledFunction();\n }\n\n const className = classnames(\n \"components-enumbuttongroup-button\",\n isDisabled && \"nz-is-disabled\",\n isActive && \"nz-is-active\"\n );\n\n return (\n <button\n ref={(ref: HTMLButtonElement | null) =>\n ref && this._btnRefs.set(choiceValue, ref)\n }\n data-testid={choice.label}\n className={className}\n title={choice.label}\n key={choice.label}\n onClick={() => this._handleButtonClick(index)}\n >\n <Icon iconSpec={this.state.enumIcons[index].iconSpec} />\n </button>\n );\n }\n\n /** @internal */\n public override render() {\n return (\n <div\n className={classnames(\n \"components-enumbuttongroup-editor\",\n this.props.className\n )}\n style={this.props.style}\n ref={this._divElement}\n >\n {this.state.choices &&\n this.state.enumIcons.length &&\n this.state.choices.map((choice: EnumerationChoice, index: number) =>\n this.getButton(choice, index)\n )}\n </div>\n );\n }\n}\n\n/** Enum Property Button Group Editor registered for the \"enum\" type name and the \"enum-buttongroup\" editor name.\n * It uses the [[EnumButtonGroupEditor]] React component.\n * @public\n */\nexport class EnumPropertyButtonGroupEditor extends PropertyEditorBase {\n // istanbul ignore next\n public get reactNode(): React.ReactNode {\n return <EnumButtonGroupEditor />;\n }\n}\n\nPropertyEditorManager.registerEditor(\n StandardTypeNames.Enum,\n EnumPropertyButtonGroupEditor,\n StandardEditorNames.EnumButtonGroup\n);\n"]}
@@ -15,8 +15,8 @@ interface EnumEditorState {
15
15
  parentDiv: HTMLDivElement | null;
16
16
  }
17
17
  /** EnumEditor React component that is a property editor with select input
18
- * @public
19
- */
18
+ * @public
19
+ */
20
20
  export declare class EnumEditor extends React.PureComponent<PropertyEditorProps, EnumEditorState> implements TypeEditor {
21
21
  private _isMounted;
22
22
  private _ariaLabel;
@@ -38,9 +38,9 @@ export declare class EnumEditor extends React.PureComponent<PropertyEditorProps,
38
38
  render(): JSX.Element;
39
39
  }
40
40
  /** Enum Property Button Group Editor registered for the "enum" type name.
41
- * It uses the [[EnumEditor]] React component.
42
- * @public
43
- */
41
+ * It uses the [[EnumEditor]] React component.
42
+ * @public
43
+ */
44
44
  export declare class EnumPropertyEditor extends PropertyEditorBase {
45
45
  get containerHandlesEnter(): boolean;
46
46
  get containerStopsKeydownPropagation(): boolean;