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

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 (908) 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/_target.scss +9 -9
  7. package/lib/cjs/components-react/common/DateUtils.d.ts +2 -2
  8. package/lib/cjs/components-react/common/DateUtils.d.ts.map +1 -1
  9. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  10. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +1 -1
  11. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  12. package/lib/cjs/components-react/common/DelayedSpinner.js +7 -4
  13. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  14. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  15. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  16. package/lib/cjs/components-react/common/IImageLoader.d.ts +3 -3
  17. package/lib/cjs/components-react/common/IImageLoader.d.ts.map +1 -1
  18. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  19. package/lib/cjs/components-react/common/ImageRenderer.js +6 -2
  20. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  21. package/lib/cjs/components-react/common/Links.js.map +1 -1
  22. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  23. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  24. package/lib/cjs/components-react/common/UseAsyncValue.d.ts +1 -1
  25. package/lib/cjs/components-react/common/UseAsyncValue.d.ts.map +1 -1
  26. package/lib/cjs/components-react/common/UseAsyncValue.js +7 -3
  27. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  28. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  29. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  30. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  31. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +16 -2
  32. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  33. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  34. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  35. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  36. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  37. package/lib/cjs/components-react/converters/BooleanTypeConverter.js +1 -1
  38. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  39. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  40. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  41. package/lib/cjs/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  42. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  43. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js +1 -1
  44. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  45. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  46. package/lib/cjs/components-react/converters/NumericTypeConverter.js +2 -4
  47. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  48. package/lib/cjs/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  49. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  50. package/lib/cjs/components-react/converters/StringTypeConverter.js +2 -2
  51. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  52. package/lib/cjs/components-react/converters/TypeConverter.js +1 -2
  53. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  54. package/lib/cjs/components-react/converters/TypeConverterManager.js +1 -1
  55. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  56. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  57. package/lib/cjs/components-react/datepicker/DateField.js +5 -1
  58. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  59. package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
  60. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  61. package/lib/cjs/components-react/datepicker/DatePicker.js +9 -4
  62. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  63. package/lib/cjs/components-react/datepicker/DatePicker.scss +176 -177
  64. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  65. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js +7 -2
  66. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  67. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  68. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  69. package/lib/cjs/components-react/datepicker/TimeField.js +5 -1
  70. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  71. package/lib/cjs/components-react/datepicker/TimeField.scss +76 -76
  72. package/lib/cjs/components-react/editors/BooleanEditor.js +5 -1
  73. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  74. package/lib/cjs/components-react/editors/BooleanEditor.scss +22 -22
  75. package/lib/cjs/components-react/editors/CustomNumberEditor.js +7 -5
  76. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  77. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +20 -21
  78. package/lib/cjs/components-react/editors/DateTimeEditor.js +9 -6
  79. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  80. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
  81. package/lib/cjs/components-react/editors/EditorContainer.d.ts +10 -0
  82. package/lib/cjs/components-react/editors/EditorContainer.d.ts.map +1 -1
  83. package/lib/cjs/components-react/editors/EditorContainer.js +6 -1
  84. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  85. package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
  86. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  87. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  88. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js +8 -2
  89. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  90. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +141 -182
  91. package/lib/cjs/components-react/editors/EnumEditor.js +5 -1
  92. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  93. package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
  94. package/lib/cjs/components-react/editors/IconEditor.js +5 -1
  95. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  96. package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
  97. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js +5 -1
  98. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  99. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  100. package/lib/cjs/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  101. package/lib/cjs/components-react/editors/NumericInputEditor.js +6 -2
  102. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  103. package/lib/cjs/components-react/editors/NumericInputEditor.scss +16 -17
  104. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  105. package/lib/cjs/components-react/editors/PopupButton.js +13 -8
  106. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  107. package/lib/cjs/components-react/editors/PopupButton.scss +116 -116
  108. package/lib/cjs/components-react/editors/PropertyEditorManager.js +6 -2
  109. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  110. package/lib/cjs/components-react/editors/SliderEditor.js +5 -1
  111. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  112. package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
  113. package/lib/cjs/components-react/editors/TextEditor.d.ts.map +1 -1
  114. package/lib/cjs/components-react/editors/TextEditor.js +14 -5
  115. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  116. package/lib/cjs/components-react/editors/TextEditor.scss +20 -21
  117. package/lib/cjs/components-react/editors/TextareaEditor.d.ts +1 -1
  118. package/lib/cjs/components-react/editors/TextareaEditor.js +6 -2
  119. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  120. package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
  121. package/lib/cjs/components-react/editors/ToggleEditor.js +5 -1
  122. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  123. package/lib/cjs/components-react/editors/ToggleEditor.scss +23 -23
  124. package/lib/cjs/components-react/editors/variables.scss +7 -6
  125. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  126. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  127. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +29 -3
  128. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  129. package/lib/cjs/components-react/favorite/FavoritePropertyList.js +7 -4
  130. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  131. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  132. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  133. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -82
  134. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  135. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  136. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  137. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +87 -0
  138. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  139. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  140. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  141. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +27 -13
  142. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  143. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +38 -40
  144. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  145. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  146. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +27 -15
  147. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  148. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -76
  149. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  150. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  151. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +17 -8
  152. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  153. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  154. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  155. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +20 -9
  156. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  157. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  158. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  159. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +18 -8
  160. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  161. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  162. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  163. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +65 -9
  164. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  165. package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
  166. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  167. package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
  168. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  169. package/lib/cjs/components-react/filter-builder/Types.d.ts +25 -5
  170. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  171. package/lib/cjs/components-react/filter-builder/Types.js +11 -1
  172. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  173. package/lib/cjs/components-react/filtering/FilteringInput.d.ts.map +1 -1
  174. package/lib/cjs/components-react/filtering/FilteringInput.js +17 -6
  175. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  176. package/lib/cjs/components-react/filtering/FilteringInput.scss +58 -68
  177. package/lib/cjs/components-react/filtering/ResultSelector.d.ts.map +1 -1
  178. package/lib/cjs/components-react/filtering/ResultSelector.js +11 -3
  179. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  180. package/lib/cjs/components-react/filtering/ResultSelector.scss +68 -73
  181. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  182. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +13 -5
  183. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  184. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +75 -75
  185. package/lib/cjs/components-react/inputs/ParsedInput.js +5 -1
  186. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  187. package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
  188. package/lib/cjs/components-react/properties/ItemStyle.d.ts +1 -1
  189. package/lib/cjs/components-react/properties/ItemStyle.d.ts.map +1 -1
  190. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  191. package/lib/cjs/components-react/properties/LinkHandler.d.ts +3 -3
  192. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  193. package/lib/cjs/components-react/properties/LinkHandler.js +6 -2
  194. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  195. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  196. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js +5 -1
  197. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  198. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
  199. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  200. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  201. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  202. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js +8 -5
  203. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  204. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +6 -2
  205. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  206. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  207. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +7 -4
  208. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  209. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  210. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +5 -1
  211. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  212. package/lib/cjs/components-react/properties/renderers/PropertyView.js +5 -1
  213. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  214. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +106 -104
  215. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  216. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +8 -3
  217. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  218. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js +5 -1
  219. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  220. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js +6 -3
  221. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  222. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  223. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js +5 -1
  224. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  225. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +6 -3
  226. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  227. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  228. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +8 -7
  229. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  230. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +6 -3
  231. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  232. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  233. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +9 -8
  234. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  235. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js +5 -1
  236. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  237. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js +5 -1
  238. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  239. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  240. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  241. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js +5 -1
  242. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  243. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js +5 -1
  244. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  245. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +5 -1
  246. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  247. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js +5 -1
  248. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  249. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  250. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  251. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +3 -4
  252. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  253. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  254. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  255. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts +4 -0
  256. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  257. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js +17 -4
  258. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  259. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  260. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  261. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +10 -2
  262. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  263. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js +5 -1
  264. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  265. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js +6 -3
  266. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  267. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +73 -72
  268. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  269. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  270. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js +3 -3
  271. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  272. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  273. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  274. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js +5 -1
  275. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  276. package/lib/cjs/components-react/propertygrid/component/PropertyList.js +5 -1
  277. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  278. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  279. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  280. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +53 -54
  281. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  282. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -92
  283. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  284. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  285. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  286. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  287. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  288. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  289. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  290. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  291. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  292. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  293. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  294. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  295. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  296. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  297. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  298. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  299. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  300. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  301. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  302. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  303. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  304. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  305. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  306. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  307. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  308. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  309. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  310. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  311. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  312. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  313. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  314. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  315. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  316. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  317. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  318. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  319. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  320. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  321. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  322. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  323. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  324. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  325. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  326. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  327. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  328. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  329. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  330. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  331. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  332. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  333. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  334. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  335. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  336. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  337. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  338. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  339. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +6 -2
  340. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  341. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  342. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  343. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +10 -8
  344. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  345. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +2 -0
  346. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  347. package/lib/cjs/components-react/selectable-content/SelectableContent.js +10 -7
  348. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  349. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +20 -20
  350. package/lib/cjs/components-react/toolbar/Item.js +5 -1
  351. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  352. package/lib/cjs/components-react/toolbar/Item.scss +91 -122
  353. package/lib/cjs/components-react/toolbar/ItemWrapper.js +5 -1
  354. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  355. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
  356. package/lib/cjs/components-react/toolbar/Items.js +5 -1
  357. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  358. package/lib/cjs/components-react/toolbar/Items.scss +96 -97
  359. package/lib/cjs/components-react/toolbar/Overflow.js +5 -1
  360. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  361. package/lib/cjs/components-react/toolbar/Overflow.scss +57 -57
  362. package/lib/cjs/components-react/toolbar/OverflowPanel.js +5 -1
  363. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  364. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
  365. package/lib/cjs/components-react/toolbar/PopupItem.js +5 -1
  366. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  367. package/lib/cjs/components-react/toolbar/PopupItem.scss +88 -88
  368. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js +5 -1
  369. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  370. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js +5 -1
  371. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  372. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +4 -2
  373. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  374. package/lib/cjs/components-react/toolbar/Toolbar.js +7 -2
  375. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  376. package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
  377. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  378. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  379. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +13 -6
  380. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  381. package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
  382. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js +5 -1
  383. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  384. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  385. package/lib/cjs/components-react/toolbar/groupPanel/Column.js +5 -1
  386. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  387. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
  388. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js +5 -1
  389. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  390. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
  391. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js +5 -1
  392. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  393. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +15 -17
  394. package/lib/cjs/components-react/toolbar/groupPanel/Title.js +5 -1
  395. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  396. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +33 -34
  397. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
  398. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js +5 -1
  399. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  400. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  401. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js +5 -1
  402. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  403. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +117 -146
  404. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  405. package/lib/cjs/components-react/toolbar/useDragInteraction.js +5 -1
  406. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  407. package/lib/cjs/components-react/toolbar/utilities/Direction.js +2 -2
  408. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  409. package/lib/cjs/components-react/tree/HighlightingEngine.js +6 -2
  410. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  411. package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
  412. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  413. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  414. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  415. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  416. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  417. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +4 -4
  418. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  419. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  420. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +12 -2
  421. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  422. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  423. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  424. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  425. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  426. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  427. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  428. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +3 -3
  429. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  430. package/lib/cjs/components-react/tree/controlled/TreeModel.js +7 -13
  431. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  432. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  433. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  434. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  435. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  436. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  437. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +6 -3
  438. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  439. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  440. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  441. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +6 -1
  442. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  443. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +27 -28
  444. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  445. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  446. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js +5 -1
  447. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  448. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  449. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  450. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js +6 -2
  451. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  452. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  453. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  454. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js +7 -3
  455. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  456. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js +1 -2
  457. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  458. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  459. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  460. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  461. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  462. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  463. package/lib/cjs/components-react.d.ts +4 -8
  464. package/lib/cjs/components-react.d.ts.map +1 -1
  465. package/lib/cjs/components-react.js +9 -9
  466. package/lib/cjs/components-react.js.map +1 -1
  467. package/lib/esm/components-react/UiComponents.js +2 -1
  468. package/lib/esm/components-react/UiComponents.js.map +1 -1
  469. package/lib/esm/components-react/_target.scss +9 -9
  470. package/lib/esm/components-react/common/DateUtils.d.ts +2 -2
  471. package/lib/esm/components-react/common/DateUtils.d.ts.map +1 -1
  472. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  473. package/lib/esm/components-react/common/DelayedSpinner.d.ts +1 -1
  474. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  475. package/lib/esm/components-react/common/DelayedSpinner.js +2 -3
  476. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  477. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  478. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  479. package/lib/esm/components-react/common/IImageLoader.d.ts +3 -3
  480. package/lib/esm/components-react/common/IImageLoader.d.ts.map +1 -1
  481. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  482. package/lib/esm/components-react/common/ImageRenderer.js +2 -1
  483. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  484. package/lib/esm/components-react/common/Links.js.map +1 -1
  485. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  486. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  487. package/lib/esm/components-react/common/UseAsyncValue.d.ts +1 -1
  488. package/lib/esm/components-react/common/UseAsyncValue.d.ts.map +1 -1
  489. package/lib/esm/components-react/common/UseAsyncValue.js +2 -2
  490. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  491. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  492. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +5 -1
  493. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  494. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +16 -2
  495. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  496. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  497. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  498. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  499. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  500. package/lib/esm/components-react/converters/BooleanTypeConverter.js +2 -1
  501. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  502. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  503. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  504. package/lib/esm/components-react/converters/EnumTypeConverter.d.ts.map +1 -1
  505. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  506. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js +1 -1
  507. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  508. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  509. package/lib/esm/components-react/converters/NumericTypeConverter.js +2 -4
  510. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  511. package/lib/esm/components-react/converters/PointTypeConverter.d.ts.map +1 -1
  512. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  513. package/lib/esm/components-react/converters/StringTypeConverter.js +2 -2
  514. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  515. package/lib/esm/components-react/converters/TypeConverter.js +1 -2
  516. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  517. package/lib/esm/components-react/converters/TypeConverterManager.js +2 -1
  518. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  519. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  520. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  521. package/lib/esm/components-react/datepicker/DateField.scss +22 -22
  522. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  523. package/lib/esm/components-react/datepicker/DatePicker.js +4 -3
  524. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  525. package/lib/esm/components-react/datepicker/DatePicker.scss +176 -177
  526. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  527. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js +3 -2
  528. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  529. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  530. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  531. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  532. package/lib/esm/components-react/datepicker/TimeField.scss +76 -76
  533. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  534. package/lib/esm/components-react/editors/BooleanEditor.scss +22 -22
  535. package/lib/esm/components-react/editors/CustomNumberEditor.js +2 -4
  536. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  537. package/lib/esm/components-react/editors/CustomNumberEditor.scss +20 -21
  538. package/lib/esm/components-react/editors/DateTimeEditor.js +4 -5
  539. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  540. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
  541. package/lib/esm/components-react/editors/EditorContainer.d.ts +10 -0
  542. package/lib/esm/components-react/editors/EditorContainer.d.ts.map +1 -1
  543. package/lib/esm/components-react/editors/EditorContainer.js +1 -0
  544. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  545. package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
  546. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +1 -0
  547. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts.map +1 -1
  548. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js +4 -2
  549. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  550. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +141 -182
  551. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  552. package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
  553. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  554. package/lib/esm/components-react/editors/IconEditor.scss +16 -16
  555. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  556. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  557. package/lib/esm/components-react/editors/NumericInputEditor.d.ts.map +1 -1
  558. package/lib/esm/components-react/editors/NumericInputEditor.js +1 -1
  559. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  560. package/lib/esm/components-react/editors/NumericInputEditor.scss +16 -17
  561. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  562. package/lib/esm/components-react/editors/PopupButton.js +8 -7
  563. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  564. package/lib/esm/components-react/editors/PopupButton.scss +116 -116
  565. package/lib/esm/components-react/editors/PropertyEditorManager.js +2 -1
  566. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  567. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  568. package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
  569. package/lib/esm/components-react/editors/TextEditor.d.ts.map +1 -1
  570. package/lib/esm/components-react/editors/TextEditor.js +9 -4
  571. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  572. package/lib/esm/components-react/editors/TextEditor.scss +20 -21
  573. package/lib/esm/components-react/editors/TextareaEditor.d.ts +1 -1
  574. package/lib/esm/components-react/editors/TextareaEditor.js +1 -1
  575. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  576. package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
  577. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  578. package/lib/esm/components-react/editors/ToggleEditor.scss +23 -23
  579. package/lib/esm/components-react/editors/variables.scss +7 -6
  580. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  581. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  582. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
  583. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  584. package/lib/esm/components-react/favorite/FavoritePropertyList.js +2 -3
  585. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  586. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -25
  587. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  588. package/lib/esm/components-react/filter-builder/FilterBuilder.js +12 -73
  589. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  590. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  591. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  592. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
  593. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  594. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  595. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  596. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
  597. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  598. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +38 -40
  599. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  600. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  601. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
  602. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  603. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -76
  604. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  605. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  606. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +8 -3
  607. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  608. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  609. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  610. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -4
  611. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  612. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  613. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  614. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +9 -3
  615. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  616. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +51 -8
  617. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  618. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +54 -3
  619. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  620. package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
  621. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  622. package/lib/esm/components-react/filter-builder/Operators.js +23 -5
  623. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  624. package/lib/esm/components-react/filter-builder/Types.d.ts +25 -5
  625. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  626. package/lib/esm/components-react/filter-builder/Types.js +11 -1
  627. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  628. package/lib/esm/components-react/filtering/FilteringInput.d.ts.map +1 -1
  629. package/lib/esm/components-react/filtering/FilteringInput.js +13 -6
  630. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  631. package/lib/esm/components-react/filtering/FilteringInput.scss +58 -68
  632. package/lib/esm/components-react/filtering/ResultSelector.d.ts.map +1 -1
  633. package/lib/esm/components-react/filtering/ResultSelector.js +6 -2
  634. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  635. package/lib/esm/components-react/filtering/ResultSelector.scss +68 -73
  636. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  637. package/lib/esm/components-react/iconpicker/IconPickerButton.js +10 -5
  638. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  639. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +75 -75
  640. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  641. package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
  642. package/lib/esm/components-react/properties/ItemStyle.d.ts +1 -1
  643. package/lib/esm/components-react/properties/ItemStyle.d.ts.map +1 -1
  644. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  645. package/lib/esm/components-react/properties/LinkHandler.d.ts +3 -3
  646. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  647. package/lib/esm/components-react/properties/LinkHandler.js +1 -1
  648. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  649. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  650. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  651. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
  652. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts +1 -1
  653. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.d.ts.map +1 -1
  654. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  655. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js +3 -4
  656. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  657. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
  658. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  659. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  660. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +2 -3
  661. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  662. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  663. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  664. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  665. package/lib/esm/components-react/properties/renderers/PropertyView.scss +106 -104
  666. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts.map +1 -1
  667. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js +3 -2
  668. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  669. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  670. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js +1 -2
  671. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  672. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  673. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  674. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js +1 -2
  675. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  676. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  677. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js +3 -6
  678. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  679. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js +1 -2
  680. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  681. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  682. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js +4 -7
  683. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  684. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  685. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  686. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts +1 -1
  687. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.d.ts.map +1 -1
  688. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  689. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  690. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  691. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  692. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +4 -4
  693. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts.map +1 -1
  694. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +4 -4
  695. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  696. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  697. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  698. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts +4 -0
  699. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.d.ts.map +1 -1
  700. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js +17 -4
  701. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  702. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts +1 -1
  703. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.d.ts.map +1 -1
  704. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js +6 -1
  705. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  706. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  707. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js +1 -2
  708. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  709. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +73 -72
  710. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +18 -10
  711. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  712. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js +4 -3
  713. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  714. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +2 -2
  715. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts.map +1 -1
  716. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  717. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  718. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +13 -12
  719. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts.map +1 -1
  720. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +48 -53
  721. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  722. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -92
  723. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +11 -10
  724. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  725. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +3 -3
  726. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  727. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js +11 -13
  728. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  729. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js +2 -2
  730. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  731. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js +1 -2
  732. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  733. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  734. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  735. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  736. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  737. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  738. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  739. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +5 -3
  740. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  741. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +5 -3
  742. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  743. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  744. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  745. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  746. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +3 -3
  747. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts.map +1 -1
  748. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  749. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  750. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  751. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  752. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  753. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  754. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +5 -5
  755. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  756. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  757. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  758. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  759. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  760. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  761. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  762. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  763. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  764. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  765. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  766. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +1 -2
  767. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  768. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  769. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  770. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +5 -5
  771. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  772. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  773. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +3 -4
  774. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  775. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  776. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +2 -2
  777. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  778. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts.map +1 -1
  779. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +1 -1
  780. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  781. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  782. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  783. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js +5 -7
  784. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  785. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +2 -0
  786. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  787. package/lib/esm/components-react/selectable-content/SelectableContent.js +5 -6
  788. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  789. package/lib/esm/components-react/selectable-content/SelectableContent.scss +20 -20
  790. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  791. package/lib/esm/components-react/toolbar/Item.scss +91 -122
  792. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  793. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
  794. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  795. package/lib/esm/components-react/toolbar/Items.scss +96 -97
  796. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  797. package/lib/esm/components-react/toolbar/Overflow.scss +57 -57
  798. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  799. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
  800. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  801. package/lib/esm/components-react/toolbar/PopupItem.scss +88 -88
  802. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  803. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  804. package/lib/esm/components-react/toolbar/Toolbar.d.ts +4 -2
  805. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  806. package/lib/esm/components-react/toolbar/Toolbar.js +2 -1
  807. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  808. package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
  809. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +7 -3
  810. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  811. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +10 -6
  812. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  813. package/lib/esm/components-react/toolbar/_variables.scss +34 -34
  814. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  815. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  816. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  817. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
  818. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  819. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
  820. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  821. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +15 -17
  822. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  823. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +33 -34
  824. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
  825. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  826. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  827. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  828. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +117 -146
  829. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  830. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  831. package/lib/esm/components-react/toolbar/utilities/Direction.js +4 -2
  832. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  833. package/lib/esm/components-react/tree/HighlightingEngine.js +2 -1
  834. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  835. package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
  836. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  837. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +1 -1
  838. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  839. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  840. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  841. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +4 -4
  842. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  843. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  844. package/lib/esm/components-react/tree/controlled/Observable.d.ts +12 -2
  845. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  846. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  847. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  848. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  849. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  850. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  851. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  852. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +3 -3
  853. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
  854. package/lib/esm/components-react/tree/controlled/TreeModel.js +7 -10
  855. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  856. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  857. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +6 -8
  858. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  859. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  860. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  861. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +1 -2
  862. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  863. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  864. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  865. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +1 -0
  866. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  867. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +27 -28
  868. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  869. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  870. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  871. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  872. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  873. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js +1 -1
  874. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  875. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +3 -6
  876. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  877. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js +2 -2
  878. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  879. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js +1 -2
  880. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  881. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  882. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts +1 -1
  883. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.d.ts.map +1 -1
  884. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js +2 -4
  885. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  886. package/lib/esm/components-react.d.ts +4 -8
  887. package/lib/esm/components-react.d.ts.map +1 -1
  888. package/lib/esm/components-react.js +4 -8
  889. package/lib/esm/components-react.js.map +1 -1
  890. package/lib/public/locales/en/UiComponents.json +139 -139
  891. package/package.json +30 -32
  892. package/ThirdPartyNotices.md +0 -31
  893. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  894. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  895. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +0 -185
  896. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  897. package/lib/cjs/components-react/table/TableDataProvider.d.ts +0 -10
  898. package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +0 -1
  899. package/lib/cjs/components-react/table/TableDataProvider.js +0 -18
  900. package/lib/cjs/components-react/table/TableDataProvider.js.map +0 -1
  901. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +0 -60
  902. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +0 -1
  903. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +0 -159
  904. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +0 -1
  905. package/lib/esm/components-react/table/TableDataProvider.d.ts +0 -10
  906. package/lib/esm/components-react/table/TableDataProvider.d.ts.map +0 -1
  907. package/lib/esm/components-react/table/TableDataProvider.js +0 -14
  908. package/lib/esm/components-react/table/TableDataProvider.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderRuleOperator.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleOperator.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;+FAG+F;AAC/F,6CAA+B;AAE/B,wDAA8C;AAC9C,2CAAqH;AASrH,aAAa;AACb,SAAgB,iCAAiC,CAAC,KAA6C;;IAC7F,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE/C,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,sCAA0B,EAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,MAAA,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,mCAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAEnG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEjC,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3E,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,IAAA,0CAA8B,EAAC,EAAE,CAAC;KAC1C,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE3B,OAAO,6BAAK,SAAS,EAAC,eAAe;QACnC,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAC,OAAO,GAAE,CAC1F,CAAC;AACT,CAAC;AAlBD,8EAkBC","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*--------------------------------------------------------------------------------------------*/\nimport * as React from \"react\";\nimport { PropertyDescription } from \"@itwin/appui-abstract\";\nimport { Select } from \"@itwin/itwinui-react\";\nimport { getPropertyFilterOperatorLabel, getPropertyFilterOperators, PropertyFilterRuleOperator } from \"./Operators\";\n\n/** @alpha */\nexport interface PropertyFilterBuilderRuleOperatorProps {\n operator?: PropertyFilterRuleOperator;\n property: PropertyDescription;\n onChange: (operator: PropertyFilterRuleOperator) => void;\n}\n\n/** @alpha */\nexport function PropertyFilterBuilderRuleOperator(props: PropertyFilterBuilderRuleOperatorProps) {\n const { operator, property, onChange } = props;\n\n const availableOperators = React.useMemo(() => getPropertyFilterOperators(property), [property]);\n const selectedOperator = availableOperators.find((op) => op === operator) ?? availableOperators[0];\n\n React.useEffect(() => {\n onChange(selectedOperator);\n }, [onChange, selectedOperator]);\n\n const availableOptions = React.useMemo(() => availableOperators.map((op) => ({\n value: op,\n label: getPropertyFilterOperatorLabel(op),\n })), [availableOperators]);\n\n return <div className=\"rule-operator\">\n <Select options={availableOptions} value={selectedOperator} onChange={onChange} size=\"small\"/>\n </div>;\n}\n"]}
1
+ {"version":3,"file":"FilterBuilderRuleOperator.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleOperator.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,wDAA8C;AAC9C,2CAAqH;AAerH;;;GAGG;AACH,SAAgB,iCAAiC,CAAC,KAA6C;IAC7F,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE/C,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,sCAA0B,EAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAEnG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEjC,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3E,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,IAAA,0CAA8B,EAAC,EAAE,CAAC;KAC1C,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE3B,OAAO,6BAAK,SAAS,EAAC,eAAe;QACnC,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAC,OAAO,GAAG,CAC3F,CAAC;AACT,CAAC;AAlBD,8EAkBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyFilterBuilder\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { PropertyDescription } from \"@itwin/appui-abstract\";\r\nimport { Select } from \"@itwin/itwinui-react\";\r\nimport { getPropertyFilterOperatorLabel, getPropertyFilterOperators, PropertyFilterRuleOperator } from \"./Operators\";\r\n\r\n/**\r\n * Props for [[PropertyFilterBuilderRuleOperator]] component.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderRuleOperatorProps {\r\n /** Currently selected operator. */\r\n operator?: PropertyFilterRuleOperator;\r\n /** Property used in rule for which this operator will be used. */\r\n property: PropertyDescription;\r\n /** Callback that is invoked when selected operator changes. */\r\n onChange: (operator: PropertyFilterRuleOperator) => void;\r\n}\r\n\r\n/**\r\n * Component that renders [[PropertyFilterBuilderRuleRenderer]] operator selector.\r\n * @internal\r\n */\r\nexport function PropertyFilterBuilderRuleOperator(props: PropertyFilterBuilderRuleOperatorProps) {\r\n const { operator, property, onChange } = props;\r\n\r\n const availableOperators = React.useMemo(() => getPropertyFilterOperators(property), [property]);\r\n const selectedOperator = availableOperators.find((op) => op === operator) ?? availableOperators[0];\r\n\r\n React.useEffect(() => {\r\n onChange(selectedOperator);\r\n }, [onChange, selectedOperator]);\r\n\r\n const availableOptions = React.useMemo(() => availableOperators.map((op) => ({\r\n value: op,\r\n label: getPropertyFilterOperatorLabel(op),\r\n })), [availableOperators]);\r\n\r\n return <div className=\"rule-operator\">\r\n <Select options={availableOptions} value={selectedOperator} onChange={onChange} size=\"small\" />\r\n </div>;\r\n}\r\n"]}
@@ -1,13 +1,27 @@
1
+ /** @packageDocumentation
2
+ * @module PropertyFilterBuilder
3
+ */
1
4
  import * as React from "react";
2
5
  import { PropertyDescription } from "@itwin/appui-abstract";
3
- /** @alpha */
6
+ /**
7
+ * Props for [[PropertyFilterBuilderRuleProperty]] component.
8
+ * @internal
9
+ */
4
10
  export interface PropertyFilterBuilderRulePropertyProps {
11
+ /** List of available properties. */
5
12
  properties: PropertyDescription[];
13
+ /** Currently selected property. */
6
14
  selectedProperty?: PropertyDescription;
15
+ /** Callback that is invoked when selected property changes. */
7
16
  onSelectedPropertyChanged: (property?: PropertyDescription) => void;
17
+ /** Custom renderer for property item inside selector. */
8
18
  propertyRenderer?: (name: string) => React.ReactNode;
19
+ /** Specifies whether selector should be disabled or not. */
9
20
  isDisabled?: boolean;
10
21
  }
11
- /** @alpha */
22
+ /**
23
+ * Component that renders [[PropertyFilterBuilderRuleRenderer]] property selector.
24
+ * @internal
25
+ */
12
26
  export declare function PropertyFilterBuilderRuleProperty(props: PropertyFilterBuilderRulePropertyProps): JSX.Element;
13
27
  //# sourceMappingURL=FilterBuilderRuleProperty.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderRuleProperty.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleProperty.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAI5D,aAAa;AACb,MAAM,WAAW,sCAAsC;IACrD,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;IACvC,yBAAyB,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpE,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,aAAa;AACb,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,sCAAsC,eAsC9F"}
1
+ {"version":3,"file":"FilterBuilderRuleProperty.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleProperty.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAI5D;;;GAGG;AACH,MAAM,WAAW,sCAAsC;IACrD,oCAAoC;IACpC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;IACvC,+DAA+D;IAC/D,yBAAyB,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpE,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD,4DAA4D;IAC5D,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,sCAAsC,eAuC9F"}
@@ -1,7 +1,18 @@
1
1
  "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PropertyFilterBuilder
8
+ */
2
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
10
  if (k2 === undefined) k2 = k;
4
- 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);
5
16
  }) : (function(o, m, k, k2) {
6
17
  if (k2 === undefined) k2 = k;
7
18
  o[k2] = m[k];
@@ -20,14 +31,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
31
  };
21
32
  Object.defineProperty(exports, "__esModule", { value: true });
22
33
  exports.PropertyFilterBuilderRuleProperty = void 0;
23
- /*---------------------------------------------------------------------------------------------
24
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
- * See LICENSE.md in the project root for license terms and full copyright notice.
26
- *--------------------------------------------------------------------------------------------*/
27
34
  const React = __importStar(require("react"));
28
35
  const itwinui_react_1 = require("@itwin/itwinui-react");
29
36
  const UiComponents_1 = require("../UiComponents");
30
- /** @alpha */
37
+ /**
38
+ * Component that renders [[PropertyFilterBuilderRuleRenderer]] property selector.
39
+ * @internal
40
+ */
31
41
  function PropertyFilterBuilderRuleProperty(props) {
32
42
  const { selectedProperty, properties, onSelectedPropertyChanged, propertyRenderer, isDisabled } = props;
33
43
  const selectOptions = React.useMemo(() => properties.map((property) => ({
@@ -39,17 +49,18 @@ function PropertyFilterBuilderRuleProperty(props) {
39
49
  onSelectedPropertyChanged(properties.find((property) => property.name === name));
40
50
  }, [properties, onSelectedPropertyChanged]);
41
51
  React.useEffect(() => {
42
- const currentSelectedProperty = properties.find((property) => property.name === (selectedProperty === null || selectedProperty === void 0 ? void 0 : selectedProperty.name));
43
- if ((currentSelectedProperty === null || currentSelectedProperty === void 0 ? void 0 : currentSelectedProperty.name) !== (selectedProperty === null || selectedProperty === void 0 ? void 0 : selectedProperty.name))
52
+ const currentSelectedProperty = properties.find((property) => property.name === selectedProperty?.name);
53
+ if (currentSelectedProperty?.name !== selectedProperty?.name)
44
54
  onSelectedPropertyChanged(currentSelectedProperty);
45
55
  }, [properties, selectedProperty, onSelectedPropertyChanged]);
46
56
  const itemRenderer = React.useCallback((selectOption, { isSelected, id }) => {
47
57
  return React.createElement(itwinui_react_1.MenuItem, { key: id, id: id, isSelected: isSelected }, propertyRenderer ? propertyRenderer(selectOption.value) : selectOption.label);
48
58
  }, [propertyRenderer]);
49
59
  return React.createElement("div", { className: "rule-property" },
50
- React.createElement(itwinui_react_1.ComboBox, { options: selectOptions, onChange: onPropertyChanged, value: selectedProperty === null || selectedProperty === void 0 ? void 0 : selectedProperty.name, inputProps: {
60
+ React.createElement(itwinui_react_1.ComboBox, { options: selectOptions, onChange: onPropertyChanged, value: selectedProperty?.name, inputProps: {
51
61
  placeholder: UiComponents_1.UiComponents.translate("filterBuilder.chooseProperty"),
52
62
  disabled: isDisabled,
63
+ size: "small",
53
64
  }, itemRenderer: itemRenderer, enableVirtualization: true }));
54
65
  }
55
66
  exports.PropertyFilterBuilderRuleProperty = PropertyFilterBuilderRuleProperty;
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderRuleProperty.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleProperty.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;+FAG+F;AAC/F,6CAA+B;AAE/B,wDAAuF;AACvF,kDAA+C;AAW/C,aAAa;AACb,SAAgB,iCAAiC,CAAC,KAA6C;IAC7F,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAExG,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAyB,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9F,EAAE,EAAE,QAAQ,CAAC,IAAI;QACjB,KAAK,EAAE,QAAQ,CAAC,YAAY;QAC5B,KAAK,EAAE,QAAQ,CAAC,IAAI;KACrB,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEnB,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QAC3D,yBAAyB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAE5C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,uBAAuB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,MAAK,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAA,CAAC,CAAC;QACxG,IAAI,CAAA,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAE,IAAI,OAAK,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAA;YAC1D,yBAAyB,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAkD,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE;QAC3H,OAAO,oBAAC,wBAAQ,IAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,IACrD,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CACpE,CAAC;IACd,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,OAAO,6BAAK,SAAS,EAAC,eAAe;QACnC,oBAAC,wBAAQ,IACP,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,EAC7B,UAAU,EAAE;gBACV,WAAW,EAAE,2BAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC;gBACnE,QAAQ,EAAE,UAAU;aACrB,EACD,YAAY,EAAE,YAAY,EAC1B,oBAAoB,EAAE,IAAI,GAC1B,CACE,CAAC;AACT,CAAC;AAtCD,8EAsCC","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*--------------------------------------------------------------------------------------------*/\nimport * as React from \"react\";\nimport { PropertyDescription } from \"@itwin/appui-abstract\";\nimport { ComboBox, ComboBoxProps, MenuItem, SelectOption } from \"@itwin/itwinui-react\";\nimport { UiComponents } from \"../UiComponents\";\n\n/** @alpha */\nexport interface PropertyFilterBuilderRulePropertyProps {\n properties: PropertyDescription[];\n selectedProperty?: PropertyDescription;\n onSelectedPropertyChanged: (property?: PropertyDescription) => void;\n propertyRenderer?: (name: string) => React.ReactNode;\n isDisabled?: boolean;\n}\n\n/** @alpha */\nexport function PropertyFilterBuilderRuleProperty(props: PropertyFilterBuilderRulePropertyProps) {\n const { selectedProperty, properties, onSelectedPropertyChanged, propertyRenderer, isDisabled } = props;\n\n const selectOptions = React.useMemo<SelectOption<string>[]>(() => properties.map((property) => ({\n id: property.name,\n label: property.displayLabel,\n value: property.name,\n })), [properties]);\n\n const onPropertyChanged = React.useCallback((name: string) => {\n onSelectedPropertyChanged(properties.find((property) => property.name === name));\n }, [properties, onSelectedPropertyChanged]);\n\n React.useEffect(() => {\n const currentSelectedProperty = properties.find((property) => property.name === selectedProperty?.name);\n if (currentSelectedProperty?.name !== selectedProperty?.name)\n onSelectedPropertyChanged(currentSelectedProperty);\n }, [properties, selectedProperty, onSelectedPropertyChanged]);\n\n const itemRenderer = React.useCallback<Required<ComboBoxProps<string>>[\"itemRenderer\"]>((selectOption, { isSelected, id }) => {\n return <MenuItem key={id} id={id} isSelected={isSelected}>\n {propertyRenderer ? propertyRenderer(selectOption.value) : selectOption.label}\n </MenuItem>;\n }, [propertyRenderer]);\n\n return <div className=\"rule-property\">\n <ComboBox\n options={selectOptions}\n onChange={onPropertyChanged}\n value={selectedProperty?.name}\n inputProps={{\n placeholder: UiComponents.translate(\"filterBuilder.chooseProperty\"),\n disabled: isDisabled,\n }}\n itemRenderer={itemRenderer}\n enableVirtualization={true}\n />\n </div>;\n}\n"]}
1
+ {"version":3,"file":"FilterBuilderRuleProperty.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleProperty.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,wDAAuF;AACvF,kDAA+C;AAmB/C;;;GAGG;AACH,SAAgB,iCAAiC,CAAC,KAA6C;IAC7F,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAExG,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAyB,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9F,EAAE,EAAE,QAAQ,CAAC,IAAI;QACjB,KAAK,EAAE,QAAQ,CAAC,YAAY;QAC5B,KAAK,EAAE,QAAQ,CAAC,IAAI;KACrB,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEnB,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QAC3D,yBAAyB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAE5C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,uBAAuB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACxG,IAAI,uBAAuB,EAAE,IAAI,KAAK,gBAAgB,EAAE,IAAI;YAC1D,yBAAyB,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAkD,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE;QAC3H,OAAO,oBAAC,wBAAQ,IAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,IACrD,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CACpE,CAAC;IACd,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,OAAO,6BAAK,SAAS,EAAC,eAAe;QACnC,oBAAC,wBAAQ,IACP,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAC7B,UAAU,EAAE;gBACV,WAAW,EAAE,2BAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC;gBACnE,QAAQ,EAAE,UAAU;gBACpB,IAAI,EAAE,OAAO;aACd,EACD,YAAY,EAAE,YAAY,EAC1B,oBAAoB,EAAE,IAAI,GAC1B,CACE,CAAC;AACT,CAAC;AAvCD,8EAuCC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyFilterBuilder\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { PropertyDescription } from \"@itwin/appui-abstract\";\r\nimport { ComboBox, ComboBoxProps, MenuItem, SelectOption } from \"@itwin/itwinui-react\";\r\nimport { UiComponents } from \"../UiComponents\";\r\n\r\n/**\r\n * Props for [[PropertyFilterBuilderRuleProperty]] component.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderRulePropertyProps {\r\n /** List of available properties. */\r\n properties: PropertyDescription[];\r\n /** Currently selected property. */\r\n selectedProperty?: PropertyDescription;\r\n /** Callback that is invoked when selected property changes. */\r\n onSelectedPropertyChanged: (property?: PropertyDescription) => void;\r\n /** Custom renderer for property item inside selector. */\r\n propertyRenderer?: (name: string) => React.ReactNode;\r\n /** Specifies whether selector should be disabled or not. */\r\n isDisabled?: boolean;\r\n}\r\n\r\n/**\r\n * Component that renders [[PropertyFilterBuilderRuleRenderer]] property selector.\r\n * @internal\r\n */\r\nexport function PropertyFilterBuilderRuleProperty(props: PropertyFilterBuilderRulePropertyProps) {\r\n const { selectedProperty, properties, onSelectedPropertyChanged, propertyRenderer, isDisabled } = props;\r\n\r\n const selectOptions = React.useMemo<SelectOption<string>[]>(() => properties.map((property) => ({\r\n id: property.name,\r\n label: property.displayLabel,\r\n value: property.name,\r\n })), [properties]);\r\n\r\n const onPropertyChanged = React.useCallback((name: string) => {\r\n onSelectedPropertyChanged(properties.find((property) => property.name === name));\r\n }, [properties, onSelectedPropertyChanged]);\r\n\r\n React.useEffect(() => {\r\n const currentSelectedProperty = properties.find((property) => property.name === selectedProperty?.name);\r\n if (currentSelectedProperty?.name !== selectedProperty?.name)\r\n onSelectedPropertyChanged(currentSelectedProperty);\r\n }, [properties, selectedProperty, onSelectedPropertyChanged]);\r\n\r\n const itemRenderer = React.useCallback<Required<ComboBoxProps<string>>[\"itemRenderer\"]>((selectOption, { isSelected, id }) => {\r\n return <MenuItem key={id} id={id} isSelected={isSelected}>\r\n {propertyRenderer ? propertyRenderer(selectOption.value) : selectOption.label}\r\n </MenuItem>;\r\n }, [propertyRenderer]);\r\n\r\n return <div className=\"rule-property\">\r\n <ComboBox\r\n options={selectOptions}\r\n onChange={onPropertyChanged}\r\n value={selectedProperty?.name}\r\n inputProps={{\r\n placeholder: UiComponents.translate(\"filterBuilder.chooseProperty\"),\r\n disabled: isDisabled,\r\n size: \"small\",\r\n }}\r\n itemRenderer={itemRenderer}\r\n enableVirtualization={true}\r\n />\r\n </div>;\r\n}\r\n"]}
@@ -1,11 +1,23 @@
1
+ /** @packageDocumentation
2
+ * @module PropertyFilterBuilder
3
+ */
1
4
  /// <reference types="react" />
2
5
  import { PropertyDescription, PropertyValue } from "@itwin/appui-abstract";
3
- /** @alpha */
6
+ /**
7
+ * Props for [[PropertyFilterBuilderRuleValue]] component.
8
+ * @internal
9
+ */
4
10
  export interface PropertyFilterBuilderRuleValueProps {
11
+ /** Currently entered value. */
5
12
  value?: PropertyValue;
13
+ /** Property used in rule to which this value will be compared to. */
6
14
  property: PropertyDescription;
15
+ /** Callback that is invoked when value changes. */
7
16
  onChange: (value: PropertyValue) => void;
8
17
  }
9
- /** @alpha */
18
+ /**
19
+ * Component that renders [[PropertyFilterBuilderRuleRenderer]] value input.
20
+ * @internal
21
+ */
10
22
  export declare function PropertyFilterBuilderRuleValue(props: PropertyFilterBuilderRuleValueProps): JSX.Element;
11
23
  //# sourceMappingURL=FilterBuilderRuleValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderRuleValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleValue.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,mBAAmB,EAAkB,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAGhH,aAAa;AACb,MAAM,WAAW,mCAAmC;IAClD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED,aAAa;AACb,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,mCAAmC,eAmBxF"}
1
+ {"version":3,"file":"FilterBuilderRuleValue.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleValue.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAGH,OAAO,EAAE,mBAAmB,EAAkB,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAGhH;;;GAGG;AACH,MAAM,WAAW,mCAAmC;IAClD,+BAA+B;IAC/B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,qEAAqE;IACrE,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,mDAAmD;IACnD,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,mCAAmC,eAoBxF"}
@@ -1,7 +1,18 @@
1
1
  "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PropertyFilterBuilder
8
+ */
2
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
10
  if (k2 === undefined) k2 = k;
4
- 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);
5
16
  }) : (function(o, m, k, k2) {
6
17
  if (k2 === undefined) k2 = k;
7
18
  o[k2] = m[k];
@@ -20,24 +31,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
31
  };
21
32
  Object.defineProperty(exports, "__esModule", { value: true });
22
33
  exports.PropertyFilterBuilderRuleValue = void 0;
23
- /*---------------------------------------------------------------------------------------------
24
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
- * See LICENSE.md in the project root for license terms and full copyright notice.
26
- *--------------------------------------------------------------------------------------------*/
27
34
  const React = __importStar(require("react"));
28
35
  const appui_abstract_1 = require("@itwin/appui-abstract");
29
36
  const EditorContainer_1 = require("../editors/EditorContainer");
30
- /** @alpha */
37
+ /**
38
+ * Component that renders [[PropertyFilterBuilderRuleRenderer]] value input.
39
+ * @internal
40
+ */
31
41
  function PropertyFilterBuilderRuleValue(props) {
32
42
  const { value, property, onChange } = props;
33
43
  const propertyRecord = React.useMemo(() => {
34
- return new appui_abstract_1.PropertyRecord(value !== null && value !== void 0 ? value : { valueFormat: appui_abstract_1.PropertyValueFormat.Primitive }, property);
44
+ return new appui_abstract_1.PropertyRecord(value ?? { valueFormat: appui_abstract_1.PropertyValueFormat.Primitive }, property);
35
45
  }, [value, property]);
36
46
  const onValueChange = React.useCallback(({ newValue }) => {
37
47
  onChange(newValue);
38
48
  }, [onChange]);
39
49
  return React.createElement("div", { className: "rule-value" },
40
- React.createElement(EditorContainer_1.EditorContainer, { propertyRecord: propertyRecord, onCancel: /* istanbul ignore next */ () => { }, onCommit: onValueChange, setFocus: false }));
50
+ React.createElement(EditorContainer_1.EditorContainer, { propertyRecord: propertyRecord, onCancel: /* istanbul ignore next */ () => { }, onCommit: onValueChange, setFocus: false, shouldCommitOnChange: true }));
41
51
  }
42
52
  exports.PropertyFilterBuilderRuleValue = PropertyFilterBuilderRuleValue;
43
53
  //# sourceMappingURL=FilterBuilderRuleValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderRuleValue.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleValue.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;+FAG+F;AAC/F,6CAA+B;AAC/B,0DAAgH;AAChH,gEAAkF;AASlF,aAAa;AACb,SAAgB,8BAA8B,CAAC,KAA0C;IACvF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE5C,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxC,OAAO,IAAI,+BAAc,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,WAAW,EAAE,oCAAmB,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC/F,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtB,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAuB,EAAE,EAAE;QAC5E,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,6BAAK,SAAS,EAAC,YAAY;QAChC,oBAAC,iCAAe,IACd,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,0BAA0B,CAAC,GAAG,EAAE,GAAG,CAAC,EAC9C,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,KAAK,GACf,CACE,CAAC;AACT,CAAC;AAnBD,wEAmBC","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*--------------------------------------------------------------------------------------------*/\nimport * as React from \"react\";\nimport { PropertyDescription, PropertyRecord, PropertyValue, PropertyValueFormat } from \"@itwin/appui-abstract\";\nimport { EditorContainer, PropertyUpdatedArgs } from \"../editors/EditorContainer\";\n\n/** @alpha */\nexport interface PropertyFilterBuilderRuleValueProps {\n value?: PropertyValue;\n property: PropertyDescription;\n onChange: (value: PropertyValue) => void;\n}\n\n/** @alpha */\nexport function PropertyFilterBuilderRuleValue(props: PropertyFilterBuilderRuleValueProps) {\n const { value, property, onChange } = props;\n\n const propertyRecord = React.useMemo(() => {\n return new PropertyRecord(value ?? { valueFormat: PropertyValueFormat.Primitive }, property);\n }, [value, property]);\n\n const onValueChange = React.useCallback(({ newValue }: PropertyUpdatedArgs) => {\n onChange(newValue);\n }, [onChange]);\n\n return <div className=\"rule-value\">\n <EditorContainer\n propertyRecord={propertyRecord}\n onCancel={/* istanbul ignore next */ () => { }}\n onCommit={onValueChange}\n setFocus={false}\n />\n </div>;\n}\n"]}
1
+ {"version":3,"file":"FilterBuilderRuleValue.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderRuleValue.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,0DAAgH;AAChH,gEAAkF;AAelF;;;GAGG;AACH,SAAgB,8BAA8B,CAAC,KAA0C;IACvF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE5C,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxC,OAAO,IAAI,+BAAc,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,oCAAmB,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC/F,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtB,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAuB,EAAE,EAAE;QAC5E,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,6BAAK,SAAS,EAAC,YAAY;QAChC,oBAAC,iCAAe,IACd,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,0BAA0B,CAAC,GAAG,EAAE,GAAG,CAAC,EAC9C,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,KAAK,EACf,oBAAoB,EAAE,IAAI,GAC1B,CACE,CAAC;AACT,CAAC;AApBD,wEAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyFilterBuilder\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { PropertyDescription, PropertyRecord, PropertyValue, PropertyValueFormat } from \"@itwin/appui-abstract\";\r\nimport { EditorContainer, PropertyUpdatedArgs } from \"../editors/EditorContainer\";\r\n\r\n/**\r\n * Props for [[PropertyFilterBuilderRuleValue]] component.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderRuleValueProps {\r\n /** Currently entered value. */\r\n value?: PropertyValue;\r\n /** Property used in rule to which this value will be compared to. */\r\n property: PropertyDescription;\r\n /** Callback that is invoked when value changes. */\r\n onChange: (value: PropertyValue) => void;\r\n}\r\n\r\n/**\r\n * Component that renders [[PropertyFilterBuilderRuleRenderer]] value input.\r\n * @internal\r\n */\r\nexport function PropertyFilterBuilderRuleValue(props: PropertyFilterBuilderRuleValueProps) {\r\n const { value, property, onChange } = props;\r\n\r\n const propertyRecord = React.useMemo(() => {\r\n return new PropertyRecord(value ?? { valueFormat: PropertyValueFormat.Primitive }, property);\r\n }, [value, property]);\r\n\r\n const onValueChange = React.useCallback(({ newValue }: PropertyUpdatedArgs) => {\r\n onChange(newValue);\r\n }, [onChange]);\r\n\r\n return <div className=\"rule-value\">\r\n <EditorContainer\r\n propertyRecord={propertyRecord}\r\n onCancel={/* istanbul ignore next */ () => { }}\r\n onCommit={onValueChange}\r\n setFocus={false}\r\n shouldCommitOnChange={true}\r\n />\r\n </div>;\r\n}\r\n"]}
@@ -1,44 +1,87 @@
1
+ /** @packageDocumentation
2
+ * @module PropertyFilterBuilder
3
+ */
1
4
  import { PropertyDescription, PropertyValue } from "@itwin/appui-abstract";
2
5
  import { PropertyFilterRuleGroupOperator, PropertyFilterRuleOperator } from "./Operators";
3
6
  import { PropertyFilter } from "./Types";
4
- /** @alpha */
7
+ /**
8
+ * Data structure that describes [[PropertyFilterBuilder]] component state.
9
+ * @internal
10
+ */
5
11
  export interface PropertyFilterBuilderState {
12
+ /** Root group of rules in [[PropertyFilterBuilder]] component. */
6
13
  rootGroup: PropertyFilterBuilderRuleGroup;
7
14
  }
8
- /** @alpha */
9
- export declare type PropertyFilterBuilderRuleGroupItem = PropertyFilterBuilderRuleGroup | PropertyFilterBuilderRule;
10
- /** @alpha */
15
+ /**
16
+ * Type that describes [[PropertyFilterBuilder]] component group item.
17
+ * @internal
18
+ */
19
+ export type PropertyFilterBuilderRuleGroupItem = PropertyFilterBuilderRuleGroup | PropertyFilterBuilderRule;
20
+ /**
21
+ * Data structure that describes [[PropertyFilterBuilder]] component rule group.
22
+ * @internal
23
+ */
11
24
  export interface PropertyFilterBuilderRuleGroup {
25
+ /** Id of this rule group. */
12
26
  id: string;
27
+ /** Id of rule group that this group is nested in. */
13
28
  groupId?: string;
29
+ /** Operator that should join items in this group. */
14
30
  operator: PropertyFilterRuleGroupOperator;
31
+ /** Items in this group. */
15
32
  items: PropertyFilterBuilderRuleGroupItem[];
16
33
  }
17
- /** @alpha */
34
+ /**
35
+ * Data structure that describes [[PropertyFilterBuilder]] component single rule.
36
+ * @internal
37
+ */
18
38
  export interface PropertyFilterBuilderRule {
39
+ /** Id of this rule. */
19
40
  id: string;
41
+ /** Id of rule group that this rule is nested in. */
20
42
  groupId: string;
43
+ /** Property used in this rule. */
21
44
  property?: PropertyDescription;
45
+ /** Operator that should be used to compare property value. */
22
46
  operator?: PropertyFilterRuleOperator;
47
+ /** Value that property should be compared to. */
23
48
  value?: PropertyValue;
24
49
  }
25
- /** @alpha */
50
+ /**
51
+ * Actions for controlling [[PropertyFilterBuilder]] component state.
52
+ * @internal
53
+ */
26
54
  export declare class PropertyFilterBuilderActions {
27
55
  private setState;
28
56
  constructor(setState: (setter: (prevState: PropertyFilterBuilderState) => PropertyFilterBuilderState) => void);
29
57
  private updateState;
58
+ /** Adds new rule or group of rules to the group specified by path. */
30
59
  addItem(path: string[], itemType: "RULE_GROUP" | "RULE"): void;
60
+ /** Removes item specified by path. */
31
61
  removeItem(path: string[]): void;
62
+ /** Sets operator of rule group specified by the path. */
32
63
  setRuleGroupOperator(path: string[], operator: PropertyFilterRuleGroupOperator): void;
64
+ /** Sets property of rule specified by the path. */
33
65
  setRuleProperty(path: string[], property?: PropertyDescription): void;
66
+ /** Sets operator of rule specified by the path. */
34
67
  setRuleOperator(path: string[], operator: PropertyFilterRuleOperator): void;
68
+ /** Sets value of rule specified by the path. */
35
69
  setRuleValue(path: string[], value: PropertyValue): void;
36
70
  }
37
- /** @alpha */
71
+ /**
72
+ * Function to check if supplied [[PropertyFilterBuilderRuleGroupItem]] is [[PropertyFilterBuilderRuleGroup]].
73
+ * @internal
74
+ */
38
75
  export declare function isPropertyFilterBuilderRuleGroup(item: PropertyFilterBuilderRuleGroupItem): item is PropertyFilterBuilderRuleGroup;
39
- /** @alpha */
76
+ /**
77
+ * Custom hook that creates state for [[PropertyFilterBuilder]] component. It creates empty state or initializes
78
+ * state from supplied initial filter.
79
+ * @internal
80
+ */
40
81
  export declare function usePropertyFilterBuilderState(initialFilter?: PropertyFilter): {
41
82
  state: PropertyFilterBuilderState;
42
83
  actions: PropertyFilterBuilderActions;
43
84
  };
85
+ /** @internal */
86
+ export declare function buildPropertyFilter(groupItem: PropertyFilterBuilderRuleGroupItem): PropertyFilter | undefined;
44
87
  //# sourceMappingURL=FilterBuilderState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderState.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderState.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,EAAiC,+BAA+B,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzH,OAAO,EAA6B,cAAc,EAAsB,MAAM,SAAS,CAAC;AAExF,aAAa;AACb,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,8BAA8B,CAAC;CAC3C;AAED,aAAa;AACb,oBAAY,kCAAkC,GAAG,8BAA8B,GAAG,yBAAyB,CAAC;AAE5G,aAAa;AACb,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,+BAA+B,CAAC;IAC1C,KAAK,EAAE,kCAAkC,EAAE,CAAC;CAC7C;AAED,aAAa;AACb,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,CAAC,EAAE,0BAA0B,CAAC;IACtC,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,aAAa;AACb,qBAAa,4BAA4B;IAC3B,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,0BAA0B,KAAK,0BAA0B,KAAK,IAAI;IAErH,OAAO,CAAC,WAAW;IAIZ,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;IAUvD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE;IAoBzB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,+BAA+B;IAS9E,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,mBAAmB;IAU9D,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,0BAA0B;IAWpE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa;CAQzD;AAED,aAAa;AACb,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,kCAAkC,GAAG,IAAI,IAAI,8BAA8B,CAEjI;AAED,aAAa;AACb,wBAAgB,6BAA6B,CAAC,aAAa,CAAC,EAAE,cAAc;;;EAO3E"}
1
+ {"version":3,"file":"FilterBuilderState.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAEhG,OAAO,EAAiC,+BAA+B,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzH,OAAO,EAA6B,cAAc,EAAsB,MAAM,SAAS,CAAC;AAExF;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,kEAAkE;IAClE,SAAS,EAAE,8BAA8B,CAAC;CAC3C;AAED;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG,8BAA8B,GAAG,yBAAyB,CAAC;AAE5G;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,QAAQ,EAAE,+BAA+B,CAAC;IAC1C,2BAA2B;IAC3B,KAAK,EAAE,kCAAkC,EAAE,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,0BAA0B,CAAC;IACtC,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED;;;GAGG;AACH,qBAAa,4BAA4B;IAC3B,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,0BAA0B,KAAK,0BAA0B,KAAK,IAAI;IAErH,OAAO,CAAC,WAAW;IAInB,sEAAsE;IAC/D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;IAU9D,sCAAsC;IAC/B,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE;IAoBhC,yDAAyD;IAClD,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,+BAA+B;IASrF,mDAAmD;IAC5C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,mBAAmB;IAUrE,mDAAmD;IAC5C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,0BAA0B;IAW3E,gDAAgD;IACzC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa;CAQzD;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,kCAAkC,GAAG,IAAI,IAAI,8BAA8B,CAEjI;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,aAAa,CAAC,EAAE,cAAc;;;EAO3E;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,kCAAkC,GAAG,cAAc,GAAG,SAAS,CAI7G"}
@@ -1,7 +1,18 @@
1
1
  "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PropertyFilterBuilder
8
+ */
2
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
10
  if (k2 === undefined) k2 = k;
4
- 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);
5
16
  }) : (function(o, m, k, k2) {
6
17
  if (k2 === undefined) k2 = k;
7
18
  o[k2] = m[k];
@@ -19,17 +30,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
19
30
  return result;
20
31
  };
21
32
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.usePropertyFilterBuilderState = exports.isPropertyFilterBuilderRuleGroup = exports.PropertyFilterBuilderActions = void 0;
23
- /*---------------------------------------------------------------------------------------------
24
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
- * See LICENSE.md in the project root for license terms and full copyright notice.
26
- *--------------------------------------------------------------------------------------------*/
33
+ exports.buildPropertyFilter = exports.usePropertyFilterBuilderState = exports.isPropertyFilterBuilderRuleGroup = exports.PropertyFilterBuilderActions = void 0;
27
34
  const immer_1 = require("immer");
28
35
  const React = __importStar(require("react"));
36
+ const appui_abstract_1 = require("@itwin/appui-abstract");
29
37
  const core_bentley_1 = require("@itwin/core-bentley");
30
38
  const Operators_1 = require("./Operators");
31
39
  const Types_1 = require("./Types");
32
- /** @alpha */
40
+ /**
41
+ * Actions for controlling [[PropertyFilterBuilder]] component state.
42
+ * @internal
43
+ */
33
44
  class PropertyFilterBuilderActions {
34
45
  constructor(setState) {
35
46
  this.setState = setState;
@@ -37,6 +48,7 @@ class PropertyFilterBuilderActions {
37
48
  updateState(updater) {
38
49
  this.setState((0, immer_1.produce)(updater));
39
50
  }
51
+ /** Adds new rule or group of rules to the group specified by path. */
40
52
  addItem(path, itemType) {
41
53
  this.updateState((state) => {
42
54
  const parentGroup = findRuleGroup(state.rootGroup, path);
@@ -46,6 +58,7 @@ class PropertyFilterBuilderActions {
46
58
  parentGroup.items.push(item);
47
59
  });
48
60
  }
61
+ /** Removes item specified by path. */
49
62
  removeItem(path) {
50
63
  function removeItemFromGroup(state, pathToItem) {
51
64
  const pathToParent = pathToItem.slice(0, -1);
@@ -64,6 +77,7 @@ class PropertyFilterBuilderActions {
64
77
  removeItemFromGroup(state, path);
65
78
  });
66
79
  }
80
+ /** Sets operator of rule group specified by the path. */
67
81
  setRuleGroupOperator(path, operator) {
68
82
  this.updateState((state) => {
69
83
  const group = findRuleGroup(state.rootGroup, path);
@@ -72,6 +86,7 @@ class PropertyFilterBuilderActions {
72
86
  group.operator = operator;
73
87
  });
74
88
  }
89
+ /** Sets property of rule specified by the path. */
75
90
  setRuleProperty(path, property) {
76
91
  this.updateState((state) => {
77
92
  const rule = findRule(state.rootGroup, path);
@@ -81,6 +96,7 @@ class PropertyFilterBuilderActions {
81
96
  rule.value = undefined;
82
97
  });
83
98
  }
99
+ /** Sets operator of rule specified by the path. */
84
100
  setRuleOperator(path, operator) {
85
101
  this.updateState((state) => {
86
102
  const rule = findRule(state.rootGroup, path);
@@ -91,6 +107,7 @@ class PropertyFilterBuilderActions {
91
107
  rule.operator = operator;
92
108
  });
93
109
  }
110
+ /** Sets value of rule specified by the path. */
94
111
  setRuleValue(path, value) {
95
112
  this.updateState((state) => {
96
113
  const rule = findRule(state.rootGroup, path);
@@ -101,18 +118,57 @@ class PropertyFilterBuilderActions {
101
118
  }
102
119
  }
103
120
  exports.PropertyFilterBuilderActions = PropertyFilterBuilderActions;
104
- /** @alpha */
121
+ /**
122
+ * Function to check if supplied [[PropertyFilterBuilderRuleGroupItem]] is [[PropertyFilterBuilderRuleGroup]].
123
+ * @internal
124
+ */
105
125
  function isPropertyFilterBuilderRuleGroup(item) {
106
126
  return item.items !== undefined;
107
127
  }
108
128
  exports.isPropertyFilterBuilderRuleGroup = isPropertyFilterBuilderRuleGroup;
109
- /** @alpha */
129
+ /**
130
+ * Custom hook that creates state for [[PropertyFilterBuilder]] component. It creates empty state or initializes
131
+ * state from supplied initial filter.
132
+ * @internal
133
+ */
110
134
  function usePropertyFilterBuilderState(initialFilter) {
111
135
  const [state, setState] = React.useState(() => initialFilter ? convertFilterToState(initialFilter) : { rootGroup: createEmptyRuleGroup() });
112
136
  const [actions] = React.useState(() => new PropertyFilterBuilderActions(setState));
113
137
  return { state, actions };
114
138
  }
115
139
  exports.usePropertyFilterBuilderState = usePropertyFilterBuilderState;
140
+ /** @internal */
141
+ function buildPropertyFilter(groupItem) {
142
+ if (isPropertyFilterBuilderRuleGroup(groupItem))
143
+ return buildPropertyFilterFromRuleGroup(groupItem);
144
+ return buildPropertyFilterFromRule(groupItem);
145
+ }
146
+ exports.buildPropertyFilter = buildPropertyFilter;
147
+ function buildPropertyFilterFromRuleGroup(rootGroup) {
148
+ if (rootGroup.items.length === 0)
149
+ return undefined;
150
+ const rules = new Array();
151
+ for (const item of rootGroup.items) {
152
+ const rule = buildPropertyFilter(item);
153
+ if (!rule)
154
+ return undefined;
155
+ rules.push(rule);
156
+ }
157
+ if (rules.length === 1)
158
+ return rules[0];
159
+ return {
160
+ operator: rootGroup.operator,
161
+ rules,
162
+ };
163
+ }
164
+ function buildPropertyFilterFromRule(rule) {
165
+ const { property, operator, value } = rule;
166
+ if (!property || operator === undefined)
167
+ return undefined;
168
+ if (!(0, Operators_1.isUnaryPropertyFilterOperator)(operator) && (value === undefined || value.valueFormat !== appui_abstract_1.PropertyValueFormat.Primitive || value.value === undefined))
169
+ return undefined;
170
+ return { property, operator, value };
171
+ }
116
172
  function createEmptyRule(groupId) {
117
173
  return {
118
174
  id: core_bentley_1.Guid.createValue(),
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderState.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport { Draft, produce } from \"immer\";\nimport * as React from \"react\";\nimport { PropertyDescription, PropertyValue } from \"@itwin/appui-abstract\";\nimport { Guid } from \"@itwin/core-bentley\";\nimport { isUnaryPropertyFilterOperator, PropertyFilterRuleGroupOperator, PropertyFilterRuleOperator } from \"./Operators\";\nimport { isPropertyFilterRuleGroup, PropertyFilter, PropertyFilterRule } from \"./Types\";\n\n/** @alpha */\nexport interface PropertyFilterBuilderState {\n rootGroup: PropertyFilterBuilderRuleGroup;\n}\n\n/** @alpha */\nexport type PropertyFilterBuilderRuleGroupItem = PropertyFilterBuilderRuleGroup | PropertyFilterBuilderRule;\n\n/** @alpha */\nexport interface PropertyFilterBuilderRuleGroup {\n id: string;\n groupId?: string;\n operator: PropertyFilterRuleGroupOperator;\n items: PropertyFilterBuilderRuleGroupItem[];\n}\n\n/** @alpha */\nexport interface PropertyFilterBuilderRule {\n id: string;\n groupId: string;\n property?: PropertyDescription;\n operator?: PropertyFilterRuleOperator;\n value?: PropertyValue;\n}\n\n/** @alpha */\nexport class PropertyFilterBuilderActions {\n constructor(private setState: (setter: (prevState: PropertyFilterBuilderState) => PropertyFilterBuilderState) => void) { }\n\n private updateState(updater: (state: Draft<PropertyFilterBuilderState>) => void) {\n this.setState(produce(updater));\n }\n\n public addItem(path: string[], itemType: \"RULE_GROUP\" | \"RULE\") {\n this.updateState((state) => {\n const parentGroup = findRuleGroup(state.rootGroup, path);\n if (!parentGroup)\n return;\n const item = itemType === \"RULE_GROUP\" ? createEmptyRuleGroup(parentGroup.id) : createEmptyRule(parentGroup.id);\n parentGroup.items.push(item);\n });\n }\n\n public removeItem(path: string[]) {\n function removeItemFromGroup(state: Draft<PropertyFilterBuilderState>, pathToItem: string[]) {\n const pathToParent = pathToItem.slice(0, -1);\n const parentGroup = findRuleGroup(state.rootGroup, pathToParent);\n if (!parentGroup)\n return;\n const itemId = pathToItem[pathToItem.length - 1];\n const itemIndex = parentGroup.items.findIndex((item) => item.id === itemId);\n if (itemIndex === -1)\n return;\n parentGroup.items.splice(itemIndex, 1);\n if (parentGroup.items.length === 0)\n removeItemFromGroup(state, pathToParent);\n }\n\n this.updateState((state) => {\n removeItemFromGroup(state, path);\n });\n }\n\n public setRuleGroupOperator(path: string[], operator: PropertyFilterRuleGroupOperator) {\n this.updateState((state) => {\n const group = findRuleGroup(state.rootGroup, path);\n if (!group)\n return;\n group.operator = operator;\n });\n }\n\n public setRuleProperty(path: string[], property?: PropertyDescription) {\n this.updateState((state) => {\n const rule = findRule(state.rootGroup, path);\n if (!rule)\n return;\n rule.property = property;\n rule.value = undefined;\n });\n }\n\n public setRuleOperator(path: string[], operator: PropertyFilterRuleOperator) {\n this.updateState((state) => {\n const rule = findRule(state.rootGroup, path);\n if (!rule)\n return;\n if (isUnaryPropertyFilterOperator(operator))\n rule.value = undefined;\n rule.operator = operator;\n });\n }\n\n public setRuleValue(path: string[], value: PropertyValue) {\n this.updateState((state) => {\n const rule = findRule(state.rootGroup, path);\n if (!rule)\n return;\n rule.value = value;\n });\n }\n}\n\n/** @alpha */\nexport function isPropertyFilterBuilderRuleGroup(item: PropertyFilterBuilderRuleGroupItem): item is PropertyFilterBuilderRuleGroup {\n return (item as any).items !== undefined;\n}\n\n/** @alpha */\nexport function usePropertyFilterBuilderState(initialFilter?: PropertyFilter) {\n const [state, setState] = React.useState<PropertyFilterBuilderState>(\n () => initialFilter ? convertFilterToState(initialFilter) : { rootGroup: createEmptyRuleGroup() }\n );\n const [actions] = React.useState(() => new PropertyFilterBuilderActions(setState));\n\n return { state, actions };\n}\n\nfunction createEmptyRule(groupId: string): PropertyFilterBuilderRule {\n return {\n id: Guid.createValue(),\n groupId,\n };\n}\n\nfunction createEmptyRuleGroup(groupId?: string): PropertyFilterBuilderRuleGroup {\n const id = Guid.createValue();\n return {\n id,\n groupId,\n operator: PropertyFilterRuleGroupOperator.And,\n items: [createEmptyRule(id)],\n };\n}\n\nfunction findRuleGroup(rootGroup: PropertyFilterBuilderRuleGroup, path: string[]): PropertyFilterBuilderRuleGroup | undefined {\n if (path.length === 0)\n return rootGroup;\n\n const [currentItemId, ...rest] = path;\n const currentItem = rootGroup.items.find((item) => item.id === currentItemId);\n if (!currentItem || !isPropertyFilterBuilderRuleGroup(currentItem))\n return undefined;\n\n return findRuleGroup(currentItem, rest);\n}\n\nfunction findRule(rootGroup: PropertyFilterBuilderRuleGroup, path: string[]): PropertyFilterBuilderRule | undefined {\n if (path.length === 0)\n return undefined;\n\n const [currentItemId, ...rest] = path;\n const currentItem = rootGroup.items.find((item) => item.id === currentItemId);\n if (!currentItem)\n return undefined;\n\n if (isPropertyFilterBuilderRuleGroup(currentItem))\n return findRule(currentItem, rest);\n\n return currentItem;\n}\n\nfunction getRuleGroupItem(filter: PropertyFilter, parentId: string): PropertyFilterBuilderRuleGroupItem {\n const id = Guid.createValue();\n if (isPropertyFilterRuleGroup(filter))\n return {\n id,\n groupId: parentId,\n operator: filter.operator,\n items: filter.rules.map((rule) => getRuleGroupItem(rule, id)),\n };\n return getRuleItem(filter, id);\n}\n\nfunction getRuleItem(filter: PropertyFilterRule, parentId: string) {\n return {\n id: Guid.createValue(),\n groupId: parentId,\n property: filter.property,\n operator: filter.operator,\n value: filter.value,\n };\n}\n\nfunction convertFilterToState(filter: PropertyFilter): PropertyFilterBuilderState {\n const id = Guid.createValue();\n if (isPropertyFilterRuleGroup(filter)) {\n return {\n rootGroup: {\n id,\n operator: filter.operator,\n items: filter.rules.map((rule) => getRuleGroupItem(rule, id)),\n },\n };\n }\n return {\n rootGroup: {\n id,\n operator: PropertyFilterRuleGroupOperator.And,\n items: [getRuleItem(filter, id)],\n },\n };\n}\n"]}
1
+ {"version":3,"file":"FilterBuilderState.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyFilterBuilder\r\n */\r\n\r\nimport { Draft, produce } from \"immer\";\r\nimport * as React from \"react\";\r\nimport { PropertyDescription, PropertyValue, PropertyValueFormat } from \"@itwin/appui-abstract\";\r\nimport { Guid } from \"@itwin/core-bentley\";\r\nimport { isUnaryPropertyFilterOperator, PropertyFilterRuleGroupOperator, PropertyFilterRuleOperator } from \"./Operators\";\r\nimport { isPropertyFilterRuleGroup, PropertyFilter, PropertyFilterRule } from \"./Types\";\r\n\r\n/**\r\n * Data structure that describes [[PropertyFilterBuilder]] component state.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderState {\r\n /** Root group of rules in [[PropertyFilterBuilder]] component. */\r\n rootGroup: PropertyFilterBuilderRuleGroup;\r\n}\r\n\r\n/**\r\n * Type that describes [[PropertyFilterBuilder]] component group item.\r\n * @internal\r\n */\r\nexport type PropertyFilterBuilderRuleGroupItem = PropertyFilterBuilderRuleGroup | PropertyFilterBuilderRule;\r\n\r\n/**\r\n * Data structure that describes [[PropertyFilterBuilder]] component rule group.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderRuleGroup {\r\n /** Id of this rule group. */\r\n id: string;\r\n /** Id of rule group that this group is nested in. */\r\n groupId?: string;\r\n /** Operator that should join items in this group. */\r\n operator: PropertyFilterRuleGroupOperator;\r\n /** Items in this group. */\r\n items: PropertyFilterBuilderRuleGroupItem[];\r\n}\r\n\r\n/**\r\n * Data structure that describes [[PropertyFilterBuilder]] component single rule.\r\n * @internal\r\n */\r\nexport interface PropertyFilterBuilderRule {\r\n /** Id of this rule. */\r\n id: string;\r\n /** Id of rule group that this rule is nested in. */\r\n groupId: string;\r\n /** Property used in this rule. */\r\n property?: PropertyDescription;\r\n /** Operator that should be used to compare property value. */\r\n operator?: PropertyFilterRuleOperator;\r\n /** Value that property should be compared to. */\r\n value?: PropertyValue;\r\n}\r\n\r\n/**\r\n * Actions for controlling [[PropertyFilterBuilder]] component state.\r\n * @internal\r\n */\r\nexport class PropertyFilterBuilderActions {\r\n constructor(private setState: (setter: (prevState: PropertyFilterBuilderState) => PropertyFilterBuilderState) => void) { }\r\n\r\n private updateState(updater: (state: Draft<PropertyFilterBuilderState>) => void) {\r\n this.setState(produce(updater));\r\n }\r\n\r\n /** Adds new rule or group of rules to the group specified by path. */\r\n public addItem(path: string[], itemType: \"RULE_GROUP\" | \"RULE\") {\r\n this.updateState((state) => {\r\n const parentGroup = findRuleGroup(state.rootGroup, path);\r\n if (!parentGroup)\r\n return;\r\n const item = itemType === \"RULE_GROUP\" ? createEmptyRuleGroup(parentGroup.id) : createEmptyRule(parentGroup.id);\r\n parentGroup.items.push(item);\r\n });\r\n }\r\n\r\n /** Removes item specified by path. */\r\n public removeItem(path: string[]) {\r\n function removeItemFromGroup(state: Draft<PropertyFilterBuilderState>, pathToItem: string[]) {\r\n const pathToParent = pathToItem.slice(0, -1);\r\n const parentGroup = findRuleGroup(state.rootGroup, pathToParent);\r\n if (!parentGroup)\r\n return;\r\n const itemId = pathToItem[pathToItem.length - 1];\r\n const itemIndex = parentGroup.items.findIndex((item) => item.id === itemId);\r\n if (itemIndex === -1)\r\n return;\r\n parentGroup.items.splice(itemIndex, 1);\r\n if (parentGroup.items.length === 0)\r\n removeItemFromGroup(state, pathToParent);\r\n }\r\n\r\n this.updateState((state) => {\r\n removeItemFromGroup(state, path);\r\n });\r\n }\r\n\r\n /** Sets operator of rule group specified by the path. */\r\n public setRuleGroupOperator(path: string[], operator: PropertyFilterRuleGroupOperator) {\r\n this.updateState((state) => {\r\n const group = findRuleGroup(state.rootGroup, path);\r\n if (!group)\r\n return;\r\n group.operator = operator;\r\n });\r\n }\r\n\r\n /** Sets property of rule specified by the path. */\r\n public setRuleProperty(path: string[], property?: PropertyDescription) {\r\n this.updateState((state) => {\r\n const rule = findRule(state.rootGroup, path);\r\n if (!rule)\r\n return;\r\n rule.property = property;\r\n rule.value = undefined;\r\n });\r\n }\r\n\r\n /** Sets operator of rule specified by the path. */\r\n public setRuleOperator(path: string[], operator: PropertyFilterRuleOperator) {\r\n this.updateState((state) => {\r\n const rule = findRule(state.rootGroup, path);\r\n if (!rule)\r\n return;\r\n if (isUnaryPropertyFilterOperator(operator))\r\n rule.value = undefined;\r\n rule.operator = operator;\r\n });\r\n }\r\n\r\n /** Sets value of rule specified by the path. */\r\n public setRuleValue(path: string[], value: PropertyValue) {\r\n this.updateState((state) => {\r\n const rule = findRule(state.rootGroup, path);\r\n if (!rule)\r\n return;\r\n rule.value = value;\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Function to check if supplied [[PropertyFilterBuilderRuleGroupItem]] is [[PropertyFilterBuilderRuleGroup]].\r\n * @internal\r\n */\r\nexport function isPropertyFilterBuilderRuleGroup(item: PropertyFilterBuilderRuleGroupItem): item is PropertyFilterBuilderRuleGroup {\r\n return (item as any).items !== undefined;\r\n}\r\n\r\n/**\r\n * Custom hook that creates state for [[PropertyFilterBuilder]] component. It creates empty state or initializes\r\n * state from supplied initial filter.\r\n * @internal\r\n */\r\nexport function usePropertyFilterBuilderState(initialFilter?: PropertyFilter) {\r\n const [state, setState] = React.useState<PropertyFilterBuilderState>(\r\n () => initialFilter ? convertFilterToState(initialFilter) : { rootGroup: createEmptyRuleGroup() }\r\n );\r\n const [actions] = React.useState(() => new PropertyFilterBuilderActions(setState));\r\n\r\n return { state, actions };\r\n}\r\n\r\n/** @internal */\r\nexport function buildPropertyFilter(groupItem: PropertyFilterBuilderRuleGroupItem): PropertyFilter | undefined {\r\n if (isPropertyFilterBuilderRuleGroup(groupItem))\r\n return buildPropertyFilterFromRuleGroup(groupItem);\r\n return buildPropertyFilterFromRule(groupItem);\r\n}\r\n\r\nfunction buildPropertyFilterFromRuleGroup(rootGroup: PropertyFilterBuilderRuleGroup): PropertyFilter | undefined {\r\n if (rootGroup.items.length === 0)\r\n return undefined;\r\n\r\n const rules = new Array<PropertyFilter>();\r\n for (const item of rootGroup.items) {\r\n const rule = buildPropertyFilter(item);\r\n if (!rule)\r\n return undefined;\r\n rules.push(rule);\r\n }\r\n\r\n if (rules.length === 1)\r\n return rules[0];\r\n\r\n return {\r\n operator: rootGroup.operator,\r\n rules,\r\n };\r\n}\r\n\r\nfunction buildPropertyFilterFromRule(rule: PropertyFilterBuilderRule): PropertyFilter | undefined {\r\n const { property, operator, value } = rule;\r\n if (!property || operator === undefined)\r\n return undefined;\r\n\r\n if (!isUnaryPropertyFilterOperator(operator) && (value === undefined || value.valueFormat !== PropertyValueFormat.Primitive || value.value === undefined))\r\n return undefined;\r\n\r\n return { property, operator, value };\r\n}\r\n\r\nfunction createEmptyRule(groupId: string): PropertyFilterBuilderRule {\r\n return {\r\n id: Guid.createValue(),\r\n groupId,\r\n };\r\n}\r\n\r\nfunction createEmptyRuleGroup(groupId?: string): PropertyFilterBuilderRuleGroup {\r\n const id = Guid.createValue();\r\n return {\r\n id,\r\n groupId,\r\n operator: PropertyFilterRuleGroupOperator.And,\r\n items: [createEmptyRule(id)],\r\n };\r\n}\r\n\r\nfunction findRuleGroup(rootGroup: PropertyFilterBuilderRuleGroup, path: string[]): PropertyFilterBuilderRuleGroup | undefined {\r\n if (path.length === 0)\r\n return rootGroup;\r\n\r\n const [currentItemId, ...rest] = path;\r\n const currentItem = rootGroup.items.find((item) => item.id === currentItemId);\r\n if (!currentItem || !isPropertyFilterBuilderRuleGroup(currentItem))\r\n return undefined;\r\n\r\n return findRuleGroup(currentItem, rest);\r\n}\r\n\r\nfunction findRule(rootGroup: PropertyFilterBuilderRuleGroup, path: string[]): PropertyFilterBuilderRule | undefined {\r\n if (path.length === 0)\r\n return undefined;\r\n\r\n const [currentItemId, ...rest] = path;\r\n const currentItem = rootGroup.items.find((item) => item.id === currentItemId);\r\n if (!currentItem)\r\n return undefined;\r\n\r\n if (isPropertyFilterBuilderRuleGroup(currentItem))\r\n return findRule(currentItem, rest);\r\n\r\n return currentItem;\r\n}\r\n\r\nfunction getRuleGroupItem(filter: PropertyFilter, parentId: string): PropertyFilterBuilderRuleGroupItem {\r\n const id = Guid.createValue();\r\n if (isPropertyFilterRuleGroup(filter))\r\n return {\r\n id,\r\n groupId: parentId,\r\n operator: filter.operator,\r\n items: filter.rules.map((rule) => getRuleGroupItem(rule, id)),\r\n };\r\n return getRuleItem(filter, id);\r\n}\r\n\r\nfunction getRuleItem(filter: PropertyFilterRule, parentId: string) {\r\n return {\r\n id: Guid.createValue(),\r\n groupId: parentId,\r\n property: filter.property,\r\n operator: filter.operator,\r\n value: filter.value,\r\n };\r\n}\r\n\r\nfunction convertFilterToState(filter: PropertyFilter): PropertyFilterBuilderState {\r\n const id = Guid.createValue();\r\n if (isPropertyFilterRuleGroup(filter)) {\r\n return {\r\n rootGroup: {\r\n id,\r\n operator: filter.operator,\r\n items: filter.rules.map((rule) => getRuleGroupItem(rule, id)),\r\n },\r\n };\r\n }\r\n return {\r\n rootGroup: {\r\n id,\r\n operator: PropertyFilterRuleGroupOperator.And,\r\n items: [getRuleItem(filter, id)],\r\n },\r\n };\r\n}\r\n"]}
@@ -1,10 +1,19 @@
1
+ /** @packageDocumentation
2
+ * @module PropertyFilterBuilder
3
+ */
1
4
  import { PropertyDescription } from "@itwin/appui-abstract";
2
- /** @alpha */
5
+ /**
6
+ * Logical operator for joining rules.
7
+ * @beta
8
+ */
3
9
  export declare enum PropertyFilterRuleGroupOperator {
4
10
  And = 0,
5
11
  Or = 1
6
12
  }
7
- /** @alpha */
13
+ /**
14
+ * Operators for comparing property value in rule.
15
+ * @beta
16
+ */
8
17
  export declare enum PropertyFilterRuleOperator {
9
18
  IsTrue = 0,
10
19
  IsFalse = 1,
@@ -18,10 +27,19 @@ export declare enum PropertyFilterRuleOperator {
18
27
  IsNull = 9,
19
28
  IsNotNull = 10
20
29
  }
21
- /** @alpha */
30
+ /**
31
+ * Function that returns set of available operator based on property type.
32
+ * @beta
33
+ */
22
34
  export declare function getPropertyFilterOperators(property: PropertyDescription): PropertyFilterRuleOperator[];
23
- /** @alpha */
35
+ /**
36
+ * Function that returns display label for rule operator.
37
+ * @beta
38
+ */
24
39
  export declare function getPropertyFilterOperatorLabel(operator: PropertyFilterRuleOperator): string;
25
- /** @alpha */
40
+ /**
41
+ * Function that checks if supplied operator is unary.
42
+ * @beta
43
+ */
26
44
  export declare function isUnaryPropertyFilterOperator(operator: PropertyFilterRuleOperator): boolean;
27
45
  //# sourceMappingURL=Operators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Operators.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/Operators.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAqB,MAAM,uBAAuB,CAAC;AAG/E,aAAa;AACb,oBAAY,+BAA+B;IACzC,GAAG,IAAA;IACH,EAAE,IAAA;CACH;AAED,aAAa;AACb,oBAAY,0BAA0B;IACpC,MAAM,IAAA;IACN,OAAO,IAAA;IAEP,OAAO,IAAA;IACP,UAAU,IAAA;IAEV,OAAO,IAAA;IACP,cAAc,IAAA;IACd,IAAI,IAAA;IACJ,WAAW,IAAA;IAEX,IAAI,IAAA;IAEJ,MAAM,IAAA;IACN,SAAS,KAAA;CACV;AAED,aAAa;AACb,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,mBAAmB,gCA2CvE;AAGD,aAAa;AACb,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,0BAA0B,UAyBlF;AAED,aAAa;AACb,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,0BAA0B,WASjF"}
1
+ {"version":3,"file":"Operators.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/Operators.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAqB,MAAM,uBAAuB,CAAC;AAG/E;;;GAGG;AACH,oBAAY,+BAA+B;IACzC,GAAG,IAAA;IACH,EAAE,IAAA;CACH;AAED;;;GAGG;AACH,oBAAY,0BAA0B;IACpC,MAAM,IAAA;IACN,OAAO,IAAA;IAEP,OAAO,IAAA;IACP,UAAU,IAAA;IAEV,OAAO,IAAA;IACP,cAAc,IAAA;IACd,IAAI,IAAA;IACJ,WAAW,IAAA;IAEX,IAAI,IAAA;IAEJ,MAAM,IAAA;IACN,SAAS,KAAA;CACV;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,mBAAmB,gCA2CvE;AAGD;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,0BAA0B,UAyBlF;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,0BAA0B,WASjF"}