@itwin/components-react 4.0.0-dev.2 → 4.0.0-dev.20

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 (747) hide show
  1. package/CHANGELOG.md +156 -6
  2. package/LICENSE.md +1 -1
  3. package/README.md +2 -2
  4. package/lib/cjs/components-react/UiComponents.js +1 -1
  5. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  6. package/lib/cjs/components-react/common/DateUtils.d.ts +2 -2
  7. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  8. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +1 -1
  9. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  10. package/lib/cjs/components-react/common/DelayedSpinner.js +7 -4
  11. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  12. package/lib/cjs/components-react/common/IImageLoader.d.ts +3 -3
  13. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  14. package/lib/cjs/components-react/common/ImageRenderer.js +6 -2
  15. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  16. package/lib/cjs/components-react/common/UseAsyncValue.d.ts +1 -1
  17. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  18. package/lib/cjs/components-react/common/UseAsyncValue.js +7 -3
  19. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  20. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  21. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  22. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +16 -2
  23. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  24. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +1 -1
  25. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  26. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  27. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  28. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +1 -1
  29. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  30. package/lib/cjs/components-react/converters/NumericTypeConverter.js +2 -4
  31. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  32. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  33. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  34. package/lib/cjs/components-react/converters/StringTypeConverter.js +2 -2
  35. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  36. package/lib/cjs/components-react/converters/TypeConverter.js +1 -2
  37. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  38. package/lib/cjs/components-react/converters/TypeConverterManager.js +1 -1
  39. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  40. package/lib/cjs/components-react/datepicker/DateField.js +5 -1
  41. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  42. package/lib/cjs/components-react/datepicker/DateField.scss +1 -1
  43. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  44. package/lib/cjs/components-react/datepicker/DatePicker.js +9 -4
  45. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  46. package/lib/cjs/components-react/datepicker/DatePicker.scss +9 -10
  47. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  48. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +7 -2
  49. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  50. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +5 -5
  51. package/lib/cjs/components-react/datepicker/TimeField.js +5 -1
  52. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  53. package/lib/cjs/components-react/datepicker/TimeField.scss +4 -4
  54. package/lib/cjs/components-react/editors/BooleanEditor.js +5 -1
  55. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  56. package/lib/cjs/components-react/editors/CustomNumberEditor.js +7 -5
  57. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  58. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +1 -2
  59. package/lib/cjs/components-react/editors/DateTimeEditor.js +9 -6
  60. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  61. package/lib/cjs/components-react/editors/EditorContainer.d.ts +10 -0
  62. package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
  63. package/lib/cjs/components-react/editors/EditorContainer.js +6 -1
  64. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  65. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  66. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  67. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +8 -2
  68. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  69. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +16 -57
  70. package/lib/cjs/components-react/editors/EnumEditor.js +5 -1
  71. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  72. package/lib/cjs/components-react/editors/EnumEditor.scss +2 -2
  73. package/lib/cjs/components-react/editors/IconEditor.js +5 -1
  74. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  75. package/lib/cjs/components-react/editors/IconEditor.scss +1 -1
  76. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +5 -1
  77. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  78. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  79. package/lib/cjs/components-react/editors/NumericInputEditor.js +6 -2
  80. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  81. package/lib/cjs/components-react/editors/NumericInputEditor.scss +1 -2
  82. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  83. package/lib/cjs/components-react/editors/PopupButton.js +13 -8
  84. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  85. package/lib/cjs/components-react/editors/PopupButton.scss +13 -13
  86. package/lib/cjs/components-react/editors/PropertyEditorManager.js +6 -2
  87. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  88. package/lib/cjs/components-react/editors/SliderEditor.js +5 -1
  89. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  90. package/lib/cjs/components-react/editors/SliderEditor.scss +2 -2
  91. package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
  92. package/lib/cjs/components-react/editors/TextEditor.js +14 -5
  93. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  94. package/lib/cjs/components-react/editors/TextEditor.scss +1 -2
  95. package/lib/cjs/components-react/editors/TextareaEditor.d.ts +1 -1
  96. package/lib/cjs/components-react/editors/TextareaEditor.js +6 -2
  97. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  98. package/lib/cjs/components-react/editors/ToggleEditor.js +5 -1
  99. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  100. package/lib/cjs/components-react/editors/variables.scss +1 -0
  101. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  102. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  103. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +29 -3
  104. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  105. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +7 -4
  106. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  107. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  108. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  109. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -82
  110. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  111. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  112. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  113. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +87 -0
  114. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  115. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  116. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  117. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +27 -13
  118. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  119. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +4 -6
  120. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  121. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  122. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +27 -15
  123. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  124. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +3 -11
  125. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  126. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  127. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +17 -8
  128. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  129. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  130. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  131. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +20 -9
  132. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  133. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  134. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  135. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +18 -8
  136. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  137. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  138. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  139. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +65 -9
  140. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  141. package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
  142. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  143. package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
  144. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  145. package/lib/cjs/components-react/filter-builder/Types.d.ts +25 -5
  146. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  147. package/lib/cjs/components-react/filter-builder/Types.js +11 -1
  148. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  149. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  150. package/lib/cjs/components-react/filtering/FilteringInput.js +17 -6
  151. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  152. package/lib/cjs/components-react/filtering/FilteringInput.scss +3 -13
  153. package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
  154. package/lib/cjs/components-react/filtering/ResultSelector.js +11 -3
  155. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  156. package/lib/cjs/components-react/filtering/ResultSelector.scss +3 -8
  157. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  158. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +13 -5
  159. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  160. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +5 -5
  161. package/lib/cjs/components-react/inputs/ParsedInput.js +5 -1
  162. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  163. package/lib/cjs/components-react/inputs/ParsedInput.scss +2 -2
  164. package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
  165. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  166. package/lib/cjs/components-react/properties/LinkHandler.d.ts +3 -3
  167. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  168. package/lib/cjs/components-react/properties/LinkHandler.js +6 -2
  169. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  170. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -1
  171. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  172. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  173. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  174. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +8 -5
  175. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  176. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +6 -2
  177. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  178. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +7 -4
  179. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  180. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +5 -1
  181. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  182. package/lib/cjs/components-react/properties/renderers/PropertyView.js +5 -1
  183. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  184. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +5 -3
  185. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  186. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +8 -3
  187. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  188. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +5 -1
  189. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  190. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +6 -3
  191. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  192. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +10 -10
  193. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +5 -1
  194. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  195. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -3
  196. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  197. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +8 -7
  198. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  199. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -3
  200. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  201. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  202. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +9 -8
  203. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  204. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -1
  205. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  206. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -1
  207. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  208. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  209. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  210. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +5 -1
  211. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  212. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +5 -1
  213. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  214. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +5 -1
  215. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  216. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +5 -1
  217. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  218. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  219. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  220. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -4
  221. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  222. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  223. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  224. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  225. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  226. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +10 -2
  227. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  228. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +5 -1
  229. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  230. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +6 -3
  231. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  232. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +8 -7
  233. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  234. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  235. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  236. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  237. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  238. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  239. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +5 -1
  240. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  241. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +5 -1
  242. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  243. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  244. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  245. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +53 -54
  246. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  247. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +17 -8
  248. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  249. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  250. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  251. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  252. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  253. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  254. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  255. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  256. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  257. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  258. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  259. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  260. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  261. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  262. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  263. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  264. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  265. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  266. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  267. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  268. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  269. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  270. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  271. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  272. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  273. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  274. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  275. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  276. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  277. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  278. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  279. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  280. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  281. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  282. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  283. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  284. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  285. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  286. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  287. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  288. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  289. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  290. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  291. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  292. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  293. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  294. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  295. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  296. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  297. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  298. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  299. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  300. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  301. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +6 -2
  302. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  303. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  304. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  305. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +10 -8
  306. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  307. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +2 -0
  308. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  309. package/lib/cjs/components-react/selectable-content/SelectableContent.js +10 -7
  310. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  311. package/lib/cjs/components-react/toolbar/Item.js +5 -1
  312. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  313. package/lib/cjs/components-react/toolbar/Item.scss +20 -51
  314. package/lib/cjs/components-react/toolbar/ItemWrapper.js +5 -1
  315. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  316. package/lib/cjs/components-react/toolbar/Items.js +5 -1
  317. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  318. package/lib/cjs/components-react/toolbar/Items.scss +2 -3
  319. package/lib/cjs/components-react/toolbar/Overflow.js +5 -1
  320. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  321. package/lib/cjs/components-react/toolbar/OverflowPanel.js +5 -1
  322. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  323. package/lib/cjs/components-react/toolbar/PopupItem.js +5 -1
  324. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  325. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +5 -1
  326. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  327. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +5 -1
  328. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  329. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +4 -2
  330. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  331. package/lib/cjs/components-react/toolbar/Toolbar.js +7 -2
  332. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  333. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  334. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  335. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +13 -6
  336. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  337. package/lib/cjs/components-react/toolbar/_variables.scss +4 -4
  338. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +5 -1
  339. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  340. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +2 -2
  341. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +5 -1
  342. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  343. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +5 -1
  344. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  345. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +5 -1
  346. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  347. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +2 -4
  348. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +5 -1
  349. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  350. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +1 -2
  351. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +1 -1
  352. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +5 -1
  353. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  354. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +5 -1
  355. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  356. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +9 -38
  357. package/lib/cjs/components-react/toolbar/useDragInteraction.js +5 -1
  358. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  359. package/lib/cjs/components-react/toolbar/utilities/Direction.js +2 -2
  360. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  361. package/lib/cjs/components-react/tree/HighlightingEngine.js +6 -2
  362. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  363. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  364. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  365. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +4 -4
  366. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  367. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +12 -2
  368. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  369. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  370. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +3 -3
  371. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  372. package/lib/cjs/components-react/tree/controlled/TreeModel.js +7 -13
  373. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  374. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  375. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  376. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  377. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  378. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +6 -3
  379. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  380. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +7 -7
  381. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  382. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +6 -1
  383. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  384. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +1 -2
  385. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  386. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  387. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +5 -1
  388. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  389. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  390. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  391. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +6 -2
  392. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  393. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  394. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  395. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +7 -3
  396. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  397. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +1 -2
  398. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  399. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  400. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  401. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  402. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  403. package/lib/cjs/components-react.d.ts +4 -8
  404. package/lib/cjs/components-react.d.ts.map +1 -1
  405. package/lib/cjs/components-react.js +9 -9
  406. package/lib/cjs/components-react.js.map +1 -1
  407. package/lib/esm/components-react/UiComponents.js +2 -1
  408. package/lib/esm/components-react/UiComponents.js.map +1 -1
  409. package/lib/esm/components-react/common/DateUtils.d.ts +2 -2
  410. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  411. package/lib/esm/components-react/common/DelayedSpinner.d.ts +1 -1
  412. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  413. package/lib/esm/components-react/common/DelayedSpinner.js +2 -3
  414. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  415. package/lib/esm/components-react/common/IImageLoader.d.ts +3 -3
  416. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  417. package/lib/esm/components-react/common/ImageRenderer.js +2 -1
  418. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  419. package/lib/esm/components-react/common/UseAsyncValue.d.ts +1 -1
  420. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  421. package/lib/esm/components-react/common/UseAsyncValue.js +2 -2
  422. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  423. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  424. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  425. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +16 -2
  426. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  427. package/lib/esm/components-react/converters/BooleanTypeConverter.js +2 -1
  428. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  429. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  430. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  431. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +1 -1
  432. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  433. package/lib/esm/components-react/converters/NumericTypeConverter.js +2 -4
  434. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  435. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  436. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  437. package/lib/esm/components-react/converters/StringTypeConverter.js +2 -2
  438. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  439. package/lib/esm/components-react/converters/TypeConverter.js +1 -2
  440. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  441. package/lib/esm/components-react/converters/TypeConverterManager.js +2 -1
  442. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  443. package/lib/esm/components-react/datepicker/DateField.scss +1 -1
  444. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  445. package/lib/esm/components-react/datepicker/DatePicker.js +4 -3
  446. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  447. package/lib/esm/components-react/datepicker/DatePicker.scss +9 -10
  448. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  449. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +3 -2
  450. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  451. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +5 -5
  452. package/lib/esm/components-react/datepicker/TimeField.scss +4 -4
  453. package/lib/esm/components-react/editors/CustomNumberEditor.js +2 -4
  454. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  455. package/lib/esm/components-react/editors/CustomNumberEditor.scss +1 -2
  456. package/lib/esm/components-react/editors/DateTimeEditor.js +4 -5
  457. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  458. package/lib/esm/components-react/editors/EditorContainer.d.ts +10 -0
  459. package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
  460. package/lib/esm/components-react/editors/EditorContainer.js +1 -0
  461. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  462. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  463. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  464. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +4 -2
  465. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  466. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +16 -57
  467. package/lib/esm/components-react/editors/EnumEditor.scss +2 -2
  468. package/lib/esm/components-react/editors/IconEditor.scss +1 -1
  469. package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  470. package/lib/esm/components-react/editors/NumericInputEditor.js +1 -1
  471. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  472. package/lib/esm/components-react/editors/NumericInputEditor.scss +1 -2
  473. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  474. package/lib/esm/components-react/editors/PopupButton.js +8 -7
  475. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  476. package/lib/esm/components-react/editors/PopupButton.scss +13 -13
  477. package/lib/esm/components-react/editors/PropertyEditorManager.js +2 -1
  478. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  479. package/lib/esm/components-react/editors/SliderEditor.scss +2 -2
  480. package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
  481. package/lib/esm/components-react/editors/TextEditor.js +9 -4
  482. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  483. package/lib/esm/components-react/editors/TextEditor.scss +1 -2
  484. package/lib/esm/components-react/editors/TextareaEditor.d.ts +1 -1
  485. package/lib/esm/components-react/editors/TextareaEditor.js +1 -1
  486. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  487. package/lib/esm/components-react/editors/variables.scss +1 -0
  488. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  489. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  490. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
  491. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  492. package/lib/esm/components-react/favorite/FavoritePropertyList.js +2 -3
  493. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  494. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  495. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  496. package/lib/esm/components-react/filter-builder/FilterBuilder.js +12 -73
  497. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  498. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  499. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  500. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
  501. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  502. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  503. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  504. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
  505. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  506. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +4 -6
  507. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  508. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  509. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
  510. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  511. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +3 -11
  512. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  513. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  514. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +8 -3
  515. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  516. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  517. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  518. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -4
  519. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  520. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  521. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  522. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +9 -3
  523. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  524. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  525. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  526. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +54 -3
  527. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  528. package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
  529. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  530. package/lib/esm/components-react/filter-builder/Operators.js +23 -5
  531. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  532. package/lib/esm/components-react/filter-builder/Types.d.ts +25 -5
  533. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  534. package/lib/esm/components-react/filter-builder/Types.js +11 -1
  535. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  536. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  537. package/lib/esm/components-react/filtering/FilteringInput.js +13 -6
  538. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  539. package/lib/esm/components-react/filtering/FilteringInput.scss +3 -13
  540. package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
  541. package/lib/esm/components-react/filtering/ResultSelector.js +6 -2
  542. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  543. package/lib/esm/components-react/filtering/ResultSelector.scss +3 -8
  544. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  545. package/lib/esm/components-react/iconpicker/IconPickerButton.js +10 -5
  546. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  547. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +5 -5
  548. package/lib/esm/components-react/inputs/ParsedInput.scss +2 -2
  549. package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
  550. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  551. package/lib/esm/components-react/properties/LinkHandler.d.ts +3 -3
  552. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  553. package/lib/esm/components-react/properties/LinkHandler.js +1 -1
  554. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  555. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  556. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  557. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +3 -4
  558. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  559. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
  560. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  561. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +2 -3
  562. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  563. package/lib/esm/components-react/properties/renderers/PropertyView.scss +5 -3
  564. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  565. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +3 -2
  566. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  567. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +1 -2
  568. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  569. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +10 -10
  570. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -2
  571. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  572. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +3 -6
  573. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  574. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -2
  575. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  576. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  577. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +4 -7
  578. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  579. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  580. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  581. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  582. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  583. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +4 -4
  584. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  585. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  586. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  587. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  588. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  589. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +6 -1
  590. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  591. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +1 -2
  592. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  593. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +8 -7
  594. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  595. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  596. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +4 -3
  597. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  598. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  599. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  600. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  601. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  602. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -53
  603. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  604. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +17 -8
  605. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  606. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  607. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  608. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  609. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  610. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  611. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  612. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  613. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  614. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  615. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  616. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  617. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  618. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  619. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  620. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  621. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  622. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  623. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  624. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  625. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  626. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  627. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  628. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  629. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  630. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  631. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  632. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  633. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  634. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  635. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  636. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  637. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  638. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  639. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  640. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  641. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  642. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  643. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  644. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  645. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  646. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  647. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  648. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  649. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  650. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  651. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  652. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  653. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  654. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  655. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  656. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  657. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  658. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +1 -1
  659. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  660. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  661. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  662. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +5 -7
  663. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  664. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +2 -0
  665. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  666. package/lib/esm/components-react/selectable-content/SelectableContent.js +5 -6
  667. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  668. package/lib/esm/components-react/toolbar/Item.scss +20 -51
  669. package/lib/esm/components-react/toolbar/Items.scss +2 -3
  670. package/lib/esm/components-react/toolbar/Toolbar.d.ts +4 -2
  671. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  672. package/lib/esm/components-react/toolbar/Toolbar.js +2 -1
  673. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  674. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  675. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  676. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +10 -6
  677. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  678. package/lib/esm/components-react/toolbar/_variables.scss +4 -4
  679. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +2 -2
  680. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +2 -4
  681. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +1 -2
  682. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +1 -1
  683. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +9 -38
  684. package/lib/esm/components-react/toolbar/utilities/Direction.js +4 -2
  685. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  686. package/lib/esm/components-react/tree/HighlightingEngine.js +2 -1
  687. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  688. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  689. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  690. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +4 -4
  691. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  692. package/lib/esm/components-react/tree/controlled/Observable.d.ts +12 -2
  693. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  694. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  695. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +3 -3
  696. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  697. package/lib/esm/components-react/tree/controlled/TreeModel.js +7 -10
  698. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  699. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  700. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  701. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  702. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  703. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +1 -2
  704. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  705. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +7 -7
  706. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  707. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +1 -0
  708. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  709. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +1 -2
  710. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  711. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  712. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  713. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  714. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +1 -1
  715. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  716. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  717. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  718. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +2 -2
  719. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  720. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +1 -2
  721. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  722. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  723. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  724. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  725. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  726. package/lib/esm/components-react.d.ts +4 -8
  727. package/lib/esm/components-react.d.ts.map +1 -1
  728. package/lib/esm/components-react.js +4 -8
  729. package/lib/esm/components-react.js.map +1 -1
  730. package/package.json +30 -32
  731. package/ThirdPartyNotices.md +0 -31
  732. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  733. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  734. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +0 -185
  735. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  736. package/lib/cjs/components-react/table/TableDataProvider.d.ts +0 -10
  737. package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +0 -1
  738. package/lib/cjs/components-react/table/TableDataProvider.js +0 -18
  739. package/lib/cjs/components-react/table/TableDataProvider.js.map +0 -1
  740. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  741. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  742. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +0 -159
  743. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  744. package/lib/esm/components-react/table/TableDataProvider.d.ts +0 -10
  745. package/lib/esm/components-react/table/TableDataProvider.d.ts.map +0 -1
  746. package/lib/esm/components-react/table/TableDataProvider.js +0 -14
  747. package/lib/esm/components-react/table/TableDataProvider.js.map +0 -1
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -40,7 +44,7 @@ const TimeField_1 = require("../datepicker/TimeField");
40
44
  const DatePicker_1 = require("../datepicker/DatePicker");
41
45
  const TypeConverterManager_1 = require("../converters/TypeConverterManager");
42
46
  const DateTimeTypeConverter_1 = require("../converters/DateTimeTypeConverter");
43
- const core_react_1 = require("@itwin/core-react");
47
+ const itwinui_react_1 = require("@itwin/itwinui-react");
44
48
  const DateUtils_1 = require("../common/DateUtils");
45
49
  /** DateTimeEditor React component that is a property editor for selection of date and time.
46
50
  * @internal
@@ -163,7 +167,6 @@ class DateTimeEditor extends React.PureComponent {
163
167
  }
164
168
  }
165
169
  async setStateFromProps() {
166
- var _a, _b;
167
170
  const record = this.props.propertyRecord;
168
171
  let initialValue;
169
172
  let typeConverter;
@@ -182,8 +185,8 @@ class DateTimeEditor extends React.PureComponent {
182
185
  initialValue = new Date(record.value.value);
183
186
  else if (record.value.value === undefined)
184
187
  initialValue = new Date();
185
- typeConverter = TypeConverterManager_1.TypeConverterManager.getConverter(record.property.typename, (_a = record.property.converter) === null || _a === void 0 ? void 0 : _a.name);
186
- const options = (_b = record.property.converter) === null || _b === void 0 ? void 0 : _b.options;
188
+ typeConverter = TypeConverterManager_1.TypeConverterManager.getConverter(record.property.typename, record.property.converter?.name);
189
+ const options = record.property.converter?.options;
187
190
  if (options) {
188
191
  // istanbul ignore else
189
192
  if ("alternateDateFormat" in options) {
@@ -264,7 +267,7 @@ class DateTimeEditor extends React.PureComponent {
264
267
  React.createElement(DatePicker_1.DatePicker, { selected: date, onDateChange: this._handleChange, showFocusOutline: false }),
265
268
  this.state.timeDisplay &&
266
269
  React.createElement("div", { className: "time-container" },
267
- React.createElement(core_react_1.BodyText, { className: "time-label" }, "Time"),
270
+ React.createElement(itwinui_react_1.Text, { variant: "body", className: "time-label" }, "Time"),
268
271
  React.createElement(TimeField_1.TimeField, { time: timeSpec, timeDisplay: this.state.timeDisplay, onTimeChange: this._handleTimeChange })))),
269
272
  React.createElement(PopupButton_1.PopupOkCancelButtons, { onOk: this._handleOk, onCancel: this._handleCancel })))));
270
273
  }
@@ -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 {\n AlternateDateFormats, PropertyValue, PropertyValueFormat, StandardTypeNames, TimeDisplay,\n} from \"@itwin/appui-abstract\";\nimport { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport { PropertyEditorBase, PropertyEditorManager } from \"./PropertyEditorManager\";\nimport { PopupButton, PopupContent, PopupOkCancelButtons } from \"./PopupButton\";\nimport { TimeField, TimeSpec } from \"../datepicker/TimeField\";\nimport { TypeConverter } from \"../converters/TypeConverter\";\nimport { DatePicker } from \"../datepicker/DatePicker\";\nimport { TypeConverterManager } from \"../converters/TypeConverterManager\";\nimport { DateTimeTypeConverterBase } from \"../converters/DateTimeTypeConverter\";\nimport { BodyText } from \"@itwin/core-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 <BodyText className=\"time-label\">{\"Time\"}</BodyText>\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 {\n AlternateDateFormats, PropertyValue, PropertyValueFormat, StandardTypeNames, TimeDisplay,\n} from \"@itwin/appui-abstract\";\nimport { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport { PropertyEditorBase, PropertyEditorManager } from \"./PropertyEditorManager\";\nimport { PopupButton, PopupContent, PopupOkCancelButtons } from \"./PopupButton\";\nimport { TimeField, TimeSpec } from \"../datepicker/TimeField\";\nimport { 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"]}
@@ -28,6 +28,11 @@ export interface PropertyEditorProps extends CommonProps {
28
28
  onBlur?: (event: React.FocusEvent) => void;
29
29
  /** Indicates whether the Property Editor should set focus */
30
30
  setFocus?: boolean;
31
+ /**
32
+ * Indicates whether value change should call onCommit().
33
+ * @internal
34
+ */
35
+ shouldCommitOnChange?: boolean;
31
36
  }
32
37
  /** [[EditorContainer]] React component properties
33
38
  * @public
@@ -45,6 +50,11 @@ export interface EditorContainerProps extends CommonProps {
45
50
  setFocus?: boolean;
46
51
  /** @internal */
47
52
  ignoreEditorBlur?: boolean;
53
+ /**
54
+ * Indicates whether value change should call onCommit().
55
+ * @internal
56
+ */
57
+ shouldCommitOnChange?: boolean;
48
58
  }
49
59
  /** Interface implemented by React based type editors
50
60
  * @public
@@ -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,EAAE,cAAc,EAAE,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD;;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;CACpB;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;CAC5B;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;IA6BpB,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,EAAE,cAAc,EAAE,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD;;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"}
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -114,6 +118,7 @@ class EditorContainer extends React.PureComponent {
114
118
  setFocus: this.props.setFocus !== undefined ? this.props.setFocus : true,
115
119
  className: this.props.className,
116
120
  style: this.props.style,
121
+ shouldCommitOnChange: this.props.shouldCommitOnChange,
117
122
  };
118
123
  const propDescription = this.props.propertyRecord.property;
119
124
  const editorName = propDescription.editor !== undefined ? propDescription.editor.name : undefined;
@@ -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 { PropertyRecord, PropertyValue, SpecialKey, UiAdmin } from \"@itwin/appui-abstract\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { AsyncErrorMessage, PropertyEditorBase, 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\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\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 };\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 { PropertyRecord, PropertyValue, SpecialKey, UiAdmin } from \"@itwin/appui-abstract\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { AsyncErrorMessage, PropertyEditorBase, 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"]}
@@ -18,6 +18,7 @@ interface EnumButtonGroupEditorState {
18
18
  export declare class EnumButtonGroupEditor extends React.Component<PropertyEditorProps, EnumButtonGroupEditorState> implements TypeEditor {
19
19
  private _btnRefs;
20
20
  private _divElement;
21
+ private _placeholderIconSpec;
21
22
  /** @internal */
22
23
  readonly state: Readonly<EnumButtonGroupEditorState>;
23
24
  getPropertyValue(): Promise<PropertyValue | undefined>;
@@ -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,EACoB,iBAAiB,EAAE,cAAc,EAC1D,aAAa,EACd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yBAAyB,CAAC;AAIpF,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;IAExD,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,EACoB,iBAAiB,EAAE,cAAc,EAC1D,aAAa,EACd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,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"}
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -36,6 +40,7 @@ const React = __importStar(require("react"));
36
40
  const appui_abstract_1 = require("@itwin/appui-abstract");
37
41
  const core_react_1 = require("@itwin/core-react");
38
42
  const PropertyEditorManager_1 = require("./PropertyEditorManager");
43
+ const placeholder_svg_1 = __importDefault(require("@bentley/icons-generic/icons/placeholder.svg"));
39
44
  /** EnumButtonGroupEditor React component that is a property editor with select input
40
45
  * @public
41
46
  */
@@ -44,6 +49,7 @@ class EnumButtonGroupEditor extends React.Component {
44
49
  super(...arguments);
45
50
  this._btnRefs = new Map();
46
51
  this._divElement = React.createRef();
52
+ this._placeholderIconSpec = appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(placeholder_svg_1.default);
47
53
  /** @internal */
48
54
  this.state = {
49
55
  selectValue: "",
@@ -127,7 +133,7 @@ class EnumButtonGroupEditor extends React.Component {
127
133
  }
128
134
  const numChoices = choices.length;
129
135
  const enumIcons = new Array(numChoices);
130
- enumIcons.fill({ iconSpec: "icon icon-placeholder" });
136
+ enumIcons.fill({ iconSpec: this._placeholderIconSpec });
131
137
  // istanbul ignore else
132
138
  if (propertyRecord.property.editor && propertyRecord.property.editor.params) {
133
139
  // istanbul ignore else
@@ -1 +1 @@
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 {\n ButtonGroupEditorParams, EnumerationChoice, IconDefinition, PropertyEditorParams, PropertyEditorParamTypes, PropertyRecord,\n PropertyValue, PropertyValueFormat, StandardEditorNames, StandardTypeNames,\n} from \"@itwin/appui-abstract\";\nimport { Icon } from \"@itwin/core-react\";\nimport { PropertyEditorProps, TypeEditor } from \"./EditorContainer\";\nimport { PropertyEditorBase, PropertyEditorManager } from \"./PropertyEditorManager\";\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\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: \"icon icon-placeholder\" });\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":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wCAAsC;AACtC,4DAAoC;AACpC,6CAA+B;AAC/B,0DAG+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 {\n ButtonGroupEditorParams, EnumerationChoice, IconDefinition, IconSpecUtilities, PropertyEditorParams, PropertyEditorParamTypes, PropertyRecord,\n PropertyValue, PropertyValueFormat, StandardEditorNames, StandardTypeNames,\n} from \"@itwin/appui-abstract\";\nimport { Icon } from \"@itwin/core-react\";\nimport { 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"]}
@@ -2,20 +2,11 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
6
5
 
7
6
  $desktop-tool-stripe-width: 2px;
8
7
  $desktop-tool-stripe-height: 22px;
9
8
 
10
9
  $icon-size: 16px;
11
- $icon-color: $buic-icon-color;
12
- $hovered-icon-color: $buic-foreground-primary-tone;
13
- $pressed-icon-color: $buic-icon-color-reverse;
14
- $active-icon-color: $buic-foreground-primary;
15
- $disabled-icon-color: $buic-icon-color-disabled;
16
- $icon-shadow-color: $buic-icon-color-reverse;
17
- $icon-shadow: drop-shadow(0 1px 0 $icon-shadow-color);
18
- $no-shadow: drop-shadow(0 0 0 transparent);
19
10
 
20
11
  $components-enumbuttongroup-editor-item-width: 32px;
21
12
  $components-enumbuttongroup-editor-item-height: 32px;
@@ -26,16 +17,11 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
26
17
  .components-enumbuttongroup-editor {
27
18
  font-family: var(--iui-font-sans);
28
19
  font-size: var(--iui-font-size-1);
29
- background: $buic-background-control;
20
+ background: var(--iui-color-background);
30
21
  width: fit-content;
31
-
32
- $divider-color: $buic-background-toolbutton-stroke;
33
- $border-color: $buic-background-toolbutton-stroke;
34
- $border-radius: var(--iui-border-radius-1);
35
-
36
- border-color: $border-color;
22
+ border-color: var(--iui-color-border-foreground);
37
23
  border-width: $components-enumbuttongroup-editor-item-border-width;
38
- border-radius: $border-radius;
24
+ border-radius: var(--iui-border-radius-1);
39
25
  border-style: solid;
40
26
  overflow: hidden;
41
27
  display: flex;
@@ -54,7 +40,7 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
54
40
 
55
41
  &:before {
56
42
  content: "";
57
- background-color: $divider-color;
43
+ background-color: var(--iui-color-border-foreground);
58
44
  display: block;
59
45
  position: absolute;
60
46
  pointer-events: none;
@@ -69,17 +55,15 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
69
55
 
70
56
  .components-enumbuttongroup-button {
71
57
  border-width: 0;
72
- background: $buic-background-control;
58
+ background-color: var(--iui-color-background);
73
59
  background-origin: border-box;
74
- border-color: $buic-background-control-stroke;
60
+ border-color: var(--iui-color-border);
75
61
  border-style: solid;
76
62
  cursor: pointer;
77
63
  transition-property: background-color, color;
78
64
  transition-duration: 500ms;
79
65
  transition-timing-function: ease;
80
66
  position: relative;
81
- background: $buic-background-control
82
- /* linear-gradient(to bottom, $buic-button-gradient1, $buic-button-gradient2) */;
83
67
  height: $components-enumbuttongroup-editor-item-height;
84
68
  width: $components-enumbuttongroup-editor-item-width;
85
69
 
@@ -91,14 +75,9 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
91
75
  align-content: center;
92
76
  justify-content: center;
93
77
  margin: 0;
94
- color: $icon-color;
95
- filter: $icon-shadow;
78
+ color: var(--iui-color-icon);
96
79
  transition: all 500ms ease;
97
80
 
98
- svg {
99
- filter: $icon-shadow;
100
- }
101
-
102
81
  img {
103
82
  width: 100%;
104
83
  height: 100%;
@@ -107,51 +86,28 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
107
86
 
108
87
  &:hover {
109
88
  > i {
110
- color: $hovered-icon-color;
89
+ color: var(--iui-color-text-accent-hover);
111
90
  transition-duration: 150ms;
112
91
  }
113
92
  }
114
93
 
115
- &:active {
116
- > i {
117
- color: $pressed-icon-color;
118
- filter: $no-shadow;
119
-
120
- svg {
121
- filter: $no-shadow;
122
- }
123
- }
124
- }
125
-
126
- &:active:not(.nz-is-disabled) {
127
- background: $buic-foreground-primary-tone;
128
- color: $buic-foreground-body-reverse;
129
- transition-duration: 150ms;
130
- transition-timing-function: cubic-bezier(1, 0.1, 1, 0.5);
131
- }
132
-
133
94
  &.nz-is-active {
134
- background: $buic-background-control;
95
+ background: var(--iui-color-background);
135
96
 
136
- &:not(:active):not(.nz-is-disabled) {
97
+ &:not(.nz-is-disabled) {
137
98
  transition-duration: 0s;
138
99
 
139
100
  > i {
140
- color: $buic-foreground-primary;
141
- filter: $no-shadow;
101
+ color: var(--iui-color-icon-accent);
142
102
  transition-duration: 150ms;
143
103
  transition-timing-function: cubic-bezier(1, 0.1, 1, 0.5);
144
-
145
- svg {
146
- filter: $no-shadow;
147
- }
148
104
  }
149
105
 
150
106
  &:after {
151
107
  content: "";
152
108
  display: block;
153
109
  position: absolute;
154
- background: $buic-foreground-primary;
110
+ background: var(--iui-color-border-accent);
155
111
  left: 3px;
156
112
  top: (
157
113
  $components-enumbuttongroup-editor-item-height -
@@ -166,9 +122,12 @@ $components-enumbuttongroup-editor-space-between-toolbar-items: 1px;
166
122
 
167
123
  &.nz-is-disabled {
168
124
  pointer-events: none;
125
+ background-color: var(--iui-color-background-disabled);
126
+ border-color: var(--iui-color-border-disabled);
127
+ cursor: not-allowed;
169
128
 
170
129
  > i {
171
- color: $disabled-icon-color;
130
+ color: var(--iui-color-icon-disabled);
172
131
  }
173
132
 
174
133
  &:hover {
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];