@itwin/components-react 4.8.3 → 4.9.0

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 (353) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/lib/cjs/components-react/UiComponents.d.ts.map +1 -1
  3. package/lib/cjs/components-react/UiComponents.js +1 -0
  4. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  5. package/lib/cjs/components-react/common/DelayedSpinner.d.ts +2 -2
  6. package/lib/cjs/components-react/common/DelayedSpinner.d.ts.map +1 -1
  7. package/lib/cjs/components-react/common/HighlightedText.d.ts +2 -2
  8. package/lib/cjs/components-react/common/HighlightedText.d.ts.map +1 -1
  9. package/lib/cjs/components-react/common/ImageRenderer.d.ts.map +1 -1
  10. package/lib/cjs/components-react/common/ImageRenderer.js +1 -0
  11. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  12. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  13. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js +1 -0
  14. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  15. package/lib/cjs/components-react/datepicker/DateField.d.ts +2 -2
  16. package/lib/cjs/components-react/datepicker/DateField.d.ts.map +1 -1
  17. package/lib/cjs/components-react/datepicker/DatePicker.d.ts +2 -2
  18. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  19. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  20. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  21. package/lib/cjs/components-react/datepicker/TimeField.d.ts +2 -2
  22. package/lib/cjs/components-react/datepicker/TimeField.d.ts.map +1 -1
  23. package/lib/cjs/components-react/editors/BooleanEditor.d.ts +1 -1
  24. package/lib/cjs/components-react/editors/EditorContainer.d.ts +1 -1
  25. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.d.ts +1 -1
  26. package/lib/cjs/components-react/editors/EnumEditor.d.ts +1 -1
  27. package/lib/cjs/components-react/editors/IconEditor.d.ts +1 -1
  28. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts +1 -1
  29. package/lib/cjs/components-react/editors/PopupButton.d.ts +2 -2
  30. package/lib/cjs/components-react/editors/PopupButton.d.ts.map +1 -1
  31. package/lib/cjs/components-react/editors/ToggleEditor.d.ts +1 -1
  32. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts +2 -2
  33. package/lib/cjs/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  34. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +7 -3
  35. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  36. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +3 -7
  37. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  38. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +0 -36
  39. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  40. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +1 -73
  41. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  42. package/lib/cjs/components-react/filter-builder/FilterBuilderLogicalOperator.d.ts +24 -0
  43. package/lib/cjs/components-react/filter-builder/FilterBuilderLogicalOperator.d.ts.map +1 -0
  44. package/lib/cjs/components-react/filter-builder/FilterBuilderLogicalOperator.js +30 -0
  45. package/lib/cjs/components-react/filter-builder/FilterBuilderLogicalOperator.js.map +1 -0
  46. package/lib/cjs/components-react/filter-builder/FilterBuilderRangeValue.d.ts +31 -0
  47. package/lib/cjs/components-react/filter-builder/FilterBuilderRangeValue.d.ts.map +1 -0
  48. package/lib/cjs/components-react/filter-builder/FilterBuilderRangeValue.js +76 -0
  49. package/lib/cjs/components-react/filter-builder/FilterBuilderRangeValue.js.map +1 -0
  50. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +4 -3
  51. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  52. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +16 -12
  53. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  54. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +38 -29
  55. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +10 -6
  56. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  57. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -40
  58. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  59. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +25 -59
  60. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +11 -6
  61. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  62. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +43 -6
  63. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  64. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +1 -1
  65. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  66. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +1 -1
  67. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  68. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +4 -4
  69. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  70. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +40 -2
  71. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  72. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +10 -11
  73. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  74. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +151 -44
  75. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  76. package/lib/cjs/components-react/filter-builder/FilterBuilderToolbar.d.ts +20 -0
  77. package/lib/cjs/components-react/filter-builder/FilterBuilderToolbar.d.ts.map +1 -0
  78. package/lib/cjs/components-react/filter-builder/FilterBuilderToolbar.js +30 -0
  79. package/lib/cjs/components-react/filter-builder/FilterBuilderToolbar.js.map +1 -0
  80. package/lib/cjs/components-react/filter-builder/Operators.d.ts +24 -19
  81. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  82. package/lib/cjs/components-react/filter-builder/Operators.js +40 -64
  83. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  84. package/lib/cjs/components-react/filter-builder/Types.d.ts +2 -2
  85. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  86. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  87. package/lib/cjs/components-react/filtering/FilteringInput.d.ts +1 -1
  88. package/lib/cjs/components-react/filtering/ResultSelector.d.ts +1 -1
  89. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +1 -1
  90. package/lib/cjs/components-react/properties/LinkHandler.d.ts +1 -1
  91. package/lib/cjs/components-react/properties/LinkHandler.d.ts.map +1 -1
  92. package/lib/cjs/components-react/properties/renderers/ActionButtonList.d.ts +1 -1
  93. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +1 -1
  94. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  95. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.d.ts +1 -1
  96. package/lib/cjs/components-react/properties/renderers/PropertyView.d.ts +1 -1
  97. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +1 -1
  98. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +1 -1
  99. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  100. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +2 -2
  101. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  102. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +2 -2
  103. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  104. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +2 -2
  105. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  106. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +2 -2
  107. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  108. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +1 -1
  109. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +1 -1
  110. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +1 -1
  111. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +1 -1
  112. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  113. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +1 -1
  114. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +1 -1
  115. package/lib/cjs/components-react/propertygrid/component/PropertyList.d.ts +1 -1
  116. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -1
  117. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +5 -2
  118. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  119. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +42 -10
  120. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  121. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +12 -0
  122. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  123. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +22 -1
  124. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  125. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +1 -1
  126. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts +2 -2
  127. package/lib/cjs/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  128. package/lib/cjs/components-react/toolbar/InternalToolbarComponent.d.ts +2 -2
  129. package/lib/cjs/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -1
  130. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts +1 -1
  131. package/lib/cjs/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  132. package/lib/cjs/components-react/toolbar/Items.d.ts +1 -1
  133. package/lib/cjs/components-react/toolbar/Items.d.ts.map +1 -1
  134. package/lib/cjs/components-react/toolbar/Overflow.d.ts +1 -1
  135. package/lib/cjs/components-react/toolbar/Overflow.d.ts.map +1 -1
  136. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts +1 -1
  137. package/lib/cjs/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  138. package/lib/cjs/components-react/toolbar/PopupItem.d.ts +2 -2
  139. package/lib/cjs/components-react/toolbar/PopupItem.d.ts.map +1 -1
  140. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts +2 -2
  141. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  142. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts +2 -2
  143. package/lib/cjs/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  144. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +1 -1
  145. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  146. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  147. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  148. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts +1 -1
  149. package/lib/cjs/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  150. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts +1 -1
  151. package/lib/cjs/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  152. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts +1 -1
  153. package/lib/cjs/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  154. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts +1 -1
  155. package/lib/cjs/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  156. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts +1 -1
  157. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  158. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts +12 -0
  159. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  160. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +22 -1
  161. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  162. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +1 -0
  163. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  164. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -1
  165. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  166. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts +2 -2
  167. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  168. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  169. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  170. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  171. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  172. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +1 -1
  173. package/lib/cjs/components-react.d.ts +3 -0
  174. package/lib/cjs/components-react.d.ts.map +1 -1
  175. package/lib/cjs/components-react.js +3 -0
  176. package/lib/cjs/components-react.js.map +1 -1
  177. package/lib/esm/components-react/UiComponents.d.ts.map +1 -1
  178. package/lib/esm/components-react/UiComponents.js +1 -0
  179. package/lib/esm/components-react/UiComponents.js.map +1 -1
  180. package/lib/esm/components-react/common/DelayedSpinner.d.ts +2 -2
  181. package/lib/esm/components-react/common/DelayedSpinner.d.ts.map +1 -1
  182. package/lib/esm/components-react/common/HighlightedText.d.ts +2 -2
  183. package/lib/esm/components-react/common/HighlightedText.d.ts.map +1 -1
  184. package/lib/esm/components-react/common/ImageRenderer.d.ts.map +1 -1
  185. package/lib/esm/components-react/common/ImageRenderer.js +1 -0
  186. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  187. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.d.ts.map +1 -1
  188. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js +1 -0
  189. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  190. package/lib/esm/components-react/datepicker/DateField.d.ts +2 -2
  191. package/lib/esm/components-react/datepicker/DateField.d.ts.map +1 -1
  192. package/lib/esm/components-react/datepicker/DatePicker.d.ts +2 -2
  193. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  194. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts +1 -1
  195. package/lib/esm/components-react/datepicker/DatePickerPopupButton.d.ts.map +1 -1
  196. package/lib/esm/components-react/datepicker/TimeField.d.ts +2 -2
  197. package/lib/esm/components-react/datepicker/TimeField.d.ts.map +1 -1
  198. package/lib/esm/components-react/editors/BooleanEditor.d.ts +1 -1
  199. package/lib/esm/components-react/editors/EditorContainer.d.ts +1 -1
  200. package/lib/esm/components-react/editors/EnumButtonGroupEditor.d.ts +1 -1
  201. package/lib/esm/components-react/editors/EnumEditor.d.ts +1 -1
  202. package/lib/esm/components-react/editors/IconEditor.d.ts +1 -1
  203. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts +1 -1
  204. package/lib/esm/components-react/editors/PopupButton.d.ts +2 -2
  205. package/lib/esm/components-react/editors/PopupButton.d.ts.map +1 -1
  206. package/lib/esm/components-react/editors/ToggleEditor.d.ts +1 -1
  207. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts +2 -2
  208. package/lib/esm/components-react/favorite/FavoritePropertyList.d.ts.map +1 -1
  209. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +7 -3
  210. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  211. package/lib/esm/components-react/filter-builder/FilterBuilder.js +4 -8
  212. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  213. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +0 -36
  214. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -1
  215. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +0 -71
  216. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  217. package/lib/esm/components-react/filter-builder/FilterBuilderLogicalOperator.d.ts +24 -0
  218. package/lib/esm/components-react/filter-builder/FilterBuilderLogicalOperator.d.ts.map +1 -0
  219. package/lib/esm/components-react/filter-builder/FilterBuilderLogicalOperator.js +23 -0
  220. package/lib/esm/components-react/filter-builder/FilterBuilderLogicalOperator.js.map +1 -0
  221. package/lib/esm/components-react/filter-builder/FilterBuilderRangeValue.d.ts +31 -0
  222. package/lib/esm/components-react/filter-builder/FilterBuilderRangeValue.d.ts.map +1 -0
  223. package/lib/esm/components-react/filter-builder/FilterBuilderRangeValue.js +73 -0
  224. package/lib/esm/components-react/filter-builder/FilterBuilderRangeValue.js.map +1 -0
  225. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +4 -3
  226. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  227. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +20 -16
  228. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  229. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +38 -29
  230. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +10 -6
  231. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  232. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +17 -42
  233. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  234. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +25 -59
  235. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +11 -6
  236. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  237. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +41 -5
  238. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  239. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +1 -1
  240. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  241. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +1 -1
  242. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  243. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +4 -4
  244. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  245. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +39 -1
  246. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  247. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +10 -11
  248. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  249. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +149 -42
  250. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  251. package/lib/esm/components-react/filter-builder/FilterBuilderToolbar.d.ts +20 -0
  252. package/lib/esm/components-react/filter-builder/FilterBuilderToolbar.d.ts.map +1 -0
  253. package/lib/esm/components-react/filter-builder/FilterBuilderToolbar.js +23 -0
  254. package/lib/esm/components-react/filter-builder/FilterBuilderToolbar.js.map +1 -0
  255. package/lib/esm/components-react/filter-builder/Operators.d.ts +24 -19
  256. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  257. package/lib/esm/components-react/filter-builder/Operators.js +37 -61
  258. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  259. package/lib/esm/components-react/filter-builder/Types.d.ts +2 -2
  260. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  261. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  262. package/lib/esm/components-react/filtering/FilteringInput.d.ts +1 -1
  263. package/lib/esm/components-react/filtering/ResultSelector.d.ts +1 -1
  264. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +1 -1
  265. package/lib/esm/components-react/properties/LinkHandler.d.ts +1 -1
  266. package/lib/esm/components-react/properties/LinkHandler.d.ts.map +1 -1
  267. package/lib/esm/components-react/properties/renderers/ActionButtonList.d.ts +1 -1
  268. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.d.ts +1 -1
  269. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.d.ts +1 -1
  270. package/lib/esm/components-react/properties/renderers/PropertyRenderer.d.ts +1 -1
  271. package/lib/esm/components-react/properties/renderers/PropertyView.d.ts +1 -1
  272. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.d.ts +1 -1
  273. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.d.ts +1 -1
  274. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.d.ts +1 -1
  275. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts +2 -2
  276. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.d.ts.map +1 -1
  277. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts +2 -2
  278. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.d.ts.map +1 -1
  279. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts +2 -2
  280. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.d.ts.map +1 -1
  281. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts +2 -2
  282. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.d.ts.map +1 -1
  283. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.d.ts +1 -1
  284. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +1 -1
  285. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.d.ts +1 -1
  286. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts +1 -1
  287. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.d.ts.map +1 -1
  288. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +1 -1
  289. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.d.ts +1 -1
  290. package/lib/esm/components-react/propertygrid/component/PropertyList.d.ts +1 -1
  291. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -1
  292. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +5 -2
  293. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts.map +1 -1
  294. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +21 -9
  295. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  296. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +12 -0
  297. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts.map +1 -1
  298. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +20 -0
  299. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  300. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.d.ts +1 -1
  301. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts +2 -2
  302. package/lib/esm/components-react/selectable-content/SelectableContent.d.ts.map +1 -1
  303. package/lib/esm/components-react/toolbar/InternalToolbarComponent.d.ts +2 -2
  304. package/lib/esm/components-react/toolbar/InternalToolbarComponent.d.ts.map +1 -1
  305. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts +1 -1
  306. package/lib/esm/components-react/toolbar/ItemWrapper.d.ts.map +1 -1
  307. package/lib/esm/components-react/toolbar/Items.d.ts +1 -1
  308. package/lib/esm/components-react/toolbar/Items.d.ts.map +1 -1
  309. package/lib/esm/components-react/toolbar/Overflow.d.ts +1 -1
  310. package/lib/esm/components-react/toolbar/Overflow.d.ts.map +1 -1
  311. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts +1 -1
  312. package/lib/esm/components-react/toolbar/OverflowPanel.d.ts.map +1 -1
  313. package/lib/esm/components-react/toolbar/PopupItem.d.ts +2 -2
  314. package/lib/esm/components-react/toolbar/PopupItem.d.ts.map +1 -1
  315. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts +2 -2
  316. package/lib/esm/components-react/toolbar/PopupItemWithDrag.d.ts.map +1 -1
  317. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts +2 -2
  318. package/lib/esm/components-react/toolbar/PopupItemsPanel.d.ts.map +1 -1
  319. package/lib/esm/components-react/toolbar/Toolbar.d.ts +1 -1
  320. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  321. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +1 -1
  322. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  323. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts +1 -1
  324. package/lib/esm/components-react/toolbar/groupPanel/Column.d.ts.map +1 -1
  325. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts +1 -1
  326. package/lib/esm/components-react/toolbar/groupPanel/Columns.d.ts.map +1 -1
  327. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts +1 -1
  328. package/lib/esm/components-react/toolbar/groupPanel/Panel.d.ts.map +1 -1
  329. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts +1 -1
  330. package/lib/esm/components-react/toolbar/groupPanel/Title.d.ts.map +1 -1
  331. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts +1 -1
  332. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.d.ts.map +1 -1
  333. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts +12 -0
  334. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  335. package/lib/esm/components-react/tree/controlled/TreeHooks.js +21 -1
  336. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  337. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +1 -0
  338. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  339. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -1
  340. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  341. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts +2 -2
  342. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  343. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts +1 -1
  344. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.d.ts.map +1 -1
  345. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts +1 -1
  346. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.d.ts.map +1 -1
  347. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +1 -1
  348. package/lib/esm/components-react.d.ts +3 -0
  349. package/lib/esm/components-react.d.ts.map +1 -1
  350. package/lib/esm/components-react.js +3 -0
  351. package/lib/esm/components-react.js.map +1 -1
  352. package/lib/public/locales/en/UiComponents.json +12 -7
  353. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"ImageRenderer.js","sourceRoot":"","sources":["../../../../src/components-react/common/ImageRenderer.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD;;GAEG;AACH,MAAa,aAAa;IAGhB,WAAW,CAAC,SAAiB;QACnC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,uBAAuB;QACvB,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QAEtB,OAAO,MAAM,CAAC,IAAI,CAChB,KAAK;aACF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CACZ,CAAC;IACJ,CAAC;IAED,8BAA8B;IACtB,YAAY,CAAC,IAAY,EAAE,MAAuB;QACxD,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,6BAAK,GAAG,EAAE,cAAc,MAAM,WAAW,YAAY,EAAE,EAAE,GAAG,EAAC,EAAE,GAAG,CAAC;IAC5E,CAAC;IAEO,KAAK,CAAC,KAAa;QACzB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QAE7D,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACnD,qBAAqB;QACrB,IAAI,SAAS,EAAE;YACb,OAAO,KAAK,CAAC;SACd;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5D,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC5B,CAAC;IAEO,mBAAmB,CAAC,GAAW;QACrC,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpB,OAAO,EAAE,CAAC;SACX;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrC,OAAO,6BAA6B,WAAW,EAAE,CAAC;IACpD,CAAC;IAED,iCAAiC;IACzB,SAAS,CAAC,GAAW;QAC3B,IAAI,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpD,uBAAuB;QACvB,IAAI,SAAS,KAAK,YAAY,EAAE;YAC9B,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;SAChD;QAED,OAAO,CACL;YACE,oBAAC,IAAI,IAAC,QAAQ,EAAE,YAAY,GAAI,CAC5B,CACP,CAAC;IACJ,CAAC;IAED,+BAA+B;IACvB,SAAS,CAAC,GAAW;QAC3B,OAAO,6BAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,GAAG,CAAC;IAClC,CAAC;IAED,sCAAsC;IAC9B,cAAc,CAAC,QAAgB;QACrC,OAAO,oBAAC,WAAW,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAC;IAC7C,CAAC;IAED,sDAAsD;IAC9C,0BAA0B,CAAC,iBAAyB;QAC1D,OAAO,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAC7B,QAAgB;QAEhB,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAClC,OAAO;gBACL,aAAa,EAAE,SAAS;gBACxB,QAAQ;aACT,CAAC;QAEJ,OAAO;YACL,aAAa,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1D,QAAQ,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACtD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,QAAgB;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACxD,OAAO,oBAAC,WAAW,OAAK,QAAQ,GAAI,CAAC;IACvC,CAAC;IAED,yDAAyD;IAClD,MAAM,CAAC,WAAkB;QAC9B,QAAQ,WAAW,CAAC,UAAU,EAAE;YAC9B,KAAK,QAAQ;gBACX,MAAM,KAAK,GAAG,WAAgC,CAAC;gBAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAE1D,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAE5D,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAE5D,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,cAAc,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAEjE,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,iBAAiB,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAEpE;gBACE,MAAM,mBAAmB,GAAU,WAAW,CAAC,UAAU,CAAC,CAAC,gDAAgD;gBAC3G,MAAM,IAAI,OAAO,CACf,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EACjC,6BAA6B,mBAAmB,GAAG,CACpD,CAAC;SACL;IACH,CAAC;;AArIc,uBAAS,GAAwB,IAAI,GAAG,EAAE,CAAC;SAD/C,aAAa","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Common\n */\n\nimport * as React from \"react\";\nimport type { WebFontIconProps } from \"@itwin/core-react\";\nimport { Icon, WebFontIcon } from \"@itwin/core-react\";\nimport { UiComponents } from \"../UiComponents\";\nimport type {\n Image,\n ImageFileFormat,\n LoadedBinaryImage,\n LoadedImage,\n} from \"./IImageLoader\";\nimport { UiError } from \"@itwin/appui-abstract\";\n\n/** A class that renders images from data provided by an image loader\n * @internal\n */\nexport class ImageRenderer {\n private static _svgCache: Map<string, string> = new Map();\n\n private hexToBase64(hexstring: string) {\n const match = hexstring.match(/\\w{2}/g);\n // istanbul ignore next\n if (!match) return \"\";\n\n return window.btoa(\n match\n .map((a) => {\n return String.fromCharCode(parseInt(a, 16));\n })\n .join(\"\")\n );\n }\n\n /** Render raw binary image */\n private renderBinary(data: string, format: ImageFileFormat) {\n // Convert binary to base64\n const dataAsBase64 = this.hexToBase64(data);\n return <img src={`data:image/${format};base64,${dataAsBase64}`} alt=\"\" />;\n }\n\n private isSvg(input: string): boolean {\n const parser = new DOMParser();\n const doc = parser.parseFromString(input, \"application/xml\");\n\n const errorNode = doc.querySelector(\"parsererror\");\n // istanbul ignore if\n if (errorNode) {\n return false;\n }\n\n const rootNode = doc.documentElement.nodeName.toLowerCase();\n return \"svg\" === rootNode;\n }\n\n private convertSvgToDataUri(svg: string) {\n // istanbul ignore if\n if (!this.isSvg(svg)) {\n return \"\";\n }\n\n const svgAsBase64 = window.btoa(svg);\n return `data:image/svg+xml;base64,${svgAsBase64}`;\n }\n\n /** Render svg string into JSX */\n private renderSvg(svg: string) {\n let svgAsDataUri = ImageRenderer._svgCache.get(svg);\n // istanbul ignore else\n if (undefined === svgAsDataUri) {\n svgAsDataUri = this.convertSvgToDataUri(svg.trim());\n ImageRenderer._svgCache.set(svg, svgAsDataUri);\n }\n\n return (\n <div>\n <Icon iconSpec={svgAsDataUri} />\n </div>\n );\n }\n\n /** Render image from an url */\n private renderUrl(url: string) {\n return <img src={url} alt=\"\" />;\n }\n\n /** Render image as core-react icon */\n private renderCoreIcon(iconName: string) {\n return <WebFontIcon iconName={iconName} />;\n }\n\n /** Replaces the escaped instances of \"\\:\" with \":\" */\n private normalizeEscapedIconString(escapedIconString: string) {\n return escapedIconString.replace(/\\\\:/g, \":\");\n }\n\n /**\n * Extract class and name from icon name, if the name follows format \"{className}:{fontName}\".\n * className and fontName can be escaped using \\ if : is needed.\n */\n private extractIconClassAndName(\n iconName: string\n ): Pick<WebFontIconProps, \"iconClassName\" | \"iconName\"> {\n const matches = iconName.match(/(\\\\.|[^:])+/g);\n if (!matches || matches.length !== 2)\n return {\n iconClassName: undefined,\n iconName,\n };\n\n return {\n iconClassName: this.normalizeEscapedIconString(matches[0]),\n iconName: this.normalizeEscapedIconString(matches[1]),\n };\n }\n\n /**\n * Render image as provided webfont icon.\n * Defaults to core-react icon if iconName does not contain className.\n */\n private renderWebfontIcon(iconName: string) {\n const iconInfo = this.extractIconClassAndName(iconName);\n return <WebFontIcon {...iconInfo} />;\n }\n\n /** Render image from data provided by an image loader */\n public render(loadedImage: Image): React.ReactNode {\n switch (loadedImage.sourceType) {\n case \"binary\":\n const image = loadedImage as LoadedBinaryImage;\n return this.renderBinary(image.value, image.fileFormat);\n\n case \"url\":\n return this.renderUrl((loadedImage as LoadedImage).value);\n\n case \"svg\":\n return this.renderSvg((loadedImage as LoadedImage).value);\n\n case \"core-icon\":\n return this.renderCoreIcon((loadedImage as LoadedImage).value);\n\n case \"webfont-icon\":\n return this.renderWebfontIcon((loadedImage as LoadedImage).value);\n\n default:\n const unhandledSourceType: never = loadedImage.sourceType; // Compile time check that all cases are handled\n throw new UiError(\n UiComponents.loggerCategory(this),\n `Can't handle sourceType: \"${unhandledSourceType}\"`\n );\n }\n }\n}\n"]}
1
+ {"version":3,"file":"ImageRenderer.js","sourceRoot":"","sources":["../../../../src/components-react/common/ImageRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Common\n */\n\nimport * as React from \"react\";\nimport type { WebFontIconProps } from \"@itwin/core-react\";\nimport { Icon, WebFontIcon } from \"@itwin/core-react\";\nimport { UiComponents } from \"../UiComponents\";\nimport type {\n Image,\n ImageFileFormat,\n LoadedBinaryImage,\n LoadedImage,\n} from \"./IImageLoader\";\nimport { UiError } from \"@itwin/appui-abstract\";\n\n/** A class that renders images from data provided by an image loader\n * @internal\n */\nexport class ImageRenderer {\n private static _svgCache: Map<string, string> = new Map();\n\n private hexToBase64(hexstring: string) {\n const match = hexstring.match(/\\w{2}/g);\n // istanbul ignore next\n if (!match) return \"\";\n\n return window.btoa(\n match\n .map((a) => {\n return String.fromCharCode(parseInt(a, 16));\n })\n .join(\"\")\n );\n }\n\n /** Render raw binary image */\n private renderBinary(data: string, format: ImageFileFormat) {\n // Convert binary to base64\n const dataAsBase64 = this.hexToBase64(data);\n return <img src={`data:image/${format};base64,${dataAsBase64}`} alt=\"\" />;\n }\n\n private isSvg(input: string): boolean {\n const parser = new DOMParser();\n const doc = parser.parseFromString(input, \"application/xml\");\n\n const errorNode = doc.querySelector(\"parsererror\");\n // istanbul ignore if\n if (errorNode) {\n return false;\n }\n\n const rootNode = doc.documentElement.nodeName.toLowerCase();\n return \"svg\" === rootNode;\n }\n\n private convertSvgToDataUri(svg: string) {\n // istanbul ignore if\n if (!this.isSvg(svg)) {\n return \"\";\n }\n\n const svgAsBase64 = window.btoa(svg);\n return `data:image/svg+xml;base64,${svgAsBase64}`;\n }\n\n /** Render svg string into JSX */\n private renderSvg(svg: string) {\n let svgAsDataUri = ImageRenderer._svgCache.get(svg);\n // istanbul ignore else\n if (undefined === svgAsDataUri) {\n svgAsDataUri = this.convertSvgToDataUri(svg.trim());\n ImageRenderer._svgCache.set(svg, svgAsDataUri);\n }\n\n return (\n <div>\n <Icon iconSpec={svgAsDataUri} />\n </div>\n );\n }\n\n /** Render image from an url */\n private renderUrl(url: string) {\n return <img src={url} alt=\"\" />;\n }\n\n /** Render image as core-react icon */\n private renderCoreIcon(iconName: string) {\n return <WebFontIcon iconName={iconName} />;\n }\n\n /** Replaces the escaped instances of \"\\:\" with \":\" */\n private normalizeEscapedIconString(escapedIconString: string) {\n return escapedIconString.replace(/\\\\:/g, \":\");\n }\n\n /**\n * Extract class and name from icon name, if the name follows format \"{className}:{fontName}\".\n * className and fontName can be escaped using \\ if : is needed.\n */\n private extractIconClassAndName(\n iconName: string\n ): Pick<WebFontIconProps, \"iconClassName\" | \"iconName\"> {\n const matches = iconName.match(/(\\\\.|[^:])+/g);\n if (!matches || matches.length !== 2)\n return {\n iconClassName: undefined,\n iconName,\n };\n\n return {\n iconClassName: this.normalizeEscapedIconString(matches[0]),\n iconName: this.normalizeEscapedIconString(matches[1]),\n };\n }\n\n /**\n * Render image as provided webfont icon.\n * Defaults to core-react icon if iconName does not contain className.\n */\n private renderWebfontIcon(iconName: string) {\n const iconInfo = this.extractIconClassAndName(iconName);\n return <WebFontIcon {...iconInfo} />;\n }\n\n /** Render image from data provided by an image loader */\n public render(loadedImage: Image): React.ReactNode {\n switch (loadedImage.sourceType) {\n case \"binary\":\n const image = loadedImage as LoadedBinaryImage;\n return this.renderBinary(image.value, image.fileFormat);\n\n case \"url\":\n return this.renderUrl((loadedImage as LoadedImage).value);\n\n case \"svg\":\n return this.renderSvg((loadedImage as LoadedImage).value);\n\n case \"core-icon\":\n return this.renderCoreIcon((loadedImage as LoadedImage).value);\n\n case \"webfont-icon\":\n return this.renderWebfontIcon((loadedImage as LoadedImage).value);\n\n default:\n const unhandledSourceType: never = loadedImage.sourceType; // Compile time check that all cases are handled\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiComponents.loggerCategory(this),\n `Can't handle sourceType: \"${unhandledSourceType}\"`\n );\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UseContextWithMandatoryProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,gBAAgB;AAChB,wBAAgB,kCAAkC,CAAC,CAAC,EAClD,WAAW,EAAE,MAAM,GAClB;IACD,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACrD,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC;CAC5C,CAkBA"}
1
+ {"version":3,"file":"UseContextWithMandatoryProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,gBAAgB;AAChB,wBAAgB,kCAAkC,CAAC,CAAC,EAClD,WAAW,EAAE,MAAM,GAClB;IACD,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACrD,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC;CAC5C,CAmBA"}
@@ -13,6 +13,7 @@ export function createContextWithMandatoryProvider(contextName) {
13
13
  const value = React.useContext(context);
14
14
  /* istanbul ignore if */
15
15
  if (value === undefined) {
16
+ // eslint-disable-next-line deprecation/deprecation
16
17
  throw new UiError(UiComponents.loggerCategory(ConsumingComponent), `'${getObjectClassName(ConsumingComponent)}' expects to be wrapped by a '${contextName}' provider.`);
17
18
  }
18
19
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,gBAAgB;AAChB,MAAM,UAAU,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CACpC,kBAA0C;QAE1C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,IAAI,OAAO,CACf,YAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,kBAAkB,CACpB,kBAAkB,CACnB,iCAAiC,WAAW,aAAa,CAC3D,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport { getObjectClassName } from \"@itwin/core-react\";\nimport { UiComponents } from \"../UiComponents\";\nimport React from \"react\";\n\n/** @internal */\nexport function createContextWithMandatoryProvider<T>(\n contextName: string\n): [\n React.ProviderExoticComponent<React.ProviderProps<T>>,\n React.ExoticComponent<React.ConsumerProps<T>>,\n <P>(component: React.ComponentType<P>) => T\n] {\n const context = React.createContext<T>(undefined as any as T);\n function useContextWithoutDefaultValue<P>(\n ConsumingComponent: React.ComponentType<P>\n ) {\n const value = React.useContext(context);\n /* istanbul ignore if */\n if (value === undefined) {\n throw new UiError(\n UiComponents.loggerCategory(ConsumingComponent),\n `'${getObjectClassName(\n ConsumingComponent\n )}' expects to be wrapped by a '${contextName}' provider.`\n );\n }\n return value;\n }\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\n}\n"]}
1
+ {"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,gBAAgB;AAChB,MAAM,UAAU,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CACpC,kBAA0C;QAE1C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,mDAAmD;YACnD,MAAM,IAAI,OAAO,CACf,YAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,kBAAkB,CACpB,kBAAkB,CACnB,iCAAiC,WAAW,aAAa,CAC3D,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { UiError } from \"@itwin/appui-abstract\";\nimport { getObjectClassName } from \"@itwin/core-react\";\nimport { UiComponents } from \"../UiComponents\";\nimport React from \"react\";\n\n/** @internal */\nexport function createContextWithMandatoryProvider<T>(\n contextName: string\n): [\n React.ProviderExoticComponent<React.ProviderProps<T>>,\n React.ExoticComponent<React.ConsumerProps<T>>,\n <P>(component: React.ComponentType<P>) => T\n] {\n const context = React.createContext<T>(undefined as any as T);\n function useContextWithoutDefaultValue<P>(\n ConsumingComponent: React.ComponentType<P>\n ) {\n const value = React.useContext(context);\n /* istanbul ignore if */\n if (value === undefined) {\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiComponents.loggerCategory(ConsumingComponent),\n `'${getObjectClassName(\n ConsumingComponent\n )}' expects to be wrapped by a '${contextName}' provider.`\n );\n }\n return value;\n }\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  /** @packageDocumentation
2
2
  * @module Date
3
3
  */
4
- /// <reference types="react" />
5
4
  import "./DateField.scss";
5
+ import * as React from "react";
6
6
  import type { DateFormatter } from "@itwin/appui-abstract";
7
7
  import { AlternateDateFormats, TimeDisplay } from "@itwin/appui-abstract";
8
8
  import type { CommonProps } from "@itwin/core-react";
@@ -30,5 +30,5 @@ export declare function formatInputDate(inputDate: Date, timeDisplay?: TimeDispl
30
30
  /** Date input component. This component is typically used by the [[DatePickerPopupButton]] to display and edit date and time.
31
31
  * @internal
32
32
  */
33
- export declare function DateField({ initialDate, onDateChange, readOnly, dateFormatter, timeDisplay, style, className, }: DateFieldProps): JSX.Element;
33
+ export declare function DateField({ initialDate, onDateChange, readOnly, dateFormatter, timeDisplay, style, className, }: DateFieldProps): React.JSX.Element;
34
34
  //# sourceMappingURL=DateField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateField.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DateField.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,mDAAmD;IACnD,WAAW,EAAE,IAAI,CAAC;IAClB,yDAAyD;IACzD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC;kHAC8G;IAC9G,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2JAA2J;IAC3J,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,IAAI,EACf,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,CAAC,EAAE,aAAa,EAC/B,mBAAmB,CAAC,EAAE,oBAAoB,GACzC,MAAM,GAAG,SAAS,CAoEpB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,WAAW,EACX,KAAK,EACL,SAAS,GACV,EAAE,cAAc,eAgGhB"}
1
+ {"version":3,"file":"DateField.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DateField.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,mDAAmD;IACnD,WAAW,EAAE,IAAI,CAAC;IAClB,yDAAyD;IACzD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC;kHAC8G;IAC9G,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2JAA2J;IAC3J,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,IAAI,EACf,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,CAAC,EAAE,aAAa,EAC/B,mBAAmB,CAAC,EAAE,oBAAoB,GACzC,MAAM,GAAG,SAAS,CAoEpB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,WAAW,EACX,KAAK,EACL,SAAS,GACV,EAAE,cAAc,qBAgGhB"}
@@ -1,7 +1,7 @@
1
1
  /** @packageDocumentation
2
2
  * @module Date
3
3
  */
4
- /// <reference types="react" />
4
+ import * as React from "react";
5
5
  import "./DatePicker.scss";
6
6
  /**
7
7
  * Props for [[DatePicker]] component.
@@ -18,5 +18,5 @@ export interface DatePickerProps {
18
18
  /** DatePicker component. Show a month selector and a day calendar to select a specific date.
19
19
  * @alpha
20
20
  */
21
- export declare function DatePicker(props: DatePickerProps): JSX.Element;
21
+ export declare function DatePicker(props: DatePickerProps): React.JSX.Element;
22
22
  //# sourceMappingURL=DatePicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DatePicker.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAQH,OAAO,mBAAmB,CAAC;AAY3B;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,QAAQ,EAAE,IAAI,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,eA4ThD"}
1
+ {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DatePicker.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,mBAAmB,CAAC;AAY3B;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,QAAQ,EAAE,IAAI,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,qBA4ThD"}
@@ -26,5 +26,5 @@ export interface DatePickerPopupButtonProps extends CommonProps {
26
26
  /** Component that displays a button used to pick a date and optionally a time.
27
27
  * @alpha
28
28
  * */
29
- export declare function DatePickerPopupButton({ displayEditField, timeDisplay, selected, onDateChange, dateFormatter, buttonToolTip, fieldStyle, fieldClassName, style, }: DatePickerPopupButtonProps): JSX.Element;
29
+ export declare function DatePickerPopupButton({ displayEditField, timeDisplay, selected, onDateChange, dateFormatter, buttonToolTip, fieldStyle, fieldClassName, style, }: DatePickerPopupButtonProps): React.JSX.Element;
30
30
  //# sourceMappingURL=DatePickerPopupButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerPopupButton.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DatePickerPopupButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAAO,8BAA8B,CAAC;AAEtC;YACY;AACZ,MAAM,WAAW,0BAA2B,SAAQ,WAAW;IAC7D,6CAA6C;IAC7C,QAAQ,EAAE,IAAI,CAAC;IACf,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,yCAAyC;IACzC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,uBAAuB;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAClC;AAED;;KAEK;AACL,wBAAgB,qBAAqB,CAAC,EACpC,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,GACN,EAAE,0BAA0B,eAoI5B"}
1
+ {"version":3,"file":"DatePickerPopupButton.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/DatePickerPopupButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAAO,8BAA8B,CAAC;AAEtC;YACY;AACZ,MAAM,WAAW,0BAA2B,SAAQ,WAAW;IAC7D,6CAA6C;IAC7C,QAAQ,EAAE,IAAI,CAAC;IACf,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,yCAAyC;IACzC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,uBAAuB;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAClC;AAED;;KAEK;AACL,wBAAgB,qBAAqB,CAAC,EACpC,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,GACN,EAAE,0BAA0B,qBAoI5B"}
@@ -1,7 +1,7 @@
1
1
  /** @packageDocumentation
2
2
  * @module Date
3
3
  */
4
- /// <reference types="react" />
4
+ import * as React from "react";
5
5
  import type { TimeDisplay } from "@itwin/appui-abstract";
6
6
  import "./TimeField.scss";
7
7
  /** Interface used to hold 24 hour time in
@@ -26,5 +26,5 @@ export interface TimeFieldProps {
26
26
  * change the time.
27
27
  * @internal
28
28
  */
29
- export declare function TimeField({ time, timeDisplay, readOnly, onTimeChange, }: TimeFieldProps): JSX.Element;
29
+ export declare function TimeField({ time, timeDisplay, readOnly, onTimeChange, }: TimeFieldProps): React.JSX.Element;
30
30
  //# sourceMappingURL=TimeField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimeField.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/TimeField.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAwBD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,YAAY,GACb,EAAE,cAAc,eAgVhB"}
1
+ {"version":3,"file":"TimeField.d.ts","sourceRoot":"","sources":["../../../../src/components-react/datepicker/TimeField.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAwBD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,YAAY,GACb,EAAE,cAAc,qBAgVhB"}
@@ -32,7 +32,7 @@ export declare class BooleanEditor extends React.PureComponent<PropertyEditorPro
32
32
  componentDidUpdate(prevProps: PropertyEditorProps): void;
33
33
  private setStateFromProps;
34
34
  /** @internal */
35
- render(): JSX.Element;
35
+ render(): React.JSX.Element;
36
36
  }
37
37
  /** Boolean Property Editor registered for the "bool" and "boolean" type names.
38
38
  * It uses the [[BooleanEditor]] React component.
@@ -88,6 +88,6 @@ export declare class EditorContainer extends React.PureComponent<EditorContainer
88
88
  private _handleEditorCancel;
89
89
  private _commitCancel;
90
90
  /** @internal */
91
- render(): JSX.Element;
91
+ render(): React.JSX.Element;
92
92
  }
93
93
  //# sourceMappingURL=EditorContainer.d.ts.map
@@ -31,7 +31,7 @@ export declare class EnumButtonGroupEditor extends React.Component<PropertyEdito
31
31
  private _handleButtonClick;
32
32
  private getButton;
33
33
  /** @internal */
34
- render(): JSX.Element;
34
+ render(): React.JSX.Element;
35
35
  }
36
36
  /** Enum Property Button Group Editor registered for the "enum" type name and the "enum-buttongroup" editor name.
37
37
  * It uses the [[EnumButtonGroupEditor]] React component.
@@ -35,7 +35,7 @@ export declare class EnumEditor extends React.PureComponent<PropertyEditorProps,
35
35
  componentDidUpdate(prevProps: PropertyEditorProps): void;
36
36
  private setStateFromProps;
37
37
  /** @internal */
38
- render(): JSX.Element;
38
+ render(): React.JSX.Element;
39
39
  }
40
40
  /** Enum Property Button Group Editor registered for the "enum" type name.
41
41
  * It uses the [[EnumEditor]] React component.
@@ -35,7 +35,7 @@ export declare class IconEditor extends React.PureComponent<PropertyEditorProps,
35
35
  componentDidUpdate(prevProps: PropertyEditorProps): void;
36
36
  private setStateFromProps;
37
37
  /** @internal */
38
- render(): JSX.Element;
38
+ render(): React.JSX.Element;
39
39
  }
40
40
  /** Icon Property Editor registered for the "text" and "string" type names and the "icon-picker" editor name.
41
41
  * It uses the [[IconEditor]] React component.
@@ -35,7 +35,7 @@ export declare class ImageCheckBoxEditor extends React.PureComponent<PropertyEdi
35
35
  componentDidUpdate(prevProps: PropertyEditorProps): void;
36
36
  private setStateFromProps;
37
37
  private _handleClick;
38
- render(): JSX.Element;
38
+ render(): React.JSX.Element;
39
39
  }
40
40
  /** ImageCheckBox Property Editor registered for the "bool" and "boolean" type names.
41
41
  * It uses the [[ImageCheckBoxEditor]] React component.
@@ -57,7 +57,7 @@ export declare class PopupButton extends React.PureComponent<PopupButtonProps, P
57
57
  /** Popup content with padding
58
58
  * @alpha
59
59
  */
60
- export declare function PopupContent(props: CommonDivProps): JSX.Element;
60
+ export declare function PopupContent(props: CommonDivProps): React.JSX.Element;
61
61
  /** Properties for [[PopupOkCancelButtons]] component
62
62
  * @alpha
63
63
  */
@@ -68,6 +68,6 @@ export interface OkCancelProps {
68
68
  /** OK/Cancel Buttons
69
69
  * @alpha
70
70
  */
71
- export declare function PopupOkCancelButtons(props: OkCancelProps): JSX.Element;
71
+ export declare function PopupOkCancelButtons(props: OkCancelProps): React.JSX.Element;
72
72
  export {};
73
73
  //# sourceMappingURL=PopupButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PopupButton.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/PopupButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,oBAAoB,CAAC;AAE5B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AASrE;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAEjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wKAAwK;IACxK,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAEpD,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oFAAoF;IACpF,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,gBAAgB;AAChB,UAAU,gBAAgB;IACxB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK,CAAC,aAAa,CAClD,gBAAgB,EAChB,gBAAgB,CACjB;IACC,OAAO,CAAC,UAAU,CAAqC;IAEvD,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAExD;IAEF,gBAAgB;IACA,iBAAiB;IAKjC,OAAO,CAAC,YAAY,CAKlB;IAEK,UAAU;IAIjB,OAAO,CAAC,WAAW,CAOjB;IAEF,OAAO,CAAC,cAAc,CAYpB;IAEF,gBAAgB;IACA,MAAM,IAAI,KAAK,CAAC,SAAS;CA6D1C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,eAEjD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,eA4BxD"}
1
+ {"version":3,"file":"PopupButton.d.ts","sourceRoot":"","sources":["../../../../src/components-react/editors/PopupButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,oBAAoB,CAAC;AAE5B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AASrE;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAEjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wKAAwK;IACxK,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAEpD,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oFAAoF;IACpF,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,gBAAgB;AAChB,UAAU,gBAAgB;IACxB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK,CAAC,aAAa,CAClD,gBAAgB,EAChB,gBAAgB,CACjB;IACC,OAAO,CAAC,UAAU,CAAqC;IAEvD,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAExD;IAEF,gBAAgB;IACA,iBAAiB;IAKjC,OAAO,CAAC,YAAY,CAKlB;IAEK,UAAU;IAIjB,OAAO,CAAC,WAAW,CAOjB;IAEF,OAAO,CAAC,cAAc,CAYpB;IAEF,gBAAgB;IACA,MAAM,IAAI,KAAK,CAAC,SAAS;CA6D1C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,qBAEjD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,qBA4BxD"}
@@ -31,7 +31,7 @@ export declare class ToggleEditor extends React.PureComponent<PropertyEditorProp
31
31
  componentDidUpdate(prevProps: PropertyEditorProps): void;
32
32
  private setStateFromProps;
33
33
  /** @internal */
34
- render(): JSX.Element;
34
+ render(): React.JSX.Element;
35
35
  }
36
36
  /** Toggle Property Editor registered for the "bool" and "boolean" type names and "toggle" editor name.
37
37
  * It uses the [[ToggleEditor]] React component.
@@ -1,7 +1,7 @@
1
1
  /** @packageDocumentation
2
2
  * @module Favorite
3
3
  */
4
- /// <reference types="react" />
4
+ import * as React from "react";
5
5
  import { Orientation } from "@itwin/core-react";
6
6
  import { PropertyValueRendererManager } from "../properties/ValueRendererManager";
7
7
  import type { PropertyData } from "../propertygrid/PropertyDataProvider";
@@ -16,5 +16,5 @@ export interface FavoritePropertyListProps {
16
16
  /** Favorite Property List React component
17
17
  * @alpha
18
18
  */
19
- export declare function FavoritePropertyList(props: FavoritePropertyListProps): JSX.Element | null;
19
+ export declare function FavoritePropertyList(props: FavoritePropertyListProps): React.JSX.Element | null;
20
20
  //# sourceMappingURL=FavoritePropertyList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FavoritePropertyList.d.ts","sourceRoot":"","sources":["../../../../src/components-react/favorite/FavoritePropertyList.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAGH,OAAO,EAAE,WAAW,EAA8B,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAElF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,YAAY,CAAC;IAC3B,4BAA4B,CAAC,EAAE,4BAA4B,CAAC;IAC5D,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,sBAwBpE"}
1
+ {"version":3,"file":"FavoritePropertyList.d.ts","sourceRoot":"","sources":["../../../../src/components-react/favorite/FavoritePropertyList.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAA8B,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAElF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,YAAY,CAAC;IAC3B,4BAA4B,CAAC,EAAE,4BAA4B,CAAC;IAC5D,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,4BAwBpE"}
@@ -19,7 +19,7 @@ export interface PropertyFilterBuilderProps extends Omit<PropertyFilterBuilderRe
19
19
  * Component for building complex filters. It allows to create filter rules or rule groups based on provided list of properties.
20
20
  * @beta
21
21
  */
22
- export declare function PropertyFilterBuilder(props: PropertyFilterBuilderProps): JSX.Element;
22
+ export declare function PropertyFilterBuilder(props: PropertyFilterBuilderProps): React.JSX.Element;
23
23
  /**
24
24
  * Props for [[PropertyFilterBuilderRenderer]] component.
25
25
  * @beta
@@ -39,14 +39,18 @@ export interface PropertyFilterBuilderRendererProps {
39
39
  ruleValueRenderer?: (props: PropertyFilterBuilderRuleValueRendererProps) => React.ReactNode;
40
40
  /** Custom renderer for property selector in rule. */
41
41
  propertyRenderer?: (name: string) => React.ReactNode;
42
- /** Specifies how deep rule groups can be nested. */
42
+ /** Specifies how deep rule groups can be nested.
43
+ * @deprecated in 4.9.0. Nesting is no longer supported moving forward.
44
+ */
43
45
  ruleGroupDepthLimit?: number;
44
46
  /** Specifies whether component is disabled or not. */
45
47
  isDisabled?: boolean;
48
+ /** Controls whether the group operator is toggle-able. */
49
+ isGroupOperatorDisabled?: boolean;
46
50
  }
47
51
  /**
48
52
  * Renderer for [[PropertyFilterBuilder]] component.
49
53
  * @beta
50
54
  */
51
- export declare function PropertyFilterBuilderRenderer(props: PropertyFilterBuilderRendererProps): JSX.Element;
55
+ export declare function PropertyFilterBuilderRenderer(props: PropertyFilterBuilderRendererProps): React.JSX.Element;
52
56
  //# sourceMappingURL=FilterBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilder.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilder.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAYjE,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,0BAA0B,CAAC;AAK5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EACV,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,MAAM,WAAW,0BACf,SAAQ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,WAAW,CAAC,EACvE,6BAA6B;IAC/B,oDAAoD;IACpD,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,eAuBtE;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,kEAAkE;IAClE,SAAS,EAAE,8BAA8B,CAAC;IAC1C,6DAA6D;IAC7D,OAAO,EAAE,4BAA4B,CAAC;IACtC,+DAA+D;IAC/D,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,sEAAsE;IACtE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,sCAAsC,KAC1C,KAAK,CAAC,SAAS,CAAC;IACrB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,2CAA2C,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAID;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,kCAAkC,eAoD1C"}
1
+ {"version":3,"file":"FilterBuilder.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilder.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAUjE,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,0BAA0B,CAAC;AAK5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EACV,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,MAAM,WAAW,0BACf,SAAQ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,WAAW,CAAC,EACvE,6BAA6B;IAC/B,oDAAoD;IACpD,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,qBAuBtE;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,kEAAkE;IAClE,SAAS,EAAE,8BAA8B,CAAC;IAC1C,6DAA6D;IAC7D,OAAO,EAAE,4BAA4B,CAAC;IACtC,+DAA+D;IAC/D,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,sEAAsE;IACtE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,sCAAsC,KAC1C,KAAK,CAAC,SAAS,CAAC;IACrB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,2CAA2C,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAID;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,kCAAkC,qBA6C1C"}
@@ -6,7 +6,7 @@
6
6
  * @module PropertyFilterBuilder
7
7
  */
8
8
  import * as React from "react";
9
- import { ActiveRuleGroupContext, PropertyFilterBuilderContext, PropertyFilterBuilderRuleRenderingContext, useActiveRuleGroupContextProps, } from "./FilterBuilderContext";
9
+ import { PropertyFilterBuilderContext, PropertyFilterBuilderRuleRenderingContext, } from "./FilterBuilderContext";
10
10
  import { PropertyFilterBuilderRuleGroupRenderer } from "./FilterBuilderRuleGroup";
11
11
  import { buildPropertyFilter, usePropertyFilterBuilder, } from "./FilterBuilderState";
12
12
  /**
@@ -33,14 +33,12 @@ const ROOT_GROUP_PATH = [];
33
33
  * @beta
34
34
  */
35
35
  export function PropertyFilterBuilderRenderer(props) {
36
- const { rootGroup, actions, properties, onRulePropertySelected, ruleOperatorRenderer, ruleValueRenderer, ruleGroupDepthLimit, propertyRenderer, isDisabled, } = props;
37
- const rootRef = React.useRef(null);
36
+ const { rootGroup, actions, properties, onRulePropertySelected, ruleOperatorRenderer, ruleValueRenderer, propertyRenderer, isDisabled, isGroupOperatorDisabled, } = props;
38
37
  const contextValue = React.useMemo(() => ({
39
38
  actions,
40
39
  properties,
41
40
  onRulePropertySelected,
42
- ruleGroupDepthLimit,
43
- }), [actions, properties, onRulePropertySelected, ruleGroupDepthLimit]);
41
+ }), [actions, properties, onRulePropertySelected]);
44
42
  const renderingContextValue = React.useMemo(() => ({
45
43
  ruleOperatorRenderer,
46
44
  ruleValueRenderer,
@@ -49,8 +47,6 @@ export function PropertyFilterBuilderRenderer(props) {
49
47
  }), [ruleOperatorRenderer, ruleValueRenderer, propertyRenderer, isDisabled]);
50
48
  return (React.createElement(PropertyFilterBuilderRuleRenderingContext.Provider, { value: renderingContextValue },
51
49
  React.createElement(PropertyFilterBuilderContext.Provider, { value: contextValue },
52
- React.createElement(ActiveRuleGroupContext.Provider, { value: useActiveRuleGroupContextProps(rootRef) },
53
- React.createElement("div", { ref: rootRef, className: "filter-builder" },
54
- React.createElement(PropertyFilterBuilderRuleGroupRenderer, { path: ROOT_GROUP_PATH, group: rootGroup }))))));
50
+ React.createElement(PropertyFilterBuilderRuleGroupRenderer, { path: ROOT_GROUP_PATH, group: rootGroup, isGroupOperatorDisabled: isGroupOperatorDisabled }))));
55
51
  }
56
52
  //# sourceMappingURL=FilterBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilder.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilder.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,yCAAyC,EACzC,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sCAAsC,EAAE,MAAM,0BAA0B,CAAC;AAGlF,OAAO,EACL,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAmB9B;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACrE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IACjD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC;QACtD,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAC1B,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,EACpC,CAAC,SAAS,CAAC,CACZ,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,eAAe,CAAC,MAAM,CAAC,CAAC;QAClD,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAE9B,OAAO,CACL,oBAAC,6BAA6B,OACxB,KAAK,EACT,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC;AA+BD,MAAM,eAAe,GAAa,EAAE,CAAC;AAErC;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAAyC;IAEzC,MAAM,EACJ,SAAS,EACT,OAAO,EACP,UAAU,EACV,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,GACX,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEnD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,CAAC;QACL,OAAO;QACP,UAAU;QACV,sBAAsB;QACtB,mBAAmB;KACpB,CAAC,EACF,CAAC,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,mBAAmB,CAAC,CACnE,CAAC;IACF,MAAM,qBAAqB,GACzB,KAAK,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,CAAC;QACL,oBAAoB;QACpB,iBAAiB;QACjB,gBAAgB;QAChB,UAAU;KACX,CAAC,EACF,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,UAAU,CAAC,CACxE,CAAC;IACJ,OAAO,CACL,oBAAC,yCAAyC,CAAC,QAAQ,IACjD,KAAK,EAAE,qBAAqB;QAE5B,oBAAC,4BAA4B,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY;YACxD,oBAAC,sBAAsB,CAAC,QAAQ,IAC9B,KAAK,EAAE,8BAA8B,CAAC,OAAO,CAAC;gBAE9C,6BAAK,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,gBAAgB;oBAC3C,oBAAC,sCAAsC,IACrC,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,SAAS,GAChB,CACE,CAC0B,CACI,CACW,CACtD,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyFilterBuilder\n */\n\nimport * as React from \"react\";\nimport type { PropertyDescription } from \"@itwin/appui-abstract\";\nimport type {\n PropertyFilterBuilderContextProps,\n PropertyFilterBuilderRuleRenderingContextProps,\n} from \"./FilterBuilderContext\";\nimport {\n ActiveRuleGroupContext,\n PropertyFilterBuilderContext,\n PropertyFilterBuilderRuleRenderingContext,\n useActiveRuleGroupContextProps,\n} from \"./FilterBuilderContext\";\nimport { PropertyFilterBuilderRuleGroupRenderer } from \"./FilterBuilderRuleGroup\";\nimport type { PropertyFilterBuilderRuleOperatorProps } from \"./FilterBuilderRuleOperator\";\nimport type { PropertyFilterBuilderRuleValueRendererProps } from \"./FilterBuilderRuleValue\";\nimport {\n buildPropertyFilter,\n usePropertyFilterBuilder,\n} from \"./FilterBuilderState\";\nimport type { PropertyFilter } from \"./Types\";\nimport type {\n PropertyFilterBuilderActions,\n PropertyFilterBuilderRuleGroup,\n UsePropertyFilterBuilderProps,\n} from \"./FilterBuilderState\";\n\n/**\n * Props for [[PropertyFilterBuilder]] component.\n * @beta\n */\nexport interface PropertyFilterBuilderProps\n extends Omit<PropertyFilterBuilderRendererProps, \"actions\" | \"rootGroup\">,\n UsePropertyFilterBuilderProps {\n /** Callback that is invoked when filter changes. */\n onFilterChanged: (filter?: PropertyFilter) => void;\n}\n\n/**\n * Component for building complex filters. It allows to create filter rules or rule groups based on provided list of properties.\n * @beta\n */\nexport function PropertyFilterBuilder(props: PropertyFilterBuilderProps) {\n const { initialFilter, onFilterChanged } = props;\n const { actions, rootGroup } = usePropertyFilterBuilder({\n initialFilter,\n });\n\n const firstRender = React.useRef(true);\n const filter = React.useMemo(\n () => buildPropertyFilter(rootGroup),\n [rootGroup]\n );\n React.useEffect(() => {\n if (!firstRender.current) onFilterChanged(filter);\n firstRender.current = false;\n }, [filter, onFilterChanged]);\n\n return (\n <PropertyFilterBuilderRenderer\n {...props}\n actions={actions}\n rootGroup={rootGroup}\n />\n );\n}\n\n/**\n * Props for [[PropertyFilterBuilderRenderer]] component.\n * @beta\n */\nexport interface PropertyFilterBuilderRendererProps {\n /** Root group of rules in [[PropertyFilterBuilder]] component. */\n rootGroup: PropertyFilterBuilderRuleGroup;\n /** Actions for modifying [[PropertyFilterBuilder]] state. */\n actions: PropertyFilterBuilderActions;\n /** List of properties available to be used in filter rules. */\n properties: PropertyDescription[];\n /** Callback that is invoked when property is selected in any rule. */\n onRulePropertySelected?: (property: PropertyDescription) => void;\n /** Custom renderer for rule operator selector. */\n ruleOperatorRenderer?: (\n props: PropertyFilterBuilderRuleOperatorProps\n ) => React.ReactNode;\n /** Custom renderer for rule value input. */\n ruleValueRenderer?: (\n props: PropertyFilterBuilderRuleValueRendererProps\n ) => React.ReactNode;\n /** Custom renderer for property selector in rule. */\n propertyRenderer?: (name: string) => React.ReactNode;\n /** Specifies how deep rule groups can be nested. */\n ruleGroupDepthLimit?: number;\n /** Specifies whether component is disabled or not. */\n isDisabled?: boolean;\n}\n\nconst ROOT_GROUP_PATH: string[] = [];\n\n/**\n * Renderer for [[PropertyFilterBuilder]] component.\n * @beta\n */\nexport function PropertyFilterBuilderRenderer(\n props: PropertyFilterBuilderRendererProps\n) {\n const {\n rootGroup,\n actions,\n properties,\n onRulePropertySelected,\n ruleOperatorRenderer,\n ruleValueRenderer,\n ruleGroupDepthLimit,\n propertyRenderer,\n isDisabled,\n } = props;\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const contextValue = React.useMemo<PropertyFilterBuilderContextProps>(\n () => ({\n actions,\n properties,\n onRulePropertySelected,\n ruleGroupDepthLimit,\n }),\n [actions, properties, onRulePropertySelected, ruleGroupDepthLimit]\n );\n const renderingContextValue =\n React.useMemo<PropertyFilterBuilderRuleRenderingContextProps>(\n () => ({\n ruleOperatorRenderer,\n ruleValueRenderer,\n propertyRenderer,\n isDisabled,\n }),\n [ruleOperatorRenderer, ruleValueRenderer, propertyRenderer, isDisabled]\n );\n return (\n <PropertyFilterBuilderRuleRenderingContext.Provider\n value={renderingContextValue}\n >\n <PropertyFilterBuilderContext.Provider value={contextValue}>\n <ActiveRuleGroupContext.Provider\n value={useActiveRuleGroupContextProps(rootRef)}\n >\n <div ref={rootRef} className=\"filter-builder\">\n <PropertyFilterBuilderRuleGroupRenderer\n path={ROOT_GROUP_PATH}\n group={rootGroup}\n />\n </div>\n </ActiveRuleGroupContext.Provider>\n </PropertyFilterBuilderContext.Provider>\n </PropertyFilterBuilderRuleRenderingContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"FilterBuilder.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilder.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EACL,4BAA4B,EAC5B,yCAAyC,GAC1C,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sCAAsC,EAAE,MAAM,0BAA0B,CAAC;AAGlF,OAAO,EACL,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAmB9B;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACrE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IACjD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC;QACtD,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAC1B,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,EACpC,CAAC,SAAS,CAAC,CACZ,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,eAAe,CAAC,MAAM,CAAC,CAAC;QAClD,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAE9B,OAAO,CACL,oBAAC,6BAA6B,OACxB,KAAK,EACT,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC;AAmCD,MAAM,eAAe,GAAa,EAAE,CAAC;AAErC;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAAyC;IAEzC,MAAM,EACJ,SAAS,EACT,OAAO,EACP,UAAU,EACV,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,uBAAuB,GACxB,GAAG,KAAK,CAAC;IAEV,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,CAAC;QACL,OAAO;QACP,UAAU;QACV,sBAAsB;KACvB,CAAC,EACF,CAAC,OAAO,EAAE,UAAU,EAAE,sBAAsB,CAAC,CAC9C,CAAC;IACF,MAAM,qBAAqB,GACzB,KAAK,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,CAAC;QACL,oBAAoB;QACpB,iBAAiB;QACjB,gBAAgB;QAChB,UAAU;KACX,CAAC,EACF,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,UAAU,CAAC,CACxE,CAAC;IACJ,OAAO,CACL,oBAAC,yCAAyC,CAAC,QAAQ,IACjD,KAAK,EAAE,qBAAqB;QAE5B,oBAAC,4BAA4B,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY;YACxD,oBAAC,sCAAsC,IACrC,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,SAAS,EAChB,uBAAuB,EAAE,uBAAuB,GAChD,CACoC,CACW,CACtD,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyFilterBuilder\n */\n\nimport * as React from \"react\";\nimport type { PropertyDescription } from \"@itwin/appui-abstract\";\nimport type {\n PropertyFilterBuilderContextProps,\n PropertyFilterBuilderRuleRenderingContextProps,\n} from \"./FilterBuilderContext\";\nimport {\n PropertyFilterBuilderContext,\n PropertyFilterBuilderRuleRenderingContext,\n} from \"./FilterBuilderContext\";\nimport { PropertyFilterBuilderRuleGroupRenderer } from \"./FilterBuilderRuleGroup\";\nimport type { PropertyFilterBuilderRuleOperatorProps } from \"./FilterBuilderRuleOperator\";\nimport type { PropertyFilterBuilderRuleValueRendererProps } from \"./FilterBuilderRuleValue\";\nimport {\n buildPropertyFilter,\n usePropertyFilterBuilder,\n} from \"./FilterBuilderState\";\nimport type { PropertyFilter } from \"./Types\";\nimport type {\n PropertyFilterBuilderActions,\n PropertyFilterBuilderRuleGroup,\n UsePropertyFilterBuilderProps,\n} from \"./FilterBuilderState\";\n\n/**\n * Props for [[PropertyFilterBuilder]] component.\n * @beta\n */\nexport interface PropertyFilterBuilderProps\n extends Omit<PropertyFilterBuilderRendererProps, \"actions\" | \"rootGroup\">,\n UsePropertyFilterBuilderProps {\n /** Callback that is invoked when filter changes. */\n onFilterChanged: (filter?: PropertyFilter) => void;\n}\n\n/**\n * Component for building complex filters. It allows to create filter rules or rule groups based on provided list of properties.\n * @beta\n */\nexport function PropertyFilterBuilder(props: PropertyFilterBuilderProps) {\n const { initialFilter, onFilterChanged } = props;\n const { actions, rootGroup } = usePropertyFilterBuilder({\n initialFilter,\n });\n\n const firstRender = React.useRef(true);\n const filter = React.useMemo(\n () => buildPropertyFilter(rootGroup),\n [rootGroup]\n );\n React.useEffect(() => {\n if (!firstRender.current) onFilterChanged(filter);\n firstRender.current = false;\n }, [filter, onFilterChanged]);\n\n return (\n <PropertyFilterBuilderRenderer\n {...props}\n actions={actions}\n rootGroup={rootGroup}\n />\n );\n}\n\n/**\n * Props for [[PropertyFilterBuilderRenderer]] component.\n * @beta\n */\nexport interface PropertyFilterBuilderRendererProps {\n /** Root group of rules in [[PropertyFilterBuilder]] component. */\n rootGroup: PropertyFilterBuilderRuleGroup;\n /** Actions for modifying [[PropertyFilterBuilder]] state. */\n actions: PropertyFilterBuilderActions;\n /** List of properties available to be used in filter rules. */\n properties: PropertyDescription[];\n /** Callback that is invoked when property is selected in any rule. */\n onRulePropertySelected?: (property: PropertyDescription) => void;\n /** Custom renderer for rule operator selector. */\n ruleOperatorRenderer?: (\n props: PropertyFilterBuilderRuleOperatorProps\n ) => React.ReactNode;\n /** Custom renderer for rule value input. */\n ruleValueRenderer?: (\n props: PropertyFilterBuilderRuleValueRendererProps\n ) => React.ReactNode;\n /** Custom renderer for property selector in rule. */\n propertyRenderer?: (name: string) => React.ReactNode;\n /** Specifies how deep rule groups can be nested.\n * @deprecated in 4.9.0. Nesting is no longer supported moving forward.\n */\n ruleGroupDepthLimit?: number;\n /** Specifies whether component is disabled or not. */\n isDisabled?: boolean;\n /** Controls whether the group operator is toggle-able. */\n isGroupOperatorDisabled?: boolean;\n}\n\nconst ROOT_GROUP_PATH: string[] = [];\n\n/**\n * Renderer for [[PropertyFilterBuilder]] component.\n * @beta\n */\nexport function PropertyFilterBuilderRenderer(\n props: PropertyFilterBuilderRendererProps\n) {\n const {\n rootGroup,\n actions,\n properties,\n onRulePropertySelected,\n ruleOperatorRenderer,\n ruleValueRenderer,\n propertyRenderer,\n isDisabled,\n isGroupOperatorDisabled,\n } = props;\n\n const contextValue = React.useMemo<PropertyFilterBuilderContextProps>(\n () => ({\n actions,\n properties,\n onRulePropertySelected,\n }),\n [actions, properties, onRulePropertySelected]\n );\n const renderingContextValue =\n React.useMemo<PropertyFilterBuilderRuleRenderingContextProps>(\n () => ({\n ruleOperatorRenderer,\n ruleValueRenderer,\n propertyRenderer,\n isDisabled,\n }),\n [ruleOperatorRenderer, ruleValueRenderer, propertyRenderer, isDisabled]\n );\n return (\n <PropertyFilterBuilderRuleRenderingContext.Provider\n value={renderingContextValue}\n >\n <PropertyFilterBuilderContext.Provider value={contextValue}>\n <PropertyFilterBuilderRuleGroupRenderer\n path={ROOT_GROUP_PATH}\n group={rootGroup}\n isGroupOperatorDisabled={isGroupOperatorDisabled}\n />\n </PropertyFilterBuilderContext.Provider>\n </PropertyFilterBuilderRuleRenderingContext.Provider>\n );\n}\n"]}
@@ -44,40 +44,4 @@ export interface PropertyFilterBuilderRuleRenderingContextProps {
44
44
  * @internal
45
45
  */
46
46
  export declare const PropertyFilterBuilderRuleRenderingContext: React.Context<PropertyFilterBuilderRuleRenderingContextProps>;
47
- /**
48
- * Data structure that describes value of [[ActiveRuleGroupContext]].
49
- * @internal
50
- */
51
- export interface ActiveRuleGroupContextProps {
52
- /** Element of currently focused rule group. */
53
- focusedElement: HTMLElement | undefined;
54
- /** Element of currently hovered rule group. */
55
- hoveredElement: HTMLElement | undefined;
56
- /** Even handler for rule group element 'onFocus' event */
57
- onFocus: React.FocusEventHandler<HTMLElement>;
58
- /** Even handler for rule group element 'onBlur' event */
59
- onBlur: React.FocusEventHandler<HTMLElement>;
60
- /** Even handler for rule group element 'onMouseOver' event */
61
- onMouseOver: React.MouseEventHandler<HTMLElement>;
62
- /** Even handler for rule group element 'onMouseOut' event */
63
- onMouseOut: React.MouseEventHandler<HTMLElement>;
64
- }
65
- /**
66
- * Context for tracking and storing active rule group in [[PropertyFilterBuilder]].
67
- * Group is considered active if it is focused or hovered.
68
- * @internal
69
- */
70
- export declare const ActiveRuleGroupContext: React.Context<ActiveRuleGroupContextProps>;
71
- /**
72
- * Custom hook that created value for [[ActiveRuleGroupContext]].
73
- * @internal
74
- */
75
- export declare function useActiveRuleGroupContextProps(rootElementRef: React.RefObject<HTMLElement>): {
76
- focusedElement: HTMLElement | undefined;
77
- hoveredElement: HTMLElement | undefined;
78
- onFocus: React.FocusEventHandler<HTMLElement>;
79
- onBlur: React.FocusEventHandler<HTMLElement>;
80
- onMouseOver: React.MouseEventHandler<HTMLElement>;
81
- onMouseOut: React.MouseEventHandler<HTMLElement>;
82
- };
83
47
  //# sourceMappingURL=FilterBuilderContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderContext.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderContext.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,0BAA0B,CAAC;AAE5F;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,6DAA6D;IAC7D,OAAO,EAAE,4BAA4B,CAAC;IACtC,oCAAoC;IACpC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,gEAAgE;IAChE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,4BAA4B,kDACsB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,8CAA8C;IAC7D,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,sCAAsC,KAC1C,KAAK,CAAC,SAAS,CAAC;IACrB,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,2CAA2C,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD,uDAAuD;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,yCAAyC,+DACmB,CAAC;AAE1E;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,+CAA+C;IAC/C,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;IACxC,+CAA+C;IAC/C,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;IACxC,0DAA0D;IAC1D,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC9C,yDAAyD;IACzD,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7C,8DAA8D;IAC9D,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAClD,6DAA6D;IAC7D,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,4CACsB,CAAC;AAE1D;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,cAAc,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;;;;;;;EA6D7C"}
1
+ {"version":3,"file":"FilterBuilderContext.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderContext.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,0BAA0B,CAAC;AAE5F;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,6DAA6D;IAC7D,OAAO,EAAE,4BAA4B,CAAC;IACtC,oCAAoC;IACpC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,gEAAgE;IAChE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,4BAA4B,kDACsB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,8CAA8C;IAC7D,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,sCAAsC,KAC1C,KAAK,CAAC,SAAS,CAAC;IACrB,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,2CAA2C,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACrD,uDAAuD;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,yCAAyC,+DACmB,CAAC"}
@@ -16,75 +16,4 @@ export const PropertyFilterBuilderContext = React.createContext(null);
16
16
  * @internal
17
17
  */
18
18
  export const PropertyFilterBuilderRuleRenderingContext = React.createContext({});
19
- /**
20
- * Context for tracking and storing active rule group in [[PropertyFilterBuilder]].
21
- * Group is considered active if it is focused or hovered.
22
- * @internal
23
- */
24
- export const ActiveRuleGroupContext = React.createContext(null);
25
- /**
26
- * Custom hook that created value for [[ActiveRuleGroupContext]].
27
- * @internal
28
- */
29
- export function useActiveRuleGroupContextProps(rootElementRef) {
30
- const [focusedElement, setFocusedElement] = React.useState();
31
- const [hoveredElement, setHoveredElement] = React.useState();
32
- // This is used to prevent handling onFocus, onBlur, onMouseOver, onMouseOut in the same event cycle.
33
- const focusedTimeout = useSetTimeout();
34
- const hoveredTimeout = useSetTimeout();
35
- const onFocus = (e) => {
36
- e.stopPropagation();
37
- const target = e.currentTarget;
38
- focusedTimeout(() => {
39
- setFocusedElement(target);
40
- });
41
- };
42
- const onBlur = (e) => {
43
- e.stopPropagation();
44
- if (focusedElement !== e.currentTarget ||
45
- (rootElementRef.current &&
46
- rootElementRef.current.contains(e.relatedTarget)))
47
- return;
48
- focusedTimeout(() => {
49
- setFocusedElement(undefined);
50
- });
51
- };
52
- const onMouseOver = (e) => {
53
- const target = e.currentTarget;
54
- e.stopPropagation();
55
- hoveredTimeout(() => {
56
- setHoveredElement(target);
57
- });
58
- };
59
- const onMouseOut = (e) => {
60
- e.stopPropagation();
61
- // istanbul ignore if
62
- if (hoveredElement !== e.currentTarget)
63
- return;
64
- hoveredTimeout(() => {
65
- setHoveredElement(undefined);
66
- });
67
- };
68
- return {
69
- focusedElement,
70
- hoveredElement,
71
- onFocus,
72
- onBlur,
73
- onMouseOver,
74
- onMouseOut,
75
- };
76
- }
77
- function useSetTimeout() {
78
- const timeoutRef = React.useRef();
79
- React.useEffect(() => {
80
- // clear pending timeout on unmount
81
- return () => {
82
- window.clearTimeout(timeoutRef.current);
83
- };
84
- }, []);
85
- return (callback) => {
86
- window.clearTimeout(timeoutRef.current);
87
- timeoutRef.current = window.setTimeout(callback);
88
- };
89
- }
90
19
  //# sourceMappingURL=FilterBuilderContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilderContext.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderContext.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyFilterBuilder\n */\n\nimport * as React from \"react\";\nimport type { PropertyDescription } from \"@itwin/appui-abstract\";\nimport type { PropertyFilterBuilderActions } from \"./FilterBuilderState\";\nimport type { PropertyFilterBuilderRuleOperatorProps } from \"./FilterBuilderRuleOperator\";\nimport type { PropertyFilterBuilderRuleValueRendererProps } from \"./FilterBuilderRuleValue\";\n\n/**\n * Data structure that describes [[PropertyFilterBuilderContext]] value.\n * @internal\n */\nexport interface PropertyFilterBuilderContextProps {\n /** Actions for modifying [[PropertyFilterBuilder]] state. */\n actions: PropertyFilterBuilderActions;\n /** List of available properties. */\n properties: PropertyDescription[];\n /** Callback to invoke when property is selected in any rule. */\n onRulePropertySelected?: (property: PropertyDescription) => void;\n /** Specifies how deep rule groups can be nested. */\n ruleGroupDepthLimit?: number;\n}\n\n/**\n * Context used to store data for rules and rule groups rendered inside [[PropertyFilterBuilder]] component.\n * @internal\n */\nexport const PropertyFilterBuilderContext =\n React.createContext<PropertyFilterBuilderContextProps>(null!);\n\n/**\n * Data structure that describes [[PropertyFilterBuilderRuleRenderingContext]] value.\n * @internal\n */\nexport interface PropertyFilterBuilderRuleRenderingContextProps {\n /** Custom renderer for operator selector in rule. */\n ruleOperatorRenderer?: (\n props: PropertyFilterBuilderRuleOperatorProps\n ) => React.ReactNode;\n /** Custom renderer for value input in rule. */\n ruleValueRenderer?: (\n props: PropertyFilterBuilderRuleValueRendererProps\n ) => React.ReactNode;\n /** Custom renderer for property selector in rule. */\n propertyRenderer?: (name: string) => React.ReactNode;\n /** Specifies that properties selection is disabled. */\n isDisabled?: boolean;\n}\n\n/**\n * Context for rendering rules and rule groups inside [[PropertyFilterBuilder]] component.\n * @internal\n */\nexport const PropertyFilterBuilderRuleRenderingContext =\n React.createContext<PropertyFilterBuilderRuleRenderingContextProps>({});\n\n/**\n * Data structure that describes value of [[ActiveRuleGroupContext]].\n * @internal\n */\nexport interface ActiveRuleGroupContextProps {\n /** Element of currently focused rule group. */\n focusedElement: HTMLElement | undefined;\n /** Element of currently hovered rule group. */\n hoveredElement: HTMLElement | undefined;\n /** Even handler for rule group element 'onFocus' event */\n onFocus: React.FocusEventHandler<HTMLElement>;\n /** Even handler for rule group element 'onBlur' event */\n onBlur: React.FocusEventHandler<HTMLElement>;\n /** Even handler for rule group element 'onMouseOver' event */\n onMouseOver: React.MouseEventHandler<HTMLElement>;\n /** Even handler for rule group element 'onMouseOut' event */\n onMouseOut: React.MouseEventHandler<HTMLElement>;\n}\n\n/**\n * Context for tracking and storing active rule group in [[PropertyFilterBuilder]].\n * Group is considered active if it is focused or hovered.\n * @internal\n */\nexport const ActiveRuleGroupContext =\n React.createContext<ActiveRuleGroupContextProps>(null!);\n\n/**\n * Custom hook that created value for [[ActiveRuleGroupContext]].\n * @internal\n */\nexport function useActiveRuleGroupContextProps(\n rootElementRef: React.RefObject<HTMLElement>\n) {\n const [focusedElement, setFocusedElement] = React.useState<\n HTMLElement | undefined\n >();\n const [hoveredElement, setHoveredElement] = React.useState<\n HTMLElement | undefined\n >();\n\n // This is used to prevent handling onFocus, onBlur, onMouseOver, onMouseOut in the same event cycle.\n const focusedTimeout = useSetTimeout();\n const hoveredTimeout = useSetTimeout();\n\n const onFocus: React.FocusEventHandler<HTMLElement> = (e) => {\n e.stopPropagation();\n const target = e.currentTarget;\n focusedTimeout(() => {\n setFocusedElement(target);\n });\n };\n\n const onBlur: React.FocusEventHandler<HTMLElement> = (e) => {\n e.stopPropagation();\n if (\n focusedElement !== e.currentTarget ||\n (rootElementRef.current &&\n rootElementRef.current.contains(e.relatedTarget))\n )\n return;\n\n focusedTimeout(() => {\n setFocusedElement(undefined);\n });\n };\n\n const onMouseOver: React.MouseEventHandler<HTMLElement> = (e) => {\n const target = e.currentTarget;\n e.stopPropagation();\n hoveredTimeout(() => {\n setHoveredElement(target);\n });\n };\n\n const onMouseOut: React.MouseEventHandler<HTMLElement> = (e) => {\n e.stopPropagation();\n // istanbul ignore if\n if (hoveredElement !== e.currentTarget) return;\n\n hoveredTimeout(() => {\n setHoveredElement(undefined);\n });\n };\n\n return {\n focusedElement,\n hoveredElement,\n onFocus,\n onBlur,\n onMouseOver,\n onMouseOut,\n };\n}\n\nfunction useSetTimeout() {\n const timeoutRef = React.useRef<number>();\n\n React.useEffect(() => {\n // clear pending timeout on unmount\n return () => {\n window.clearTimeout(timeoutRef.current);\n };\n }, []);\n\n return (callback: () => void) => {\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = window.setTimeout(callback);\n };\n}\n"]}
1
+ {"version":3,"file":"FilterBuilderContext.js","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderContext.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqB/B;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GACvC,KAAK,CAAC,aAAa,CAAoC,IAAK,CAAC,CAAC;AAqBhE;;;GAGG;AACH,MAAM,CAAC,MAAM,yCAAyC,GACpD,KAAK,CAAC,aAAa,CAAiD,EAAE,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module PropertyFilterBuilder\n */\n\nimport * as React from \"react\";\nimport type { PropertyDescription } from \"@itwin/appui-abstract\";\nimport type { PropertyFilterBuilderActions } from \"./FilterBuilderState\";\nimport type { PropertyFilterBuilderRuleOperatorProps } from \"./FilterBuilderRuleOperator\";\nimport type { PropertyFilterBuilderRuleValueRendererProps } from \"./FilterBuilderRuleValue\";\n\n/**\n * Data structure that describes [[PropertyFilterBuilderContext]] value.\n * @internal\n */\nexport interface PropertyFilterBuilderContextProps {\n /** Actions for modifying [[PropertyFilterBuilder]] state. */\n actions: PropertyFilterBuilderActions;\n /** List of available properties. */\n properties: PropertyDescription[];\n /** Callback to invoke when property is selected in any rule. */\n onRulePropertySelected?: (property: PropertyDescription) => void;\n /** Specifies how deep rule groups can be nested. */\n ruleGroupDepthLimit?: number;\n}\n\n/**\n * Context used to store data for rules and rule groups rendered inside [[PropertyFilterBuilder]] component.\n * @internal\n */\nexport const PropertyFilterBuilderContext =\n React.createContext<PropertyFilterBuilderContextProps>(null!);\n\n/**\n * Data structure that describes [[PropertyFilterBuilderRuleRenderingContext]] value.\n * @internal\n */\nexport interface PropertyFilterBuilderRuleRenderingContextProps {\n /** Custom renderer for operator selector in rule. */\n ruleOperatorRenderer?: (\n props: PropertyFilterBuilderRuleOperatorProps\n ) => React.ReactNode;\n /** Custom renderer for value input in rule. */\n ruleValueRenderer?: (\n props: PropertyFilterBuilderRuleValueRendererProps\n ) => React.ReactNode;\n /** Custom renderer for property selector in rule. */\n propertyRenderer?: (name: string) => React.ReactNode;\n /** Specifies that properties selection is disabled. */\n isDisabled?: boolean;\n}\n\n/**\n * Context for rendering rules and rule groups inside [[PropertyFilterBuilder]] component.\n * @internal\n */\nexport const PropertyFilterBuilderRuleRenderingContext =\n React.createContext<PropertyFilterBuilderRuleRenderingContextProps>({});\n"]}
@@ -0,0 +1,24 @@
1
+ /** @packageDocumentation
2
+ * @module PropertyFilterBuilder
3
+ */
4
+ import React from "react";
5
+ import type { PropertyFilterRuleGroupOperator } from "./Operators";
6
+ /**
7
+ * Props for [[PropertyFilterBuilderLogicalOperator]] component.
8
+ * @beta
9
+ */
10
+ export interface PropertyFilterBuilderLogicalOperatorProps {
11
+ /** Allows toggling of operator by clicking operator text. */
12
+ isDisabled?: boolean;
13
+ /** Operator to combine FilterBuilderRules. Must be either "and" or "or". */
14
+ operator: `${PropertyFilterRuleGroupOperator}`;
15
+ /** Callback that is invoked when operator changes. */
16
+ onOperatorChange: (operator: `${PropertyFilterRuleGroupOperator}`) => void;
17
+ /** Classname to specify CSS styling */
18
+ className?: string;
19
+ }
20
+ /** Component to render the operator inside of the filter builder
21
+ * @beta
22
+ */
23
+ export declare const PropertyFilterBuilderLogicalOperator: (props: PropertyFilterBuilderLogicalOperatorProps) => React.JSX.Element;
24
+ //# sourceMappingURL=FilterBuilderLogicalOperator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterBuilderLogicalOperator.d.ts","sourceRoot":"","sources":["../../../../src/components-react/filter-builder/FilterBuilderLogicalOperator.tsx"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAEnE;;;GAGG;AACH,MAAM,WAAW,yCAAyC;IACxD,6DAA6D;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,QAAQ,EAAE,GAAG,+BAA+B,EAAE,CAAC;IAC/C,sDAAsD;IACtD,gBAAgB,EAAE,CAAC,QAAQ,EAAE,GAAG,+BAA+B,EAAE,KAAK,IAAI,CAAC;IAC3E,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,oCAAoC,UACxC,yCAAyC,sBAyBjD,CAAC"}