@itwin/tree-widget-react 3.4.1 → 4.0.0-alpha.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 (265) hide show
  1. package/CHANGELOG.md +1 -18
  2. package/README.md +3 -76
  3. package/lib/esm/tree-widget-react/components/SelectableTree.d.ts +1 -1
  4. package/lib/esm/tree-widget-react/components/SelectableTree.js +4 -4
  5. package/lib/esm/tree-widget-react/components/SelectableTree.js.map +1 -1
  6. package/lib/esm/tree-widget-react/components/TreeSelector.d.ts +1 -2
  7. package/lib/esm/tree-widget-react/components/TreeSelector.js +11 -14
  8. package/lib/esm/tree-widget-react/components/TreeSelector.js.map +1 -1
  9. package/lib/esm/tree-widget-react/components/TreeWidgetUiItemsProvider.d.ts +1 -2
  10. package/lib/esm/tree-widget-react/components/TreeWidgetUiItemsProvider.js +3 -5
  11. package/lib/esm/tree-widget-react/components/TreeWidgetUiItemsProvider.js.map +1 -1
  12. package/lib/esm/tree-widget-react/components/tree-header/TreeHeader.d.ts +1 -2
  13. package/lib/esm/tree-widget-react/components/tree-header/TreeHeader.js +6 -49
  14. package/lib/esm/tree-widget-react/components/tree-header/TreeHeader.js.map +1 -1
  15. package/lib/esm/tree-widget-react/components/tree-header/TreeHeader.scss +0 -1
  16. package/lib/esm/tree-widget-react/components/tree-header/TreeWithHeader.d.ts +1 -1
  17. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTree.d.ts +1 -2
  18. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.d.ts +4 -4
  19. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.js +10 -8
  20. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.js.map +1 -1
  21. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.d.ts +1 -1
  22. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.js +3 -3
  23. package/lib/esm/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.js.map +1 -1
  24. package/lib/esm/tree-widget-react/components/trees/categories-tree/UseCategoriesTree.js +1 -1
  25. package/lib/esm/tree-widget-react/components/trees/categories-tree/UseCategoriesTree.js.map +1 -1
  26. package/lib/esm/tree-widget-react/components/trees/common/FocusedInstancesContext.d.ts +4 -28
  27. package/lib/esm/tree-widget-react/components/trees/common/FocusedInstancesContext.js +2 -73
  28. package/lib/esm/tree-widget-react/components/trees/common/FocusedInstancesContext.js.map +1 -1
  29. package/lib/esm/tree-widget-react/components/trees/common/FocusedInstancesContextProvider.d.ts +7 -0
  30. package/lib/{cjs/tree-widget-react/components/trees/common/FocusedInstancesContext.js → esm/tree-widget-react/components/trees/common/FocusedInstancesContextProvider.js} +14 -34
  31. package/lib/esm/tree-widget-react/components/trees/common/FocusedInstancesContextProvider.js.map +1 -0
  32. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyFiltering.d.ts +1 -1
  33. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyFiltering.js +2 -2
  34. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyFiltering.js.map +1 -1
  35. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyVisibility.d.ts +2 -2
  36. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyVisibility.js +12 -10
  37. package/lib/esm/tree-widget-react/components/trees/common/UseHierarchyVisibility.js.map +1 -1
  38. package/lib/esm/tree-widget-react/components/trees/common/UseTelemetryContext.d.ts +1 -1
  39. package/lib/esm/tree-widget-react/components/trees/common/components/Delayed.d.ts +1 -1
  40. package/lib/esm/tree-widget-react/components/trees/common/components/ProgressOverlay.d.ts +1 -2
  41. package/lib/esm/tree-widget-react/components/trees/common/components/ProgressOverlay.js +3 -2
  42. package/lib/esm/tree-widget-react/components/trees/common/components/ProgressOverlay.js.map +1 -1
  43. package/lib/esm/tree-widget-react/components/trees/common/components/Tree.d.ts +4 -5
  44. package/lib/esm/tree-widget-react/components/trees/common/components/Tree.js +11 -12
  45. package/lib/esm/tree-widget-react/components/trees/common/components/Tree.js.map +1 -1
  46. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeVisibilityButton.css +8 -0
  47. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeVisibilityButton.d.ts +28 -0
  48. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeVisibilityButton.js +34 -0
  49. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeVisibilityButton.js.map +1 -0
  50. package/lib/esm/tree-widget-react/components/trees/common/components/TreeRenderer.d.ts +6 -12
  51. package/lib/esm/tree-widget-react/components/trees/common/components/TreeRenderer.js +5 -31
  52. package/lib/esm/tree-widget-react/components/trees/common/components/TreeRenderer.js.map +1 -1
  53. package/lib/esm/tree-widget-react/components/trees/common/components/UseVisibilityButtonHandler.d.ts +13 -0
  54. package/lib/esm/tree-widget-react/components/trees/common/{UseMultiCheckboxHandler.js → components/UseVisibilityButtonHandler.js} +7 -7
  55. package/lib/esm/tree-widget-react/components/trees/common/components/UseVisibilityButtonHandler.js.map +1 -0
  56. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTree.d.ts +2 -2
  57. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTree.js +2 -2
  58. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTree.js.map +1 -1
  59. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.d.ts +3 -4
  60. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.js +9 -8
  61. package/lib/esm/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.js.map +1 -1
  62. package/lib/esm/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTree.d.ts +1 -2
  63. package/lib/esm/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeComponent.d.ts +1 -2
  64. package/lib/esm/tree-widget-react/components/trees/imodel-content-tree/IModelContentTree.d.ts +1 -2
  65. package/lib/esm/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeComponent.d.ts +1 -2
  66. package/lib/esm/tree-widget-react/components/trees/index.d.ts +0 -1
  67. package/lib/esm/tree-widget-react/components/trees/index.js +0 -1
  68. package/lib/esm/tree-widget-react/components/trees/index.js.map +1 -1
  69. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTree.d.ts +1 -2
  70. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.d.ts +8 -9
  71. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.js +19 -16
  72. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.js.map +1 -1
  73. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.d.ts +2 -7
  74. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.js +9 -13
  75. package/lib/esm/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.js.map +1 -1
  76. package/lib/esm/tree-widget-react/components/trees/models-tree/UseModelsTree.d.ts +1 -1
  77. package/lib/esm/tree-widget-react/components/trees/models-tree/UseModelsTree.js +7 -14
  78. package/lib/esm/tree-widget-react/components/trees/models-tree/UseModelsTree.js.map +1 -1
  79. package/lib/esm/tree-widget-react/components/trees/models-tree/internal/ModelsTreeVisibilityHandler.js.map +1 -1
  80. package/package.json +19 -24
  81. package/lib/cjs/package.json +0 -1
  82. package/lib/cjs/tree-widget-react/TreeWidget.d.ts +0 -24
  83. package/lib/cjs/tree-widget-react/TreeWidget.js +0 -54
  84. package/lib/cjs/tree-widget-react/TreeWidget.js.map +0 -1
  85. package/lib/cjs/tree-widget-react/components/SelectableTree.d.ts +0 -47
  86. package/lib/cjs/tree-widget-react/components/SelectableTree.js +0 -107
  87. package/lib/cjs/tree-widget-react/components/SelectableTree.js.map +0 -1
  88. package/lib/cjs/tree-widget-react/components/SelectableTree.scss +0 -18
  89. package/lib/cjs/tree-widget-react/components/TreeSelector.d.ts +0 -31
  90. package/lib/cjs/tree-widget-react/components/TreeSelector.js +0 -30
  91. package/lib/cjs/tree-widget-react/components/TreeSelector.js.map +0 -1
  92. package/lib/cjs/tree-widget-react/components/TreeSelector.scss +0 -27
  93. package/lib/cjs/tree-widget-react/components/TreeWidgetUiItemsProvider.d.ts +0 -36
  94. package/lib/cjs/tree-widget-react/components/TreeWidgetUiItemsProvider.js +0 -74
  95. package/lib/cjs/tree-widget-react/components/TreeWidgetUiItemsProvider.js.map +0 -1
  96. package/lib/cjs/tree-widget-react/components/TreeWidgetUiItemsProvider.scss +0 -9
  97. package/lib/cjs/tree-widget-react/components/tree-header/TreeHeader.d.ts +0 -33
  98. package/lib/cjs/tree-widget-react/components/tree-header/TreeHeader.js +0 -75
  99. package/lib/cjs/tree-widget-react/components/tree-header/TreeHeader.js.map +0 -1
  100. package/lib/cjs/tree-widget-react/components/tree-header/TreeHeader.scss +0 -57
  101. package/lib/cjs/tree-widget-react/components/tree-header/TreeWithHeader.d.ts +0 -13
  102. package/lib/cjs/tree-widget-react/components/tree-header/TreeWithHeader.js +0 -20
  103. package/lib/cjs/tree-widget-react/components/tree-header/TreeWithHeader.js.map +0 -1
  104. package/lib/cjs/tree-widget-react/components/tree-header/TreeWithHeader.scss +0 -23
  105. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTree.d.ts +0 -12
  106. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTree.js +0 -22
  107. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTree.js.map +0 -1
  108. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.d.ts +0 -47
  109. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.js +0 -75
  110. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeButtons.js.map +0 -1
  111. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.d.ts +0 -53
  112. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.js +0 -73
  113. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeComponent.js.map +0 -1
  114. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeDefinition.d.ts +0 -23
  115. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeDefinition.js +0 -207
  116. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesTreeDefinition.js.map +0 -1
  117. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesVisibilityHandler.d.ts +0 -28
  118. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesVisibilityHandler.js +0 -91
  119. package/lib/cjs/tree-widget-react/components/trees/categories-tree/CategoriesVisibilityHandler.js.map +0 -1
  120. package/lib/cjs/tree-widget-react/components/trees/categories-tree/UseCategoriesTree.d.ts +0 -22
  121. package/lib/cjs/tree-widget-react/components/trees/categories-tree/UseCategoriesTree.js +0 -117
  122. package/lib/cjs/tree-widget-react/components/trees/categories-tree/UseCategoriesTree.js.map +0 -1
  123. package/lib/cjs/tree-widget-react/components/trees/common/CategoriesVisibilityUtils.d.ts +0 -42
  124. package/lib/cjs/tree-widget-react/components/trees/common/CategoriesVisibilityUtils.js +0 -119
  125. package/lib/cjs/tree-widget-react/components/trees/common/CategoriesVisibilityUtils.js.map +0 -1
  126. package/lib/cjs/tree-widget-react/components/trees/common/FocusedInstancesContext.d.ts +0 -35
  127. package/lib/cjs/tree-widget-react/components/trees/common/FocusedInstancesContext.js.map +0 -1
  128. package/lib/cjs/tree-widget-react/components/trees/common/Rxjs.d.ts +0 -10
  129. package/lib/cjs/tree-widget-react/components/trees/common/Rxjs.js +0 -46
  130. package/lib/cjs/tree-widget-react/components/trees/common/Rxjs.js.map +0 -1
  131. package/lib/cjs/tree-widget-react/components/trees/common/Tooltip.d.ts +0 -17
  132. package/lib/cjs/tree-widget-react/components/trees/common/Tooltip.js +0 -29
  133. package/lib/cjs/tree-widget-react/components/trees/common/Tooltip.js.map +0 -1
  134. package/lib/cjs/tree-widget-react/components/trees/common/TreeErrors.d.ts +0 -9
  135. package/lib/cjs/tree-widget-react/components/trees/common/TreeErrors.js +0 -19
  136. package/lib/cjs/tree-widget-react/components/trees/common/TreeErrors.js.map +0 -1
  137. package/lib/cjs/tree-widget-react/components/trees/common/UseActiveViewport.d.ts +0 -7
  138. package/lib/cjs/tree-widget-react/components/trees/common/UseActiveViewport.js +0 -25
  139. package/lib/cjs/tree-widget-react/components/trees/common/UseActiveViewport.js.map +0 -1
  140. package/lib/cjs/tree-widget-react/components/trees/common/UseFiltering.d.ts +0 -11
  141. package/lib/cjs/tree-widget-react/components/trees/common/UseFiltering.js +0 -28
  142. package/lib/cjs/tree-widget-react/components/trees/common/UseFiltering.js.map +0 -1
  143. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchiesLocalization.d.ts +0 -7
  144. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchiesLocalization.js +0 -33
  145. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchiesLocalization.js.map +0 -1
  146. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyFiltering.d.ts +0 -13
  147. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyFiltering.js +0 -158
  148. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyFiltering.js.map +0 -1
  149. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyVisibility.d.ts +0 -55
  150. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyVisibility.js +0 -114
  151. package/lib/cjs/tree-widget-react/components/trees/common/UseHierarchyVisibility.js.map +0 -1
  152. package/lib/cjs/tree-widget-react/components/trees/common/UseIModelChangeListener.d.ts +0 -8
  153. package/lib/cjs/tree-widget-react/components/trees/common/UseIModelChangeListener.js +0 -19
  154. package/lib/cjs/tree-widget-react/components/trees/common/UseIModelChangeListener.js.map +0 -1
  155. package/lib/cjs/tree-widget-react/components/trees/common/UseMultiCheckboxHandler.d.ts +0 -12
  156. package/lib/cjs/tree-widget-react/components/trees/common/UseMultiCheckboxHandler.js +0 -34
  157. package/lib/cjs/tree-widget-react/components/trees/common/UseMultiCheckboxHandler.js.map +0 -1
  158. package/lib/cjs/tree-widget-react/components/trees/common/UseNodeHighlighting.d.ts +0 -20
  159. package/lib/cjs/tree-widget-react/components/trees/common/UseNodeHighlighting.js +0 -131
  160. package/lib/cjs/tree-widget-react/components/trees/common/UseNodeHighlighting.js.map +0 -1
  161. package/lib/cjs/tree-widget-react/components/trees/common/UseTelemetryContext.d.ts +0 -29
  162. package/lib/cjs/tree-widget-react/components/trees/common/UseTelemetryContext.js +0 -49
  163. package/lib/cjs/tree-widget-react/components/trees/common/UseTelemetryContext.js.map +0 -1
  164. package/lib/cjs/tree-widget-react/components/trees/common/Utils.d.ts +0 -27
  165. package/lib/cjs/tree-widget-react/components/trees/common/Utils.js +0 -66
  166. package/lib/cjs/tree-widget-react/components/trees/common/Utils.js.map +0 -1
  167. package/lib/cjs/tree-widget-react/components/trees/common/components/Delayed.d.ts +0 -5
  168. package/lib/cjs/tree-widget-react/components/trees/common/components/Delayed.js +0 -30
  169. package/lib/cjs/tree-widget-react/components/trees/common/components/Delayed.js.map +0 -1
  170. package/lib/cjs/tree-widget-react/components/trees/common/components/ProgressOverlay.d.ts +0 -4
  171. package/lib/cjs/tree-widget-react/components/trees/common/components/ProgressOverlay.js +0 -15
  172. package/lib/cjs/tree-widget-react/components/trees/common/components/ProgressOverlay.js.map +0 -1
  173. package/lib/cjs/tree-widget-react/components/trees/common/components/ProgressOverlay.scss +0 -21
  174. package/lib/cjs/tree-widget-react/components/trees/common/components/Tree.d.ts +0 -44
  175. package/lib/cjs/tree-widget-react/components/trees/common/components/Tree.js +0 -98
  176. package/lib/cjs/tree-widget-react/components/trees/common/components/Tree.js.map +0 -1
  177. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.d.ts +0 -27
  178. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.js +0 -27
  179. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.js.map +0 -1
  180. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeRenderer.d.ts +0 -11
  181. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeRenderer.js +0 -19
  182. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeNodeRenderer.js.map +0 -1
  183. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeRenderer.d.ts +0 -19
  184. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeRenderer.js +0 -48
  185. package/lib/cjs/tree-widget-react/components/trees/common/components/TreeRenderer.js.map +0 -1
  186. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTree.d.ts +0 -21
  187. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTree.js +0 -26
  188. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTree.js.map +0 -1
  189. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.d.ts +0 -11
  190. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.js +0 -26
  191. package/lib/cjs/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.js.map +0 -1
  192. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTree.d.ts +0 -11
  193. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTree.js +0 -38
  194. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTree.js.map +0 -1
  195. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeComponent.d.ts +0 -26
  196. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeComponent.js +0 -35
  197. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeComponent.js.map +0 -1
  198. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeDefinition.d.ts +0 -24
  199. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeDefinition.js +0 -265
  200. package/lib/cjs/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeDefinition.js.map +0 -1
  201. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTree.d.ts +0 -11
  202. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTree.js +0 -50
  203. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTree.js.map +0 -1
  204. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeComponent.d.ts +0 -26
  205. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeComponent.js +0 -35
  206. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeComponent.js.map +0 -1
  207. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeDefinition.d.ts +0 -29
  208. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeDefinition.js +0 -622
  209. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/IModelContentTreeDefinition.js.map +0 -1
  210. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/internal/IModelContentTreeIdsCache.d.ts +0 -26
  211. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/internal/IModelContentTreeIdsCache.js +0 -203
  212. package/lib/cjs/tree-widget-react/components/trees/imodel-content-tree/internal/IModelContentTreeIdsCache.js.map +0 -1
  213. package/lib/cjs/tree-widget-react/components/trees/index.d.ts +0 -18
  214. package/lib/cjs/tree-widget-react/components/trees/index.js +0 -39
  215. package/lib/cjs/tree-widget-react/components/trees/index.js.map +0 -1
  216. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTree.d.ts +0 -12
  217. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTree.js +0 -26
  218. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTree.js.map +0 -1
  219. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.d.ts +0 -65
  220. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.js +0 -144
  221. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeButtons.js.map +0 -1
  222. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.d.ts +0 -78
  223. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.js +0 -106
  224. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeComponent.js.map +0 -1
  225. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeDefinition.d.ts +0 -79
  226. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeDefinition.js +0 -650
  227. package/lib/cjs/tree-widget-react/components/trees/models-tree/ModelsTreeDefinition.js.map +0 -1
  228. package/lib/cjs/tree-widget-react/components/trees/models-tree/UseModelsTree.d.ts +0 -44
  229. package/lib/cjs/tree-widget-react/components/trees/models-tree/UseModelsTree.js +0 -312
  230. package/lib/cjs/tree-widget-react/components/trees/models-tree/UseModelsTree.js.map +0 -1
  231. package/lib/cjs/tree-widget-react/components/trees/models-tree/Utils.d.ts +0 -7
  232. package/lib/cjs/tree-widget-react/components/trees/models-tree/Utils.js +0 -25
  233. package/lib/cjs/tree-widget-react/components/trees/models-tree/Utils.js.map +0 -1
  234. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/AlwaysAndNeverDrawnElementInfo.d.ts +0 -29
  235. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/AlwaysAndNeverDrawnElementInfo.js +0 -142
  236. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/AlwaysAndNeverDrawnElementInfo.js.map +0 -1
  237. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/FilteredTree.d.ts +0 -25
  238. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/FilteredTree.js +0 -178
  239. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/FilteredTree.js.map +0 -1
  240. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeIdsCache.d.ts +0 -44
  241. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeIdsCache.js +0 -385
  242. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeIdsCache.js.map +0 -1
  243. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeNode.d.ts +0 -37
  244. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeNode.js +0 -57
  245. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeNode.js.map +0 -1
  246. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeVisibilityHandler.d.ts +0 -106
  247. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeVisibilityHandler.js +0 -672
  248. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/ModelsTreeVisibilityHandler.js.map +0 -1
  249. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/VisibilityChangeEventListener.d.ts +0 -12
  250. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/VisibilityChangeEventListener.js +0 -52
  251. package/lib/cjs/tree-widget-react/components/trees/models-tree/internal/VisibilityChangeEventListener.js.map +0 -1
  252. package/lib/cjs/tree-widget-react/components/utils/IsPromiseLike.d.ts +0 -6
  253. package/lib/cjs/tree-widget-react/components/utils/IsPromiseLike.js +0 -16
  254. package/lib/cjs/tree-widget-react/components/utils/IsPromiseLike.js.map +0 -1
  255. package/lib/cjs/tree-widget-react.d.ts +0 -6
  256. package/lib/cjs/tree-widget-react.js +0 -32
  257. package/lib/cjs/tree-widget-react.js.map +0 -1
  258. package/lib/esm/tree-widget-react/components/trees/common/UseMultiCheckboxHandler.d.ts +0 -12
  259. package/lib/esm/tree-widget-react/components/trees/common/UseMultiCheckboxHandler.js.map +0 -1
  260. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.d.ts +0 -27
  261. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.js +0 -23
  262. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.js.map +0 -1
  263. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeRenderer.d.ts +0 -11
  264. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeRenderer.js +0 -16
  265. package/lib/esm/tree-widget-react/components/trees/common/components/TreeNodeRenderer.js.map +0 -1
@@ -1,98 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Tree = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const react_1 = require("react");
10
- const core_bentley_1 = require("@itwin/core-bentley");
11
- const itwinui_react_1 = require("@itwin/itwinui-react");
12
- const presentation_components_1 = require("@itwin/presentation-components");
13
- const presentation_hierarchies_react_1 = require("@itwin/presentation-hierarchies-react");
14
- const TreeWidget_js_1 = require("../../../../TreeWidget.js");
15
- const UseHierarchiesLocalization_js_1 = require("../UseHierarchiesLocalization.js");
16
- const UseHierarchyFiltering_js_1 = require("../UseHierarchyFiltering.js");
17
- const UseIModelChangeListener_js_1 = require("../UseIModelChangeListener.js");
18
- const UseNodeHighlighting_js_1 = require("../UseNodeHighlighting.js");
19
- const UseTelemetryContext_js_1 = require("../UseTelemetryContext.js");
20
- const Utils_js_1 = require("../Utils.js");
21
- const Delayed_js_1 = require("./Delayed.js");
22
- const ProgressOverlay_js_1 = require("./ProgressOverlay.js");
23
- /**
24
- * Default tree component that manages tree state and renders using supplied `treeRenderer`.
25
- * @beta
26
- */
27
- function Tree({ getSchemaContext, hierarchyLevelSizeLimit, selectionStorage, imodelAccess: providedIModelAccess, ...props }) {
28
- const defaultHierarchyLevelSizeLimit = hierarchyLevelSizeLimit ?? 1000;
29
- const imodelAccess = (0, react_1.useMemo)(() => {
30
- return providedIModelAccess ?? (0, Utils_js_1.createIModelAccess)({ getSchemaContext, imodel: props.imodel });
31
- }, [providedIModelAccess, getSchemaContext, props.imodel]);
32
- return ((0, jsx_runtime_1.jsx)(presentation_components_1.SchemaMetadataContextProvider, { imodel: props.imodel, schemaContextProvider: getSchemaContext, children: (0, jsx_runtime_1.jsx)(TreeImpl, { ...props, selectionStorage: selectionStorage, imodelAccess: imodelAccess, defaultHierarchyLevelSizeLimit: defaultHierarchyLevelSizeLimit }) }));
33
- }
34
- exports.Tree = Tree;
35
- function TreeImpl({ imodel, imodelAccess, treeName, noDataMessage, getFilteredPaths, defaultHierarchyLevelSizeLimit, getHierarchyDefinition, selectionPredicate, selectionMode, onReload, treeRenderer, density, highlight, selectionStorage, }) {
36
- const localizedStrings = (0, UseHierarchiesLocalization_js_1.useHierarchiesLocalization)();
37
- const { onFeatureUsed, onPerformanceMeasured } = (0, UseTelemetryContext_js_1.useTelemetryContext)();
38
- const [imodelChanged] = (0, react_1.useState)(new core_bentley_1.BeEvent());
39
- const { rootNodes, getNode, isLoading, selectNodes: selectNodesAction, setFormatter: _setFormatter, expandNode, ...treeProps } = (0, presentation_hierarchies_react_1.useIModelUnifiedSelectionTree)({
40
- imodelAccess,
41
- imodelChanged,
42
- getHierarchyDefinition,
43
- getFilteredPaths,
44
- sourceName: treeName,
45
- localizedStrings,
46
- selectionStorage,
47
- onPerformanceMeasured: (action, duration) => {
48
- if (action === "reload") {
49
- onReload?.();
50
- }
51
- onPerformanceMeasured(action, duration);
52
- },
53
- onHierarchyLimitExceeded: () => onFeatureUsed({ featureId: "hierarchy-level-size-limit-hit", reportInteraction: false }),
54
- onHierarchyLoadError: ({ type, error }) => {
55
- // eslint-disable-next-line no-console
56
- console.error(error);
57
- onFeatureUsed({ featureId: `error-${type}`, reportInteraction: false });
58
- },
59
- });
60
- (0, UseIModelChangeListener_js_1.useIModelChangeListener)({ imodel, action: (0, react_1.useCallback)(() => imodelChanged.raiseEvent(), [imodelChanged]) });
61
- const selectNodes = useSelectionPredicate({
62
- action: (0, UseTelemetryContext_js_1.useReportingAction)({ action: selectNodesAction }),
63
- predicate: selectionPredicate,
64
- getNode,
65
- });
66
- const { onNodeClick, onNodeKeyDown } = (0, presentation_hierarchies_react_1.useSelectionHandler)({ rootNodes, selectNodes, selectionMode: selectionMode ?? "single" });
67
- const { filteringDialog, onFilterClick } = (0, UseHierarchyFiltering_js_1.useHierarchyLevelFiltering)({
68
- imodel,
69
- defaultHierarchyLevelSizeLimit,
70
- });
71
- const reportingExpandNode = (0, UseTelemetryContext_js_1.useReportingAction)({ action: expandNode });
72
- const reportingOnFilterClicked = (0, UseTelemetryContext_js_1.useReportingAction)({ action: onFilterClick });
73
- const { getLabel } = (0, UseNodeHighlighting_js_1.useNodeHighlighting)({ rootNodes, highlight });
74
- if (rootNodes === undefined) {
75
- return ((0, jsx_runtime_1.jsx)(itwinui_react_1.Flex, { alignItems: "center", justifyContent: "center", flexDirection: "column", style: { width: "100%", height: "100%" }, children: (0, jsx_runtime_1.jsx)(Delayed_js_1.Delayed, { show: true, children: (0, jsx_runtime_1.jsx)(itwinui_react_1.ProgressRadial, { size: "large" }) }) }));
76
- }
77
- if (rootNodes.length === 0 && !isLoading) {
78
- return ((0, jsx_runtime_1.jsx)(itwinui_react_1.Flex, { alignItems: "center", justifyContent: "center", flexDirection: "column", style: { width: "100%", height: "100%" }, children: noDataMessage ? noDataMessage : (0, jsx_runtime_1.jsx)(itwinui_react_1.Text, { children: TreeWidget_js_1.TreeWidget.translate("baseTree.dataIsNotAvailable") }) }));
79
- }
80
- const treeRendererProps = {
81
- ...treeProps,
82
- rootNodes,
83
- onNodeClick,
84
- onNodeKeyDown,
85
- expandNode: reportingExpandNode,
86
- onFilterClick: reportingOnFilterClicked,
87
- getLabel,
88
- size: density === "enlarged" ? "default" : "small",
89
- };
90
- return ((0, jsx_runtime_1.jsxs)("div", { style: { position: "relative", height: "100%", overflow: "hidden" }, children: [(0, jsx_runtime_1.jsxs)("div", { id: "tw-tree-renderer-container", style: { height: "100%" }, children: [treeRenderer(treeRendererProps), filteringDialog] }), (0, jsx_runtime_1.jsx)(Delayed_js_1.Delayed, { show: isLoading, children: (0, jsx_runtime_1.jsx)(ProgressOverlay_js_1.ProgressOverlay, {}) })] }));
91
- }
92
- function useSelectionPredicate({ action, predicate, getNode, }) {
93
- return (0, react_1.useCallback)((nodeIds, changeType) => action(nodeIds.filter((nodeId) => {
94
- const node = getNode(nodeId);
95
- return node && (!predicate || predicate(node));
96
- }), changeType), [action, getNode, predicate]);
97
- }
98
- //# sourceMappingURL=Tree.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/Tree.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,iCAAuD;AACvD,sDAA8C;AAC9C,wDAAkE;AAClE,4EAA+E;AAC/E,0FAA2G;AAC3G,6DAAuD;AACvD,oFAA8E;AAC9E,0EAAyE;AACzE,8EAAwE;AACxE,sEAAgE;AAChE,sEAAoF;AACpF,0CAAiD;AACjD,6CAAuC;AACvC,6DAAuD;AAkDvD;;;GAGG;AACH,SAAgB,IAAI,CAAC,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAAG,KAAK,EAAa;IAC3I,MAAM,8BAA8B,GAAG,uBAAuB,IAAI,IAAI,CAAC;IAEvE,MAAM,YAAY,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAChC,OAAO,oBAAoB,IAAI,IAAA,6BAAkB,EAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAChG,CAAC,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3D,OAAO,CACL,uBAAC,uDAA6B,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,qBAAqB,EAAE,gBAAgB,YAC1F,uBAAC,QAAQ,OAAK,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,8BAA8B,EAAE,8BAA8B,GAAI,GACzH,CACjC,CAAC;AACJ,CAAC;AAZD,oBAYC;AAED,SAAS,QAAQ,CAAC,EAChB,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,8BAA8B,EAC9B,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,OAAO,EACP,SAAS,EACT,gBAAgB,GAC+F;IAC/G,MAAM,gBAAgB,GAAG,IAAA,0DAA0B,GAAE,CAAC;IACtD,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,GAAG,IAAA,4CAAmB,GAAE,CAAC;IACvE,MAAM,CAAC,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,sBAAO,EAAc,CAAC,CAAC;IAC5D,MAAM,EACJ,SAAS,EACT,OAAO,EACP,SAAS,EACT,WAAW,EAAE,iBAAiB,EAC9B,YAAY,EAAE,aAAa,EAC3B,UAAU,EACV,GAAG,SAAS,EACb,GAAG,IAAA,8DAA6B,EAAC;QAChC,YAAY;QACZ,aAAa;QACb,sBAAsB;QACtB,gBAAgB;QAChB,UAAU,EAAE,QAAQ;QACpB,gBAAgB;QAChB,gBAAgB;QAChB,qBAAqB,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;YAC1C,IAAI,MAAM,KAAK,QAAQ,EAAE;gBACvB,QAAQ,EAAE,EAAE,CAAC;aACd;YACD,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,wBAAwB,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC;QACxH,oBAAoB,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACxC,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,aAAa,CAAC,EAAE,SAAS,EAAE,SAAS,IAAI,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1E,CAAC;KACF,CAAC,CAAC;IACH,IAAA,oDAAuB,EAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;IAE5G,MAAM,WAAW,GAAG,qBAAqB,CAAC;QACxC,MAAM,EAAE,IAAA,2CAAkB,EAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;QACzD,SAAS,EAAE,kBAAkB;QAC7B,OAAO;KACR,CAAC,CAAC;IACH,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,IAAA,oDAAmB,EAAC,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,IAAI,QAAQ,EAAE,CAAC,CAAC;IACjI,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,IAAA,qDAA0B,EAAC;QACpE,MAAM;QACN,8BAA8B;KAC/B,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,IAAA,2CAAkB,EAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACvE,MAAM,wBAAwB,GAAG,IAAA,2CAAkB,EAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAC/E,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,4CAAmB,EAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IAEnE,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,OAAO,CACL,uBAAC,oBAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,cAAc,EAAC,QAAQ,EAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAC/G,uBAAC,oBAAO,IAAC,IAAI,EAAE,IAAI,YACjB,uBAAC,8BAAc,IAAC,IAAI,EAAC,OAAO,GAAG,GACvB,GACL,CACR,CAAC;KACH;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;QACxC,OAAO,CACL,uBAAC,oBAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,cAAc,EAAC,QAAQ,EAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAC9G,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,uBAAC,oBAAI,cAAE,0BAAU,CAAC,SAAS,CAAC,6BAA6B,CAAC,GAAQ,GAC9F,CACR,CAAC;KACH;IAED,MAAM,iBAAiB,GAA6C;QAClE,GAAG,SAAS;QACZ,SAAS;QACT,WAAW;QACX,aAAa;QACb,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,wBAAwB;QACvC,QAAQ;QACR,IAAI,EAAE,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;KACnD,CAAC;IAEF,OAAO,CACL,iCAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aACtE,iCAAK,EAAE,EAAC,4BAA4B,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,aAC3D,YAAY,CAAC,iBAAiB,CAAC,EAC/B,eAAe,IACZ,EACN,uBAAC,oBAAO,IAAC,IAAI,EAAE,SAAS,YACtB,uBAAC,oCAAe,KAAG,GACX,IACN,CACP,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,EAC7B,MAAM,EACN,SAAS,EACT,OAAO,GAKR;IACC,OAAO,IAAA,mBAAW,EAChB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CACtB,MAAM,CACJ,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAI,IAAI,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,EACF,UAAU,CACX,EACH,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAC7B,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { useCallback, useMemo, useState } from \"react\";\nimport { BeEvent } from \"@itwin/core-bentley\";\nimport { Flex, ProgressRadial, Text } from \"@itwin/itwinui-react\";\nimport { SchemaMetadataContextProvider } from \"@itwin/presentation-components\";\nimport { useIModelUnifiedSelectionTree, useSelectionHandler } from \"@itwin/presentation-hierarchies-react\";\nimport { TreeWidget } from \"../../../../TreeWidget.js\";\nimport { useHierarchiesLocalization } from \"../UseHierarchiesLocalization.js\";\nimport { useHierarchyLevelFiltering } from \"../UseHierarchyFiltering.js\";\nimport { useIModelChangeListener } from \"../UseIModelChangeListener.js\";\nimport { useNodeHighlighting } from \"../UseNodeHighlighting.js\";\nimport { useReportingAction, useTelemetryContext } from \"../UseTelemetryContext.js\";\nimport { createIModelAccess } from \"../Utils.js\";\nimport { Delayed } from \"./Delayed.js\";\nimport { ProgressOverlay } from \"./ProgressOverlay.js\";\n\nimport type { MarkRequired } from \"@itwin/core-bentley\";\nimport type { FunctionProps } from \"../Utils.js\";\nimport type { ReactNode } from \"react\";\nimport type { IModelConnection } from \"@itwin/core-frontend\";\nimport type { SchemaContext } from \"@itwin/ecschema-metadata\";\nimport type { PresentationHierarchyNode, SelectionStorage, useIModelTree } from \"@itwin/presentation-hierarchies-react\";\nimport type { HighlightInfo } from \"../UseNodeHighlighting.js\";\nimport type { TreeRendererProps } from \"./TreeRenderer.js\";\n\n/** @beta */\nexport type TreeProps = Pick<FunctionProps<typeof useIModelTree>, \"getFilteredPaths\" | \"getHierarchyDefinition\"> &\n Partial<Pick<FunctionProps<typeof useSelectionHandler>, \"selectionMode\">> & {\n /** iModel connection that should be used to pull data from. */\n imodel: IModelConnection;\n /** Callback for getting `SchemaContext` for specific iModel. */\n getSchemaContext: (imodel: IModelConnection) => SchemaContext;\n /** Unique tree component name that will be used as unified selection change event source when selecting node. */\n treeName: string;\n /** Unified selection storage that should be used by tree to handle tree selection changes. */\n selectionStorage: SelectionStorage;\n /**\n * An optional predicate to allow or prohibit selection of a node.\n * When not supplied, all nodes are selectable.\n */\n selectionPredicate?: (node: PresentationHierarchyNode) => boolean;\n /** Tree renderer that should be used to render tree data. */\n treeRenderer: (\n treeProps: Required<\n Pick<\n TreeRendererProps,\n \"rootNodes\" | \"expandNode\" | \"onNodeClick\" | \"onNodeKeyDown\" | \"onFilterClick\" | \"isNodeSelected\" | \"getHierarchyLevelDetails\" | \"size\" | \"getLabel\"\n >\n >,\n ) => ReactNode;\n /** Custom iModel access that is stored outside tree component. If not provided it new iModel access will be created using `imodel` prop. */\n imodelAccess?: FunctionProps<typeof useIModelTree>[\"imodelAccess\"];\n /** Size limit that should be applied on each hierarchy level. Default to `1000`. */\n hierarchyLevelSizeLimit?: number;\n /** Modifies the density of tree nodes. `enlarged` tree nodes have bigger button hit boxes. */\n density?: \"default\" | \"enlarged\";\n /** Message that should be renderer if there are no tree nodes. */\n noDataMessage?: ReactNode;\n /** Callback that this invoked when tree reloads. */\n onReload?: () => void;\n /** Options for highlighting node labels. */\n highlight?: HighlightInfo;\n };\n\n/**\n * Default tree component that manages tree state and renders using supplied `treeRenderer`.\n * @beta\n */\nexport function Tree({ getSchemaContext, hierarchyLevelSizeLimit, selectionStorage, imodelAccess: providedIModelAccess, ...props }: TreeProps) {\n const defaultHierarchyLevelSizeLimit = hierarchyLevelSizeLimit ?? 1000;\n\n const imodelAccess = useMemo(() => {\n return providedIModelAccess ?? createIModelAccess({ getSchemaContext, imodel: props.imodel });\n }, [providedIModelAccess, getSchemaContext, props.imodel]);\n\n return (\n <SchemaMetadataContextProvider imodel={props.imodel} schemaContextProvider={getSchemaContext}>\n <TreeImpl {...props} selectionStorage={selectionStorage} imodelAccess={imodelAccess} defaultHierarchyLevelSizeLimit={defaultHierarchyLevelSizeLimit} />\n </SchemaMetadataContextProvider>\n );\n}\n\nfunction TreeImpl({\n imodel,\n imodelAccess,\n treeName,\n noDataMessage,\n getFilteredPaths,\n defaultHierarchyLevelSizeLimit,\n getHierarchyDefinition,\n selectionPredicate,\n selectionMode,\n onReload,\n treeRenderer,\n density,\n highlight,\n selectionStorage,\n}: MarkRequired<Omit<TreeProps, \"getSchemaContext\">, \"imodelAccess\"> & { defaultHierarchyLevelSizeLimit: number }) {\n const localizedStrings = useHierarchiesLocalization();\n const { onFeatureUsed, onPerformanceMeasured } = useTelemetryContext();\n const [imodelChanged] = useState(new BeEvent<() => void>());\n const {\n rootNodes,\n getNode,\n isLoading,\n selectNodes: selectNodesAction,\n setFormatter: _setFormatter,\n expandNode,\n ...treeProps\n } = useIModelUnifiedSelectionTree({\n imodelAccess,\n imodelChanged,\n getHierarchyDefinition,\n getFilteredPaths,\n sourceName: treeName,\n localizedStrings,\n selectionStorage,\n onPerformanceMeasured: (action, duration) => {\n if (action === \"reload\") {\n onReload?.();\n }\n onPerformanceMeasured(action, duration);\n },\n onHierarchyLimitExceeded: () => onFeatureUsed({ featureId: \"hierarchy-level-size-limit-hit\", reportInteraction: false }),\n onHierarchyLoadError: ({ type, error }) => {\n // eslint-disable-next-line no-console\n console.error(error);\n onFeatureUsed({ featureId: `error-${type}`, reportInteraction: false });\n },\n });\n useIModelChangeListener({ imodel, action: useCallback(() => imodelChanged.raiseEvent(), [imodelChanged]) });\n\n const selectNodes = useSelectionPredicate({\n action: useReportingAction({ action: selectNodesAction }),\n predicate: selectionPredicate,\n getNode,\n });\n const { onNodeClick, onNodeKeyDown } = useSelectionHandler({ rootNodes, selectNodes, selectionMode: selectionMode ?? \"single\" });\n const { filteringDialog, onFilterClick } = useHierarchyLevelFiltering({\n imodel,\n defaultHierarchyLevelSizeLimit,\n });\n const reportingExpandNode = useReportingAction({ action: expandNode });\n const reportingOnFilterClicked = useReportingAction({ action: onFilterClick });\n const { getLabel } = useNodeHighlighting({ rootNodes, highlight });\n\n if (rootNodes === undefined) {\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\" flexDirection=\"column\" style={{ width: \"100%\", height: \"100%\" }}>\n <Delayed show={true}>\n <ProgressRadial size=\"large\" />\n </Delayed>\n </Flex>\n );\n }\n\n if (rootNodes.length === 0 && !isLoading) {\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\" flexDirection=\"column\" style={{ width: \"100%\", height: \"100%\" }}>\n {noDataMessage ? noDataMessage : <Text>{TreeWidget.translate(\"baseTree.dataIsNotAvailable\")}</Text>}\n </Flex>\n );\n }\n\n const treeRendererProps: FunctionProps<TreeProps[\"treeRenderer\"]> = {\n ...treeProps,\n rootNodes,\n onNodeClick,\n onNodeKeyDown,\n expandNode: reportingExpandNode,\n onFilterClick: reportingOnFilterClicked,\n getLabel,\n size: density === \"enlarged\" ? \"default\" : \"small\",\n };\n\n return (\n <div style={{ position: \"relative\", height: \"100%\", overflow: \"hidden\" }}>\n <div id=\"tw-tree-renderer-container\" style={{ height: \"100%\" }}>\n {treeRenderer(treeRendererProps)}\n {filteringDialog}\n </div>\n <Delayed show={isLoading}>\n <ProgressOverlay />\n </Delayed>\n </div>\n );\n}\n\nfunction useSelectionPredicate({\n action,\n predicate,\n getNode,\n}: {\n action: (...args: any[]) => void;\n predicate?: (node: PresentationHierarchyNode) => boolean;\n getNode: (nodeId: string) => PresentationHierarchyNode | undefined;\n}): ReturnType<typeof useIModelUnifiedSelectionTree>[\"selectNodes\"] {\n return useCallback(\n (nodeIds, changeType) =>\n action(\n nodeIds.filter((nodeId) => {\n const node = getNode(nodeId);\n return node && (!predicate || predicate(node));\n }),\n changeType,\n ),\n [action, getNode, predicate],\n );\n}\n"]}
@@ -1,27 +0,0 @@
1
- import { Checkbox } from "@itwin/itwinui-react";
2
- import type { PresentationHierarchyNode, RenderedTreeNode } from "@itwin/presentation-hierarchies-react";
3
- import type { ComponentPropsWithoutRef } from "react";
4
- /**
5
- * Data structure that describes tree node checkbox state.
6
- * @beta
7
- */
8
- interface TreeNodeCheckboxState {
9
- state: "on" | "off" | "partial";
10
- isDisabled?: boolean;
11
- tooltip?: string;
12
- }
13
- /** @beta */
14
- export interface TreeCheckboxProps {
15
- /** Callback that should be invoked when checkbox is clicked. */
16
- onCheckboxClicked: (node: PresentationHierarchyNode, checked: boolean) => void;
17
- /** Callback that should be used to determine current checkbox state. */
18
- getCheckboxState: (node: PresentationHierarchyNode) => TreeNodeCheckboxState;
19
- }
20
- /** @internal */
21
- type TreeNodeCheckboxProps = TreeCheckboxProps & Omit<ComponentPropsWithoutRef<typeof Checkbox>, "onClick" | "checked" | "onChange" | "indeterminate" | "disabled" | "title">;
22
- /** @internal */
23
- export declare function TreeNodeCheckbox({ node, onCheckboxClicked, getCheckboxState, ...props }: TreeNodeCheckboxProps & {
24
- node: RenderedTreeNode;
25
- }): JSX.Element | null;
26
- export {};
27
- //# sourceMappingURL=TreeNodeCheckbox.d.ts.map
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TreeNodeCheckbox = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const itwinui_react_1 = require("@itwin/itwinui-react");
10
- const presentation_hierarchies_react_1 = require("@itwin/presentation-hierarchies-react");
11
- /** @internal */
12
- function TreeNodeCheckbox({ node, onCheckboxClicked, getCheckboxState, ...props }) {
13
- if ("type" in node || !(0, presentation_hierarchies_react_1.isPresentationHierarchyNode)(node)) {
14
- return null;
15
- }
16
- const checkboxState = getCheckboxState(node);
17
- return ((0, jsx_runtime_1.jsx)(TooltipWrapper, { content: checkboxState.tooltip, children: (0, jsx_runtime_1.jsx)(itwinui_react_1.Checkbox, { ...props, checked: checkboxState.state === "on", onClick: (e) => {
18
- e.stopPropagation();
19
- }, onChange: (e) => {
20
- onCheckboxClicked(node, e.currentTarget.checked);
21
- }, indeterminate: checkboxState.state === "partial", disabled: checkboxState.isDisabled, "aria-label": checkboxState.tooltip }) }));
22
- }
23
- exports.TreeNodeCheckbox = TreeNodeCheckbox;
24
- function TooltipWrapper({ content, children }) {
25
- return !!content ? ((0, jsx_runtime_1.jsx)(itwinui_react_1.Tooltip, { content: content, placement: "left", children: children })) : ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children }));
26
- }
27
- //# sourceMappingURL=TreeNodeCheckbox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TreeNodeCheckbox.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/TreeNodeCheckbox.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,wDAAyD;AACzD,0FAAoF;AA2BpF,gBAAgB;AAChB,SAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,KAAK,EAAsD;IAC1I,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,IAAA,4DAA2B,EAAC,IAAI,CAAC,EAAE;QACxD,OAAO,IAAI,CAAC;KACb;IAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC7C,OAAO,CACL,uBAAC,cAAc,IAAC,OAAO,EAAE,aAAa,CAAC,OAAO,YAC5C,uBAAC,wBAAQ,OACH,KAAK,EACT,OAAO,EAAE,aAAa,CAAC,KAAK,KAAK,IAAI,EACrC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;gBACb,CAAC,CAAC,eAAe,EAAE,CAAC;YACtB,CAAC,EACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACd,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACnD,CAAC,EACD,aAAa,EAAE,aAAa,CAAC,KAAK,KAAK,SAAS,EAChD,QAAQ,EAAE,aAAa,CAAC,UAAU,gBACtB,aAAa,CAAC,OAAO,GACjC,GACa,CAClB,CAAC;AACJ,CAAC;AAvBD,4CAuBC;AAED,SAAS,cAAc,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAoD;IAC7F,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACjB,uBAAC,uBAAO,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,MAAM,YACxC,QAAQ,GACD,CACX,CAAC,CAAC,CAAC,CACF,2DAAG,QAAQ,GAAI,CAChB,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { Checkbox, Tooltip } from \"@itwin/itwinui-react\";\nimport { isPresentationHierarchyNode } from \"@itwin/presentation-hierarchies-react\";\n\nimport type { PresentationHierarchyNode, RenderedTreeNode } from \"@itwin/presentation-hierarchies-react\";\nimport type { ComponentPropsWithoutRef } from \"react\";\n\n/**\n * Data structure that describes tree node checkbox state.\n * @beta\n */\ninterface TreeNodeCheckboxState {\n state: \"on\" | \"off\" | \"partial\";\n isDisabled?: boolean;\n tooltip?: string;\n}\n\n/** @beta */\nexport interface TreeCheckboxProps {\n /** Callback that should be invoked when checkbox is clicked. */\n onCheckboxClicked: (node: PresentationHierarchyNode, checked: boolean) => void;\n /** Callback that should be used to determine current checkbox state. */\n getCheckboxState: (node: PresentationHierarchyNode) => TreeNodeCheckboxState;\n}\n\n/** @internal */\ntype TreeNodeCheckboxProps = TreeCheckboxProps &\n Omit<ComponentPropsWithoutRef<typeof Checkbox>, \"onClick\" | \"checked\" | \"onChange\" | \"indeterminate\" | \"disabled\" | \"title\">;\n\n/** @internal */\nexport function TreeNodeCheckbox({ node, onCheckboxClicked, getCheckboxState, ...props }: TreeNodeCheckboxProps & { node: RenderedTreeNode }) {\n if (\"type\" in node || !isPresentationHierarchyNode(node)) {\n return null;\n }\n\n const checkboxState = getCheckboxState(node);\n return (\n <TooltipWrapper content={checkboxState.tooltip}>\n <Checkbox\n {...props}\n checked={checkboxState.state === \"on\"}\n onClick={(e) => {\n e.stopPropagation();\n }}\n onChange={(e) => {\n onCheckboxClicked(node, e.currentTarget.checked);\n }}\n indeterminate={checkboxState.state === \"partial\"}\n disabled={checkboxState.isDisabled}\n aria-label={checkboxState.tooltip}\n />\n </TooltipWrapper>\n );\n}\n\nfunction TooltipWrapper({ content, children }: { content?: string; children?: React.ReactNode }) {\n return !!content ? (\n <Tooltip content={content} placement=\"left\">\n {children}\n </Tooltip>\n ) : (\n <>{children}</>\n );\n}\n"]}
@@ -1,11 +0,0 @@
1
- import { TreeNodeRenderer as CoreTreeNodeRenderer } from "@itwin/presentation-hierarchies-react";
2
- import type { ComponentPropsWithoutRef, ForwardRefExoticComponent, RefAttributes } from "react";
3
- import type { TreeCheckboxProps } from "./TreeNodeCheckbox.js";
4
- /** @beta */
5
- export type TreeNodeRendererProps = ComponentPropsWithoutRef<typeof CoreTreeNodeRenderer> & {
6
- /** Props for rendering tree node checkbox. If not provided, checkbox is not rendered. */
7
- checkboxProps?: TreeCheckboxProps;
8
- };
9
- /** @beta */
10
- export declare const TreeNodeRenderer: ForwardRefExoticComponent<TreeNodeRendererProps & RefAttributes<HTMLDivElement>>;
11
- //# sourceMappingURL=TreeNodeRenderer.d.ts.map
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TreeNodeRenderer = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const react_1 = require("react");
10
- const presentation_hierarchies_react_1 = require("@itwin/presentation-hierarchies-react");
11
- const TreeNodeCheckbox_js_1 = require("./TreeNodeCheckbox.js");
12
- /** @beta */
13
- exports.TreeNodeRenderer = (0, react_1.forwardRef)(({ checkboxProps, ...props }, forwardedRef) => {
14
- return ((0, jsx_runtime_1.jsx)(presentation_hierarchies_react_1.TreeNodeRenderer, { ...props, ref: forwardedRef, nodeProps: { className: props.className }, checkboxProps: {
15
- style: { paddingInline: 1 }, // add padding to make sure that checkbox is aligned with first header button}}
16
- }, checkbox: checkboxProps ? (0, jsx_runtime_1.jsx)(TreeNodeCheckbox_js_1.TreeNodeCheckbox, { ...checkboxProps, node: props.node }) : null }));
17
- });
18
- exports.TreeNodeRenderer.displayName = "TreeNodeRenderer";
19
- //# sourceMappingURL=TreeNodeRenderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TreeNodeRenderer.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/TreeNodeRenderer.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,iCAAmC;AACnC,0FAAiG;AACjG,+DAAyD;AAWzD,YAAY;AACC,QAAA,gBAAgB,GAAqF,IAAA,kBAAU,EAC1H,CAAC,EAAE,aAAa,EAAE,GAAG,KAAK,EAAyB,EAAE,YAAY,EAAE,EAAE;IACnE,OAAO,CACL,uBAAC,iDAAoB,OACf,KAAK,EACT,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EACzC,aAAa,EAAE;YACb,KAAK,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,+EAA+E;SAC7G,EACD,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,uBAAC,sCAAgB,OAAK,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,GAAI,CAAC,CAAC,CAAC,IAAI,GAC1F,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AACF,wBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { forwardRef } from \"react\";\nimport { TreeNodeRenderer as CoreTreeNodeRenderer } from \"@itwin/presentation-hierarchies-react\";\nimport { TreeNodeCheckbox } from \"./TreeNodeCheckbox.js\";\n\nimport type { ComponentPropsWithoutRef, ForwardRefExoticComponent, RefAttributes } from \"react\";\nimport type { TreeCheckboxProps } from \"./TreeNodeCheckbox.js\";\n\n/** @beta */\nexport type TreeNodeRendererProps = ComponentPropsWithoutRef<typeof CoreTreeNodeRenderer> & {\n /** Props for rendering tree node checkbox. If not provided, checkbox is not rendered. */\n checkboxProps?: TreeCheckboxProps;\n};\n\n/** @beta */\nexport const TreeNodeRenderer: ForwardRefExoticComponent<TreeNodeRendererProps & RefAttributes<HTMLDivElement>> = forwardRef(\n ({ checkboxProps, ...props }: TreeNodeRendererProps, forwardedRef) => {\n return (\n <CoreTreeNodeRenderer\n {...props}\n ref={forwardedRef}\n nodeProps={{ className: props.className }}\n checkboxProps={{\n style: { paddingInline: 1 }, // add padding to make sure that checkbox is aligned with first header button}}\n }}\n checkbox={checkboxProps ? <TreeNodeCheckbox {...checkboxProps} node={props.node} /> : null}\n />\n );\n },\n);\nTreeNodeRenderer.displayName = \"TreeNodeRenderer\";\n"]}
@@ -1,19 +0,0 @@
1
- import { Tree } from "@itwin/itwinui-react";
2
- import type { TreeNodeRendererProps } from "./TreeNodeRenderer.js";
3
- import type { ComponentPropsWithoutRef } from "react";
4
- import type { PresentationHierarchyNode, PresentationTreeNode, RenderedTreeNode } from "@itwin/presentation-hierarchies-react";
5
- /** @beta */
6
- export type TreeRendererProps = Pick<TreeNodeRendererProps, "expandNode" | "onNodeClick" | "onNodeKeyDown" | "onFilterClick" | "getIcon" | "getLabel" | "getSublabel" | "getHierarchyLevelDetails" | "checkboxProps" | "reloadTree" | "filterButtonsVisibility"> & Omit<ComponentPropsWithoutRef<typeof Tree<RenderedTreeNode>>, "data" | "nodeRenderer" | "getNode"> & {
7
- /** Tree nodes to render. */
8
- rootNodes: PresentationTreeNode[];
9
- /** Callback to check if specific node is selected. */
10
- isNodeSelected: (nodeId: string) => boolean;
11
- /** Callback that is invoked when node is double clicked. */
12
- onNodeDoubleClick?: (node: PresentationHierarchyNode, isSelected: boolean) => void;
13
- };
14
- /**
15
- * Default renderer for rendering tree data.
16
- * @beta
17
- */
18
- export declare function TreeRenderer({ rootNodes, expandNode, onNodeClick, onNodeKeyDown, onNodeDoubleClick, isNodeSelected, onFilterClick, getIcon, getLabel, getSublabel, getHierarchyLevelDetails, checkboxProps, filterButtonsVisibility, reloadTree, size, enableVirtualization, ...props }: TreeRendererProps): JSX.Element;
19
- //# sourceMappingURL=TreeRenderer.d.ts.map
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TreeRenderer = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const react_1 = require("react");
10
- const itwinui_react_1 = require("@itwin/itwinui-react");
11
- const presentation_hierarchies_react_1 = require("@itwin/presentation-hierarchies-react");
12
- const TreeNodeRenderer_js_1 = require("./TreeNodeRenderer.js");
13
- const UseHierarchiesLocalization_js_1 = require("../UseHierarchiesLocalization.js");
14
- /**
15
- * Default renderer for rendering tree data.
16
- * @beta
17
- */
18
- function TreeRenderer({ rootNodes, expandNode, onNodeClick, onNodeKeyDown, onNodeDoubleClick, isNodeSelected, onFilterClick, getIcon, getLabel, getSublabel, getHierarchyLevelDetails, checkboxProps, filterButtonsVisibility, reloadTree, size, enableVirtualization, ...props }) {
19
- const localizedStrings = (0, UseHierarchiesLocalization_js_1.useHierarchiesLocalization)();
20
- const nodeRenderer = (0, react_1.useCallback)((nodeProps) => {
21
- return ((0, jsx_runtime_1.jsx)(TreeNodeRenderer_js_1.TreeNodeRenderer, { ...nodeProps, onNodeClick: (node, isSelected, event) => {
22
- if (onNodeDoubleClick && event.detail === 2) {
23
- onNodeDoubleClick?.(node, !!nodeProps.isSelected);
24
- // Click node to not lose selection
25
- return onNodeClick?.(node, true, event);
26
- }
27
- onNodeClick?.(node, isSelected, event);
28
- }, expandNode: expandNode, onNodeKeyDown: onNodeKeyDown, getIcon: getIcon, getLabel: getLabel, getSublabel: getSublabel, onFilterClick: onFilterClick, getHierarchyLevelDetails: getHierarchyLevelDetails, checkboxProps: checkboxProps, reloadTree: reloadTree, size: size, filterButtonsVisibility: filterButtonsVisibility }));
29
- }, [
30
- expandNode,
31
- onNodeClick,
32
- onNodeKeyDown,
33
- onNodeDoubleClick,
34
- getHierarchyLevelDetails,
35
- getIcon,
36
- getLabel,
37
- getSublabel,
38
- onFilterClick,
39
- checkboxProps,
40
- filterButtonsVisibility,
41
- reloadTree,
42
- size,
43
- ]);
44
- const getNode = (0, react_1.useCallback)((node) => (0, presentation_hierarchies_react_1.createRenderedTreeNodeData)(node, isNodeSelected), [isNodeSelected]);
45
- return ((0, jsx_runtime_1.jsx)(presentation_hierarchies_react_1.LocalizationContextProvider, { localizedStrings: localizedStrings, children: (0, jsx_runtime_1.jsx)(itwinui_react_1.Tree, { ...props, data: rootNodes, nodeRenderer: nodeRenderer, getNode: getNode, enableVirtualization: enableVirtualization ?? true, style: { height: "100%" }, size: size }) }));
46
- }
47
- exports.TreeRenderer = TreeRenderer;
48
- //# sourceMappingURL=TreeRenderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TreeRenderer.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/TreeRenderer.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,iCAAoC;AACpC,wDAA4C;AAC5C,0FAAgH;AAChH,+DAAyD;AACzD,oFAA8E;AA8B9E;;;GAGG;AACH,SAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,OAAO,EACP,QAAQ,EACR,WAAW,EACX,wBAAwB,EACxB,aAAa,EACb,uBAAuB,EACvB,UAAU,EACV,IAAI,EACJ,oBAAoB,EACpB,GAAG,KAAK,EACU;IAClB,MAAM,gBAAgB,GAAG,IAAA,0DAA0B,GAAE,CAAC;IACtD,MAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,CAAC,SAAS,EAAE,EAAE;QACZ,OAAO,CACL,uBAAC,sCAAgB,OACX,SAAS,EACb,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE;gBACvC,IAAI,iBAAiB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC3C,iBAAiB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBAClD,mCAAmC;oBACnC,OAAO,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;iBACzC;gBACD,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YACzC,CAAC,EACD,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,wBAAwB,EAAE,wBAAwB,EAClD,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,uBAAuB,EAAE,uBAAuB,GAChD,CACH,CAAC;IACJ,CAAC,EACD;QACE,UAAU;QACV,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,wBAAwB;QACxB,OAAO;QACP,QAAQ;QACR,WAAW;QACX,aAAa;QACb,aAAa;QACb,uBAAuB;QACvB,UAAU;QACV,IAAI;KACL,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,mBAAW,EACzB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,2DAA0B,EAAC,IAAI,EAAE,cAAc,CAAC,EAC1D,CAAC,cAAc,CAAC,CACjB,CAAC;IAEF,OAAO,CACL,uBAAC,4DAA2B,IAAC,gBAAgB,EAAE,gBAAgB,YAC7D,uBAAC,oBAAI,OACC,KAAK,EACT,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,EAChB,oBAAoB,EAAE,oBAAoB,IAAI,IAAI,EAClD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EACzB,IAAI,EAAE,IAAI,GACV,GAC0B,CAC/B,CAAC;AACJ,CAAC;AAlFD,oCAkFC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { useCallback } from \"react\";\nimport { Tree } from \"@itwin/itwinui-react\";\nimport { createRenderedTreeNodeData, LocalizationContextProvider } from \"@itwin/presentation-hierarchies-react\";\nimport { TreeNodeRenderer } from \"./TreeNodeRenderer.js\";\nimport { useHierarchiesLocalization } from \"../UseHierarchiesLocalization.js\";\n\nimport type { TreeNodeRendererProps } from \"./TreeNodeRenderer.js\";\nimport type { ComponentPropsWithoutRef } from \"react\";\nimport type { PresentationHierarchyNode, PresentationTreeNode, RenderedTreeNode } from \"@itwin/presentation-hierarchies-react\";\n\n/** @beta */\nexport type TreeRendererProps = Pick<\n TreeNodeRendererProps,\n | \"expandNode\"\n | \"onNodeClick\"\n | \"onNodeKeyDown\"\n | \"onFilterClick\"\n | \"getIcon\"\n | \"getLabel\"\n | \"getSublabel\"\n | \"getHierarchyLevelDetails\"\n | \"checkboxProps\"\n | \"reloadTree\"\n | \"filterButtonsVisibility\"\n> &\n Omit<ComponentPropsWithoutRef<typeof Tree<RenderedTreeNode>>, \"data\" | \"nodeRenderer\" | \"getNode\"> & {\n /** Tree nodes to render. */\n rootNodes: PresentationTreeNode[];\n /** Callback to check if specific node is selected. */\n isNodeSelected: (nodeId: string) => boolean;\n /** Callback that is invoked when node is double clicked. */\n onNodeDoubleClick?: (node: PresentationHierarchyNode, isSelected: boolean) => void;\n };\n\n/**\n * Default renderer for rendering tree data.\n * @beta\n */\nexport function TreeRenderer({\n rootNodes,\n expandNode,\n onNodeClick,\n onNodeKeyDown,\n onNodeDoubleClick,\n isNodeSelected,\n onFilterClick,\n getIcon,\n getLabel,\n getSublabel,\n getHierarchyLevelDetails,\n checkboxProps,\n filterButtonsVisibility,\n reloadTree,\n size,\n enableVirtualization,\n ...props\n}: TreeRendererProps) {\n const localizedStrings = useHierarchiesLocalization();\n const nodeRenderer = useCallback<ComponentPropsWithoutRef<typeof Tree<RenderedTreeNode>>[\"nodeRenderer\"]>(\n (nodeProps) => {\n return (\n <TreeNodeRenderer\n {...nodeProps}\n onNodeClick={(node, isSelected, event) => {\n if (onNodeDoubleClick && event.detail === 2) {\n onNodeDoubleClick?.(node, !!nodeProps.isSelected);\n // Click node to not lose selection\n return onNodeClick?.(node, true, event);\n }\n onNodeClick?.(node, isSelected, event);\n }}\n expandNode={expandNode}\n onNodeKeyDown={onNodeKeyDown}\n getIcon={getIcon}\n getLabel={getLabel}\n getSublabel={getSublabel}\n onFilterClick={onFilterClick}\n getHierarchyLevelDetails={getHierarchyLevelDetails}\n checkboxProps={checkboxProps}\n reloadTree={reloadTree}\n size={size}\n filterButtonsVisibility={filterButtonsVisibility}\n />\n );\n },\n [\n expandNode,\n onNodeClick,\n onNodeKeyDown,\n onNodeDoubleClick,\n getHierarchyLevelDetails,\n getIcon,\n getLabel,\n getSublabel,\n onFilterClick,\n checkboxProps,\n filterButtonsVisibility,\n reloadTree,\n size,\n ],\n );\n\n const getNode = useCallback<ComponentPropsWithoutRef<typeof Tree<RenderedTreeNode>>[\"getNode\"]>(\n (node) => createRenderedTreeNodeData(node, isNodeSelected),\n [isNodeSelected],\n );\n\n return (\n <LocalizationContextProvider localizedStrings={localizedStrings}>\n <Tree<RenderedTreeNode>\n {...props}\n data={rootNodes}\n nodeRenderer={nodeRenderer}\n getNode={getNode}\n enableVirtualization={enableVirtualization ?? true}\n style={{ height: \"100%\" }}\n size={size}\n />\n </LocalizationContextProvider>\n );\n}\n"]}
@@ -1,21 +0,0 @@
1
- import type { FunctionProps } from "../Utils.js";
2
- import type { TreeProps } from "./Tree.js";
3
- import type { ReactNode } from "react";
4
- import type { VisibilityTreeRendererProps } from "./VisibilityTreeRenderer.js";
5
- import type { ECClassHierarchyInspector } from "@itwin/presentation-shared";
6
- import type { HierarchyVisibilityHandler } from "../UseHierarchyVisibility.js";
7
- /** @beta */
8
- export type VisibilityTreeProps = Omit<TreeProps, "treeRenderer" | "imodelAccess"> & {
9
- /** Callback for creating visibility handler used to control visibility of instances represented by tree nodes. */
10
- visibilityHandlerFactory: (props: {
11
- imodelAccess: ECClassHierarchyInspector;
12
- }) => HierarchyVisibilityHandler;
13
- /** Tree renderer that should be used to render tree data. */
14
- treeRenderer: (treeProps: FunctionProps<TreeProps["treeRenderer"]> & Pick<VisibilityTreeRendererProps, "getCheckboxState" | "onCheckboxClicked">) => ReactNode;
15
- };
16
- /**
17
- * Tree component that can control visibility of instances represented by tree nodes.
18
- * @beta
19
- */
20
- export declare function VisibilityTree({ visibilityHandlerFactory, treeRenderer, ...props }: VisibilityTreeProps): JSX.Element;
21
- //# sourceMappingURL=VisibilityTree.d.ts.map
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VisibilityTree = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const react_1 = require("react");
10
- const UseHierarchyVisibility_js_1 = require("../UseHierarchyVisibility.js");
11
- const Utils_js_1 = require("../Utils.js");
12
- const Tree_js_1 = require("./Tree.js");
13
- /**
14
- * Tree component that can control visibility of instances represented by tree nodes.
15
- * @beta
16
- */
17
- function VisibilityTree({ visibilityHandlerFactory, treeRenderer, ...props }) {
18
- const { imodel, getSchemaContext } = props;
19
- const imodelAccess = (0, react_1.useMemo)(() => (0, Utils_js_1.createIModelAccess)({ imodel, getSchemaContext }), [imodel, getSchemaContext]);
20
- const { getCheckboxState, onCheckboxClicked, triggerRefresh } = (0, UseHierarchyVisibility_js_1.useHierarchyVisibility)({
21
- visibilityHandlerFactory: (0, react_1.useCallback)(() => visibilityHandlerFactory({ imodelAccess }), [visibilityHandlerFactory, imodelAccess]),
22
- });
23
- return ((0, jsx_runtime_1.jsx)(Tree_js_1.Tree, { ...props, onReload: triggerRefresh, imodelAccess: imodelAccess, treeRenderer: (treeProps) => treeRenderer({ ...treeProps, getCheckboxState, onCheckboxClicked }) }));
24
- }
25
- exports.VisibilityTree = VisibilityTree;
26
- //# sourceMappingURL=VisibilityTree.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VisibilityTree.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/VisibilityTree.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,iCAA6C;AAC7C,4EAAsE;AACtE,0CAAiD;AACjD,uCAAiC;AAmBjC;;;GAGG;AACH,SAAgB,cAAc,CAAC,EAAE,wBAAwB,EAAE,YAAY,EAAE,GAAG,KAAK,EAAuB;IACtG,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,6BAAkB,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACjH,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,GAAG,IAAA,kDAAsB,EAAC;QACrF,wBAAwB,EAAE,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,wBAAwB,EAAE,YAAY,CAAC,CAAC;KAClI,CAAC,CAAC;IAEH,OAAO,CACL,uBAAC,cAAI,OACC,KAAK,EACT,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC,GAChG,CACH,CAAC;AACJ,CAAC;AAfD,wCAeC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { useCallback, useMemo } from \"react\";\nimport { useHierarchyVisibility } from \"../UseHierarchyVisibility.js\";\nimport { createIModelAccess } from \"../Utils.js\";\nimport { Tree } from \"./Tree.js\";\n\nimport type { FunctionProps } from \"../Utils.js\";\nimport type { TreeProps } from \"./Tree.js\";\nimport type { ReactNode } from \"react\";\nimport type { VisibilityTreeRendererProps } from \"./VisibilityTreeRenderer.js\";\nimport type { ECClassHierarchyInspector } from \"@itwin/presentation-shared\";\nimport type { HierarchyVisibilityHandler } from \"../UseHierarchyVisibility.js\";\n\n/** @beta */\nexport type VisibilityTreeProps = Omit<TreeProps, \"treeRenderer\" | \"imodelAccess\"> & {\n /** Callback for creating visibility handler used to control visibility of instances represented by tree nodes. */\n visibilityHandlerFactory: (props: { imodelAccess: ECClassHierarchyInspector }) => HierarchyVisibilityHandler;\n /** Tree renderer that should be used to render tree data. */\n treeRenderer: (\n treeProps: FunctionProps<TreeProps[\"treeRenderer\"]> & Pick<VisibilityTreeRendererProps, \"getCheckboxState\" | \"onCheckboxClicked\">,\n ) => ReactNode;\n};\n\n/**\n * Tree component that can control visibility of instances represented by tree nodes.\n * @beta\n */\nexport function VisibilityTree({ visibilityHandlerFactory, treeRenderer, ...props }: VisibilityTreeProps) {\n const { imodel, getSchemaContext } = props;\n const imodelAccess = useMemo(() => createIModelAccess({ imodel, getSchemaContext }), [imodel, getSchemaContext]);\n const { getCheckboxState, onCheckboxClicked, triggerRefresh } = useHierarchyVisibility({\n visibilityHandlerFactory: useCallback(() => visibilityHandlerFactory({ imodelAccess }), [visibilityHandlerFactory, imodelAccess]),\n });\n\n return (\n <Tree\n {...props}\n onReload={triggerRefresh}\n imodelAccess={imodelAccess}\n treeRenderer={(treeProps) => treeRenderer({ ...treeProps, getCheckboxState, onCheckboxClicked })}\n />\n );\n}\n"]}
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import type { TreeRendererProps } from "./TreeRenderer.js";
3
- import type { TreeCheckboxProps } from "./TreeNodeCheckbox.js";
4
- /** @beta */
5
- export type VisibilityTreeRendererProps = TreeRendererProps & TreeCheckboxProps;
6
- /**
7
- * Tree renderer that renders tree nodes with eye checkboxes for controlling visibility of instances represented by tree nodes.
8
- * @beta
9
- */
10
- export declare function VisibilityTreeRenderer({ getCheckboxState, onCheckboxClicked: onClick, ...props }: VisibilityTreeRendererProps): JSX.Element;
11
- //# sourceMappingURL=VisibilityTreeRenderer.d.ts.map
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VisibilityTreeRenderer = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const react_1 = require("react");
10
- const UseMultiCheckboxHandler_js_1 = require("../UseMultiCheckboxHandler.js");
11
- const TreeRenderer_js_1 = require("./TreeRenderer.js");
12
- /**
13
- * Tree renderer that renders tree nodes with eye checkboxes for controlling visibility of instances represented by tree nodes.
14
- * @beta
15
- */
16
- function VisibilityTreeRenderer({ getCheckboxState, onCheckboxClicked: onClick, ...props }) {
17
- const { onCheckboxClicked } = (0, UseMultiCheckboxHandler_js_1.useMultiCheckboxHandler)({ rootNodes: props.rootNodes, isNodeSelected: props.isNodeSelected, onClick });
18
- const checkboxProps = (0, react_1.useMemo)(() => ({
19
- variant: "eyeball",
20
- getCheckboxState,
21
- onCheckboxClicked,
22
- }), [getCheckboxState, onCheckboxClicked]);
23
- return (0, jsx_runtime_1.jsx)(TreeRenderer_js_1.TreeRenderer, { ...props, checkboxProps: checkboxProps });
24
- }
25
- exports.VisibilityTreeRenderer = VisibilityTreeRenderer;
26
- //# sourceMappingURL=VisibilityTreeRenderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VisibilityTreeRenderer.js","sourceRoot":"","sources":["../../../../../../../src/tree-widget-react/components/trees/common/components/VisibilityTreeRenderer.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,iCAAgC;AAChC,8EAAwE;AACxE,uDAAiD;AAQjD;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,KAAK,EAA+B;IAC5H,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAA,oDAAuB,EAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC;IAErI,MAAM,aAAa,GAAuC,IAAA,eAAO,EAC/D,GAAG,EAAE,CAAC,CAAC;QACL,OAAO,EAAE,SAAS;QAClB,gBAAgB;QAChB,iBAAiB;KAClB,CAAC,EACF,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CACtC,CAAC;IAEF,OAAO,uBAAC,8BAAY,OAAK,KAAK,EAAE,aAAa,EAAE,aAAa,GAAI,CAAC;AACnE,CAAC;AAbD,wDAaC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { useMemo } from \"react\";\nimport { useMultiCheckboxHandler } from \"../UseMultiCheckboxHandler.js\";\nimport { TreeRenderer } from \"./TreeRenderer.js\";\n\nimport type { TreeRendererProps } from \"./TreeRenderer.js\";\nimport type { TreeCheckboxProps } from \"./TreeNodeCheckbox.js\";\n\n/** @beta */\nexport type VisibilityTreeRendererProps = TreeRendererProps & TreeCheckboxProps;\n\n/**\n * Tree renderer that renders tree nodes with eye checkboxes for controlling visibility of instances represented by tree nodes.\n * @beta\n */\nexport function VisibilityTreeRenderer({ getCheckboxState, onCheckboxClicked: onClick, ...props }: VisibilityTreeRendererProps) {\n const { onCheckboxClicked } = useMultiCheckboxHandler({ rootNodes: props.rootNodes, isNodeSelected: props.isNodeSelected, onClick });\n\n const checkboxProps: TreeRendererProps[\"checkboxProps\"] = useMemo(\n () => ({\n variant: \"eyeball\",\n getCheckboxState,\n onCheckboxClicked,\n }),\n [getCheckboxState, onCheckboxClicked],\n );\n\n return <TreeRenderer {...props} checkboxProps={checkboxProps} />;\n}\n"]}
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import type { TreeProps } from "../common/components/Tree.js";
3
- /** @beta */
4
- export type ExternalSourcesTreeProps = Pick<TreeProps, "imodel" | "getSchemaContext" | "selectionStorage" | "density" | "selectionMode"> & {
5
- hierarchyLevelConfig?: {
6
- sizeLimit?: number;
7
- };
8
- };
9
- /** @beta */
10
- export declare function ExternalSourcesTree(props: ExternalSourcesTreeProps): JSX.Element;
11
- //# sourceMappingURL=ExternalSourcesTree.d.ts.map
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExternalSourcesTree = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
10
- const Tree_js_1 = require("../common/components/Tree.js");
11
- const TreeRenderer_js_1 = require("../common/components/TreeRenderer.js");
12
- const ExternalSourcesTreeComponent_js_1 = require("./ExternalSourcesTreeComponent.js");
13
- const ExternalSourcesTreeDefinition_js_1 = require("./ExternalSourcesTreeDefinition.js");
14
- /** @beta */
15
- function ExternalSourcesTree(props) {
16
- return ((0, jsx_runtime_1.jsx)(Tree_js_1.Tree, { ...props, treeName: ExternalSourcesTreeComponent_js_1.ExternalSourcesTreeComponent.id, getHierarchyDefinition: getDefinitionsProvider, selectionMode: props.selectionMode ?? "none", treeRenderer: (treeProps) => (0, jsx_runtime_1.jsx)(TreeRenderer_js_1.TreeRenderer, { ...treeProps, getIcon: getIcon }) }));
17
- }
18
- exports.ExternalSourcesTree = ExternalSourcesTree;
19
- const getDefinitionsProvider = (props) => {
20
- return new ExternalSourcesTreeDefinition_js_1.ExternalSourcesTreeDefinition(props);
21
- };
22
- function getIcon(node) {
23
- if (node.extendedData?.imageId === undefined) {
24
- return undefined;
25
- }
26
- switch (node.extendedData.imageId) {
27
- case "icon-item":
28
- return (0, jsx_runtime_1.jsx)(itwinui_icons_react_1.SvgItem, {});
29
- case "icon-ec-class":
30
- return (0, jsx_runtime_1.jsx)(itwinui_icons_react_1.SvgItem, {});
31
- case "icon-document":
32
- return (0, jsx_runtime_1.jsx)(itwinui_icons_react_1.SvgDocument, {});
33
- case "icon-ec-schema":
34
- return (0, jsx_runtime_1.jsx)(itwinui_icons_react_1.SvgDetails, {});
35
- }
36
- return undefined;
37
- }
38
- //# sourceMappingURL=ExternalSourcesTree.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExternalSourcesTree.js","sourceRoot":"","sources":["../../../../../../src/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTree.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,oEAA8E;AAC9E,0DAAoD;AACpD,0EAAoE;AACpE,uFAAiF;AACjF,yFAAmF;AAanF,YAAY;AACZ,SAAgB,mBAAmB,CAAC,KAA+B;IACjE,OAAO,CACL,uBAAC,cAAI,OACC,KAAK,EACT,QAAQ,EAAE,8DAA4B,CAAC,EAAE,EACzC,sBAAsB,EAAE,sBAAsB,EAC9C,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,MAAM,EAC5C,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,uBAAC,8BAAY,OAAK,SAAS,EAAE,OAAO,EAAE,OAAO,GAAI,GAC9E,CACH,CAAC;AACJ,CAAC;AAVD,kDAUC;AAED,MAAM,sBAAsB,GAAwC,CAAC,KAAK,EAAE,EAAE;IAC5E,OAAO,IAAI,gEAA6B,CAAC,KAAK,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,SAAS,OAAO,CAAC,IAA+B;IAC9C,IAAI,IAAI,CAAC,YAAY,EAAE,OAAO,KAAK,SAAS,EAAE;QAC5C,OAAO,SAAS,CAAC;KAClB;IAED,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;QACjC,KAAK,WAAW;YACd,OAAO,uBAAC,6BAAO,KAAG,CAAC;QACrB,KAAK,eAAe;YAClB,OAAO,uBAAC,6BAAO,KAAG,CAAC;QACrB,KAAK,eAAe;YAClB,OAAO,uBAAC,iCAAW,KAAG,CAAC;QACzB,KAAK,gBAAgB;YACnB,OAAO,uBAAC,gCAAU,KAAG,CAAC;KACzB;IAED,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { SvgDetails, SvgDocument, SvgItem } from \"@itwin/itwinui-icons-react\";\nimport { Tree } from \"../common/components/Tree.js\";\nimport { TreeRenderer } from \"../common/components/TreeRenderer.js\";\nimport { ExternalSourcesTreeComponent } from \"./ExternalSourcesTreeComponent.js\";\nimport { ExternalSourcesTreeDefinition } from \"./ExternalSourcesTreeDefinition.js\";\n\nimport type { TreeProps } from \"../common/components/Tree.js\";\nimport type { ReactElement } from \"react\";\nimport type { PresentationHierarchyNode } from \"@itwin/presentation-hierarchies-react\";\n\n/** @beta */\nexport type ExternalSourcesTreeProps = Pick<TreeProps, \"imodel\" | \"getSchemaContext\" | \"selectionStorage\" | \"density\" | \"selectionMode\"> & {\n hierarchyLevelConfig?: {\n sizeLimit?: number;\n };\n};\n\n/** @beta */\nexport function ExternalSourcesTree(props: ExternalSourcesTreeProps) {\n return (\n <Tree\n {...props}\n treeName={ExternalSourcesTreeComponent.id}\n getHierarchyDefinition={getDefinitionsProvider}\n selectionMode={props.selectionMode ?? \"none\"}\n treeRenderer={(treeProps) => <TreeRenderer {...treeProps} getIcon={getIcon} />}\n />\n );\n}\n\nconst getDefinitionsProvider: TreeProps[\"getHierarchyDefinition\"] = (props) => {\n return new ExternalSourcesTreeDefinition(props);\n};\n\nfunction getIcon(node: PresentationHierarchyNode): ReactElement | undefined {\n if (node.extendedData?.imageId === undefined) {\n return undefined;\n }\n\n switch (node.extendedData.imageId) {\n case \"icon-item\":\n return <SvgItem />;\n case \"icon-ec-class\":\n return <SvgItem />;\n case \"icon-document\":\n return <SvgDocument />;\n case \"icon-ec-schema\":\n return <SvgDetails />;\n }\n\n return undefined;\n}\n"]}
@@ -1,26 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ExternalSourcesTreeProps } from "./ExternalSourcesTree.js";
3
- /** @beta */
4
- interface ExternalSourcesTreeComponentProps extends Pick<ExternalSourcesTreeProps, "getSchemaContext" | "selectionStorage" | "selectionMode" | "density" | "hierarchyLevelConfig" | "selectionMode"> {
5
- onPerformanceMeasured?: (featureId: string, duration: number) => void;
6
- onFeatureUsed?: (feature: string) => void;
7
- }
8
- /**
9
- * A component that renders `ExternalSourcesTree`.
10
- * @beta
11
- */
12
- export declare const ExternalSourcesTreeComponent: {
13
- ({ onFeatureUsed, onPerformanceMeasured, ...props }: ExternalSourcesTreeComponentProps): JSX.Element | null;
14
- /**
15
- * Id of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.
16
- * @beta
17
- */
18
- id: string;
19
- /**
20
- * Label of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.
21
- * @beta
22
- */
23
- getLabel(): string;
24
- };
25
- export {};
26
- //# sourceMappingURL=ExternalSourcesTreeComponent.d.ts.map
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExternalSourcesTreeComponent = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- /*---------------------------------------------------------------------------------------------
6
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
7
- * See LICENSE.md in the project root for license terms and full copyright notice.
8
- *--------------------------------------------------------------------------------------------*/
9
- const appui_react_1 = require("@itwin/appui-react");
10
- const TreeWidget_js_1 = require("../../../TreeWidget.js");
11
- const UseTelemetryContext_js_1 = require("../common/UseTelemetryContext.js");
12
- const ExternalSourcesTree_js_1 = require("./ExternalSourcesTree.js");
13
- /**
14
- * A component that renders `ExternalSourcesTree`.
15
- * @beta
16
- */
17
- const ExternalSourcesTreeComponent = ({ onFeatureUsed, onPerformanceMeasured, ...props }) => {
18
- const imodel = (0, appui_react_1.useActiveIModelConnection)();
19
- if (!imodel) {
20
- return null;
21
- }
22
- return ((0, jsx_runtime_1.jsx)(UseTelemetryContext_js_1.TelemetryContextProvider, { componentIdentifier: exports.ExternalSourcesTreeComponent.id, onFeatureUsed: onFeatureUsed, onPerformanceMeasured: onPerformanceMeasured, children: (0, jsx_runtime_1.jsx)(ExternalSourcesTree_js_1.ExternalSourcesTree, { ...props, imodel: imodel }) }));
23
- };
24
- exports.ExternalSourcesTreeComponent = ExternalSourcesTreeComponent;
25
- /**
26
- * Id of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.
27
- * @beta
28
- */
29
- exports.ExternalSourcesTreeComponent.id = "external-sources-tree-v2";
30
- /**
31
- * Label of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.
32
- * @beta
33
- */
34
- exports.ExternalSourcesTreeComponent.getLabel = () => TreeWidget_js_1.TreeWidget.translate("externalSourcesTree.label");
35
- //# sourceMappingURL=ExternalSourcesTreeComponent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExternalSourcesTreeComponent.js","sourceRoot":"","sources":["../../../../../../src/tree-widget-react/components/trees/external-sources-tree/ExternalSourcesTreeComponent.tsx"],"names":[],"mappings":";;;;AAAA;;;gGAGgG;AAEhG,oDAA+D;AAC/D,0DAAoD;AACpD,6EAA4E;AAC5E,qEAA+D;AAW/D;;;GAGG;AACI,MAAM,4BAA4B,GAAG,CAAC,EAAE,aAAa,EAAE,qBAAqB,EAAE,GAAG,KAAK,EAAqC,EAAE,EAAE;IACpI,MAAM,MAAM,GAAG,IAAA,uCAAyB,GAAE,CAAC;IAE3C,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,uBAAC,iDAAwB,IAAC,mBAAmB,EAAE,oCAA4B,CAAC,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,qBAAqB,YACxJ,uBAAC,4CAAmB,OAAK,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,GACzB,CAC5B,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,4BAA4B,gCAYvC;AAEF;;;GAGG;AACH,oCAA4B,CAAC,EAAE,GAAG,0BAA0B,CAAC;AAE7D;;;GAGG;AACH,oCAA4B,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,0BAAU,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { useActiveIModelConnection } from \"@itwin/appui-react\";\nimport { TreeWidget } from \"../../../TreeWidget.js\";\nimport { TelemetryContextProvider } from \"../common/UseTelemetryContext.js\";\nimport { ExternalSourcesTree } from \"./ExternalSourcesTree.js\";\n\nimport type { ExternalSourcesTreeProps } from \"./ExternalSourcesTree.js\";\n\n/** @beta */\ninterface ExternalSourcesTreeComponentProps\n extends Pick<ExternalSourcesTreeProps, \"getSchemaContext\" | \"selectionStorage\" | \"selectionMode\" | \"density\" | \"hierarchyLevelConfig\" | \"selectionMode\"> {\n onPerformanceMeasured?: (featureId: string, duration: number) => void;\n onFeatureUsed?: (feature: string) => void;\n}\n\n/**\n * A component that renders `ExternalSourcesTree`.\n * @beta\n */\nexport const ExternalSourcesTreeComponent = ({ onFeatureUsed, onPerformanceMeasured, ...props }: ExternalSourcesTreeComponentProps) => {\n const imodel = useActiveIModelConnection();\n\n if (!imodel) {\n return null;\n }\n\n return (\n <TelemetryContextProvider componentIdentifier={ExternalSourcesTreeComponent.id} onFeatureUsed={onFeatureUsed} onPerformanceMeasured={onPerformanceMeasured}>\n <ExternalSourcesTree {...props} imodel={imodel} />\n </TelemetryContextProvider>\n );\n};\n\n/**\n * Id of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.\n * @beta\n */\nExternalSourcesTreeComponent.id = \"external-sources-tree-v2\";\n\n/**\n * Label of the component. May be used when a creating a `TreeDefinition` for `SelectableTree`.\n * @beta\n */\nExternalSourcesTreeComponent.getLabel = () => TreeWidget.translate(\"externalSourcesTree.label\");\n"]}
@@ -1,24 +0,0 @@
1
- import type { ECClassHierarchyInspector, ECSchemaProvider } from "@itwin/presentation-shared";
2
- import type { DefineHierarchyLevelProps, HierarchyDefinition, HierarchyLevelDefinition, LimitingECSqlQueryExecutor, ProcessedHierarchyNode } from "@itwin/presentation-hierarchies";
3
- interface ExternalSourcesTreeDefinitionProps {
4
- imodelAccess: ECSchemaProvider & ECClassHierarchyInspector & LimitingECSqlQueryExecutor;
5
- }
6
- export declare class ExternalSourcesTreeDefinition implements HierarchyDefinition {
7
- private _impl;
8
- private _selectQueryFactory;
9
- private _nodeLabelSelectClauseFactory;
10
- private _queryExecutor;
11
- private _isSupported?;
12
- constructor(props: ExternalSourcesTreeDefinitionProps);
13
- postProcessNode(node: ProcessedHierarchyNode): Promise<ProcessedHierarchyNode>;
14
- defineHierarchyLevel(props: DefineHierarchyLevelProps): Promise<HierarchyLevelDefinition>;
15
- private createRootHierarchyLevelDefinition;
16
- private createExternalSourcesGroupChildrenQuery;
17
- private createExternalSourceChildrenQuery;
18
- private createExternalSourceSupportsFilteringSelector;
19
- private createElementsNodeChildrenQuery;
20
- private createCompositeLabelSelectClause;
21
- private isSupported;
22
- }
23
- export {};
24
- //# sourceMappingURL=ExternalSourcesTreeDefinition.d.ts.map