@itwin/components-react 3.6.0-dev.8 → 3.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/LICENSE.md +1 -1
  3. package/lib/cjs/components-react/breadcrumb/Breadcrumb.d.ts +5 -5
  4. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js +3 -3
  5. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  6. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.d.ts +2 -2
  7. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js +1 -1
  8. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  9. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.d.ts +3 -3
  10. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js +2 -2
  11. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  12. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +1 -1
  13. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js +1 -1
  14. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  15. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +4 -1
  16. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  17. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +4 -1
  18. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  19. package/lib/cjs/components-react/common/showhide/ShowHideDialog.d.ts +2 -2
  20. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js +1 -1
  21. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  22. package/lib/cjs/components-react/common/showhide/ShowHideItem.d.ts +2 -2
  23. package/lib/cjs/components-react/common/showhide/ShowHideItem.js.map +1 -1
  24. package/lib/cjs/components-react/common/showhide/ShowHideMenu.d.ts +2 -2
  25. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js +1 -1
  26. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  27. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  28. package/lib/cjs/components-react/converters/TypeConverterManager.js +3 -4
  29. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  30. package/lib/cjs/components-react/editors/ThemedEnumEditor.d.ts +3 -3
  31. package/lib/cjs/components-react/editors/ThemedEnumEditor.js +2 -2
  32. package/lib/cjs/components-react/editors/ThemedEnumEditor.js.map +1 -1
  33. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -24
  34. package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  35. package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -83
  36. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  37. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  38. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  39. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +83 -0
  40. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  41. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  42. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  43. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +22 -12
  44. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  45. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +4 -0
  46. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  47. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  48. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +22 -14
  49. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  50. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  51. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  52. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +11 -5
  53. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  54. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  55. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  56. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -5
  57. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  58. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  59. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  60. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +11 -5
  61. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  62. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +52 -8
  63. package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  64. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +102 -12
  65. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  66. package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
  67. package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
  68. package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
  69. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  70. package/lib/cjs/components-react/filter-builder/Types.d.ts +24 -4
  71. package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
  72. package/lib/cjs/components-react/filter-builder/Types.js +11 -1
  73. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  74. package/lib/cjs/components-react/filtering/FilteringInput.js +1 -1
  75. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  76. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +2 -2
  77. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +2 -2
  78. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  79. package/lib/cjs/components-react/properties/LinkHandler.d.ts +2 -2
  80. package/lib/cjs/components-react/properties/LinkHandler.js +1 -1
  81. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  82. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +3 -3
  83. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -1
  84. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  85. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  86. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  87. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +3 -1
  88. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
  89. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +1 -0
  90. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  91. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +5 -10
  92. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  93. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  94. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +3 -3
  95. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +1 -1
  96. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  97. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +11 -0
  98. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +2 -2
  99. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +1 -1
  100. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  101. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  102. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  103. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  104. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +3 -3
  105. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +3 -3
  106. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  107. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  108. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  109. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  110. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +2 -2
  111. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  112. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  113. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  114. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  115. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  116. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  117. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +6 -6
  118. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  119. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  120. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  121. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  122. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  123. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  124. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  125. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  126. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  127. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  128. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  129. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  130. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +3 -3
  131. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  132. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  133. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +1 -1
  134. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  135. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  136. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -1
  137. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  138. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  139. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  140. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  141. package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts +1 -1
  142. package/lib/cjs/components-react/table/SimpleTableDataProvider.js +1 -1
  143. package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +1 -1
  144. package/lib/cjs/components-react/table/TableDataProvider.d.ts +8 -8
  145. package/lib/cjs/components-react/table/TableDataProvider.js +2 -2
  146. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  147. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -16
  148. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js +6 -6
  149. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  150. package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts +1 -1
  151. package/lib/cjs/components-react/table/component/ColumnDragLayer.js +1 -1
  152. package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +1 -1
  153. package/lib/cjs/components-react/table/component/Table.d.ts +9 -9
  154. package/lib/cjs/components-react/table/component/Table.d.ts.map +1 -1
  155. package/lib/cjs/components-react/table/component/Table.js +2 -2
  156. package/lib/cjs/components-react/table/component/Table.js.map +1 -1
  157. package/lib/cjs/components-react/table/component/TableCell.d.ts +6 -6
  158. package/lib/cjs/components-react/table/component/TableCell.js +3 -3
  159. package/lib/cjs/components-react/table/component/TableCell.js.map +1 -1
  160. package/lib/cjs/components-react/table/component/TableColumn.d.ts +1 -1
  161. package/lib/cjs/components-react/table/component/TableColumn.js.map +1 -1
  162. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.d.ts +1 -1
  163. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js +1 -1
  164. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  165. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.d.ts +8 -8
  166. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js +2 -2
  167. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  168. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.d.ts +2 -2
  169. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js +1 -1
  170. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  171. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.d.ts +2 -2
  172. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js +1 -1
  173. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  174. package/lib/cjs/components-react/toolbar/Toolbar.d.ts +1 -1
  175. package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
  176. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  177. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +2 -2
  178. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  179. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  180. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +2 -2
  181. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  182. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  183. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  184. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  185. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  186. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +2 -5
  187. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  188. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  189. package/lib/cjs/components-react.d.ts +4 -6
  190. package/lib/cjs/components-react.d.ts.map +1 -1
  191. package/lib/cjs/components-react.js +4 -6
  192. package/lib/cjs/components-react.js.map +1 -1
  193. package/lib/esm/components-react/breadcrumb/Breadcrumb.d.ts +5 -5
  194. package/lib/esm/components-react/breadcrumb/Breadcrumb.js +3 -3
  195. package/lib/esm/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  196. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.d.ts +2 -2
  197. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js +1 -1
  198. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  199. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.d.ts +3 -3
  200. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js +2 -2
  201. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  202. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +1 -1
  203. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js +1 -1
  204. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  205. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +4 -1
  206. package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
  207. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +4 -1
  208. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  209. package/lib/esm/components-react/common/showhide/ShowHideDialog.d.ts +2 -2
  210. package/lib/esm/components-react/common/showhide/ShowHideDialog.js +1 -1
  211. package/lib/esm/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  212. package/lib/esm/components-react/common/showhide/ShowHideItem.d.ts +2 -2
  213. package/lib/esm/components-react/common/showhide/ShowHideItem.js.map +1 -1
  214. package/lib/esm/components-react/common/showhide/ShowHideMenu.d.ts +2 -2
  215. package/lib/esm/components-react/common/showhide/ShowHideMenu.js +1 -1
  216. package/lib/esm/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  217. package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  218. package/lib/esm/components-react/converters/TypeConverterManager.js +3 -4
  219. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  220. package/lib/esm/components-react/editors/ThemedEnumEditor.d.ts +3 -3
  221. package/lib/esm/components-react/editors/ThemedEnumEditor.js +2 -2
  222. package/lib/esm/components-react/editors/ThemedEnumEditor.js.map +1 -1
  223. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -24
  224. package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
  225. package/lib/esm/components-react/filter-builder/FilterBuilder.js +17 -75
  226. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  227. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
  228. package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
  229. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
  230. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
  231. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
  232. package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
  233. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
  234. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  235. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +4 -0
  236. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
  237. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
  238. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
  239. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  240. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
  241. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
  242. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +7 -1
  243. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  244. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
  245. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
  246. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +7 -1
  247. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  248. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
  249. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
  250. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +7 -1
  251. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  252. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +52 -8
  253. package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
  254. package/lib/esm/components-react/filter-builder/FilterBuilderState.js +96 -7
  255. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  256. package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
  257. package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
  258. package/lib/esm/components-react/filter-builder/Operators.js +23 -5
  259. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  260. package/lib/esm/components-react/filter-builder/Types.d.ts +24 -4
  261. package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
  262. package/lib/esm/components-react/filter-builder/Types.js +11 -1
  263. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  264. package/lib/esm/components-react/filtering/FilteringInput.js +1 -1
  265. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  266. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +2 -2
  267. package/lib/esm/components-react/iconpicker/IconPickerButton.js +2 -2
  268. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  269. package/lib/esm/components-react/properties/LinkHandler.d.ts +2 -2
  270. package/lib/esm/components-react/properties/LinkHandler.js +1 -1
  271. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  272. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +3 -3
  273. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -1
  274. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  275. package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
  276. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  277. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +3 -1
  278. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
  279. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +1 -0
  280. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  281. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +5 -10
  282. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
  283. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  284. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +3 -3
  285. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +1 -1
  286. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  287. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +11 -0
  288. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +2 -2
  289. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +1 -1
  290. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  291. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
  292. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
  293. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  294. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +3 -3
  295. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +3 -3
  296. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  297. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
  298. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
  299. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  300. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +2 -2
  301. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
  302. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  303. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
  304. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
  305. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
  306. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  307. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +6 -6
  308. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  309. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  310. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
  311. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
  312. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  313. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
  314. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
  315. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  316. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
  317. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
  318. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  319. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
  320. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +3 -3
  321. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  322. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
  323. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +1 -1
  324. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  325. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
  326. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -1
  327. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  328. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
  329. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
  330. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  331. package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts +1 -1
  332. package/lib/esm/components-react/table/SimpleTableDataProvider.js +1 -1
  333. package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +1 -1
  334. package/lib/esm/components-react/table/TableDataProvider.d.ts +8 -8
  335. package/lib/esm/components-react/table/TableDataProvider.js +2 -2
  336. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  337. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -16
  338. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js +6 -6
  339. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  340. package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts +1 -1
  341. package/lib/esm/components-react/table/component/ColumnDragLayer.js +1 -1
  342. package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +1 -1
  343. package/lib/esm/components-react/table/component/Table.d.ts +9 -9
  344. package/lib/esm/components-react/table/component/Table.d.ts.map +1 -1
  345. package/lib/esm/components-react/table/component/Table.js +2 -2
  346. package/lib/esm/components-react/table/component/Table.js.map +1 -1
  347. package/lib/esm/components-react/table/component/TableCell.d.ts +6 -6
  348. package/lib/esm/components-react/table/component/TableCell.js +3 -3
  349. package/lib/esm/components-react/table/component/TableCell.js.map +1 -1
  350. package/lib/esm/components-react/table/component/TableColumn.d.ts +1 -1
  351. package/lib/esm/components-react/table/component/TableColumn.js.map +1 -1
  352. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.d.ts +1 -1
  353. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js +1 -1
  354. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  355. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.d.ts +8 -8
  356. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js +2 -2
  357. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  358. package/lib/esm/components-react/table/component/dragdrop/withDragSource.d.ts +2 -2
  359. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js +1 -1
  360. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  361. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.d.ts +2 -2
  362. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js +1 -1
  363. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  364. package/lib/esm/components-react/toolbar/Toolbar.d.ts +1 -1
  365. package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
  366. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  367. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +2 -2
  368. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  369. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  370. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +2 -2
  371. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  372. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  373. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
  374. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  375. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  376. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +2 -5
  377. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
  378. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  379. package/lib/esm/components-react.d.ts +4 -6
  380. package/lib/esm/components-react.d.ts.map +1 -1
  381. package/lib/esm/components-react.js +4 -6
  382. package/lib/esm/components-react.js.map +1 -1
  383. package/package.json +23 -13
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedPropertyGrid.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGrid.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport \"./VirtualizedPropertyGrid.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { areEqual, ListChildComponentProps, VariableSizeList } from \"react-window\";\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\r\nimport { Orientation, RatioChangeResult } from \"@itwin/core-react\";\r\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\r\nimport { createContextWithMandatoryProvider } from \"../../common/UseContextWithMandatoryProvider\";\r\nimport { PropertyUpdatedArgs } from \"../../editors/EditorContainer\";\r\nimport { ActionButtonRenderer } from \"../../properties/renderers/ActionButtonRenderer\";\r\nimport { PropertyGridColumnInfo } from \"../../properties/renderers/PropertyGridColumns\";\r\nimport { PropertyValueRendererManager } from \"../../properties/ValueRendererManager\";\r\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\r\nimport { FlatGridItem, GridCategoryItem } from \"../internal/flat-items/FlatGridItem\";\r\nimport { MutableCategorizedPrimitiveProperty } from \"../internal/flat-items/MutableCategorizedPrimitiveProperty\";\r\nimport { MutableCustomGridCategory } from \"../internal/flat-items/MutableCustomGridCategory\";\r\nimport { FlatGridItemType } from \"../internal/flat-items/MutableFlatGridItem\";\r\nimport { MutableGridCategory } from \"../internal/flat-items/MutableGridCategory\";\r\nimport { FlatPropertyRenderer } from \"../internal/flat-properties/FlatPropertyRenderer\";\r\nimport { IPropertyGridEventHandler } from \"../internal/PropertyGridEventHandler\";\r\nimport { IPropertyGridModel } from \"../internal/PropertyGridModel\";\r\nimport { PropertyCategoryRendererManager, PropertyCategoryRendererProps } from \"../PropertyCategoryRendererManager\";\r\nimport { IPropertyDataProvider, PropertyCategory } from \"../PropertyDataProvider\";\r\nimport { ColumnResizingPropertyListPropsSupplier } from \"./ColumnResizingPropertyListPropsSupplier\";\r\nimport { FlatItemNestedBorderWrapper } from \"./FlatItemNestedBorderWrapper\";\r\nimport { PropertyCategoryBlock } from \"./PropertyCategoryBlock\";\r\nimport { CommonPropertyGridProps, PropertyGridCommons } from \"./PropertyGridCommons\";\r\nimport { PropertyGridEventsRelatedPropsSupplier } from \"./PropertyGridEventsRelatedPropsSupplier\";\r\n\r\n/** Properties for [[VirtualizedPropertyGrid]] React component\r\n * @beta\r\n */\r\nexport interface VirtualizedPropertyGridProps extends CommonPropertyGridProps {\r\n model: IPropertyGridModel;\r\n eventHandler: IPropertyGridEventHandler;\r\n dataProvider: IPropertyDataProvider;\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n width: number;\r\n height: number;\r\n}\r\n\r\n/** State of [[VirtualizedPropertyGrid]] React component\r\n * @internal\r\n */\r\ninterface VirtualizedPropertyGridState {\r\n /** List of PropertyGrid categories */\r\n gridItems: FlatGridItem[];\r\n /** Actual orientation used by the property grid */\r\n orientation: Orientation;\r\n /** Keeps record of dynamic node heights */\r\n dynamicNodeHeights: Map<string, number>;\r\n /** When resetting node height cache, marks the point at which heights have become stale */\r\n resetIndex: number;\r\n}\r\n\r\n/**\r\n * Context of [[VirtualizedPropertyGrid]] component.\r\n * @internal\r\n */\r\nexport interface PropertyGridInternalContext {\r\n gridItems: FlatGridItem[];\r\n gridEventHandler: IPropertyGridEventHandler;\r\n gridModel: IPropertyGridModel;\r\n\r\n style?: React.CSSProperties;\r\n className?: string;\r\n gridContext: VirtualizedPropertyGridContext;\r\n onItemHeightChanged: (index: number, key: string, height: number) => void;\r\n}\r\n\r\n/**\r\n * Context of the surrounding [VirtualizedPropertyGrid]($components-react) component.\r\n * @beta\r\n */\r\nexport interface VirtualizedPropertyGridContext {\r\n orientation: Orientation;\r\n gridWidth: number;\r\n\r\n isPropertyHoverEnabled: boolean;\r\n isPropertySelectionEnabled: boolean;\r\n selectedPropertyKey?: string;\r\n\r\n onPropertyClicked?: (property: PropertyRecord, key?: string) => void;\r\n onPropertyRightClicked?: (property: PropertyRecord, key?: string) => void;\r\n onPropertyContextMenu?: (property: PropertyRecord, e: React.MouseEvent) => void;\r\n\r\n editingPropertyKey?: string;\r\n onEditCommit?: (args: PropertyUpdatedArgs, category: PropertyCategory) => void;\r\n onEditCancel?: () => void;\r\n\r\n eventHandler: IPropertyGridEventHandler;\r\n dataProvider: IPropertyDataProvider;\r\n\r\n actionButtonRenderers?: ActionButtonRenderer[];\r\n propertyValueRendererManager?: PropertyValueRendererManager;\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n\r\n columnRatio: number;\r\n columnInfo: PropertyGridColumnInfo;\r\n isResizeHandleBeingDragged: boolean;\r\n isResizeHandleHovered: boolean;\r\n onColumnRatioChanged: (ratio: number) => void | RatioChangeResult;\r\n onResizeHandleDragChanged: (newValue: boolean) => void;\r\n onResizeHandleHoverChanged: (newValue: boolean) => void;\r\n\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n}\r\n\r\nconst [\r\n PropertyGridInternalContextProvider,\r\n _PropertyGridInternalContextConsumer,\r\n usePropertyGridInternalContext,\r\n] = createContextWithMandatoryProvider<PropertyGridInternalContext>(\"PropertyGridInternalContext\");\r\n\r\n/**\r\n * VirtualizedPropertyGrid React component.\r\n * @beta\r\n */\r\nexport class VirtualizedPropertyGrid extends React.Component<VirtualizedPropertyGridProps, VirtualizedPropertyGridState> {\r\n private _listRef = React.createRef<VariableSizeList>();\r\n\r\n /** @internal */\r\n constructor(props: VirtualizedPropertyGridProps) {\r\n super(props);\r\n this.state = {\r\n gridItems: [],\r\n orientation: props.orientation ?? Orientation.Horizontal,\r\n dynamicNodeHeights: new Map(),\r\n resetIndex: 0,\r\n };\r\n }\r\n\r\n /** @internal */\r\n public override componentDidUpdate(prevProps: VirtualizedPropertyGridProps, prevState: VirtualizedPropertyGridState) {\r\n if (this.props.orientation !== prevProps.orientation\r\n || this.props.isOrientationFixed !== prevProps.isOrientationFixed\r\n || this.props.horizontalOrientationMinWidth !== prevProps.horizontalOrientationMinWidth\r\n || this.props.width !== prevProps.width)\r\n this.updateOrientation(this.props.width);\r\n\r\n if (this.props.model !== prevProps.model) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(0);\r\n }\r\n\r\n if (this.props.highlight !== prevProps.highlight && this.props.highlight?.activeHighlight && this.state.gridItems.length !== 0) {\r\n let index = 0;\r\n let foundMatchingItem = false;\r\n for (const item of this.state.gridItems) {\r\n if (item instanceof MutableCategorizedPrimitiveProperty && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.derivedRecord.property.name\r\n || item instanceof MutableGridCategory && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.name) {\r\n foundMatchingItem = true;\r\n break;\r\n }\r\n index++;\r\n }\r\n if (foundMatchingItem) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.scrollToItem(index);\r\n }\r\n }\r\n\r\n if (this.state.dynamicNodeHeights !== prevState.dynamicNodeHeights) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(this.state.resetIndex);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public static getDerivedStateFromProps(props: VirtualizedPropertyGridProps, state: VirtualizedPropertyGridState): VirtualizedPropertyGridState | null {\r\n return {\r\n ...state,\r\n gridItems: props.model.getVisibleFlatGrid(),\r\n };\r\n }\r\n\r\n private updateOrientation(width: number) {\r\n const { orientation, isOrientationFixed, horizontalOrientationMinWidth } = { ...this.props };\r\n const currentOrientation = PropertyGridCommons.getCurrentOrientation(width, orientation, isOrientationFixed, horizontalOrientationMinWidth);\r\n\r\n if (currentOrientation !== this.state.orientation) {\r\n this.setState({ orientation: currentOrientation });\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(0);\r\n }\r\n }\r\n\r\n /**\r\n * Calculate given node height depending on it's type, position in category, parent category depth and current orientation.\r\n * @param node FlatGridItem node for which to calculate height\r\n * @returns current height of node.\r\n */\r\n private calculateNodeHeight(node: FlatGridItem) {\r\n const categoryHeaderHeight = 35;\r\n const categoryHeaderPadding = 4;\r\n const categoryPropertyHeight = 27;\r\n const bottomBorderPadding = 5;\r\n const verticalPrimitivePropertyHeight = 55;\r\n\r\n return getPropertyHeight(this.state) + node.lastInNumberOfCategories * bottomBorderPadding;\r\n\r\n function getPropertyHeight(state: VirtualizedPropertyGridState) {\r\n const dynamicHeight = state.dynamicNodeHeights.get(node.key);\r\n if (dynamicHeight !== undefined) {\r\n if (node instanceof MutableCustomGridCategory) {\r\n return categoryHeaderHeight + categoryHeaderPadding\r\n + (node.isExpanded ? dynamicHeight + bottomBorderPadding : 0);\r\n }\r\n\r\n return dynamicHeight + (state.orientation === Orientation.Vertical ? 28 : 0);\r\n }\r\n\r\n if (node.type === FlatGridItemType.Category) {\r\n return categoryHeaderHeight + categoryHeaderPadding;\r\n }\r\n\r\n if (state.orientation === Orientation.Vertical && node.type === FlatGridItemType.Primitive) {\r\n return verticalPrimitivePropertyHeight;\r\n }\r\n\r\n return categoryPropertyHeight;\r\n }\r\n }\r\n\r\n private _handleNodeHeightChange = (index: number, key: string, newHeight: number) => {\r\n if (this.state.dynamicNodeHeights.get(key) === newHeight) {\r\n return;\r\n }\r\n\r\n this.setState((state) => {\r\n return {\r\n ...state,\r\n dynamicNodeHeights: new Map(state.dynamicNodeHeights).set(key, newHeight),\r\n resetIndex: index,\r\n };\r\n });\r\n };\r\n\r\n private _calculateNodeHeightByIndex = (index: number) => {\r\n const node = this.state.gridItems[index];\r\n return this.calculateNodeHeight(node);\r\n };\r\n\r\n private calculateEstimatedHeight() {\r\n let sum = 0;\r\n for (const node of this.state.gridItems)\r\n sum += this.calculateNodeHeight(node);\r\n\r\n return Math.ceil(sum / this.state.gridItems.length);\r\n }\r\n\r\n private _getNodeKey = (index: number) => {\r\n const node = this.state.gridItems[index];\r\n return node.key;\r\n };\r\n\r\n /** @internal */\r\n public override render() {\r\n return <ColumnResizingPropertyListPropsSupplier\r\n orientation={this.state.orientation}\r\n width={this.props.width}\r\n minLabelWidth={this.props.minLabelWidth}\r\n minValueWidth={this.props.minValueWidth}\r\n actionButtonWidth={this.props.actionButtonWidth}\r\n >\r\n {(columnResizeContext) => (\r\n <PropertyGridEventsRelatedPropsSupplier\r\n isPropertySelectionEnabled={this.props.isPropertySelectionEnabled ?? false}\r\n isPropertySelectionOnRightClickEnabled={this.props.isPropertySelectionOnRightClickEnabled}\r\n isPropertyEditingEnabled={this.props.isPropertyEditingEnabled}\r\n onPropertyContextMenu={this.props.onPropertyContextMenu}\r\n onPropertyUpdated={this.props.onPropertyUpdated}\r\n onPropertySelectionChanged={this.props.onPropertySelectionChanged}\r\n isPropertyHoverEnabled={this.props.isPropertyHoverEnabled ?? false}\r\n >\r\n {(selectionContext) => {\r\n const gridContext: VirtualizedPropertyGridContext = {\r\n orientation: columnResizeContext.orientation,\r\n gridWidth: this.props.width,\r\n\r\n isPropertyHoverEnabled: selectionContext.isPropertyHoverEnabled,\r\n isPropertySelectionEnabled: selectionContext.isPropertySelectionEnabled,\r\n selectedPropertyKey: selectionContext.selectedPropertyKey,\r\n\r\n onPropertyClicked: selectionContext.onPropertyClicked,\r\n onPropertyRightClicked: selectionContext.onPropertyRightClicked,\r\n onPropertyContextMenu: selectionContext.onPropertyContextMenu,\r\n\r\n editingPropertyKey: selectionContext.editingPropertyKey,\r\n onEditCommit: selectionContext.onEditCommit,\r\n onEditCancel: selectionContext.onEditCancel,\r\n\r\n eventHandler: this.props.eventHandler,\r\n dataProvider: this.props.dataProvider,\r\n\r\n actionButtonRenderers: this.props.actionButtonRenderers,\r\n propertyValueRendererManager: this.props.propertyValueRendererManager,\r\n propertyCategoryRendererManager: this.props.propertyCategoryRendererManager,\r\n\r\n columnRatio: columnResizeContext.columnRatio,\r\n columnInfo: columnResizeContext.columnInfo,\r\n isResizeHandleBeingDragged: columnResizeContext.isResizeHandleBeingDragged,\r\n isResizeHandleHovered: columnResizeContext.isResizeHandleHovered,\r\n onColumnRatioChanged: columnResizeContext.onColumnChanged,\r\n onResizeHandleDragChanged: columnResizeContext.onResizeHandleDragChanged,\r\n onResizeHandleHoverChanged: columnResizeContext.onResizeHandleHoverChanged,\r\n\r\n highlight: this.props.highlight,\r\n };\r\n\r\n const renderContext: PropertyGridInternalContext = {\r\n gridItems: this.state.gridItems,\r\n gridEventHandler: this.props.eventHandler,\r\n gridModel: this.props.model,\r\n style: this.props.style,\r\n className: this.props.className,\r\n onItemHeightChanged: this._handleNodeHeightChange,\r\n gridContext,\r\n };\r\n\r\n return (\r\n <PropertyGridInternalContextProvider value={renderContext}>\r\n <div className={classnames(\"components-virtualized-property-grid\", \"components-smallEditor-host\")}>\r\n <VariableSizeList\r\n className={classnames(\"components-property-grid-wrapper\", \"ReactWindow__VariableSizeList\", this.props.className)}\r\n width={this.props.width}\r\n height={this.props.height}\r\n itemCount={this.state.gridItems.length}\r\n itemSize={this._calculateNodeHeightByIndex}\r\n estimatedItemSize={this.calculateEstimatedHeight()}\r\n overscanCount={10}\r\n layout=\"vertical\"\r\n style={this.props.style}\r\n itemKey={this._getNodeKey}\r\n ref={this._listRef}\r\n >\r\n {FlatGridItemNode}\r\n </VariableSizeList>\r\n </div>\r\n </PropertyGridInternalContextProvider>\r\n );\r\n }}\r\n </PropertyGridEventsRelatedPropsSupplier >\r\n )}\r\n </ColumnResizingPropertyListPropsSupplier>;\r\n }\r\n}\r\n\r\nconst FlatGridItemNode = React.memo(\r\n ({ index, style: virtualizedListStyle }: ListChildComponentProps) => {\r\n const { gridItems, gridEventHandler, gridModel, gridContext, className, style, onItemHeightChanged } = usePropertyGridInternalContext(FlatGridItemNode);\r\n const node = gridItems[index];\r\n\r\n const onExpansionToggled = React.useCallback(\r\n () => gridEventHandler.onExpansionToggled(node.selectionKey),\r\n [gridEventHandler, node.selectionKey],\r\n );\r\n const onHeightChanged = React.useCallback(\r\n (newHeight: number) => onItemHeightChanged(index, node.key, newHeight),\r\n [onItemHeightChanged, index, node.key],\r\n );\r\n\r\n function getDisplayNode() {\r\n const lastInNumberOfCategories = node.lastInNumberOfCategories;\r\n switch (node.type) {\r\n case FlatGridItemType.Category:\r\n const categoryRendererManager = gridContext.propertyCategoryRendererManager\r\n ?? PropertyCategoryRendererManager.defaultManager;\r\n const customRenderer = categoryRendererManager.getCategoryComponent(node);\r\n const wrapperClassName = classnames(\r\n \"virtualized-grid-node-content\",\r\n customRenderer !== undefined ? \"virtualized-grid-node-custom-category\" : \"virtualized-grid-node-category\",\r\n );\r\n return (\r\n <FlatItemNestedBorderWrapper\r\n borderCount={node.depth}\r\n bottomBorderCount={lastInNumberOfCategories}\r\n className={wrapperClassName}\r\n >\r\n <PropertyCategoryBlock\r\n className={className}\r\n style={style}\r\n category={node.derivedCategory}\r\n onExpansionToggled={onExpansionToggled}\r\n highlight={gridContext.highlight?.filteredTypes?.includes(FilteredType.Category) ?\r\n gridContext.highlight :\r\n undefined\r\n }\r\n >\r\n {customRenderer !== undefined && (\r\n <CustomCategoryContent\r\n renderer={customRenderer}\r\n categoryItem={node}\r\n gridContext={gridContext}\r\n onHeightChanged={onHeightChanged}\r\n />\r\n )}\r\n </PropertyCategoryBlock>\r\n </FlatItemNestedBorderWrapper>\r\n );\r\n case FlatGridItemType.Array:\r\n case FlatGridItemType.Struct:\r\n case FlatGridItemType.Primitive:\r\n const selectionKey = node.selectionKey;\r\n const parentCategoryItem = gridModel.getItem(node.parentCategorySelectionKey) as GridCategoryItem;\r\n\r\n return (\r\n <FlatItemNestedBorderWrapper\r\n borderCount={parentCategoryItem.depth + 1}\r\n bottomBorderCount={lastInNumberOfCategories}\r\n className=\"virtualized-grid-node-content\"\r\n >\r\n <FlatPropertyRenderer\r\n key={node.key}\r\n uniqueKey={selectionKey}\r\n propertyRecord={node.derivedRecord}\r\n orientation={gridContext.orientation}\r\n indentation={node.depth}\r\n width={gridContext.gridWidth}\r\n\r\n isHoverable={gridContext.isPropertyHoverEnabled}\r\n isSelectable={gridContext.isPropertySelectionEnabled}\r\n isSelected={selectionKey === gridContext.selectedPropertyKey}\r\n\r\n onClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyClicked : undefined}\r\n onRightClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyRightClicked : undefined}\r\n onContextMenu={gridContext.onPropertyContextMenu}\r\n\r\n category={parentCategoryItem.derivedCategory}\r\n isEditing={selectionKey === gridContext.editingPropertyKey}\r\n onEditCommit={gridContext.onEditCommit}\r\n onEditCancel={gridContext.onEditCancel}\r\n\r\n isExpanded={node.isExpanded}\r\n onExpansionToggled={onExpansionToggled}\r\n onHeightChanged={onHeightChanged}\r\n\r\n actionButtonRenderers={gridContext.actionButtonRenderers}\r\n propertyValueRendererManager={gridContext.propertyValueRendererManager}\r\n\r\n columnRatio={gridContext.columnRatio}\r\n columnInfo={gridContext.columnInfo}\r\n isResizeHandleBeingDragged={gridContext.isResizeHandleBeingDragged}\r\n isResizeHandleHovered={gridContext.isResizeHandleHovered}\r\n onColumnRatioChanged={gridContext.onColumnRatioChanged}\r\n onResizeHandleDragChanged={gridContext.onResizeHandleDragChanged}\r\n onResizeHandleHoverChanged={gridContext.onResizeHandleHoverChanged}\r\n\r\n highlight={gridContext.highlight ?\r\n { applyOnLabel: (gridContext.highlight.filteredTypes?.includes(FilteredType.Label)) ?? false, applyOnValue: (gridContext.highlight.filteredTypes?.includes(FilteredType.Value)) ?? false, ...gridContext.highlight } :\r\n undefined\r\n }\r\n />\r\n </FlatItemNestedBorderWrapper>\r\n );\r\n }\r\n }\r\n\r\n return (\r\n <div className=\"virtualized-grid-node\" style={virtualizedListStyle}>\r\n {getDisplayNode()}\r\n </div>\r\n );\r\n },\r\n areEqual,\r\n);\r\n\r\nFlatGridItemNode.displayName = \"FlatGridItemNode\";\r\n\r\ninterface CustomCategoryContentProps {\r\n categoryItem: GridCategoryItem;\r\n renderer: React.ComponentType<PropertyCategoryRendererProps>;\r\n gridContext: VirtualizedPropertyGridContext;\r\n onHeightChanged: (newHeight: number) => void;\r\n}\r\n\r\nconst CustomCategoryContent: React.FC<CustomCategoryContentProps> = (props) => {\r\n const { onHeightChanged } = props;\r\n const divRef = React.useRef<HTMLDivElement>(null);\r\n\r\n React.useLayoutEffect(\r\n () => {\r\n assert(divRef.current !== null);\r\n const contentHeight = divRef.current.getBoundingClientRect().height;\r\n onHeightChanged(contentHeight);\r\n },\r\n [props.gridContext.orientation, onHeightChanged],\r\n );\r\n\r\n return (\r\n <div ref={divRef}>\r\n {React.createElement(props.renderer, props)}\r\n </div>\r\n );\r\n};\r\n"]}
1
+ {"version":3,"file":"VirtualizedPropertyGrid.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGrid.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport \"./VirtualizedPropertyGrid.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { areEqual, ListChildComponentProps, VariableSizeList } from \"react-window\";\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\r\nimport { Orientation, RatioChangeResult } from \"@itwin/core-react\";\r\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\r\nimport { createContextWithMandatoryProvider } from \"../../common/UseContextWithMandatoryProvider\";\r\nimport { PropertyUpdatedArgs } from \"../../editors/EditorContainer\";\r\nimport { ActionButtonRenderer } from \"../../properties/renderers/ActionButtonRenderer\";\r\nimport { PropertyGridColumnInfo } from \"../../properties/renderers/PropertyGridColumns\";\r\nimport { PropertyValueRendererManager } from \"../../properties/ValueRendererManager\";\r\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\r\nimport { FlatGridItem, GridCategoryItem } from \"../internal/flat-items/FlatGridItem\";\r\nimport { MutableCategorizedPrimitiveProperty } from \"../internal/flat-items/MutableCategorizedPrimitiveProperty\";\r\nimport { MutableCustomGridCategory } from \"../internal/flat-items/MutableCustomGridCategory\";\r\nimport { FlatGridItemType } from \"../internal/flat-items/MutableFlatGridItem\";\r\nimport { MutableGridCategory } from \"../internal/flat-items/MutableGridCategory\";\r\nimport { FlatPropertyRenderer } from \"../internal/flat-properties/FlatPropertyRenderer\";\r\nimport { IPropertyGridEventHandler } from \"../internal/PropertyGridEventHandler\";\r\nimport { IPropertyGridModel } from \"../internal/PropertyGridModel\";\r\nimport { PropertyCategoryRendererManager, PropertyCategoryRendererProps } from \"../PropertyCategoryRendererManager\";\r\nimport { IPropertyDataProvider, PropertyCategory } from \"../PropertyDataProvider\";\r\nimport { ColumnResizingPropertyListPropsSupplier } from \"./ColumnResizingPropertyListPropsSupplier\";\r\nimport { FlatItemNestedBorderWrapper } from \"./FlatItemNestedBorderWrapper\";\r\nimport { PropertyCategoryBlock } from \"./PropertyCategoryBlock\";\r\nimport { CommonPropertyGridProps, PropertyGridCommons } from \"./PropertyGridCommons\";\r\nimport { PropertyGridEventsRelatedPropsSupplier } from \"./PropertyGridEventsRelatedPropsSupplier\";\r\n\r\n/** Properties for [[VirtualizedPropertyGrid]] React component\r\n * @public\r\n */\r\nexport interface VirtualizedPropertyGridProps extends CommonPropertyGridProps {\r\n model: IPropertyGridModel;\r\n eventHandler: IPropertyGridEventHandler;\r\n dataProvider: IPropertyDataProvider;\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n width: number;\r\n height: number;\r\n}\r\n\r\n/** State of [[VirtualizedPropertyGrid]] React component\r\n * @internal\r\n */\r\ninterface VirtualizedPropertyGridState {\r\n /** List of PropertyGrid categories */\r\n gridItems: FlatGridItem[];\r\n /** Actual orientation used by the property grid */\r\n orientation: Orientation;\r\n /** Keeps record of dynamic node heights */\r\n dynamicNodeHeights: Map<string, number>;\r\n /** When resetting node height cache, marks the point at which heights have become stale */\r\n resetIndex: number;\r\n}\r\n\r\n/**\r\n * Context of [[VirtualizedPropertyGrid]] component.\r\n * @internal\r\n */\r\nexport interface PropertyGridInternalContext {\r\n gridItems: FlatGridItem[];\r\n gridEventHandler: IPropertyGridEventHandler;\r\n gridModel: IPropertyGridModel;\r\n\r\n style?: React.CSSProperties;\r\n className?: string;\r\n gridContext: VirtualizedPropertyGridContext;\r\n onItemHeightChanged: (index: number, key: string, height: number) => void;\r\n}\r\n\r\n/**\r\n * Context of the surrounding [VirtualizedPropertyGrid]($components-react) component.\r\n * @public\r\n */\r\nexport interface VirtualizedPropertyGridContext {\r\n orientation: Orientation;\r\n gridWidth: number;\r\n\r\n isPropertyHoverEnabled: boolean;\r\n isPropertySelectionEnabled: boolean;\r\n selectedPropertyKey?: string;\r\n\r\n onPropertyClicked?: (property: PropertyRecord, key?: string) => void;\r\n onPropertyRightClicked?: (property: PropertyRecord, key?: string) => void;\r\n onPropertyContextMenu?: (property: PropertyRecord, e: React.MouseEvent) => void;\r\n\r\n editingPropertyKey?: string;\r\n onEditCommit?: (args: PropertyUpdatedArgs, category: PropertyCategory) => void;\r\n onEditCancel?: () => void;\r\n\r\n eventHandler: IPropertyGridEventHandler;\r\n dataProvider: IPropertyDataProvider;\r\n\r\n actionButtonRenderers?: ActionButtonRenderer[];\r\n propertyValueRendererManager?: PropertyValueRendererManager;\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n\r\n columnRatio: number;\r\n columnInfo: PropertyGridColumnInfo;\r\n isResizeHandleBeingDragged: boolean;\r\n isResizeHandleHovered: boolean;\r\n onColumnRatioChanged: (ratio: number) => void | RatioChangeResult;\r\n onResizeHandleDragChanged: (newValue: boolean) => void;\r\n onResizeHandleHoverChanged: (newValue: boolean) => void;\r\n\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n}\r\n\r\nconst [\r\n PropertyGridInternalContextProvider,\r\n _PropertyGridInternalContextConsumer,\r\n usePropertyGridInternalContext,\r\n] = createContextWithMandatoryProvider<PropertyGridInternalContext>(\"PropertyGridInternalContext\");\r\n\r\n/**\r\n * VirtualizedPropertyGrid React component.\r\n * @public\r\n */\r\nexport class VirtualizedPropertyGrid extends React.Component<VirtualizedPropertyGridProps, VirtualizedPropertyGridState> {\r\n private _listRef = React.createRef<VariableSizeList>();\r\n\r\n /** @internal */\r\n constructor(props: VirtualizedPropertyGridProps) {\r\n super(props);\r\n this.state = {\r\n gridItems: [],\r\n orientation: props.orientation ?? Orientation.Horizontal,\r\n dynamicNodeHeights: new Map(),\r\n resetIndex: 0,\r\n };\r\n }\r\n\r\n /** @internal */\r\n public override componentDidUpdate(prevProps: VirtualizedPropertyGridProps, prevState: VirtualizedPropertyGridState) {\r\n if (this.props.orientation !== prevProps.orientation\r\n || this.props.isOrientationFixed !== prevProps.isOrientationFixed\r\n || this.props.horizontalOrientationMinWidth !== prevProps.horizontalOrientationMinWidth\r\n || this.props.width !== prevProps.width)\r\n this.updateOrientation(this.props.width);\r\n\r\n if (this.props.model !== prevProps.model) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(0);\r\n }\r\n\r\n if (this.props.highlight !== prevProps.highlight && this.props.highlight?.activeHighlight && this.state.gridItems.length !== 0) {\r\n let index = 0;\r\n let foundMatchingItem = false;\r\n for (const item of this.state.gridItems) {\r\n if (item instanceof MutableCategorizedPrimitiveProperty && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.derivedRecord.property.name\r\n || item instanceof MutableGridCategory && this.props.highlight.activeHighlight.highlightedItemIdentifier === item.name) {\r\n foundMatchingItem = true;\r\n break;\r\n }\r\n index++;\r\n }\r\n if (foundMatchingItem) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.scrollToItem(index);\r\n }\r\n }\r\n\r\n if (this.state.dynamicNodeHeights !== prevState.dynamicNodeHeights) {\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(this.state.resetIndex);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public static getDerivedStateFromProps(props: VirtualizedPropertyGridProps, state: VirtualizedPropertyGridState): VirtualizedPropertyGridState | null {\r\n return {\r\n ...state,\r\n gridItems: props.model.getVisibleFlatGrid(),\r\n };\r\n }\r\n\r\n private updateOrientation(width: number) {\r\n const { orientation, isOrientationFixed, horizontalOrientationMinWidth } = { ...this.props };\r\n const currentOrientation = PropertyGridCommons.getCurrentOrientation(width, orientation, isOrientationFixed, horizontalOrientationMinWidth);\r\n\r\n if (currentOrientation !== this.state.orientation) {\r\n this.setState({ orientation: currentOrientation });\r\n // istanbul ignore else\r\n if (this._listRef.current)\r\n this._listRef.current.resetAfterIndex(0);\r\n }\r\n }\r\n\r\n /**\r\n * Calculate given node height depending on it's type, position in category, parent category depth and current orientation.\r\n * @param node FlatGridItem node for which to calculate height\r\n * @returns current height of node.\r\n */\r\n private calculateNodeHeight(node: FlatGridItem) {\r\n const categoryHeaderHeight = 35;\r\n const categoryHeaderPadding = 4;\r\n const categoryPropertyHeight = 27;\r\n const bottomBorderPadding = 5;\r\n const verticalPrimitivePropertyHeight = 55;\r\n\r\n return getPropertyHeight(this.state) + node.lastInNumberOfCategories * bottomBorderPadding;\r\n\r\n function getPropertyHeight(state: VirtualizedPropertyGridState) {\r\n const dynamicHeight = state.dynamicNodeHeights.get(node.key);\r\n if (dynamicHeight !== undefined) {\r\n if (node instanceof MutableCustomGridCategory) {\r\n return categoryHeaderHeight + categoryHeaderPadding\r\n + (node.isExpanded ? dynamicHeight + bottomBorderPadding : 0);\r\n }\r\n\r\n return dynamicHeight + (state.orientation === Orientation.Vertical ? 28 : 0);\r\n }\r\n\r\n if (node.type === FlatGridItemType.Category) {\r\n return categoryHeaderHeight + categoryHeaderPadding;\r\n }\r\n\r\n if (state.orientation === Orientation.Vertical && node.type === FlatGridItemType.Primitive) {\r\n return verticalPrimitivePropertyHeight;\r\n }\r\n\r\n return categoryPropertyHeight;\r\n }\r\n }\r\n\r\n private _handleNodeHeightChange = (index: number, key: string, newHeight: number) => {\r\n if (this.state.dynamicNodeHeights.get(key) === newHeight) {\r\n return;\r\n }\r\n\r\n this.setState((state) => {\r\n return {\r\n ...state,\r\n dynamicNodeHeights: new Map(state.dynamicNodeHeights).set(key, newHeight),\r\n resetIndex: index,\r\n };\r\n });\r\n };\r\n\r\n private _calculateNodeHeightByIndex = (index: number) => {\r\n const node = this.state.gridItems[index];\r\n return this.calculateNodeHeight(node);\r\n };\r\n\r\n private calculateEstimatedHeight() {\r\n let sum = 0;\r\n for (const node of this.state.gridItems)\r\n sum += this.calculateNodeHeight(node);\r\n\r\n return Math.ceil(sum / this.state.gridItems.length);\r\n }\r\n\r\n private _getNodeKey = (index: number) => {\r\n const node = this.state.gridItems[index];\r\n return node.key;\r\n };\r\n\r\n /** @internal */\r\n public override render() {\r\n return <ColumnResizingPropertyListPropsSupplier\r\n orientation={this.state.orientation}\r\n width={this.props.width}\r\n minLabelWidth={this.props.minLabelWidth}\r\n minValueWidth={this.props.minValueWidth}\r\n actionButtonWidth={this.props.actionButtonWidth}\r\n >\r\n {(columnResizeContext) => (\r\n <PropertyGridEventsRelatedPropsSupplier\r\n isPropertySelectionEnabled={this.props.isPropertySelectionEnabled ?? false}\r\n isPropertySelectionOnRightClickEnabled={this.props.isPropertySelectionOnRightClickEnabled}\r\n isPropertyEditingEnabled={this.props.isPropertyEditingEnabled}\r\n onPropertyContextMenu={this.props.onPropertyContextMenu}\r\n onPropertyUpdated={this.props.onPropertyUpdated}\r\n onPropertySelectionChanged={this.props.onPropertySelectionChanged}\r\n isPropertyHoverEnabled={this.props.isPropertyHoverEnabled ?? false}\r\n >\r\n {(selectionContext) => {\r\n const gridContext: VirtualizedPropertyGridContext = {\r\n orientation: columnResizeContext.orientation,\r\n gridWidth: this.props.width,\r\n\r\n isPropertyHoverEnabled: selectionContext.isPropertyHoverEnabled,\r\n isPropertySelectionEnabled: selectionContext.isPropertySelectionEnabled,\r\n selectedPropertyKey: selectionContext.selectedPropertyKey,\r\n\r\n onPropertyClicked: selectionContext.onPropertyClicked,\r\n onPropertyRightClicked: selectionContext.onPropertyRightClicked,\r\n onPropertyContextMenu: selectionContext.onPropertyContextMenu,\r\n\r\n editingPropertyKey: selectionContext.editingPropertyKey,\r\n onEditCommit: selectionContext.onEditCommit,\r\n onEditCancel: selectionContext.onEditCancel,\r\n\r\n eventHandler: this.props.eventHandler,\r\n dataProvider: this.props.dataProvider,\r\n\r\n actionButtonRenderers: this.props.actionButtonRenderers,\r\n propertyValueRendererManager: this.props.propertyValueRendererManager,\r\n propertyCategoryRendererManager: this.props.propertyCategoryRendererManager,\r\n\r\n columnRatio: columnResizeContext.columnRatio,\r\n columnInfo: columnResizeContext.columnInfo,\r\n isResizeHandleBeingDragged: columnResizeContext.isResizeHandleBeingDragged,\r\n isResizeHandleHovered: columnResizeContext.isResizeHandleHovered,\r\n onColumnRatioChanged: columnResizeContext.onColumnChanged,\r\n onResizeHandleDragChanged: columnResizeContext.onResizeHandleDragChanged,\r\n onResizeHandleHoverChanged: columnResizeContext.onResizeHandleHoverChanged,\r\n\r\n highlight: this.props.highlight,\r\n };\r\n\r\n const renderContext: PropertyGridInternalContext = {\r\n gridItems: this.state.gridItems,\r\n gridEventHandler: this.props.eventHandler,\r\n gridModel: this.props.model,\r\n style: this.props.style,\r\n className: this.props.className,\r\n onItemHeightChanged: this._handleNodeHeightChange,\r\n gridContext,\r\n };\r\n\r\n return (\r\n <PropertyGridInternalContextProvider value={renderContext}>\r\n <div className={classnames(\"components-virtualized-property-grid\", \"components-smallEditor-host\")}>\r\n <VariableSizeList\r\n className={classnames(\"components-property-grid-wrapper\", \"ReactWindow__VariableSizeList\", this.props.className)}\r\n width={this.props.width}\r\n height={this.props.height}\r\n itemCount={this.state.gridItems.length}\r\n itemSize={this._calculateNodeHeightByIndex}\r\n estimatedItemSize={this.calculateEstimatedHeight()}\r\n overscanCount={10}\r\n layout=\"vertical\"\r\n style={this.props.style}\r\n itemKey={this._getNodeKey}\r\n ref={this._listRef}\r\n >\r\n {FlatGridItemNode}\r\n </VariableSizeList>\r\n </div>\r\n </PropertyGridInternalContextProvider>\r\n );\r\n }}\r\n </PropertyGridEventsRelatedPropsSupplier >\r\n )}\r\n </ColumnResizingPropertyListPropsSupplier>;\r\n }\r\n}\r\n\r\nconst FlatGridItemNode = React.memo(\r\n ({ index, style: virtualizedListStyle }: ListChildComponentProps) => {\r\n const { gridItems, gridEventHandler, gridModel, gridContext, className, style, onItemHeightChanged } = usePropertyGridInternalContext(FlatGridItemNode);\r\n const node = gridItems[index];\r\n\r\n const onExpansionToggled = React.useCallback(\r\n () => gridEventHandler.onExpansionToggled(node.selectionKey),\r\n [gridEventHandler, node.selectionKey],\r\n );\r\n const onHeightChanged = React.useCallback(\r\n (newHeight: number) => onItemHeightChanged(index, node.key, newHeight),\r\n [onItemHeightChanged, index, node.key],\r\n );\r\n\r\n function getDisplayNode() {\r\n const lastInNumberOfCategories = node.lastInNumberOfCategories;\r\n switch (node.type) {\r\n case FlatGridItemType.Category:\r\n const categoryRendererManager = gridContext.propertyCategoryRendererManager\r\n ?? PropertyCategoryRendererManager.defaultManager;\r\n const customRenderer = categoryRendererManager.getCategoryComponent(node);\r\n const wrapperClassName = classnames(\r\n \"virtualized-grid-node-content\",\r\n customRenderer !== undefined ? \"virtualized-grid-node-custom-category\" : \"virtualized-grid-node-category\",\r\n );\r\n return (\r\n <FlatItemNestedBorderWrapper\r\n borderCount={node.depth}\r\n bottomBorderCount={lastInNumberOfCategories}\r\n className={wrapperClassName}\r\n >\r\n <PropertyCategoryBlock\r\n className={className}\r\n style={style}\r\n category={node.derivedCategory}\r\n onExpansionToggled={onExpansionToggled}\r\n highlight={gridContext.highlight?.filteredTypes?.includes(FilteredType.Category) ?\r\n gridContext.highlight :\r\n undefined\r\n }\r\n >\r\n {customRenderer !== undefined && (\r\n <CustomCategoryContent\r\n renderer={customRenderer}\r\n categoryItem={node}\r\n gridContext={gridContext}\r\n onHeightChanged={onHeightChanged}\r\n />\r\n )}\r\n </PropertyCategoryBlock>\r\n </FlatItemNestedBorderWrapper>\r\n );\r\n case FlatGridItemType.Array:\r\n case FlatGridItemType.Struct:\r\n case FlatGridItemType.Primitive:\r\n const selectionKey = node.selectionKey;\r\n const parentCategoryItem = gridModel.getItem(node.parentCategorySelectionKey) as GridCategoryItem;\r\n\r\n return (\r\n <FlatItemNestedBorderWrapper\r\n borderCount={parentCategoryItem.depth + 1}\r\n bottomBorderCount={lastInNumberOfCategories}\r\n className=\"virtualized-grid-node-content\"\r\n >\r\n <FlatPropertyRenderer\r\n key={node.key}\r\n uniqueKey={selectionKey}\r\n propertyRecord={node.derivedRecord}\r\n orientation={gridContext.orientation}\r\n indentation={node.depth}\r\n width={gridContext.gridWidth}\r\n\r\n isHoverable={gridContext.isPropertyHoverEnabled}\r\n isSelectable={gridContext.isPropertySelectionEnabled}\r\n isSelected={selectionKey === gridContext.selectedPropertyKey}\r\n\r\n onClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyClicked : undefined}\r\n onRightClick={node.type === FlatGridItemType.Primitive ? gridContext.onPropertyRightClicked : undefined}\r\n onContextMenu={gridContext.onPropertyContextMenu}\r\n\r\n category={parentCategoryItem.derivedCategory}\r\n isEditing={selectionKey === gridContext.editingPropertyKey}\r\n onEditCommit={gridContext.onEditCommit}\r\n onEditCancel={gridContext.onEditCancel}\r\n\r\n isExpanded={node.isExpanded}\r\n onExpansionToggled={onExpansionToggled}\r\n onHeightChanged={onHeightChanged}\r\n\r\n actionButtonRenderers={gridContext.actionButtonRenderers}\r\n propertyValueRendererManager={gridContext.propertyValueRendererManager}\r\n\r\n columnRatio={gridContext.columnRatio}\r\n columnInfo={gridContext.columnInfo}\r\n isResizeHandleBeingDragged={gridContext.isResizeHandleBeingDragged}\r\n isResizeHandleHovered={gridContext.isResizeHandleHovered}\r\n onColumnRatioChanged={gridContext.onColumnRatioChanged}\r\n onResizeHandleDragChanged={gridContext.onResizeHandleDragChanged}\r\n onResizeHandleHoverChanged={gridContext.onResizeHandleHoverChanged}\r\n\r\n highlight={gridContext.highlight ?\r\n { applyOnLabel: (gridContext.highlight.filteredTypes?.includes(FilteredType.Label)) ?? false, applyOnValue: (gridContext.highlight.filteredTypes?.includes(FilteredType.Value)) ?? false, ...gridContext.highlight } :\r\n undefined\r\n }\r\n />\r\n </FlatItemNestedBorderWrapper>\r\n );\r\n }\r\n }\r\n\r\n return (\r\n <div className=\"virtualized-grid-node\" style={virtualizedListStyle}>\r\n {getDisplayNode()}\r\n </div>\r\n );\r\n },\r\n areEqual,\r\n);\r\n\r\nFlatGridItemNode.displayName = \"FlatGridItemNode\";\r\n\r\ninterface CustomCategoryContentProps {\r\n categoryItem: GridCategoryItem;\r\n renderer: React.ComponentType<PropertyCategoryRendererProps>;\r\n gridContext: VirtualizedPropertyGridContext;\r\n onHeightChanged: (newHeight: number) => void;\r\n}\r\n\r\nconst CustomCategoryContent: React.FC<CustomCategoryContentProps> = (props) => {\r\n const { onHeightChanged } = props;\r\n const divRef = React.useRef<HTMLDivElement>(null);\r\n\r\n React.useLayoutEffect(\r\n () => {\r\n assert(divRef.current !== null);\r\n const contentHeight = divRef.current.getBoundingClientRect().height;\r\n onHeightChanged(contentHeight);\r\n },\r\n [props.gridContext.orientation, onHeightChanged],\r\n );\r\n\r\n return (\r\n <div ref={divRef}>\r\n {React.createElement(props.renderer, props)}\r\n </div>\r\n );\r\n};\r\n"]}
@@ -68,6 +68,17 @@
68
68
  background: $buic-row-hover;
69
69
  }
70
70
  }
71
+
72
+ .components--hoverable {
73
+ &:hover {
74
+ // Highlight the whole row of inner-most expandable block
75
+ margin: 0 -4px;
76
+ // Compensate the negative margin by adding padding
77
+ padding: 0 12px;
78
+
79
+ background: $buic-row-hover;
80
+ }
81
+ }
71
82
  }
72
83
 
73
84
  .virtualized-grid-node-category {
@@ -5,7 +5,7 @@ import { PropertyCategoryRendererManager } from "../PropertyCategoryRendererMana
5
5
  import { IPropertyDataProvider } from "../PropertyDataProvider";
6
6
  import { CommonPropertyGridProps } from "./PropertyGridCommons";
7
7
  /** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component
8
- * @beta
8
+ * @public
9
9
  */
10
10
  export interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {
11
11
  dataProvider: IPropertyDataProvider;
@@ -19,7 +19,7 @@ export interface VirtualizedPropertyGridWithDataProviderProps extends CommonProp
19
19
  /**
20
20
  * VirtualizedPropertyGrid React Component which takes dataProvider and
21
21
  * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler
22
- * @beta
22
+ * @public
23
23
  */
24
24
  export declare function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps): JSX.Element;
25
25
  //# sourceMappingURL=VirtualizedPropertyGridWithDataProvider.d.ts.map
@@ -18,7 +18,7 @@ const VirtualizedPropertyGrid_1 = require("./VirtualizedPropertyGrid");
18
18
  /**
19
19
  * VirtualizedPropertyGrid React Component which takes dataProvider and
20
20
  * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler
21
- * @beta
21
+ * @public
22
22
  */
23
23
  function VirtualizedPropertyGridWithDataProvider(props) {
24
24
  const modelSource = (0, PropertyGridHooks_1.usePropertyGridModelSource)({ dataProvider: props.dataProvider });
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F;;GAEG;AAEH,kDAA0B;AAC1B,gEAA6D;AAG7D,qEAA8H;AAI9H,uEAAoE;AAepE;;;;GAIG;AACH,SAAgB,uCAAuC,CAAC,KAAmD;IACzG,MAAM,WAAW,GAAG,IAAA,8CAA0B,EAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,IAAA,wCAAoB,EAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,IAAA,+CAA2B,EAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CACL,uCAAK,SAAS,EAAC,6CAA6C;YAC1D,8BAAC,+BAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAC3B,CACP,CAAC;KACH;IAED,OAAO,CAAC,8BAAC,iDAAuB,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC,CAAC;AAC5F,CAAC;AAdD,0FAcC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport React from \"react\";\r\nimport { DelayedSpinner } from \"../../common/DelayedSpinner\";\r\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\r\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\r\nimport { usePropertyGridEventHandler, usePropertyGridModel, usePropertyGridModelSource } from \"../internal/PropertyGridHooks\";\r\nimport { PropertyCategoryRendererManager } from \"../PropertyCategoryRendererManager\";\r\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\r\nimport { CommonPropertyGridProps } from \"./PropertyGridCommons\";\r\nimport { VirtualizedPropertyGrid } from \"./VirtualizedPropertyGrid\";\r\n\r\n/** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component\r\n * @beta\r\n */\r\nexport interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {\r\n dataProvider: IPropertyDataProvider;\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n width: number;\r\n height: number;\r\n}\r\n\r\n/**\r\n * VirtualizedPropertyGrid React Component which takes dataProvider and\r\n * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler\r\n * @beta\r\n */\r\nexport function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps) {\r\n const modelSource = usePropertyGridModelSource({ dataProvider: props.dataProvider });\r\n const model = usePropertyGridModel({ modelSource });\r\n const eventHandler = usePropertyGridEventHandler({ modelSource });\r\n\r\n if (!model) {\r\n return (\r\n <div className=\"components-virtualized-property-grid-loader\">\r\n <DelayedSpinner size=\"large\" />\r\n </div>\r\n );\r\n }\r\n\r\n return (<VirtualizedPropertyGrid {...props} model={model} eventHandler={eventHandler} />);\r\n}\r\n"]}
1
+ {"version":3,"file":"VirtualizedPropertyGridWithDataProvider.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F;;GAEG;AAEH,kDAA0B;AAC1B,gEAA6D;AAG7D,qEAA8H;AAI9H,uEAAoE;AAepE;;;;GAIG;AACH,SAAgB,uCAAuC,CAAC,KAAmD;IACzG,MAAM,WAAW,GAAG,IAAA,8CAA0B,EAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,IAAA,wCAAoB,EAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,IAAA,+CAA2B,EAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CACL,uCAAK,SAAS,EAAC,6CAA6C;YAC1D,8BAAC,+BAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAC3B,CACP,CAAC;KACH;IAED,OAAO,CAAC,8BAAC,iDAAuB,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC,CAAC;AAC5F,CAAC;AAdD,0FAcC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport React from \"react\";\r\nimport { DelayedSpinner } from \"../../common/DelayedSpinner\";\r\nimport { HighlightingComponentProps } from \"../../common/HighlightingComponentProps\";\r\nimport { FilteredType } from \"../dataproviders/filterers/PropertyDataFiltererBase\";\r\nimport { usePropertyGridEventHandler, usePropertyGridModel, usePropertyGridModelSource } from \"../internal/PropertyGridHooks\";\r\nimport { PropertyCategoryRendererManager } from \"../PropertyCategoryRendererManager\";\r\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\r\nimport { CommonPropertyGridProps } from \"./PropertyGridCommons\";\r\nimport { VirtualizedPropertyGrid } from \"./VirtualizedPropertyGrid\";\r\n\r\n/** Properties for [[VirtualizedPropertyGridWithDataProvider]] React component\r\n * @public\r\n */\r\nexport interface VirtualizedPropertyGridWithDataProviderProps extends CommonPropertyGridProps {\r\n dataProvider: IPropertyDataProvider;\r\n highlight?: HighlightingComponentProps & {\r\n filteredTypes?: FilteredType[];\r\n };\r\n propertyCategoryRendererManager?: PropertyCategoryRendererManager;\r\n width: number;\r\n height: number;\r\n}\r\n\r\n/**\r\n * VirtualizedPropertyGrid React Component which takes dataProvider and\r\n * sets up default implementations for IPropertyGridModelSource nad IPropertyGridEventHandler\r\n * @public\r\n */\r\nexport function VirtualizedPropertyGridWithDataProvider(props: VirtualizedPropertyGridWithDataProviderProps) {\r\n const modelSource = usePropertyGridModelSource({ dataProvider: props.dataProvider });\r\n const model = usePropertyGridModel({ modelSource });\r\n const eventHandler = usePropertyGridEventHandler({ modelSource });\r\n\r\n if (!model) {\r\n return (\r\n <div className=\"components-virtualized-property-grid-loader\">\r\n <DelayedSpinner size=\"large\" />\r\n </div>\r\n );\r\n }\r\n\r\n return (<VirtualizedPropertyGrid {...props} model={model} eventHandler={eventHandler} />);\r\n}\r\n"]}
@@ -4,14 +4,14 @@
4
4
  import { IPropertyGridModelSource } from "./PropertyGridModelSource";
5
5
  /**
6
6
  * Handles events and changes on PropertyGridModel data.
7
- * @beta
7
+ * @public
8
8
  */
9
9
  export interface IPropertyGridEventHandler {
10
10
  onExpansionToggled: (selectionKey: string) => void;
11
11
  }
12
12
  /**
13
13
  * Handles events and changes on PropertyGridModel data.
14
- * @beta
14
+ * @public
15
15
  */
16
16
  export declare class PropertyGridEventHandler {
17
17
  private _modelSource;
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.PropertyGridEventHandler = void 0;
8
8
  /**
9
9
  * Handles events and changes on PropertyGridModel data.
10
- * @beta
10
+ * @public
11
11
  */
12
12
  class PropertyGridEventHandler {
13
13
  constructor(_modelSource) {
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridEventHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridEventHandler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAe/F;;;GAGG;AACH,MAAa,wBAAwB;IACnC,YAA2B,YAAsC;QAAtC,iBAAY,GAAZ,YAAY,CAA0B;QAGjE;;;WAGG;QACI,uBAAkB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACnD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IAXF,CAAC;CAYF;AAdD,4DAcC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { IPropertyGridModelSource } from \"./PropertyGridModelSource\";\r\n\r\n/**\r\n * Handles events and changes on PropertyGridModel data.\r\n * @beta\r\n */\r\nexport interface IPropertyGridEventHandler {\r\n onExpansionToggled: (selectionKey: string) => void;\r\n}\r\n\r\n/**\r\n * Handles events and changes on PropertyGridModel data.\r\n * @beta\r\n */\r\nexport class PropertyGridEventHandler {\r\n public constructor(private _modelSource: IPropertyGridModelSource) {\r\n }\r\n\r\n /**\r\n * Flips isExpand on item by given selectionKey\r\n * @param selectionKey item to be modified\r\n */\r\n public onExpansionToggled = (selectionKey: string) => {\r\n this._modelSource.modifyModel((draftModel) => {\r\n const item = draftModel.getItem(selectionKey);\r\n item.isExpanded = !item.isExpanded;\r\n });\r\n };\r\n}\r\n"]}
1
+ {"version":3,"file":"PropertyGridEventHandler.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridEventHandler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAe/F;;;GAGG;AACH,MAAa,wBAAwB;IACnC,YAA2B,YAAsC;QAAtC,iBAAY,GAAZ,YAAY,CAA0B;QAGjE;;;WAGG;QACI,uBAAkB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACnD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IAXF,CAAC;CAYF;AAdD,4DAcC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { IPropertyGridModelSource } from \"./PropertyGridModelSource\";\r\n\r\n/**\r\n * Handles events and changes on PropertyGridModel data.\r\n * @public\r\n */\r\nexport interface IPropertyGridEventHandler {\r\n onExpansionToggled: (selectionKey: string) => void;\r\n}\r\n\r\n/**\r\n * Handles events and changes on PropertyGridModel data.\r\n * @public\r\n */\r\nexport class PropertyGridEventHandler {\r\n public constructor(private _modelSource: IPropertyGridModelSource) {\r\n }\r\n\r\n /**\r\n * Flips isExpand on item by given selectionKey\r\n * @param selectionKey item to be modified\r\n */\r\n public onExpansionToggled = (selectionKey: string) => {\r\n this._modelSource.modifyModel((draftModel) => {\r\n const item = draftModel.getItem(selectionKey);\r\n item.isExpanded = !item.isExpanded;\r\n });\r\n };\r\n}\r\n"]}
@@ -17,21 +17,21 @@ export declare function usePropertyData(props: {
17
17
  };
18
18
  /**
19
19
  * Custom hook that creates a [[PropertyGridModelSource]] and subscribes it to data updates from the data provider.
20
- * @beta
20
+ * @public
21
21
  */
22
22
  export declare function usePropertyGridModelSource(props: {
23
23
  dataProvider: IPropertyDataProvider;
24
24
  }): PropertyGridModelSource;
25
25
  /**
26
26
  * Custom hook that creates memoized version of [[PropertyGridEventHandler]] that modifies given modelSource
27
- * @beta
27
+ * @public
28
28
  */
29
29
  export declare function usePropertyGridEventHandler(props: {
30
30
  modelSource: IPropertyGridModelSource;
31
31
  }): PropertyGridEventHandler;
32
32
  /**
33
33
  * Custom hook that automatically listens and retrieves latest model from model source
34
- * @beta
34
+ * @public
35
35
  */
36
36
  export declare function usePropertyGridModel(props: {
37
37
  modelSource: IPropertyGridModelSource;
@@ -32,7 +32,7 @@ function usePropertyData(props) {
32
32
  exports.usePropertyData = usePropertyData;
33
33
  /**
34
34
  * Custom hook that creates a [[PropertyGridModelSource]] and subscribes it to data updates from the data provider.
35
- * @beta
35
+ * @public
36
36
  */
37
37
  function usePropertyGridModelSource(props) {
38
38
  const { value: propertyData } = usePropertyData(props);
@@ -49,7 +49,7 @@ function usePropertyGridModelSource(props) {
49
49
  exports.usePropertyGridModelSource = usePropertyGridModelSource;
50
50
  /**
51
51
  * Custom hook that creates memoized version of [[PropertyGridEventHandler]] that modifies given modelSource
52
- * @beta
52
+ * @public
53
53
  */
54
54
  function usePropertyGridEventHandler(props) {
55
55
  return (0, react_1.useMemo)(() => new PropertyGridEventHandler_1.PropertyGridEventHandler(props.modelSource), [props.modelSource]);
@@ -57,7 +57,7 @@ function usePropertyGridEventHandler(props) {
57
57
  exports.usePropertyGridEventHandler = usePropertyGridEventHandler;
58
58
  /**
59
59
  * Custom hook that automatically listens and retrieves latest model from model source
60
- * @beta
60
+ * @public
61
61
  */
62
62
  function usePropertyGridModel(props) {
63
63
  const { modelSource } = { ...props };
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridHooks.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridHooks.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAA8E;AAC9E,gFAA6E;AAE7E,gFAA6E;AAC7E,yEAAsE;AAEtE,uEAA8F;AAE9F;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAA8C;IAC5E,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAE/B,MAAM,CAAC,YAAY,EAAE,mBAAmB,CAAC,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,OAAO,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,EAAE;YACjD,mBAAmB,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,yGAAyG;IACzG,uDAAuD;IACvD,OAAO,IAAA,+CAAsB,EAAC,IAAA,mBAAW,EAAC,KAAK,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/G,CAAC;AAbD,0CAaC;AAED;;;GAGG;AACH,SAAgB,0BAA0B,CAAC,KAA8C;IACvF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IAEtC,8DAA8D;IAC9D,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,iDAAuB,CAAC,IAAI,+CAAsB,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAE7G,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,YAAY;YACd,WAAW,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhC,OAAO,WAAW,CAAC;AACrB,CAAC;AAdD,gEAcC;AAED;;;GAGG;AACH,SAAgB,2BAA2B,CAAC,KAAgD;IAC1F,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,mDAAwB,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7F,CAAC;AAFD,kEAEC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,KAAgD;IACnF,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IACrC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAsB,CAAC;IAEzD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,YAAY,EAAE,CAAC;QACf,OAAO,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,KAAK,CAAC;AACf,CAAC;AAbD,oDAaC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport { useCallback, useEffect, useMemo, useReducer, useState } from \"react\";\r\nimport { useDebouncedAsyncValue } from \"../../common/UseDebouncedAsyncValue\";\r\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\r\nimport { MutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\nimport { PropertyGridEventHandler } from \"./PropertyGridEventHandler\";\r\nimport { IPropertyGridModel } from \"./PropertyGridModel\";\r\nimport { IPropertyGridModelSource, PropertyGridModelSource } from \"./PropertyGridModelSource\";\r\n\r\n/**\r\n * Custom hook that gets [[PropertyData]] from given [[IPropertyDataProvider]] and subscribes to further data changes.\r\n * @public\r\n */\r\nexport function usePropertyData(props: { dataProvider: IPropertyDataProvider }) {\r\n const { dataProvider } = props;\r\n\r\n const [forcedUpdate, triggerForcedUpdate] = useReducer(() => ({}), {});\r\n useEffect(() => {\r\n return dataProvider.onDataChanged.addListener(() => {\r\n triggerForcedUpdate();\r\n });\r\n }, [dataProvider]);\r\n\r\n // forcedUpdate is added to dependency list to re-memo getData promise when onDataChanged emits an event.\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n return useDebouncedAsyncValue(useCallback(async () => dataProvider.getData(), [dataProvider, forcedUpdate]));\r\n}\r\n\r\n/**\r\n * Custom hook that creates a [[PropertyGridModelSource]] and subscribes it to data updates from the data provider.\r\n * @beta\r\n */\r\nexport function usePropertyGridModelSource(props: { dataProvider: IPropertyDataProvider }) {\r\n const { value: propertyData } = usePropertyData(props);\r\n const { dataProvider } = { ...props };\r\n\r\n // Model source needs to be recreated if data provider changes\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n const modelSource = useMemo(() => new PropertyGridModelSource(new MutableGridItemFactory()), [dataProvider]);\r\n\r\n useEffect(() => {\r\n if (propertyData)\r\n modelSource.setPropertyData(propertyData);\r\n }, [modelSource, propertyData]);\r\n\r\n return modelSource;\r\n}\r\n\r\n/**\r\n * Custom hook that creates memoized version of [[PropertyGridEventHandler]] that modifies given modelSource\r\n * @beta\r\n */\r\nexport function usePropertyGridEventHandler(props: { modelSource: IPropertyGridModelSource }) {\r\n return useMemo(() => new PropertyGridEventHandler(props.modelSource), [props.modelSource]);\r\n}\r\n\r\n/**\r\n * Custom hook that automatically listens and retrieves latest model from model source\r\n * @beta\r\n */\r\nexport function usePropertyGridModel(props: { modelSource: IPropertyGridModelSource }) {\r\n const { modelSource } = { ...props };\r\n const [model, setModel] = useState<IPropertyGridModel>();\r\n\r\n useEffect(() => {\r\n const modelChanged = () => {\r\n setModel(modelSource.getModel());\r\n };\r\n modelChanged();\r\n return modelSource.onModelChanged.addListener(modelChanged);\r\n }, [modelSource]);\r\n\r\n return model;\r\n}\r\n"]}
1
+ {"version":3,"file":"PropertyGridHooks.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridHooks.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAA8E;AAC9E,gFAA6E;AAE7E,gFAA6E;AAC7E,yEAAsE;AAEtE,uEAA8F;AAE9F;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAA8C;IAC5E,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAE/B,MAAM,CAAC,YAAY,EAAE,mBAAmB,CAAC,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,OAAO,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,EAAE;YACjD,mBAAmB,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,yGAAyG;IACzG,uDAAuD;IACvD,OAAO,IAAA,+CAAsB,EAAC,IAAA,mBAAW,EAAC,KAAK,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/G,CAAC;AAbD,0CAaC;AAED;;;GAGG;AACH,SAAgB,0BAA0B,CAAC,KAA8C;IACvF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IAEtC,8DAA8D;IAC9D,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,iDAAuB,CAAC,IAAI,+CAAsB,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAE7G,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,YAAY;YACd,WAAW,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhC,OAAO,WAAW,CAAC;AACrB,CAAC;AAdD,gEAcC;AAED;;;GAGG;AACH,SAAgB,2BAA2B,CAAC,KAAgD;IAC1F,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,mDAAwB,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7F,CAAC;AAFD,kEAEC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,KAAgD;IACnF,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IACrC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAsB,CAAC;IAEzD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,YAAY,EAAE,CAAC;QACf,OAAO,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,KAAK,CAAC;AACf,CAAC;AAbD,oDAaC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport { useCallback, useEffect, useMemo, useReducer, useState } from \"react\";\r\nimport { useDebouncedAsyncValue } from \"../../common/UseDebouncedAsyncValue\";\r\nimport { IPropertyDataProvider } from \"../PropertyDataProvider\";\r\nimport { MutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\nimport { PropertyGridEventHandler } from \"./PropertyGridEventHandler\";\r\nimport { IPropertyGridModel } from \"./PropertyGridModel\";\r\nimport { IPropertyGridModelSource, PropertyGridModelSource } from \"./PropertyGridModelSource\";\r\n\r\n/**\r\n * Custom hook that gets [[PropertyData]] from given [[IPropertyDataProvider]] and subscribes to further data changes.\r\n * @public\r\n */\r\nexport function usePropertyData(props: { dataProvider: IPropertyDataProvider }) {\r\n const { dataProvider } = props;\r\n\r\n const [forcedUpdate, triggerForcedUpdate] = useReducer(() => ({}), {});\r\n useEffect(() => {\r\n return dataProvider.onDataChanged.addListener(() => {\r\n triggerForcedUpdate();\r\n });\r\n }, [dataProvider]);\r\n\r\n // forcedUpdate is added to dependency list to re-memo getData promise when onDataChanged emits an event.\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n return useDebouncedAsyncValue(useCallback(async () => dataProvider.getData(), [dataProvider, forcedUpdate]));\r\n}\r\n\r\n/**\r\n * Custom hook that creates a [[PropertyGridModelSource]] and subscribes it to data updates from the data provider.\r\n * @public\r\n */\r\nexport function usePropertyGridModelSource(props: { dataProvider: IPropertyDataProvider }) {\r\n const { value: propertyData } = usePropertyData(props);\r\n const { dataProvider } = { ...props };\r\n\r\n // Model source needs to be recreated if data provider changes\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n const modelSource = useMemo(() => new PropertyGridModelSource(new MutableGridItemFactory()), [dataProvider]);\r\n\r\n useEffect(() => {\r\n if (propertyData)\r\n modelSource.setPropertyData(propertyData);\r\n }, [modelSource, propertyData]);\r\n\r\n return modelSource;\r\n}\r\n\r\n/**\r\n * Custom hook that creates memoized version of [[PropertyGridEventHandler]] that modifies given modelSource\r\n * @public\r\n */\r\nexport function usePropertyGridEventHandler(props: { modelSource: IPropertyGridModelSource }) {\r\n return useMemo(() => new PropertyGridEventHandler(props.modelSource), [props.modelSource]);\r\n}\r\n\r\n/**\r\n * Custom hook that automatically listens and retrieves latest model from model source\r\n * @public\r\n */\r\nexport function usePropertyGridModel(props: { modelSource: IPropertyGridModelSource }) {\r\n const { modelSource } = { ...props };\r\n const [model, setModel] = useState<IPropertyGridModel>();\r\n\r\n useEffect(() => {\r\n const modelChanged = () => {\r\n setModel(modelSource.getModel());\r\n };\r\n modelChanged();\r\n return modelSource.onModelChanged.addListener(modelChanged);\r\n }, [modelSource]);\r\n\r\n return model;\r\n}\r\n"]}
@@ -8,7 +8,7 @@ import { IMutableFlatGridItem, IMutableGridCategoryItem } from "./flat-items/Mut
8
8
  import { IMutableGridItemFactory } from "./flat-items/MutableGridItemFactory";
9
9
  /**
10
10
  * PropertyGridModel interface for working with immutable FlatGridItems
11
- * @beta
11
+ * @public
12
12
  */
13
13
  export interface IPropertyGridModel {
14
14
  getItem: (selectionKey: string) => FlatGridItem;
@@ -18,7 +18,7 @@ export interface IPropertyGridModel {
18
18
  }
19
19
  /**
20
20
  * PropertyGridModel interface for working with mutable FlatGridItems
21
- * @beta
21
+ * @public
22
22
  */
23
23
  export interface IMutablePropertyGridModel {
24
24
  getItem: (selectionKey: string) => IMutableFlatGridItem;
@@ -28,7 +28,7 @@ export interface IMutablePropertyGridModel {
28
28
  }
29
29
  /**
30
30
  * Implementation of PropertyGridModel for working with and converting PropertyData to mutable FlatGridItems
31
- * @beta
31
+ * @public
32
32
  */
33
33
  export declare class MutablePropertyGridModel implements IPropertyGridModel, IMutablePropertyGridModel {
34
34
  private _gridItemFactory;
@@ -12,7 +12,7 @@ exports.MutablePropertyGridModel = void 0;
12
12
  const immer_1 = require("immer");
13
13
  /**
14
14
  * Implementation of PropertyGridModel for working with and converting PropertyData to mutable FlatGridItems
15
- * @beta
15
+ * @public
16
16
  */
17
17
  class MutablePropertyGridModel {
18
18
  constructor(propertyData, _gridItemFactory) {
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridModel.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModel.ts"],"names":[],"mappings":";;;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,iCAAkC;AA4BlC;;;GAGG;AACH,MAAa,wBAAwB;IAInC,YAAmB,YAA0B,EAAU,gBAAyC;QAAzC,qBAAgB,GAAhB,gBAAgB,CAAyB;QAHzF,QAAW,GAAG,IAAI,CAAC;QAIxB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3J,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,YAAoB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,KAAK,CAAC,wCAAwC,YAAY,EAAE,CAAC,CAAC;QAE1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,QAAQ,CAAC,KAA6B,EAAE,YAAoB;QAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,2IAA2I;YAC3I,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC7C,SAAS;YAEX,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY;gBACpC,OAAO,IAAI,CAAC;YAEd,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,YAAY,CAAC,CAAC;YAClE,IAAI,SAAS;gBACX,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QAE3F,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,kBAAkB;QACvB,MAAM,YAAY,GAA2B,EAAE,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;QAEtG,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAxED,4DAwEC;KAvES,iBAAS","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { immerable } from \"immer\";\r\nimport { PropertyCategory, PropertyData } from \"../PropertyDataProvider\";\r\nimport { FlatGridItem, GridCategoryItem } from \"./flat-items/FlatGridItem\";\r\nimport { IMutableFlatGridItem, IMutableGridCategoryItem } from \"./flat-items/MutableFlatGridItem\";\r\nimport { IMutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\n\r\n/**\r\n * PropertyGridModel interface for working with immutable FlatGridItems\r\n * @beta\r\n */\r\nexport interface IPropertyGridModel {\r\n getItem: (selectionKey: string) => FlatGridItem;\r\n getRootCategories: () => GridCategoryItem[];\r\n getFlatGrid: () => FlatGridItem[];\r\n getVisibleFlatGrid: () => FlatGridItem[];\r\n}\r\n\r\n/**\r\n * PropertyGridModel interface for working with mutable FlatGridItems\r\n * @beta\r\n */\r\nexport interface IMutablePropertyGridModel {\r\n getItem: (selectionKey: string) => IMutableFlatGridItem;\r\n getRootCategories: () => IMutableGridCategoryItem[];\r\n getFlatGrid: () => IMutableFlatGridItem[];\r\n getVisibleFlatGrid: () => IMutableFlatGridItem[];\r\n}\r\n\r\n/**\r\n * Implementation of PropertyGridModel for working with and converting PropertyData to mutable FlatGridItems\r\n * @beta\r\n */\r\nexport class MutablePropertyGridModel implements IPropertyGridModel, IMutablePropertyGridModel {\r\n public [immerable] = true;\r\n\r\n private _categories: IMutableGridCategoryItem[];\r\n public constructor(propertyData: PropertyData, private _gridItemFactory: IMutableGridItemFactory) {\r\n this._categories = propertyData.categories.map((category: PropertyCategory) => this._gridItemFactory.createGridCategory(category, propertyData.records));\r\n }\r\n\r\n /**\r\n * Retrieves grid item from model.\r\n * @param selectionKey unique key for identifying item to retrieve.\r\n */\r\n public getItem(selectionKey: string) {\r\n const item = this.findItem(this._categories, selectionKey);\r\n if (!item)\r\n throw new Error(`Grid item at provided key not found: ${selectionKey}`);\r\n\r\n return item;\r\n }\r\n\r\n /**\r\n * Walks the grid item hierarchy and finds item matching key\r\n * @param items items and their descendants to check\r\n * @param selectionKey unique key for identifying item\r\n * @returns FlatGridItem if items with key exists, undefined otherwise\r\n */\r\n private findItem(items: IMutableFlatGridItem[], selectionKey: string): IMutableFlatGridItem | undefined {\r\n for (const item of items) {\r\n // Each items key is prefixed with it's parent key, so we can ignore the ones that aren't prefixed to reduce checking unnecessary branches.\r\n if (!selectionKey.startsWith(item.selectionKey))\r\n continue;\r\n\r\n if (item.selectionKey === selectionKey)\r\n return item;\r\n\r\n const foundItem = this.findItem(item.getChildren(), selectionKey);\r\n if (foundItem)\r\n return foundItem;\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Gets all GridCategoryItems that do not have parent categories.\r\n * @returns array of GridCategoryItems\r\n */\r\n public getRootCategories(): IMutableGridCategoryItem[] {\r\n return this._categories;\r\n }\r\n\r\n /**\r\n * Gets an array of all FlatGridItems.\r\n * @returns 1-Dimensional array of GridCategories and CategorizedProperties\r\n */\r\n public getFlatGrid(): IMutableFlatGridItem[] {\r\n const flatGrid: IMutableFlatGridItem[] = [];\r\n this._categories.forEach((category) => flatGrid.push(...category.getDescendantsAndSelf()));\r\n\r\n return flatGrid;\r\n }\r\n\r\n /**\r\n * Gets an array of all currently visible FlatGridItems.\r\n * @returns 1-Dimensional array of GridCategories and CategorizedProperties\r\n */\r\n public getVisibleFlatGrid(): IMutableFlatGridItem[] {\r\n const visibleItems: IMutableFlatGridItem[] = [];\r\n this._categories.forEach((category) => visibleItems.push(...category.getVisibleDescendantsAndSelf()));\r\n\r\n return visibleItems;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PropertyGridModel.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModel.ts"],"names":[],"mappings":";;;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,iCAAkC;AA4BlC;;;GAGG;AACH,MAAa,wBAAwB;IAInC,YAAmB,YAA0B,EAAU,gBAAyC;QAAzC,qBAAgB,GAAhB,gBAAgB,CAAyB;QAHzF,QAAW,GAAG,IAAI,CAAC;QAIxB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3J,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,YAAoB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,KAAK,CAAC,wCAAwC,YAAY,EAAE,CAAC,CAAC;QAE1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,QAAQ,CAAC,KAA6B,EAAE,YAAoB;QAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,2IAA2I;YAC3I,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC7C,SAAS;YAEX,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY;gBACpC,OAAO,IAAI,CAAC;YAEd,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,YAAY,CAAC,CAAC;YAClE,IAAI,SAAS;gBACX,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QAE3F,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,kBAAkB;QACvB,MAAM,YAAY,GAA2B,EAAE,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;QAEtG,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAxED,4DAwEC;KAvES,iBAAS","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { immerable } from \"immer\";\r\nimport { PropertyCategory, PropertyData } from \"../PropertyDataProvider\";\r\nimport { FlatGridItem, GridCategoryItem } from \"./flat-items/FlatGridItem\";\r\nimport { IMutableFlatGridItem, IMutableGridCategoryItem } from \"./flat-items/MutableFlatGridItem\";\r\nimport { IMutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\n\r\n/**\r\n * PropertyGridModel interface for working with immutable FlatGridItems\r\n * @public\r\n */\r\nexport interface IPropertyGridModel {\r\n getItem: (selectionKey: string) => FlatGridItem;\r\n getRootCategories: () => GridCategoryItem[];\r\n getFlatGrid: () => FlatGridItem[];\r\n getVisibleFlatGrid: () => FlatGridItem[];\r\n}\r\n\r\n/**\r\n * PropertyGridModel interface for working with mutable FlatGridItems\r\n * @public\r\n */\r\nexport interface IMutablePropertyGridModel {\r\n getItem: (selectionKey: string) => IMutableFlatGridItem;\r\n getRootCategories: () => IMutableGridCategoryItem[];\r\n getFlatGrid: () => IMutableFlatGridItem[];\r\n getVisibleFlatGrid: () => IMutableFlatGridItem[];\r\n}\r\n\r\n/**\r\n * Implementation of PropertyGridModel for working with and converting PropertyData to mutable FlatGridItems\r\n * @public\r\n */\r\nexport class MutablePropertyGridModel implements IPropertyGridModel, IMutablePropertyGridModel {\r\n public [immerable] = true;\r\n\r\n private _categories: IMutableGridCategoryItem[];\r\n public constructor(propertyData: PropertyData, private _gridItemFactory: IMutableGridItemFactory) {\r\n this._categories = propertyData.categories.map((category: PropertyCategory) => this._gridItemFactory.createGridCategory(category, propertyData.records));\r\n }\r\n\r\n /**\r\n * Retrieves grid item from model.\r\n * @param selectionKey unique key for identifying item to retrieve.\r\n */\r\n public getItem(selectionKey: string) {\r\n const item = this.findItem(this._categories, selectionKey);\r\n if (!item)\r\n throw new Error(`Grid item at provided key not found: ${selectionKey}`);\r\n\r\n return item;\r\n }\r\n\r\n /**\r\n * Walks the grid item hierarchy and finds item matching key\r\n * @param items items and their descendants to check\r\n * @param selectionKey unique key for identifying item\r\n * @returns FlatGridItem if items with key exists, undefined otherwise\r\n */\r\n private findItem(items: IMutableFlatGridItem[], selectionKey: string): IMutableFlatGridItem | undefined {\r\n for (const item of items) {\r\n // Each items key is prefixed with it's parent key, so we can ignore the ones that aren't prefixed to reduce checking unnecessary branches.\r\n if (!selectionKey.startsWith(item.selectionKey))\r\n continue;\r\n\r\n if (item.selectionKey === selectionKey)\r\n return item;\r\n\r\n const foundItem = this.findItem(item.getChildren(), selectionKey);\r\n if (foundItem)\r\n return foundItem;\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Gets all GridCategoryItems that do not have parent categories.\r\n * @returns array of GridCategoryItems\r\n */\r\n public getRootCategories(): IMutableGridCategoryItem[] {\r\n return this._categories;\r\n }\r\n\r\n /**\r\n * Gets an array of all FlatGridItems.\r\n * @returns 1-Dimensional array of GridCategories and CategorizedProperties\r\n */\r\n public getFlatGrid(): IMutableFlatGridItem[] {\r\n const flatGrid: IMutableFlatGridItem[] = [];\r\n this._categories.forEach((category) => flatGrid.push(...category.getDescendantsAndSelf()));\r\n\r\n return flatGrid;\r\n }\r\n\r\n /**\r\n * Gets an array of all currently visible FlatGridItems.\r\n * @returns 1-Dimensional array of GridCategories and CategorizedProperties\r\n */\r\n public getVisibleFlatGrid(): IMutableFlatGridItem[] {\r\n const visibleItems: IMutableFlatGridItem[] = [];\r\n this._categories.forEach((category) => visibleItems.push(...category.getVisibleDescendantsAndSelf()));\r\n\r\n return visibleItems;\r\n }\r\n}\r\n"]}
@@ -4,12 +4,12 @@
4
4
  import { BeEvent } from "@itwin/core-bentley";
5
5
  /**
6
6
  * A signature for property grid model change listeners
7
- * @beta
7
+ * @public
8
8
  */
9
9
  export declare type PropertyGridModelChangeListener = () => void;
10
10
  /**
11
11
  * An event broadcasted on property grid model changes
12
- * @beta
12
+ * @public
13
13
  */
14
14
  export declare class PropertyGridModelChangeEvent extends BeEvent<PropertyGridModelChangeListener> {
15
15
  }
@@ -11,7 +11,7 @@ exports.PropertyGridModelChangeEvent = void 0;
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
12
  /**
13
13
  * An event broadcasted on property grid model changes
14
- * @beta
14
+ * @public
15
15
  */
16
16
  class PropertyGridModelChangeEvent extends core_bentley_1.BeEvent {
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridModelChangeEvent.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelChangeEvent.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F;;GAEG;AACH,sDAA8C;AAQ9C;;;GAGG;AACH,MAAa,4BAA6B,SAAQ,sBAAwC;CAAI;AAA9F,oEAA8F","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { BeEvent } from \"@itwin/core-bentley\";\r\n\r\n/**\r\n * A signature for property grid model change listeners\r\n * @beta\r\n */\r\nexport type PropertyGridModelChangeListener = () => void;\r\n\r\n/**\r\n * An event broadcasted on property grid model changes\r\n * @beta\r\n */\r\nexport class PropertyGridModelChangeEvent extends BeEvent<PropertyGridModelChangeListener> { }\r\n"]}
1
+ {"version":3,"file":"PropertyGridModelChangeEvent.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelChangeEvent.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F;;GAEG;AACH,sDAA8C;AAQ9C;;;GAGG;AACH,MAAa,4BAA6B,SAAQ,sBAAwC;CAAI;AAA9F,oEAA8F","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { BeEvent } from \"@itwin/core-bentley\";\r\n\r\n/**\r\n * A signature for property grid model change listeners\r\n * @public\r\n */\r\nexport type PropertyGridModelChangeListener = () => void;\r\n\r\n/**\r\n * An event broadcasted on property grid model changes\r\n * @public\r\n */\r\nexport class PropertyGridModelChangeEvent extends BeEvent<PropertyGridModelChangeListener> { }\r\n"]}
@@ -5,7 +5,7 @@ import { PropertyData } from "../PropertyDataProvider";
5
5
  import { IMutableGridItemFactory } from "./flat-items/MutableGridItemFactory";
6
6
  import { IMutablePropertyGridModel, IPropertyGridModel } from "./PropertyGridModel";
7
7
  import { PropertyGridModelChangeEvent } from "./PropertyGridModelChangeEvent";
8
- /** @beta */
8
+ /** @public */
9
9
  export interface IPropertyGridModelSource {
10
10
  onModelChanged: PropertyGridModelChangeEvent;
11
11
  setPropertyData: (data: PropertyData) => void;
@@ -15,7 +15,7 @@ export interface IPropertyGridModelSource {
15
15
  /**
16
16
  * Controls property grid model.
17
17
  * It is used to modify property grid model model and inform when the model changes.
18
- * @beta
18
+ * @public
19
19
  */
20
20
  export declare class PropertyGridModelSource implements IPropertyGridModelSource {
21
21
  private _gridFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridModelSource.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelSource.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAA4B,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAE9E,YAAY;AACZ,MAAM,WAAW,wBAAwB;IACvC,cAAc,EAAE,4BAA4B,CAAC;IAC7C,eAAe,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,GAAG,IAAI,CAAC;IACxE,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAAC;CAC5C;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,wBAAwB;IAKnD,OAAO,CAAC,YAAY;IAJvC,OAAO,CAAC,MAAM,CAAC,CAA4B;IAC3C,kEAAkE;IAC3D,cAAc,+BAAsC;gBAEhC,YAAY,EAAE,uBAAuB;IAGhE,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,iBAAiB;IAYlB,eAAe,CAAC,IAAI,EAAE,YAAY;IASzC;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,GAAG,IAAI;IAQ9E,mCAAmC;IAC5B,QAAQ,IAAI,kBAAkB,GAAG,SAAS;CAGlD"}
1
+ {"version":3,"file":"PropertyGridModelSource.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelSource.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAA4B,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAE9E,cAAc;AACd,MAAM,WAAW,wBAAwB;IACvC,cAAc,EAAE,4BAA4B,CAAC;IAC7C,eAAe,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,GAAG,IAAI,CAAC;IACxE,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAAC;CAC5C;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,wBAAwB;IAKnD,OAAO,CAAC,YAAY;IAJvC,OAAO,CAAC,MAAM,CAAC,CAA4B;IAC3C,kEAAkE;IAC3D,cAAc,+BAAsC;gBAEhC,YAAY,EAAE,uBAAuB;IAGhE,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,iBAAiB;IAYlB,eAAe,CAAC,IAAI,EAAE,YAAY;IASzC;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,GAAG,IAAI;IAQ9E,mCAAmC;IAC5B,QAAQ,IAAI,kBAAkB,GAAG,SAAS;CAGlD"}
@@ -14,7 +14,7 @@ const PropertyGridModelChangeEvent_1 = require("./PropertyGridModelChangeEvent")
14
14
  /**
15
15
  * Controls property grid model.
16
16
  * It is used to modify property grid model model and inform when the model changes.
17
- * @beta
17
+ * @public
18
18
  */
19
19
  class PropertyGridModelSource {
20
20
  constructor(_gridFactory) {
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyGridModelSource.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelSource.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAgC;AAIhC,2DAA8G;AAC9G,iFAA8E;AAU9E;;;;GAIG;AACH,MAAa,uBAAuB;IAKlC,YAA2B,YAAqC;QAArC,iBAAY,GAAZ,YAAY,CAAyB;QAHhE,kEAAkE;QAC3D,mBAAc,GAAG,IAAI,2DAA4B,EAAE,CAAC;IAG3D,CAAC;IAEO,eAAe,CAAC,SAAiC;QACvD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAgC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAC7B;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,iBAAiB,CAAC,QAAmC,EAAE,QAAmC;QAChG,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAExC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5B,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC3D,uBAAuB;YACvB,IAAI,WAAW;gBACb,QAAQ,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,eAAe,CAAC,IAAkB;QACvC,MAAM,QAAQ,GAAG,IAAI,4CAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,sBAAsB;YAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,WAAW,CAAC,QAAoD;QACrE,IAAI,CAAC,IAAI,CAAC,MAAM;YACd,OAAO;QAET,IAAI,CAAC,MAAM,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED,mCAAmC;IAC5B,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAvDD,0DAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport { produce } from \"immer\";\r\nimport { PropertyData } from \"../PropertyDataProvider\";\r\nimport { IMutableFlatGridItem } from \"./flat-items/MutableFlatGridItem\";\r\nimport { IMutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\nimport { IMutablePropertyGridModel, IPropertyGridModel, MutablePropertyGridModel } from \"./PropertyGridModel\";\r\nimport { PropertyGridModelChangeEvent } from \"./PropertyGridModelChangeEvent\";\r\n\r\n/** @beta */\r\nexport interface IPropertyGridModelSource {\r\n onModelChanged: PropertyGridModelChangeEvent;\r\n setPropertyData: (data: PropertyData) => void;\r\n modifyModel(callback: (model: IMutablePropertyGridModel) => void): void;\r\n getModel(): IPropertyGridModel | undefined;\r\n}\r\n\r\n/**\r\n * Controls property grid model.\r\n * It is used to modify property grid model model and inform when the model changes.\r\n * @beta\r\n */\r\nexport class PropertyGridModelSource implements IPropertyGridModelSource {\r\n private _model?: IMutablePropertyGridModel;\r\n /** Event that is emitted every time property model is changed. */\r\n public onModelChanged = new PropertyGridModelChangeEvent();\r\n\r\n public constructor(private _gridFactory: IMutableGridItemFactory) {\r\n }\r\n\r\n private getFullModelMap(fullModel: IMutableFlatGridItem[]): Map<string, IMutableFlatGridItem> {\r\n const fullModelMap = new Map<string, IMutableFlatGridItem>();\r\n for (const item of fullModel) {\r\n const key = item.selectionKey;\r\n fullModelMap.set(key, item);\r\n }\r\n\r\n return fullModelMap;\r\n }\r\n\r\n private moveOldModelState(oldModel: IMutablePropertyGridModel, newModel: IMutablePropertyGridModel) {\r\n const oldModelMap = this.getFullModelMap(oldModel.getFlatGrid());\r\n const flatGrid = newModel.getFlatGrid();\r\n\r\n flatGrid.forEach((gridItem) => {\r\n const oldGridItem = oldModelMap.get(gridItem.selectionKey);\r\n // istanbul ignore else\r\n if (oldGridItem)\r\n gridItem.isExpanded = oldGridItem.isExpanded;\r\n });\r\n }\r\n\r\n public setPropertyData(data: PropertyData) {\r\n const newModel = new MutablePropertyGridModel(data, this._gridFactory);\r\n if (this._model !== undefined && data.reusePropertyDataState)\r\n this.moveOldModelState(this._model, newModel);\r\n\r\n this._model = newModel;\r\n this.onModelChanged.raiseEvent();\r\n }\r\n\r\n /**\r\n * Modifies property grid model using provided callback.\r\n * If changes to model are detected, onModelChanged emits an event to all subscribers.\r\n */\r\n public modifyModel(callback: (model: IMutablePropertyGridModel) => void): void {\r\n if (!this._model)\r\n return;\r\n\r\n this._model = produce(this._model, callback);\r\n this.onModelChanged.raiseEvent();\r\n }\r\n\r\n /** Returns property grid model. */\r\n public getModel(): IPropertyGridModel | undefined {\r\n return this._model;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PropertyGridModelSource.js","sourceRoot":"","sources":["../../../../../src/components-react/propertygrid/internal/PropertyGridModelSource.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAgC;AAIhC,2DAA8G;AAC9G,iFAA8E;AAU9E;;;;GAIG;AACH,MAAa,uBAAuB;IAKlC,YAA2B,YAAqC;QAArC,iBAAY,GAAZ,YAAY,CAAyB;QAHhE,kEAAkE;QAC3D,mBAAc,GAAG,IAAI,2DAA4B,EAAE,CAAC;IAG3D,CAAC;IAEO,eAAe,CAAC,SAAiC;QACvD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAgC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAC7B;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,iBAAiB,CAAC,QAAmC,EAAE,QAAmC;QAChG,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAExC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5B,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC3D,uBAAuB;YACvB,IAAI,WAAW;gBACb,QAAQ,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,eAAe,CAAC,IAAkB;QACvC,MAAM,QAAQ,GAAG,IAAI,4CAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,sBAAsB;YAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,WAAW,CAAC,QAAoD;QACrE,IAAI,CAAC,IAAI,CAAC,MAAM;YACd,OAAO;QAET,IAAI,CAAC,MAAM,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED,mCAAmC;IAC5B,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAvDD,0DAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\n\r\nimport { produce } from \"immer\";\r\nimport { PropertyData } from \"../PropertyDataProvider\";\r\nimport { IMutableFlatGridItem } from \"./flat-items/MutableFlatGridItem\";\r\nimport { IMutableGridItemFactory } from \"./flat-items/MutableGridItemFactory\";\r\nimport { IMutablePropertyGridModel, IPropertyGridModel, MutablePropertyGridModel } from \"./PropertyGridModel\";\r\nimport { PropertyGridModelChangeEvent } from \"./PropertyGridModelChangeEvent\";\r\n\r\n/** @public */\r\nexport interface IPropertyGridModelSource {\r\n onModelChanged: PropertyGridModelChangeEvent;\r\n setPropertyData: (data: PropertyData) => void;\r\n modifyModel(callback: (model: IMutablePropertyGridModel) => void): void;\r\n getModel(): IPropertyGridModel | undefined;\r\n}\r\n\r\n/**\r\n * Controls property grid model.\r\n * It is used to modify property grid model model and inform when the model changes.\r\n * @public\r\n */\r\nexport class PropertyGridModelSource implements IPropertyGridModelSource {\r\n private _model?: IMutablePropertyGridModel;\r\n /** Event that is emitted every time property model is changed. */\r\n public onModelChanged = new PropertyGridModelChangeEvent();\r\n\r\n public constructor(private _gridFactory: IMutableGridItemFactory) {\r\n }\r\n\r\n private getFullModelMap(fullModel: IMutableFlatGridItem[]): Map<string, IMutableFlatGridItem> {\r\n const fullModelMap = new Map<string, IMutableFlatGridItem>();\r\n for (const item of fullModel) {\r\n const key = item.selectionKey;\r\n fullModelMap.set(key, item);\r\n }\r\n\r\n return fullModelMap;\r\n }\r\n\r\n private moveOldModelState(oldModel: IMutablePropertyGridModel, newModel: IMutablePropertyGridModel) {\r\n const oldModelMap = this.getFullModelMap(oldModel.getFlatGrid());\r\n const flatGrid = newModel.getFlatGrid();\r\n\r\n flatGrid.forEach((gridItem) => {\r\n const oldGridItem = oldModelMap.get(gridItem.selectionKey);\r\n // istanbul ignore else\r\n if (oldGridItem)\r\n gridItem.isExpanded = oldGridItem.isExpanded;\r\n });\r\n }\r\n\r\n public setPropertyData(data: PropertyData) {\r\n const newModel = new MutablePropertyGridModel(data, this._gridFactory);\r\n if (this._model !== undefined && data.reusePropertyDataState)\r\n this.moveOldModelState(this._model, newModel);\r\n\r\n this._model = newModel;\r\n this.onModelChanged.raiseEvent();\r\n }\r\n\r\n /**\r\n * Modifies property grid model using provided callback.\r\n * If changes to model are detected, onModelChanged emits an event to all subscribers.\r\n */\r\n public modifyModel(callback: (model: IMutablePropertyGridModel) => void): void {\r\n if (!this._model)\r\n return;\r\n\r\n this._model = produce(this._model, callback);\r\n this.onModelChanged.raiseEvent();\r\n }\r\n\r\n /** Returns property grid model. */\r\n public getModel(): IPropertyGridModel | undefined {\r\n return this._model;\r\n }\r\n}\r\n"]}
@@ -6,7 +6,7 @@ import { PropertyRecord } from "@itwin/appui-abstract";
6
6
  import { PropertyCategory } from "../../PropertyDataProvider";
7
7
  /**
8
8
  * Base immutable data structure defining common methods and properties for categories and categorized properties
9
- * @beta
9
+ * @public
10
10
  */
11
11
  export interface FlatGridItemBase {
12
12
  readonly isExpanded: boolean;
@@ -26,20 +26,20 @@ export interface FlatGridItemBase {
26
26
  }
27
27
  /**
28
28
  * Data structure which describes methods and properties present on immutable [[GridCategoryItem]]
29
- * @beta
29
+ * @public
30
30
  */
31
31
  export interface GridCategoryItem extends FlatGridItemBase {
32
32
  readonly type: FlatGridItemType.Category;
33
33
  readonly name: string;
34
34
  readonly derivedCategory: PropertyCategory;
35
- /** @deprecated Use [[getChildren]] and filter categories yourself. */
35
+ /** @deprecated in 3.1. Use [[getChildren]] and filter categories yourself. */
36
36
  getChildCategories(): GridCategoryItem[];
37
- /** @deprecated Use [[getDescendantsAndSelf]] and filter categories yourself. */
37
+ /** @deprecated in 3.1. Use [[getDescendantsAndSelf]] and filter categories yourself. */
38
38
  getDescendantCategoriesAndSelf(): GridCategoryItem[];
39
39
  }
40
40
  /**
41
41
  * Data structure which describes methods and properties present on immutable [[CategorizedPropertyItem]] objects
42
- * @beta
42
+ * @public
43
43
  */
44
44
  export interface CategorizedPropertyItem extends FlatGridItemBase {
45
45
  readonly type: CategorizedPropertyTypes;
@@ -50,7 +50,7 @@ export interface CategorizedPropertyItem extends FlatGridItemBase {
50
50
  }
51
51
  /**
52
52
  * Type which describes immutable [[GridCategoryItem]] or [[CategorizedPropertyItem]]
53
- * @beta
53
+ * @public
54
54
  */
55
55
  export declare type FlatGridItem = CategorizedPropertyItem | GridCategoryItem;
56
56
  //# sourceMappingURL=FlatGridItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FlatGridItem.d.ts","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/internal/flat-items/FlatGridItem.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,qBAAqB,IAAI,YAAY,EAAE,CAAC;IACxC,4BAA4B,IAAI,YAAY,EAAE,CAAC;IAC/C,WAAW,IAAI,YAAY,EAAE,CAAC;IAC9B,8BAA8B,IAAI,YAAY,CAAC;CAChD;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAE3C,sEAAsE;IACtE,kBAAkB,IAAI,gBAAgB,EAAE,CAAC;IACzC,gFAAgF;IAChF,8BAA8B,IAAI,gBAAgB,EAAE,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;IACvC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAEpC,WAAW,IAAI,uBAAuB,EAAE,CAAC;CAC1C;AAED;;;GAGG;AACH,oBAAY,YAAY,GAAG,uBAAuB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"FlatGridItem.d.ts","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/internal/flat-items/FlatGridItem.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,qBAAqB,IAAI,YAAY,EAAE,CAAC;IACxC,4BAA4B,IAAI,YAAY,EAAE,CAAC;IAC/C,WAAW,IAAI,YAAY,EAAE,CAAC;IAC9B,8BAA8B,IAAI,YAAY,CAAC;CAChD;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAE3C,8EAA8E;IAC9E,kBAAkB,IAAI,gBAAgB,EAAE,CAAC;IACzC,wFAAwF;IACxF,8BAA8B,IAAI,gBAAgB,EAAE,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;IACvC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAEpC,WAAW,IAAI,uBAAuB,EAAE,CAAC;CAC1C;AAED;;;GAGG;AACH,oBAAY,YAAY,GAAG,uBAAuB,GAAG,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FlatGridItem.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/internal/flat-items/FlatGridItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { CategorizedPropertyTypes, FlatGridItemType } from \"./MutableFlatGridItem\";\r\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\r\nimport { PropertyCategory } from \"../../PropertyDataProvider\";\r\n\r\n/**\r\n * Base immutable data structure defining common methods and properties for categories and categorized properties\r\n * @beta\r\n */\r\nexport interface FlatGridItemBase {\r\n readonly isExpanded: boolean;\r\n readonly key: string;\r\n readonly selectionKey: string;\r\n readonly parentSelectionKey: string | undefined;\r\n readonly parentCategorySelectionKey: string | undefined;\r\n readonly depth: number;\r\n readonly label: string;\r\n readonly type: FlatGridItemType;\r\n readonly lastInNumberOfCategories: number;\r\n readonly isLastInRootCategory: boolean;\r\n getDescendantsAndSelf(): FlatGridItem[];\r\n getVisibleDescendantsAndSelf(): FlatGridItem[];\r\n getChildren(): FlatGridItem[];\r\n getLastVisibleDescendantOrSelf(): FlatGridItem;\r\n}\r\n\r\n/**\r\n * Data structure which describes methods and properties present on immutable [[GridCategoryItem]]\r\n * @beta\r\n */\r\nexport interface GridCategoryItem extends FlatGridItemBase {\r\n readonly type: FlatGridItemType.Category;\r\n readonly name: string;\r\n readonly derivedCategory: PropertyCategory;\r\n\r\n /** @deprecated Use [[getChildren]] and filter categories yourself. */\r\n getChildCategories(): GridCategoryItem[];\r\n /** @deprecated Use [[getDescendantsAndSelf]] and filter categories yourself. */\r\n getDescendantCategoriesAndSelf(): GridCategoryItem[];\r\n}\r\n\r\n/**\r\n * Data structure which describes methods and properties present on immutable [[CategorizedPropertyItem]] objects\r\n * @beta\r\n */\r\nexport interface CategorizedPropertyItem extends FlatGridItemBase {\r\n readonly type: CategorizedPropertyTypes;\r\n readonly derivedRecord: PropertyRecord;\r\n readonly parentCategorySelectionKey: string;\r\n readonly parentSelectionKey: string;\r\n\r\n getChildren(): CategorizedPropertyItem[];\r\n}\r\n\r\n/**\r\n * Type which describes immutable [[GridCategoryItem]] or [[CategorizedPropertyItem]]\r\n * @beta\r\n */\r\nexport type FlatGridItem = CategorizedPropertyItem | GridCategoryItem;\r\n"]}
1
+ {"version":3,"file":"FlatGridItem.js","sourceRoot":"","sources":["../../../../../../src/components-react/propertygrid/internal/flat-items/FlatGridItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module PropertyGrid\r\n */\r\nimport { CategorizedPropertyTypes, FlatGridItemType } from \"./MutableFlatGridItem\";\r\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\r\nimport { PropertyCategory } from \"../../PropertyDataProvider\";\r\n\r\n/**\r\n * Base immutable data structure defining common methods and properties for categories and categorized properties\r\n * @public\r\n */\r\nexport interface FlatGridItemBase {\r\n readonly isExpanded: boolean;\r\n readonly key: string;\r\n readonly selectionKey: string;\r\n readonly parentSelectionKey: string | undefined;\r\n readonly parentCategorySelectionKey: string | undefined;\r\n readonly depth: number;\r\n readonly label: string;\r\n readonly type: FlatGridItemType;\r\n readonly lastInNumberOfCategories: number;\r\n readonly isLastInRootCategory: boolean;\r\n getDescendantsAndSelf(): FlatGridItem[];\r\n getVisibleDescendantsAndSelf(): FlatGridItem[];\r\n getChildren(): FlatGridItem[];\r\n getLastVisibleDescendantOrSelf(): FlatGridItem;\r\n}\r\n\r\n/**\r\n * Data structure which describes methods and properties present on immutable [[GridCategoryItem]]\r\n * @public\r\n */\r\nexport interface GridCategoryItem extends FlatGridItemBase {\r\n readonly type: FlatGridItemType.Category;\r\n readonly name: string;\r\n readonly derivedCategory: PropertyCategory;\r\n\r\n /** @deprecated in 3.1. Use [[getChildren]] and filter categories yourself. */\r\n getChildCategories(): GridCategoryItem[];\r\n /** @deprecated in 3.1. Use [[getDescendantsAndSelf]] and filter categories yourself. */\r\n getDescendantCategoriesAndSelf(): GridCategoryItem[];\r\n}\r\n\r\n/**\r\n * Data structure which describes methods and properties present on immutable [[CategorizedPropertyItem]] objects\r\n * @public\r\n */\r\nexport interface CategorizedPropertyItem extends FlatGridItemBase {\r\n readonly type: CategorizedPropertyTypes;\r\n readonly derivedRecord: PropertyRecord;\r\n readonly parentCategorySelectionKey: string;\r\n readonly parentSelectionKey: string;\r\n\r\n getChildren(): CategorizedPropertyItem[];\r\n}\r\n\r\n/**\r\n * Type which describes immutable [[GridCategoryItem]] or [[CategorizedPropertyItem]]\r\n * @public\r\n */\r\nexport type FlatGridItem = CategorizedPropertyItem | GridCategoryItem;\r\n"]}